vanilla-wow-addons – Rev 1
?pathlinks?
local L = AceLibrary("AceLocale-2.2"):new("Buffalo")
Buffalo_OptionsTable={
type='group',
-- name="Buffalo",
args= {
lock = {
type='toggle',
name=L["Lock"],
desc=L["When activated, the buff frames are locked and the reference frames are hidden"],
get= function() return Buffalo.db.profile.locked end,
set = function(v) Buffalo.ToggleLock(Buffalo, v) end,
order=1
},
buffs = {
type='group',
name=L["Buffs"],
desc=L["Manipulate Buffs Display"],
order=2,
args={
title={
type='header',
name=L["Buffs"],
-- icon="Interface\\Icons\\Ability_DualWield.blp",
order=5
},
scale={
type='range',
name=L["Scale"],
desc=L["Scale Buff Icons"],
min=0,
max=10,
step=0.1,
get = function() return Buffalo.db.profile.scale["buff"] end,
set = function(v) Buffalo.SetScale(Buffalo, v, "buff") end,
order=10
},
padding={
type='group',
name=L["Padding"],
desc=L["Control the distance between rows/columns"],
args={
x={
type='range',
name=L["X-Padding"],
desc=L["Distance between columns"],
min=-10,
max=100,
step=1,
get = function() return Buffalo.db.profile.padding["buff"].x end,
set = function(v) Buffalo.SetPadding(Buffalo, v, "buff", "x") end
},
y={
type='range',
name=L["Y-Padding"],
desc=L["Distance between rows"],
min=-10,
max=100,
step=1,
get = function() return Buffalo.db.profile.padding["buff"].y end,
set = function(v) Buffalo.SetPadding(Buffalo, v, "buff", "y") end
}
},
order=20
},
hGrowth={
type='text',
name=L["Horizontal Direction"],
desc=L["In which horizontal direction should the display grow?"],
get=function()
if Buffalo.db.profile.growRight.buff then
return "right"
else
return "left"
end
end,
set=function(v) Buffalo.SetGrowthDirection(Buffalo, v, "buff") end,
validate = {["left"] = L["To the left"], ["right"]=L["To the right"]},
order=30
},
vGrowth={
type='text',
name=L["Vertical Direction"],
desc=L["In which vertical direction should the display grow?"],
get=function()
if Buffalo.db.profile.growUpwards.buff then
return "up"
else
return "down"
end
end,
set=function(v) Buffalo.SetGrowthDirection(Buffalo, v, "buff") end,
validate = {["up"] = L["Upwards"], ["down"]=L["Downwards"]},
order=40
},
firstGrowth={
type='text',
name=L["Growth Precedence"],
desc=L["In which direction should the display grow first (horizontally or vertically)?"],
get=function() return Buffalo.db.profile.growHorizontalFirst.buff end,
set=function(v) Buffalo.SetGrowHorizontalFirst(Buffalo, v, "buff")end,
validate = {[true] = L["Horizontally"], [false]=L["Vertically"]},
order=50
},
rows={
type='range',
name=L["Rows"],
desc=L["Number of Rows. Only applies when Growth Precedence is Vertical"],
min=1,
max=16,
step=1,
get = function() return Buffalo.db.profile.rows["buff"] end,
set = function(v) Buffalo.SetRows(Buffalo, v, "buff") end,
order=60
},
cols={
type='range',
name=L["Columns"],
desc=L["Number of Columns. Only applies when Growth Precedence is Horizontal"],
min=1,
max=16,
step=1,
get = function() return Buffalo.db.profile.cols["buff"] end,
set = function(v) Buffalo.SetCols(Buffalo, v, "buff") end,
order=70
},
hide = {
type='toggle',
name=L["Hide"],
desc=L["Hides these buff frames"],
get= function() return Buffalo.db.profile.hide["buff"] end,
set = function(v) Buffalo.ToggleHide(Buffalo, v, "buff") end,
order=90
},
flashing = {
type='toggle',
name=L["Flashing"],
desc=L["Toggle flashing on fading buffs"],
get= function() return Buffalo.db.profile.flashes["buff"] end,
set = function(v) Buffalo.db.profile.flashes["buff"] = v end,
order=95
},
timers = {
type='group',
name=L["Timers"],
desc=L["Customize buff timers"],
order=100,
args = {
verboseTimer = {
type='toggle',
name=L["Verbose Timers"],
desc=L["Replaces the default time format for timers with HH:MM or MM:SS"],
get= function() return Buffalo.db.profile.verboseTimers["buff"] end,
set = function(v) Buffalo.db.profile.verboseTimers["buff"] = v end,
order=100
},
whiteTimer = {
type='toggle',
name=L["White Timers"],
desc=L["Use white timers instead of yellow ones"],
get= function() return Buffalo.db.profile.whiteTimers["buff"] end,
set = function(v) Buffalo.db.profile.whiteTimers["buff"] = v end,
disabled = function() return not Buffalo.db.profile.verboseTimers["buff"] end,
order=110
},
},
},
}
},
debuffs = {
type='group',
name=L["Debuffs"],
desc=L["Manipulate Debuffs Display"],
order=3,
args={
title={
type='header',
name=L["Debuffs"],
-- icon="Interface\\Icons\\Ability_DualWield.blp",
order=10
},
scale={
type='range',
name=L["Scale"],
desc=L["Scale Debuff Icons"],
min=0,
max=10,
get = function() return Buffalo.db.profile.scale["debuff"] end,
set = function(v) Buffalo.SetScale(Buffalo, v, "debuff") end,
order=20
},
padding={
type='group',
name=L["Padding"],
desc=L["Control the distance between rows/columns"],
args={
x={
type='range',
name=L["X-Padding"],
desc=L["Distance between columns"],
min=-10,
max=100,
step=1,
get = function() return Buffalo.db.profile.padding["debuff"].x end,
set = function(v) Buffalo.SetPadding(Buffalo, v, "debuff", "x") end
},
y={
type='range',
name=L["Y-Padding"],
desc=L["Distance between rows"],
min=-10,
max=100,
step=1,
get = function() return Buffalo.db.profile.padding["debuff"].y end,
set = function(v) Buffalo.SetPadding(Buffalo, v, "debuff", "y") end
}
},
order=30
},
hGrowth={
type='text',
name=L["Horizontal Direction"],
desc=L["In which horizontal direction should the display grow?"],
get=function()
if Buffalo.db.profile.growRight.debuff then
return "right"
else
return "left"
end
end,
set=function(v) Buffalo.SetGrowthDirection(Buffalo, v, "debuff") end,
validate = {["left"] = L["To the left"], ["right"]=L["To the right"]},
order=40
},
vGrowth={
type='text',
name=L["Vertical Direction"],
desc=L["In which vertical direction should the display grow?"],
get=function()
if Buffalo.db.profile.growUpwards.debuff then
return "up"
else
return "down"
end
end,
set=function(v) Buffalo.SetGrowthDirection(Buffalo, v, "debuff") end,
validate = {["up"] = L["Upwards"], ["down"]=L["Downwards"]},
order=50
},
firstGrowth={
type='text',
name=L["Growth Precedence"],
desc=L["In which direction should the display grow first (horizontally or vertically)?"],
get=function() return Buffalo.db.profile.growHorizontalFirst.debuff end,
set=function(v) Buffalo.SetGrowHorizontalFirst(Buffalo, v, "debuff") end,
validate = {[true] = L["Horizontally"], [false]=L["Vertically"]},
order=60
},
rows={
type='range',
name=L["Rows"],
desc=L["Number of Rows. Only applies when Growth Precedence is Vertical"],
min=1,
max=16,
step=1,
get = function() return Buffalo.db.profile.rows["debuff"] end,
set = function(v) Buffalo.SetRows(Buffalo, v, "debuff") end,
order=70
},
cols={
type='range',
name=L["Columns"],
desc=L["Number of Columns. Only applies when Growth Precedence is Horizontal"],
min=1,
max=16,
step=1,
get = function() return Buffalo.db.profile.cols["debuff"] end,
set = function(v) Buffalo.SetCols(Buffalo, v, "debuff") end,
order=80
},
hide = {
type='toggle',
name=L["Hide"],
desc=L["Hides these buff frames"],
get= function() return Buffalo.db.profile.hide["debuff"] end,
set = function(v) Buffalo.ToggleHide(Buffalo, v, "debuff") end,
order=90
},
flashing = {
type='toggle',
name=L["Flashing"],
desc=L["Toggle flashing on fading buffs"],
get= function() return Buffalo.db.profile.flashes["debuff"] end,
set = function(v) Buffalo.db.profile.flashes["debuff"] = v end,
order=95
},
timers = {
type='group',
name=L["Timers"],
desc=L["Customize buff timers"],
order=100,
args = {
verboseTimer = {
type='toggle',
name=L["Verbose Timers"],
desc=L["Replaces the default time format for timers with HH:MM or MM:SS"],
get= function() return Buffalo.db.profile.verboseTimers["debuff"] end,
set = function(v) Buffalo.db.profile.verboseTimers["debuff"] = v end,
order=100
},
whiteTimer = {
type='toggle',
name=L["White Timers"],
desc=L["Use white timers instead of yellow ones"],
get= function() return Buffalo.db.profile.whiteTimers["debuff"] end,
set = function(v) Buffalo.db.profile.whiteTimers["debuff"] = v end,
disabled = function() return not Buffalo.db.profile.verboseTimers["debuff"] end,
order=110
},
},
},
}
},
weapon = {
type='group',
name=L["Weapon Buffs"],
desc=L["Manipulate Weapon Buffs Display"],
order=4,
args={
title={
type='header',
name=L["Weapon Buffs"],
icon="Interface\\Icons\\Ability_DualWield.blp",
order=1
},
scale={
type='range',
name=L["Scale"],
desc=L["Scale Buff Icons"],
min=0,
max=10,
get = function() return Buffalo.db.profile.scale["weapon"] end,
set = function(v) Buffalo.SetScale(Buffalo, v, "weapon") end,
order=2
},
padding={
type='group',
name=L["Padding"],
desc=L["Control the distance between rows/columns"],
args={
x={
type='range',
name=L["X-Padding"],
desc=L["Distance between columns"],
min=-10,
max=100,
step=1,
get = function() return Buffalo.db.profile.padding["weapon"].x end,
set = function(v) Buffalo.SetPadding(Buffalo, v, "weapon", "x") end
},
y={
type='range',
name=L["Y-Padding"],
desc=L["Distance between rows"],
min=-10,
max=100,
step=1,
get = function() return Buffalo.db.profile.padding["weapon"].y end,
set = function(v) Buffalo.SetPadding(Buffalo, v, "weapon", "y") end
}
},
order=3
},
hGrowth={
type='text',
name=L["Horizontal Direction"],
desc=L["In which horizontal direction should the display grow?"],
get=function()
if Buffalo.db.profile.growRight.weapon then
return "right"
else
return "left"
end
end,
set=function(v) Buffalo.SetGrowthDirection(Buffalo, v, "weapon") end,
validate = {["left"] = L["To the left"], ["right"]=L["To the right"]},
order=4
},
vGrowth={
type='text',
name=L["Vertical Direction"],
desc=L["In which vertical direction should the display grow?"],
get=function()
if Buffalo.db.profile.growUpwards.weapon then
return "up"
else
return "down"
end
end,
set=function(v) Buffalo.SetGrowthDirection(Buffalo, v, "weapon") end,
validate = {["up"] = L["Upwards"], ["down"]=L["Downwards"]},
order=5
},
firstGrowth={
type='text',
name=L["Growth Precedence"],
desc=L["In which direction should the display grow first (horizontally or vertically)?"],
get=function() return Buffalo.db.profile.growHorizontalFirst.weapon end,
set=function(v) Buffalo.SetGrowHorizontalFirst(Buffalo, v, "weapon")end,
validate = {[true] = L["Horizontally"], [false]=L["Vertically"]},
order=6
},
rows={
type='range',
name=L["Rows"],
desc=L["Number of Rows. Only applies when Growth Precedence is Vertical"],
min=1,
max=2,
step=1,
get = function() return Buffalo.db.profile.rows["weapon"] end,
set = function(v) Buffalo.SetRows(Buffalo, v, "weapon") end,
order=7
},
cols={
type='range',
name=L["Columns"],
desc=L["Number of Columns. Only applies when Growth Precedence is Horizontal"],
min=1,
max=2,
step=1,
get = function() return Buffalo.db.profile.cols["weapon"] end,
set = function(v) Buffalo.SetCols(Buffalo, v, "weapon") end,
order=8
},
hide = {
type='toggle',
name=L["Hide"],
desc=L["Hides these buff frames"],
get= function() return Buffalo.db.profile.hide["weapon"] end,
set = function(v) Buffalo.ToggleHide(Buffalo, v, "weapon") end,
order=90
},
flashing = {
type='toggle',
name=L["Flashing"],
desc=L["Toggle flashing on fading buffs"],
get= function() return Buffalo.db.profile.flashes["weapon"] end,
set = function(v) Buffalo.db.profile.flashes["weapon"] = v end,
order=95
},
timers = {
type='group',
name=L["Timers"],
desc=L["Customize buff timers"],
order=100,
args = {
verboseTimer = {
type='toggle',
name=L["Verbose Timers"],
desc=L["Replaces the default time format for timers with HH:MM or MM:SS"],
get= function() return Buffalo.db.profile.verboseTimers["weapon"] end,
set = function(v) Buffalo.db.profile.verboseTimers["weapon"] = v end,
order=100
},
whiteTimer = {
type='toggle',
name=L["White Timers"],
desc=L["Use white timers instead of yellow ones"],
get= function() return Buffalo.db.profile.whiteTimers["weapon"] end,
set = function(v) Buffalo.db.profile.whiteTimers["weapon"] = v end,
disabled = function() return not Buffalo.db.profile.verboseTimers["weapon"] end,
order=110
},
},
},
}
},
reset = {
type='execute',
name="Reset",
desc=L["Reset"],
func = function() Buffalo.Reset(Buffalo) end
}
}
}