UGCProjects/GZJ/Script/UI/ChildWidgets/WBP_WidgetHeader.lua
2025-01-08 22:46:12 +08:00

49 lines
1.2 KiB
Lua

---@class WBP_WidgetHeader_C:UUserWidget
---@field Button_ClosePanel UButton
---@field TextBlock_Title UTextBlock
---@field bHideCloseButton bool
---@field TitleText FText
---@field UIType TEnumAsByte<EUIType>
--Edit Below--
local WBP_WidgetHeader = {
bInitDoOnce = false;
bIsCloseUITypeUI = true;
};
WBP_WidgetHeader.CloseUIFunc = nil;
function WBP_WidgetHeader:Construct()
UE.Log("[WBP_WidgetHeader:Construct]")
self.Button_ClosePanel.OnClicked:Add(WBP_WidgetHeader.OnClickCloseButton, self)
if self.bHideCloseButton then
self.Button_ClosePanel:SetVisibility(ESlateVisibility.Collapsed)
end
self.TextBlock_Title:SetText(self.TitleText)
end
-- function WBP_WidgetHeader:Tick(MyGeometry, InDeltaTime)
-- end
function WBP_WidgetHeader:Destruct()
self.Button_ClosePanel.OnClicked:Remove(WBP_WidgetHeader.OnClickCloseButton, self)
end
function WBP_WidgetHeader:OnClickCloseButton()
UE.Log("[WBP_WidgetHeader:OnClickCloseButton]")
if self.bIsCloseUITypeUI then
UIManager:ClosePanel(self.UIType)
else
if self.CloseUIFunc ~= nil then
self.CloseUIFunc()
end
end
end
function WBP_WidgetHeader:SetHeaderText(InText)
self.TextBlock_Title:SetText(InText)
end
return WBP_WidgetHeader;