private void manageGarage() { bool exit = false; while (!exit) { (r_Screens[eUIScreens.MainMenu] as MenuScreen).Display(out string userInput); eMainMenuOptions userOption = (eMainMenuOptions)parseMenuOption(userInput); switch (userOption) { case eMainMenuOptions.AddNewVehicle: addNewVehicle(); break; case eMainMenuOptions.DisplayLicenseNumbersInTheGarage: displayLicenseNumbersInTheGarage(); break; case eMainMenuOptions.VehicleActions: displayVehicleActions(); break; case eMainMenuOptions.Exit: exit = true; break; } } }
private void doActionUserByMainMenuChoice(eMainMenuOptions i_Choice) { switch (i_Choice) { case eMainMenuOptions.EnterNewVehicle: EnterNewVehicleOp(); break; case eMainMenuOptions.ShowLicenseNumbers: showLicenceNumbersOp(); break; case eMainMenuOptions.ChangeVehicleState: changeVehicleStateOp(); break; case eMainMenuOptions.AddAirToWheels: addAirToWheelsOp(); break; case eMainMenuOptions.AddFuelToVehicle: addFuelToVehicleOp(); break; case eMainMenuOptions.ChargeVehicle: charageVehicleOp(); break; case eMainMenuOptions.ShowVehiclesData: showVehiclesDataOp(); break; } }
private eMainMenuOptions getUserChoice() { string input; bool parseSucceeded = false; eMainMenuOptions choiceValueInput = eMainMenuOptions.InvalidChoice; do { input = Console.ReadLine(); try { choiceValueInput = CustomConverter.ConvertInputToChoice(input); parseSucceeded = true; } catch (FormatException e) { parseSucceeded = false; Console.WriteLine(string.Format("{0} please try again", e.Message)); } catch (ArgumentException e) { parseSucceeded = false; Console.WriteLine(string.Format("{0} please try again", e.Message)); } }while (!parseSucceeded); return(choiceValueInput); }
public void Run() { eMainMenuOptions mainMenuChoice = eMainMenuOptions.InvalidChoice; do { MenusPrinter.PrintMainMenu(); mainMenuChoice = getUserChoice(); doActionUserByMainMenuChoice(mainMenuChoice); }while (mainMenuChoice != eMainMenuOptions.ExitProgram); }
/* Private Methods */ private void navigateTo(string i_ChoiceIndex) { eMainMenuOptions choice = (eMainMenuOptions)Enum.Parse(typeof(eMainMenuOptions), i_ChoiceIndex); switch (choice) { case (eMainMenuOptions.InsertVehicle): insertVehicleToGarage(); break; case (eMainMenuOptions.DisplayListOfLicenseNumbers): displayLicenseNumberByStatus(); break; case (eMainMenuOptions.ChangeVehicleStatus): changeVehicleStatus(); break; case (eMainMenuOptions.InflateTiresToMaximum): inflateAllWheelsToMax(); break; case (eMainMenuOptions.RefuelVehicle): refuleVehicle(); break; case (eMainMenuOptions.ChargeVehicle): rechargeVehicle(); break; case (eMainMenuOptions.DisplayVehicleInformation): displayVehicleDetails(); break; default: // None or Exit break; } }
public void DisplayMainMenu() { while (!m_QuitFlag) { Console.Clear(); Console.WriteLine(@"Please choose an option from the menu"); try { displayEnumOptions <eMainMenuOptions>(); eMainMenuOptions userSelection = (eMainMenuOptions)getEnumChoiceFromUser <eMainMenuOptions>(); Console.Clear(); switch (userSelection) { case eMainMenuOptions.AddVehicle: addVehicle(); break; case eMainMenuOptions.DisplayVehiclesLicenseNumbers: displayVehiclesLicenseNumbers(); break; case eMainMenuOptions.ChangeVehicleStatus: changeVehicleStatus(); break; case eMainMenuOptions.PumpVehicleTires: pumpVehicleTires(); break; case eMainMenuOptions.RefuelVehicle: refuelVehicle(); break; case eMainMenuOptions.ChargeVehicle: chargeVehicle(); break; case eMainMenuOptions.DisplayCertainVehicle: displayCertainVehicle(); Thread.Sleep(k_SleepTime); break; case eMainMenuOptions.Quit: Console.WriteLine("Bye Bye :-)"); m_QuitFlag = true; break; } } catch (FormatException formatException) { Console.WriteLine("There was an error with the input format.{0}{1}", Environment.NewLine, formatException.Message); } catch (ArgumentException argumentExceptionException) { Console.WriteLine("There was a logic error with the selected input.{0}{1}", Environment.NewLine, argumentExceptionException.Message); } catch (ValueOutOfRangeException outOfRangeException) { Console.WriteLine("There selected input was out of range.{0}{1}", Environment.NewLine, outOfRangeException.Message); } Thread.Sleep(k_SleepTime); } }