From 268862f4afc6860e55a2dfec2bc7779a5c139582 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Thu, 5 May 2022 18:08:40 +0300 Subject: Autocommit at 05.05.2022 @ 18:08 --- src/ConsoleInterface/Menu.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/ConsoleInterface/Menu.cpp') diff --git a/src/ConsoleInterface/Menu.cpp b/src/ConsoleInterface/Menu.cpp index 07be42e..9b4e98e 100644 --- a/src/ConsoleInterface/Menu.cpp +++ b/src/ConsoleInterface/Menu.cpp @@ -20,11 +20,19 @@ void Menu::addCommand(const Command& command) { bool error = false; String errMessage; -void Menu::registerError(const char* message) { +void Menu::registerError(const char* message) const { error = true; errMessage = message; } +bool success = false; +String succMessage; + +void Menu::registerSuccess(const char* message) const { + success = true; + succMessage = message; +} + void Menu::navigate() const { if (menuOptions.get_count() == 0) { printLine("Menu is empty!"); @@ -45,6 +53,10 @@ void Menu::navigate() const { printError(errMessage.get_cstr()); error = false; } + if (success) { + printSuccess(succMessage.get_cstr()); + success = false; + } _printInputBoxLabel("Execute No [0-"); print(menuOptions.get_count()); @@ -52,7 +64,7 @@ void Menu::navigate() const { read(buffer); if (buffer > menuOptions.get_count()) - error = true; + registerError("Invalid menu option!"); else if (buffer > 0) menuOptions[buffer - 1].run(); } -- cgit v1.3.1-23-gd82d