Fixed: report window send button, tooltip showing the player's death

This commit is contained in:
Tercio Jose
2022-10-06 16:24:29 -03:00
parent 1daab21a63
commit ea9caa1f40
12 changed files with 2376 additions and 2903 deletions
+63 -64
View File
@@ -12,7 +12,6 @@ do
WidgetType = "label",
SetHook = detailsFramework.SetHook,
RunHooksForWidget = detailsFramework.RunHooksForWidget,
dversion = detailsFramework.dversion,
}
@@ -215,21 +214,22 @@ detailsFramework:Mixin(LabelMetaFunctions, detailsFramework.SetPointMixin)
end
------------------------------------------------------------------------------------------------------------
--> methods
--methods
--text text
--text text
function LabelMetaFunctions:SetTextTruncated(text, maxWidth)
self.widget:SetText(text)
detailsFramework:TruncateText(self.widget, maxWidth)
end
--textcolor
--textcolor
function LabelMetaFunctions:SetTextColor(r, g, b, a)
r, g, b, a = detailsFramework:ParseColors(r, g, b, a)
return self.label:SetTextColor(r, g, b, a)
end
------------------------------------------------------------------------------------------------------------
--template
function LabelMetaFunctions:SetTemplate(template)
if (template.size) then
@@ -247,84 +247,83 @@ detailsFramework:Mixin(LabelMetaFunctions, detailsFramework.SetPointMixin)
end
------------------------------------------------------------------------------------------------------------
--> object constructor
function detailsFramework:CreateLabel(parent, text, size, color, font, member, name, layer)
return detailsFramework:NewLabel(parent, nil, name, member, text, font, size, color, layer)
end
--object constructor
function detailsFramework:NewLabel(parent, container, name, member, text, font, size, color, layer)
if (not parent) then
return error("Details! Framework: parent not found.", 2)
end
if (not container) then
container = parent
function detailsFramework:CreateLabel(parent, text, size, color, font, member, name, layer)
return detailsFramework:NewLabel(parent, nil, name, member, text, font, size, color, layer)
end
if (not name) then
name = "DetailsFrameworkLabelNumber" .. detailsFramework.LabelNameCounter
detailsFramework.LabelNameCounter = detailsFramework.LabelNameCounter + 1
end
function detailsFramework:NewLabel(parent, container, name, member, text, font, size, color, layer)
if (not parent) then
return error("Details! Framework: parent not found.", 2)
end
if (not container) then
container = parent
end
if (name:find("$parent")) then
local parentName = detailsFramework.GetParentName(parent)
name = name:gsub("$parent", parentName)
end
if (not name) then
name = "DetailsFrameworkLabelNumber" .. detailsFramework.LabelNameCounter
detailsFramework.LabelNameCounter = detailsFramework.LabelNameCounter + 1
end
local LabelObject = {type = "label", dframework = true}
if (name:find("$parent")) then
local parentName = detailsFramework.GetParentName(parent)
name = name:gsub("$parent", parentName)
end
if (member) then
parent[member] = LabelObject
end
local labelObject = {type = "label", dframework = true}
if (parent.dframework) then
parent = parent.widget
end
if (member) then
parent[member] = labelObject
end
if (container.dframework) then
container = container.widget
end
if (parent.dframework) then
parent = parent.widget
end
font = font == "" and "GameFontHighlightSmall" or font or "GameFontHighlightSmall"
if (container.dframework) then
container = container.widget
end
LabelObject.label = parent:CreateFontString(name, layer or "OVERLAY", font)
LabelObject.widget = LabelObject.label
LabelObject.label.MyObject = LabelObject
font = font == "" and "GameFontHighlightSmall" or font or "GameFontHighlightSmall"
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(...)
labelObject.label = parent:CreateFontString(name, layer or "OVERLAY", font)
labelObject.widget = labelObject.label
labelObject.label.MyObject = labelObject
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
end
LabelObject.label:SetText(text)
labelObject.label:SetText(text)
labelObject.label:SetJustifyH("left")
if (color) then
local r, g, b, a = detailsFramework:ParseColors(color)
LabelObject.label:SetTextColor(r, g, b, a)
end
if (color) then
local r, g, b, a = detailsFramework:ParseColors(color)
labelObject.label:SetTextColor(r, g, b, a)
end
if (size and type(size) == "number") then
detailsFramework:SetFontSize(LabelObject.label, size)
end
if (size and type(size) == "number") then
detailsFramework:SetFontSize(labelObject.label, size)
end
LabelObject.HookList = {
}
labelObject.HookList = {}
LabelObject.label:SetJustifyH("LEFT")
setmetatable(labelObject, LabelMetaFunctions)
setmetatable(LabelObject, LabelMetaFunctions)
--if template has been passed as the third parameter
if (size and type(size) == "table") then
labelObject:SetTemplate(size)
end
--if template has been passed as the third parameter
if (size and type(size) == "table") then
LabelObject:SetTemplate(size)
end
return LabelObject
end
return labelObject
end