// // Created by DH10MBO on 21.11.2024. // #ifndef MENUMANAGER_H #define MENUMANAGER_H #include class MenuManager { private: int* currentMenu; std::string* selectedMetric; std::string* selectedRegion; public: MenuManager(int* currentMenu, std::string* selectedMetric, std::string* selectedRegion){ this->currentMenu = currentMenu; this->selectedRegion = selectedRegion; this->selectedMetric = selectedMetric; } int AcceptIntInputInRange(int minInput, int maxInput) { int input; std::cin >> input; while (input < minInput || input > maxInput) { std::cout << "Enter a number between " << minInput << " and " << maxInput << ": "; std::cin >> input; } return input; } int ShowMainMenu() { // system("cls"); std::cout<<"Select Information to display" <> prompt; return prompt; } void MainInteraction() { *currentMenu = ShowMainMenu(); switch (*currentMenu) { case 0: return; case 1: *selectedMetric = ShowPromptAndGetString("Enter The Metric to get total Profit for"); break; case 2: *selectedMetric = ShowPromptAndGetString("Enter The item type to search for"); *selectedRegion = ShowPromptAndGetString("Enter The region to search in"); break; case 3: *selectedMetric = ShowPromptAndGetString("Enter The country to get most common type for"); break; case 4: *selectedRegion = ShowPromptAndGetString("Select Country to count online vs offline purchases"); break; default: std::cout << "You should not be able to reach this point if you entered a legal number"; } } }; #endif //MENUMANAGER_H