2015-07-10 21:07:24 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "stdafx.h"
|
|
|
|
|
2016-02-14 12:58:35 -05:00
|
|
|
enum class MouseButton
|
|
|
|
{
|
|
|
|
LeftButton = 0,
|
|
|
|
RightButton = 1,
|
|
|
|
MiddleButton = 2,
|
|
|
|
};
|
|
|
|
|
2015-07-10 21:07:24 -04:00
|
|
|
class IKeyManager
|
|
|
|
{
|
|
|
|
public:
|
2016-12-11 10:56:23 -05:00
|
|
|
virtual ~IKeyManager() {}
|
|
|
|
|
2015-07-10 21:07:24 -04:00
|
|
|
virtual void RefreshState() = 0;
|
2016-07-16 16:25:57 -04:00
|
|
|
virtual void UpdateDevices() = 0;
|
2016-02-14 12:58:35 -05:00
|
|
|
virtual bool IsMouseButtonPressed(MouseButton button) = 0;
|
2015-07-10 21:07:24 -04:00
|
|
|
virtual bool IsKeyPressed(uint32_t keyCode) = 0;
|
2017-09-08 10:38:41 -04:00
|
|
|
virtual vector<uint32_t> GetPressedKeys() = 0;
|
2015-07-11 08:27:22 -04:00
|
|
|
virtual string GetKeyName(uint32_t keyCode) = 0;
|
|
|
|
virtual uint32_t GetKeyCode(string keyName) = 0;
|
2016-07-28 17:45:18 -04:00
|
|
|
|
|
|
|
virtual void SetKeyState(uint16_t scanCode, bool state) = 0;
|
|
|
|
virtual void ResetKeyState() = 0;
|
2017-09-08 10:38:41 -04:00
|
|
|
virtual void SetDisabled(bool disabled) = 0;
|
2015-07-10 21:07:24 -04:00
|
|
|
};
|