Container that divides its space between children according to their priorities. More...
#include <Divider.hpp>
Public Attributes | |
ClientMarker | cm |
DirtyAttr< Axis > | attr_axis |
DirtyAttr< AxisOrder > | attr_axisOrder |
Public Attributes inherited from iv::VectorChildrenElem< DividerSlot > | |
ClientMarker | cm |
Public Attributes inherited from iv::Elem | |
ClientMarker | cm |
DirtyAttr< bool > | attr_enabled |
DirtyAttr< float4x4 > | modelTransform |
DirtyAttr< ShaderScissor > | scissor |
Public Attributes inherited from iv::InputNode | |
ClientMarker | cm |
Public Attributes inherited from iv::SlotChild | |
ClientMarker | cm |
DirtyAttr< float3 > | expectedSize |
DirtyAttr< float3 > | preferredSize |
DirtyAttr< float3 > | size |
Public Attributes inherited from iv::Pickable | |
ClientMarker | cm |
Protected Member Functions | |
virtual void | first_pass_impl (ElementRenderer *) override |
virtual void | second_pass_impl (ElementRenderer *) override |
Protected Member Functions inherited from iv::VectorChildrenElem< DividerSlot > | |
virtual void | elem_eachChild (std::function< void(Elem *) > const &) override |
virtual void | elem_childDisconnect (Elem *) override |
virtual void | input_eachChild (std::function< void(InputNode *) > const &f) override |
virtual void | input_childDisconnect (InputNode *child) override |
Protected Member Functions inherited from iv::InputNode | |
virtual bool | input_trigger_process (InputRoot *root, Input::DeviceKey key) |
virtual void | input_process (InputRoot *root, Input::DeviceKey key, bool &press, bool &real, bool &offspace) |
Additional Inherited Members | |
Protected Attributes inherited from iv::VectorChildrenElem< DividerSlot > | |
std::vector< DividerSlot * > | children |
bool | children_dirty |
Detailed Description
Container that divides its space between children according to their priorities.
Axis along which the space will be divided must be set. Children with higher priority (lower order) will get required space before children with lower priority (higher order). Each child has two orders - DividerSlot::lowerOrder is used when the slot is smaller than its preferred size and DividerSlot::higherOrder is used to allow child to resize above its preferred size.
Example:
Definition at line 71 of file Divider.hpp.
Constructor & Destructor Documentation
◆ Divider()
iv::Divider::Divider | ( | Instance * | inst | ) |
Definition at line 40 of file Divider.cpp.
Member Function Documentation
◆ status()
void iv::Divider::status | ( | iv::TableDebugView * | view | ) |
Definition at line 63 of file Divider.cpp.
◆ axis()
Definition at line 51 of file Divider.cpp.
◆ axisOrder()
Definition at line 57 of file Divider.cpp.
◆ first_pass_impl()
|
overrideprotectedvirtual |
Implements iv::Elem.
Definition at line 74 of file Divider.cpp.
◆ second_pass_impl()
|
overrideprotectedvirtual |
Reimplemented from iv::Elem.
Definition at line 238 of file Divider.cpp.
◆ instance()
Member Data Documentation
◆ cm
ClientMarker iv::Divider::cm |
Definition at line 75 of file Divider.hpp.
◆ attr_axis
Definition at line 82 of file Divider.hpp.
◆ attr_axisOrder
Definition at line 83 of file Divider.hpp.
The documentation for this class was generated from the following files:
- ivorium_graphics/Elements/Divider.hpp
- ivorium_graphics/Elements/Divider.cpp