#ifndef _COMMON_ELASTICCONTROL_HPP_ #define _COMMON_ELASTICCONTROL_HPP_ #ifndef _COMMON_RUBBERCONTROL_HPP_ #include #endif #ifndef _COMMON_CONTROL_HPP_ #include #endif class ElasticControl : public Control, private RubberControl { public: ElasticControl(void); virtual ~ElasticControl(); virtual HWND createControl(const String &className,const String &windowName,DWORD dwStyle,const Rect &initRect,GUIWindow &parentWindow,int controlID); virtual HWND createControl(DWORD extendedStyle,const String &className,const String &windowName,DWORD dwStyle,const Rect &initRect,GUIWindow &parentWindow,int controlID); virtual HWND assumeControl(GUIWindow &parentWindow,HWND hControlWnd,UINT controlID); protected: virtual GUIWindow &controlWindow(void); private: ElasticControl(const ElasticControl &someElasticControl); ElasticControl &operator=(const ElasticControl &someElasticControl); HWND createControl(const String &className,const String &windowName,DWORD dwStyle,const Rect &initRect,HWND hParentWnd,int controlID); HWND createControl(DWORD extendedStyle,const String &className,const String &windowName,DWORD dwStyle,const Rect &initRect,HWND hParent,int controlID); CallbackData::ReturnType sizeHandler(CallbackData &someCallbackData); Callback mSizeHandler; GUIWindow *mlpParentWindow; }; inline ElasticControl::ElasticControl(void) : mlpParentWindow(0) { mSizeHandler.setCallback(this,&ElasticControl::sizeHandler); } inline ElasticControl::ElasticControl(const ElasticControl &/*someElasticControl*/) { // no implementation } inline ElasticControl::~ElasticControl() { } inline ElasticControl &ElasticControl::operator=(const ElasticControl &/*someElasticControl*/) { // no implementation return *this; } #endif