The Battle for Wesnoth  1.13.4+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
hotkey::hotkey_keyboard Class Reference

This class is responsible for handling keys, not modifiers. More...

#include <hotkey_item.hpp>

Inheritance diagram for hotkey::hotkey_keyboard:
Inheritance graph

Public Member Functions

 hotkey_keyboard ()
 Initialise new instance of this class that has no key associated with is. More...
 
void set_scancode (SDL_Scancode scancode)
 Set the scancode associated with this class. More...
 
virtual bool valid () const
 Checks whether this hotkey has been set to a sensible value. More...
 
- Public Member Functions inherited from hotkey::hotkey_base
 hotkey_base ()
 Initialises a new empty hotkey that will be disabled. More...
 
void set_command (const std::string &command)
 
void set_mods (unsigned int mods)
 Set keyboard modifiers. More...
 
const std::stringget_command () const
 Returns the string name of the HOTKEY_COMMAND. More...
 
const std::string get_description () const
 Returns the translated description. More...
 
virtual bool hidden () const
 This controls whether the item should appear in the hotkey preferences. More...
 
bool is_default () const
 This indicates whether a hotkey is from the default config or if it's from the user preferences. More...
 
void unset_default ()
 Used to indicate that a hotkey is overriden and should be treated as a user-set hotkey. More...
 
bool is_disabled () const
 
void disable ()
 
void enable ()
 
void clear ()
 Unbind this hotkey by linking it to the null-command. More...
 
bool null () const
 Returns whether this hotkey points to the null-command. More...
 
bool active () const
 
void save (config &cfg) const
 Save the hotkey into the configuration object. More...
 
const std::string get_name () const
 Return "name" of hotkey. More...
 
bool matches (const SDL_Event &event) const
 Used to evaluate whether: More...
 
virtual bool bindings_equal (hotkey_ptr other)
 Checks whether the hotkey bindings and scope are equal. More...
 
virtual ~hotkey_base ()
 

Protected Member Functions

virtual void save_helper (config &cfg) const
 
virtual const std::string get_name_helper () const
 This is invoked by hotkey_base::get_name and must be implemented by subclasses. More...
 
virtual bool matches_helper (const SDL_Event &event) const
 This is invoked by hotkey_base::matches as a helper for the concrete classes. More...
 
virtual bool bindings_equal_helper (hotkey_ptr other) const
 This is invoked by hotkey_base::bindings_equal as a helper for the concrete classes. More...
 

Protected Attributes

SDL_Scancode scancode_
 
- Protected Attributes inherited from hotkey::hotkey_base
std::string command_
 The command that should be executed, or "null". More...
 
bool is_default_
 is_default_ is true if the hot-key is part of the default hot-key list defined in data/core/hotkeys.cfg. More...
 
bool is_disabled_
 
unsigned int mod_
 

Detailed Description

This class is responsible for handling keys, not modifiers.

Definition at line 238 of file hotkey_item.hpp.

Constructor & Destructor Documentation

hotkey::hotkey_keyboard::hotkey_keyboard ( )
inline

Initialise new instance of this class that has no key associated with is.

Definition at line 244 of file hotkey_item.hpp.

Member Function Documentation

bool hotkey::hotkey_keyboard::bindings_equal_helper ( hotkey_ptr  other) const
protectedvirtual

This is invoked by hotkey_base::bindings_equal as a helper for the concrete classes.

Implementing classes should only check their parts of the hotkey.

Parameters
otherThe other hotkey the check against. Not guaranteed to be the same subclass.
Returns
true if they match, false otherwise.

Implements hotkey::hotkey_base.

Definition at line 336 of file hotkey_item.cpp.

References scancode_.

const std::string hotkey::hotkey_keyboard::get_name_helper ( ) const
protectedvirtual

This is invoked by hotkey_base::get_name and must be implemented by subclasses.

Keyboard modifiers are handled in this class, other hotkeys in the respective classes

Implements hotkey::hotkey_base.

Definition at line 280 of file hotkey_item.cpp.

References scancode_.

bool hotkey::hotkey_keyboard::matches_helper ( const SDL_Event &  event) const
protectedvirtual

This is invoked by hotkey_base::matches as a helper for the concrete classes.

Implementing classes should only check their parts of the hotkey.

Parameters
eventThe SDL_Event being generated.
Returns
true if they match, false otherwise.

Implements hotkey::hotkey_base.

Definition at line 291 of file hotkey_item.cpp.

References scancode_.

void hotkey::hotkey_keyboard::save_helper ( config cfg) const
protectedvirtual

Implements hotkey::hotkey_base.

Definition at line 318 of file hotkey_item.cpp.

References scancode_.

void hotkey::hotkey_keyboard::set_scancode ( SDL_Scancode  scancode)
inline

Set the scancode associated with this class.

Parameters
scancodeThe SDL_Scancode that this hotkey should be associated with

Definition at line 251 of file hotkey_item.hpp.

References scancode_.

virtual bool hotkey::hotkey_keyboard::valid ( ) const
inlinevirtual

Checks whether this hotkey has been set to a sensible value.

@ return true if it is a known key

Implements hotkey::hotkey_base.

Definition at line 260 of file hotkey_item.hpp.

References scancode_.

Member Data Documentation

SDL_Scancode hotkey::hotkey_keyboard::scancode_
protected

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