Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::ModifierKeys Class Reference

Various modifier keys that could be active for an InputEvent. More...

#include <hps.h>

Collaboration diagram for HPS::ModifierKeys:

Public Member Functions

 ModifierKeys ()
 The default constructor creates a ModifierKeys object with no modifiers active. More...
 
bool Equals (ModifierKeys const &in_that) const
 Check if the source object is equivalent to this object. More...
 
bool operator== (ModifierKeys const &in_that) const
 Check if the source object is equivalent to this object. More...
 
bool operator!= (ModifierKeys const &in_that) const
 Check if the source object is not equivalent to this object. More...
 
bool None () const
 Indicates whether no modifiers are active. More...
 
bool Shift () const
 Indicates whether any shift key (right or left) is active. More...
 
bool Control () const
 Indicates whether any control key (right or left) is active. More...
 
bool Alt () const
 Indicates whether any alt key (right or left) is active. More...
 
bool Meta () const
 Indicates whether any meta key (right or left) is active. More...
 
bool CapsLock () const
 Indicates whether the caps lock button is active. More...
 
bool NumLock () const
 Indicates whether the num lock button is active. More...
 
bool ScrollLock () const
 Indicates whether the scroll lock button is active. More...
 
bool RightShift () const
 Indicates whether the right shift button is active. More...
 
bool LeftShift () const
 Indicates whether the left shift button is active. More...
 
bool RightControl () const
 Indicates whether the right control button is active. More...
 
bool LeftControl () const
 Indicates whether the left control button is active. More...
 
bool RightAlt () const
 Indicates whether the right alt button is active. More...
 
bool LeftAlt () const
 Indicates whether the left alt button is active. More...
 
bool RightMeta () const
 Indicates whether the right meta button is active. More...
 
bool LeftMeta () const
 Indicates whether the left meta button is active. More...
 
bool HasAll (ModifierKeys const &in_keys) const
 Indicates whether all modifiers of the input parameter are present in this object. More...
 
bool HasAny (ModifierKeys const &in_keys) const
 Indicates whether any modifiers of the input parameter are present in this object. More...
 
void Shift (bool in_state)
 Sets the state of the shift key modifier. More...
 
void Control (bool in_state)
 Sets the state of the control key modifier. More...
 
void Alt (bool in_state)
 Sets the state of the alt key modifier. More...
 
void Meta (bool in_state)
 Sets the state of the meta key modifier. More...
 
void CapsLock (bool in_state)
 Sets the state of the caps lock key modifier. More...
 
void NumLock (bool in_state)
 Sets the state of the num lock key modifier. More...
 
void ScrollLock (bool in_state)
 Sets the state of the scroll lock key modifier. More...
 
void RightShift (bool in_state)
 Sets the state of the right shift key modifier. More...
 
void LeftShift (bool in_state)
 Sets the state of the left shift key modifier. More...
 
void RightControl (bool in_state)
 Sets the state of the right control key modifier. More...
 
void LeftControl (bool in_state)
 Sets the state of the left control key modifier. More...
 
void RightAlt (bool in_state)
 Sets the state of the right alt key modifier. More...
 
void LeftAlt (bool in_state)
 Sets the state of the left alt key modifier. More...
 
void RightMeta (bool in_state)
 Sets the state of the right meta key modifier. More...
 
void LeftMeta (bool in_state)
 Sets the state of the left meta key modifier. More...
 
ModifierKeys operator+ (ModifierKeys const &in_modifiers_to_merge)
 Merges the buttons from two ModifierKeys objects. More...
 
ModifierKeys operator- (ModifierKeys const &in_modifiers_to_remove)
 Creates a new ModifierKeys object representing the removal of the modifiers of another ModifierKeys object from this object. More...
 
ModifierKeysoperator+= (ModifierKeys const &in_modifiers_to_merge)
 Merges the modifiers from another ModifierKeys object into this one. More...
 
ModifierKeysoperator-= (ModifierKeys const &in_modifiers_to_remove)
 Removes the modifiers of another ModifierKeys object from this one. More...
 

Static Public Member Functions

static ModifierKeys KeyShift ()
 Creates a new ModifierKeys object with the shift key active. More...
 
static ModifierKeys KeyControl ()
 Creates a new ModifierKeys object with the control key active. More...
 
static ModifierKeys KeyAlt ()
 Creates a new ModifierKeys object with the alt key active. More...
 
static ModifierKeys KeyMeta ()
 Creates a new ModifierKeys object with the meta key active. More...
 
static ModifierKeys KeyCapsLock ()
 Creates a new ModifierKeys object with the caps lock key active. More...
 
static ModifierKeys KeyNumLock ()
 Creates a new ModifierKeys object with the num lock key active. More...
 
static ModifierKeys KeyScrollLock ()
 Creates a new ModifierKeys object with the scroll lock key active. More...
 
static ModifierKeys KeyRightShift ()
 Creates a new ModifierKeys object with the right shift key active. More...
 
static ModifierKeys KeyLeftShift ()
 Creates a new ModifierKeys object with the left shift key active. More...
 
static ModifierKeys KeyRightControl ()
 Creates a new ModifierKeys object with the right control key active. More...
 
static ModifierKeys KeyLeftControl ()
 Creates a new ModifierKeys object with the left control key active. More...
 
static ModifierKeys KeyRightAlt ()
 Creates a new ModifierKeys object with the right alt key active. More...
 
static ModifierKeys KeyLeftAlt ()
 Creates a new ModifierKeys object with the left alt key active. More...
 
static ModifierKeys KeyRightMeta ()
 Creates a new ModifierKeys object with the right meta key active. More...
 
static ModifierKeys KeyLeftMeta ()
 Creates a new ModifierKeys object with the left meta key active. More...
 

Protected Types

enum  Modifiers {
  _key_none = 0x0000,
  _key_caps_lock = 0x0001,
  _key_num_lock = 0x0002,
  _key_scroll_lock = 0x0004,
  _key_right_shift = 0x0008,
  _key_left_shift = 0x0010,
  _key_right_control = 0x0020,
  _key_left_control = 0x0040,
  _key_right_alt = 0x0080,
  _key_left_alt = 0x0100,
  _key_right_meta = 0x0200,
  _key_left_meta = 0x0400,
  _key_shift = _key_left_shift | _key_right_shift,
  _key_control = _key_left_control | _key_right_control,
  _key_alt = _key_left_alt | _key_right_alt,
  _key_meta = _key_left_meta | _key_right_meta
}
 Modifier key bitfield constants. More...
 

Protected Attributes

int modifiers
 

Detailed Description

Various modifier keys that could be active for an InputEvent.

Member Enumeration Documentation

◆ Modifiers

Modifier key bitfield constants.

Enumerator
_key_none 
_key_caps_lock 
_key_num_lock 
_key_scroll_lock 
_key_right_shift 
_key_left_shift 
_key_right_control 
_key_left_control 
_key_right_alt 
_key_left_alt 
_key_right_meta 
_key_left_meta 
_key_shift 
_key_control 
_key_alt 
_key_meta 

Constructor & Destructor Documentation

◆ ModifierKeys()

HPS::ModifierKeys::ModifierKeys ( )
inline

The default constructor creates a ModifierKeys object with no modifiers active.

Member Function Documentation

◆ Alt() [1/2]

bool HPS::ModifierKeys::Alt ( ) const
inline

Indicates whether any alt key (right or left) is active.

Returns
true if any alt key is active, false otherwise.
Here is the caller graph for this function:

◆ Alt() [2/2]

void HPS::ModifierKeys::Alt ( bool  in_state)
inline

Sets the state of the alt key modifier.

Parameters
in_statetrue if at least one alt key (right or left) is active, false otherwise.

◆ CapsLock() [1/2]

bool HPS::ModifierKeys::CapsLock ( ) const
inline

Indicates whether the caps lock button is active.

Returns
true if the caps lock key is active, false otherwise.
Here is the caller graph for this function:

◆ CapsLock() [2/2]

void HPS::ModifierKeys::CapsLock ( bool  in_state)
inline

Sets the state of the caps lock key modifier.

Parameters
in_statetrue if the caps lock key is active, false otherwise.

◆ Control() [1/2]

bool HPS::ModifierKeys::Control ( ) const
inline

Indicates whether any control key (right or left) is active.

Returns
true if any control key is active, false otherwise.
Here is the caller graph for this function:

◆ Control() [2/2]

void HPS::ModifierKeys::Control ( bool  in_state)
inline

Sets the state of the control key modifier.

Parameters
in_statetrue if at least one control key (right or left) is active, false otherwise.

◆ Equals()

bool HPS::ModifierKeys::Equals ( ModifierKeys const &  in_that) const
inline

Check if the source object is equivalent to this object.

Parameters
in_thatThe source object to compare to this object.
Returns
true if the objects are equivalent, false otherwise.

◆ HasAll()

bool HPS::ModifierKeys::HasAll ( ModifierKeys const &  in_keys) const
inline

Indicates whether all modifiers of the input parameter are present in this object.

Parameters
in_keysA collection of modifiers to check against this object.
Returns
true if all of the input modifiers are active, false otherwise.

◆ HasAny()

bool HPS::ModifierKeys::HasAny ( ModifierKeys const &  in_keys) const
inline

Indicates whether any modifiers of the input parameter are present in this object.

Parameters
in_keysA collection of modifiers to check against this object.
Returns
true if any of the modifiers are active, false otherwise.

◆ KeyAlt()

static ModifierKeys HPS::ModifierKeys::KeyAlt ( )
inlinestatic

Creates a new ModifierKeys object with the alt key active.

Use this function if your application does not need to differentiate between left and right alt buttons

Returns
A new ModifierKeys object with the alt key active.
Here is the call graph for this function:

◆ KeyCapsLock()

static ModifierKeys HPS::ModifierKeys::KeyCapsLock ( )
inlinestatic

Creates a new ModifierKeys object with the caps lock key active.

Returns
A new ModifierKeys object with the caps lock key active.
Here is the call graph for this function:

◆ KeyControl()

static ModifierKeys HPS::ModifierKeys::KeyControl ( )
inlinestatic

Creates a new ModifierKeys object with the control key active.

Use this function if your application does not need to differentiate between left and right control buttons

Returns
A new ModifierKeys object with the control key active.
Here is the call graph for this function:

◆ KeyLeftAlt()

static ModifierKeys HPS::ModifierKeys::KeyLeftAlt ( )
inlinestatic

Creates a new ModifierKeys object with the left alt key active.

Returns
A new ModifierKeys object with the left alt key active.
Here is the call graph for this function:

◆ KeyLeftControl()

static ModifierKeys HPS::ModifierKeys::KeyLeftControl ( )
inlinestatic

Creates a new ModifierKeys object with the left control key active.

Returns
A new ModifierKeys object with the left control key active.
Here is the call graph for this function:

◆ KeyLeftMeta()

static ModifierKeys HPS::ModifierKeys::KeyLeftMeta ( )
inlinestatic

Creates a new ModifierKeys object with the left meta key active.

Returns
A new ModifierKeys object with the left meta key active.
Here is the call graph for this function:

◆ KeyLeftShift()

static ModifierKeys HPS::ModifierKeys::KeyLeftShift ( )
inlinestatic

Creates a new ModifierKeys object with the left shift key active.

Returns
A new ModifierKeys object with the left shift key active.
Here is the call graph for this function:

◆ KeyMeta()

static ModifierKeys HPS::ModifierKeys::KeyMeta ( )
inlinestatic

Creates a new ModifierKeys object with the meta key active.

Use this function if your application does not need to differentiate between left and right meta buttons

Returns
A new ModifierKeys object with the meta key active.
Here is the call graph for this function:

◆ KeyNumLock()

static ModifierKeys HPS::ModifierKeys::KeyNumLock ( )
inlinestatic

Creates a new ModifierKeys object with the num lock key active.

Returns
A new ModifierKeys object with the num lock key active.
Here is the call graph for this function:

◆ KeyRightAlt()

static ModifierKeys HPS::ModifierKeys::KeyRightAlt ( )
inlinestatic

Creates a new ModifierKeys object with the right alt key active.

Returns
A new ModifierKeys object with the right alt key active.
Here is the call graph for this function:

◆ KeyRightControl()

static ModifierKeys HPS::ModifierKeys::KeyRightControl ( )
inlinestatic

Creates a new ModifierKeys object with the right control key active.

Returns
A new ModifierKeys object with the right control key active.
Here is the call graph for this function:

◆ KeyRightMeta()

static ModifierKeys HPS::ModifierKeys::KeyRightMeta ( )
inlinestatic

Creates a new ModifierKeys object with the right meta key active.

Returns
A new ModifierKeys object with the right meta key active.
Here is the call graph for this function:

◆ KeyRightShift()

static ModifierKeys HPS::ModifierKeys::KeyRightShift ( )
inlinestatic

Creates a new ModifierKeys object with the right shift key active.

Returns
A new ModifierKeys object with the right shift key active.
Here is the call graph for this function:

◆ KeyScrollLock()

static ModifierKeys HPS::ModifierKeys::KeyScrollLock ( )
inlinestatic

Creates a new ModifierKeys object with the scroll lock key active.

Returns
A new ModifierKeys object with the scroll lock key active.
Here is the call graph for this function:

◆ KeyShift()

static ModifierKeys HPS::ModifierKeys::KeyShift ( )
inlinestatic

Creates a new ModifierKeys object with the shift key active.

Use this function if your application does not need to differentiate between left and right shift buttons

Returns
A new ModifierKeys object with the shift key active.
Here is the call graph for this function:

◆ LeftAlt() [1/2]

bool HPS::ModifierKeys::LeftAlt ( ) const
inline

Indicates whether the left alt button is active.

Returns
true if the left alt key is active, false otherwise.
Here is the caller graph for this function:

◆ LeftAlt() [2/2]

void HPS::ModifierKeys::LeftAlt ( bool  in_state)
inline

Sets the state of the left alt key modifier.

Parameters
in_statetrue if the left alt key is active, false otherwise.

◆ LeftControl() [1/2]

bool HPS::ModifierKeys::LeftControl ( ) const
inline

Indicates whether the left control button is active.

Returns
true if the left control key is active, false otherwise.
Here is the caller graph for this function:

◆ LeftControl() [2/2]

void HPS::ModifierKeys::LeftControl ( bool  in_state)
inline

Sets the state of the left control key modifier.

Parameters
in_statetrue if the left control key is active, false otherwise.

◆ LeftMeta() [1/2]

bool HPS::ModifierKeys::LeftMeta ( ) const
inline

Indicates whether the left meta button is active.

Returns
true if the left meta key is active, false< /span> otherwise.
Here is the caller graph for this function:

◆ LeftMeta() [2/2]

void HPS::ModifierKeys::LeftMeta ( bool  in_state)
inline

Sets the state of the left meta key modifier.

Parameters
in_statetrue if the left meta key is active, false otherwise.

◆ LeftShift() [1/2]

bool HPS::ModifierKeys::LeftShift ( ) const
inline

Indicates whether the left shift button is active.

Returns
true if the left shift key is active, false otherwise.
Here is the caller graph for this function:

◆ LeftShift() [2/2]

void HPS::ModifierKeys::LeftShift ( bool  in_state)
inline

Sets the state of the left shift key modifier.

Parameters
in_statetrue if the left shift key is active, false otherwise.

◆ Meta() [1/2]

bool HPS::ModifierKeys::Meta ( ) const
inline

Indicates whether any meta key (right or left) is active.

Returns
true if any meta key is active, false otherwise.
Here is the caller graph for this function:

◆ Meta() [2/2]

void HPS::ModifierKeys::Meta ( bool  in_state)
inline

Sets the state of the meta key modifier.

Parameters
in_statetrue if at least one meta key (right or left) is active, false otherwise.

◆ None()

bool HPS::ModifierKeys::None ( ) const
inline

Indicates whether no modifiers are active.

Returns
true if no modifier keys are active, false otherwise.

◆ NumLock() [1/2]

bool HPS::ModifierKeys::NumLock ( ) const
inline

Indicates whether the num lock button is active.

Returns
true if the num lock key is active, false otherwise.
Here is the caller graph for this function:

◆ NumLock() [2/2]

void HPS::ModifierKeys::NumLock ( bool  in_state)
inline

Sets the state of the num lock key modifier.

Parameters
in_statetrue if the num lock key is active, false otherwise.

◆ operator!=()

bool HPS::ModifierKeys::operator!= ( ModifierKeys const &  in_that) const
inline

Check if the source object is not equivalent to this object.

Parameters
in_thatThe source object to compare to this object.
Returns
true if the objects are not equivalent, false otherwise.

◆ operator+()

ModifierKeys HPS::ModifierKeys::operator+ ( ModifierKeys const &  in_modifiers_to_merge)
inline

Merges the buttons from two ModifierKeys objects.

Parameters
in_modifiers_to_mergeA collection of modifiers to merge with the modifiers of this object.
Returns
A new ModifierKeys object.

◆ operator+=()

ModifierKeys& HPS::ModifierKeys::operator+= ( ModifierKeys const &  in_modifiers_to_merge)
inline

Merges the modifiers from another ModifierKeys object into this one.

Parameters
in_modifiers_to_mergeA collection of modifiers to merge with the modifiers of this object.
Returns
A reference to this object.

◆ operator-()

ModifierKeys HPS::ModifierKeys::operator- ( ModifierKeys const &  in_modifiers_to_remove)
inline

Creates a new ModifierKeys object representing the removal of the modifiers of another ModifierKeys object from this object.

Parameters
in_modifiers_to_removeA collection of modifiers to remove from those of this object.
Returns
A new ModifierKeys object.

◆ operator-=()

ModifierKeys& HPS::ModifierKeys::operator-= ( ModifierKeys const &  in_modifiers_to_remove)
inline

Removes the modifiers of another ModifierKeys object from this one.

Parameters
in_modifiers_to_removeA collection of modifiers to remove from those of this object.
Returns
A reference to this object.

◆ operator==()

bool HPS::ModifierKeys::operator== ( ModifierKeys const &  in_that) const
inline

Check if the source object is equivalent to this object.

Parameters
in_thatThe source object to compare to this object.
Returns
true if the objects are equivalent, false otherwise.

◆ RightAlt() [1/2]

bool HPS::ModifierKeys::RightAlt ( ) const
inline

Indicates whether the right alt button is active.

Returns
true if the right alt key is active, false otherwise.
Here is the caller graph for this function:

◆ RightAlt() [2/2]

void HPS::ModifierKeys::RightAlt ( bool  in_state)
inline

Sets the state of the right alt key modifier.

Parameters
in_statetrue if the right alt key is active, false otherwise.

◆ RightControl() [1/2]

bool HPS::ModifierKeys::RightControl ( ) const
inline

Indicates whether the right control button is active.

Returns
true if the right control key is active, false otherwise.
Here is the caller graph for this function:

◆ RightControl() [2/2]

void HPS::ModifierKeys::RightControl ( bool  in_state)
inline

Sets the state of the right control key modifier.

Parameters
in_statetrue if the right control key is active, false otherwise.

◆ RightMeta() [1/2]

bool HPS::ModifierKeys::RightMeta ( ) const
inline

Indicates whether the right meta button is active.

Returns
true if the right meta key is active, false< /span> otherwise.
Here is the caller graph for this function:

◆ RightMeta() [2/2]

void HPS::ModifierKeys::RightMeta ( bool  in_state)
inline

Sets the state of the right meta key modifier.

Parameters
in_statetrue if the right meta key is active, false otherwise.

◆ RightShift() [1/2]

bool HPS::ModifierKeys::RightShift ( ) const
inline

Indicates whether the right shift button is active.

Returns
true if the right shift key is active, false otherwise.
Here is the caller graph for this function:

◆ RightShift() [2/2]

void HPS::ModifierKeys::RightShift ( bool  in_state)
inline

Sets the state of the right shift key modifier.

Parameters
in_statetrue if the right shift key is active, false otherwise.

◆ ScrollLock() [1/2]

bool HPS::ModifierKeys::ScrollLock ( ) const
inline

Indicates whether the scroll lock button is active.

Returns
true if the scroll lock key is active, false otherwise.
Here is the caller graph for this function:

◆ ScrollLock() [2/2]

void HPS::ModifierKeys::ScrollLock ( bool  in_state)
inline

Sets the state of the scroll lock key modifier.

Parameters
in_statetrue if the scroll lock key is active, false otherwise.

◆ Shift() [1/2]

bool HPS::ModifierKeys::Shift ( ) const
inline

Indicates whether any shift key (right or left) is active.

Returns
true if any shift key is active, false otherwise.
Here is the caller graph for this function:

◆ Shift() [2/2]

void HPS::ModifierKeys::Shift ( bool  in_state)
inline

Sets the state of the shift key modifier.

Parameters
in_statetrue if at least one shift key (right or left) is active, false otherwise.

Member Data Documentation

◆ modifiers

int HPS::ModifierKeys::modifiers
protected

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