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

#include <ScrollBarNode.h>

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

Public 成员函数

 ScrollBarNode (ScrollBarOrientation orientation=ScrollBarOrientation::Vertical)
 
const charTypeName () const override
 
EventReply OnMouseDown (MouseMovArgs args) override
 
EventReply OnMouseDrag (MouseMovArgs args) override
 
EventReply OnMouseUp (MouseMovArgs args) override
 
void OnPointerCaptureLost () override
 
void OnAfterLayout () override
 
void SetMetrics (float viewportExtent, float contentExtent)
 
void SetValue (float value, bool notify=true)
 
- Public 成员函数 继承自 z8::ui::RectNode
 RectNode ()
 
- Public 成员函数 继承自 z8::ui::DrawNode
 DrawNode (std::unique_ptr< UIObject > O)
 
 ~DrawNode () override
 
bool SetProperty (const std::string &name, const std::string &value) 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
 
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)
 
- Public 成员函数 继承自 z8::ui::IProperty
virtual ~IProperty ()=default
 
- Public 成员函数 继承自 z8::EventTarget
virtual ~EventTarget ()=default
 
virtual EventReply OnMouseMove (MouseMovArgs)
 
virtual EventReply OnMouseWheel (MouseWheelArgs)
 
virtual EventReply OnKeyDown (KeyArgs)
 
virtual EventReply OnKeyUp (KeyArgs)
 
virtual EventReply OnTextInput (wchar_t)
 
virtual MouseCursor GetMouseCursor (MouseMovArgs) const
 

Public 属性

RectNodeThumbNode
 
ScrollBarOrientation Orientation
 
std::function< void(float)> ValueChanged
 
- 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 OnVisualStateChanged () override
 

Private 属性

float ViewportExtent = 0.0f
 
float ContentExtent = 0.0f
 
float Value = 0.0f
 
float Maximum = 0.0f
 
float DragScale = 0.0f
 
bool DraggingThumb = false
 

额外继承的成员函数

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

详细描述

独立滚动条复合控件。

它只负责 value/range、轨道分页和滑块捕获,不拥有被滚动内容;父级 ScrollView 通过 ValueChanged 同步内容偏移,避免滚动条依赖 Panel 的内部结构。

构造及析构函数说明

◆ ScrollBarNode()

ScrollBarNode::ScrollBarNode ( ScrollBarOrientation orientation = ScrollBarOrientation::Vertical)
explicit
函数调用图:

成员函数说明

◆ OnAfterLayout()

void ScrollBarNode::OnAfterLayout ( )
overridevirtual

重载 z8::ui::BaseNode .

函数调用图:

◆ OnMouseDown()

EventReply ScrollBarNode::OnMouseDown ( MouseMovArgs args)
overridevirtual

重载 z8::EventTarget .

函数调用图:

◆ OnMouseDrag()

EventReply ScrollBarNode::OnMouseDrag ( MouseMovArgs args)
overridevirtual

重载 z8::EventTarget .

函数调用图:

◆ OnMouseUp()

EventReply ScrollBarNode::OnMouseUp ( MouseMovArgs args)
overridevirtual

重载 z8::EventTarget .

◆ OnPointerCaptureLost()

void z8::ui::ScrollBarNode::OnPointerCaptureLost ( )
inlineoverridevirtual

重载 z8::EventTarget .

◆ OnVisualStateChanged()

void ScrollBarNode::OnVisualStateChanged ( )
overrideprivatevirtual

派生控件在状态变化时只重算主题色,不得改变布局或真实命中区域。

重载 z8::ui::BehaviorNode .

函数调用图:
这是这个函数的调用关系图:

◆ SetMetrics()

void ScrollBarNode::SetMetrics ( float viewportExtent,
float contentExtent )

更新 viewport/content 比例,并据此计算滑块长度和最大值。

函数调用图:
这是这个函数的调用关系图:

◆ SetValue()

void ScrollBarNode::SetValue ( float value,
bool notify = true )

设置经过夹紧的滚动值;notify 控制是否向 ScrollBehavior 回传。

这是这个函数的调用关系图:

◆ TypeName()

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

重载 z8::ui::RectNode .

类成员变量说明

◆ ContentExtent

float z8::ui::ScrollBarNode::ContentExtent = 0.0f
private

◆ DraggingThumb

bool z8::ui::ScrollBarNode::DraggingThumb = false
private

◆ DragScale

float z8::ui::ScrollBarNode::DragScale = 0.0f
private

◆ Maximum

float z8::ui::ScrollBarNode::Maximum = 0.0f
private

◆ Orientation

ScrollBarOrientation z8::ui::ScrollBarNode::Orientation

◆ ThumbNode

RectNode* z8::ui::ScrollBarNode::ThumbNode

◆ Value

float z8::ui::ScrollBarNode::Value = 0.0f
private

◆ ValueChanged

std::function<void(float)> z8::ui::ScrollBarNode::ValueChanged

◆ ViewportExtent

float z8::ui::ScrollBarNode::ViewportExtent = 0.0f
private

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