Framework update
This commit is contained in:
+28
-28
@@ -5,7 +5,7 @@ if (not DF or not DetailsFrameworkCanLoad) then
|
||||
end
|
||||
|
||||
local _
|
||||
local APIDropDownFunctions = false
|
||||
local loadedAPIDropDownFunctions = false
|
||||
|
||||
do
|
||||
local metaPrototype = {
|
||||
@@ -85,28 +85,28 @@ local DropDownMetaFunctions = _G[DF.GlobalWidgetControlNames["dropdown"]]
|
||||
end
|
||||
|
||||
DropDownMetaFunctions.GetMembers = DropDownMetaFunctions.GetMembers or {}
|
||||
DropDownMetaFunctions.GetMembers ["value"] = gmember_value
|
||||
DropDownMetaFunctions.GetMembers ["text"] = gmember_text
|
||||
DropDownMetaFunctions.GetMembers ["shown"] = gmember_shown
|
||||
DropDownMetaFunctions.GetMembers ["width"] = gmember_width
|
||||
DropDownMetaFunctions.GetMembers ["menuwidth"] = gmember_menuwidth
|
||||
DropDownMetaFunctions.GetMembers ["height"] = gmember_height
|
||||
DropDownMetaFunctions.GetMembers ["menuheight"] = gmember_menuheight
|
||||
DropDownMetaFunctions.GetMembers ["tooltip"] = gmember_tooltip
|
||||
DropDownMetaFunctions.GetMembers ["func"] = gmember_function
|
||||
DropDownMetaFunctions.GetMembers["value"] = gmember_value
|
||||
DropDownMetaFunctions.GetMembers["text"] = gmember_text
|
||||
DropDownMetaFunctions.GetMembers["shown"] = gmember_shown
|
||||
DropDownMetaFunctions.GetMembers["width"] = gmember_width
|
||||
DropDownMetaFunctions.GetMembers["menuwidth"] = gmember_menuwidth
|
||||
DropDownMetaFunctions.GetMembers["height"] = gmember_height
|
||||
DropDownMetaFunctions.GetMembers["menuheight"] = gmember_menuheight
|
||||
DropDownMetaFunctions.GetMembers["tooltip"] = gmember_tooltip
|
||||
DropDownMetaFunctions.GetMembers["func"] = gmember_function
|
||||
|
||||
DropDownMetaFunctions.__index = function(object, memberName)
|
||||
local func = DropDownMetaFunctions.GetMembers[memberName]
|
||||
DropDownMetaFunctions.__index = function(object, key)
|
||||
local func = DropDownMetaFunctions.GetMembers[key]
|
||||
if (func) then
|
||||
return func(object, memberName)
|
||||
return func(object, key)
|
||||
end
|
||||
|
||||
local fromMe = rawget(object, memberName)
|
||||
if (fromMe) then
|
||||
return fromMe
|
||||
local alreadyHaveKey = rawget(object, key)
|
||||
if (alreadyHaveKey) then
|
||||
return alreadyHaveKey
|
||||
end
|
||||
|
||||
return DropDownMetaFunctions[memberName]
|
||||
return DropDownMetaFunctions[key]
|
||||
end
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
@@ -420,7 +420,7 @@ local runCallbackFunctionForButton = function(button)
|
||||
if (not success) then
|
||||
error ("Details! Framework: dropdown " .. button:GetParent():GetParent():GetParent().MyObject:GetName() .. " error: " .. errorText)
|
||||
end
|
||||
button:GetParent():GetParent():GetParent().MyObject:RunHooksForWidget ("OnOptionSelected", button:GetParent():GetParent():GetParent().MyObject, button.object.FixedValue, button.table.value)
|
||||
button:GetParent():GetParent():GetParent().MyObject:RunHooksForWidget("OnOptionSelected", button:GetParent():GetParent():GetParent().MyObject, button.object.FixedValue, button.table.value)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -678,11 +678,11 @@ function DetailsFrameworkDropDownOnMouseDown(button, buttontype)
|
||||
|
||||
--has at least 1 option?
|
||||
if (optionsTable and optionsTable[1]) then
|
||||
local scrollFrame = _G [button:GetName() .. "_ScrollFrame"]
|
||||
local scrollChild = _G [button:GetName() .. "_ScrollFrame_ScrollChild"]
|
||||
local scrollBorder = _G [button:GetName() .. "_Border"]
|
||||
local selectedTexture = _G [button:GetName() .. "_ScrollFrame_ScrollChild_SelectedTexture"]
|
||||
local mouseOverTexture = _G [button:GetName() .. "_ScrollFrame_ScrollChild_MouseOverTexture"]
|
||||
local scrollFrame = _G[button:GetName() .. "_ScrollFrame"]
|
||||
local scrollChild = _G[button:GetName() .. "_ScrollFrame_ScrollChild"]
|
||||
local scrollBorder = _G[button:GetName() .. "_Border"]
|
||||
local selectedTexture = _G[button:GetName() .. "_ScrollFrame_ScrollChild_SelectedTexture"]
|
||||
local mouseOverTexture = _G[button:GetName() .. "_ScrollFrame_ScrollChild_MouseOverTexture"]
|
||||
|
||||
local i = 1
|
||||
local showing = 0
|
||||
@@ -809,8 +809,8 @@ function DetailsFrameworkDropDownOnMouseDown(button, buttontype)
|
||||
selectedTexture:SetWidth(frameWitdh-20)
|
||||
end
|
||||
|
||||
for i = showing + 1, #object.menus do
|
||||
object.menus[i]:Hide()
|
||||
for o = showing + 1, #object.menus do
|
||||
object.menus[o]:Hide()
|
||||
end
|
||||
|
||||
local size = object.realsizeH
|
||||
@@ -1059,7 +1059,7 @@ function DF:NewDropDown(parent, container, name, member, width, height, func, de
|
||||
DF.DropDownCounter = DF.DropDownCounter + 1
|
||||
|
||||
elseif (not parent) then
|
||||
return error("Details! FrameWork: parent not found.", 2)
|
||||
return error("Details! Framework: parent not found.", 2)
|
||||
end
|
||||
|
||||
if (not container) then
|
||||
@@ -1096,8 +1096,8 @@ function DF:NewDropDown(parent, container, name, member, width, height, func, de
|
||||
dropDownObject.widget = dropDownObject.dropdown
|
||||
dropDownObject.dropdown.MyObject = dropDownObject
|
||||
|
||||
if (not APIDropDownFunctions) then
|
||||
APIDropDownFunctions = true
|
||||
if (not loadedAPIDropDownFunctions) then
|
||||
loadedAPIDropDownFunctions = true
|
||||
local idx = getmetatable(dropDownObject.dropdown).__index
|
||||
for funcName, funcAddress in pairs(idx) do
|
||||
if (not DropDownMetaFunctions[funcName]) then
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
|
||||
|
||||
local dversion = 351
|
||||
local dversion = 352
|
||||
local major, minor = "DetailsFramework-1.0", dversion
|
||||
local DF, oldminor = LibStub:NewLibrary (major, minor)
|
||||
|
||||
|
||||
+169
-183
@@ -1,20 +1,11 @@
|
||||
|
||||
local DF = _G ["DetailsFramework"]
|
||||
if (not DF or not DetailsFrameworkCanLoad) then
|
||||
return
|
||||
return
|
||||
end
|
||||
|
||||
local _
|
||||
local _rawset = rawset --> lua local
|
||||
local _rawget = rawget --> lua local
|
||||
local _setmetatable = setmetatable --> lua local
|
||||
local _unpack = unpack --> lua local
|
||||
local _type = type --> lua local
|
||||
local _math_floor = math.floor --> lua local
|
||||
local loadstring = loadstring --> lua local
|
||||
|
||||
local cleanfunction = function() end
|
||||
local APILabelFunctions = false
|
||||
local loadedAPILabelFunctions = false
|
||||
|
||||
do
|
||||
local metaPrototype = {
|
||||
@@ -48,141 +39,140 @@ local LabelMetaFunctions = _G[DF.GlobalWidgetControlNames ["label"]]
|
||||
------------------------------------------------------------------------------------------------------------
|
||||
--> metatables
|
||||
|
||||
LabelMetaFunctions.__call = function (_table, value)
|
||||
return self.label:SetText (value)
|
||||
LabelMetaFunctions.__call = function(object, value)
|
||||
return object.label:SetText(value)
|
||||
end
|
||||
|
||||
------------------------------------------------------------------------------------------------------------
|
||||
--> members
|
||||
|
||||
--> shown
|
||||
local gmember_shown = function (_object)
|
||||
return _object:IsShown()
|
||||
--shown
|
||||
local gmember_shown = function(object)
|
||||
return object:IsShown()
|
||||
end
|
||||
--> frame width
|
||||
local gmember_width = function (_object)
|
||||
return _object.label:GetStringWidth()
|
||||
--get text
|
||||
local gmember_text = function(object)
|
||||
return object.label:GetText()
|
||||
end
|
||||
--> frame height
|
||||
local gmember_height = function (_object)
|
||||
return _object.label:GetStringHeight()
|
||||
--text width
|
||||
local gmember_width = function(object)
|
||||
return object.label:GetStringWidth()
|
||||
end
|
||||
--> text
|
||||
local gmember_text = function (_object)
|
||||
return _object.label:GetText()
|
||||
--text height
|
||||
local gmember_height = function(object)
|
||||
return object.label:GetStringHeight()
|
||||
end
|
||||
--> text color
|
||||
local gmember_textcolor = function (_object)
|
||||
return _object.label:GetTextColor()
|
||||
--text color
|
||||
local gmember_textcolor = function(object)
|
||||
return object.label:GetTextColor()
|
||||
end
|
||||
--> text font
|
||||
local gmember_textfont = function (_object)
|
||||
local fontface = _object.label:GetFont()
|
||||
--text font
|
||||
local gmember_textfont = function(object)
|
||||
local fontface = object.label:GetFont()
|
||||
return fontface
|
||||
end
|
||||
--> text size
|
||||
local gmember_textsize = function (_object)
|
||||
local _, fontsize = _object.label:GetFont()
|
||||
--text size
|
||||
local gmember_textsize = function(object)
|
||||
local _, fontsize = object.label:GetFont()
|
||||
return fontsize
|
||||
end
|
||||
|
||||
LabelMetaFunctions.GetMembers = LabelMetaFunctions.GetMembers or {}
|
||||
LabelMetaFunctions.GetMembers ["shown"] = gmember_shown
|
||||
LabelMetaFunctions.GetMembers ["width"] = gmember_width
|
||||
LabelMetaFunctions.GetMembers ["height"] = gmember_height
|
||||
LabelMetaFunctions.GetMembers ["text"] = gmember_text
|
||||
LabelMetaFunctions.GetMembers ["fontcolor"] = gmember_textcolor
|
||||
LabelMetaFunctions.GetMembers ["fontface"] = gmember_textfont
|
||||
LabelMetaFunctions.GetMembers ["fontsize"] = gmember_textsize
|
||||
LabelMetaFunctions.GetMembers ["textcolor"] = gmember_textcolor --alias
|
||||
LabelMetaFunctions.GetMembers ["textfont"] = gmember_textfont --alias
|
||||
LabelMetaFunctions.GetMembers ["textsize"] = gmember_textsize --alias
|
||||
LabelMetaFunctions.GetMembers["shown"] = gmember_shown
|
||||
LabelMetaFunctions.GetMembers["width"] = gmember_width
|
||||
LabelMetaFunctions.GetMembers["height"] = gmember_height
|
||||
LabelMetaFunctions.GetMembers["text"] = gmember_text
|
||||
LabelMetaFunctions.GetMembers["fontcolor"] = gmember_textcolor
|
||||
LabelMetaFunctions.GetMembers["fontface"] = gmember_textfont
|
||||
LabelMetaFunctions.GetMembers["fontsize"] = gmember_textsize
|
||||
LabelMetaFunctions.GetMembers["textcolor"] = gmember_textcolor --alias
|
||||
LabelMetaFunctions.GetMembers["textfont"] = gmember_textfont --alias
|
||||
LabelMetaFunctions.GetMembers["textsize"] = gmember_textsize --alias
|
||||
|
||||
LabelMetaFunctions.__index = function (_table, _member_requested)
|
||||
|
||||
local func = LabelMetaFunctions.GetMembers [_member_requested]
|
||||
LabelMetaFunctions.__index = function(object, key)
|
||||
local func = LabelMetaFunctions.GetMembers[key]
|
||||
if (func) then
|
||||
return func (_table, _member_requested)
|
||||
return func(object, key)
|
||||
end
|
||||
|
||||
local fromMe = _rawget (_table, _member_requested)
|
||||
if (fromMe) then
|
||||
return fromMe
|
||||
|
||||
local alreadyHaveKey = rawget(object, key)
|
||||
if (alreadyHaveKey) then
|
||||
return alreadyHaveKey
|
||||
end
|
||||
|
||||
return LabelMetaFunctions [_member_requested]
|
||||
|
||||
return LabelMetaFunctions[key]
|
||||
end
|
||||
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
--> show
|
||||
local smember_show = function (_object, _value)
|
||||
if (_value) then
|
||||
return _object:Show()
|
||||
--show
|
||||
local smember_show = function(object, value)
|
||||
if (value) then
|
||||
return object:Show()
|
||||
else
|
||||
return _object:Hide()
|
||||
return object:Hide()
|
||||
end
|
||||
end
|
||||
--> hide
|
||||
local smember_hide = function (_object, _value)
|
||||
if (not _value) then
|
||||
return _object:Show()
|
||||
--hide
|
||||
local smember_hide = function(object, value)
|
||||
if (not value) then
|
||||
return object:Show()
|
||||
else
|
||||
return _object:Hide()
|
||||
return object:Hide()
|
||||
end
|
||||
end
|
||||
--> text
|
||||
local smember_text = function (_object, _value)
|
||||
return _object.label:SetText (_value)
|
||||
--text
|
||||
local smember_text = function(object, value)
|
||||
return object.label:SetText(value)
|
||||
end
|
||||
--> text color
|
||||
local smember_textcolor = function (_object, _value)
|
||||
local _value1, _value2, _value3, _value4 = DF:ParseColors (_value)
|
||||
return _object.label:SetTextColor (_value1, _value2, _value3, _value4)
|
||||
--text color
|
||||
local smember_textcolor = function(object, value)
|
||||
local value1, value2, value3, value4 = DF:ParseColors(value)
|
||||
return object.label:SetTextColor(value1, value2, value3, value4)
|
||||
end
|
||||
--> text font
|
||||
local smember_textfont = function (_object, _value)
|
||||
return DF:SetFontFace (_object.label, _value)
|
||||
--text font
|
||||
local smember_textfont = function(object, value)
|
||||
return DF:SetFontFace(object.label, value)
|
||||
end
|
||||
--> text size
|
||||
local smember_textsize = function (_object, _value)
|
||||
return DF:SetFontSize (_object.label, _value)
|
||||
--text size
|
||||
local smember_textsize = function(object, value)
|
||||
return DF:SetFontSize(object.label, value)
|
||||
end
|
||||
--> text align
|
||||
local smember_textalign = function (_object, _value)
|
||||
if (_value == "<") then
|
||||
_value = "left"
|
||||
elseif (_value == ">") then
|
||||
_value = "right"
|
||||
elseif (_value == "|") then
|
||||
_value = "center"
|
||||
--text align
|
||||
local smember_textalign = function(object, value)
|
||||
if (value == "<") then
|
||||
value = "left"
|
||||
elseif (value == ">") then
|
||||
value = "right"
|
||||
elseif (value == "|") then
|
||||
value = "center"
|
||||
end
|
||||
return _object.label:SetJustifyH (_value)
|
||||
return object.label:SetJustifyH(value)
|
||||
end
|
||||
--> text valign
|
||||
local smember_textvalign = function (_object, _value)
|
||||
if (_value == "^") then
|
||||
_value = "top"
|
||||
elseif (_value == "_") then
|
||||
_value = "bottom"
|
||||
elseif (_value == "|") then
|
||||
_value = "middle"
|
||||
--text valign
|
||||
local smember_textvalign = function(object, value)
|
||||
if (value == "^") then
|
||||
value = "top"
|
||||
elseif (value == "_") then
|
||||
value = "bottom"
|
||||
elseif (value == "|") then
|
||||
value = "middle"
|
||||
end
|
||||
return _object.label:SetJustifyV (_value)
|
||||
return object.label:SetJustifyV(value)
|
||||
end
|
||||
--> field size width
|
||||
local smember_width = function (_object, _value)
|
||||
return _object.label:SetWidth (_value)
|
||||
--field size width
|
||||
local smember_width = function(object, value)
|
||||
return object.label:SetWidth(value)
|
||||
end
|
||||
--> field size height
|
||||
local smember_height = function (_object, _value)
|
||||
return _object.label:SetHeight (_value)
|
||||
--field size height
|
||||
local smember_height = function(object, value)
|
||||
return object.label:SetHeight(value)
|
||||
end
|
||||
--> outline (shadow)
|
||||
local smember_outline = function (_object, _value)
|
||||
DF:SetFontOutline (_object.label, _value)
|
||||
--outline (shadow)
|
||||
local smember_outline = function(object, value)
|
||||
DF:SetFontOutline(object.label, value)
|
||||
end
|
||||
|
||||
--text rotation
|
||||
local smember_rotation = function(object, rotation)
|
||||
if (type(rotation) == "number") then
|
||||
if (not object.__rotationAnimation) then
|
||||
@@ -215,20 +205,20 @@ local LabelMetaFunctions = _G[DF.GlobalWidgetControlNames ["label"]]
|
||||
LabelMetaFunctions.SetMembers["shadow"] = smember_outline
|
||||
LabelMetaFunctions.SetMembers["outline"] = smember_outline--alias
|
||||
LabelMetaFunctions.SetMembers["rotation"] = smember_rotation--alias
|
||||
|
||||
LabelMetaFunctions.__newindex = function (_table, _key, _value)
|
||||
local func = LabelMetaFunctions.SetMembers [_key]
|
||||
|
||||
LabelMetaFunctions.__newindex = function(object, key, value)
|
||||
local func = LabelMetaFunctions.SetMembers[key]
|
||||
if (func) then
|
||||
return func (_table, _value)
|
||||
return func(object, value)
|
||||
else
|
||||
return _rawset (_table, _key, _value)
|
||||
return rawset(object, key, value)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------
|
||||
--> methods
|
||||
|
||||
--> show & hide
|
||||
|
||||
--show & hide
|
||||
function LabelMetaFunctions:IsShown()
|
||||
return self.label:IsShown()
|
||||
end
|
||||
@@ -238,129 +228,125 @@ local LabelMetaFunctions = _G[DF.GlobalWidgetControlNames ["label"]]
|
||||
function LabelMetaFunctions:Hide()
|
||||
return self.label:Hide()
|
||||
end
|
||||
|
||||
|
||||
--text text
|
||||
function LabelMetaFunctions:SetTextTruncated (text, maxWidth)
|
||||
self.widget:SetText (text)
|
||||
DF:TruncateText (self.widget, maxWidth)
|
||||
function LabelMetaFunctions:SetTextTruncated(text, maxWidth)
|
||||
self.widget:SetText(text)
|
||||
DF:TruncateText(self.widget, maxWidth)
|
||||
end
|
||||
|
||||
-- textcolor
|
||||
function LabelMetaFunctions:SetTextColor (color, arg2, arg3, arg4)
|
||||
if (arg2) then
|
||||
return self.label:SetTextColor (color, arg2, arg3, arg4 or 1)
|
||||
end
|
||||
local _value1, _value2, _value3, _value4 = DF:ParseColors (color)
|
||||
return self.label:SetTextColor (_value1, _value2, _value3, _value4)
|
||||
|
||||
--textcolor
|
||||
function LabelMetaFunctions:SetTextColor(r, g, b, a)
|
||||
r, g, b, a = DF:ParseColors(r, g, b, a)
|
||||
return self.label:SetTextColor(r, g, b, a)
|
||||
end
|
||||
|
||||
|
||||
-- setpoint
|
||||
function LabelMetaFunctions:SetPoint (v1, v2, v3, v4, v5)
|
||||
v1, v2, v3, v4, v5 = DF:CheckPoints (v1, v2, v3, v4, v5, self)
|
||||
function LabelMetaFunctions:SetPoint(v1, v2, v3, v4, v5)
|
||||
v1, v2, v3, v4, v5 = DF:CheckPoints(v1, v2, v3, v4, v5, self)
|
||||
if (not v1) then
|
||||
print ("Invalid parameter for SetPoint")
|
||||
print("Invalid parameter for SetPoint")
|
||||
return
|
||||
end
|
||||
return self.widget:SetPoint (v1, v2, v3, v4, v5)
|
||||
return self.widget:SetPoint(v1, v2, v3, v4, v5)
|
||||
end
|
||||
|
||||
------------------------------------------------------------------------------------------------------------
|
||||
|
||||
function LabelMetaFunctions:SetTemplate (template)
|
||||
function LabelMetaFunctions:SetTemplate(template)
|
||||
if (template.size) then
|
||||
DF:SetFontSize (self.label, template.size)
|
||||
DF:SetFontSize(self.label, template.size)
|
||||
end
|
||||
if (template.color) then
|
||||
local r, g, b, a = DF:ParseColors (template.color)
|
||||
self:SetTextColor (r, g, b, a)
|
||||
local r, g, b, a = DF:ParseColors(template.color)
|
||||
self:SetTextColor(r, g, b, a)
|
||||
end
|
||||
if (template.font) then
|
||||
local SharedMedia = LibStub:GetLibrary ("LibSharedMedia-3.0")
|
||||
local font = SharedMedia:Fetch ("font", template.font)
|
||||
DF:SetFontFace (self.label, font)
|
||||
local SharedMedia = LibStub:GetLibrary("LibSharedMedia-3.0")
|
||||
local font = SharedMedia:Fetch("font", template.font)
|
||||
DF:SetFontFace(self.label, font)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
------------------------------------------------------------------------------------------------------------
|
||||
--> object constructor
|
||||
function DF:CreateLabel (parent, text, size, color, font, member, name, layer)
|
||||
return DF:NewLabel (parent, nil, name, member, text, font, size, color, layer)
|
||||
function DF:CreateLabel(parent, text, size, color, font, member, name, layer)
|
||||
return DF:NewLabel(parent, nil, name, member, text, font, size, color, layer)
|
||||
end
|
||||
|
||||
function DF:NewLabel (parent, container, name, member, text, font, size, color, layer)
|
||||
|
||||
function DF:NewLabel(parent, container, name, member, text, font, size, color, layer)
|
||||
if (not parent) then
|
||||
return error ("Details! FrameWork: parent not found.", 2)
|
||||
return error("Details! Framework: parent not found.", 2)
|
||||
end
|
||||
if (not container) then
|
||||
container = parent
|
||||
end
|
||||
|
||||
|
||||
if (not name) then
|
||||
name = "DetailsFrameworkLabelNumber" .. DF.LabelNameCounter
|
||||
DF.LabelNameCounter = DF.LabelNameCounter + 1
|
||||
end
|
||||
|
||||
if (name:find ("$parent")) then
|
||||
local parentName = DF.GetParentName (parent)
|
||||
name = name:gsub ("$parent", parentName)
|
||||
|
||||
if (name:find("$parent")) then
|
||||
local parentName = DF.GetParentName(parent)
|
||||
name = name:gsub("$parent", parentName)
|
||||
end
|
||||
|
||||
|
||||
local LabelObject = {type = "label", dframework = true}
|
||||
|
||||
|
||||
if (member) then
|
||||
parent [member] = LabelObject
|
||||
--container [member] = LabelObject.label
|
||||
parent[member] = LabelObject
|
||||
end
|
||||
|
||||
|
||||
if (parent.dframework) then
|
||||
parent = parent.widget
|
||||
end
|
||||
|
||||
if (container.dframework) then
|
||||
container = container.widget
|
||||
end
|
||||
|
||||
font = font == "" and "GameFontHighlightSmall" or font or "GameFontHighlightSmall"
|
||||
|
||||
LabelObject.label = parent:CreateFontString (name, layer or "OVERLAY", font)
|
||||
LabelObject.label = parent:CreateFontString(name, layer or "OVERLAY", font)
|
||||
LabelObject.widget = LabelObject.label
|
||||
|
||||
LabelObject.label.MyObject = LabelObject
|
||||
|
||||
if (not APILabelFunctions) then
|
||||
APILabelFunctions = true
|
||||
local idx = getmetatable (LabelObject.label).__index
|
||||
for funcName, funcAddress in pairs (idx) do
|
||||
if (not LabelMetaFunctions [funcName]) then
|
||||
LabelMetaFunctions [funcName] = function (object, ...)
|
||||
local x = loadstring ( "return _G['"..object.label:GetName().."']:"..funcName.."(...)")
|
||||
return x (...)
|
||||
|
||||
if (not loadedAPILabelFunctions) then
|
||||
loadedAPILabelFunctions = true
|
||||
local idx = getmetatable(LabelObject.label).__index
|
||||
for funcName, funcAddress in pairs(idx) do
|
||||
if (not LabelMetaFunctions[funcName]) then
|
||||
LabelMetaFunctions[funcName] = function (object, ...)
|
||||
local x = loadstring( "return _G['"..object.label:GetName().."']:"..funcName.."(...)")
|
||||
return x(...)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
LabelObject.label:SetText (text)
|
||||
|
||||
if (color) then
|
||||
local r, g, b, a = DF:ParseColors (color)
|
||||
LabelObject.label:SetTextColor (r, g, b, a)
|
||||
end
|
||||
|
||||
if (size and type (size) == "number") then
|
||||
DF:SetFontSize (LabelObject.label, size)
|
||||
end
|
||||
|
||||
|
||||
LabelObject.label:SetText(text)
|
||||
|
||||
if (color) then
|
||||
local r, g, b, a = DF:ParseColors(color)
|
||||
LabelObject.label:SetTextColor(r, g, b, a)
|
||||
end
|
||||
|
||||
if (size and type(size) == "number") then
|
||||
DF:SetFontSize(LabelObject.label, size)
|
||||
end
|
||||
|
||||
LabelObject.HookList = {
|
||||
}
|
||||
|
||||
LabelObject.label:SetJustifyH ("LEFT")
|
||||
|
||||
setmetatable (LabelObject, LabelMetaFunctions)
|
||||
|
||||
if (size and type (size) == "table") then
|
||||
LabelObject:SetTemplate (size)
|
||||
LabelObject.label:SetJustifyH("LEFT")
|
||||
|
||||
setmetatable(LabelObject, LabelMetaFunctions)
|
||||
|
||||
--if template has been passed as the third parameter
|
||||
if (size and type(size) == "table") then
|
||||
LabelObject:SetTemplate(size)
|
||||
end
|
||||
|
||||
|
||||
return LabelObject
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user