22 const char *
TypeName()
const override {
return "PanelGroupClose"; }
51 const char *
TypeName()
const override {
return "PanelGroupTab"; }
75 std::vector<PanelGroupTabNode *>
Tabs;
90 const char *
TypeName()
const override {
return "PanelGroup"; }
资源的强类型引用,同时覆盖持久化 ID 与运行时索引两种边界。
Definition ResourceRef.h:36
Definition ImageNode.h:36
Definition PanelGroupNode.h:15
PanelGroupCloseNode(PanelGroupNode &group)
Definition PanelGroupNode.cpp:79
const char * TypeName() const override
Definition PanelGroupNode.h:22
EventReply OnMouseDown(MouseMovArgs args) override
Definition PanelGroupNode.cpp:114
void OnVisualStateChanged() override
Definition PanelGroupNode.cpp:106
ImageNode * IconNode
Definition PanelGroupNode.h:18
PanelGroupNode * Group
Definition PanelGroupNode.h:17
Definition PanelGroupNode.h:64
bool SetProperty(const std::string &name, const std::string &value) override
Definition PanelGroupNode.cpp:448
BaseNode * ContentHost() override
Definition PanelGroupNode.h:82
bool SwapPanels(size_t firstIndex, size_t secondIndex)
Definition PanelGroupNode.cpp:384
RectNode * HeaderNode
Definition PanelGroupNode.h:71
RectNode * TabBarNode
Definition PanelGroupNode.h:72
std::vector< PanelGroupTabNode * > Tabs
Definition PanelGroupNode.h:75
RectNode * DragHandleNode
Definition PanelGroupNode.h:70
void UpdateSelectionVisuals()
Definition PanelGroupNode.cpp:455
size_t ActivePanel
Definition PanelGroupNode.h:66
const char * TypeName() const override
Definition PanelGroupNode.h:90
RectNode * ContentSeparatorNode
Definition PanelGroupNode.h:69
bool HasInteractiveGeometry() const
Definition PanelGroupNode.cpp:377
bool ActivatePanel(size_t panelIndex)
Definition PanelGroupNode.cpp:317
PanelGroupCloseNode * CloseButtonNode
Definition PanelGroupNode.h:68
std::unique_ptr< PanelNode > RemovePanel(size_t panelIndex)
Definition PanelGroupNode.cpp:406
BaseNode * AddChild(std::unique_ptr< BaseNode > child) override
Definition PanelGroupNode.cpp:325
bool CloseRequested
Definition PanelGroupNode.h:67
PanelNode * AddPanel(std::unique_ptr< PanelNode > panel)
Definition PanelGroupNode.cpp:335
PanelGroupNode()
Definition PanelGroupNode.cpp:223
std::vector< PanelNode * > Panels
Definition PanelGroupNode.h:74
BaseNode * PagesNode
Definition PanelGroupNode.h:73
Definition PanelGroupNode.h:32
PanelGroupTabNode(PanelGroupNode &group, size_t panelIndex, const std::string &title, const std::string &iconSource)
Definition PanelGroupNode.cpp:123
PanelGroupNode * Group
Definition PanelGroupNode.h:34
bool SetIcon(const std::string &iconSource)
Definition PanelGroupNode.cpp:206
EventReply OnMouseDown(MouseMovArgs args) override
Definition PanelGroupNode.cpp:197
void RefreshVisualState()
Definition PanelGroupNode.cpp:195
TextNode * LabelNode
Definition PanelGroupNode.h:36
void SetTitle(const std::string &title)
Definition PanelGroupNode.cpp:214
size_t PanelIndex
Definition PanelGroupNode.h:38
void OnVisualStateChanged() override
Definition PanelGroupNode.cpp:184
const char * TypeName() const override
Definition PanelGroupNode.h:51
ImageNode * IconNode
Definition PanelGroupNode.h:35
RectNode * SelectionNode
Definition PanelGroupNode.h:37
Definition PanelNode.h:19
Definition Application.h:18
UIIcon
Definition ImageNode.h:10
EventReply
Definition Event.h:13