MyGUI 3.4.1
MyGUI_WidgetInput.h
Go to the documentation of this file.
1/*
2 * This source file is part of MyGUI. For the latest info, see http://mygui.info/
3 * Distributed under the MIT License
4 * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
5 */
6
7#ifndef MYGUI_WIDGET_INPUT_H_
8#define MYGUI_WIDGET_INPUT_H_
9
10#include "MyGUI_Prerequest.h"
11#include "MyGUI_Macros.h"
12#include "MyGUI_WidgetDefines.h"
13#include "MyGUI_WidgetToolTip.h"
14#include "MyGUI_MouseButton.h"
15#include "MyGUI_KeyCode.h"
16#include "MyGUI_MaskPickInfo.h"
17#include "MyGUI_Delegate.h"
18#include "MyGUI_EventPair.h"
19
20namespace MyGUI
21{
22
47 // делегаты для событий виджета
58
60 {
61 public:
63 virtual ~WidgetInput() = default;
64
66 void setNeedToolTip(bool _value);
68 bool getNeedToolTip() const;
69
71 void setPointer(const std::string& _value);
73 const std::string& getPointer() const;
74
76 void setNeedKeyFocus(bool _value);
81 bool getNeedKeyFocus() const;
82
84 void setNeedMouseFocus(bool _value);
89 bool getNeedMouseFocus() const;
90
96 void setInheritsPick(bool _value);
98 bool getInheritsPick() const;
99
101 void setMaskPick(const std::string& _filename);
103 void setMaskPick(const MaskPickInfo& _info);
104
105 bool isMaskPickInside(const IntPoint& _point, const IntCoord& _coord) const;
106
107 bool getRootMouseFocus() const;
108 bool getRootKeyFocus() const;
109
116
123
131
139
146
155
164
170
176
183
190
198
205
213
221
228
229 /*internal:*/
230 void _riseMouseLostFocus(Widget* _new);
231 void _riseMouseSetFocus(Widget* _old);
232 void _riseMouseDrag(int _left, int _top, MouseButton _id);
233 void _riseMouseMove(int _left, int _top);
234 void _riseMouseWheel(int _rel);
235 void _riseMouseButtonPressed(int _left, int _top, MouseButton _id);
236 void _riseMouseButtonReleased(int _left, int _top, MouseButton _id);
237 void _riseMouseButtonClick();
238 void _riseMouseButtonDoubleClick();
239 void _riseKeyLostFocus(Widget* _new);
240 void _riseKeySetFocus(Widget* _old);
241 void _riseKeyButtonPressed(KeyCode _key, Char _char);
242 void _riseKeyButtonReleased(KeyCode _key);
243 void _riseMouseChangeRootFocus(bool _focus);
244 void _riseKeyChangeRootFocus(bool _focus);
245
246 void _setRootMouseFocus(bool _value);
247 void _setRootKeyFocus(bool _value);
248
249 protected:
250 virtual void onMouseLostFocus(Widget* _new);
251 virtual void onMouseSetFocus(Widget* _old);
252 virtual void onMouseDrag(int _left, int _top, MouseButton _id);
253 virtual void onMouseMove(int _left, int _top);
254 virtual void onMouseWheel(int _rel);
255 virtual void onMouseButtonPressed(int _left, int _top, MouseButton _id);
256 virtual void onMouseButtonReleased(int _left, int _top, MouseButton _id);
257 virtual void onMouseButtonClick();
258 virtual void onMouseButtonDoubleClick();
259 virtual void onKeyLostFocus(Widget* _new);
260 virtual void onKeySetFocus(Widget* _old);
261 virtual void onKeyButtonPressed(KeyCode _key, Char _char);
262 virtual void onKeyButtonReleased(KeyCode _key);
263 virtual void onMouseChangeRootFocus(bool _focus);
264 virtual void onKeyChangeRootFocus(bool _focus);
265
266 private:
267 std::string mPointer;
268 MaskPickInfo mOwnMaskPickInfo;
269
270 bool mNeedToolTip;
271 bool mInheritsPick;
272 bool mNeedKeyFocus;
273 bool mNeedMouseFocus;
274
275 bool mRootMouseFocus;
276 bool mRootKeyFocus;
277 };
278
279} // namespace MyGUI
280
281#endif // MYGUI_WIDGET_INPUT_H_
#define MYGUI_EXPORT
widget description should be here.
Definition: MyGUI_Widget.h:37
EventHandle_WidgetVoid eventMouseButtonDoubleClick
EventHandle_WidgetVoid eventMouseButtonClick
EventHandle_WidgetWidget eventKeyLostFocus
EventHandle_WidgetIntInt eventMouseMove
EventHandle_WidgetIntIntButton eventMouseButtonReleased
virtual ~WidgetInput()=default
EventHandle_WidgetIntIntButton eventMouseButtonPressed
EventHandle_WidgetWidget eventMouseSetFocus
EventHandle_WidgetToolTip eventToolTip
EventHandle_WidgetKeyCodeChar eventKeyButtonPressed
EventHandle_WidgetWidget eventMouseLostFocus
EventHandle_WidgetWidget eventKeySetFocus
EventHandle_WidgetBool eventRootKeyChangeFocus
EventHandle_WidgetBool eventRootMouseChangeFocus
EventPairAddParameter< EventHandle_WidgetIntInt, EventHandle_WidgetIntIntButton > eventMouseDrag
EventHandle_WidgetInt eventMouseWheel
EventHandle_WidgetKeyCode eventKeyButtonReleased
delegates::CMultiDelegate2< Widget *, size_t > EventHandle_WidgetSizeT
delegates::CMultiDelegate2< Widget *, bool > EventHandle_WidgetBool
delegates::CMultiDelegate1< Widget * > EventHandle_WidgetVoid
delegates::CMultiDelegate2< Widget *, KeyCode > EventHandle_WidgetKeyCode
delegates::CMultiDelegate3< Widget *, KeyCode, Char > EventHandle_WidgetKeyCodeChar
delegates::CMultiDelegate2< Widget *, Widget * > EventHandle_WidgetWidget
delegates::CMultiDelegate4< Widget *, int, int, MouseButton > EventHandle_WidgetIntIntButton
delegates::CMultiDelegate3< Widget *, int, int > EventHandle_WidgetIntInt
delegates::CMultiDelegate2< Widget *, int > EventHandle_WidgetInt
delegates::CMultiDelegate2< Widget *, const ToolTipInfo & > EventHandle_WidgetToolTip
unsigned int Char
Definition: MyGUI_Types.h:49