Website Summary Files Commits Branches @commit @diff @stats
path: root / src / Generic / ConsoleInterface / Menu.h
diff options
context:
space:
mode:
1 files changed, 27 insertions, 0 deletions
-rw-r--r--src/Generic/ConsoleInterface/Menu.h27
diff --git a/src/Generic/ConsoleInterface/Menu.h b/src/Generic/ConsoleInterface/Menu.h
new file mode 100644
index 0000000..2501871
--- /dev/null
+++ b/src/Generic/ConsoleInterface/Menu.h
@@ -0,0 +1,27 @@
+#ifndef HEADER_CONSOLEINTERFACE_MENU
+#define HEADER_CONSOLEINTERFACE_MENU
+
+#include "Command.h"
+#include "../List/List.hpp"
+
+class Menu {
+ char title[256];
+ List<Command> menuOptions;
+
+ bool backExistsApp;
+ bool isSubMenu;
+
+public:
+ Menu();
+ Menu(const char* title, bool backExistsApp, bool isSubMenu);
+ Menu(const char* title, bool backExistsApp, bool isSubMenu, const Command* commands, unsigned commandCount);
+
+ void addCommand(const Command& command);
+
+ void registerError(const char* message) const;
+ void registerWarning(const char* message) const;
+ void registerSuccess(const char* message) const;
+ void navigate() const;
+};
+
+#endif