00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __MYGUI_OVERLAPPED_LAYER_H__
00024 #define __MYGUI_OVERLAPPED_LAYER_H__
00025
00026 #include "MyGUI_Prerequest.h"
00027 #include "MyGUI_Types.h"
00028 #include "MyGUI_ILayer.h"
00029
00030 namespace MyGUI
00031 {
00032
00033 class MYGUI_EXPORT OverlappedLayer :
00034 public ILayer
00035 {
00036 MYGUI_RTTI_DERIVED( OverlappedLayer )
00037
00038 public:
00039 OverlappedLayer();
00040 virtual ~OverlappedLayer();
00041
00042 virtual void deserialization(xml::ElementPtr _node, Version _version);
00043
00044
00045 virtual ILayerNode* createChildItemNode();
00046
00047 virtual void destroyChildItemNode(ILayerNode* _node);
00048
00049
00050 virtual void upChildItemNode(ILayerNode* _node);
00051
00052
00053 virtual EnumeratorILayerNode getEnumerator();
00054
00055
00056 virtual ILayerItem* getLayerItemByPoint(int _left, int _top);
00057
00058 virtual IntPoint getPosition(int _left, int _top) const;
00059
00060 virtual const IntSize& getSize() const;
00061
00062
00063 virtual void renderToTarget(IRenderTarget* _target, bool _update);
00064
00065 virtual void dumpStatisticToLog();
00066
00067 protected:
00068 bool mIsPick;
00069 VectorILayerNode mChildItems;
00070 };
00071
00072 }
00073
00074 #endif // __MYGUI_OVERLAPPED_LAYER_H__