MyGUI
3.0.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
MyGUIEngine
include
MyGUI_ISubWidget.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_I_SUB_WIDGET_H__
24
#define __MYGUI_I_SUB_WIDGET_H__
25
26
#include "
MyGUI_Prerequest.h
"
27
#include "
MyGUI_ICroppedRectangle.h
"
28
#include "
MyGUI_ILayerNode.h
"
29
#include "
MyGUI_Types.h
"
30
#include "
MyGUI_IRenderTarget.h
"
31
#include "
MyGUI_IStateInfo.h
"
32
#include "
MyGUI_IObject.h
"
33
34
namespace
MyGUI
35
{
36
37
class
ISubWidget
;
38
typedef
std::vector<ISubWidget*>
VectorSubWidget
;
39
40
class
MYGUI_EXPORT
ISubWidget
:
41
public
ICroppedRectangle
,
42
public
IObject
43
{
44
MYGUI_RTTI_DERIVED
(
ISubWidget
)
45
46
public:
47
virtual ~
ISubWidget
() { }
48
49
virtual
void
createDrawItem(
ITexture
* _texture,
ILayerNode
* _node) = 0;
50
virtual
void
destroyDrawItem() = 0;
51
52
virtual
void
setAlpha
(
float
_alpha) { }
53
54
virtual
void
setStateData
(
IStateInfo
* _data) { }
55
56
virtual
void
doRender() = 0;
57
58
};
59
60
}
// namespace MyGUI
61
62
#endif // __MYGUI_I_SUB_WIDGET_H__
Generated by
1.8.1.2