From 783143974e36856e92be3fe1b13cc6a0d0b1faeb Mon Sep 17 00:00:00 2001 From: drumsetmonkey Date: Tue, 2 Feb 2016 08:46:58 -0500 Subject: Better menus and config writing --- include/ui.h | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'include/ui.h') diff --git a/include/ui.h b/include/ui.h index bf9c0ae..ade5850 100644 --- a/include/ui.h +++ b/include/ui.h @@ -8,6 +8,7 @@ #include #include +#include #include #include #include @@ -17,7 +18,6 @@ typedef void(*menuFunc)(); - struct menuItem{ int member; union{ @@ -41,13 +41,23 @@ struct menuItem{ float sliderLoc; }slider; - }; }; -namespace ui { +class Menu{ +public: + std::vectoritems; + Menu *child; + Menu *parent; + void gotoChild(); + void gotoParent(); +}; + +namespace ui { menuItem createButton(vec2 l, dim2 d, Color c, const char* t, menuFunc f); + menuItem createChildButton(vec2 l, dim2 d, Color c, const char* t); + menuItem createParentButton(vec2 l, dim2 d, Color c, const char* t); menuItem createSlider(vec2 l, dim2 d, Color c, float min, float max, const char* t, float* v); /** * Contains the coordinates of the mouse inside the window. @@ -59,9 +69,6 @@ namespace ui { * These flags are used elsewhere. */ - extern bool oMenu; - extern bool pMenu; - extern bool menu; extern bool debug; extern bool posFlag; extern unsigned int fontSize; @@ -126,7 +133,7 @@ namespace ui { void quitGame(); void quitMenu(); void optionsMenuF(); - void drawMenu(std::vectormi); + void drawMenu(Menu* menu); /* -- cgit v1.2.3