1 /*!
2 	@file
3 	@author		Albert Semenov
4 	@date		08/2010
5 */
6 
7 #ifndef _07f612bd_91d2_4e55_828d_a10206631a31_
8 #define _07f612bd_91d2_4e55_828d_a10206631a31_
9 
10 #include "PropertyControl.h"
11 #include "TextureBrowseControl.h"
12 #include "Dialog.h"
13 
14 namespace tools
15 {
16 
17 	class MYGUI_EXPORT_DLL PropertyTexturesControl :
18 		public PropertyControl
19 	{
20 	public:
21 		PropertyTexturesControl();
22 		virtual ~PropertyTexturesControl();
23 
24 	protected:
25 		virtual void updateCaption();
26 		virtual void updateProperty();
27 		virtual void OnInitialise(Control* _parent, MyGUI::Widget* _place, const std::string& _layoutName);
28 
29 	private:
30 		void notifyComboChangePosition(MyGUI::ComboBox* _sender, size_t _index);
31 		void notifyMouseButtonClick(MyGUI::Widget* _sender);
32 		void notifyEndDialog(Dialog* _sender, bool _result);
33 		void notifyChangeCoord(MyGUI::Widget* _sender);
34 
35 		size_t getComboIndex(const MyGUI::UString& _name);
36 
37 		void fillTextures();
38 		void updateTexture();
39 
40 	private:
41 		MyGUI::ImageBox* mImage;
42 		MyGUI::TextBox* mName;
43 		MyGUI::ComboBox* mComboBox;
44 		MyGUI::Button* mBrowse;
45 
46 		TextureBrowseControl* mTextureBrowseControl;
47 		MyGUI::VectorString mTextures;
48 		MyGUI::IntSize mTextureSize;
49 	};
50 
51 }
52 
53 #endif
54