diff options
author | Stijn Buys <ingar@osirion.org> | 2015-02-08 21:51:53 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2015-02-08 21:51:53 +0000 |
commit | 77d877160d5c3b8a7e9c30e81bd6ca1f4060b5f9 (patch) | |
tree | 7e3c8de8f0aeea2e03b086b5ff1a3c7b60892e25 /src/client/control.h | |
parent | 4fdf7de0f1454966754bb22d1828fc2b69c172f4 (diff) |
Added a menu to configure key controls.
Diffstat (limited to 'src/client/control.h')
-rw-r--r-- | src/client/control.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/client/control.h b/src/client/control.h new file mode 100644 index 0000000..bf30418 --- /dev/null +++ b/src/client/control.h @@ -0,0 +1,53 @@ +/* + client/control.h + This file is part of the Osirion project and is distributed under + the terms and conditions of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_CLIENT_CONTROL_H__ +#define __INCLUDED_CLIENT_CONTROL_H__ + +#include <string> + +namespace client +{ + +/** + * @brief a client key control. + * A Control maps commands to key names + */ +class Control +{ +public: + Control(const char *name, const char *command, const char * keyname = 0); + ~Control(); + + inline const std::string &name() const + { + return _name; + } + + inline const std::string & command() const + { + return _command; + } + + inline const std::string & keyname() const + { + return _keyname; + } + + inline void set_keyname(const std::string &keyname) + { + _keyname.assign(keyname); + } + +private: + std::string _name; + std::string _command; + std::string _keyname; +}; + +} // namespace client + +#endif // __INCLUDED_CLIENT_CONTROL_H__ |