MyGUI 3.4.3
MyGUI_OverlappedLayer.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_OVERLAPPED_LAYER_H_
8#define MYGUI_OVERLAPPED_LAYER_H_
9
10#include "MyGUI_Prerequest.h"
11#include "MyGUI_Types.h"
12#include "MyGUI_ILayer.h"
13
14namespace MyGUI
15{
16
18 {
20
21 public:
23 ~OverlappedLayer() override;
24
25 void deserialization(xml::ElementPtr _node, Version _version) override;
26
27 void setPick(bool _pick);
28
30 void destroyChildItemNode(ILayerNode* _item) override;
31
32 // up child item (make it draw and pick above others)
33 void upChildItemNode(ILayerNode* _item) override;
34
35 // child items list
36 EnumeratorILayerNode getEnumerator() const override;
37
38 size_t getLayerNodeCount() const override;
39
40 ILayerNode* getLayerNodeAt(size_t _index) const override;
41
42 // return widget at position
43 ILayerItem* getLayerItemByPoint(int _left, int _top) const override;
44
45 // return position in layer coordinates
46 IntPoint getPosition(int _left, int _top) const override;
47
48 // return layer size
49 const IntSize& getSize() const override;
50
51 // render layer
52 void renderToTarget(IRenderTarget* _target, bool _update) override;
53
54 void resizeView(const IntSize& _viewSize) override;
55
56 bool isOutOfDate() const;
57
58 protected:
59 bool mIsPick{false};
61 bool mOutOfDate{false};
63 };
64
65} // namespace MyGUI
66
67#endif // MYGUI_OVERLAPPED_LAYER_H_
#define MYGUI_EXPORT
#define MYGUI_RTTI_DERIVED(DerivedType)
Definition MyGUI_RTTI.h:69
ILayer()=default
const IntSize & getSize() const override
void deserialization(xml::ElementPtr _node, Version _version) override
EnumeratorILayerNode getEnumerator() const override
ILayerNode * getLayerNodeAt(size_t _index) const override
void resizeView(const IntSize &_viewSize) override
IntPoint getPosition(int _left, int _top) const override
ILayerItem * getLayerItemByPoint(int _left, int _top) const override
void destroyChildItemNode(ILayerNode *_item) override
ILayerNode * createChildItemNode() override
void renderToTarget(IRenderTarget *_target, bool _update) override
void upChildItemNode(ILayerNode *_item) override
size_t getLayerNodeCount() const override
Element * ElementPtr
Enumerator< VectorILayerNode > EnumeratorILayerNode
types::TPoint< int > IntPoint
Definition MyGUI_Types.h:27
std::vector< ILayerNode * > VectorILayerNode
types::TSize< int > IntSize
Definition MyGUI_Types.h:30