public void addNewVehicle() { DataInputScreen dataInputScreen = r_Screens[eUIScreens.DataInput] as DataInputScreen; NumericalInputScreen numericalInputScreen = r_Screens[eUIScreens.NumericalInput] as NumericalInputScreen; ScreenUtils.Clear(); dataInputScreen.SetMassageToDisplay("Enter Vehicle License Number"); dataInputScreen.Display(out string licenseNumber); r_GarageManager.AddVehicle(licenseNumber); VehicleInfo vehicleInfo = r_GarageManager.GetVehicleInfo(licenseNumber); try { string userData; dataInputScreen.SetMassageToDisplay("Enter Vehicle Owner Name"); dataInputScreen.Display(out userData); vehicleInfo.VehicleOwnerName = userData; numericalInputScreen.SetMassageToDisplay("Enter Vehicle Owner Phone Number"); numericalInputScreen.Display(out userData); vehicleInfo.VehicleOwnerPhoneNumber = userData; vehicleInfo.Vehicle = getNewVehicleFromUser(licenseNumber); } catch (Exception i_Exception) { ScreenUtils.Display(i_Exception.ToString()); ScreenUtils.Freeze(); } }
private EnergySource getEnergySourceFromUser(bool i_ForTruck) { DataInputScreen dataInputScreen = r_Screens[eUIScreens.DataInput] as DataInputScreen; eEnergySource energySourceType = eEnergySource.Fuel; EnergySource energySource = null; if (!i_ForTruck) { MenuScreen energySourceScreen = r_Screens[eUIScreens.EnergySource] as MenuScreen; energySourceScreen.Display(out string energySourInput); energySourceType = (eEnergySource)parseMenuOption(energySourInput); } if (energySourceType == eEnergySource.Fuel) { MenuScreen FuelType = r_Screens[eUIScreens.FuelType] as MenuScreen; FuelType.Display(out string fuelTypeStr); eFuel fuel = (eFuel)parseMenuOption(fuelTypeStr); dataInputScreen.SetMassageToDisplay("Enter Fuel Tank Capacity"); dataInputScreen.Display(out string fuelTankCapacity); float capacity = float.Parse(fuelTankCapacity); energySource = new FuelTank(fuel, capacity); } else { dataInputScreen.SetMassageToDisplay("Enter Maximum Time Capacity"); dataInputScreen.Display(out string timeCapacity); float capacity = float.Parse(timeCapacity); energySource = new Battery(capacity); } return(energySource); }
private Wheel getWheelFromUser() { NumericalInputScreen numericalInputScreen = r_Screens[eUIScreens.NumericalInput] as NumericalInputScreen; DataInputScreen dataInputScreen = r_Screens[eUIScreens.DataInput] as DataInputScreen; dataInputScreen.SetMassageToDisplay("Enter Wheel Manufacturer Name"); dataInputScreen.Display(out string manufacturerName); numericalInputScreen.SetMassageToDisplay("Enter Wheel Maximum Air Pressure"); numericalInputScreen.Display(out string maximumAirPressureStr); float maximumAirPressure = float.Parse(maximumAirPressureStr); return(new Wheel(manufacturerName, maximumAirPressure)); }
// $G$ CSS-027 (-1) Unnecessary blank lines. private static Dictionary <eUIScreens, Screen> getScreens() { Dictionary <eUIScreens, Screen> screens = new Dictionary <eUIScreens, Screen>(); Screen displayMassage = new Screen(); MenuScreen mainMenuScreen = new MenuScreen(typeof(eMainMenuOptions), "Garage Options: "); MenuScreen displayLicensesScreen = new MenuScreen( typeof(eDisplayLicensesOptions), "Display License Numbers In The Garage:"); MenuScreen vehicleStatusScreen = new MenuScreen( typeof(eVehicleStatus), "Select Status To Filet By:"); MenuScreen fuelScreen = new MenuScreen(typeof(eFuel), "Select Vehicle Fuel:"); MenuScreen vehicleTypeScreen = new MenuScreen( typeof(VehicleProducer.eProducibleVehicles), "Select Vehicle:"); MenuScreen energySourceScreen = new MenuScreen(typeof(eEnergySource), "Select Vehicle Energy Source:"); MenuScreen setWheelsScreen = new MenuScreen(typeof(eSetWheelMode), "Select How To Set Wheels:"); MenuScreen amountOfDoors = new MenuScreen(typeof(eAmountOfDoors), "Select How Many Doors:"); MenuScreen vehicleColor = new MenuScreen(typeof(eVehicleColor), "Select Vehicle Color:"); MenuScreen vehicleLicenseType = new MenuScreen(typeof(eLicenseType), "Select Vehicle License Type:"); MenuScreen electricityVehicleActionsScreen = new MenuScreen(typeof(eElectricityVehicleActionsOptions), "Select Vehicle Action:"); MenuScreen fuelVehicleActionsScreen = new MenuScreen(typeof(eFuelVehicleActionsOptions), "Select Vehicle Action:"); DataInputScreen dataInputScreen = new DataInputScreen(); NumericalInputScreen numericalInputScreen = new NumericalInputScreen(); BoolInputScreen boolInputScreen = new BoolInputScreen(); screens.Add(eUIScreens.MainMenu, mainMenuScreen); screens.Add(eUIScreens.DisplayLicenseNumbers, displayLicensesScreen); screens.Add(eUIScreens.DataInput, dataInputScreen); screens.Add(eUIScreens.VehicleStatuses, vehicleStatusScreen); screens.Add(eUIScreens.FuelType, fuelScreen); screens.Add(eUIScreens.VehicleType, vehicleTypeScreen); screens.Add(eUIScreens.EnergySource, energySourceScreen); screens.Add(eUIScreens.SetWheels, setWheelsScreen); screens.Add(eUIScreens.NumericalInput, numericalInputScreen); screens.Add(eUIScreens.AmountOfDoors, amountOfDoors); screens.Add(eUIScreens.VehicleColor, vehicleColor); screens.Add(eUIScreens.BoolInput, boolInputScreen); screens.Add(eUIScreens.LicenseType, vehicleLicenseType); screens.Add(eUIScreens.ElectricityVehicleActions, electricityVehicleActionsScreen); screens.Add(eUIScreens.FuelVehicleActions, fuelVehicleActionsScreen); screens.Add(eUIScreens.DisplayMassage, displayMassage); return(screens); }
private void displayVehicleActions() { string licenseNumber; DataInputScreen screen = r_Screens[eUIScreens.DataInput] as DataInputScreen; ScreenUtils.Clear(); screen.SetMassageToDisplay("Enter Vehicle License Number"); screen.Display(out licenseNumber); try { VehicleInfo vehicleInfo = r_GarageManager.GetVehicleInfo(licenseNumber); if (vehicleInfo != null) { MenuScreen menu; if (vehicleInfo.Vehicle.EnergySource is Battery) { menu = r_Screens[eUIScreens.ElectricityVehicleActions] as MenuScreen; } else { menu = r_Screens[eUIScreens.FuelVehicleActions] as MenuScreen; } bool back = false; while (!back) { menu.Display(out string userInput); vehicleActionHandler(vehicleInfo, userInput, out back); } } } catch (Exception i_Exception) { ScreenUtils.Display(i_Exception.ToString()); ScreenUtils.Freeze(); } }
// $G$ DSN-002 (-10) The UI should not know Car\Truck\Motorcycle private void getVehicleData(ref Vehicle io_Vehicle) { DataInputScreen dataInputScreen = r_Screens[eUIScreens.DataInput] as DataInputScreen; dataInputScreen.SetMassageToDisplay("Enter Vehicle Model Name"); dataInputScreen.Display(out string userInput); io_Vehicle.ModelName = userInput; io_Vehicle.EnergySource = getEnergySourceFromUser(io_Vehicle is Truck); if (io_Vehicle is Car) { getWheelsDataFromUser(eVehicleNumberOfWheels.Car, ref io_Vehicle); } else { if (io_Vehicle is Motorcycle) { getWheelsDataFromUser(eVehicleNumberOfWheels.Motorcycle, ref io_Vehicle); } else { getWheelsDataFromUser(eVehicleNumberOfWheels.Truck, ref io_Vehicle); } } }