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 #include "MyGUI_Precompiled.h"
8 #include "MyGUI_WidgetInput.h"
9 #include "MyGUI_Widget.h"
10 
11 namespace MyGUI
12 {
13 
WidgetInput()14 	WidgetInput::WidgetInput() :
15 		mNeedToolTip(false),
16 		mInheritsPick(false),
17 		mNeedKeyFocus(false),
18 		mNeedMouseFocus(true),
19 		mRootMouseFocus(false),
20 		mRootKeyFocus(false)
21 	{
22 	}
23 
setMaskPick(const std::string & _filename)24 	void WidgetInput::setMaskPick(const std::string& _filename)
25 	{
26 		if (_filename.empty())
27 			mOwnMaskPickInfo = MaskPickInfo();
28 		else if (!mOwnMaskPickInfo.load(_filename))
29 			MYGUI_LOG(Error, "mask not load '" << _filename << "'");
30 	}
31 
setMaskPick(const MaskPickInfo & _info)32 	void WidgetInput::setMaskPick(const MaskPickInfo& _info)
33 	{
34 		mOwnMaskPickInfo = _info;
35 	}
36 
isMaskPickInside(const IntPoint & _point,const IntCoord & _coord) const37 	bool WidgetInput::isMaskPickInside(const IntPoint& _point, const IntCoord& _coord) const
38 	{
39 		return mOwnMaskPickInfo.empty() || mOwnMaskPickInfo.pick(_point, _coord);
40 	}
41 
_riseMouseLostFocus(Widget * _new)42 	void WidgetInput::_riseMouseLostFocus(Widget* _new)
43 	{
44 		onMouseLostFocus(_new);
45 		eventMouseLostFocus(static_cast<Widget*>(this), _new);
46 	}
47 
_riseMouseSetFocus(Widget * _old)48 	void WidgetInput::_riseMouseSetFocus(Widget* _old)
49 	{
50 		onMouseSetFocus(_old);
51 		eventMouseSetFocus(static_cast<Widget*>(this), _old);
52 	}
53 
_riseMouseDrag(int _left,int _top,MouseButton _id)54 	void WidgetInput::_riseMouseDrag(int _left, int _top, MouseButton _id)
55 	{
56 		onMouseDrag(_left, _top, _id);
57 		eventMouseDrag(static_cast<Widget*>(this), _left, _top, _id);
58 	}
59 
_riseMouseMove(int _left,int _top)60 	void WidgetInput::_riseMouseMove(int _left, int _top)
61 	{
62 		onMouseMove(_left, _top);
63 		eventMouseMove(static_cast<Widget*>(this), _left, _top);
64 	}
65 
_riseMouseWheel(int _rel)66 	void WidgetInput::_riseMouseWheel(int _rel)
67 	{
68 		onMouseWheel(_rel);
69 		eventMouseWheel(static_cast<Widget*>(this), _rel);
70 	}
71 
_riseMouseButtonPressed(int _left,int _top,MouseButton _id)72 	void WidgetInput::_riseMouseButtonPressed(int _left, int _top, MouseButton _id)
73 	{
74 		onMouseButtonPressed(_left, _top, _id);
75 		eventMouseButtonPressed(static_cast<Widget*>(this), _left, _top, _id);
76 	}
77 
_riseMouseButtonReleased(int _left,int _top,MouseButton _id)78 	void WidgetInput::_riseMouseButtonReleased(int _left, int _top, MouseButton _id)
79 	{
80 		onMouseButtonReleased(_left, _top, _id);
81 		eventMouseButtonReleased(static_cast<Widget*>(this), _left, _top, _id);
82 	}
83 
_riseMouseButtonClick()84 	void WidgetInput::_riseMouseButtonClick()
85 	{
86 		onMouseButtonClick();
87 		eventMouseButtonClick(static_cast<Widget*>(this));
88 	}
89 
_riseMouseButtonDoubleClick()90 	void WidgetInput::_riseMouseButtonDoubleClick()
91 	{
92 		onMouseButtonDoubleClick();
93 		eventMouseButtonDoubleClick(static_cast<Widget*>(this));
94 	}
95 
_riseKeyLostFocus(Widget * _new)96 	void WidgetInput::_riseKeyLostFocus(Widget* _new)
97 	{
98 		onKeyLostFocus(_new);
99 		eventKeyLostFocus(static_cast<Widget*>(this), _new);
100 	}
101 
_riseKeySetFocus(Widget * _old)102 	void WidgetInput::_riseKeySetFocus(Widget* _old)
103 	{
104 		onKeySetFocus(_old);
105 		eventKeySetFocus(static_cast<Widget*>(this), _old);
106 	}
107 
_riseKeyButtonPressed(KeyCode _key,Char _char)108 	void WidgetInput::_riseKeyButtonPressed(KeyCode _key, Char _char)
109 	{
110 		onKeyButtonPressed(_key, _char);
111 		eventKeyButtonPressed(static_cast<Widget*>(this), _key, _char);
112 	}
113 
_riseKeyButtonReleased(KeyCode _key)114 	void WidgetInput::_riseKeyButtonReleased(KeyCode _key)
115 	{
116 		onKeyButtonReleased(_key);
117 		eventKeyButtonReleased(static_cast<Widget*>(this), _key);
118 	}
119 
_riseMouseChangeRootFocus(bool _focus)120 	void WidgetInput::_riseMouseChangeRootFocus(bool _focus)
121 	{
122 		onMouseChangeRootFocus(_focus);
123 		eventRootMouseChangeFocus(static_cast<Widget*>(this), _focus);
124 	}
125 
_riseKeyChangeRootFocus(bool _focus)126 	void WidgetInput::_riseKeyChangeRootFocus(bool _focus)
127 	{
128 		onKeyChangeRootFocus(_focus);
129 		eventRootKeyChangeFocus(static_cast<Widget*>(this), _focus);
130 	}
131 
setNeedToolTip(bool _value)132 	void WidgetInput::setNeedToolTip(bool _value)
133 	{
134 		mNeedToolTip = _value;
135 	}
136 
getNeedToolTip() const137 	bool WidgetInput::getNeedToolTip() const
138 	{
139 		return mNeedToolTip;
140 	}
141 
setPointer(const std::string & _value)142 	void WidgetInput::setPointer(const std::string& _value)
143 	{
144 		mPointer = _value;
145 	}
146 
getPointer() const147 	const std::string& WidgetInput::getPointer() const
148 	{
149 		return mPointer;
150 	}
151 
setNeedKeyFocus(bool _value)152 	void WidgetInput::setNeedKeyFocus(bool _value)
153 	{
154 		mNeedKeyFocus = _value;
155 	}
156 
getNeedKeyFocus() const157 	bool WidgetInput::getNeedKeyFocus() const
158 	{
159 		return mNeedKeyFocus;
160 	}
161 
setNeedMouseFocus(bool _value)162 	void WidgetInput::setNeedMouseFocus(bool _value)
163 	{
164 		mNeedMouseFocus = _value;
165 	}
166 
getNeedMouseFocus() const167 	bool WidgetInput::getNeedMouseFocus() const
168 	{
169 		return mNeedMouseFocus;
170 	}
171 
setInheritsPick(bool _value)172 	void WidgetInput::setInheritsPick(bool _value)
173 	{
174 		mInheritsPick = _value;
175 	}
176 
getInheritsPick() const177 	bool WidgetInput::getInheritsPick() const
178 	{
179 		return mInheritsPick;
180 	}
181 
getRootMouseFocus() const182 	bool WidgetInput::getRootMouseFocus() const
183 	{
184 		return mRootMouseFocus;
185 	}
186 
getRootKeyFocus() const187 	bool WidgetInput::getRootKeyFocus() const
188 	{
189 		return mRootKeyFocus;
190 	}
191 
_setRootMouseFocus(bool _value)192 	void WidgetInput::_setRootMouseFocus(bool _value)
193 	{
194 		mRootMouseFocus = _value;
195 	}
196 
_setRootKeyFocus(bool _value)197 	void WidgetInput::_setRootKeyFocus(bool _value)
198 	{
199 		mRootKeyFocus = _value;
200 	}
201 
onMouseLostFocus(Widget * _new)202 	void WidgetInput::onMouseLostFocus(Widget* _new)
203 	{
204 	}
205 
onMouseSetFocus(Widget * _old)206 	void WidgetInput::onMouseSetFocus(Widget* _old)
207 	{
208 	}
209 
onMouseDrag(int _left,int _top,MouseButton _id)210 	void WidgetInput::onMouseDrag(int _left, int _top, MouseButton _id)
211 	{
212 	}
213 
onMouseMove(int _left,int _top)214 	void WidgetInput::onMouseMove(int _left, int _top)
215 	{
216 	}
217 
onMouseWheel(int _rel)218 	void WidgetInput::onMouseWheel(int _rel)
219 	{
220 	}
221 
onMouseButtonPressed(int _left,int _top,MouseButton _id)222 	void WidgetInput::onMouseButtonPressed(int _left, int _top, MouseButton _id)
223 	{
224 	}
225 
onMouseButtonReleased(int _left,int _top,MouseButton _id)226 	void WidgetInput::onMouseButtonReleased(int _left, int _top, MouseButton _id)
227 	{
228 	}
229 
onMouseButtonClick()230 	void WidgetInput::onMouseButtonClick()
231 	{
232 	}
233 
onMouseButtonDoubleClick()234 	void WidgetInput::onMouseButtonDoubleClick()
235 	{
236 	}
237 
onKeyLostFocus(Widget * _new)238 	void WidgetInput::onKeyLostFocus(Widget* _new)
239 	{
240 	}
241 
onKeySetFocus(Widget * _old)242 	void WidgetInput::onKeySetFocus(Widget* _old)
243 	{
244 	}
245 
onKeyButtonPressed(KeyCode _key,Char _char)246 	void WidgetInput::onKeyButtonPressed(KeyCode _key, Char _char)
247 	{
248 	}
249 
onKeyButtonReleased(KeyCode _key)250 	void WidgetInput::onKeyButtonReleased(KeyCode _key)
251 	{
252 	}
253 
onMouseChangeRootFocus(bool _focus)254 	void WidgetInput::onMouseChangeRootFocus(bool _focus)
255 	{
256 	}
257 
onKeyChangeRootFocus(bool _focus)258 	void WidgetInput::onKeyChangeRootFocus(bool _focus)
259 	{
260 	}
261 
262 } // namespace MyGUI
263