rtsInputState.h
1.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#ifndef INPUTSTATE_H
#define INPUTSTATE_H
class rtsInputState
{
private:
//mouse states
bool m_left_button;
bool m_right_button;
bool m_middle_button;
//keyboard keys
char* m_keys_pressed;
//mouse position
int m_mouse_x;
int m_mouse_y;
//some cool states for general use
bool m_selection_state;
//modifier keys
bool m_alt_key;
bool m_ctrl_key;
bool m_shift_key;
public:
void PressLeftButton() {m_left_button = true;}
void ReleaseLeftButton() {m_left_button = false;}
void PressMiddleButton() {m_middle_button = true;}
void ReleaseMiddleButton() {m_middle_button = false;}
void PressRightButton() {m_right_button = true;}
void ReleaseRightButton() {m_right_button = false;}
void SetMousePosition(int x, int y) {m_mouse_x = x; m_mouse_y = y;}
bool getRightButton() {return m_right_button;}
bool getLeftButton() {return m_left_button;}
bool getMiddleButton() {return m_middle_button;}
int getMouseX() {return m_mouse_x;}
int getMouseY() {return m_mouse_y;}
//modifier keys
bool getShiftState(){return m_shift_key;}
bool getAltState(){return m_alt_key;}
bool getCtrlState(){return m_ctrl_key;}
void setShiftState(bool val){m_shift_key = val;}
void setCtrlState(bool val){m_ctrl_key = val;}
void setAltState(bool val){m_alt_key = val;}
//other useful states
bool getSelectionState(){return m_selection_state;}
void StartSelection(){m_selection_state = true;}
void EndSelection(){m_selection_state = false;}
};
#endif