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