1 /*!
2 	@file
3 	@author		Albert Semenov
4 	@date		07/2012
5 */
6 
7 #ifndef _53f75d16_750d_44cf_aad5_1b71baecd3fb_
8 #define _53f75d16_750d_44cf_aad5_1b71baecd3fb_
9 
10 #include "IControlController.h"
11 #include "ScopeTextureControl.h"
12 
13 namespace tools
14 {
15 
16 	class GroupTextureController :
17 		public IControlController,
18 		public sigslot::has_slots<>
19 	{
20 	public:
21 		GroupTextureController();
22 
23 		virtual void setTarget(Control* _control);
24 
25 		virtual void activate();
26 		virtual void deactivate();
27 
28 	private:
29 		void notifyChangeDataSelector(DataPtr _data, bool _changeOnlySelection);
30 		void notifyChangeProperty(PropertyPtr _sender);
31 		void notifyChangeValue(const std::string& _value);
32 		void notifyChangeScope(const std::string& _scope);
33 
34 		void updateCoords(const std::string& _value);
35 
36 	private:
37 		ScopeTextureControl* mControl;
38 		std::string mParentTypeName;
39 		std::string mScopeName;
40 		DataPtr mParentData;
41 		bool mActivated;
42 	};
43 
44 }
45 
46 #endif
47