Stellarium  0.17.0
Public Member Functions | Protected Member Functions | Protected Attributes
TuiNode Class Reference

TuiNode objects are linked together in a network of nodes to form the structure of a menu which may be navigated using the cursor keys. More...

#include <TuiNode.hpp>

Public Member Functions

 TuiNode (const QString &text, TuiNode *parent=Q_NULLPTR, TuiNode *prev=Q_NULLPTR)
 Create a TuiNode. More...
 
virtual TuiNodeResponse handleKey (int key)
 
virtual TuiNodeResponse navigation (int key)
 
virtual QString getDisplayText () const
 
virtual TuiNode * getParentNode () const
 
virtual void setParentNode (TuiNode *n)
 
virtual TuiNode * getChildNode () const
 
virtual void setChildNode (TuiNode *n)
 This also takes ownership of the child through OObject->setParent.
 
virtual TuiNode * getPrevNode () const
 
virtual void setPrevNode (TuiNode *n)
 
virtual TuiNode * getNextNode () const
 
virtual void setNextNode (TuiNode *n)
 
virtual void loopToTheLast ()
 Set prevNode to the last of the chain of nextNode-s. More...
 
int getNodeNumber () const
 
QList< int > getAncestorsNumbers () const
 

Protected Member Functions

void updateNodeNumber ()
 Updates nodeNumber, ancestorNumbers and prefixText.
 

Protected Attributes

TuiNode * parentNode
 
TuiNode * childNode
 
TuiNode * prevNode
 
TuiNode * nextNode
 
QString prefixText
 Text of the prefix containing the hierarchical node number.
 
QString displayText
 
int nodeNumber
 Number of the node in the current menu. More...
 
QList< int > ancestorsNumbers
 Contains the numbers of the parent nodes in the hierarchy. More...
 

Detailed Description

Each node has a single line of text which will be displayed when a node is active. Depending on the sub-class for a particular node, it may be used to edit data of one sort of another.

Constructor & Destructor Documentation

TuiNode::TuiNode ( const QString &  text,
TuiNode *  parent = Q_NULLPTR,
TuiNode *  prev = Q_NULLPTR 
)
Parameters
textthe text to display for this node
parentthe node for the parent menu item
prevthe previous node in the current menu (typically shares the same parent)

Member Function Documentation

virtual void TuiNode::loopToTheLast ( )
virtual

Call for the first node of a menu after all others have been added.

Field Documentation

QList<int> TuiNode::ancestorsNumbers
protected

The last element is the number of the node in the current menu.

int TuiNode::nodeNumber
protected

Automatically set to 1 if there is no prevNode.