I just created an abstract base class called button that I will use as an interface button in a dirctdraw/network game I am creating.
Take a look and tell me if it looks ok.
I questioned one thing, can you make the destructor the pure virtual function?
Code:
#ifndef _BUTTON_H_
#define _BUTTON_H_
#include <ddraw.h>
#include <windows.h>
#include <windowsx.h>
class Button
{
public:
Button();
virtual IDirectDrawSurface * hover(IDirectDrawSurface * pddshovered,int width,int height);
virtual sfns * pressed(IDirectDrawSurface * pddspressed, int width, int height);
virtual bool released(sfns * pscleansfns);
virtual IDirectDrawSurface * display(IDirectDrawSurface * pddsbuttonsurface, int width, int height);
virtual IDirectDrawSurface * erase(IDirectDrawSurface * pddsbackbufferclearsurface,int width, int height);
virtual ~Button(void) = 0;
private:
STRUCT
{
IDirectSurface * pdds;
int surfacewidth;
int surfaceheight;
int result;
} sfns;
};//endclass
#endif;