1 /*!
2 	@file
3 	@author		Albert Semenov
4 	@date		02/2010
5 	@module
6 */
7 #pragma once
8 
9 #include <MyGUI.h>
10 #include "Generate/MyGUI_Managed_Widget.h"
11 
12 namespace MyGUI
13 {
14 	namespace Managed
15 	{
16 		public ref class LayerManager
17 		{
18 		private:
LayerManager()19 			LayerManager() { }
20 
21 		public:
22 			static property LayerManager ^ Instance
23 			{
24 				LayerManager ^ get( )
25 				{
26 					if (mLayerManager == nullptr)
27 					{
28 						mLayerManager = MyGUI::LayerManager::getInstancePtr();
29 						if (mLayerManager == nullptr)
30 						{
31 							throw gcnew System::NullReferenceException();
32 						}
33 					}
34 					return m_instance;
35 				}
36 			}
37 
38 		public:
39 			void UpWidget(Widget ^ _widget)
40 			{
41 				mLayerManager->upLayerItem( Convert< MyGUI::Widget* >::From(_widget) );
42 			}
43 
44 		public:
45 			void AttachToLayer(System::String ^  _layer, Widget ^ _widget)
46 			{
47 				mLayerManager->attachToLayerNode( string_utility::managed_to_utf8(_layer) , Convert< MyGUI::Widget* >::From(_widget) );
48 			}
49 
50 		private:
51 			static LayerManager ^ m_instance = gcnew LayerManager();
52 			static MyGUI::LayerManager* mLayerManager = nullptr;
53 		};
54 	}
55 }
56