MyGUI
3.0.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
MyGUIEngine
include
MyGUI_LayoutManager.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_LAYOUT_MANAGER_H__
24
#define __MYGUI_LAYOUT_MANAGER_H__
25
26
#include "
MyGUI_Prerequest.h
"
27
#include "
MyGUI_Instance.h
"
28
#include "
MyGUI_XmlDocument.h
"
29
#include "
MyGUI_WidgetDefines.h
"
30
#include "
MyGUI_Gui.h
"
31
32
namespace
MyGUI
33
{
34
35
class
MYGUI_EXPORT
LayoutManager
36
{
37
MYGUI_INSTANCE_HEADER
(
LayoutManager
)
38
39
public
:
40
void
initialise();
41
void
shutdown();
42
47
VectorWidgetPtr
& load(
const
std::string& _file);
48
void
_load(
xml::ElementPtr
_node,
const
std::string& _file,
Version
_version);
49
56
VectorWidgetPtr
& loadLayout(
const
std::string& _file,
const
std::string& _prefix =
""
,
Widget
* _parent =
nullptr
);
57
59
void
unloadLayout(
VectorWidgetPtr
& _widgets);
60
61
private
:
62
void
parseLayout(
VectorWidgetPtr
& _widgets,
xml::ElementPtr
_root);
63
void
parseWidget(
VectorWidgetPtr
& _widgets,
xml::ElementEnumerator
& _widget,
Widget
* _parent);
64
65
private
:
66
// для возврата последней загрузки
67
VectorWidgetPtr
mVectorWidgetPtr;
68
69
// префикс при загрузке лейаута
70
std::string layoutPrefix;
71
// префикс при загрузке лейаута
72
Widget
* layoutParent;
73
74
};
75
76
}
// namespace MyGUI
77
78
#endif // __MYGUI_LAYOUT_MANAGER_H__
Generated by
1.8.1.2