MyGUI: MyGUI_ControllerItem.h Source File

MyGUI 3.4.3

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::MultiDelegate<Widget*>;
22 using EventHandle_WidgetPtrControllerItemPtr = delegates::MultiDelegate<Widget*, ControllerItem*>;
23
25 class MYGUI_EXPORT ControllerItem : public IObject
26 {
27 MYGUI_RTTI_DERIVED(ControllerItem)
28
29 public:
30 virtual void prepareItem(Widget* _widget) = 0;
31 virtual bool addTime(Widget* _widget, float _time) = 0;
32
33 virtual void setProperty(std::string_view /*_key*/, std::string_view /*_value*/)
34 {
35 }
36
41 EventPairAddParameter<EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr> eventPreAction;
42
47 EventPairAddParameter<EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr> eventUpdateAction;
48
53 EventPairAddParameter<EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr> eventPostAction;
54 };
55
56} // namespace MyGUI
57
58#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:69
MyGUI_WidgetDefines.h
MyGUI::ControllerItem
Definition MyGUI_ControllerItem.h:26
MyGUI::ControllerItem::eventPreAction
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventPreAction
Definition MyGUI_ControllerItem.h:41
MyGUI::ControllerItem::eventPostAction
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventPostAction
Definition MyGUI_ControllerItem.h:53
MyGUI::ControllerItem::eventUpdateAction
EventPairAddParameter< EventHandle_WidgetPtr, EventHandle_WidgetPtrControllerItemPtr > eventUpdateAction
Definition MyGUI_ControllerItem.h:47
MyGUI::ControllerItem::addTime
virtual bool addTime(Widget *_widget, float _time)=0
MyGUI::ControllerItem::setProperty
virtual void setProperty(std::string_view, std::string_view)
Definition MyGUI_ControllerItem.h:33
MyGUI::ControllerItem::prepareItem
virtual void prepareItem(Widget *_widget)=0
MyGUI::EventPairAddParameter
Definition MyGUI_EventPair.h:176
MyGUI::IObject
Definition MyGUI_IObject.h:17
MyGUI::Widget
widget description should be here.
Definition MyGUI_Widget.h:40
MyGUI::delegates::MultiDelegate
Definition MyGUI_Delegate.h:190
MyGUI
Definition MyGUI_ActionController.h:15
MyGUI::EventHandle_WidgetPtr
delegates::MultiDelegate< Widget * > EventHandle_WidgetPtr
Definition MyGUI_ControllerItem.h:21
MyGUI::EventHandle_WidgetPtrControllerItemPtr
delegates::MultiDelegate< Widget *, ControllerItem * > EventHandle_WidgetPtrControllerItemPtr
Definition MyGUI_ControllerItem.h:22