1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
class guiObject
{
public:
virtual void Handle()=0;
int ifMouseOver();
int ifClicked();
protected:
bool Selected;
float Width, Height;
float x, y;
float Color[3];
};
class Button : public guiObject
{
public:
Button(float X, float Y, float W, float H)
{
x = X;
y = Y;
Width = W;
Height = H;
}
void Handle()
{
// do stuff with Buttons
}
protected:
};
class List : public guiObject
{
public:
List(float X, float Y, float W, float H)
{
x = X;
y = Y;
Width = W;
Height = H;
}
void Handle()
{
// do stuff with Lists
}
protected:
};
int main()
{
vector<guiObject *> Objects;
Objects.push_back(new Button(100,100,50,50));
Objects.push_back(new List(200,200,50,50));
for(int i = 0; i < Objects.size(); i++)
{
Objects[i]->Handle();
}
}
|