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. More...
|
|
void | addUIChild (Node *node) |
| Add a child node, this node will have its parent set and will be deleted by this node upon destruction. More...
|
|
bool | removeChild (Node *node) |
| Remove child node, this node will no longer be deleted. More...
|
|
Node * | child (size_t index) |
| Get the child Node at the specified index. More...
|
|
bool | hasChild (Node *node) const |
| check if the Node exists in this GroupNode. More...
|
|
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.
|
|
virtual void | accept (Visitor &) |
|
const GroupNode * | parent () const |
| Get a pointer to the node's parent. More...
|
|
GroupNode * | parent () |
|
void | setVisible (bool visibility) |
| Set the visibility of the node. More...
|
|
bool | isVisible () const |
| Get the current visibility of the node. More...
|
|
template<typename T > |
T * | cast () |
| Attempt to dynamic_cast to specified node type. More...
|
|
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: