- converted most of the mod to ace3. the only ace2 remaining is AceEvent-2 (probably easy to get away from) and AceOO-2 (not so easy)

- the ace3 conversion also broke the dependence on Waterfall and gave a much better configuration screen through AceConfigDialog; plus Waterfall is very broken in Cataclysm and it's unclear whether anyone will bother to fix it or not
- fixed a bug with the custom CD bar when changing profiles where it would generate endless errors until a reloadui
- removed DewDrop library as it was no longer in use
- temporarily removed FuBar plugin as it doesn't work as a mixin with AceAddon-3. i will eventually be bringing this back in some form (before the next full release version)
- removed an unused 'about' button on the config page and some empty headers...not sure why they were ever there
This commit is contained in:
Parnic
2010-09-05 20:11:33 +00:00
parent 5a7f8ffa38
commit 59344a134a
45 changed files with 676 additions and 749 deletions

View File

@ -2,20 +2,45 @@ package-as: IceHUD
externals: externals:
libs/AceLibrary: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceLibrary libs/AceLibrary: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceLibrary
libs/CallbackHandler-1.0: svn://svn.wowace.com/wow/ace3/mainline/trunk/CallbackHandler-1.0 libs/CallbackHandler-1.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/CallbackHandler-1.0
tag: latest
libs/AceEvent-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceEvent-2.0 libs/AceEvent-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceEvent-2.0
libs/AceDB-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceDB-2.0 libs/AceDB-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceDB-3.0
tag: latest
libs/AceDBOptions-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceDBOptions-3.0
tag: latest
libs/AceConfig-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceConfig-3.0
tag: latest
libs/AceGUI-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceGUI-3.0
tag: latest
libs/AceOO-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceOO-2.0 libs/AceOO-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceOO-2.0
libs/AceAddon-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceAddon-2.0 libs/AceAddon-3.0:
libs/AceConsole-2.0: svn://svn.wowace.com/wow/ace2/mainline/trunk/AceConsole-2.0 url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceAddon-3.0
libs/Deformat-2.0: svn://svn.wowace.com/wow/deformat/mainline/trunk/Deformat-2.0 tag: latest
libs/Dewdrop-2.0: svn://svn.wowace.com/wow/dewdroplib/mainline/trunk/Dewdrop-2.0 libs/AceConsole-3.0:
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceConsole-3.0
tag: latest
libs/Deformat-2.0:
url: svn://svn.wowace.com/wow/deformat/mainline/trunk/Deformat-2.0
tag: latest
libs/FuBarPlugin-2.0: svn://svn.wowace.com/wow/fubarplugin-2-0/mainline/trunk/FuBarPlugin-2.0 libs/FuBarPlugin-2.0: svn://svn.wowace.com/wow/fubarplugin-2-0/mainline/trunk/FuBarPlugin-2.0
libs/LibDogTag-Unit-3.0: svn://svn.wowace.com/wow/libdogtag-unit-3-0/mainline/trunk libs/LibRangeCheck-2.0:
libs/LibRangeCheck-2.0: svn://svn.wowace.com/wow/librangecheck-2-0/mainline/trunk/LibRangeCheck-2.0 url: svn://svn.wowace.com/wow/librangecheck-2-0/mainline/trunk/LibRangeCheck-2.0
libs/LibSharedMedia-3.0: svn://svn.wowace.com/wow/libsharedmedia-3-0/mainline/trunk tag: latest
libs/LibDogTag-3.0: svn://svn.wowace.com/wow/libdogtag-3-0/mainline/trunk libs/LibSharedMedia-3.0:
libs/Waterfall-1.0: svn://svn.wowace.com/wow/waterfall-1-0/mainline/trunk/Waterfall-1.0 url: svn://svn.wowace.com/wow/libsharedmedia-3-0/mainline/trunk
tag: latest
libs/LibDogTag-3.0:
url: svn://svn.wowace.com/wow/libdogtag-3-0/mainline/trunk
tag: latest
libs/LibDogTag-Unit-3.0:
url: svn://svn.wowace.com/wow/libdogtag-unit-3-0/mainline/trunk
tag: latest
optional-dependencies: optional-dependencies:
- libdogtag-3-0 - libdogtag-3-0

View File

@ -111,25 +111,25 @@ function IceBarElement.prototype:GetOptions()
} }
opts["side"] = opts["side"] =
{ {
type = 'text', type = 'select',
name = '|c' .. self.configColor .. 'Side|r', name = '|c' .. self.configColor .. 'Side|r',
desc = 'Side of the HUD where the bar appears', desc = 'Side of the HUD where the bar appears',
get = function() get = function(info)
if (self.moduleSettings.side == IceCore.Side.Right) then if (self.moduleSettings.side == IceCore.Side.Right) then
return "Right" return 2
else else
return "Left" return 1
end end
end, end,
set = function(value) set = function(info, value)
if (value == "Right") then if (value == 2) then
self.moduleSettings.side = IceCore.Side.Right self.moduleSettings.side = IceCore.Side.Right
else else
self.moduleSettings.side = IceCore.Side.Left self.moduleSettings.side = IceCore.Side.Left
end end
self:Redraw() self:Redraw()
end, end,
validate = { "Left", "Right" }, values = { "Left", "Right" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -147,7 +147,7 @@ function IceBarElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.offset return self.moduleSettings.offset
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.offset = value self.moduleSettings.offset = value
self:Redraw() self:Redraw()
end, end,
@ -169,7 +169,7 @@ function IceBarElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scale return self.moduleSettings.scale
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scale = value self.moduleSettings.scale = value
self:Redraw() self:Redraw()
end, end,
@ -187,7 +187,7 @@ function IceBarElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.inverse return self.moduleSettings.inverse
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.inverse = value self.moduleSettings.inverse = value
self:SetBarFramePoints() self:SetBarFramePoints()
self:Redraw() self:Redraw()
@ -206,7 +206,7 @@ function IceBarElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.reverse return self.moduleSettings.reverse
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.reverse = value self.moduleSettings.reverse = value
self:SetBarFramePoints() self:SetBarFramePoints()
self:Redraw() self:Redraw()
@ -229,7 +229,7 @@ function IceBarElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bar'] return self.moduleSettings.barVisible['bar']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bar'] = v self.moduleSettings.barVisible['bar'] = v
if v then if v then
self.barFrame:Show() self.barFrame:Show()
@ -250,7 +250,7 @@ function IceBarElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bg'] return self.moduleSettings.barVisible['bg']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bg'] = v self.moduleSettings.barVisible['bg'] = v
if v then if v then
self.frame.bg:Show() self.frame.bg:Show()
@ -277,7 +277,7 @@ if not self.moduleSettings.hideAnimationSettings then
get = function() get = function()
return self.moduleSettings.shouldAnimate return self.moduleSettings.shouldAnimate
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.shouldAnimate = value self.moduleSettings.shouldAnimate = value
self:Redraw() self:Redraw()
end, end,
@ -298,7 +298,7 @@ if not self.moduleSettings.hideAnimationSettings then
get = function() get = function()
return self.moduleSettings.desiredLerpTime return self.moduleSettings.desiredLerpTime
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.desiredLerpTime = value self.moduleSettings.desiredLerpTime = value
end, end,
disabled = function() disabled = function()
@ -319,7 +319,7 @@ end
get = function() get = function()
return self.moduleSettings.widthModifier return self.moduleSettings.widthModifier
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.widthModifier = v self.moduleSettings.widthModifier = v
self:Redraw() self:Redraw()
end, end,
@ -340,7 +340,7 @@ end
get = function() get = function()
return self.moduleSettings.barVerticalOffset return self.moduleSettings.barVerticalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVerticalOffset = v self.moduleSettings.barVerticalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -358,9 +358,9 @@ end
get = function() get = function()
return self.moduleSettings.shouldUseOverride return self.moduleSettings.shouldUseOverride
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.shouldUseOverride = value self.moduleSettings.shouldUseOverride = value
AceLibrary("Waterfall-1.0"):Refresh("IceHUD") IceHUD:NotifyOptionsChange()
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
@ -371,20 +371,20 @@ end
opts["barTextureOverride"] = opts["barTextureOverride"] =
{ {
type = 'text', type = 'select',
name = 'Bar Texture Override', name = 'Bar Texture Override',
desc = 'This will override the global bar texture setting for this bar.', desc = 'This will override the global bar texture setting for this bar.',
get = function() get = function(info)
return self.moduleSettings.barTextureOverride return IceHUD:GetSelectValue(info, self.moduleSettings.barTextureOverride)
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.barTextureOverride = value self.moduleSettings.barTextureOverride = info.option.values[value]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self:IsEnabled() or not self.moduleSettings.shouldUseOverride return not self:IsEnabled() or not self.moduleSettings.shouldUseOverride
end, end,
validate = IceHUD.validBarList, values = IceHUD.validBarList,
order = 36 order = 36
} }
@ -405,7 +405,7 @@ end
get = function() get = function()
return self.moduleSettings.barFontSize return self.moduleSettings.barFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barFontSize = v self.moduleSettings.barFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -422,7 +422,7 @@ end
get = function() get = function()
return self.moduleSettings.lockUpperTextAlpha return self.moduleSettings.lockUpperTextAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lockUpperTextAlpha = v self.moduleSettings.lockUpperTextAlpha = v
self:Redraw() self:Redraw()
end, end,
@ -436,7 +436,7 @@ end
get = function() get = function()
return self.moduleSettings.lockLowerTextAlpha return self.moduleSettings.lockLowerTextAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lockLowerTextAlpha = v self.moduleSettings.lockLowerTextAlpha = v
self:Redraw() self:Redraw()
end, end,
@ -450,7 +450,7 @@ end
get = function() get = function()
return self.moduleSettings.textVisible['upper'] return self.moduleSettings.textVisible['upper']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVisible['upper'] = v self.moduleSettings.textVisible['upper'] = v
self:Redraw() self:Redraw()
end, end,
@ -464,7 +464,7 @@ end
get = function() get = function()
return self.moduleSettings.textVisible['lower'] return self.moduleSettings.textVisible['lower']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVisible['lower'] = v self.moduleSettings.textVisible['lower'] = v
self:Redraw() self:Redraw()
end, end,
@ -472,7 +472,7 @@ end
}, },
upperTextString = { upperTextString = {
type = 'text', type = 'input',
name = 'Upper Text', name = 'Upper Text',
desc = 'The upper text to display under this bar (accepts LibDogTag formatting)\n\nSee http://www.wowace.com/wiki/LibDogTag-2.0/ or type /dogtag for tag info.\n\nRemember to press ENTER after filling out this box or it will not save.', desc = 'The upper text to display under this bar (accepts LibDogTag formatting)\n\nSee http://www.wowace.com/wiki/LibDogTag-2.0/ or type /dogtag for tag info.\n\nRemember to press ENTER after filling out this box or it will not save.',
hidden = function() hidden = function()
@ -481,7 +481,7 @@ end
get = function() get = function()
return self.moduleSettings.upperText return self.moduleSettings.upperText
end, end,
set = function(v) set = function(info, v)
if DogTag ~= nil and v ~= '' and v ~= nil then if DogTag ~= nil and v ~= '' and v ~= nil then
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
end end
@ -490,11 +490,12 @@ end
self:RegisterFontStrings() self:RegisterFontStrings()
self:Redraw() self:Redraw()
end, end,
multiline = true,
usage = "<upper text to display>" usage = "<upper text to display>"
}, },
lowerTextString = { lowerTextString = {
type = 'text', type = 'input',
name = 'Lower Text', name = 'Lower Text',
desc = 'The lower text to display under this bar (accepts LibDogTag formatting)\n\nSee http://www.wowace.com/wiki/LibDogTag-2.0/ or type /dogtag for tag info.\n\nRemember to press ENTER after filling out this box or it will not save.', desc = 'The lower text to display under this bar (accepts LibDogTag formatting)\n\nSee http://www.wowace.com/wiki/LibDogTag-2.0/ or type /dogtag for tag info.\n\nRemember to press ENTER after filling out this box or it will not save.',
hidden = function() hidden = function()
@ -503,7 +504,7 @@ end
get = function() get = function()
return self.moduleSettings.lowerText return self.moduleSettings.lowerText
end, end,
set = function(v) set = function(info, v)
if DogTag ~= nil and v ~= '' and v ~= nil then if DogTag ~= nil and v ~= '' and v ~= nil then
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
end end
@ -512,21 +513,22 @@ end
self:RegisterFontStrings() self:RegisterFontStrings()
self:Redraw() self:Redraw()
end, end,
multiline = true,
usage = "<lower text to display>" usage = "<lower text to display>"
}, },
forceJustifyText = { forceJustifyText = {
type = 'text', type = 'select',
name = 'Force Text Justification', name = 'Force Text Justification',
desc = 'This sets the alignment for the text on this bar', desc = 'This sets the alignment for the text on this bar',
get = function() get = function(info)
return self.moduleSettings.forceJustifyText return self.moduleSettings.forceJustifyText
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.forceJustifyText = value self.moduleSettings.forceJustifyText = value
self:Redraw() self:Redraw()
end, end,
validate = { NONE = "None", LEFT = "Left", RIGHT = "Right" }, values = { NONE = "None", LEFT = "Left", RIGHT = "Right" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -542,7 +544,7 @@ end
get = function() get = function()
return self.moduleSettings.textVerticalOffset return self.moduleSettings.textVerticalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVerticalOffset = v self.moduleSettings.textVerticalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -561,7 +563,7 @@ end
get = function() get = function()
return self.moduleSettings.textHorizontalOffset return self.moduleSettings.textHorizontalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textHorizontalOffset = v self.moduleSettings.textHorizontalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -571,7 +573,7 @@ end
} }
} }
} }
return opts return opts
end end

View File

@ -84,7 +84,7 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showCastTime return self.moduleSettings.showCastTime
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showCastTime = value self.moduleSettings.showCastTime = value
end, end,
disabled = function() disabled = function()
@ -101,7 +101,7 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showSpellRank return self.moduleSettings.showSpellRank
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showSpellRank = value self.moduleSettings.showSpellRank = value
end, end,
disabled = function() disabled = function()
@ -123,7 +123,7 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.displayAuraIcon return self.moduleSettings.displayAuraIcon
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayAuraIcon = v self.moduleSettings.displayAuraIcon = v
if self.barFrame.icon then if self.barFrame.icon then
if v then if v then
@ -136,7 +136,6 @@ function IceCastBar.prototype:GetOptions()
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = "<whether or not to display an icon for this bar's tracked spell>",
order = 51, order = 51,
} }
@ -150,14 +149,13 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconXOffset return self.moduleSettings.auraIconXOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconXOffset = v self.moduleSettings.auraIconXOffset = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's horizontal position>",
order = 52, order = 52,
} }
@ -171,14 +169,13 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconYOffset return self.moduleSettings.auraIconYOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconYOffset = v self.moduleSettings.auraIconYOffset = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's vertical position>",
order = 53, order = 53,
} }
@ -192,14 +189,13 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconScale return self.moduleSettings.auraIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconScale = v self.moduleSettings.auraIconScale = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's size>",
order = 54, order = 54,
} }
@ -210,13 +206,12 @@ function IceCastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.reverseChannel return self.moduleSettings.reverseChannel
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.reverseChannel = v self.moduleSettings.reverseChannel = v
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = "<whether or not to reverse the direction of a channel's castbar>",
order = 32.5, order = 32.5,
} }

View File

@ -1,6 +1,6 @@
local AceOO = AceLibrary("AceOO-2.0") local AceOO = AceLibrary("AceOO-2.0")
IceCore = AceOO.Class("AceEvent-2.0", "AceDB-2.0") IceCore = AceOO.Class("AceEvent-2.0")
IceCore.Side = { Left = "LEFT", Right = "RIGHT" } IceCore.Side = { Left = "LEFT", Right = "RIGHT" }
@ -25,8 +25,6 @@ IceCore.prototype.presets = {}
IceCore.prototype.settingsHash = nil IceCore.prototype.settingsHash = nil
IceCore.prototype.bConfigMode = false IceCore.prototype.bConfigMode = false
local waterfall = AceLibrary("Waterfall-1.0")
-- Constructor -- -- Constructor --
function IceCore.prototype:init() function IceCore.prototype:init()
IceCore.super.prototype.init(self) IceCore.super.prototype.init(self)
@ -47,50 +45,52 @@ function IceCore.prototype:SetupDefaults()
-- DEFAULT SETTINGS -- DEFAULT SETTINGS
local defaultPreset = "RoundBar" local defaultPreset = "RoundBar"
self.defaults = { self.defaults = {
gap = 150, profile = {
verticalPos = -110, gap = 150,
horizontalPos = 0, verticalPos = -110,
scale = 0.9, horizontalPos = 0,
scale = 0.9,
alphaooc = 0.3,
alphaic = 0.6, alphaooc = 0.3,
alphaTarget = 0.4, alphaic = 0.6,
alphaNotFull = 0.4, alphaTarget = 0.4,
alphaNotFull = 0.4,
alphaoocbg = 0.2, alphaoocbg = 0.2,
alphaicbg = 0.3, alphaicbg = 0.3,
alphaTargetbg = 0.25, alphaTargetbg = 0.25,
alphaNotFullbg = 0.25, alphaNotFullbg = 0.25,
backgroundToggle = false, backgroundToggle = false,
backgroundColor = {r = 0.5, g = 0.5, b = 0.5}, backgroundColor = {r = 0.5, g = 0.5, b = 0.5},
barTexture = "Bar", barTexture = "Bar",
barPreset = defaultPreset, barPreset = defaultPreset,
fontFamily = "Arial Narrow", fontFamily = "Arial Narrow",
debug = false, debug = false,
barBlendMode = "BLEND", barBlendMode = "BLEND",
barBgBlendMode = "BLEND", barBgBlendMode = "BLEND",
bShouldUseDogTags = true, bShouldUseDogTags = true,
updatePeriod = 0.1 updatePeriod = 0.1
}
} }
self:LoadPresets() self:LoadPresets()
for k, v in pairs(self.presets[defaultPreset]) do for k, v in pairs(self.presets[defaultPreset]) do
self.defaults[k] = v self.defaults.profile[k] = v
end end
-- get default settings from the modules -- get default settings from the modules
self.defaults.modules = {} self.defaults.profile.modules = {}
for i = 1, table.getn(self.elements) do for i = 1, table.getn(self.elements) do
local name = self.elements[i]:GetElementName() local name = self.elements[i]:GetElementName()
self.defaults.modules[name] = self.elements[i]:GetDefaultSettings() self.defaults.profile.modules[name] = self.elements[i]:GetDefaultSettings()
end end
if (table.getn(self.elements) > 0) then if (table.getn(self.elements) > 0) then
self.defaults.colors = self.elements[1].defaultColors self.defaults.profile.colors = self.elements[1].defaultColors
end end
end end
@ -256,6 +256,7 @@ function IceCore.prototype:Disable()
end end
self.IceHUDFrame:Hide() self.IceHUDFrame:Hide()
self:EmptyUpdates()
self.enabled = false self.enabled = false
end end
@ -315,7 +316,7 @@ function IceCore.prototype:GetColorOptions()
get = function() get = function()
return IceHUD.IceCore:GetColor(kk) return IceHUD.IceCore:GetColor(kk)
end, end,
set = function(r, g, b) set = function(info, r, g, b)
local color = k local color = k
IceHUD.IceCore:SetColor(kk, r, g, b) IceHUD.IceCore:SetColor(kk, r, g, b)
end end
@ -529,7 +530,7 @@ function IceCore.prototype:ChangePreset(value)
self:SetBarBlendMode(self.presets[value].barBlendMode) self:SetBarBlendMode(self.presets[value].barBlendMode)
self:SetBarBgBlendMode(self.presets[value].barBgBlendMode) self:SetBarBgBlendMode(self.presets[value].barBgBlendMode)
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end end
@ -655,6 +656,12 @@ function IceCore.prototype:IsUpdateSubscribed(frame)
return self.updatees[frame] ~= nil return self.updatees[frame] ~= nil
end end
function IceCore.prototype:EmptyUpdates()
self.IceHUDFrame:SetScript("OnUpdate", nil)
self.updatees = {}
self.updatee_count = 0
end
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
-- Presets -- -- Presets --
------------------------------------------------------------------------------- -------------------------------------------------------------------------------

View File

@ -121,7 +121,7 @@ function IceElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.enabled return self.moduleSettings.enabled
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.enabled = value self.moduleSettings.enabled = value
if (value) then if (value) then
self:Enable(true) self:Enable(true)
@ -145,7 +145,7 @@ function IceElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scale return self.moduleSettings.scale
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scale = value self.moduleSettings.scale = value
self:Redraw() self:Redraw()
end, end,
@ -163,7 +163,7 @@ function IceElement.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.alwaysFullAlpha return self.moduleSettings.alwaysFullAlpha
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.alwaysFullAlpha = value self.moduleSettings.alwaysFullAlpha = value
self:Update(self.unit) self:Update(self.unit)
self:Redraw() self:Redraw()

View File

@ -1,7 +1,8 @@
IceHUD = AceLibrary("AceAddon-2.0"):new("AceConsole-2.0", "AceDB-2.0", "FuBarPlugin-2.0") IceHUD = LibStub("AceAddon-3.0"):NewAddon("IceHUD", "AceConsole-3.0")
local waterfall = AceLibrary("Waterfall-1.0")
local SML = AceLibrary("LibSharedMedia-3.0") local SML = AceLibrary("LibSharedMedia-3.0")
local ACR = LibStub("AceConfigRegistry-3.0")
local ConfigDialog = LibStub("AceConfigDialog-3.0")
IceHUD.CurrTagVersion = 3 IceHUD.CurrTagVersion = 3
IceHUD.debugging = false IceHUD.debugging = false
@ -38,7 +39,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetVerticalPos() return IceHUD.IceCore:GetVerticalPos()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetVerticalPos(v) IceHUD.IceCore:SetVerticalPos(v)
end, end,
min = -700, min = -700,
@ -54,7 +55,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetHorizontalPos() return IceHUD.IceCore:GetHorizontalPos()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetHorizontalPos(v) IceHUD.IceCore:SetHorizontalPos(v)
end, end,
min = -2000, min = -2000,
@ -70,7 +71,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetGap() return IceHUD.IceCore:GetGap()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetGap(v) IceHUD.IceCore:SetGap(v)
end, end,
min = 50, min = 50,
@ -86,7 +87,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetScale() return IceHUD.IceCore:GetScale()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetScale(v) IceHUD.IceCore:SetScale(v)
end, end,
min = 0.5, min = 0.5,
@ -118,7 +119,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlpha("IC") return IceHUD.IceCore:GetAlpha("IC")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlpha("IC", v) IceHUD.IceCore:SetAlpha("IC", v)
end, end,
min = 0, min = 0,
@ -135,7 +136,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlpha("OOC") return IceHUD.IceCore:GetAlpha("OOC")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlpha("OOC", v) IceHUD.IceCore:SetAlpha("OOC", v)
end, end,
min = 0, min = 0,
@ -152,7 +153,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlpha("Target") return IceHUD.IceCore:GetAlpha("Target")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlpha("Target", v) IceHUD.IceCore:SetAlpha("Target", v)
end, end,
min = 0, min = 0,
@ -169,7 +170,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlpha("NotFull") return IceHUD.IceCore:GetAlpha("NotFull")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlpha("NotFull", v) IceHUD.IceCore:SetAlpha("NotFull", v)
end, end,
min = 0, min = 0,
@ -180,8 +181,6 @@ IceHUD.options =
}, },
headerAlphaBackgroundBlank = { type = 'header', name = " ", order = 20 },
headerAlphaBackground = { headerAlphaBackground = {
type = 'header', type = 'header',
name = "Background Alpha", name = "Background Alpha",
@ -195,7 +194,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlphaBG("IC") return IceHUD.IceCore:GetAlphaBG("IC")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlphaBG("IC", v) IceHUD.IceCore:SetAlphaBG("IC", v)
end, end,
min = 0, min = 0,
@ -212,7 +211,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlphaBG("OOC") return IceHUD.IceCore:GetAlphaBG("OOC")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlphaBG("OOC", v) IceHUD.IceCore:SetAlphaBG("OOC", v)
end, end,
min = 0, min = 0,
@ -229,7 +228,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlphaBG("Target") return IceHUD.IceCore:GetAlphaBG("Target")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlphaBG("Target", v) IceHUD.IceCore:SetAlphaBG("Target", v)
end, end,
min = 0, min = 0,
@ -246,7 +245,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetAlphaBG("NotFull") return IceHUD.IceCore:GetAlphaBG("NotFull")
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetAlphaBG("NotFull", v) IceHUD.IceCore:SetAlphaBG("NotFull", v)
end, end,
min = 0, min = 0,
@ -257,7 +256,6 @@ IceHUD.options =
}, },
headerBarAdvancedBlank = { type = 'header', name = " ", order = 30 },
headerBarAdvanced = { headerBarAdvanced = {
type = 'header', type = 'header',
name = "Other", name = "Other",
@ -271,7 +269,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetBackgroundToggle() return IceHUD.IceCore:GetBackgroundToggle()
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetBackgroundToggle(value) IceHUD.IceCore:SetBackgroundToggle(value)
end, end,
order = 31 order = 31
@ -284,7 +282,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetBackgroundColor() return IceHUD.IceCore:GetBackgroundColor()
end, end,
set = function(r, g, b) set = function(info, r, g, b)
IceHUD.IceCore:SetBackgroundColor(r, g, b) IceHUD.IceCore:SetBackgroundColor(r, g, b)
end, end,
order = 32, order = 32,
@ -294,17 +292,17 @@ IceHUD.options =
textSettings = { textSettings = {
type = 'text', type = 'select',
name = 'Font', name = 'Font',
desc = 'IceHUD Font', desc = 'IceHUD Font',
order = 19, order = 19,
get = function() get = function(info)
return IceHUD.IceCore:GetFontFamily() return IceHUD:GetSelectValue(info, IceHUD.IceCore:GetFontFamily())
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetFontFamily(value) IceHUD.IceCore:SetFontFamily(info.option.values[value])
end, end,
validate = SML:List('font'), values = SML:List('font'),
}, },
barSettings = { barSettings = {
@ -314,21 +312,20 @@ IceHUD.options =
order = 20, order = 20,
args = { args = {
barPresets = { barPresets = {
type = 'text', type = 'select',
name = 'Presets', name = 'Presets',
desc = 'Predefined settings for different bars', desc = 'Predefined settings for different bars',
get = function() get = function(info)
return IceHUD.IceCore:GetBarPreset() return IceHUD:GetSelectValue(info, IceHUD.IceCore:GetBarPreset())
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetBarPreset(value) IceHUD.IceCore:SetBarPreset(info.option.values[value])
end, end,
validate = IceHUD.validBarList, values = IceHUD.validBarList,
order = 9 order = 9
}, },
headerBarAdvancedBlank = { type = 'header', name = " ", order = 10 },
headerBarAdvanced = { headerBarAdvanced = {
type = 'header', type = 'header',
name = "Advanced Bar Settings", name = "Advanced Bar Settings",
@ -336,16 +333,16 @@ IceHUD.options =
}, },
barTexture = { barTexture = {
type = 'text', type = 'select',
name = 'Bar Texture', name = 'Bar Texture',
desc = 'IceHUD Bar Texture', desc = 'IceHUD Bar Texture',
get = function() get = function(info)
return IceHUD.IceCore:GetBarTexture() return IceHUD:GetSelectValue(info, IceHUD.IceCore:GetBarTexture())
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetBarTexture(value) IceHUD.IceCore:SetBarTexture(IceHUD.validBarList[value])
end, end,
validate = IceHUD.validBarList, values = IceHUD.validBarList,
order = 11 order = 11
}, },
@ -356,7 +353,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetBarWidth() return IceHUD.IceCore:GetBarWidth()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetBarWidth(v) IceHUD.IceCore:SetBarWidth(v)
end, end,
min = 20, min = 20,
@ -372,7 +369,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetBarHeight() return IceHUD.IceCore:GetBarHeight()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetBarHeight(v) IceHUD.IceCore:SetBarHeight(v)
end, end,
min = 100, min = 100,
@ -388,7 +385,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetBarProportion() return IceHUD.IceCore:GetBarProportion()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetBarProportion(v) IceHUD.IceCore:SetBarProportion(v)
end, end,
min = 0.01, min = 0.01,
@ -405,7 +402,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetBarSpace() return IceHUD.IceCore:GetBarSpace()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetBarSpace(v) IceHUD.IceCore:SetBarSpace(v)
end, end,
min = -10, min = -10,
@ -415,30 +412,30 @@ IceHUD.options =
}, },
bgBlendMode = { bgBlendMode = {
type = 'text', type = 'select',
name = 'Bar Background Blend Mode', name = 'Bar Background Blend Mode',
desc = 'IceHUD Bar Background Blend mode', desc = 'IceHUD Bar Background Blend mode',
get = function() get = function(info)
return IceHUD.IceCore:GetBarBgBlendMode() return IceHUD.IceCore:GetBarBgBlendMode()
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetBarBgBlendMode(value) IceHUD.IceCore:SetBarBgBlendMode(value)
end, end,
validate = { BLEND = "Blend", ADD = "Additive" }, --"Disable", "Alphakey", "Mod" }, values = { BLEND = "Blend", ADD = "Additive" }, --"Disable", "Alphakey", "Mod" },
order = 16 order = 16
}, },
barBlendMode = { barBlendMode = {
type = 'text', type = 'select',
name = 'Bar Blend Mode', name = 'Bar Blend Mode',
desc = 'IceHUD Bar Blend mode', desc = 'IceHUD Bar Blend mode',
get = function() get = function(info)
return IceHUD.IceCore:GetBarBlendMode() return IceHUD.IceCore:GetBarBlendMode()
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetBarBlendMode(value) IceHUD.IceCore:SetBarBlendMode(value)
end, end,
validate = { BLEND = "Blend", ADD = "Additive" }, --"Disable", "Alphakey", "Mod" }, values = { BLEND = "Blend", ADD = "Additive" }, --"Disable", "Alphakey", "Mod" },
order = 17 order = 17
}, },
} }
@ -461,7 +458,6 @@ IceHUD.options =
order = 42 order = 42
}, },
headerOtherBlank = { type = 'header', name = ' ', order = 90 },
headerOther = { headerOther = {
type = 'header', type = 'header',
name = 'Other', name = 'Other',
@ -475,7 +471,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:IsEnabled() return IceHUD.IceCore:IsEnabled()
end, end,
set = function(value) set = function(info, value)
if (value) then if (value) then
IceHUD.IceCore:Enable() IceHUD.IceCore:Enable()
else else
@ -492,7 +488,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:GetDebug() return IceHUD.IceCore:GetDebug()
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:SetDebug(value) IceHUD.IceCore:SetDebug(value)
end, end,
order = 92 order = 92
@ -507,16 +503,6 @@ IceHUD.options =
end, end,
order = 93 order = 93
}, },
about = {
type = 'execute',
name = 'About',
desc = "Prints info about IceHUD",
func = function()
IceHUD:PrintAddonInfo()
end,
order = 94
},
customBar = { customBar = {
type = 'execute', type = 'execute',
@ -586,7 +572,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:IsInConfigMode() return IceHUD.IceCore:IsInConfigMode()
end, end,
set = function(value) set = function(info, value)
IceHUD.IceCore:ConfigModeToggle(value) IceHUD.IceCore:ConfigModeToggle(value)
end, end,
order = 95 order = 95
@ -599,7 +585,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:ShouldUseDogTags() return IceHUD.IceCore:ShouldUseDogTags()
end, end,
set = function(v) set = function(info, v)
StaticPopupDialogs["ICEHUD_CHANGED_DOGTAG"] = { StaticPopupDialogs["ICEHUD_CHANGED_DOGTAG"] = {
text = "This option requires the UI to be reloaded. Do you wish to reload it now?", text = "This option requires the UI to be reloaded. Do you wish to reload it now?",
button1 = "Yes", button1 = "Yes",
@ -627,7 +613,7 @@ IceHUD.options =
get = function() get = function()
return IceHUD.IceCore:UpdatePeriod() return IceHUD.IceCore:UpdatePeriod()
end, end,
set = function(v) set = function(info, v)
IceHUD.IceCore:SetUpdatePeriod(v) IceHUD.IceCore:SetUpdatePeriod(v)
end, end,
min = 0.01, min = 0.01,
@ -639,22 +625,6 @@ IceHUD.options =
} }
IceHUD.slashMenu =
{
type = 'execute',
func = function()
if waterfall:IsOpen("IceHUD") then
waterfall:Close("IceHUD")
elseif not (UnitAffectingCombat("player")) then
waterfall:Open("IceHUD")
else
DEFAULT_CHAT_FRAME:AddMessage("|cff8888ffIceHUD|r: Combat lockdown restriction." ..
" Leave combat and try again.")
end
end
}
StaticPopupDialogs["ICEHUD_RESET"] = StaticPopupDialogs["ICEHUD_RESET"] =
{ {
text = "Are you sure you want to reset IceHUD settings?", text = "Are you sure you want to reset IceHUD settings?",
@ -731,22 +701,24 @@ function IceHUD:OnInitialize()
self:SetDebugging(false) self:SetDebugging(false)
self:Debug("IceHUD:OnInitialize()") self:Debug("IceHUD:OnInitialize()")
self:RegisterDB("IceCoreDB")
self.IceCore = IceCore:new() self.IceCore = IceCore:new()
self:RegisterDefaults('profile', self.IceCore.defaults) self.db = LibStub("AceDB-3.0"):New("IceCoreDB", self.IceCore.defaults, "Default")
self.db.RegisterCallback(self, "OnProfileShutdown", "PreProfileChanged")
self.db.RegisterCallback(self, "OnProfileChanged", "PostProfileChanged")
self.db.RegisterCallback(self, "OnProfileReset", "ProfileReset")
self.db.RegisterCallback(self, "OnProfileCopied", "ProfileCopied")
self.IceCore.settings = self.db.profile self:NotifyNewDb()
self.IceCore:SetModuleDatabases()
self:GenerateModuleOptions(true) self:GenerateModuleOptions(true)
self.options.args.colors.args = self.IceCore:GetColorOptions() self.options.args.colors.args = self.IceCore:GetColorOptions()
self.options.args.profiles = LibStub("AceDBOptions-3.0"):GetOptionsTable(self.db)
waterfall:Register("IceHUD", 'aceOptions', IceHUD.options) LibStub("AceConfig-3.0"):RegisterOptionsTable("IceHUD", self.options, "/icehudcl")
-- Parnic - added /icehudcl to make rock config pick this up ConfigDialog:SetDefaultSize("IceHUD", 750, 650)
self:RegisterChatCommand({"/icehudcl"}, IceHUD.options) self:RegisterChatCommand("icehud", function() IceHUD:OpenConfig() end)
self:RegisterChatCommand({ "/icehud" }, IceHUD.slashMenu) self:RegisterChatCommand("rl", function() ReloadUI() end)
self:SyncSettingsVersions() self:SyncSettingsVersions()
@ -754,13 +726,23 @@ function IceHUD:OnInitialize()
end end
function IceHUD:NotifyNewDb()
self.IceCore.settings = self.db.profile
self.IceCore:SetModuleDatabases()
end
function IceHUD:GenerateModuleOptions(firstLoad) function IceHUD:GenerateModuleOptions(firstLoad)
self.options.args.modules.args = self.IceCore:GetModuleOptions() self.options.args.modules.args = self.IceCore:GetModuleOptions()
if not firstLoad then if not firstLoad and ACR ~= nil then
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end end
end end
function IceHUD:NotifyOptionsChange()
ACR:NotifyChange("IceHUD")
end
function IceHUD:OnEnable(isFirst) function IceHUD:OnEnable(isFirst)
self:Debug("IceHUD:OnEnable()") self:Debug("IceHUD:OnEnable()")
@ -773,11 +755,6 @@ function IceHUD:OnEnable(isFirst)
end end
end end
function IceHUD:ResetSettings()
self:ResetDB()
ReloadUI()
end
-- add settings changes/updates here so that existing users don't lose their settings -- add settings changes/updates here so that existing users don't lose their settings
function IceHUD:SyncSettingsVersions() function IceHUD:SyncSettingsVersions()
if not self.IceCore.settings.updatedOocNotFull then if not self.IceCore.settings.updatedOocNotFull then
@ -798,7 +775,7 @@ function IceHUD:InitLDB()
icon = "Interface\\Icons\\Spell_Frost_Frost", icon = "Interface\\Icons\\Spell_Frost_Frost",
OnClick = function(_, msg) OnClick = function(_, msg)
if not (UnitAffectingCombat("player")) then if not (UnitAffectingCombat("player")) then
waterfall:Open("IceHUD") IceHUD:OpenConfig()
else else
DEFAULT_CHAT_FRAME:AddMessage("|cff8888ffIceHUD|r: Combat lockdown restriction. Leave combat and try again.") DEFAULT_CHAT_FRAME:AddMessage("|cff8888ffIceHUD|r: Combat lockdown restriction. Leave combat and try again.")
end end
@ -813,13 +790,7 @@ IceHUD.hasIcon = "Interface\\Icons\\Spell_Frost_Frost"
IceHUD.hideWithoutStandby = true IceHUD.hideWithoutStandby = true
IceHUD.independentProfile = true IceHUD.independentProfile = true
function IceHUD.OnClick() function IceHUD.OnClick()
if not waterfall then return end IceHUD:OpenConfig()
if waterfall:IsOpen("IceHUD") then
waterfall:Close("IceHUD")
else
waterfall:Open("IceHUD")
end
end end
-- blizzard interface options -- blizzard interface options
@ -829,10 +800,15 @@ blizOptionsPanel.button = CreateFrame("BUTTON", "IceHUDOpenConfigButton", blizOp
blizOptionsPanel.button:SetText("Open IceHUD configuration") blizOptionsPanel.button:SetText("Open IceHUD configuration")
blizOptionsPanel.button:SetWidth(240) blizOptionsPanel.button:SetWidth(240)
blizOptionsPanel.button:SetHeight(30) blizOptionsPanel.button:SetHeight(30)
blizOptionsPanel.button:SetScript("OnClick", function(self) HideUIPanel(InterfaceOptionsFrame) HideUIPanel(GameMenuFrame) waterfall:Open("IceHUD") end) blizOptionsPanel.button:SetScript("OnClick", function(self) HideUIPanel(InterfaceOptionsFrame) HideUIPanel(GameMenuFrame) IceHUD:OpenConfig() end)
blizOptionsPanel.button:SetPoint('TOPLEFT', blizOptionsPanel, 'TOPLEFT', 20, -20) blizOptionsPanel.button:SetPoint('TOPLEFT', blizOptionsPanel, 'TOPLEFT', 20, -20)
InterfaceOptions_AddCategory(blizOptionsPanel) InterfaceOptions_AddCategory(blizOptionsPanel)
function IceHUD:OpenConfig()
if not ConfigDialog then return end
ConfigDialog:Open("IceHUD")
end
function IceHUD:Debug(msg) function IceHUD:Debug(msg)
if self.debugging then if self.debugging then
self.debugFrame:AddMessage(msg) self.debugFrame:AddMessage(msg)
@ -894,16 +870,22 @@ function IceHUD:OnDisable()
IceHUD.IceCore:Disable() IceHUD.IceCore:Disable()
end end
function IceHUD:OnProfileDisable() function IceHUD:PreProfileChanged(db)
self.IceCore:Disable() self.IceCore:Disable()
end end
function IceHUD:OnProfileEnable(oldName, oldData) function IceHUD:PostProfileChanged(db, newProfile)
self.IceCore.settings = self.db.profile self:NotifyNewDb()
self.IceCore:SetModuleDatabases()
self.IceCore:Enable() self.IceCore:Enable()
end end
function IceHUD:ProfileReset()
ReloadUI()
end
function IceHUD:ProfileCopied()
ReloadUI()
end
function IceHUD:Clamp(value, min, max) function IceHUD:Clamp(value, min, max)
if value < min then if value < min then
value = min value = min
@ -933,3 +915,13 @@ end
function IceHUD:xor(val1, val2) function IceHUD:xor(val1, val2)
return val1 and not val2 or val2 and not val1 return val1 and not val2 or val2 and not val1
end end
function IceHUD:GetSelectValue(info, val)
for k,v in pairs(info.option.values) do
if v == val then
return k
end
end
return 1
end

View File

@ -1,11 +1,11 @@
## Interface: 30300 ## Interface: 30300
## Author: Parnic, originally created by Iceroth ## Author: Parnic, originally created by Iceroth
## Name: IceHUD ## Name: IceHUD
## Title: IceHUD |cff7fff7f -Ace2-|r ## Title: IceHUD |cff7fff7f -Ace2/3-|r
## Notes: Another HUD addon ## Notes: Another HUD addon
## Version: @project-version@ (Revision: @project-revision@) ## Version: @project-version@ (Revision: @project-revision@)
## SavedVariables: IceCoreDB ## SavedVariables: IceCoreDB
## OptionalDeps: Ace2, LibSharedMedia-3.0, Waterfall-1.0, Deformat, DewdropLib, LibDogTag-3.0, LibDogTag-Unit-3.0, FuBarPlugin-2.0, LibDruidMana-1.0, LibRangeCheck-2.0, LibHealComm-4.0 ## OptionalDeps: Ace2, Ace3, LibSharedMedia-3.0, Deformat, LibDogTag-3.0, LibDogTag-Unit-3.0, FuBarPlugin-2.0, LibRangeCheck-2.0, LibHealComm-4.0
## X-Category: HUDs ## X-Category: HUDs
## X-Website: http://www.wowace.com/projects/ice-hud/ ## X-Website: http://www.wowace.com/projects/ice-hud/

View File

@ -77,7 +77,7 @@ function IceUnitBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lowThreshold return self.moduleSettings.lowThreshold
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.lowThreshold = value self.moduleSettings.lowThreshold = value
self:Redraw() self:Redraw()
end, end,
@ -97,7 +97,7 @@ function IceUnitBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lowThresholdFlash return self.moduleSettings.lowThresholdFlash
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lowThresholdFlash = v self.moduleSettings.lowThresholdFlash = v
end, end,
disabled = function() disabled = function()
@ -112,7 +112,7 @@ function IceUnitBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lowThresholdColor return self.moduleSettings.lowThresholdColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.lowThresholdColor = value self.moduleSettings.lowThresholdColor = value
self:Redraw() self:Redraw()
end, end,

View File

@ -4,17 +4,16 @@
<Script file="libs\AceLibrary\AceLibrary.lua"/> <Script file="libs\AceLibrary\AceLibrary.lua"/>
<Script file="libs\CallbackHandler-1.0\CallbackHandler-1.0.lua"/> <Script file="libs\CallbackHandler-1.0\CallbackHandler-1.0.lua"/>
<Script file="libs\AceOO-2.0\AceOO-2.0.lua"/> <Script file="libs\AceOO-2.0\AceOO-2.0.lua"/>
<Script file="libs\AceDB-2.0\AceDB-2.0.lua"/> <Include file="libs\AceDB-3.0\AceDB-3.0.xml"/>
<Include file="libs\AceDBOptions-3.0\AceDBOptions-3.0.xml"/>
<Include file="libs\AceGUI-3.0\AceGUI-3.0.xml"/>
<Include file="libs\AceConfig-3.0\AceConfig-3.0.xml"/>
<Script file="libs\AceEvent-2.0\AceEvent-2.0.lua"/> <Script file="libs\AceEvent-2.0\AceEvent-2.0.lua"/>
<Script file="libs\AceConsole-2.0\AceConsole-2.0.lua"/> <Include file="libs\AceConsole-3.0\AceConsole-3.0.xml"/>
<Script file="libs\AceAddon-2.0\AceAddon-2.0.lua"/> <Include file="libs\AceAddon-3.0\AceAddon-3.0.xml"/>
<Script file="libs\Dewdrop-2.0\Dewdrop-2.0.lua"/>
<Script file="libs\FuBarPlugin-2.0\FuBarPlugin-2.0.lua"/>
<Include file="libs\LibDogTag-3.0\lib.xml"/> <Include file="libs\LibDogTag-3.0\lib.xml"/>
<Include file="libs\LibDogTag-Unit-3.0\lib.xml"/> <Include file="libs\LibDogTag-Unit-3.0\lib.xml"/>
<Script file="libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua"/> <Script file="libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua"/>
<Include file="libs\LibSharedMedia-3.0\lib.xml"/> <Include file="libs\LibSharedMedia-3.0\lib.xml"/>
<Script file="libs\Deformat-2.0\Deformat-2.0.lua"/> <Script file="libs\Deformat-2.0\Deformat-2.0.lua"/>
<Script file="libs\Waterfall-1.0\Waterfall-1.0.lua"/>
</Ui> </Ui>

View File

@ -43,16 +43,16 @@ function CastBar.prototype:GetOptions()
opts["flashInstants"] = opts["flashInstants"] =
{ {
type = 'text', type = 'select',
name = "Flash Instant Spells", name = "Flash Instant Spells",
desc = "Defines when cast bar should flash on instant spells", desc = "Defines when cast bar should flash on instant spells",
get = function() get = function(info)
return self.moduleSettings.flashInstants return IceHUD:GetSelectValue(info, self.moduleSettings.flashInstants)
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.flashInstants = value self.moduleSettings.flashInstants = info.option.values[value]
end, end,
validate = { "Always", "Caster", "Never" }, values = { "Always", "Caster", "Never" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -61,19 +61,19 @@ function CastBar.prototype:GetOptions()
opts["flashFailures"] = opts["flashFailures"] =
{ {
type = "text", type = 'select',
name = "Flash on Spell Failures", name = "Flash on Spell Failures",
desc = "Defines when cast bar should flash on failed spells", desc = "Defines when cast bar should flash on failed spells",
get = function() get = function(info)
return self.moduleSettings.flashFailures return IceHUD:GetSelectValue(info, self.moduleSettings.flashFailures)
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.flashFailures = value self.moduleSettings.flashFailures = info.option.values[value]
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = { "Always", "Caster", "Never" }, values = { "Always", "Caster", "Never" },
order = 41 order = 41
} }
@ -88,7 +88,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lagAlpha return self.moduleSettings.lagAlpha
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.lagAlpha = value self.moduleSettings.lagAlpha = value
self:Redraw() self:Redraw()
end, end,
@ -106,7 +106,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showBlizzCast return self.moduleSettings.showBlizzCast
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showBlizzCast = value self.moduleSettings.showBlizzCast = value
self:ToggleBlizzCast(self.moduleSettings.showBlizzCast) self:ToggleBlizzCast(self.moduleSettings.showBlizzCast)
end, end,
@ -148,7 +148,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bar'] return self.moduleSettings.barVisible['bar']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bar'] = v self.moduleSettings.barVisible['bar'] = v
if v then if v then
self.barFrame:Show() self.barFrame:Show()
@ -169,7 +169,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bg'] return self.moduleSettings.barVisible['bg']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bg'] = v self.moduleSettings.barVisible['bg'] = v
if v then if v then
self.frame.bg:Show() self.frame.bg:Show()
@ -190,7 +190,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.rangeColor return self.moduleSettings.rangeColor
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.rangeColor = v self.moduleSettings.rangeColor = v
end, end,
disabled = function() disabled = function()
@ -216,7 +216,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barFontSize return self.moduleSettings.barFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barFontSize = v self.moduleSettings.barFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -233,7 +233,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lockUpperTextAlpha return self.moduleSettings.lockUpperTextAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lockUpperTextAlpha = v self.moduleSettings.lockUpperTextAlpha = v
self:Redraw() self:Redraw()
end, end,
@ -247,7 +247,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textVisible['upper'] return self.moduleSettings.textVisible['upper']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVisible['upper'] = v self.moduleSettings.textVisible['upper'] = v
self:Redraw() self:Redraw()
end, end,
@ -264,7 +264,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textVerticalOffset return self.moduleSettings.textVerticalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVerticalOffset = v self.moduleSettings.textVerticalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -283,7 +283,7 @@ function CastBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textHorizontalOffset return self.moduleSettings.textHorizontalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textHorizontalOffset = v self.moduleSettings.textHorizontalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -293,17 +293,17 @@ function CastBar.prototype:GetOptions()
}, },
forceJustifyText = { forceJustifyText = {
type = 'text', type = 'select',
name = 'Force Text Justification', name = 'Force Text Justification',
desc = 'This sets the alignment for the text on this bar', desc = 'This sets the alignment for the text on this bar',
get = function() get = function()
return self.moduleSettings.forceJustifyText return self.moduleSettings.forceJustifyText
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.forceJustifyText = value self.moduleSettings.forceJustifyText = value
self:Redraw() self:Redraw()
end, end,
validate = { NONE = "None", LEFT = "Left", RIGHT = "Right" }, values = { NONE = "None", LEFT = "Left", RIGHT = "Right" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,

View File

@ -1,7 +1,6 @@
local AceOO = AceLibrary("AceOO-2.0") local AceOO = AceLibrary("AceOO-2.0")
local ComboPoints = AceOO.Class(IceElement) local ComboPoints = AceOO.Class(IceElement)
local waterfall = AceLibrary("Waterfall-1.0")
ComboPoints.prototype.comboSize = 20 ComboPoints.prototype.comboSize = 20
@ -29,7 +28,7 @@ function ComboPoints.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -49,7 +48,7 @@ function ComboPoints.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -69,7 +68,7 @@ function ComboPoints.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.comboFontSize return self.moduleSettings.comboFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.comboFontSize = v self.moduleSettings.comboFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -83,19 +82,19 @@ function ComboPoints.prototype:GetOptions()
} }
opts["comboMode"] = { opts["comboMode"] = {
type = "text", type = 'select',
name = "Display Mode", name = "Display Mode",
desc = "Show graphical or numeric combo points", desc = "Show graphical or numeric combo points",
get = function() get = function(info)
return self.moduleSettings.comboMode return IceHUD:GetSelectValue(info, self.moduleSettings.comboMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.comboMode = v self.moduleSettings.comboMode = info.option.values[v]
self:CreateComboFrame(true) self:CreateComboFrame(true)
self:Redraw() self:Redraw()
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
validate = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" }, values = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -103,20 +102,20 @@ function ComboPoints.prototype:GetOptions()
} }
opts["graphicalLayout"] = { opts["graphicalLayout"] = {
type = 'text', type = 'select',
name = 'Layout', name = 'Layout',
desc = 'How the graphical combo points should be displayed', desc = 'How the graphical combo points should be displayed',
get = function() get = function(info)
return self.moduleSettings.graphicalLayout return IceHUD:GetSelectValue(info, self.moduleSettings.graphicalLayout)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.graphicalLayout = v self.moduleSettings.graphicalLayout = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or self.moduleSettings.comboMode == "Numeric" return not self.moduleSettings.enabled or self.moduleSettings.comboMode == "Numeric"
end, end,
validate = {"Horizontal", "Vertical"}, values = {"Horizontal", "Vertical"},
order = 33.1 order = 33.1
} }
@ -130,7 +129,7 @@ function ComboPoints.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.comboGap return self.moduleSettings.comboGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.comboGap = v self.moduleSettings.comboGap = v
self:Redraw() self:Redraw()
end, end,
@ -147,7 +146,7 @@ function ComboPoints.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.gradient return self.moduleSettings.gradient
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.gradient = v self.moduleSettings.gradient = v
self:Redraw() self:Redraw()
end, end,

View File

@ -19,7 +19,7 @@ function ComboPointsBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.alwaysDisplay return self.moduleSettings.alwaysDisplay
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.alwaysDisplay = v self.moduleSettings.alwaysDisplay = v
self:UpdateComboPoints() self:UpdateComboPoints()
end, end,

View File

@ -160,13 +160,13 @@ function IceCustomBar.prototype:GetOptions()
} }
opts["name"] = { opts["name"] = {
type = 'text', type = 'input',
name = 'Bar name', name = 'Bar name',
desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.elementName return self.elementName
end, end,
set = function(v) set = function(info, v)
if v~= "" then if v~= "" then
IceHUD.IceCore:RenameDynamicModule(self, v) IceHUD.IceCore:RenameDynamicModule(self, v)
end end
@ -179,20 +179,20 @@ function IceCustomBar.prototype:GetOptions()
} }
opts["unitToTrack"] = { opts["unitToTrack"] = {
type = 'text', type = 'select',
validate = validUnits, values = validUnits,
name = 'Unit to track', name = 'Unit to track',
desc = 'Select which unit that this bar should be looking for buffs/debuffs on', desc = 'Select which unit that this bar should be looking for buffs/debuffs on',
get = function() get = function(info)
return self.moduleSettings.myUnit return IceHUD:GetSelectValue(info, self.moduleSettings.myUnit)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.myUnit = v self.moduleSettings.myUnit = info.option.values[v]
self.unit = v self.unit = info.option.values[v]
self:CheckShouldSubscribe() self:CheckShouldSubscribe()
self:Redraw() self:Redraw()
self:UpdateCustomBar(self.unit) self:UpdateCustomBar(self.unit)
AceLibrary("Waterfall-1.0"):Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
@ -201,15 +201,15 @@ function IceCustomBar.prototype:GetOptions()
} }
opts["buffOrDebuff"] = { opts["buffOrDebuff"] = {
type = 'text', type = 'select',
validate = buffOrDebuff, values = buffOrDebuff,
name = 'Buff or debuff?', name = 'Buff or debuff?',
desc = 'Whether we are tracking a buff or debuff', desc = 'Whether we are tracking a buff or debuff',
get = function() get = function(info)
return self.moduleSettings.buffOrDebuff return IceHUD:GetSelectValue(info, self.moduleSettings.buffOrDebuff)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffOrDebuff = v self.moduleSettings.buffOrDebuff = info.option.values[v]
self:Redraw() self:Redraw()
self:UpdateCustomBar(self.unit) self:UpdateCustomBar(self.unit)
end, end,
@ -220,13 +220,13 @@ function IceCustomBar.prototype:GetOptions()
} }
opts["buffToTrack"] = { opts["buffToTrack"] = {
type = 'text', type = 'input',
name = "Aura to track", name = "Aura to track",
desc = "Which buff/debuff this bar will be tracking.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.", desc = "Which buff/debuff this bar will be tracking.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.",
get = function() get = function()
return self.moduleSettings.buffToTrack return self.moduleSettings.buffToTrack
end, end,
set = function(v) set = function(info, v)
if self.moduleSettings.buffToTrack == self.moduleSettings.upperText then if self.moduleSettings.buffToTrack == self.moduleSettings.upperText then
self.moduleSettings.upperText = v self.moduleSettings.upperText = v
end end
@ -248,7 +248,7 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.exactMatch return self.moduleSettings.exactMatch
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.exactMatch = v self.moduleSettings.exactMatch = v
self:Redraw() self:Redraw()
self:UpdateCustomBar(self.unit) self:UpdateCustomBar(self.unit)
@ -266,7 +266,7 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.trackOnlyMine return self.moduleSettings.trackOnlyMine
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.trackOnlyMine = v self.moduleSettings.trackOnlyMine = v
self:Redraw() self:Redraw()
self:UpdateCustomBar(self.unit) self:UpdateCustomBar(self.unit)
@ -284,7 +284,7 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self:GetBarColor() return self:GetBarColor()
end, end,
set = function(r,g,b) set = function(info, r,g,b)
self.moduleSettings.barColor.r = r self.moduleSettings.barColor.r = r
self.moduleSettings.barColor.g = g self.moduleSettings.barColor.g = g
self.moduleSettings.barColor.b = b self.moduleSettings.barColor.b = b
@ -303,7 +303,7 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.displayWhenEmpty return self.moduleSettings.displayWhenEmpty
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayWhenEmpty = v self.moduleSettings.displayWhenEmpty = v
self:UpdateCustomBar() self:UpdateCustomBar()
end, end,
@ -314,31 +314,31 @@ function IceCustomBar.prototype:GetOptions()
} }
opts["buffTimerDisplay"] = { opts["buffTimerDisplay"] = {
type = 'text', type = 'select',
name = 'Buff timer display', name = 'Buff timer display',
desc = 'How to display the buff timer next to the name of the buff on the bar', desc = 'How to display the buff timer next to the name of the buff on the bar',
get = function() get = function(info)
return self.moduleSettings.buffTimerDisplay return IceHUD:GetSelectValue(info, self.moduleSettings.buffTimerDisplay)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffTimerDisplay = v self.moduleSettings.buffTimerDisplay = info.option.values[v]
self:UpdateCustomBar() self:UpdateCustomBar()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = validBuffTimers, values = validBuffTimers,
order = 21 order = 21
} }
opts["maxDuration"] = { opts["maxDuration"] = {
type = 'text', type = 'input',
name = "Maximum duration", name = "Maximum duration",
desc = "Maximum Duration for the bar (the bar will remained full if it has longer than maximum remaining). Leave 0 for spell duration.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.", desc = "Maximum Duration for the bar (the bar will remained full if it has longer than maximum remaining). Leave 0 for spell duration.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.",
get = function() get = function()
return self.moduleSettings.maxDuration return self.moduleSettings.maxDuration
end, end,
set = function(v) set = function(info, v)
if not v or not tonumber(v) then if not v or not tonumber(v) then
v = 0 v = 0
end end
@ -365,7 +365,7 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.displayAuraIcon return self.moduleSettings.displayAuraIcon
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayAuraIcon = v self.moduleSettings.displayAuraIcon = v
if self.barFrame.icon then if self.barFrame.icon then
if v then if v then
@ -378,7 +378,6 @@ function IceCustomBar.prototype:GetOptions()
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = "<whether or not to display an icon for this bar's tracked spell>",
order = 40.1, order = 40.1,
} }
@ -392,14 +391,13 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconXOffset return self.moduleSettings.auraIconXOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconXOffset = v self.moduleSettings.auraIconXOffset = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's horizontal position>",
order = 40.2, order = 40.2,
} }
@ -413,14 +411,13 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconYOffset return self.moduleSettings.auraIconYOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconYOffset = v self.moduleSettings.auraIconYOffset = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's vertical position>",
order = 40.3, order = 40.3,
} }
@ -434,14 +431,13 @@ function IceCustomBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconScale return self.moduleSettings.auraIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconScale = v self.moduleSettings.auraIconScale = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's size>",
order = 40.4, order = 40.4,
} }

View File

@ -151,13 +151,13 @@ function IceCustomCDBar.prototype:GetOptions()
} }
opts["name"] = { opts["name"] = {
type = 'text', type = 'input',
name = 'Bar name', name = 'Bar name',
desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.elementName return self.elementName
end, end,
set = function(v) set = function(info, v)
if v ~= "" then if v ~= "" then
IceHUD.IceCore:RenameDynamicModule(self, v) IceHUD.IceCore:RenameDynamicModule(self, v)
end end
@ -170,13 +170,13 @@ function IceCustomCDBar.prototype:GetOptions()
} }
opts["cooldownToTrack"] = { opts["cooldownToTrack"] = {
type = 'text', type = 'input',
name = "Spell to track", name = "Spell to track",
desc = "Which spell cooldown this bar will be tracking.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.", desc = "Which spell cooldown this bar will be tracking.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.",
get = function() get = function()
return self.moduleSettings.cooldownToTrack return self.moduleSettings.cooldownToTrack
end, end,
set = function(v) set = function(info, v)
if self.moduleSettings.cooldownToTrack == self.moduleSettings.upperText then if self.moduleSettings.cooldownToTrack == self.moduleSettings.upperText then
self.moduleSettings.upperText = v self.moduleSettings.upperText = v
end end
@ -199,7 +199,7 @@ function IceCustomCDBar.prototype:GetOptions()
get = function() get = function()
return self:GetBarColor() return self:GetBarColor()
end, end,
set = function(r,g,b) set = function(info, r,g,b)
self.moduleSettings.barColor.r = r self.moduleSettings.barColor.r = r
self.moduleSettings.barColor.g = g self.moduleSettings.barColor.g = g
self.moduleSettings.barColor.b = b self.moduleSettings.barColor.b = b
@ -212,49 +212,49 @@ function IceCustomCDBar.prototype:GetOptions()
} }
opts["displayMode"] = { opts["displayMode"] = {
type = 'text', type = 'select',
name = 'Display mode', name = 'Display mode',
desc = 'When to display this bar.', desc = 'When to display this bar.',
get = function() get = function(info)
return self.moduleSettings.displayMode return IceHUD:GetSelectValue(info, self.moduleSettings.displayMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayMode = v self.moduleSettings.displayMode = info.option.values[v]
self:UpdateCustomBar() self:UpdateCustomBar()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = validDisplayModes, values = validDisplayModes,
order = 20.9 order = 20.9
} }
opts["cooldownTimerDisplay"] = { opts["cooldownTimerDisplay"] = {
type = 'text', type = 'select',
name = 'Cooldown timer display', name = 'Cooldown timer display',
desc = 'How to display the buff timer next to the name of the buff on the bar', desc = 'How to display the buff timer next to the name of the buff on the bar',
get = function() get = function(info)
return self.moduleSettings.cooldownTimerDisplay return IceHUD:GetSelectValue(info, self.moduleSettings.cooldownTimerDisplay)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.cooldownTimerDisplay = v self.moduleSettings.cooldownTimerDisplay = info.option.values[v]
self:UpdateCustomBar() self:UpdateCustomBar()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = validBuffTimers, values = validBuffTimers,
order = 21 order = 21
} }
opts["maxDuration"] = { opts["maxDuration"] = {
type = 'text', type = 'input',
name = "Maximum duration", name = "Maximum duration",
desc = "Maximum Duration for the bar (the bar will remained full if it has longer than maximum remaining). Leave 0 for spell duration.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.", desc = "Maximum Duration for the bar (the bar will remained full if it has longer than maximum remaining). Leave 0 for spell duration.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.",
get = function() get = function()
return self.moduleSettings.maxDuration return self.moduleSettings.maxDuration
end, end,
set = function(v) set = function(info, v)
if not v or not tonumber(v) then if not v or not tonumber(v) then
v = 0 v = 0
end end
@ -281,14 +281,13 @@ function IceCustomCDBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.displayAuraIcon return self.moduleSettings.displayAuraIcon
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayAuraIcon = v self.moduleSettings.displayAuraIcon = v
self:UpdateIcon() self:UpdateIcon()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = "<whether or not to display an icon for this bar's tracked spell>",
order = 40.1, order = 40.1,
} }
@ -302,14 +301,13 @@ function IceCustomCDBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconXOffset return self.moduleSettings.auraIconXOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconXOffset = v self.moduleSettings.auraIconXOffset = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's horizontal position>",
order = 40.2, order = 40.2,
} }
@ -323,14 +321,13 @@ function IceCustomCDBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconYOffset return self.moduleSettings.auraIconYOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconYOffset = v self.moduleSettings.auraIconYOffset = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's vertical position>",
order = 40.3, order = 40.3,
} }
@ -344,14 +341,13 @@ function IceCustomCDBar.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.auraIconScale return self.moduleSettings.auraIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraIconScale = v self.moduleSettings.auraIconScale = v
self:PositionIcons() self:PositionIcons()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon return not self.moduleSettings.enabled or not self.moduleSettings.displayAuraIcon
end, end,
usage = "<adjusts the spell icon's size>",
order = 40.4, order = 40.4,
} }

View File

@ -1,7 +1,6 @@
local AceOO = AceLibrary("AceOO-2.0") local AceOO = AceLibrary("AceOO-2.0")
IceCustomCount = AceOO.Class(IceElement) IceCustomCount = AceOO.Class(IceElement)
local waterfall = AceLibrary("Waterfall-1.0")
IceCustomCount.prototype.countSize = 20 IceCustomCount.prototype.countSize = 20
@ -40,13 +39,13 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["name"] = { opts["name"] = {
type = 'text', type = 'input',
name = 'Counter name', name = 'Counter name',
desc = 'The name of this counter (must be unique!). \n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'The name of this counter (must be unique!). \n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.elementName return self.elementName
end, end,
set = function(v) set = function(info, v)
if v ~= "" then if v ~= "" then
IceHUD.IceCore:RenameDynamicModule(self, v) IceHUD.IceCore:RenameDynamicModule(self, v)
end end
@ -59,18 +58,18 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["auraTarget"] = { opts["auraTarget"] = {
type = 'text', type = 'select',
validate = validUnits, values = validUnits,
name = 'Unit to track', name = 'Unit to track',
desc = 'Select which unit that this bar should be looking for buffs/debuffs on', desc = 'Select which unit that this bar should be looking for buffs/debuffs on',
get = function() get = function(info)
return self.moduleSettings.auraTarget return IceHUD:GetSelectValue(info, self.moduleSettings.auraTarget)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraTarget = v self.moduleSettings.auraTarget = info.option.values[v]
self.unit = v self.unit = info.option.values[v]
self:Redraw() self:Redraw()
AceLibrary("Waterfall-1.0"):Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
@ -79,15 +78,15 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["auraType"] = { opts["auraType"] = {
type = 'text', type = 'select',
validate = buffOrDebuff, values = buffOrDebuff,
name = 'Buff or debuff?', name = 'Buff or debuff?',
desc = 'Whether we are tracking a buff or debuff', desc = 'Whether we are tracking a buff or debuff',
get = function() get = function(info)
return self.moduleSettings.auraType return IceHUD:GetSelectValue(info, self.moduleSettings.auraType)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraType = v self.moduleSettings.auraType = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
@ -97,13 +96,13 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["auraName"] = { opts["auraName"] = {
type = 'text', type = 'input',
name = "Aura to track", name = "Aura to track",
desc = "Which buff/debuff this counter will be tracking. \n\nRemember to press ENTER after filling out this box with the name you want or it will not save.", desc = "Which buff/debuff this counter will be tracking. \n\nRemember to press ENTER after filling out this box with the name you want or it will not save.",
get = function() get = function()
return self.moduleSettings.auraName return self.moduleSettings.auraName
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.auraName = v self.moduleSettings.auraName = v
self:Redraw() self:Redraw()
end, end,
@ -121,7 +120,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.onlyMine return self.moduleSettings.onlyMine
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.onlyMine = v self.moduleSettings.onlyMine = v
self:Redraw() self:Redraw()
end, end,
@ -138,7 +137,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self:GetCustomColor() return self:GetCustomColor()
end, end,
set = function(r,g,b) set = function(info, r,g,b)
self.moduleSettings.countColor.r = r self.moduleSettings.countColor.r = r
self.moduleSettings.countColor.g = g self.moduleSettings.countColor.g = g
self.moduleSettings.countColor.b = b self.moduleSettings.countColor.b = b
@ -157,7 +156,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self:GetCustomMinColor() return self:GetCustomMinColor()
end, end,
set = function(r,g,b) set = function(info, r,g,b)
self.moduleSettings.countMinColor.r = r self.moduleSettings.countMinColor.r = r
self.moduleSettings.countMinColor.g = g self.moduleSettings.countMinColor.g = g
self.moduleSettings.countMinColor.b = b self.moduleSettings.countMinColor.b = b
@ -170,13 +169,13 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["maxCount"] = { opts["maxCount"] = {
type = 'text', type = 'input',
name = "Maximum applications", name = "Maximum applications",
desc = "How many total applications of this buff/debuff can be applied. For example, only 5 sunders can ever be on a target, so this would be set to 5 for tracking Sunder.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.", desc = "How many total applications of this buff/debuff can be applied. For example, only 5 sunders can ever be on a target, so this would be set to 5 for tracking Sunder.\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.",
get = function() get = function()
return self.moduleSettings.maxCount return self.moduleSettings.maxCount
end, end,
set = function(v) set = function(info, v)
if not v or not tonumber(v) then if not v or not tonumber(v) then
v = 0 v = 0
end end
@ -203,7 +202,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -223,7 +222,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -243,7 +242,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.countFontSize return self.moduleSettings.countFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.countFontSize = v self.moduleSettings.countFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -257,19 +256,19 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["CustomMode"] = { opts["CustomMode"] = {
type = "text", type = 'select',
name = "Display Mode", name = "Display Mode",
desc = "Show graphical or numeric counts", desc = "Show graphical or numeric counts",
get = function() get = function(info)
return self.moduleSettings.countMode return IceHUD:GetSelectValue(info, self.moduleSettings.countMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.countMode = v self.moduleSettings.countMode = info.option.values[v]
self:CreateCustomFrame(true) self:CreateCustomFrame(true)
self:Redraw() self:Redraw()
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
validate = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" }, values = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -277,20 +276,20 @@ function IceCustomCount.prototype:GetOptions()
} }
opts["graphicalLayout"] = { opts["graphicalLayout"] = {
type = 'text', type = 'select',
name = 'Layout', name = 'Layout',
desc = 'How the graphical counter should be displayed', desc = 'How the graphical counter should be displayed',
get = function() get = function(info)
return self.moduleSettings.graphicalLayout return IceHUD:GetSelectValue(info, self.moduleSettings.graphicalLayout)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.graphicalLayout = v self.moduleSettings.graphicalLayout = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or self.moduleSettings.countMode == "Numeric" return not self.moduleSettings.enabled or self.moduleSettings.countMode == "Numeric"
end, end,
validate = {"Horizontal", "Vertical"}, values = {"Horizontal", "Vertical"},
order = 33.1 order = 33.1
} }
@ -304,7 +303,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.countGap return self.moduleSettings.countGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.countGap = v self.moduleSettings.countGap = v
self:Redraw() self:Redraw()
end, end,
@ -321,7 +320,7 @@ function IceCustomCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.gradient return self.moduleSettings.gradient
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.gradient = v self.moduleSettings.gradient = v
self:Redraw() self:Redraw()
end, end,

View File

@ -54,13 +54,13 @@ function IceCustomHealth.prototype:GetOptions()
} }
opts["name"] = { opts["name"] = {
type = 'text', type = 'input',
name = 'Bar name', name = 'Bar name',
desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.elementName return self.elementName
end, end,
set = function(v) set = function(info, v)
if v~= "" then if v~= "" then
IceHUD.IceCore:RenameDynamicModule(self, v) IceHUD.IceCore:RenameDynamicModule(self, v)
end end
@ -73,13 +73,13 @@ function IceCustomHealth.prototype:GetOptions()
} }
opts["unitToTrack"] = { opts["unitToTrack"] = {
type = 'text', type = 'input',
name = 'Unit to track', name = 'Unit to track',
desc = 'Enter which unit that this bar should be monitoring the health of (e.g.: focustarget, pettarget, etc.)\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'Enter which unit that this bar should be monitoring the health of (e.g.: focustarget, pettarget, etc.)\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.moduleSettings.unitToTrack return self.moduleSettings.unitToTrack
end, end,
set = function(v) set = function(info, v)
v = string.lower(v) v = string.lower(v)
self.moduleSettings.unitToTrack = v self.moduleSettings.unitToTrack = v
self:SetUnit(v) self:SetUnit(v)

View File

@ -55,13 +55,13 @@ function IceCustomMana.prototype:GetOptions()
} }
opts["name"] = { opts["name"] = {
type = 'text', type = 'input',
name = 'Bar name', name = 'Bar name',
desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'The name of this bar (must be unique!).\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.elementName return self.elementName
end, end,
set = function(v) set = function(info, v)
if v~= "" then if v~= "" then
IceHUD.IceCore:RenameDynamicModule(self, v) IceHUD.IceCore:RenameDynamicModule(self, v)
end end
@ -74,13 +74,13 @@ function IceCustomMana.prototype:GetOptions()
} }
opts["unitToTrack"] = { opts["unitToTrack"] = {
type = 'text', type = 'input',
name = 'Unit to track', name = 'Unit to track',
desc = 'Enter which unit that this bar should be monitoring the mana of (e.g.: focustarget, pettarget, etc.)\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.', desc = 'Enter which unit that this bar should be monitoring the mana of (e.g.: focustarget, pettarget, etc.)\n\nRemember to press ENTER after filling out this box with the name you want or it will not save.',
get = function() get = function()
return self.moduleSettings.unitToTrack return self.moduleSettings.unitToTrack
end, end,
set = function(v) set = function(info, v)
v = string.lower(v) v = string.lower(v)
self.moduleSettings.unitToTrack = v self.moduleSettings.unitToTrack = v
self:SetUnit(v) self:SetUnit(v)

View File

@ -95,7 +95,7 @@ function FocusCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bar'] return self.moduleSettings.barVisible['bar']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bar'] = v self.moduleSettings.barVisible['bar'] = v
if v then if v then
self.barFrame:Show() self.barFrame:Show()
@ -116,7 +116,7 @@ function FocusCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bg'] return self.moduleSettings.barVisible['bg']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bg'] = v self.moduleSettings.barVisible['bg'] = v
if v then if v then
self.frame.bg:Show() self.frame.bg:Show()

View File

@ -54,7 +54,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.mobhealth return self.moduleSettings.mobhealth
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.mobhealth = value self.moduleSettings.mobhealth = value
self:Update(self.unit) self:Update(self.unit)
end, end,
@ -71,7 +71,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.classColor return self.moduleSettings.classColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.classColor = value self.moduleSettings.classColor = value
self:Update(self.unit) self:Update(self.unit)
end, end,
@ -88,7 +88,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizz = value self.moduleSettings.hideBlizz = value
if (value) then if (value) then
self:HideBlizz() self:HideBlizz()
@ -109,7 +109,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleHealthColor return self.moduleSettings.scaleHealthColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleHealthColor = value self.moduleSettings.scaleHealthColor = value
self:Redraw() self:Redraw()
end, end,
@ -126,7 +126,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showRaidIcon return self.moduleSettings.showRaidIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showRaidIcon = value self.moduleSettings.showRaidIcon = value
self:UpdateRaidFocusIcon() self:UpdateRaidFocusIcon()
end, end,
@ -143,7 +143,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lockIconAlpha return self.moduleSettings.lockIconAlpha
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.lockIconAlpha = value self.moduleSettings.lockIconAlpha = value
self:Redraw() self:Redraw()
end, end,
@ -160,7 +160,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.raidIconOnTop return self.moduleSettings.raidIconOnTop
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.raidIconOnTop = value self.moduleSettings.raidIconOnTop = value
self:UpdateRaidFocusIcon() self:UpdateRaidFocusIcon()
end, end,
@ -180,7 +180,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.raidIconXOffset return self.moduleSettings.raidIconXOffset
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.raidIconXOffset = value self.moduleSettings.raidIconXOffset = value
self:SetRaidIconPlacement() self:SetRaidIconPlacement()
self:Redraw() self:Redraw()
@ -201,7 +201,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.raidIconYOffset return self.moduleSettings.raidIconYOffset
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.raidIconYOffset = value self.moduleSettings.raidIconYOffset = value
self:SetRaidIconPlacement() self:SetRaidIconPlacement()
self:Redraw() self:Redraw()
@ -219,7 +219,7 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.abbreviateHealth return self.moduleSettings.abbreviateHealth
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.abbreviateHealth = v self.moduleSettings.abbreviateHealth = v
end, end,
disabled = function() disabled = function()
@ -235,14 +235,13 @@ function FocusHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.allowMouseInteraction return self.moduleSettings.allowMouseInteraction
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.allowMouseInteraction = v self.moduleSettings.allowMouseInteraction = v
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = '',
order = 43, order = 43,
} }

View File

@ -108,7 +108,7 @@ function FocusMana.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleManaColor return self.moduleSettings.scaleManaColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleManaColor = value self.moduleSettings.scaleManaColor = value
self:Redraw() self:Redraw()
end, end,

View File

@ -81,7 +81,7 @@ function HungerForBlood.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.allowMouseInteraction return self.moduleSettings.allowMouseInteraction
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.allowMouseInteraction = v self.moduleSettings.allowMouseInteraction = v
self:CreateFrame() self:CreateFrame()
end, end,

View File

@ -1,7 +1,6 @@
local AceOO = AceLibrary("AceOO-2.0") local AceOO = AceLibrary("AceOO-2.0")
local LacerateCount = AceOO.Class(IceElement) local LacerateCount = AceOO.Class(IceElement)
local waterfall = AceLibrary("Waterfall-1.0")
LacerateCount.prototype.lacerateSize = 20 LacerateCount.prototype.lacerateSize = 20
@ -29,7 +28,7 @@ function LacerateCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -49,7 +48,7 @@ function LacerateCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -69,7 +68,7 @@ function LacerateCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lacerateFontSize return self.moduleSettings.lacerateFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lacerateFontSize = v self.moduleSettings.lacerateFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -83,19 +82,19 @@ function LacerateCount.prototype:GetOptions()
} }
opts["lacerateMode"] = { opts["lacerateMode"] = {
type = "text", type = 'select',
name = "Display Mode", name = "Display Mode",
desc = "Show graphical or numeric lacerates", desc = "Show graphical or numeric lacerates",
get = function() get = function(info)
return self.moduleSettings.lacerateMode return IceHUD:GetSelectValue(info, self.moduleSettings.lacerateMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lacerateMode = v self.moduleSettings.lacerateMode = info.option.values[v]
self:CreateLacerateFrame(true) self:CreateLacerateFrame(true)
self:Redraw() self:Redraw()
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
validate = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" }, values = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -112,7 +111,7 @@ function LacerateCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lacerateGap return self.moduleSettings.lacerateGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lacerateGap = v self.moduleSettings.lacerateGap = v
self:Redraw() self:Redraw()
end, end,
@ -129,7 +128,7 @@ function LacerateCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.gradient return self.moduleSettings.gradient
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.gradient = v self.moduleSettings.gradient = v
self:Redraw() self:Redraw()
end, end,

View File

@ -1,7 +1,6 @@
local AceOO = AceLibrary("AceOO-2.0") local AceOO = AceLibrary("AceOO-2.0")
local MaelstromCount = AceOO.Class(IceElement) local MaelstromCount = AceOO.Class(IceElement)
local waterfall = AceLibrary("Waterfall-1.0")
MaelstromCount.prototype.maelstromSize = 20 MaelstromCount.prototype.maelstromSize = 20
@ -29,7 +28,7 @@ function MaelstromCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -49,7 +48,7 @@ function MaelstromCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.maelstromFontSize return self.moduleSettings.maelstromFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.maelstromFontSize = v self.moduleSettings.maelstromFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -63,19 +62,19 @@ function MaelstromCount.prototype:GetOptions()
} }
opts["maelstromMode"] = { opts["maelstromMode"] = {
type = "text", type = 'select',
name = "Display Mode", name = "Display Mode",
desc = "Show graphical or numeric maelstroms", desc = "Show graphical or numeric maelstroms",
get = function() get = function(info)
return self.moduleSettings.maelstromMode return IceHUD:GetSelectValue(info, self.moduleSettings.maelstromMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.maelstromMode = v self.moduleSettings.maelstromMode = info.option.values[v]
self:CreateMaelstromFrame(true) self:CreateMaelstromFrame(true)
self:Redraw() self:Redraw()
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
validate = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" }, values = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -92,7 +91,7 @@ function MaelstromCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.maelstromGap return self.moduleSettings.maelstromGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.maelstromGap = v self.moduleSettings.maelstromGap = v
self:Redraw() self:Redraw()
end, end,
@ -109,7 +108,7 @@ function MaelstromCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.gradient return self.moduleSettings.gradient
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.gradient = v self.moduleSettings.gradient = v
self:Redraw() self:Redraw()
end, end,

View File

@ -198,25 +198,25 @@ function MirrorBarHandler.prototype:GetOptions()
opts["side"] = opts["side"] =
{ {
type = 'text', type = 'select',
name = '|c' .. self.configColor .. 'Side|r', name = '|c' .. self.configColor .. 'Side|r',
desc = 'Side of the HUD where the bar appears', desc = 'Side of the HUD where the bar appears',
get = function() get = function(info)
if (self.moduleSettings.side == IceCore.Side.Right) then if (self.moduleSettings.side == IceCore.Side.Right) then
return "Right" return 2
else else
return "Left" return 1
end end
end, end,
set = function(value) set = function(info, value)
if (value == "Right") then if (value == 2) then
self.moduleSettings.side = IceCore.Side.Right self.moduleSettings.side = IceCore.Side.Right
else else
self.moduleSettings.side = IceCore.Side.Left self.moduleSettings.side = IceCore.Side.Left
end end
self:Redraw() self:Redraw()
end, end,
validate = { "Left", "Right" }, values = { "Left", "Right" },
order = 30 order = 30
} }
@ -231,7 +231,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.offset return self.moduleSettings.offset
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.offset = value self.moduleSettings.offset = value
self:Redraw() self:Redraw()
end, end,
@ -245,7 +245,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bar'] return self.moduleSettings.barVisible['bar']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bar'] = v self.moduleSettings.barVisible['bar'] = v
self:Redraw() self:Redraw()
end, end,
@ -262,7 +262,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bg'] return self.moduleSettings.barVisible['bg']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bg'] = v self.moduleSettings.barVisible['bg'] = v
self:Redraw() self:Redraw()
end, end,
@ -283,7 +283,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVerticalOffset return self.moduleSettings.barVerticalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVerticalOffset = v self.moduleSettings.barVerticalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -307,7 +307,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barFontSize return self.moduleSettings.barFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barFontSize = v self.moduleSettings.barFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -324,7 +324,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barFontBold return self.moduleSettings.barFontBold
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barFontBold = v self.moduleSettings.barFontBold = v
self:Redraw() self:Redraw()
end, end,
@ -338,7 +338,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lockTextAlpha return self.moduleSettings.lockTextAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lockTextAlpha = v self.moduleSettings.lockTextAlpha = v
self:Redraw() self:Redraw()
end, end,
@ -352,7 +352,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textVisible['upper'] return self.moduleSettings.textVisible['upper']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVisible['upper'] = v self.moduleSettings.textVisible['upper'] = v
self:Redraw() self:Redraw()
end, end,
@ -366,7 +366,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textVisible['lower'] return self.moduleSettings.textVisible['lower']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVisible['lower'] = v self.moduleSettings.textVisible['lower'] = v
self:Redraw() self:Redraw()
end, end,
@ -383,7 +383,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textVerticalOffset return self.moduleSettings.textVerticalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textVerticalOffset = v self.moduleSettings.textVerticalOffset = v
self:Redraw() self:Redraw()
end, end,
@ -402,7 +402,7 @@ function MirrorBarHandler.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.textHorizontalOffset return self.moduleSettings.textHorizontalOffset
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.textHorizontalOffset = v self.moduleSettings.textHorizontalOffset = v
self:Redraw() self:Redraw()
end, end,

View File

@ -144,7 +144,7 @@ function PetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleHealthColor return self.moduleSettings.scaleHealthColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleHealthColor = value self.moduleSettings.scaleHealthColor = value
self:Redraw() self:Redraw()
end, end,
@ -161,14 +161,13 @@ function PetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.allowMouseInteraction return self.moduleSettings.allowMouseInteraction
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.allowMouseInteraction = v self.moduleSettings.allowMouseInteraction = v
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = '',
order = 42, order = 42,
} }

View File

@ -199,7 +199,7 @@ function PetMana.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleManaColor return self.moduleSettings.scaleManaColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleManaColor = value self.moduleSettings.scaleManaColor = value
self:Redraw() self:Redraw()
end, end,

View File

@ -147,7 +147,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.classColor return self.moduleSettings.classColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.classColor = value self.moduleSettings.classColor = value
self:Update(self.unit) self:Update(self.unit)
end, end,
@ -164,7 +164,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizz = value self.moduleSettings.hideBlizz = value
if (value) then if (value) then
self:HideBlizz() self:HideBlizz()
@ -185,7 +185,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizzParty return self.moduleSettings.hideBlizzParty
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizzParty = value self.moduleSettings.hideBlizzParty = value
if (value) then if (value) then
self:HideBlizzardParty() self:HideBlizzardParty()
@ -206,7 +206,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleHealthColor return self.moduleSettings.scaleHealthColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleHealthColor = value self.moduleSettings.scaleHealthColor = value
self:Redraw() self:Redraw()
end, end,
@ -223,14 +223,13 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.allowMouseInteraction return self.moduleSettings.allowMouseInteraction
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.allowMouseInteraction = v self.moduleSettings.allowMouseInteraction = v
self:CreateBackground(true) self:CreateBackground(true)
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
usage = '',
order = 43 order = 43
} }
@ -241,14 +240,13 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.allowMouseInteractionCombat return self.moduleSettings.allowMouseInteractionCombat
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.allowMouseInteractionCombat = v self.moduleSettings.allowMouseInteractionCombat = v
self:CreateBackground(true) self:CreateBackground(true)
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.allowMouseInteraction return not self.moduleSettings.enabled or not self.moduleSettings.allowMouseInteraction
end, end,
usage = '',
order = 43.5 order = 43.5
} }
@ -260,7 +258,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showIncomingHeals return self.moduleSettings.showIncomingHeals
end, end,
set = function(v) set = function(info, v)
if not v then if not v then
self.healFrame.bar:Hide() self.healFrame.bar:Hide()
else else
@ -275,7 +273,6 @@ function PlayerHealth.prototype:GetOptions()
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not HealComm return not self.moduleSettings.enabled or not HealComm
end, end,
usage = '',
order = 43.6 order = 43.6
} }
@ -290,7 +287,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.healAlpha * 100 return self.moduleSettings.healAlpha * 100
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.healAlpha = v / 100.0 self.moduleSettings.healAlpha = v / 100.0
self:Redraw() self:Redraw()
end, end,
@ -316,7 +313,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return configMode return configMode
end, end,
set = function(v) set = function(info, v)
configMode = v configMode = v
self:EnteringWorld() self:EnteringWorld()
end, end,
@ -330,7 +327,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lockIconAlpha return self.moduleSettings.lockIconAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lockIconAlpha = v self.moduleSettings.lockIconAlpha = v
self:Redraw() self:Redraw()
end, end,
@ -349,7 +346,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showStatusIcon return self.moduleSettings.showStatusIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showStatusIcon = value self.moduleSettings.showStatusIcon = value
self:Resting() self:Resting()
self:CheckCombat() self:CheckCombat()
@ -366,7 +363,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showStatusCombat return self.moduleSettings.showStatusCombat
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showStatusCombat = value self.moduleSettings.showStatusCombat = value
self:Resting() self:Resting()
self:CheckCombat() self:CheckCombat()
@ -383,7 +380,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showStatusResting return self.moduleSettings.showStatusResting
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showStatusResting = value self.moduleSettings.showStatusResting = value
self:Resting() self:Resting()
self:CheckCombat() self:CheckCombat()
@ -403,7 +400,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.statusIconOffset['x'] return self.moduleSettings.statusIconOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.statusIconOffset['x'] = v self.moduleSettings.statusIconOffset['x'] = v
self:SetTexLoc(self.frame.statusIcon, self.moduleSettings.statusIconOffset['x'], self.moduleSettings.statusIconOffset['y']) self:SetTexLoc(self.frame.statusIcon, self.moduleSettings.statusIconOffset['x'], self.moduleSettings.statusIconOffset['y'])
end, end,
@ -422,7 +419,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.statusIconOffset['y'] return self.moduleSettings.statusIconOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.statusIconOffset['y'] = v self.moduleSettings.statusIconOffset['y'] = v
self:SetTexLoc(self.frame.statusIcon, self.moduleSettings.statusIconOffset['x'], self.moduleSettings.statusIconOffset['y']) self:SetTexLoc(self.frame.statusIcon, self.moduleSettings.statusIconOffset['x'], self.moduleSettings.statusIconOffset['y'])
end, end,
@ -441,7 +438,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.statusIconScale return self.moduleSettings.statusIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.statusIconScale = v self.moduleSettings.statusIconScale = v
self:SetTexScale(self.frame.statusIcon, 20, 20, v) self:SetTexScale(self.frame.statusIcon, 20, 20, v)
end, end,
@ -463,7 +460,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showLeaderIcon return self.moduleSettings.showLeaderIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showLeaderIcon = value self.moduleSettings.showLeaderIcon = value
self:CheckLeader() self:CheckLeader()
end, end,
@ -482,7 +479,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.leaderIconOffset['x'] return self.moduleSettings.leaderIconOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.leaderIconOffset['x'] = v self.moduleSettings.leaderIconOffset['x'] = v
self:SetTexLoc(self.frame.leaderIcon, self.moduleSettings.leaderIconOffset['x'], self.moduleSettings.leaderIconOffset['y']) self:SetTexLoc(self.frame.leaderIcon, self.moduleSettings.leaderIconOffset['x'], self.moduleSettings.leaderIconOffset['y'])
end, end,
@ -501,7 +498,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.leaderIconOffset['y'] return self.moduleSettings.leaderIconOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.leaderIconOffset['y'] = v self.moduleSettings.leaderIconOffset['y'] = v
self:SetTexLoc(self.frame.leaderIcon, self.moduleSettings.leaderIconOffset['x'], self.moduleSettings.leaderIconOffset['y']) self:SetTexLoc(self.frame.leaderIcon, self.moduleSettings.leaderIconOffset['x'], self.moduleSettings.leaderIconOffset['y'])
end, end,
@ -520,7 +517,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.leaderIconScale return self.moduleSettings.leaderIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.leaderIconScale = v self.moduleSettings.leaderIconScale = v
self:SetTexScale(self.frame.leaderIcon, 20, 20, v) self:SetTexScale(self.frame.leaderIcon, 20, 20, v)
end, end,
@ -542,7 +539,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showLootMasterIcon return self.moduleSettings.showLootMasterIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showLootMasterIcon = value self.moduleSettings.showLootMasterIcon = value
self:CheckLootMaster() self:CheckLootMaster()
end, end,
@ -561,7 +558,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lootMasterIconOffset['x'] return self.moduleSettings.lootMasterIconOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lootMasterIconOffset['x'] = v self.moduleSettings.lootMasterIconOffset['x'] = v
self:SetTexLoc(self.frame.lootMasterIcon, self.moduleSettings.lootMasterIconOffset['x'], self.moduleSettings.lootMasterIconOffset['y']) self:SetTexLoc(self.frame.lootMasterIcon, self.moduleSettings.lootMasterIconOffset['x'], self.moduleSettings.lootMasterIconOffset['y'])
end, end,
@ -580,7 +577,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lootMasterIconOffset['y'] return self.moduleSettings.lootMasterIconOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lootMasterIconOffset['y'] = v self.moduleSettings.lootMasterIconOffset['y'] = v
self:SetTexLoc(self.frame.lootMasterIcon, self.moduleSettings.lootMasterIconOffset['x'], self.moduleSettings.lootMasterIconOffset['y']) self:SetTexLoc(self.frame.lootMasterIcon, self.moduleSettings.lootMasterIconOffset['x'], self.moduleSettings.lootMasterIconOffset['y'])
end, end,
@ -599,7 +596,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.lootMasterIconScale return self.moduleSettings.lootMasterIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lootMasterIconScale = v self.moduleSettings.lootMasterIconScale = v
self:SetTexScale(self.frame.lootMasterIcon, 20, 20, v) self:SetTexScale(self.frame.lootMasterIcon, 20, 20, v)
end, end,
@ -621,7 +618,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showPvPIcon return self.moduleSettings.showPvPIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showPvPIcon = value self.moduleSettings.showPvPIcon = value
self:CheckPvP() self:CheckPvP()
end, end,
@ -640,7 +637,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.PvPIconOffset['x'] return self.moduleSettings.PvPIconOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PvPIconOffset['x'] = v self.moduleSettings.PvPIconOffset['x'] = v
self:SetTexLoc(self.frame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y']) self:SetTexLoc(self.frame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y'])
end, end,
@ -659,7 +656,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.PvPIconOffset['y'] return self.moduleSettings.PvPIconOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PvPIconOffset['y'] = v self.moduleSettings.PvPIconOffset['y'] = v
self:SetTexLoc(self.frame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y']) self:SetTexLoc(self.frame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y'])
end, end,
@ -678,7 +675,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.PvPIconScale return self.moduleSettings.PvPIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PvPIconScale = v self.moduleSettings.PvPIconScale = v
self:SetTexScale(self.frame.PvPIcon, 20, 20, v) self:SetTexScale(self.frame.PvPIcon, 20, 20, v)
end, end,
@ -699,7 +696,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showPartyRoleIcon return self.moduleSettings.showPartyRoleIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showPartyRoleIcon = value self.moduleSettings.showPartyRoleIcon = value
self:CheckPartyRole() self:CheckPartyRole()
end, end,
@ -718,7 +715,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.PartyRoleIconOffset['x'] return self.moduleSettings.PartyRoleIconOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PartyRoleIconOffset['x'] = v self.moduleSettings.PartyRoleIconOffset['x'] = v
self:SetTexLoc(self.frame.PartyRoleIcon, self.moduleSettings.PartyRoleIconOffset['x'], self.moduleSettings.PartyRoleIconOffset['y']) self:SetTexLoc(self.frame.PartyRoleIcon, self.moduleSettings.PartyRoleIconOffset['x'], self.moduleSettings.PartyRoleIconOffset['y'])
end, end,
@ -737,7 +734,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.PartyRoleIconOffset['y'] return self.moduleSettings.PartyRoleIconOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PartyRoleIconOffset['y'] = v self.moduleSettings.PartyRoleIconOffset['y'] = v
self:SetTexLoc(self.frame.PartyRoleIcon, self.moduleSettings.PartyRoleIconOffset['x'], self.moduleSettings.PartyRoleIconOffset['y']) self:SetTexLoc(self.frame.PartyRoleIcon, self.moduleSettings.PartyRoleIconOffset['x'], self.moduleSettings.PartyRoleIconOffset['y'])
end, end,
@ -756,7 +753,7 @@ function PlayerHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.PartyRoleIconScale return self.moduleSettings.PartyRoleIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PartyRoleIconScale = v self.moduleSettings.PartyRoleIconScale = v
self:SetTexScale(self.frame.PartyRoleIcon, 20, 20, v) self:SetTexScale(self.frame.PartyRoleIcon, 20, 20, v)
end, end,

View File

@ -33,7 +33,7 @@ function PlayerInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizz = value self.moduleSettings.hideBlizz = value
if (value) then if (value) then
self:HideBlizz() self:HideBlizz()

View File

@ -44,7 +44,7 @@ if self:ShouldUseTicker() then
get = function() get = function()
return self.moduleSettings.tickerEnabled return self.moduleSettings.tickerEnabled
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.tickerEnabled = value self.moduleSettings.tickerEnabled = value
self:ManaType(self.unit) self:ManaType(self.unit)
end, end,
@ -65,7 +65,7 @@ if self:ShouldUseTicker() then
get = function() get = function()
return self.moduleSettings.tickerAlpha return self.moduleSettings.tickerAlpha
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.tickerAlpha = value self.moduleSettings.tickerAlpha = value
self.tickerFrame.spark:SetVertexColor(self:GetColor("PlayerEnergy", self.moduleSettings.tickerAlpha)) self.tickerFrame.spark:SetVertexColor(self:GetColor("PlayerEnergy", self.moduleSettings.tickerAlpha))
end, end,
@ -82,7 +82,7 @@ end
get = function() get = function()
return self.moduleSettings.scaleManaColor return self.moduleSettings.scaleManaColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleManaColor = value self.moduleSettings.scaleManaColor = value
self:Redraw() self:Redraw()
end, end,

View File

@ -58,7 +58,7 @@ function RangeCheck.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -78,7 +78,7 @@ function RangeCheck.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -92,13 +92,13 @@ function RangeCheck.prototype:GetOptions()
} }
opts["rangeString"] = { opts["rangeString"] = {
type = 'text', type = 'input',
name = 'Range string', name = 'Range string',
desc = 'DogTag-formatted string to use for the range display (only available if LibDogTag is being used)\n\nType /dogtag for a list of available tags', desc = 'DogTag-formatted string to use for the range display (only available if LibDogTag is being used)\n\nType /dogtag for a list of available tags',
get = function() get = function()
return self.moduleSettings.rangeString return self.moduleSettings.rangeString
end, end,
set = function(v) set = function(info, v)
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
self.moduleSettings.rangeString = v self.moduleSettings.rangeString = v
self:RegisterFontStrings() self:RegisterFontStrings()
@ -171,4 +171,4 @@ function RangeCheck.prototype:UpdateRange()
end end
end end
IceHUD.RangeCheck = RangeCheck:new() IceHUD.RangeCheck = RangeCheck:new()

View File

@ -48,7 +48,7 @@ function Runes.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -68,7 +68,7 @@ function Runes.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -88,7 +88,7 @@ function Runes.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizz = value self.moduleSettings.hideBlizz = value
if (value) then if (value) then
self:HideBlizz() self:HideBlizz()
@ -103,17 +103,17 @@ function Runes.prototype:GetOptions()
} }
opts["displayMode"] = { opts["displayMode"] = {
type = 'text', type = 'select',
name = 'Rune orientation', name = 'Rune orientation',
desc = 'Whether the runes should draw side-by-side or on top of one another', desc = 'Whether the runes should draw side-by-side or on top of one another',
get = function() get = function(info)
return self.moduleSettings.displayMode return IceHUD:GetSelectValue(info, self.moduleSettings.displayMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayMode = v self.moduleSettings.displayMode = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
validate = { "Horizontal", "Vertical" }, values = { "Horizontal", "Vertical" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -121,62 +121,23 @@ function Runes.prototype:GetOptions()
} }
opts["cooldownMode"] = { opts["cooldownMode"] = {
type = 'text', type = 'select',
name = 'Rune cooldown mode', name = 'Rune cooldown mode',
desc = 'Choose whether the runes use a cooldown-style wipe, simply an alpha fade to show availability or both.', desc = 'Choose whether the runes use a cooldown-style wipe, simply an alpha fade to show availability or both.',
get = function() get = function(info)
return self.moduleSettings.cooldownMode return IceHUD:GetSelectValue(info, self.moduleSettings.cooldownMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.cooldownMode = v self.moduleSettings.cooldownMode = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
validate = { "Cooldown", "Alpha", "Both" }, values = { "Cooldown", "Alpha", "Both" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
order = 36 order = 36
} }
-- todo: numeric mode isn't supported just yet...so these options are removed for now
--[[
opts["runeFontSize"] = {
type = "range",
name = "Runes Font Size",
desc = "Runes Font Size",
get = function()
return self.moduleSettings.runeFontSize
end,
set = function(v)
self.moduleSettings.runeFontSize = v
self:Redraw()
end,
min = 10,
max = 40,
step = 1,
disabled = function()
return not self.moduleSettings.enabled
end,
order = 33
}
opts["runeMode"] = {
type = "text",
name = "Display Mode",
desc = "Show graphical or numeric runes",
get = function()
return self.moduleSettings.runeMode
end,
set = function(v)
self.moduleSettings.runeMode = v
self:Redraw()
end,
validate = { "Numeric", "Graphical" },
disabled = function()
return not self.moduleSettings.enabled
end,
order = 34
}
]]--
opts["runeGap"] = { opts["runeGap"] = {
type = 'range', type = 'range',
name = 'Rune gap', name = 'Rune gap',
@ -187,7 +148,7 @@ function Runes.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.runeGap return self.moduleSettings.runeGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.runeGap = v self.moduleSettings.runeGap = v
self:Redraw() self:Redraw()
end, end,
@ -457,4 +418,4 @@ end
local _, unitClass = UnitClass("player") local _, unitClass = UnitClass("player")
if (unitClass == "DEATHKNIGHT") then if (unitClass == "DEATHKNIGHT") then
IceHUD.Runes = Runes:new() IceHUD.Runes = Runes:new()
end end

View File

@ -105,7 +105,7 @@ function SliceAndDice.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showAsPercentOfMax return self.moduleSettings.showAsPercentOfMax
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.showAsPercentOfMax = v self.moduleSettings.showAsPercentOfMax = v
end, end,
disabled = function() disabled = function()
@ -124,7 +124,7 @@ function SliceAndDice.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.durationAlpha * 100 return self.moduleSettings.durationAlpha * 100
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.durationAlpha = v / 100.0 self.moduleSettings.durationAlpha = v / 100.0
self:Redraw() self:Redraw()
end, end,

View File

@ -1,7 +1,6 @@
local AceOO = AceLibrary("AceOO-2.0") local AceOO = AceLibrary("AceOO-2.0")
local SunderCount = AceOO.Class(IceElement) local SunderCount = AceOO.Class(IceElement)
local waterfall = AceLibrary("Waterfall-1.0")
SunderCount.prototype.sunderSize = 20 SunderCount.prototype.sunderSize = 20
@ -29,7 +28,7 @@ function SunderCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -49,7 +48,7 @@ function SunderCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.sunderFontSize return self.moduleSettings.sunderFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.sunderFontSize = v self.moduleSettings.sunderFontSize = v
self:Redraw() self:Redraw()
end, end,
@ -63,19 +62,19 @@ function SunderCount.prototype:GetOptions()
} }
opts["sunderMode"] = { opts["sunderMode"] = {
type = "text", type = 'select',
name = "Display Mode", name = "Display Mode",
desc = "Show graphical or numeric sunders", desc = "Show graphical or numeric sunders",
get = function() get = function(info)
return self.moduleSettings.sunderMode return IceHUD:GetSelectValue(info, self.moduleSettings.sunderMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.sunderMode = v self.moduleSettings.sunderMode = info.option.values[v]
self:CreateSunderFrame(true) self:CreateSunderFrame(true)
self:Redraw() self:Redraw()
waterfall:Refresh("IceHUD") IceHUD:NotifyOptionsChange()
end, end,
validate = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" }, values = { "Numeric", "Graphical Bar", "Graphical Circle", "Graphical Glow", "Graphical Clean Circle" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -92,7 +91,7 @@ function SunderCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.sunderGap return self.moduleSettings.sunderGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.sunderGap = v self.moduleSettings.sunderGap = v
self:Redraw() self:Redraw()
end, end,
@ -109,7 +108,7 @@ function SunderCount.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.gradient return self.moduleSettings.gradient
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.gradient = v self.moduleSettings.gradient = v
self:Redraw() self:Redraw()
end, end,

View File

@ -280,7 +280,7 @@ function TargetCC.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.alertParty return self.moduleSettings.alertParty
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.alertParty = v self.moduleSettings.alertParty = v
end, end,
disabled = function() disabled = function()
@ -295,7 +295,7 @@ function TargetCC.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.onlyShowForMyDebuffs return self.moduleSettings.onlyShowForMyDebuffs
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.onlyShowForMyDebuffs = v self.moduleSettings.onlyShowForMyDebuffs = v
end, end,
disabled = function() disabled = function()

View File

@ -120,7 +120,7 @@ function TargetCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bar'] return self.moduleSettings.barVisible['bar']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bar'] = v self.moduleSettings.barVisible['bar'] = v
if v then if v then
self.barFrame:Show() self.barFrame:Show()
@ -141,7 +141,7 @@ function TargetCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bg'] return self.moduleSettings.barVisible['bg']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bg'] = v self.moduleSettings.barVisible['bg'] = v
if v then if v then
self.frame.bg:Show() self.frame.bg:Show()
@ -162,7 +162,7 @@ function TargetCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.displayNonInterruptible return self.moduleSettings.displayNonInterruptible
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayNonInterruptible = v self.moduleSettings.displayNonInterruptible = v
self:Redraw() self:Redraw()
end, end,

View File

@ -76,7 +76,7 @@ function IceTargetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.classColor return self.moduleSettings.classColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.classColor = value self.moduleSettings.classColor = value
self:Update(self.unit) self:Update(self.unit)
end, end,
@ -93,7 +93,7 @@ function IceTargetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.npcHostilityColor return self.moduleSettings.npcHostilityColor
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.npcHostilityColor = v self.moduleSettings.npcHostilityColor = v
self:Redraw() self:Redraw()
end, end,
@ -110,7 +110,7 @@ function IceTargetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizz = value self.moduleSettings.hideBlizz = value
if (value) then if (value) then
self:HideBlizz() self:HideBlizz()
@ -131,14 +131,13 @@ function IceTargetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.allowMouseInteraction return self.moduleSettings.allowMouseInteraction
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.allowMouseInteraction = v self.moduleSettings.allowMouseInteraction = v
self:CreateBackground(true) self:CreateBackground(true)
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.DisplayClickTargetOption return not self.moduleSettings.enabled or not self.DisplayClickTargetOption
end, end,
usage = '',
order = 43 order = 43
} }
@ -149,7 +148,7 @@ function IceTargetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleHealthColor return self.moduleSettings.scaleHealthColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleHealthColor = value self.moduleSettings.scaleHealthColor = value
self:Redraw() self:Redraw()
end, end,
@ -167,7 +166,7 @@ if not IceHUD.IceCore:ShouldUseDogTags() then
get = function() get = function()
return self.moduleSettings.abbreviateHealth return self.moduleSettings.abbreviateHealth
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.abbreviateHealth = v self.moduleSettings.abbreviateHealth = v
end, end,
disabled = function() disabled = function()
@ -193,7 +192,7 @@ end
get = function() get = function()
return configMode return configMode
end, end,
set = function(v) set = function(info, v)
configMode = v configMode = v
self:CheckPvP() self:CheckPvP()
self:UpdateRaidTargetIcon() self:UpdateRaidTargetIcon()
@ -209,7 +208,7 @@ end
get = function() get = function()
return self.moduleSettings.lockIconAlpha return self.moduleSettings.lockIconAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.lockIconAlpha = v self.moduleSettings.lockIconAlpha = v
self:Redraw() self:Redraw()
end, end,
@ -229,7 +228,7 @@ end
get = function() get = function()
return self.moduleSettings.showPvPIcon return self.moduleSettings.showPvPIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showPvPIcon = value self.moduleSettings.showPvPIcon = value
self:CheckPvP() self:CheckPvP()
end, end,
@ -245,7 +244,7 @@ end
get = function() get = function()
return self.moduleSettings.PvPIconOnTop return self.moduleSettings.PvPIconOnTop
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.PvPIconOnTop = value self.moduleSettings.PvPIconOnTop = value
self:CheckPvP() self:CheckPvP()
end, end,
@ -264,7 +263,7 @@ end
get = function() get = function()
return self.moduleSettings.PvPIconOffset['x'] return self.moduleSettings.PvPIconOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PvPIconOffset['x'] = v self.moduleSettings.PvPIconOffset['x'] = v
self:SetTexLoc(self.barFrame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y']) self:SetTexLoc(self.barFrame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y'])
end, end,
@ -283,7 +282,7 @@ end
get = function() get = function()
return self.moduleSettings.PvPIconOffset['y'] return self.moduleSettings.PvPIconOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PvPIconOffset['y'] = v self.moduleSettings.PvPIconOffset['y'] = v
self:SetTexLoc(self.barFrame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y']) self:SetTexLoc(self.barFrame.PvPIcon, self.moduleSettings.PvPIconOffset['x'], self.moduleSettings.PvPIconOffset['y'])
end, end,
@ -302,7 +301,7 @@ end
get = function() get = function()
return self.moduleSettings.PvPIconScale return self.moduleSettings.PvPIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.PvPIconScale = v self.moduleSettings.PvPIconScale = v
self:SetTexScale(self.barFrame.PvPIcon, 20, 20, v) self:SetTexScale(self.barFrame.PvPIcon, 20, 20, v)
end, end,
@ -325,7 +324,7 @@ end
get = function() get = function()
return self.moduleSettings.showRaidIcon return self.moduleSettings.showRaidIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showRaidIcon = value self.moduleSettings.showRaidIcon = value
self:UpdateRaidTargetIcon() self:UpdateRaidTargetIcon()
end, end,
@ -342,7 +341,7 @@ end
get = function() get = function()
return self.moduleSettings.raidIconOnTop return self.moduleSettings.raidIconOnTop
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.raidIconOnTop = value self.moduleSettings.raidIconOnTop = value
self:UpdateRaidTargetIcon() self:UpdateRaidTargetIcon()
end, end,
@ -362,7 +361,7 @@ end
get = function() get = function()
return self.moduleSettings.raidIconXOffset return self.moduleSettings.raidIconXOffset
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.raidIconXOffset = value self.moduleSettings.raidIconXOffset = value
self:SetRaidIconPlacement() self:SetRaidIconPlacement()
self:Redraw() self:Redraw()
@ -383,7 +382,7 @@ end
get = function() get = function()
return self.moduleSettings.raidIconYOffset return self.moduleSettings.raidIconYOffset
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.raidIconYOffset = value self.moduleSettings.raidIconYOffset = value
self:SetRaidIconPlacement() self:SetRaidIconPlacement()
self:Redraw() self:Redraw()
@ -404,7 +403,7 @@ end
get = function() get = function()
return self.moduleSettings.raidIconScale return self.moduleSettings.raidIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.raidIconScale = v self.moduleSettings.raidIconScale = v
self:SetTexScale(self.frame.raidIcon, self.raidIconWidth, self.raidIconHeight, v) self:SetTexScale(self.frame.raidIcon, self.raidIconWidth, self.raidIconHeight, v)
end, end,
@ -427,7 +426,7 @@ end
get = function() get = function()
return self.moduleSettings.showClassificationIcon return self.moduleSettings.showClassificationIcon
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showClassificationIcon = value self.moduleSettings.showClassificationIcon = value
self:Redraw() self:Redraw()
end, end,
@ -444,7 +443,7 @@ end
get = function() get = function()
return self.moduleSettings.classIconOnTop return self.moduleSettings.classIconOnTop
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.classIconOnTop = value self.moduleSettings.classIconOnTop = value
self:Redraw() self:Redraw()
end, end,
@ -464,7 +463,7 @@ end
get = function() get = function()
return self.moduleSettings.classIconOffset['x'] return self.moduleSettings.classIconOffset['x']
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.classIconOffset['x'] = value self.moduleSettings.classIconOffset['x'] = value
self:Redraw() self:Redraw()
end, end,
@ -484,7 +483,7 @@ end
get = function() get = function()
return self.moduleSettings.classIconOffset['y'] return self.moduleSettings.classIconOffset['y']
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.classIconOffset['y'] = value self.moduleSettings.classIconOffset['y'] = value
self:Redraw() self:Redraw()
end, end,
@ -504,7 +503,7 @@ end
get = function() get = function()
return self.moduleSettings.classIconScale return self.moduleSettings.classIconScale
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.classIconScale = v self.moduleSettings.classIconScale = v
self:SetTexScale(self.barFrame.classIcon, self.texWidth, self.texHeight, self.moduleSettings.scale / 3.0 * self.moduleSettings.classIconScale) self:SetTexScale(self.barFrame.classIcon, self.texWidth, self.texHeight, self.moduleSettings.scale / 3.0 * self.moduleSettings.classIconScale)
end, end,

View File

@ -118,7 +118,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -138,7 +138,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -158,7 +158,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.fontSize return self.moduleSettings.fontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.fontSize = v self.moduleSettings.fontSize = v
self:Redraw() self:Redraw()
end, end,
@ -178,7 +178,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.stackFontSize return self.moduleSettings.stackFontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.stackFontSize = v self.moduleSettings.stackFontSize = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -198,7 +198,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.zoom return self.moduleSettings.zoom
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.zoom = v self.moduleSettings.zoom = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -225,7 +225,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.buffSize return self.moduleSettings.buffSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffSize = v self.moduleSettings.buffSize = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -245,7 +245,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.ownBuffSize return self.moduleSettings.ownBuffSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.ownBuffSize = v self.moduleSettings.ownBuffSize = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -265,7 +265,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showBuffs return self.moduleSettings.showBuffs
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.showBuffs = v self.moduleSettings.showBuffs = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -276,20 +276,20 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["filterBuffs"] = { opts["filterBuffs"] = {
type = 'text', type = 'select',
name = 'Only show buffs by me', name = 'Only show buffs by me',
desc = 'Will only show buffs that you cast instead of all buffs active', desc = 'Will only show buffs that you cast instead of all buffs active',
get = function() get = function(info)
return self.moduleSettings.filterBuffs return IceHUD:GetSelectValue(info, self.moduleSettings.filterBuffs)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.filterBuffs = v self.moduleSettings.filterBuffs = info.option.values[v]
self:RedrawBuffs() self:RedrawBuffs()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.showBuffs return not self.moduleSettings.enabled or not self.moduleSettings.showBuffs
end, end,
validate = { "Never", "In Combat", "Always" }, values = { "Never", "In Combat", "Always" },
order = 36.1 order = 36.1
} }
@ -300,7 +300,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showDebuffs return self.moduleSettings.showDebuffs
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.showDebuffs = v self.moduleSettings.showDebuffs = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -311,20 +311,20 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["filterDebuffs"] = { opts["filterDebuffs"] = {
type = 'text', type = 'select',
name = 'Only show debuffs by me', name = 'Only show debuffs by me',
desc = 'Will only show debuffs that you cast instead of all debuffs active', desc = 'Will only show debuffs that you cast instead of all debuffs active',
get = function() get = function(info)
return self.moduleSettings.filterDebuffs return IceHUD:GetSelectValue(info, self.moduleSettings.filterDebuffs)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.filterDebuffs = v self.moduleSettings.filterDebuffs = info.option.values[v]
self:RedrawBuffs() self:RedrawBuffs()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled or not self.moduleSettings.showDebuffs return not self.moduleSettings.enabled or not self.moduleSettings.showDebuffs
end, end,
validate = { "Never", "In Combat", "Always" }, values = { "Never", "In Combat", "Always" },
order = 36.3 order = 36.3
} }
@ -335,7 +335,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.perRow return self.moduleSettings.perRow
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.perRow = v self.moduleSettings.perRow = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -355,15 +355,15 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["buffGrowDirection"] = { opts["buffGrowDirection"] = {
type = 'text', type = 'select',
name = 'Buff grow direction', name = 'Buff grow direction',
desc = 'Which direction the buffs should grow from the anchor point', desc = 'Which direction the buffs should grow from the anchor point',
validate = { "Left", "Right" }, values = { "Left", "Right" },
get = function() get = function(info)
return self.moduleSettings.buffGrowDirection return IceHUD:GetSelectValue(info, self.moduleSettings.buffGrowDirection)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffGrowDirection = v self.moduleSettings.buffGrowDirection = info.option.values[v]
self:CreateBuffFrame() self:CreateBuffFrame()
end, end,
disabled = function() disabled = function()
@ -373,15 +373,15 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["buffAnchorTo"] = { opts["buffAnchorTo"] = {
type = 'text', type = 'select',
name = 'Buff anchor to', name = 'Buff anchor to',
desc = 'The point on the TargetInfo frame that the buff frame gets connected to', desc = 'The point on the TargetInfo frame that the buff frame gets connected to',
validate = ValidAnchors, values = ValidAnchors,
get = function() get = function(info)
return self.moduleSettings.buffAnchorTo return IceHUD:GetSelectValue(info, self.moduleSettings.buffAnchorTo)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffAnchorTo = v self.moduleSettings.buffAnchorTo = info.option.values[v]
self:CreateBuffFrame() self:CreateBuffFrame()
end, end,
disabled = function() disabled = function()
@ -400,7 +400,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.buffOffset['x'] return self.moduleSettings.buffOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffOffset['x'] = v self.moduleSettings.buffOffset['x'] = v
self:CreateBuffFrame() self:CreateBuffFrame()
end, end,
@ -420,7 +420,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.buffOffset['y'] return self.moduleSettings.buffOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.buffOffset['y'] = v self.moduleSettings.buffOffset['y'] = v
self:CreateBuffFrame() self:CreateBuffFrame()
end, end,
@ -437,15 +437,15 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["debuffGrowDirection"] = { opts["debuffGrowDirection"] = {
type = 'text', type = 'select',
name = 'Debuff grow direction', name = 'Debuff grow direction',
desc = 'Which direction the debuffs should grow from the anchor point', desc = 'Which direction the debuffs should grow from the anchor point',
validate = { "Left", "Right" }, values = { "Left", "Right" },
get = function() get = function(info)
return self.moduleSettings.debuffGrowDirection return IceHUD:GetSelectValue(info, self.moduleSettings.debuffGrowDirection)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.debuffGrowDirection = v self.moduleSettings.debuffGrowDirection = info.option.values[v]
self:CreateDebuffFrame() self:CreateDebuffFrame()
end, end,
disabled = function() disabled = function()
@ -455,15 +455,15 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["debuffAnchorTo"] = { opts["debuffAnchorTo"] = {
type = 'text', type = 'select',
name = 'Debuff anchor to', name = 'Debuff anchor to',
desc = 'The point on the TargetInfo frame that the debuff frame gets connected to', desc = 'The point on the TargetInfo frame that the debuff frame gets connected to',
validate = ValidAnchors, values = ValidAnchors,
get = function() get = function(info)
return self.moduleSettings.debuffAnchorTo return IceHUD:GetSelectValue(info, self.moduleSettings.debuffAnchorTo)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.debuffAnchorTo = v self.moduleSettings.debuffAnchorTo = info.option.values[v]
self:CreateDebuffFrame() self:CreateDebuffFrame()
end, end,
disabled = function() disabled = function()
@ -482,7 +482,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.debuffOffset['x'] return self.moduleSettings.debuffOffset['x']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.debuffOffset['x'] = v self.moduleSettings.debuffOffset['x'] = v
self:CreateDebuffFrame() self:CreateDebuffFrame()
end, end,
@ -502,7 +502,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.debuffOffset['y'] return self.moduleSettings.debuffOffset['y']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.debuffOffset['y'] = v self.moduleSettings.debuffOffset['y'] = v
self:CreateDebuffFrame() self:CreateDebuffFrame()
end, end,
@ -525,7 +525,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.mouseTarget return self.moduleSettings.mouseTarget
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.mouseTarget = v self.moduleSettings.mouseTarget = v
self:Redraw() self:Redraw()
end, end,
@ -542,7 +542,7 @@ function IceTargetInfo.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.mouseBuff return self.moduleSettings.mouseBuff
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.mouseBuff = v self.moduleSettings.mouseBuff = v
self:RedrawBuffs() self:RedrawBuffs()
end, end,
@ -559,13 +559,13 @@ function IceTargetInfo.prototype:GetOptions()
} }
opts["line1Tag"] = { opts["line1Tag"] = {
type = 'text', type = 'input',
name = 'Line 1 tag', name = 'Line 1 tag',
desc = 'DogTag-formatted string to use for the top text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.', desc = 'DogTag-formatted string to use for the top text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.',
get = function() get = function()
return self.moduleSettings.line1Tag return self.moduleSettings.line1Tag
end, end,
set = function(v) set = function(info, v)
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
self.moduleSettings.line1Tag = v self.moduleSettings.line1Tag = v
self:RegisterFontStrings() self:RegisterFontStrings()
@ -575,17 +575,18 @@ function IceTargetInfo.prototype:GetOptions()
return not self.moduleSettings.enabled or DogTag == nil return not self.moduleSettings.enabled or DogTag == nil
end, end,
usage = '', usage = '',
multiline = true,
order = 39.1 order = 39.1
} }
opts["line2Tag"] = { opts["line2Tag"] = {
type = 'text', type = 'input',
name = 'Line 2 tag', name = 'Line 2 tag',
desc = 'DogTag-formatted string to use for the second text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.', desc = 'DogTag-formatted string to use for the second text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.',
get = function() get = function()
return self.moduleSettings.line2Tag return self.moduleSettings.line2Tag
end, end,
set = function(v) set = function(info, v)
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
self.moduleSettings.line2Tag = v self.moduleSettings.line2Tag = v
self:RegisterFontStrings() self:RegisterFontStrings()
@ -595,17 +596,18 @@ function IceTargetInfo.prototype:GetOptions()
return not self.moduleSettings.enabled or DogTag == nil return not self.moduleSettings.enabled or DogTag == nil
end, end,
usage = '', usage = '',
multiline = true,
order = 39.2 order = 39.2
} }
opts["line3Tag"] = { opts["line3Tag"] = {
type = 'text', type = 'input',
name = 'Line 3 tag', name = 'Line 3 tag',
desc = 'DogTag-formatted string to use for the third text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.', desc = 'DogTag-formatted string to use for the third text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.',
get = function() get = function()
return self.moduleSettings.line3Tag return self.moduleSettings.line3Tag
end, end,
set = function(v) set = function(info, v)
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
self.moduleSettings.line3Tag = v self.moduleSettings.line3Tag = v
self:RegisterFontStrings() self:RegisterFontStrings()
@ -615,17 +617,18 @@ function IceTargetInfo.prototype:GetOptions()
return not self.moduleSettings.enabled or DogTag == nil return not self.moduleSettings.enabled or DogTag == nil
end, end,
usage = '', usage = '',
multiline = true,
order = 39.3 order = 39.3
} }
opts["line4Tag"] = { opts["line4Tag"] = {
type = 'text', type = 'input',
name = 'Line 4 tag', name = 'Line 4 tag',
desc = 'DogTag-formatted string to use for the bottom text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.', desc = 'DogTag-formatted string to use for the bottom text line (leave blank to revert to old behavior)\n\nType /dogtag for a list of available tags.\n\nRemember to press ENTER after filling out this box or it will not save.',
get = function() get = function()
return self.moduleSettings.line4Tag return self.moduleSettings.line4Tag
end, end,
set = function(v) set = function(info, v)
v = DogTag:CleanCode(v) v = DogTag:CleanCode(v)
self.moduleSettings.line4Tag = v self.moduleSettings.line4Tag = v
self:RegisterFontStrings() self:RegisterFontStrings()
@ -635,6 +638,7 @@ function IceTargetInfo.prototype:GetOptions()
return not self.moduleSettings.enabled or DogTag == nil return not self.moduleSettings.enabled or DogTag == nil
end, end,
usage = '', usage = '',
multiline = true,
order = 39.4 order = 39.4
} }

View File

@ -131,7 +131,7 @@ function TargetInvuln.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.alertParty return self.moduleSettings.alertParty
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.alertParty = v self.moduleSettings.alertParty = v
end, end,
disabled = function() disabled = function()

View File

@ -130,7 +130,7 @@ function IceTargetMana.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.scaleManaColor return self.moduleSettings.scaleManaColor
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.scaleManaColor = value self.moduleSettings.scaleManaColor = value
self:Redraw() self:Redraw()
end, end,
@ -147,7 +147,7 @@ function IceTargetMana.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.onlyShowMana return self.moduleSettings.onlyShowMana
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.onlyShowMana = v self.moduleSettings.onlyShowMana = v
self:Redraw() self:Redraw()
end, end,

View File

@ -35,7 +35,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -55,7 +55,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -75,7 +75,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showDebuffs return self.moduleSettings.showDebuffs
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.showDebuffs = value self.moduleSettings.showDebuffs = value
self:UpdateBuffs() self:UpdateBuffs()
end, end,
@ -92,7 +92,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.fontSize return self.moduleSettings.fontSize
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.fontSize = v self.moduleSettings.fontSize = v
self:Redraw() self:Redraw()
end, end,
@ -112,7 +112,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.mouse return self.moduleSettings.mouse
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.mouse = v self.moduleSettings.mouse = v
self:Redraw() self:Redraw()
end, end,
@ -123,20 +123,20 @@ function TargetOfTarget.prototype:GetOptions()
} }
opts["texture"] = { opts["texture"] = {
type = 'text', type = 'select',
name = 'Texture', name = 'Texture',
desc = 'ToT frame texture', desc = 'ToT frame texture',
get = function() get = function(info)
return self.moduleSettings.texture return IceHUD:GetSelectValue(info, self.moduleSettings.texture)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.texture = v self.moduleSettings.texture = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = SML:List(SML.MediaType.STATUSBAR), values = SML:List(SML.MediaType.STATUSBAR),
order = 35 order = 35
} }
@ -147,7 +147,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.sizeToGap return self.moduleSettings.sizeToGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.sizeToGap = v self.moduleSettings.sizeToGap = v
self:Redraw() self:Redraw()
end, end,
@ -166,7 +166,7 @@ function TargetOfTarget.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.totWidth return self.moduleSettings.totWidth
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.totWidth = v self.moduleSettings.totWidth = v
self:Redraw() self:Redraw()
end, end,

View File

@ -103,7 +103,7 @@ function TargetTargetCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bar'] return self.moduleSettings.barVisible['bar']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bar'] = v self.moduleSettings.barVisible['bar'] = v
if v then if v then
self.barFrame:Show() self.barFrame:Show()
@ -124,7 +124,7 @@ function TargetTargetCast.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.barVisible['bg'] return self.moduleSettings.barVisible['bg']
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.barVisible['bg'] = v self.moduleSettings.barVisible['bg'] = v
if v then if v then
self.frame.bg:Show() self.frame.bg:Show()
@ -139,20 +139,20 @@ function TargetTargetCast.prototype:GetOptions()
} }
opts["selfDisplayMode"] = { opts["selfDisplayMode"] = {
type = "text", type = 'select',
name = "Self Display Mode", name = "Self Display Mode",
desc = "What this bar should do whenever the player is the TargetOfTarget", desc = "What this bar should do whenever the player is the TargetOfTarget",
get = function() get = function(info)
return self.moduleSettings.selfDisplayMode return IceHUD:GetSelectValue(info, self.moduleSettings.selfDisplayMode)
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.selfDisplayMode = value self.moduleSettings.selfDisplayMode = info.option.values[value]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = SelfDisplayModeOptions, values = SelfDisplayModeOptions,
order = 44, order = 44,
} }

View File

@ -41,15 +41,15 @@ function TargetTargetHealth.prototype:GetOptions()
opts["hideBlizz"] = nil opts["hideBlizz"] = nil
opts["selfDisplayMode"] = { opts["selfDisplayMode"] = {
type = "text", type = 'select',
name = "Self Display Mode", name = "Self Display Mode",
desc = "What this bar should do whenever the player is the TargetOfTarget\n\nNOTE: When this is set to 'hide', then click-targeting is not available due to Blizzard's restrictions", desc = "What this bar should do whenever the player is the TargetOfTarget\n\nNOTE: When this is set to 'hide', then click-targeting is not available due to Blizzard's restrictions",
get = function() get = function(info)
return self.moduleSettings.selfDisplayMode return IceHUD:GetSelectValue(info, self.moduleSettings.selfDisplayMode)
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.selfDisplayMode = value self.moduleSettings.selfDisplayMode = info.option.values[value]
if value == "Hide" then if info.option.values[value] == "Hide" then
self.moduleSettings.allowMouseInteraction = false self.moduleSettings.allowMouseInteraction = false
self.DisplayClickTargetOption = false self.DisplayClickTargetOption = false
UnregisterUnitWatch(self.frame) UnregisterUnitWatch(self.frame)
@ -57,13 +57,13 @@ function TargetTargetHealth.prototype:GetOptions()
RegisterUnitWatch(self.frame) RegisterUnitWatch(self.frame)
self.DisplayClickTargetOption = true self.DisplayClickTargetOption = true
end end
AceLibrary("Waterfall-1.0"):Refresh("IceHUD") IceHUD:NotifyOptionsChange()
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = SelfDisplayModeOptions, values = SelfDisplayModeOptions,
order = 44, order = 44,
} }
@ -74,7 +74,7 @@ function TargetTargetHealth.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.selfColor.r, self.moduleSettings.selfColor.g, self.moduleSettings.selfColor.b return self.moduleSettings.selfColor.r, self.moduleSettings.selfColor.g, self.moduleSettings.selfColor.b
end, end,
set = function(r, g, b) set = function(info, r, g, b)
self.moduleSettings.selfColor = { r = r, g = g, b = b } self.moduleSettings.selfColor = { r = r, g = g, b = b }
IceHUD.IceCore:SetColor("SelfColor", r, g, b) IceHUD.IceCore:SetColor("SelfColor", r, g, b)
end, end,

View File

@ -34,20 +34,20 @@ function TargetTargetMana.prototype:GetOptions()
local opts = TargetTargetMana.super.prototype.GetOptions(self) local opts = TargetTargetMana.super.prototype.GetOptions(self)
opts["selfDisplayMode"] = { opts["selfDisplayMode"] = {
type = "text", type = 'select',
name = "Self Display Mode", name = "Self Display Mode",
desc = "What this bar should do whenever the player is the TargetOfTarget", desc = "What this bar should do whenever the player is the TargetOfTarget",
get = function() get = function(info)
return self.moduleSettings.selfDisplayMode return IceHUD:GetSelectValue(info, self.moduleSettings.selfDisplayMode)
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.selfDisplayMode = value self.moduleSettings.selfDisplayMode = info.option.values[value]
self:Redraw() self:Redraw()
end, end,
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
validate = SelfDisplayModeOptions, values = SelfDisplayModeOptions,
order = 44, order = 44,
} }

View File

@ -61,7 +61,7 @@ function IceThreat.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.enabled return self.moduleSettings.enabled
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.enabled = value self.moduleSettings.enabled = value
if (value) then if (value) then
self:Enable(true) self:Enable(true)
@ -83,7 +83,7 @@ function IceThreat.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.aggroAlpha return self.moduleSettings.aggroAlpha
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.aggroAlpha = value self.moduleSettings.aggroAlpha = value
self:Redraw() self:Redraw()
end, end,
@ -100,7 +100,7 @@ function IceThreat.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.onlyShowInGroups return self.moduleSettings.onlyShowInGroups
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.onlyShowInGroups = v self.moduleSettings.onlyShowInGroups = v
self:Redraw() self:Redraw()
end, end,
@ -117,7 +117,7 @@ function IceThreat.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.showScaledThreat return self.moduleSettings.showScaledThreat
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.showScaledThreat = v self.moduleSettings.showScaledThreat = v
self:Redraw() self:Redraw()
end, end,
@ -134,7 +134,7 @@ function IceThreat.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.displaySecondPlaceThreat return self.moduleSettings.displaySecondPlaceThreat
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displaySecondPlaceThreat = v self.moduleSettings.displaySecondPlaceThreat = v
self:Redraw() self:Redraw()
end, end,
@ -151,7 +151,7 @@ function IceThreat.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.secondPlaceThreatAlpha return self.moduleSettings.secondPlaceThreatAlpha
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.secondPlaceThreatAlpha = v self.moduleSettings.secondPlaceThreatAlpha = v
self:Redraw() self:Redraw()
end, end,

View File

@ -53,7 +53,7 @@ function Totems.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.vpos return self.moduleSettings.vpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.vpos = v self.moduleSettings.vpos = v
self:Redraw() self:Redraw()
end, end,
@ -73,7 +73,7 @@ function Totems.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hpos return self.moduleSettings.hpos
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.hpos = v self.moduleSettings.hpos = v
self:Redraw() self:Redraw()
end, end,
@ -93,7 +93,7 @@ function Totems.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
set = function(value) set = function(info, value)
self.moduleSettings.hideBlizz = value self.moduleSettings.hideBlizz = value
if (value) then if (value) then
self:HideBlizz() self:HideBlizz()
@ -108,17 +108,17 @@ function Totems.prototype:GetOptions()
} }
--]] --]]
opts["displayMode"] = { opts["displayMode"] = {
type = 'text', type = 'select',
name = 'Totem orientation', name = 'Totem orientation',
desc = 'Whether the totems should draw side-by-side or on top of one another', desc = 'Whether the totems should draw side-by-side or on top of one another',
get = function() get = function(info)
return self.moduleSettings.displayMode return IceHUD:GetSelectValue(info, self.moduleSettings.displayMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.displayMode = v self.moduleSettings.displayMode = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
validate = { "Horizontal", "Vertical" }, values = { "Horizontal", "Vertical" },
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
@ -126,62 +126,23 @@ function Totems.prototype:GetOptions()
} }
opts["cooldownMode"] = { opts["cooldownMode"] = {
type = 'text', type = 'select',
name = 'Totem cooldown mode', name = 'Totem cooldown mode',
desc = 'Choose whether the totems use a cooldown-style wipe or simply an alpha fade to show availability.', desc = 'Choose whether the totems use a cooldown-style wipe or simply an alpha fade to show availability.',
get = function() get = function(info)
return self.moduleSettings.cooldownMode return IceHUD:GetSelectValue(info, self.moduleSettings.cooldownMode)
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.cooldownMode = v self.moduleSettings.cooldownMode = info.option.values[v]
self:Redraw() self:Redraw()
end, end,
validate = { "Cooldown" }, -- "Alpha" not supported? values = { "Cooldown" }, -- "Alpha" not supported?
disabled = function() disabled = function()
return not self.moduleSettings.enabled return not self.moduleSettings.enabled
end, end,
order = 36 order = 36
} }
-- todo: numeric mode isn't supported just yet...so these options are removed for now
--[[
opts["runeFontSize"] = {
type = "range",
name = "Runes Font Size",
desc = "Runes Font Size",
get = function()
return self.moduleSettings.runeFontSize
end,
set = function(v)
self.moduleSettings.runeFontSize = v
self:Redraw()
end,
min = 10,
max = 40,
step = 1,
disabled = function()
return not self.moduleSettings.enabled
end,
order = 33
}
opts["runeMode"] = {
type = "text",
name = "Display Mode",
desc = "Show graphical or numeric runes",
get = function()
return self.moduleSettings.runeMode
end,
set = function(v)
self.moduleSettings.runeMode = v
self:Redraw()
end,
validate = { "Numeric", "Graphical" },
disabled = function()
return not self.moduleSettings.enabled
end,
order = 34
}
]]--
opts["totemGap"] = { opts["totemGap"] = {
type = 'range', type = 'range',
name = 'Totem gap', name = 'Totem gap',
@ -192,7 +153,7 @@ function Totems.prototype:GetOptions()
get = function() get = function()
return self.moduleSettings.totemGap return self.moduleSettings.totemGap
end, end,
set = function(v) set = function(info, v)
self.moduleSettings.totemGap = v self.moduleSettings.totemGap = v
self:Redraw() self:Redraw()
end, end,