MyGUI 3.4.1
MyGUI_SkinItem.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_SKIN_ITEM_H_
8#define MYGUI_SKIN_ITEM_H_
9
10#include "MyGUI_Prerequest.h"
11#include "MyGUI_LayerItem.h"
14#include "MyGUI_ResourceSkin.h"
15
16namespace MyGUI
17{
18
20 public LayerItem
21 {
22 public:
23 SkinItem();
24
26 ISubWidgetText* getSubWidgetText() const;
28 ISubWidgetRect* getSubWidgetMain() const;
29
30 void _setTextureName(const std::string& _texture);
31 const std::string& _getTextureName() const;
32
33 protected:
34 void _createSkinItem(ResourceSkin* _info);
35 void _deleteSkinItem();
36
37 void _setSkinItemAlign(const IntSize& _size);
38 void _setSkinItemVisible(bool _value);
39 void _setSkinItemColour(const Colour& _value);
40 void _setSkinItemAlpha(float _value);
41 void _correctSkinItemView();
42 void _updateSkinItemView();
43
44 bool _setSkinItemState(const std::string& _state);
45 void _setSubSkinVisible(bool _visible);
46
47 private:
48 // вектор всех детей сабскинов
49 VectorSubWidget mSubSkinChild;
50 // указатель на окно текста
51 ISubWidgetText* mText;
52 // указатель на первый не текстовой сабскин
53 ISubWidgetRect* mMainSkin;
54 // список всех стейтов
55 MapWidgetStateInfo mStateInfo;
56
57 std::string mTextureName;
58 ITexture* mTexture;
59
60 bool mSubSkinsVisible;
61 };
62
63} // namespace MyGUI
64
65#endif // MYGUI_SKIN_ITEM_H_
#define MYGUI_EXPORT
std::map< std::string, VectorStateInfo > MapWidgetStateInfo
std::vector< ISubWidget * > VectorSubWidget