26 mSingletonHolder(
this)
36 mWidgetMouseFocus =
nullptr;
37 mWidgetKeyFocus =
nullptr;
38 mLayerMouseFocus =
nullptr;
41 mMouseCapture[
i] =
false;
43 mIsShiftPressed =
false;
44 mIsControlPressed =
false;
45 mIsAltPressed =
false;
46 mIsMetaPressed =
false;
50 mFirstPressKey =
true;
70 mIsInitialise =
false;
96 if (mLayerMouseFocus !=
nullptr)
101 if (mMouseCapture[
i])
116 if (mWidgetMouseFocus == item)
121 if (mLayerMouseFocus !=
nullptr)
134 while (
root->getParent())
138 if (!mVectorModalRootWidget.empty())
140 if (
root != mVectorModalRootWidget.back())
148 mLayerMouseFocus =
root->getLayer();
193 if (mLayerMouseFocus !=
nullptr)
200 mWidgetMouseFocus = item;
219 mMouseCapture[
_id.getValue()] =
true;
238 if (mLayerMouseFocus !=
nullptr)
241 mLastPressed[
_id.getValue()] = point;
246 Widget* item = mWidgetMouseFocus;
256 if (mLayerMouseFocus !=
nullptr)
261 if (mWidgetMouseFocus)
267 Widget* pick = mWidgetMouseFocus;
289 if (mMouseCapture[
_id.getValue()])
292 mMouseCapture[
_id.getValue()] =
false;
303 if (mLayerMouseFocus !=
nullptr)
308 if (
nullptr != mWidgetMouseFocus)
316 if (
nullptr != mWidgetMouseFocus)
323 if (item == mWidgetMouseFocus)
327 mTimerDoubleClick = 0;
344 firstEncoding(
_key,
true);
363 firstEncoding(
_key,
false);
390 if (
_widget == mWidgetKeyFocus)
394 mWidgetKeyFocus =
nullptr;
409 rootFocus->_riseKeyChangeRootFocus(
true);
421 rootFocus->_riseKeyChangeRootFocus(
false);
435 _widget->_riseKeySetFocus(mWidgetKeyFocus);
444 mWidgetMouseFocus =
nullptr;
457 if (mMouseCapture[
i])
459 mMouseCapture[
i] =
false;
463 mLastPressed[
i].left,
485 if (mWidgetMouseFocus ==
_widget)
488 if (
_widget == mWidgetKeyFocus)
492 for (VectorWidgetPtr::iterator
iter = mVectorModalRootWidget.begin();
iter != mVectorModalRootWidget.end();
497 mVectorModalRootWidget.erase(
iter);
511 mVectorModalRootWidget.push_back(
_widget);
522 for (VectorWidgetPtr::iterator
iter = mVectorModalRootWidget.begin();
iter != mVectorModalRootWidget.end();
527 mVectorModalRootWidget.erase(
iter);
532 if (!mVectorModalRootWidget.empty())
550 mFirstPressKey =
true;
556 void InputManager::resetKey()
562 void InputManager::frameEntered(
float _frame)
564 mTimerDoubleClick += _frame;
582 mFirstPressKey =
false;
602 if (mWidgetKeyFocus ==
_widget)
608 if (mLayerMouseFocus !=
nullptr)
610 return mMousePosition;
615 return mWidgetMouseFocus !=
nullptr;
620 return mWidgetKeyFocus !=
nullptr;
627 if (mMouseCapture[
i])
640 return mWidgetMouseFocus;
645 return mWidgetKeyFocus;
652 return mLastPressed[
_id.getValue()];
659 return mMousePosition;
664 return !mVectorModalRootWidget.empty();
669 return mIsControlPressed;
674 return mIsShiftPressed;
679 return mIsAltPressed;
684 return mIsMetaPressed;
691 mMouseCapture[
i] =
false;
#define MYGUI_ASSERT(exp, dest)
#define MYGUI_LOG(level, text)
#define MYGUI_SINGLETON_DEFINITION(ClassName)
static const IntPoint & getZeroIntPoint()
static Gui & getInstance()
virtual IntPoint getPosition(int _left, int _top) const =0
static LayerManager & getInstance()
const float INPUT_TIME_DOUBLE_CLICK
delegates::DelegateFunction< Args... > * newDelegate(void(*_func)(Args... args))
const float INPUT_INTERVAL_KEY
const float INPUT_DELAY_FIRST_KEY
void set(T const &_left, T const &_top)