Go to the documentation of this file.
26 mWidgetCaption(nullptr),
27 mMouseRootFocus(false),
31 mAnimateSmooth(false),
38 Base::initialiseOverride();
45 (std::numeric_limits<int>::min)(),
46 (std::numeric_limits<int>::min)(),
47 (std::numeric_limits<int>::max)(),
48 (std::numeric_limits<int>::max)());
50 bool main_move =
false;
70 if (mWidgetCaption !=
nullptr)
79 for (VectorWidgetPtr::iterator iter = buttons.begin(); iter != buttons.end(); ++iter)
85 for (VectorWidgetPtr::iterator iter = actions.begin(); iter != actions.end(); ++iter)
93 const size_t countNames = 8;
94 const char* resizers[2][countNames] =
96 {
"ResizeLeftTop",
"ResizeTop",
"ResizeRightTop",
"ResizeRight",
"ResizeRightBottom",
"ResizeBottom",
"ResizeLeftBottom",
"ResizeLeft"},
97 {
"Left Top",
"Top",
"Right Top",
"Right",
"Right Bottom",
"Bottom",
"Left Bottom",
"Left"}
100 for (
size_t index = 0; index < countNames; ++ index)
104 if (widget !=
nullptr)
117 mWidgetCaption =
nullptr;
119 Base::shutdownOverride();
124 mMouseRootFocus = _focus;
127 Base::onMouseChangeRootFocus(_focus);
132 mKeyRootFocus = _focus;
135 Base::onKeyChangeRootFocus(_focus);
143 Base::onMouseDrag(_left, _top, _id);
150 Base::onMouseButtonPressed(_left, _top, _id);
157 Base::onMouseButtonReleased(_left, _top, _id);
165 mCurrentActionScale = _getActionScale(_sender);
181 IntCoord coord = mCurrentActionScale;
183 coord.
top *= (_top - point.
top);
190 if (coord.
left == 0 && coord.
top == 0)
191 setSize((mPreActionCoord + coord).size());
209 else if (mMouseRootFocus)
220 mIsAutoAlpha = _auto;
227 else if (mMouseRootFocus)
241 getSnappedCoord(coord);
242 point = coord.
point();
245 Base::setPosition(point);
267 getSnappedCoord(coord);
320 getSnappedCoord(coord);
328 Base::setCoord(coord);
333 if (mWidgetCaption !=
nullptr)
336 Base::setCaption(_caption);
341 if (mWidgetCaption !=
nullptr)
343 return Base::getCaption();
358 mAnimateSmooth =
false;
369 mAnimateSmooth =
false;
372 Base::setVisible(_visible);
375 float Window::getAlphaVisible()
const
380 void Window::getSnappedCoord(
IntCoord& _coord)
388 _coord.left = view_size.width - _coord.width;
390 _coord.top = view_size.height - _coord.height;
395 mAnimateSmooth =
true;
404 Base::setVisible(
true);
419 ControllerFadeAlpha* Window::createControllerFadeAlpha(
float _alpha,
float _coef,
bool _enable)
456 if (_key ==
"AutoAlpha")
460 else if (_key ==
"Snap")
461 setSnap(utility::parseValue<bool>(_value));
464 else if (_key ==
"MinSize")
465 setMinSize(utility::parseValue<IntSize>(_value));
468 else if (_key ==
"MaxSize")
469 setMaxSize(utility::parseValue<IntSize>(_value));
472 else if (_key ==
"Movable")
473 setMovable(utility::parseValue<bool>(_value));
477 Base::setPropertyOverride(_key, _value);
486 return mCurrentActionScale;
496 return mWidgetCaption;
523 mCurrentActionScale.
clear();
533 if (result ==
IntCoord(1, 1, 0, 0) && !mMovable)
540 const std::string& action = _widget->
getUserString(
"Action");
541 if (action ==
"Move")
557 else if (align.isRight())
567 else if (align.isBottom())
static InputManager & getInstance()
const float WINDOW_ALPHA_ACTIVE
static TCoord< int > parse(const std::string &_value)
void onKeyChangeRootFocus(bool _focus) override
void setCoord(const IntCoord &_value) override
void onMouseButtonReleased(int _left, int _top, MouseButton _id) override
void onMouseChangeRootFocus(bool _focus) override
void set(T const &_left, T const &_top, T const &_right, T const &_bottom)
const int WINDOW_SNAP_DISTANSE
void setUserString(const std::string &_key, const std::string &_value)
void actionWidgetDestroy(Widget *_widget, ControllerItem *_controller)
void notifyMouseReleased(MyGUI::Widget *_sender, int _left, int _top, MouseButton _id)
static const std::string & getClassTypeName()
void notifyMouseWheel(MyGUI::Widget *_sender, int _rel)
types::TCoord< int > IntCoord
void actionWidgetHide(Widget *_widget, ControllerItem *_controller)
void setEnabled(bool _value)
const std::string & getUserString(const std::string &_key) const
static Align parse(const std::string &_value)
A UTF-16 string with implicit conversion to/from std::string and std::wstring.
delegates::DelegateFunction< Args... > * newDelegate(void(*_func)(Args... args))
void shutdownOverride() override
void setAutoAlpha(bool _value)
void setSnap(bool _value)
void notifyMousePressed(MyGUI::Widget *_sender, int _left, int _top, MouseButton _id)
void initialiseOverride() override
void setPosition(const IntPoint &_value) override
void notifyPressedButtonEvent(MyGUI::Widget *_sender)
TextBox properties. Skin childs. TextBox widget description should be here.
const UString & getCaption() override
void onMouseButtonPressed(int _left, int _top, MouseButton _id) override
TextBox * getCaptionWidget()
Type * castType(bool _throw=true)
void setCaption(const UString &_value) override
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventPostAction
void setMaxSize(const IntSize &_value)
EventPair< EventHandle_WidgetString, EventHandle_WindowPtrCStringRef > eventWindowButtonPressed
void animateStop(Widget *_widget, ControllerItem *_controller)
bool isUserString(const std::string &_key) const
virtual void setCaption(const UString &_value)
void setVisible(bool _value) override
const float WINDOW_ALPHA_FOCUS
void setCoef(float _value)
ControllerItem * createItem(const std::string &_type)
TPoint< T > point() const
void notifyMouseDrag(MyGUI::Widget *_sender, int _left, int _top, MouseButton _id)
void setSize(const IntSize &_value) override
void addItem(Widget *_widget, ControllerItem *_item)
virtual const UString & getCaption()
const float WINDOW_ALPHA_DEACTIVE
EventPair< EventHandle_WidgetVoid, EventHandle_WindowPtr > eventWindowChangeCoord
void onMouseDrag(int _left, int _top, MouseButton _id) override
types::TSize< int > IntSize
void setAlpha(float _value)
void setMinSize(const IntSize &_value)
const IntCoord & getActionScale() const
void setVisibleSmooth(bool _value)
bool getAutoAlpha() const
std::vector< Widget * > VectorWidgetPtr
void removeItem(Widget *_widget)
const float WINDOW_SPEED_COEF
void setPropertyOverride(const std::string &_key, const std::string &_value) override
void setMovable(bool _value)