7
This file is part of MyGUI.
9
MyGUI is free software: you can redistribute it and/or modify
10
it under the terms of the GNU Lesser General Public License as published by
11
the Free Software Foundation, either version 3 of the License, or
12
(at your option) any later version.
14
MyGUI is distributed in the hope that it will be useful,
15
but WITHOUT ANY WARRANTY; without even the implied warranty of
16
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
GNU Lesser General Public License for more details.
19
You should have received a copy of the GNU Lesser General Public License
20
along with MyGUI. If not, see <http://www.gnu.org/licenses/>.
22
#ifndef __MYGUI_LAYER_ITEM_H__
23
#define __MYGUI_LAYER_ITEM_H__
25
#include "MyGUI_Prerequest.h"
26
#include "MyGUI_LayerManager.h"
27
#include "MyGUI_ILayer.h"
28
#include "MyGUI_ILayerNode.h"
29
#include "MyGUI_ILayerItem.h"
30
#include "MyGUI_ISubWidget.h"
35
class MYGUI_EXPORT LayerItem :
42
ILayer* getLayer() const;
44
virtual void attachItemToNode(ILayer* _layer, ILayerNode* _node);
45
virtual void detachFromLayer();
46
virtual void upLayerItem();
48
void setRenderItemTexture(ITexture* _texture);
50
void addChildItem(LayerItem* _item);
51
void removeChildItem(LayerItem* _item);
53
void addChildNode(LayerItem* _item);
54
void removeChildNode(LayerItem* _item);
56
void addRenderItem(ISubWidget* _item);
57
void removeAllRenderItems();
60
void restoreLayerItem();
63
void attachToLayerItemNode(ILayerNode* _node, bool _deep);
64
void detachFromLayerItemNode(bool _deep);
67
// актуально для рутового виджета
69
// конкретный айтем находящийся в слое
70
ILayerNode* mLayerNode;
71
ILayerNode* mSaveLayerNode;
73
typedef std::vector<LayerItem*> VectorLayerItem;
74
// список наших детей айтемов
75
VectorLayerItem mLayerItems;
77
VectorLayerItem mLayerNodes;
79
// вектор всех детей сабскинов
80
VectorSubWidget mDrawItems;
87
#endif // __MYGUI_LAYER_ITEM_H__
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)
7
#ifndef __MYGUI_LAYER_ITEM_H__
8
#define __MYGUI_LAYER_ITEM_H__
10
#include "MyGUI_Prerequest.h"
11
#include "MyGUI_LayerManager.h"
12
#include "MyGUI_ILayer.h"
13
#include "MyGUI_ILayerNode.h"
14
#include "MyGUI_ILayerItem.h"
15
#include "MyGUI_ISubWidget.h"
20
class MYGUI_EXPORT LayerItem :
27
ILayer* getLayer() const;
28
ILayerNode* getLayerNode() const;
30
virtual void attachItemToNode(ILayer* _layer, ILayerNode* _node);
31
virtual void detachFromLayer();
32
virtual void upLayerItem();
34
void setRenderItemTexture(ITexture* _texture);
36
void addChildItem(LayerItem* _item);
37
void removeChildItem(LayerItem* _item);
39
void addChildNode(LayerItem* _item);
40
void removeChildNode(LayerItem* _item);
42
void addRenderItem(ISubWidget* _item);
43
void removeAllRenderItems();
46
void restoreLayerItem();
49
void attachToLayerItemNode(ILayerNode* _node, bool _deep);
50
void detachFromLayerItemNode(bool _deep);
53
// актуально для рутового виджета
55
// конкретный айтем находящийся в слое
56
ILayerNode* mLayerNode;
57
ILayerNode* mSaveLayerNode;
59
typedef std::vector<LayerItem*> VectorLayerItem;
60
// список наших детей айтемов
61
VectorLayerItem mLayerItems;
63
VectorLayerItem mLayerNodes;
65
// вектор всех детей сабскинов
66
VectorSubWidget mDrawItems;
73
#endif // __MYGUI_LAYER_ITEM_H__