Major update
-New feature: Arena DPS Bar, can be enabled at the Broadcaster Tools section, shows a bar in 'kamehameha' style showing which team is doing more damage in the latest 3 seconds. -Revamp on the options section for Broadcaster tools. -Added 'Icon Size Offset' under Options > Bars: General, this new option allow to adjust the size of the class/spec icon shown on each bar. -Added 'Show Faction Icon' under Options > Bars: General, with this new option, you can choose to not show the faction icon, this icon is usually shown during battlegrounds. -Added 'Faction Icon Size Offset' under Options > Bars: General, new option to adjust the size of the faction icon. -Added 'Show Arena Role Icon' under Options > Bars: General, new option to hide or show the role icon of players during an arena match. -Added 'Arena Role Icon Size Offset' under Options > Bars: General, new option which allow to control the size of the arena role icon. -Added 'Level' option to Wallpapers, the wallpaper can now be placed on different levels which solves issues where the wallpaper is too low of certain configuration. -Streamer! plugin got updates, now it is more clear to pick which mode to use. -WotLK classic compatibility (Flamanis, Daniel Henry). -Fixed the title bar text not showing when using the Custom Title Bar feature. -Role detection in classic versions got improvements. -New API: Details:GetTop5Actors(attributeId), return the top 5 actors from the selected attribute. -New API: Details:GetActorByRank(attributeId, rankIndex), return an actor from the selected attribute and rankIndex. -Major cleanup and code improvements on dropdowns for library Details! Framework. -Cleanup on NickTag library. -Removed LibGroupInSpecT, LibItemUpgradeInfo and LibCompress. These libraries got replaced by OpenRaidLib and LibDeflate.
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
|
||||
local DF = _G ["DetailsFramework"]
|
||||
if (not DF or not DetailsFrameworkCanLoad) then
|
||||
return
|
||||
end
|
||||
|
||||
local _
|
||||
|
||||
--mixin for options functions
|
||||
DF.OptionsFunctions = {
|
||||
SetOption = function (self, optionName, optionValue)
|
||||
if (self.options) then
|
||||
self.options [optionName] = optionValue
|
||||
else
|
||||
self.options = {}
|
||||
self.options [optionName] = optionValue
|
||||
end
|
||||
|
||||
if (self.OnOptionChanged) then
|
||||
DF:Dispatch (self.OnOptionChanged, self, optionName, optionValue)
|
||||
end
|
||||
end,
|
||||
|
||||
GetOption = function (self, optionName)
|
||||
return self.options and self.options [optionName]
|
||||
end,
|
||||
|
||||
GetAllOptions = function (self)
|
||||
if (self.options) then
|
||||
local optionsTable = {}
|
||||
for key, _ in pairs (self.options) do
|
||||
optionsTable [#optionsTable + 1] = key
|
||||
end
|
||||
return optionsTable
|
||||
else
|
||||
return {}
|
||||
end
|
||||
end,
|
||||
|
||||
BuildOptionsTable = function (self, defaultOptions, userOptions)
|
||||
self.options = self.options or {}
|
||||
DF.table.deploy (self.options, userOptions or {})
|
||||
DF.table.deploy (self.options, defaultOptions or {})
|
||||
end
|
||||
}
|
||||
|
||||
--payload mixin
|
||||
DF.PayloadMixin = {
|
||||
ClearPayload = function(self)
|
||||
self.payload = {}
|
||||
end,
|
||||
|
||||
SetPayload = function(self, ...)
|
||||
self.payload = {...}
|
||||
return self.payload
|
||||
end,
|
||||
|
||||
AddPayload = function(self, ...)
|
||||
local currentPayload = self.payload or {}
|
||||
self.payload = currentPayload
|
||||
|
||||
for i = 1, select("#", ...) do
|
||||
local value = select(i, ...)
|
||||
currentPayload[#currentPayload+1] = value
|
||||
end
|
||||
|
||||
return self.payload
|
||||
end,
|
||||
|
||||
GetPayload = function(self)
|
||||
return self.payload
|
||||
end,
|
||||
|
||||
DumpPayload = function(self)
|
||||
return unpack(self.payload)
|
||||
end,
|
||||
|
||||
--does not copy wow objects, just pass them to the new table, tables strings and numbers are copied entirely
|
||||
DuplicatePayload = function(self)
|
||||
local duplicatedPayload = DF.table.duplicate({}, self.payload)
|
||||
return duplicatedPayload
|
||||
end,
|
||||
}
|
||||
Reference in New Issue
Block a user