MyGUI  3.2.0
MyGUI_WidgetInput.cpp
Go to the documentation of this file.
00001 
00006 /*
00007     This file is part of MyGUI.
00008 
00009     MyGUI is free software: you can redistribute it and/or modify
00010     it under the terms of the GNU Lesser General Public License as published by
00011     the Free Software Foundation, either version 3 of the License, or
00012     (at your option) any later version.
00013 
00014     MyGUI is distributed in the hope that it will be useful,
00015     but WITHOUT ANY WARRANTY; without even the implied warranty of
00016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017     GNU Lesser General Public License for more details.
00018 
00019     You should have received a copy of the GNU Lesser General Public License
00020     along with MyGUI.  If not, see <http://www.gnu.org/licenses/>.
00021 */
00022 #include "MyGUI_Precompiled.h"
00023 #include "MyGUI_WidgetInput.h"
00024 #include "MyGUI_Widget.h"
00025 
00026 namespace MyGUI
00027 {
00028 
00029     WidgetInput::WidgetInput() :
00030         mNeedToolTip(false),
00031         mInheritsPick(false),
00032         mNeedKeyFocus(false),
00033         mNeedMouseFocus(true),
00034         mRootMouseFocus(false),
00035         mRootKeyFocus(false)
00036     {
00037     }
00038 
00039     WidgetInput::~WidgetInput()
00040     {
00041     }
00042 
00043     void WidgetInput::setMaskPick(const std::string& _filename)
00044     {
00045         if (_filename.empty())
00046             mOwnMaskPickInfo = MaskPickInfo();
00047         else if (!mOwnMaskPickInfo.load(_filename))
00048             MYGUI_LOG(Error, "mask not load '" << _filename << "'");
00049     }
00050 
00051     void WidgetInput::setMaskPick(const MaskPickInfo& _info)
00052     {
00053         mOwnMaskPickInfo = _info;
00054     }
00055 
00056     bool WidgetInput::isMaskPickInside(const IntPoint& _point, const IntCoord& _coord) const
00057     {
00058         return mOwnMaskPickInfo.empty() || mOwnMaskPickInfo.pick(_point, _coord);
00059     }
00060 
00061     void WidgetInput::_riseMouseLostFocus(Widget* _new)
00062     {
00063         onMouseLostFocus(_new);
00064         eventMouseLostFocus(static_cast<Widget*>(this), _new);
00065     }
00066 
00067     void WidgetInput::_riseMouseSetFocus(Widget* _old)
00068     {
00069         onMouseSetFocus(_old);
00070         eventMouseSetFocus(static_cast<Widget*>(this), _old);
00071     }
00072 
00073     void WidgetInput::_riseMouseDrag(int _left, int _top, MouseButton _id)
00074     {
00075         onMouseDrag(_left, _top, _id);
00076         eventMouseDrag(static_cast<Widget*>(this), _left, _top, _id);
00077     }
00078 
00079     void WidgetInput::_riseMouseMove(int _left, int _top)
00080     {
00081         onMouseMove(_left, _top);
00082         eventMouseMove(static_cast<Widget*>(this), _left, _top);
00083     }
00084 
00085     void WidgetInput::_riseMouseWheel(int _rel)
00086     {
00087         onMouseWheel(_rel);
00088         eventMouseWheel(static_cast<Widget*>(this), _rel);
00089     }
00090 
00091     void WidgetInput::_riseMouseButtonPressed(int _left, int _top, MouseButton _id)
00092     {
00093         onMouseButtonPressed(_left, _top, _id);
00094         eventMouseButtonPressed(static_cast<Widget*>(this), _left, _top, _id);
00095     }
00096 
00097     void WidgetInput::_riseMouseButtonReleased(int _left, int _top, MouseButton _id)
00098     {
00099         onMouseButtonReleased(_left, _top, _id);
00100         eventMouseButtonReleased(static_cast<Widget*>(this), _left, _top, _id);
00101     }
00102 
00103     void WidgetInput::_riseMouseButtonClick()
00104     {
00105         onMouseButtonClick();
00106         eventMouseButtonClick(static_cast<Widget*>(this));
00107     }
00108 
00109     void WidgetInput::_riseMouseButtonDoubleClick()
00110     {
00111         onMouseButtonDoubleClick();
00112         eventMouseButtonDoubleClick(static_cast<Widget*>(this));
00113     }
00114 
00115     void WidgetInput::_riseKeyLostFocus(Widget* _new)
00116     {
00117         onKeyLostFocus(_new);
00118         eventKeyLostFocus(static_cast<Widget*>(this), _new);
00119     }
00120 
00121     void WidgetInput::_riseKeySetFocus(Widget* _old)
00122     {
00123         onKeySetFocus(_old);
00124         eventKeySetFocus(static_cast<Widget*>(this), _old);
00125     }
00126 
00127     void WidgetInput::_riseKeyButtonPressed(KeyCode _key, Char _char)
00128     {
00129         onKeyButtonPressed(_key, _char);
00130         eventKeyButtonPressed(static_cast<Widget*>(this), _key, _char);
00131     }
00132 
00133     void WidgetInput::_riseKeyButtonReleased(KeyCode _key)
00134     {
00135         onKeyButtonReleased(_key);
00136         eventKeyButtonReleased(static_cast<Widget*>(this), _key);
00137     }
00138 
00139     void WidgetInput::_riseMouseChangeRootFocus(bool _focus)
00140     {
00141         onMouseChangeRootFocus(_focus);
00142         eventRootMouseChangeFocus(static_cast<Widget*>(this), _focus);
00143     }
00144 
00145     void WidgetInput::_riseKeyChangeRootFocus(bool _focus)
00146     {
00147         onKeyChangeRootFocus(_focus);
00148         eventRootKeyChangeFocus(static_cast<Widget*>(this), _focus);
00149     }
00150 
00151     void WidgetInput::setNeedToolTip(bool _value)
00152     {
00153         mNeedToolTip = _value;
00154     }
00155 
00156     bool WidgetInput::getNeedToolTip() const
00157     {
00158         return mNeedToolTip;
00159     }
00160 
00161     void WidgetInput::setPointer(const std::string& _value)
00162     {
00163         mPointer = _value;
00164     }
00165 
00166     const std::string& WidgetInput::getPointer() const
00167     {
00168         return mPointer;
00169     }
00170 
00171     void WidgetInput::setNeedKeyFocus(bool _value)
00172     {
00173         mNeedKeyFocus = _value;
00174     }
00175 
00176     bool WidgetInput::getNeedKeyFocus() const
00177     {
00178         return mNeedKeyFocus;
00179     }
00180 
00181     void WidgetInput::setNeedMouseFocus(bool _value)
00182     {
00183         mNeedMouseFocus = _value;
00184     }
00185 
00186     bool WidgetInput::getNeedMouseFocus() const
00187     {
00188         return mNeedMouseFocus;
00189     }
00190 
00191     void WidgetInput::setInheritsPick(bool _value)
00192     {
00193         mInheritsPick = _value;
00194     }
00195 
00196     bool WidgetInput::getInheritsPick() const
00197     {
00198         return mInheritsPick;
00199     }
00200 
00201     bool WidgetInput::getRootMouseFocus() const
00202     {
00203         return mRootMouseFocus;
00204     }
00205 
00206     bool WidgetInput::getRootKeyFocus() const
00207     {
00208         return mRootKeyFocus;
00209     }
00210 
00211     void WidgetInput::_setRootMouseFocus(bool _value)
00212     {
00213         mRootMouseFocus = _value;
00214     }
00215 
00216     void WidgetInput::_setRootKeyFocus(bool _value)
00217     {
00218         mRootKeyFocus = _value;
00219     }
00220 
00221     void WidgetInput::onMouseLostFocus(Widget* _new)
00222     {
00223     }
00224 
00225     void WidgetInput::onMouseSetFocus(Widget* _old)
00226     {
00227     }
00228 
00229     void WidgetInput::onMouseDrag(int _left, int _top, MouseButton _id)
00230     {
00231     }
00232 
00233     void WidgetInput::onMouseMove(int _left, int _top)
00234     {
00235     }
00236 
00237     void WidgetInput::onMouseWheel(int _rel)
00238     {
00239     }
00240 
00241     void WidgetInput::onMouseButtonPressed(int _left, int _top, MouseButton _id)
00242     {
00243     }
00244 
00245     void WidgetInput::onMouseButtonReleased(int _left, int _top, MouseButton _id)
00246     {
00247     }
00248 
00249     void WidgetInput::onMouseButtonClick()
00250     {
00251     }
00252 
00253     void WidgetInput::onMouseButtonDoubleClick()
00254     {
00255     }
00256 
00257     void WidgetInput::onKeyLostFocus(Widget* _new)
00258     {
00259     }
00260 
00261     void WidgetInput::onKeySetFocus(Widget* _old)
00262     {
00263     }
00264 
00265     void WidgetInput::onKeyButtonPressed(KeyCode _key, Char _char)
00266     {
00267     }
00268 
00269     void WidgetInput::onKeyButtonReleased(KeyCode _key)
00270     {
00271     }
00272 
00273     void WidgetInput::onMouseChangeRootFocus(bool _focus)
00274     {
00275     }
00276 
00277     void WidgetInput::onKeyChangeRootFocus(bool _focus)
00278     {
00279     }
00280 
00281 } // namespace MyGUI