working model
[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 \r
35 int main(int argc, char** argv)\r
36 {\r
37         \r
38 \r
39         // Intialisation de glut\r
40         glutInit(&argc, argv);\r
41         glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);\r
42         glutInitWindowSize(500,500);\r
43         glutInitWindowPosition(100, 100);\r
44         glutCreateWindow(argv[0]);\r
45         // Call back pour le dessin de la vue\r
46         glutDisplayFunc(displayCallBack);\r
47         // Call back de redimensionnement de la fenĂȘtre\r
48         glutReshapeFunc(reshapeCallBack);\r
49         // Call back de l'appui des touches clavier\r
50         glutSpecialFunc(staticSpecialCallBack);\r
51         // Call back de la souris\r
52    glutMouseFunc(mouseCallBack);\r
53 \r
54 \r
55         //glutIdleFunc(idle);\r
56 \r
57         // Controller is a singleton\r
58         Controller *controller = Controller::getInstance(); \r
59         controller->startGame();        \r
60 \r
61 \r
62    return 0;\r
63 }\r