MyGUI
3.0.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
MyGUIEngine
include
MyGUI_ControllerManager.h
Go to the documentation of this file.
1
7
/*
8
This file is part of MyGUI.
9
10
MyGUI is free software: you can redistribute it and/or modify
11
it under the terms of the GNU Lesser General Public License as published by
12
the Free Software Foundation, either version 3 of the License, or
13
(at your option) any later version.
14
15
MyGUI is distributed in the hope that it will be useful,
16
but WITHOUT ANY WARRANTY; without even the implied warranty of
17
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
GNU Lesser General Public License for more details.
19
20
You should have received a copy of the GNU Lesser General Public License
21
along with MyGUI. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
#ifndef __MYGUI_CONTROLLER_MANAGER_H__
24
#define __MYGUI_CONTROLLER_MANAGER_H__
25
26
#include "
MyGUI_Prerequest.h
"
27
#include "
MyGUI_Instance.h
"
28
#include "
MyGUI_ControllerItem.h
"
29
#include "
MyGUI_IUnlinkWidget.h
"
30
#include "
MyGUI_WidgetDefines.h
"
31
#include "
MyGUI_ActionController.h
"
32
33
namespace
MyGUI
34
{
35
36
class
MYGUI_EXPORT
ControllerManager
:
public
IUnlinkWidget
37
{
38
MYGUI_INSTANCE_HEADER
(
ControllerManager
)
39
40
public
:
41
void
initialise();
42
void
shutdown();
43
44
// создает контроллер
45
ControllerItem
* createItem(
const
std::string& _type);
46
53
void
addItem(
Widget
* _widget,
ControllerItem
* _item);
54
58
void
removeItem(
Widget
* _widget);
59
60
private
:
61
void
_unlinkWidget(
Widget
* _widget);
62
void
frameEntered(
float
_time);
63
void
clear();
64
65
private
:
66
typedef
std::pair<Widget*, ControllerItem *> PairControllerItem;
67
typedef
std::list<PairControllerItem> ListControllerItem;
68
ListControllerItem mListItem;
69
70
};
71
72
}
// namespace MyGUI
73
74
#endif // __MYGUI_CONTROLLER_MANAGER_H__
Generated by
1.8.1.2