The GroupNode class provides common API for grouping child nodes.
More...
#include <avogadro/rendering/groupnode.h>
|
| enum | NodeType {
ALL = 0
,
NONE = -1
,
UI = 1
,
GEOMETRY = 2
} |
| |
|
|
| GroupNode (GroupNode *parent=nullptr) |
| |
| void | accept (Visitor &) override |
| |
| void | addChild (Node *node, NodeType ui=NodeType::GEOMETRY) |
| | Add a child node, this node will have its parent set and will be deleted by this node upon destruction.
|
| |
| void | addUIChild (Node *node) |
| | Add a child node, this node will have its parent set and will be deleted by this node upon destruction.
|
| |
| bool | removeChild (Node *node) |
| | Remove child node, this node will no longer be deleted.
|
| |
| Node * | child (size_t index) |
| | Get the child Node at the specified index.
|
| |
| bool | hasChild (Node *node) const |
| | check if the Node exists in this GroupNode.
|
| |
| size_t | childCount () const |
| |
|
std::list< NodeInfo > & | children () |
| | Get a reference to the child nodes list.
|
| |
|
const std::list< NodeInfo > & | children () const |
| |
|
void | clear () |
| | Remove all non UI-children.
|
| |
|
void | clearUI () |
| | Remove all UI-children.
|
| |
| const GroupNode * | parent () const |
| | Get a pointer to the node's parent.
|
| |
|
GroupNode * | parent () |
| |
| void | setVisible (bool visibility) |
| | Set the visibility of the node.
|
| |
| bool | isVisible () const |
| | Get the current visibility of the node.
|
| |
| template<typename T > |
| T * | cast () |
| | Attempt to dynamic_cast to specified node type.
|
| |
|
template<typename T > |
| const T * | cast () const |
| |
- Author
- Marcus D. Hanwell
The GroupNode may be used to group items together, but for most other purposes a more derived Node type would be the correct choice.
◆ accept()
Accept a visit from our friendly visitor.
Reimplemented from Node.
◆ addChild()
| void addChild |
( |
Node * |
node, |
|
|
NodeType |
ui = NodeType::GEOMETRY |
|
) |
| |
◆ addUIChild()
| void addUIChild |
( |
Node * |
node | ) |
|
◆ removeChild()
| bool removeChild |
( |
Node * |
node | ) |
|
- Parameters
-
- Returns
- True if the node was removed, false if it was not found.
◆ child()
| Node * child |
( |
size_t |
index | ) |
|
- Parameters
-
| index | The index of the child. |
- Returns
- A pointer to the child node, or nullptr if the index is out of range. time complexity: O(n)
◆ hasChild()
| bool hasChild |
( |
Node * |
node | ) |
const |
- Parameters
-
- Returns
- True if the node was found, false otherwise.
◆ childCount()
| size_t childCount |
( |
| ) |
const |
- Returns
- The number of child nodes contained by the GroupNode.
The documentation for this class was generated from the following file: