1 /*!
2 	@file
3 	@author		Albert Semenov
4 	@date		12/2010
5 */
6 
7 #ifndef _43563b75_17fc_4430_ae3c_864c614811af_
8 #define _43563b75_17fc_4430_ae3c_864c614811af_
9 
10 #include "BaseLayout/BaseLayout.h"
11 #include "PanelView/BasePanelViewItem.h"
12 #include "WidgetTypes.h"
13 #include "WidgetContainer.h"
14 #include "IPropertyField.h"
15 
16 namespace tools
17 {
18 
19 	class PanelTemplateProperties :
20 		public wraps::BasePanelViewItem
21 	{
22 	public:
23 		PanelTemplateProperties();
24 
25 		virtual void initialise();
26 		virtual void shutdown();
27 
28 		void update(MyGUI::Widget* _currentWidget, WidgetStyle* _widgetType);
29 
30 	private:
31 		void notifyAction(const std::string& _name, const std::string& _value, bool _final);
32 
33 		void AddParametrs(WidgetStyle* widgetType, WidgetContainer* widgetContainer, MyGUI::Widget* _currentWidget);
34 		void destroyPropertyFields();
35 
36 		void updateSize();
37 
38 	private:
39 		typedef std::vector<IPropertyField*> VectorPropertyField;
40 		VectorPropertyField mFields;
41 		MyGUI::Widget* mCurrentWidget;
42 	};
43 
44 }
45 
46 #endif
47