MyGUI 3.4.2
MyGUI_ISubWidget.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_I_SUB_WIDGET_H_
8#define MYGUI_I_SUB_WIDGET_H_
9
10#include "MyGUI_Prerequest.h"
12#include "MyGUI_ILayerNode.h"
13#include "MyGUI_Types.h"
14#include "MyGUI_IRenderTarget.h"
15#include "MyGUI_IStateInfo.h"
16#include "MyGUI_IObject.h"
17
18namespace MyGUI
19{
20
21 class ISubWidget;
22 typedef std::vector<ISubWidget*> VectorSubWidget;
23
25 public ICroppedRectangle,
26 public IObject
27 {
29
30 public:
31 ISubWidget() : mVisible(true) { }
32
34 virtual void destroyDrawItem() = 0;
35
36 virtual void setAlpha(float /*_alpha*/) { }
37
38 virtual void setStateData(IStateInfo* /*_data*/) { }
39
40 virtual void doRender() = 0;
41
42 virtual void setAlign(Align _value)
43 {
44 mAlign = _value;
45 }
46 virtual void setVisible(bool _value)
47 {
48 mVisible = _value;
49 }
50
51 virtual void _updateView() { }
52 virtual void _correctView() { }
53
54 virtual void _setAlign(const IntSize& /*_oldsize*/) { }
55
56 virtual void doManualRender(IVertexBuffer* /*_buffer*/, ITexture* /*_texture*/, size_t /*_count*/) { }
57
58 protected:
61 };
62
63} // namespace MyGUI
64
65#endif // MYGUI_I_SUB_WIDGET_H_
#define MYGUI_EXPORT
#define MYGUI_RTTI_DERIVED(DerivedType)
Definition MyGUI_RTTI.h:48
virtual void createDrawItem(ITexture *_texture, ILayerNode *_node)=0
virtual void setAlign(Align _value)
virtual void doRender()=0
virtual void setStateData(IStateInfo *)
virtual void _updateView()
virtual void setAlpha(float)
virtual void _correctView()
virtual void doManualRender(IVertexBuffer *, ITexture *, size_t)
virtual void destroyDrawItem()=0
virtual void setVisible(bool _value)
virtual void _setAlign(const IntSize &)
std::vector< ISubWidget * > VectorSubWidget