Exemple #1
0
        private void RemoveLastVehicle(object sender, EventArgs e)
        {
            if (vehicles.Count < 1)
            {
                errorLabel.Text = ErrorMessages.NO_VEHICLES_TO_REMOVE;
                timerClearErrors.Stop();
                timerClearErrors.Start();

                return;
            }

            string           action           = "remove the last vehicle";
            FormConfirmation formConfirmation = new FormConfirmation(action);

            var result = formConfirmation.ShowDialog();

            if (result != DialogResult.OK)
            {
                return;
            }

            Vehicle lastVehicle = vehicles[vehicles.Count - 1];

            IDManagement.MarkVehicleIDAsAvailable(lastVehicle.ID);

            lastVehicle.Selected = false;
            RemoveVehicle(lastVehicle);

            errorLabel.Text = "";
        }
Exemple #2
0
        private void RemoveLastRental(object sender, EventArgs e)
        {
            if (rentals.Count < 1)
            {
                errorLabel.Text = ErrorMessages.NO_RENTALS_TO_REMOVE;
                timerClearErrors.Stop();
                timerClearErrors.Start();

                return;
            }

            string           action           = "remove the last rental";
            FormConfirmation formConfirmation = new FormConfirmation(action);

            var result = formConfirmation.ShowDialog();

            if (result != DialogResult.OK)
            {
                return;
            }

            Rental lastRental = rentals[rentals.Count - 1];

            IDManagement.MarkRentalIDAsAvailable(lastRental.ID);

            lastRental.Selected = false;
            RemoveRental(lastRental);

            errorLabel.Text = "";
        }
Exemple #3
0
 void AddRental(Rental rental)
 {
     rentedCarsElementsPanel.VerticalScroll.Value = 0;
     rentals.Add(rental);
     IDManagement.MarkRentalIDAsUnavailable(rental.ID);
     PopulateRentalsPanel();
 }
Exemple #4
0
 public void AddVehicle(Vehicle vehicle)
 {
     availableCarsElementsPanel.VerticalScroll.Value = 0;
     vehicles.Add(vehicle);
     IDManagement.MarkVehicleIDAsUnavailable(vehicle.ID);
     PopulateVehiclesPanel();
 }
Exemple #5
0
        void RemoveVehicle(Vehicle vehicle, bool makeIDAvailable = true)
        {
            if (makeIDAvailable)
            {
                IDManagement.MarkVehicleIDAsAvailable(vehicle.ID);
            }

            availableCarsElementsPanel.VerticalScroll.Value = 0;
            vehicles.Remove(vehicle);
            PopulateVehiclesPanel();
        }
        public Vehicle(Vehicle vehicle)
        {
            InitializeComponent();
            PrepareComponents();

            ID = vehicle.ID;
            IDManagement.MarkVehicleIDAsUnavailable(ID);
            VehicleName      = vehicle.VehicleName;
            FuelPercentage   = vehicle.FuelPercentage;
            DamagePercentage = vehicle.DamagePercentage;

            UpdateLanguage(Program.Language);
        }
        public Rental(Rental rental)
        {
            InitializeComponent();

            ID = rental.ID;
            IDManagement.MarkRentalIDAsUnavailable(ID);

            Vehicle    = rental.Vehicle;
            Owner      = rental.Owner;
            ReturnDate = rental.ReturnDate;

            UpdateLanguage(Program.Language);
        }
        public Rental(Vehicle vehicle, Person owner, DateTime returnDate)
        {
            InitializeComponent();

            ID = IDManagement.LowestAvailableRentalID;
            IDManagement.MarkRentalIDAsUnavailable(ID);

            Vehicle    = vehicle;
            Owner      = owner;
            ReturnDate = returnDate;

            UpdateLanguage(Program.Language);
        }
        public Vehicle(short id, string vehicleName, short fuelPercent = 0, short damagePercent = 0)
        {
            InitializeComponent();
            PrepareComponents();

            ID = id;
            IDManagement.MarkVehicleIDAsUnavailable(id);

            VehicleName      = vehicleName;
            FuelPercentage   = fuelPercent;
            DamagePercentage = damagePercent;

            UpdateLanguage(Program.Language);
        }
Exemple #10
0
        public void RemoveRental(Rental rental, bool makeRentalIDAvailable = true, bool makeVehicleIDAvailable = true)
        {
            if (makeRentalIDAvailable)
            {
                IDManagement.MarkRentalIDAsAvailable(rental.ID);
            }

            if (makeVehicleIDAvailable)
            {
                IDManagement.MarkVehicleIDAsAvailable(rental.Vehicle.ID);
            }

            rentedCarsElementsPanel.VerticalScroll.Value = 0;
            rentals.Remove(rental);
            PopulateRentalsPanel();
        }
Exemple #11
0
        private void RemoveSelectedRentals(object sender, EventArgs e)
        {
            if (indexesOfSelectedRentals.Count > 0)
            {
                string           action           = "remove the selected rentals";
                FormConfirmation formConfirmation = new FormConfirmation(action);

                var result = formConfirmation.ShowDialog();
                if (result != DialogResult.OK)
                {
                    return;
                }

                errorLabel.Text = "";

                // Store the rentals to be removed in a temporary List
                List <Rental> rentalsToBeRemoved = new List <Rental>();
                foreach (int index in indexesOfSelectedRentals)
                {
                    short idToBeMarkedAsAvailable = rentals[index].ID;
                    IDManagement.MarkRentalIDAsAvailable(idToBeMarkedAsAvailable);
                    rentalsToBeRemoved.Add(rentals.ElementAt(index));
                }

                // Remove the stored vehicles from the vehicles List
                foreach (Rental rental in rentalsToBeRemoved)
                {
                    rentals.Remove(rental);
                }

                PopulateRentalsPanel();
                indexesOfSelectedRentals.Clear();
            }

            else
            {
                errorLabel.Text = ErrorMessages.NO_RENTALS_SELECTED;
                timerClearErrors.Stop();
                timerClearErrors.Start();
            }
        }
Exemple #12
0
        public MainWindow()
        {
            InitializeComponent();

            errorLabel.Text = "";

            returnedVehiclesLogManager = new Logger("log.txt");

            vehicles = new List <Vehicle>();
            rentals  = new List <Rental>();

            vehicleSorter = new VehicleSorter();
            rentalSorter  = new RentalSorter();

            saveToDatabaseToolStripMenuItem.Available   = false;
            loadFromDatabaseToolStripMenuItem.Available = false;

            InitializeSortOptionsForVehicles();
            InitializeSortOptionsForRentals();

            timerProgramDateUpdater.Start();

            IDManagement.InitializeIndexes();
        }