#include <InputNode.hpp>

Public Member Functions

 InputNode (Instance *inst)
 
 ~InputNode ()
 
Instanceinstance () const
 
void status (iv::TableDebugView *view)
 
void inputEnabled (bool)
 
bool inputEnabled ()
 
void quiet (bool)
 
bool quiet () const
 
void input_deactivate ()
 
void input_treeRefresh ()
 
void input_setParent (InputNode *)
 
InputNodeinput_getParent ()
 
virtual InputRootinput_getRoot ()
 
virtual void input_eachChild (std::function< void(InputNode *) > const &)
 
virtual void input_childDisconnect (InputNode *)
 
bool input_trigger_visit (InputRoot *root, Input::DeviceKey key)
 
bool input_visit (InputRoot *root, Input::DeviceKey key, bool &press, bool &real, bool &offspace)
 

Public Attributes

ClientMarker cm
 

Protected Member Functions

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)
 

Friends

class InputSystem
 

Detailed Description

Order of traversal - lowest order child of root, then children of the child (recursively) then higher order children of root with their children.

Definition at line 25 of file InputNode.hpp.

Constructor & Destructor Documentation

◆ InputNode()

iv::InputNode::InputNode ( Instance inst)

Definition at line 7 of file InputNode.cpp.

◆ ~InputNode()

iv::InputNode::~InputNode ( )

Definition at line 16 of file InputNode.cpp.

Member Function Documentation

◆ instance()

Instance * iv::InputNode::instance ( ) const

Definition at line 22 of file InputNode.cpp.

◆ status()

void iv::InputNode::status ( iv::TableDebugView view)

Definition at line 27 of file InputNode.cpp.

◆ inputEnabled() [1/2]

void iv::InputNode::inputEnabled ( bool  value)

Disables node and its whole subtree.

Definition at line 53 of file InputNode.cpp.

◆ inputEnabled() [2/2]

bool iv::InputNode::inputEnabled ( )

Definition at line 62 of file InputNode.cpp.

◆ quiet() [1/2]

void iv::InputNode::quiet ( bool  val)

This node being disconnected from scene tree will not be reported in ConsistencyChecks log.

Definition at line 79 of file InputNode.cpp.

◆ quiet() [2/2]

bool iv::InputNode::quiet ( ) const

Definition at line 84 of file InputNode.cpp.

◆ input_deactivate()

void iv::InputNode::input_deactivate ( )

Called when InputNode is removed from the tree.

Definition at line 73 of file InputNode.cpp.

◆ input_treeRefresh()

void iv::InputNode::input_treeRefresh ( )

Definition at line 67 of file InputNode.cpp.

◆ input_setParent()

void iv::InputNode::input_setParent ( InputNode parent)

Parents InputNode::childDisconnect is called either from destructor and when the node is about to be registered as child to another parent. Important: Do not call this directly from general outside code. It is called from containers to setup callbacks about when the child gets disconnected..

Definition at line 40 of file InputNode.cpp.

◆ input_getParent()

InputNode * iv::InputNode::input_getParent ( )

Definition at line 35 of file InputNode.cpp.

◆ input_getRoot()

InputRoot * iv::InputNode::input_getRoot ( )
virtual

Reimplemented in iv::SourceInputNode.

Definition at line 45 of file InputNode.cpp.

◆ input_eachChild()

virtual void iv::InputNode::input_eachChild ( std::function< void(InputNode *) > const &  )
inlinevirtual

Should consistently give the same nodes and in the same order, if they could react to the same inputs, causing need for priority resolution. When the given children change, InputNode::input_deactivate should be called on all children that were removed from the set and input_treeChanged should be called

Reimplemented in iv::ProtectedSlot, iv::VectorChildrenElem< ChildT >, iv::VectorChildrenElem< TextSegment >, iv::VectorChildrenElem< SlotChild >, iv::VectorChildrenElem< DividerSlot >, iv::OneChildElem< ChildT >, iv::OneChildElem< SlotChild >, iv::Elem, and iv::SourceInputNode.

Definition at line 81 of file InputNode.hpp.

◆ input_childDisconnect()

◆ input_trigger_visit()

bool iv::InputNode::input_trigger_visit ( InputRoot root,
Input::DeviceKey  key 
)

Returns true if we should continue to following nodes.

Definition at line 110 of file InputNode.cpp.

◆ input_visit()

bool iv::InputNode::input_visit ( InputRoot root,
Input::DeviceKey  key,
bool &  press,
bool &  real,
bool &  offspace 
)

This sends input to self and all children in correct order until some InputNode processes it. Returns true if we should continue to following nodes.

Definition at line 90 of file InputNode.cpp.

◆ input_trigger_process()

virtual bool iv::InputNode::input_trigger_process ( InputRoot root,
Input::DeviceKey  key 
)
inlineprotectedvirtual

Returns true if we should continue to following nodes.

Reimplemented in iv::Key_InputNode, iv::Scroller, iv::Char_InputNode, iv::SimpleDiagnostics, and iv::BlockAll_InputNode.

Definition at line 104 of file InputNode.hpp.

◆ input_process()

virtual void iv::InputNode::input_process ( InputRoot root,
Input::DeviceKey  key,
bool &  press,
bool &  real,
bool &  offspace 
)
inlineprotectedvirtual

This should behave just like a set - group of keys is accepted, all others are not accepted. When this changes, request_refresh() on root should be called to apply the change. Returns true if we should continue to following nodes.

Reimplemented in iv::Key_InputNode, and iv::Scroller.

Definition at line 111 of file InputNode.hpp.

Friends And Related Function Documentation

◆ InputSystem

friend class InputSystem
friend

Definition at line 28 of file InputNode.hpp.

Member Data Documentation

◆ cm

ClientMarker iv::InputNode::cm

Definition at line 29 of file InputNode.hpp.


The documentation for this class was generated from the following files: