#include <Position_InputNode.hpp>
Classes | |
class | Tester |
Public Attributes | |
ClientMarker | cm |
PrivValAttr< bool > | attr_hover |
Public Attributes inherited from iv::InputNode | |
ClientMarker | cm |
Public Attributes inherited from iv::InputEvent | |
ClientMarker | cm |
PrivValAttr< bool > | attr_eventEnabled |
PrivValAttr< Activator > | attr_activation |
PrivValAttr< bool > | attr_hot |
PrivField< Activator > | field_press |
PrivField< Activator > | field_release |
PrivField< SumAgg< int > > | field_duration |
Additional Inherited Members | |
Protected Member Functions inherited from iv::InputEvent | |
void | ie_start_duration () |
void | ie_stop_duration () |
void | ie_trigger () |
void | ie_start_activation () |
void | ie_stop_activation (bool real) |
Protected Member Functions inherited from iv::PrivValAttr_Owner | |
template<class T > | |
void | Attribute_Set (PrivValAttr_I< T > *, T const &) |
template<class T > | |
void | Attribute_SetMode (PrivValAttr_I< T > *, Attribute::ValueMode) |
virtual void | PrivValAttr_Modified (Attribute *) |
Detailed Description
NOTE - possible optimization: Disable KeyInputEvent if cursor is not on this item (on_picking_left was called). This needs testing, if it will realy be faster (removing and adding KeyInputEvent to InputEventSystem takes some performance too).
Definition at line 16 of file Position_InputNode.hpp.
Constructor & Destructor Documentation
◆ Position_InputNode()
iv::Position_InputNode::Position_InputNode | ( | Instance * | inst, |
Tester * | tester, | ||
bool | keeps_press_in_offspace | ||
) |
Positional_input_name označuje nějaké binární tlačítko, kte kterému je připojena informace o pozici (víceméně tlačítka myši). Enable keeps_press_in_offspace for drag and drop items so they do not lose activation by mistake.
Definition at line 7 of file Position_InputNode.cpp.
◆ ~Position_InputNode()
iv::Position_InputNode::~Position_InputNode | ( | ) |
Definition at line 32 of file Position_InputNode.cpp.
Member Function Documentation
◆ status()
void iv::Position_InputNode::status | ( | iv::TableDebugView * | view | ) |
Definition at line 36 of file Position_InputNode.cpp.
◆ input_id() [1/2]
void iv::Position_InputNode::input_id | ( | InputId | val | ) |
Definition at line 50 of file Position_InputNode.cpp.
◆ input_id() [2/2]
InputId iv::Position_InputNode::input_id | ( | ) |
Definition at line 56 of file Position_InputNode.cpp.
◆ fallthrough_enabled() [1/2]
void iv::Position_InputNode::fallthrough_enabled | ( | bool | val | ) |
Defaults to false. If this is true, the event will only accept one key at time. So if two or more keys are pressed for the same InputId simultaneously, only one will be accepted by this event and the rest will fall through to events that are below this one in InputNode hierarchy.
Definition at line 61 of file Position_InputNode.cpp.
◆ fallthrough_enabled() [2/2]
bool iv::Position_InputNode::fallthrough_enabled | ( | ) |
Definition at line 67 of file Position_InputNode.cpp.
◆ input_position_screen()
int2 iv::Position_InputNode::input_position_screen | ( | ) |
Definition at line 97 of file Position_InputNode.cpp.
◆ interruptActivation()
void iv::Position_InputNode::interruptActivation | ( | ) |
Activation manually interrupted from game code. Should work the same as non-real release. Called when InputEvent implementor changes meaning, so that field_release is not triggered if the event was pressed when the meaning of the InputEvent was different.
Definition at line 296 of file Position_InputNode.cpp.
◆ instance()
Instance * iv::InputNode::instance |
Definition at line 22 of file InputNode.cpp.
Member Data Documentation
◆ cm
ClientMarker iv::Position_InputNode::cm |
Definition at line 29 of file Position_InputNode.hpp.
◆ attr_hover
PrivValAttr< bool > iv::Position_InputNode::attr_hover |
Definition at line 55 of file Position_InputNode.hpp.
The documentation for this class was generated from the following files:
- ivorium_systems/InputSystem/Position_InputNode.hpp
- ivorium_systems/InputSystem/Position_InputNode.cpp