MyGUI: MyGUI_ControllerItem.h Source File

MyGUI 3.4.2

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files
- Examples

- File List
- Globals

MyGUI_ControllerItem.h
Go to the documentation of this file.
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#ifndef MYGUI_CONTROLLER_ITEM_H_
8#define MYGUI_CONTROLLER_ITEM_H_
9
10#include "MyGUI_Prerequest.h"
11#include "MyGUI_WidgetDefines.h"
12#include "MyGUI_IObject.h"
13#include "MyGUI_Delegate.h"
14#include "MyGUI_EventPair.h"
15
16namespace MyGUI
17{
18
19 class ControllerItem;
20
21 using EventHandle_WidgetPtr = delegates::CMultiDelegate1<Widget*>;
22 typedef delegates::CMultiDelegate2<Widget*, ControllerItem*> EventHandle_WidgetPtrControllerItemPtr;
23
25 class MYGUI_EXPORT ControllerItem :
26 public IObject
27 {
28 MYGUI_RTTI_DERIVED( ControllerItem )
29
30 public:
31 ~ControllerItem() override = default;
32
33 virtual void prepareItem(Widget* _widget) = 0;
34 virtual bool addTime(Widget* _widget, float _time) = 0;
35
36 virtual void setProperty(const std::string& /*_key*/, const std::string& /*_value*/) { }
37
42 EventPairAddParameter<EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr> eventPreAction;
43
48 EventPairAddParameter<EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr> eventUpdateAction;
49
54 EventPairAddParameter<EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr> eventPostAction;
55
56 };
57
58} // namespace MyGUI
59
60#endif // MYGUI_CONTROLLER_ITEM_H_
MyGUI_Delegate.h
MyGUI_EventPair.h
MyGUI_IObject.h
MYGUI_EXPORT
#define MYGUI_EXPORT
Definition MyGUI_Platform.h:77
MyGUI_Prerequest.h
MYGUI_RTTI_DERIVED
#define MYGUI_RTTI_DERIVED(DerivedType)
Definition MyGUI_RTTI.h:48
MyGUI_WidgetDefines.h
MyGUI::ControllerItem
Definition MyGUI_ControllerItem.h:27
MyGUI::ControllerItem::eventPreAction
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventPreAction
Definition MyGUI_ControllerItem.h:42
MyGUI::ControllerItem::eventPostAction
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventPostAction
Definition MyGUI_ControllerItem.h:54
MyGUI::ControllerItem::eventUpdateAction
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventUpdateAction
Definition MyGUI_ControllerItem.h:48
MyGUI::ControllerItem::addTime
virtual bool addTime(Widget *_widget, float _time)=0
MyGUI::ControllerItem::setProperty
virtual void setProperty(const std::string &, const std::string &)
Definition MyGUI_ControllerItem.h:36
MyGUI::ControllerItem::~ControllerItem
~ControllerItem() override=default
MyGUI::ControllerItem::prepareItem
virtual void prepareItem(Widget *_widget)=0
MyGUI::EventPairAddParameter
Definition MyGUI_EventPair.h:131
MyGUI::IObject
Definition MyGUI_IObject.h:17
MyGUI::Widget
widget description should be here.
Definition MyGUI_Widget.h:37
MyGUI::delegates::MultiDelegate
Definition MyGUI_Delegate.h:200
MyGUI
Definition MyGUI_ActionController.h:15
MyGUI::EventHandle_WidgetPtrControllerItemPtr
delegates::CMultiDelegate2< Widget *, ControllerItem * > EventHandle_WidgetPtrControllerItemPtr
Definition MyGUI_ControllerItem.h:22