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

#include <SceneNode.h>

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

Public 成员函数

 SceneNode ()
 
const charTypeName () const override
 
bool SetProperty (const std::string &name, const std::string &value) override
 
const BaseNodeViewport () const
 
bool HasInteractiveGeometry () const
 
- 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
 
virtual BaseNodeContentHost ()
 
bool Contains (float x, float y) const
 
bool Contains (MouseMovArgs args) const
 
virtual BaseNodeAddChild (std::unique_ptr< BaseNode > child)
 
void RemoveChildrenFrom (size_t first)
 
virtual void OnAfterLayout ()
 
virtual void Synchronize ()
 
- 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 属性

RectNodeTitleBarNode = nullptr
 
TextNodeTitleNode = nullptr
 
SceneViewportNodeViewportNode = nullptr
 
- 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 属性

float TitleHeight = 0.0f
 

额外继承的成员函数

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

详细描述

编辑器中的 3D 场景视口占位节点。

SceneNode 自身不创建 UIObject;标题栏由普通 UI 子节点绘制,后端把场景先画入 离屏纹理,再依据 ViewportNode 的布局框合成到交换链。这样标题拖拽不会穿透相机。

构造及析构函数说明

◆ SceneNode()

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

成员函数说明

◆ HasInteractiveGeometry()

bool SceneNode::HasInteractiveGeometry ( ) const

即时声明不得覆盖用户拖动或拉伸后提交的几何。

◆ SetProperty()

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

重载 z8::ui::BehaviorNode .

函数调用图:

◆ TypeName()

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

重载 z8::ui::BaseNode .

◆ Viewport()

const BaseNode & z8::ui::SceneNode::Viewport ( ) const
inline

后端只在内容区合成场景,标题栏始终由 UI 通道覆盖绘制。

类成员变量说明

◆ TitleBarNode

RectNode* z8::ui::SceneNode::TitleBarNode = nullptr

◆ TitleHeight

float z8::ui::SceneNode::TitleHeight = 0.0f
private

构造时取自 Theme;保留实例值以支持声明层覆盖标题高度。

◆ TitleNode

TextNode* z8::ui::SceneNode::TitleNode = nullptr

◆ ViewportNode

SceneViewportNode* z8::ui::SceneNode::ViewportNode = nullptr

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