7#ifndef MYGUI_INPUT_MANAGER_H_
8#define MYGUI_INPUT_MANAGER_H_
41 bool injectMouseMove(
int _absx,
int _absy,
int _absz);
45 bool injectMousePress(
int _absx,
int _absy,
MouseButton _id);
49 bool injectMouseRelease(
int _absx,
int _absy,
MouseButton _id);
58 bool injectKeyRelease(
KeyCode _key);
61 bool isFocusMouse()
const;
63 bool isFocusKey()
const;
65 bool isCaptureMouse()
const;
68 void setKeyFocusWidget(
Widget* _widget);
70 void resetKeyFocusWidget(
Widget* _widget);
72 void resetKeyFocusWidget();
75 Widget* getMouseFocusWidget()
const;
77 Widget* getKeyFocusWidget()
const;
85 const IntPoint& getMousePosition()
const;
90 IntPoint getMousePositionByLayer()
const;
94 void addWidgetModal(
Widget* _widget);
96 void removeWidgetModal(
Widget* _widget);
99 bool isModalAny()
const;
102 bool isControlPressed()
const;
104 bool isShiftPressed()
const;
106 bool isAltPressed()
const;
108 bool isMetaPressed()
const;
114 void resetMouseCaptureWidget();
117 void unlinkWidget(
Widget* _widget);
132 void _resetMouseFocusWidget();
136 void _unlinkWidget(
Widget* _widget)
override;
138 void frameEntered(
float _frame);
140 void firstEncoding(
KeyCode _key,
bool bIsKeyPressed);
150 Widget* mWidgetMouseFocus;
155 float mTimerDoubleClick;
158 bool mIsShiftPressed;
160 bool mIsControlPressed;
167 IntPoint mLastPressed[MouseButton::MAX];
170 bool mMouseCapture[MouseButton::MAX];
#define MYGUI_SINGLETON_DECLARATION(ClassName)
std::vector< Widget * > VectorWidgetPtr