MyGUI  3.2.1
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 
14 namespace MyGUI
15 {
16 
18  public ILayer
19  {
21 
22  public:
24  virtual ~OverlappedLayer();
25 
26  virtual void deserialization(xml::ElementPtr _node, Version _version);
27 
28  // создаем дочерний нод
29  virtual ILayerNode* createChildItemNode();
30  // удаляем дочерний нод
31  virtual void destroyChildItemNode(ILayerNode* _node);
32 
33  // поднимаем дочерний нод
34  virtual void upChildItemNode(ILayerNode* _node);
35 
36  // список детей
37  virtual EnumeratorILayerNode getEnumerator() const;
38 
39  virtual size_t getLayerNodeCount() const;
40 
41  virtual ILayerNode* getLayerNodeAt(size_t _index) const;
42 
43  // возвращает виджет по позиции
44  virtual ILayerItem* getLayerItemByPoint(int _left, int _top) const;
45 
46  virtual IntPoint getPosition(int _left, int _top) const;
47 
48  virtual const IntSize& getSize() const;
49 
50  // рисует леер
51  virtual void renderToTarget(IRenderTarget* _target, bool _update);
52 
53  virtual void resizeView(const IntSize& _viewSize);
54 
55  bool isOutOfDate() const;
56 
57  protected:
58  bool mIsPick;
59  VectorILayerNode mChildItems;
60  bool mOutOfDate;
61  IntSize mViewSize;
62  };
63 
64 } // namespace MyGUI
65 
66 #endif // __MYGUI_OVERLAPPED_LAYER_H__