00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __MYGUI_CONTROLLER_EDGE_HIDE_H__
00024 #define __MYGUI_CONTROLLER_EDGE_HIDE_H__
00025
00026 #include "MyGUI_Prerequest.h"
00027 #include "MyGUI_WidgetDefines.h"
00028 #include "MyGUI_ControllerItem.h"
00029 #include "MyGUI_Types.h"
00030
00031 namespace MyGUI
00032 {
00033
00040 class MYGUI_EXPORT ControllerEdgeHide :
00041 public ControllerItem
00042 {
00043 MYGUI_RTTI_DERIVED( ControllerEdgeHide )
00044
00045 public:
00046 ControllerEdgeHide();
00047 virtual ~ControllerEdgeHide() { }
00048
00052 void setTime(float _value) { mTime = _value; }
00053
00057 void setRemainPixels(int _value) { mRemainPixels = _value; }
00058
00062 void setShadowSize(int _value) { mShadowSize = _value; }
00063
00064 virtual void setProperty(const std::string& _key, const std::string& _value);
00065
00066 private:
00067 bool addTime(Widget* _widget, float _time);
00068 void prepareItem(Widget* _widget);
00069
00070 void recalculateTime(Widget* _widget);
00071
00072 delegates::CDelegate1<Widget*> eventPostAction;
00073
00074 float mTime;
00075 int mRemainPixels;
00076 int mShadowSize;
00077 float mElapsedTime;
00078
00079 MyGUI::IntCoord mLastCoord;
00080 };
00081
00082 }
00083
00084 #endif // __MYGUI_CONTROLLER_EDGE_HIDE_H__