I'll try the width param as soon as I can, as it will make the code much more clean than using lots of spacers.
OrionShock, I took a closer look at what you wrote, I like the idea of having only one get and set function to access my options. However, that leads to another question:
When you write info.option.name in the two functions, what do you mean by "name":
- name = L['Role Specific:'] or
- rolespecific = {
The second one is OK, I can get it to match with my options DB. But if it's the first, I don't think that will work.
Now, to go a little further, I thought strings were cutted (with ...) because there were multiple options on the same line but it appears I was wrong (again). Is there a way to get the full string ?
I've been trying everything since 2 days to get what I want, but failed. :(
I have an options panel made with Ace3, and currently, it looks like the attachments.
I would like to have one option per line.
I tried to change the order values, making subgroups, but nothing seems to work.
Can anyone help me with this ?
Here is my code for the options :
local options = {
type = 'group',
childGroups = 'tab',
args = {
general = {
type = 'group',
name = L['General'],
desc = L['General Options'],
args = {
ShowPortraits = {
type = 'toggle',
name = L['Show Portraits'],
desc = L['Indicates whether to show or hide portraits'],
get = function (info) return oUF_Tabi.db.profile.ShowPortraits end,
set = function (info, value) oUF_Tabi.db.profile.ShowPortraits = value end,
order = 1,
},
rolespecific = {
type = 'description',
name = L['Role Specific:'],
order = 2,
},
ShowVengeance = {
type = 'toggle',
name = L['Show Vengeance'],
desc = L['Indicates whether to show or hide the Vengeance AP buff'],
get = function (info) return oUF_Tabi.db.profile.ShowVengeance end,
set = function (info, value) oUF_Tabi.db.profile.ShowVengeance = value end,
order = 3,
},
HealerMode = {
type = 'toggle',
name = L['Healer Mode'],
desc = L['Changes the layout for party and raid frames to account for healing duty'],
get = function (info) return oUF_Tabi.db.profile.HealerMode end,
set = function (info, value) oUF_Tabi.db.profile.HealerMode = value end,
order = 4,
},
classspecific = {
type = 'description',
name = L['Class Specific:'],
order = 5,
},
ShowComboPoints = {
type = 'toggle',
name = L['Show Rogues/Druids Combo Points'],
desc = L['Indicates whether to show or hide Combo Points as a Rogue or a Druid'],
get = function (info) return oUF_Tabi.db.profile.ShowComboPoints end,
set = function (info, value) oUF_Tabi.db.profile.ShowComboPoints = value end,
order = 6,
},
ShowTotems = {
type = 'toggle',
name = L['Show Shamans Totems'],
desc = L['Indicates whether to show or hide Totems as a Shaman'],
get = function (info) return oUF_Tabi.db.profile.ShowTotems end,
set = function (info, value) oUF_Tabi.db.profile.ShowTotems = value end,
order = 7,
},
ShowHolyPower = {
type = 'toggle',
name = L['Show Paladins Holy Power'],
desc = L['Indicates whether to show or hide Holy Power as a Paladin'],
get = function (info) return oUF_Tabi.db.profile.ShowHolyPower end,
set = function (info, value) oUF_Tabi.db.profile.ShowHolyPower = value end,
order = 8,
},
ShowSoulShards = {
type = 'toggle',
name = L['Show Warlocks Soul Shards'],
desc = L['Indicates whether to show or hide Soul Shards as a Warlock'],
get = function (info) return oUF_Tabi.db.profile.ShowSoulShards end,
set = function (info, value) oUF_Tabi.db.profile.ShowSoulShards = value end,
order = 9,
},
ShowRunes = {
type = 'toggle',
name = L['Show Death Knights Runes'],
desc = L['Indicates whether to show or hide Runes as a Death Knight'],
get = function (info) return oUF_Tabi.db.profile.ShowRunes end,
set = function (info, value) oUF_Tabi.db.profile.ShowRunes = value end,
order = 10,
},
ShowEclipseBar = {
type = 'toggle',
name = L['Show Druids Eclipse bar'],
desc = L['Indicates whether to show or hide Eclipse bar as a Druid'],
get = function (info) return oUF_Tabi.db.profile.ShowEclipseBar end,
set = function (info, value) oUF_Tabi.db.profile.ShowEclipseBar = value end,
order = 11,
}
},
order = 1,
},
player = {
type = 'group',
name = L['Player'],
desc = L['Player Options'],
args = {},
order = 2,
},
target = {
type = 'group',
name = L['Target'],
desc = L['Target Options'],
args = {},
order = 3,
},
pet = {
type = 'group',
name = L['Pet'],
desc = L['Pet Options'],
args = {},
order = 4,
},
tot = {
type = 'group',
name = L['ToT'],
desc = L['ToT Options'],
args = {},
order = 5,
},
focus = {
type = 'group',
name = L['Focus'],
desc = L['Focus Options'],
args = {},
order = 6,
},
party = {
type = 'group',
name = L['Party'],
desc = L['Party Options'],
args = {},
order = 7,
},
raid = {
type = 'group',
name = L['Raid'],
desc = L['Raid Options'],
args = {},
order = 8,
},
boss = {
type = 'group',
name = L['Boss'],
desc = L['Boss Options'],
args = {},
order = 9,
},
},
}
0
I'll try the width param as soon as I can, as it will make the code much more clean than using lots of spacers.
OrionShock, I took a closer look at what you wrote, I like the idea of having only one get and set function to access my options. However, that leads to another question:
When you write info.option.name in the two functions, what do you mean by "name":
- name = L['Role Specific:'] or
- rolespecific = {
The second one is OK, I can get it to match with my options DB. But if it's the first, I don't think that will work.
0
I'm gonna look for things already translated too.
Now, to go a little further, I thought strings were cutted (with ...) because there were multiple options on the same line but it appears I was wrong (again). Is there a way to get the full string ?
0
I've been trying everything since 2 days to get what I want, but failed. :(
I have an options panel made with Ace3, and currently, it looks like the attachments.
I would like to have one option per line.
I tried to change the order values, making subgroups, but nothing seems to work.
Can anyone help me with this ?
Here is my code for the options :
Thanks in advance.