slot 0.0.1
A real time UI render framework
载入中...
搜索中...
未找到
Public 成员函数 | Public 属性 | Private 成员函数 | 所有成员列表
z8::ui::PanelGroupNode类 参考final

#include <PanelGroupNode.h>

类 z8::ui::PanelGroupNode 继承关系图:
Inheritance graph
[图例]
z8::ui::PanelGroupNode 的协作图:
Collaboration graph
[图例]

Public 成员函数

 PanelGroupNode ()
 
bool ActivatePanel (size_t panelIndex)
 
BaseNodeAddChild (std::unique_ptr< BaseNode > child) override
 
PanelNodeAddPanel (std::unique_ptr< PanelNode > panel)
 
BaseNodeContentHost () override
 
bool HasInteractiveGeometry () const
 
std::unique_ptr< PanelNodeRemovePanel (size_t panelIndex)
 
bool SetProperty (const std::string &name, const std::string &value) override
 
bool SwapPanels (size_t firstIndex, size_t secondIndex)
 
const charTypeName () const override
 
- Public 成员函数 继承自 z8::ui::RectNode
 RectNode ()
 
const charTypeName () const override
 
- Public 成员函数 继承自 z8::ui::DrawNode
 DrawNode (std::unique_ptr< UIObject > O)
 
 ~DrawNode () override
 
bool SetColor (const DirectX::XMFLOAT4 &color) const
 
bool SetBorder (const DirectX::XMFLOAT4 &color, float width) const
 
bool SetCornerRadius (float radius) const
 
void Synchronize () override
 
- Public 成员函数 继承自 z8::ui::BehaviorNode
 ~BehaviorNode () override
 
EventReply DispatchMouseDown (const MouseMovArgs &args)
 
bool DispatchMouseMove (const MouseMovArgs &args)
 
bool DispatchMouseDrag (const MouseMovArgs &args)
 
bool DispatchMouseUp (const MouseMovArgs &args)
 
bool DispatchMouseWheel (MouseWheelArgs args)
 
MouseCursor QueryMouseCursor (const MouseMovArgs &args) const
 
void DispatchAfterLayout () override
 
void DispatchBeforeLayout (float width, float height) const
 
void DispatchDragStarted (const MouseMovArgs &args) const
 
void DispatchDragCompleted (const MouseMovArgs &args) const
 
void CancelPointerCapture ()
 
IBehaviorAddBehavior (std::unique_ptr< IBehavior > behavior)
 
bool RemoveBehavior (IBehavior *behavior)
 
void SetHovered (bool hovered)
 
void SetPressed (bool pressed)
 
void SetFocused (bool focused)
 
template<typename T , typename... Args>
TAddBehavior (Args &&...args)
 
template<typename T >
TGetBehavior ()
 
template<typename T >
const TGetBehavior () const
 
- Public 成员函数 继承自 z8::ui::BaseNode
 BaseNode ()
 
 ~BaseNode () override
 
 BaseNode (const BaseNode &)=delete
 
BaseNodeoperator= (const BaseNode &)=delete
 
virtual bool RoutesToScene () const
 
bool Contains (float x, float y) const
 
bool Contains (MouseMovArgs args) const
 
void RemoveChildrenFrom (size_t first)
 
virtual void OnAfterLayout ()
 
- Public 成员函数 继承自 z8::ui::IProperty
virtual ~IProperty ()=default
 
- Public 成员函数 继承自 z8::EventTarget
virtual ~EventTarget ()=default
 
virtual EventReply OnMouseDown (MouseMovArgs)
 
virtual EventReply OnMouseMove (MouseMovArgs)
 
virtual EventReply OnMouseDrag (MouseMovArgs)
 
virtual EventReply OnMouseUp (MouseMovArgs)
 
virtual EventReply OnMouseWheel (MouseWheelArgs)
 
virtual EventReply OnKeyDown (KeyArgs)
 
virtual EventReply OnKeyUp (KeyArgs)
 
virtual EventReply OnTextInput (wchar_t)
 
virtual MouseCursor GetMouseCursor (MouseMovArgs) const
 
virtual void OnPointerCaptureLost ()
 

Public 属性

size_t ActivePanel = 0
 
bool CloseRequested = false
 
PanelGroupCloseNodeCloseButtonNode = nullptr
 
RectNodeContentSeparatorNode = nullptr
 
RectNodeDragHandleNode = nullptr
 
RectNodeHeaderNode = nullptr
 
RectNodeTabBarNode = nullptr
 
BaseNodePagesNode = nullptr
 
std::vector< PanelNode * > Panels
 
std::vector< PanelGroupTabNode * > Tabs
 
- Public 属性 继承自 z8::ui::DrawNode
std::unique_ptr< UIObjectUO
 
bool OccludesEarlierText = false
 
- Public 属性 继承自 z8::ui::BehaviorNode
bool HitTestVisible = false
 
bool Hovered = false
 
bool Pressed = false
 
bool Focusable = false
 
bool Focused = false
 
std::vector< std::unique_ptr< IBehavior > > Behaviors
 
IBehaviorCapturedBehavior = nullptr
 
- Public 属性 继承自 z8::ui::BaseNode
std::string Key
 
LayoutStyle Style
 
LayoutBox Computed
 
BaseNodeParent = nullptr
 
std::vector< std::unique_ptr< BaseNode > > Children
 
float Left = 0.0f
 
float Top = 0.0f
 
float Width = 0.0f
 
float Height = 0.0f
 
float ChildOffsetX = 0.0f
 
float ChildOffsetY = 0.0f
 
bool ClipChildren = false
 
bool Visible = true
 
bool EffectiveVisible = true
 
bool LayoutManaged = false
 
ClipRect VisibleClip = {-100000.0f, -100000.0f, 100000.0f, 100000.0f}
 

Private 成员函数

void UpdateSelectionVisuals ()
 

额外继承的成员函数

- Protected 成员函数 继承自 z8::ui::BehaviorNode
virtual void OnVisualStateChanged ()
 
void ReleaseBehaviors ()
 

详细描述

Panel 的页签与 Dock 容器。

启用 Dock 的独立 Panel 会在索引布局树时自动包装为单页 Group。 Dock 拖动只从具体 Panel tab 开始;空白标题区不创建 Group Dock 手势。 组内所有页面占用同一内容矩形,但只有活动 Panel 可见且可命中。

构造及析构函数说明

◆ PanelGroupNode()

PanelGroupNode::PanelGroupNode ( )
函数调用图:

成员函数说明

◆ ActivatePanel()

bool PanelGroupNode::ActivatePanel ( size_t panelIndex)
函数调用图:
这是这个函数的调用关系图:

◆ AddChild()

BaseNode * PanelGroupNode::AddChild ( std::unique_ptr< BaseNode > child)
overridevirtual

转移子节点所有权并维护 Parent。复合容器可覆写该入口, 将声明子节点转发到内部内容宿主。

重载 z8::ui::BaseNode .

函数调用图:

◆ AddPanel()

PanelNode * PanelGroupNode::AddPanel ( std::unique_ptr< PanelNode > panel)
函数调用图:
这是这个函数的调用关系图:

◆ ContentHost()

BaseNode * z8::ui::PanelGroupNode::ContentHost ( )
inlineoverridevirtual

重载 z8::ui::BaseNode .

◆ HasInteractiveGeometry()

bool PanelGroupNode::HasInteractiveGeometry ( ) const

即时声明需保留 Group 已由用户拖动或拉伸提交的几何。

◆ RemovePanel()

std::unique_ptr< PanelNode > PanelGroupNode::RemovePanel ( size_t panelIndex)

移除指定页并选择相邻活动页;空 Group 会请求由 Layout 回收。

函数调用图:

◆ SetProperty()

bool PanelGroupNode::SetProperty ( const std::string & name,
const std::string & value )
overridevirtual

重载 z8::ui::DrawNode .

函数调用图:

◆ SwapPanels()

bool PanelGroupNode::SwapPanels ( size_t firstIndex,
size_t secondIndex )

交换两个页签及其 Panel 的排列位置,同时保持活动 Panel 身份不变。

函数调用图:

◆ TypeName()

const char * z8::ui::PanelGroupNode::TypeName ( ) const
inlineoverridevirtual

重载 z8::ui::BaseNode .

◆ UpdateSelectionVisuals()

void PanelGroupNode::UpdateSelectionVisuals ( )
private
这是这个函数的调用关系图:

类成员变量说明

◆ ActivePanel

size_t z8::ui::PanelGroupNode::ActivePanel = 0

◆ CloseButtonNode

PanelGroupCloseNode* z8::ui::PanelGroupNode::CloseButtonNode = nullptr

◆ CloseRequested

bool z8::ui::PanelGroupNode::CloseRequested = false

◆ ContentSeparatorNode

RectNode* z8::ui::PanelGroupNode::ContentSeparatorNode = nullptr

◆ DragHandleNode

RectNode* z8::ui::PanelGroupNode::DragHandleNode = nullptr

◆ HeaderNode

RectNode* z8::ui::PanelGroupNode::HeaderNode = nullptr

◆ PagesNode

BaseNode* z8::ui::PanelGroupNode::PagesNode = nullptr

◆ Panels

std::vector<PanelNode *> z8::ui::PanelGroupNode::Panels

◆ TabBarNode

RectNode* z8::ui::PanelGroupNode::TabBarNode = nullptr

◆ Tabs

std::vector<PanelGroupTabNode *> z8::ui::PanelGroupNode::Tabs

该类的文档由以下文件生成: