-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDEFS.h
65 lines (55 loc) · 1.69 KB
/
DEFS.h
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
#pragma once
#include "CMUgraphicsLib\CMUgraphics.h"
//This file contais some global constants and definitions to be used in the project.
enum ActionType //The actions supported (you can add more if needed)
{
DRAW_SQUARE, //Draw a Square
DRAW_ELPS, //Draw an Ellipse
DRAW_HEX, //Draw a Hexagon
CHNG_DRAW_CLR, //Change the drawing color
CHNG_FILL_CLR, //Change the filling color
CHNG_BK_CLR, //Change background color
SELECT_FIG, //Select a Figure
DEL, //Delete a figure(s)
MOVE, //Move a figure(s)
RESIZE, //Resize a figure(s)
ROTATE, //Rotate a figure(s)
SEND_BACK, //Send a figure to the back of all figures
BRNG_FRNT, //Bring a figure to the front of all figures
SAVE, //Save the whole graph to a file
LOAD, //Load a graph from a file
EXIT, //Exit the application
DRAWING_AREA, //A click on the drawing area
STATUS, //A click on the status bar
EMPTY, //A click on empty place in the toolbar
TO_DRAW, //Switch interface to Draw mode
TO_PLAY_DRAW_TOGGLE, //Switch interface to Play mode
GAME_MODE_FIGTYPE, // set game mode to fig type only
GAME_MODE_FILLCOLOR, // set game mode to fig fill color only
GAME_MODE_TYPE_AND_FILL, // set game mode to fig type and fill color
///TODO: Add more action types (if needed)
};
struct Point //To be used for figures points
{ int x,y; };
struct GfxInfo //Graphical info of each figure (you may add more members)
{
color DrawClr; //Draw color of the figure
color FillClr; //Fill color of the figure
bool isFilled; //Figure Filled or not
int BorderWdth; //Width of figure borders
};
enum ResizeFactor
{
QUARTER,
HALF,
NORMAL,
TWOTIMES,
FOURTIMES,
};
enum TARGET_FOR_COLOR
{
BACKGROUND,
DRAWING,
FILLING,
FIGURE
};