00001 #ifndef __CModulatedXYPad__ 00002 #define __CModulatedXYPad__ 00003 00004 #include "CXYPad.hpp" 00005 using Exponent::GUI::Controls::CXYPad; 00006 00007 // =========================================================================== 00008 00009 namespace Exponent 00010 { 00011 namespace GUI 00012 { 00013 namespace Controls 00014 { 00032 class CModulatedXYPad : public CXYPad 00033 { 00035 EXPONENT_CLASS_DECLARATION; 00038 // =========================================================================== 00039 00040 public: 00041 00042 // =========================================================================== 00043 00051 CModulatedXYPad(IControlRoot *root, const long uniqueId, const CRect &area, IActionListener *listener = NULL); 00052 00056 virtual ~CModulatedXYPad(); 00057 00058 // =========================================================================== 00059 00064 virtual void drawControl(CGraphics &graphics); 00065 00071 virtual void setModulationPosition(const double xValue, const double yValue); 00072 00077 virtual void setModulationHandle(IImage *theHandle) { EXCHANGE_COUNTED_OBJECTS(m_modulationHandle, theHandle); } 00078 00083 virtual void setXValue(const double xValue); 00084 00089 virtual void setYValue(const double yValue); 00090 00091 // =========================================================================== 00092 00093 00094 protected: 00095 00096 // =========================================================================== 00097 00098 CRect m_modulationHandlePosition; 00099 IImage *m_modulationHandle; 00100 }; 00101 } 00102 } 00103 } 00104 #endif // End of CModulatedXYPad.hpp