summaryrefslogtreecommitdiffstats
path: root/menu_demo/menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'menu_demo/menu.c')
-rw-r--r--menu_demo/menu.c70
1 files changed, 70 insertions, 0 deletions
diff --git a/menu_demo/menu.c b/menu_demo/menu.c
new file mode 100644
index 0000000..b265fbb
--- /dev/null
+++ b/menu_demo/menu.c
@@ -0,0 +1,70 @@
+#ifdef G_OS_WIN32
+#define WIN32_LEAN_AND_MEAN 1
+#include <windows.h>
+#endif
+
+#include <gl\gl.h>
+
+enum MenuState {
+ MENU_MAIN,
+ MENU_OPTIONS,
+ MENU_SELECTION
+};
+
+int g_iState;
+
+void MenuMainRender(void)
+{
+ glBegin(GL_QUADS);
+ glVertex3d( 10, 10, 0);
+ glVertex3d( 10, -10, 0);
+ glVertex3d(-10, -10, 0);
+ glVertex3d(-10, 10, 0);
+ glEnd();
+
+} // MenuMainRender
+
+
+void MenuOptionsRender(void)
+{
+} // MenuMainRender
+
+
+void MenuSelectionRender(void)
+{
+} // MenuMainRender
+
+
+void MenuInit(void)
+{
+ g_iState = MENU_MAIN;
+
+} // InitMenu
+
+int MenuGetState(void)
+{
+ return g_iState;
+
+} // GetMenuState
+
+void MenuRender(void)
+{
+ glColor3d(0, 0, 0);
+
+ switch (g_iState)
+ {
+ case MENU_MAIN:
+ MenuMainRender();
+ break;
+
+ case MENU_OPTIONS:
+ MenuOptionsRender();
+ break;
+
+ case MENU_SELECTION:
+ MenuSelectionRender();
+ break;
+
+ }
+
+} // Render