1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2024-11-08 08:47:17 +01:00
SqMod/source/Entity/Keybind.hpp

50 lines
1.9 KiB
C++

#ifndef _ENTITY_KEYBIND_HPP_
#define _ENTITY_KEYBIND_HPP_
// ------------------------------------------------------------------------------------------------
#include "Entity.hpp"
// ------------------------------------------------------------------------------------------------
namespace SqMod {
/* ------------------------------------------------------------------------------------------------
* Class responsible for managing the referenced keybind instance.
*/
class CKeybind : public Reference< CKeybind >
{
public:
/* --------------------------------------------------------------------------------------------
* Import the constructors, destructors and assignment operators from the base class.
*/
using RefType::Reference;
/* --------------------------------------------------------------------------------------------
* Construct a reference from a base reference.
*/
CKeybind(const Reference< CKeybind > & o) noexcept;
/* --------------------------------------------------------------------------------------------
* Retrieve the primary key code of the referenced keybind instance.
*/
SQInt32 GetPrimary() const noexcept;
/* --------------------------------------------------------------------------------------------
* Retrieve the secondary key code of the referenced keybind instance.
*/
SQInt32 GetSecondary() const noexcept;
/* --------------------------------------------------------------------------------------------
* Retrieve the alternative key code of the referenced keybind instance.
*/
SQInt32 GetAlternative() const noexcept;
/* --------------------------------------------------------------------------------------------
* See whether the referenced keybind instance reacts to key press events.
*/
bool IsRelease() const noexcept;
};
} // Namespace:: SqMod
#endif // _ENTITY_KEYBIND_HPP_