model divided into game => model and plateau
[quoridor:quoridor.git] / Main.cpp
1 #ifdef __APPLE__\r
2 #include <GLUT/glut.h>\r
3 #else\r
4 #include <GL/glut.h>\r
5 #endif\r
6 \r
7 #include "Controller.h"\r
8 \r
9 extern void staticDisplayCallBack();\r
10 //Model *model = new Model(2);\r
11 \r
12 // Call backs statiques\r
13 void displayCallBack()\r
14 {\r
15         View::getInstance()->display();\r
16 }\r
17 \r
18 void reshapeCallBack(int width, int height)\r
19 {\r
20         View::getInstance()->reshape(width, height);\r
21 }\r
22 \r
23 \r
24 void staticSpecialCallBack(int key, int x, int y)\r
25 {\r
26         Controller::specialCallback(key, x, y);\r
27 }\r
28 \r
29 void mouseCallBack(int button, int state, int x, int y)\r
30 {\r
31         Controller::mouse(button, state, x, y);\r
32 }\r
33 \r
34 void keyboardCallBack(unsigned char key, int x, int y)\r
35 {\r
36         Controller::keyboard(key, x, y);\r
37 }\r
38 \r
39 \r
40 int main(int argc, char** argv)\r
41 {\r
42         \r
43 \r
44         // Intialisation de glut\r
45         glutInit(&argc, argv);\r
46         glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);\r
47         glutInitWindowSize(500,500);\r
48         glutInitWindowPosition(100, 100);\r
49         glutCreateWindow(argv[0]);\r
50         // Call back pour le dessin de la vue\r
51         glutDisplayFunc(displayCallBack);\r
52         // Call back de redimensionnement de la fenĂȘtre\r
53         glutReshapeFunc(reshapeCallBack);\r
54         // Call back de l'appui des touches clavier\r
55         glutSpecialFunc(staticSpecialCallBack);\r
56         // Call back de la souris\r
57    glutMouseFunc(mouseCallBack);\r
58    // Call back du clavier.\r
59    glutKeyboardFunc(keyboardCallBack);\r
60 \r
61 \r
62         //glutIdleFunc(idle);\r
63 \r
64         // Controller is a singleton\r
65         Controller *controller = Controller::getInstance(); \r
66         controller->startGame();        \r
67 \r
68 \r
69    return 0;\r
70 }\r