00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __MYGUI_CONTROLLER_ITEM_H__
00024 #define __MYGUI_CONTROLLER_ITEM_H__
00025
00026 #include "MyGUI_Prerequest.h"
00027 #include "MyGUI_WidgetDefines.h"
00028 #include "MyGUI_IObject.h"
00029 #include "MyGUI_Delegate.h"
00030
00031 namespace MyGUI
00032 {
00033
00035 class MYGUI_EXPORT ControllerItem :
00036 public IObject
00037 {
00038 MYGUI_RTTI_DERIVED( ControllerItem )
00039
00040 public:
00041 virtual ~ControllerItem() { }
00042
00043 virtual void prepareItem(Widget* _widget) = 0;
00044 virtual bool addTime(Widget* _widget, float _time) = 0;
00045
00046 virtual void setProperty(const std::string& _key, const std::string& _value) { }
00047
00052 delegates::CDelegate1<Widget*>
00053 eventPreAction;
00054
00059 delegates::CDelegate1<Widget*>
00060 eventUpdateAction;
00061
00066 delegates::CDelegate1<Widget*>
00067 eventPostAction;
00068
00069 };
00070
00071 }
00072
00073 #endif // __MYGUI_CONTROLLER_ITEM_H__