Files
Work/common/ELASTIC.HPP
2024-08-07 09:09:36 -04:00

53 lines
1.8 KiB
C++

#ifndef _COMMON_ELASTICCONTROL_HPP_
#define _COMMON_ELASTICCONTROL_HPP_
#ifndef _COMMON_RUBBERCONTROL_HPP_
#include <common/rubber.hpp>
#endif
#ifndef _COMMON_CONTROL_HPP_
#include <common/control.hpp>
#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<ElasticControl> 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