7#ifndef MYGUI_INPUT_MANAGER_H_
8#define MYGUI_INPUT_MANAGER_H_
59 bool isFocusMouse()
const;
61 bool isFocusKey()
const;
63 bool isCaptureMouse()
const;
70 void resetKeyFocusWidget();
73 Widget* getMouseFocusWidget()
const;
75 Widget* getKeyFocusWidget()
const;
83 const IntPoint& getMousePosition()
const;
88 IntPoint getMousePositionByLayer()
const;
97 bool isModalAny()
const;
100 bool isControlPressed()
const;
102 bool isShiftPressed()
const;
104 bool isAltPressed()
const;
106 bool isMetaPressed()
const;
112 void resetMouseCaptureWidget();
130 void _resetMouseFocusWidget();
136 void frameEntered(
float _frame);
148 Widget* mWidgetMouseFocus{
nullptr};
149 Widget* mWidgetKeyFocus{
nullptr};
150 ILayer* mLayerMouseFocus{
nullptr};
153 float mTimerDoubleClick;
156 bool mIsShiftPressed{
false};
158 bool mIsControlPressed{
false};
159 bool mIsAltPressed{
false};
160 bool mIsMetaPressed{
false};
165 IntPoint mLastPressed[MouseButton::MAX];
168 bool mMouseCapture[MouseButton::MAX];
171 KeyCode mHoldKey{KeyCode::None};
173 bool mFirstPressKey{
false};
174 float mTimerKey{0.0f};
180 bool mIsInitialise{
false};
#define MYGUI_SINGLETON_DECLARATION(ClassName)
types::TPoint< int > IntPoint
std::vector< Widget * > VectorWidgetPtr