Exemple #1
0
        // Precondition: Edit, Address menu item activated
        // Postcondition: EditAddressForm shows
        private void editAddressButton_Click(object sender, EventArgs e)
        {
            EditAddressForm editAddressForm;                        // The edit address dialog box form
            DialogResult    result1;                                // Result of showing form as dialog

            editAddressForm = new EditAddressForm(upv.AddressList); // Send list of addresses
            result1         = editAddressForm.ShowDialog();

            if (result1 == DialogResult.OK)                             // Add if OK
            {
                int         addIndex    = editAddressForm.AddressIndex; // Address index
                Address     add         = upv.AddressAt(addIndex);      // Add address at index
                AddressForm addressForm = new AddressForm();            // The address dialog box form

                //Sets AddressFrom properties to Address properties
                addressForm.AddressName = add.Name;
                addressForm.Address1    = add.Address1;
                addressForm.Address2    = add.Address2;
                addressForm.City        = add.City;
                addressForm.State       = add.State;
                addressForm.ZipText     = add.Zip.ToString();

                DialogResult result2 = addressForm.ShowDialog(); // Result of showing form as dialog
                if (result2 == DialogResult.OK)                  // Add if OK
                {
                    // Sets Address properties to AddressForm properties
                    add.Name     = addressForm.AddressName;
                    add.Address1 = addressForm.Address1;
                    add.Address2 = addressForm.Address2;
                    add.City     = addressForm.City;
                    add.State    = addressForm.State;
                    add.Zip      = int.Parse(addressForm.ZipText);
                }
            }
        }
        //Precondition: user clicks on addresses under the edit menu.
        //Postcondition: new window will appear allowing user to edit address.
        private void addressToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            EditAddressForm editAddress = new EditAddressForm(upv.addresses); // send addresses to new form
            DialogResult    result      = editAddress.ShowDialog();           // The result of showing form as dialog
            int             addressIndex;                                     //used to hold the position of the addresses

            if (result == DialogResult.OK)
            {
                addressIndex = editAddress.index;           //inherit the selected address index
                AddressForm editAdress = new AddressForm(); //Create a new Address form

                //fills text boxes with information from the addresses
                editAdress.Address1    = upv.addresses[addressIndex].Address1;
                editAdress.Address2    = upv.addresses[addressIndex].Address2;
                editAdress.AddressName = upv.addresses[addressIndex].Name;
                editAdress.City        = upv.addresses[addressIndex].City;
                editAdress.State       = upv.addresses[addressIndex].State;
                editAdress.ZipText     = upv.addresses[addressIndex].Zip.ToString();

                DialogResult editResult = editAdress.ShowDialog();//Stores the dialog result from editAddress

                if (editResult == DialogResult.OK)
                {
                    //puts the information back into the address list that the user edited.
                    upv.addresses[addressIndex].Address1 = editAdress.Address1;
                    upv.addresses[addressIndex].Address2 = editAdress.Address2;
                    upv.addresses[addressIndex].Name     = editAdress.AddressName;
                    upv.addresses[addressIndex].City     = editAdress.City;
                    upv.addresses[addressIndex].State    = editAdress.State;
                    upv.addresses[addressIndex].Zip      = Convert.ToInt32(editAdress.ZipText);
                }
            }
        }
        // Precondition: Edit, Addresses menu item selected
        // Postcondition: edits existing address object
        private void addressToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            EditAddressForm editAddress = new EditAddressForm(upv.AddressList); // creates a new Edit Address Form
            DialogResult    result      = editAddress.ShowDialog();             // displays the edit form as a dialog box and stores the results

            if (result == DialogResult.OK)                                      // if everything is valid it opens the addressform(empty) need to have the data alrdy included into the new form!
            {
                AddressForm addressForm = new AddressForm();                    //creates a new Address Form

                // sets all of the address information(Name, Address 1 & 2, City, State, and ZipCode)
                // on the Address Form for the person who was selected in the Edit Address Dialog Box
                addressForm.AddressName = upv.AddressAt(editAddress.NameAddress).Name.ToString();
                addressForm.Address1    = upv.AddressAt(editAddress.NameAddress).Address1.ToString();
                addressForm.Address2    = upv.AddressAt(editAddress.NameAddress).Address2.ToString();
                addressForm.City        = upv.AddressAt(editAddress.NameAddress).City.ToString();
                addressForm.State       = upv.AddressAt(editAddress.NameAddress).State.ToString();
                addressForm.ZipText     = upv.AddressAt(editAddress.NameAddress).Zip.ToString();

                DialogResult editResult = addressForm.ShowDialog(); // displays all of the information that was has been set onto the dialog box

                if (editResult == DialogResult.OK)                  // if all of the text boxes contain valid information
                {
                    // edits the previous Address information to their new (if changed) values
                    upv.AddressAt(editAddress.NameAddress).Name     = addressForm.AddressName;
                    upv.AddressAt(editAddress.NameAddress).Address1 = addressForm.Address1;
                    upv.AddressAt(editAddress.NameAddress).Address2 = addressForm.Address2;
                    upv.AddressAt(editAddress.NameAddress).City     = addressForm.City;
                    upv.AddressAt(editAddress.NameAddress).State    = addressForm.State;
                    upv.AddressAt(editAddress.NameAddress).Zip      = Convert.ToInt32(addressForm.ZipText);
                }
            }
        }
        // ----------------------------------------------------------------------- EDIT --------->>

        // Precondition:  none
        // Postcondition: Specified address is resubmitted with the new details
        private void BtnEditAddress_Click(object sender, EventArgs e)
        {
            List <Address> addresses = upv.AddressList; // creates a list of addresses
            int            index;                       // used to identfy address

            if (upv.AddressCount <= 0)
            {
                MessageBox.Show("There must be atleast one address to edit.", "Error");
            }                                                                                                      //checks whether there is atleast one address
            else
            {
                EditAddressForm selectAddress = new EditAddressForm(addresses); // The address dialog box form
                DialogResult    result        = selectAddress.ShowDialog();     // Show form as dialog and store result

                if (result == DialogResult.OK)
                {
                    index = selectAddress.AddressIndex;              // keeps track of index

                    Address     selectedAddress = addresses[index];  // the index of the selcted address is kept
                    AddressForm editAddress     = new AddressForm(); // creates new dialogue to edit the address

                    // views the address details and presenets to user
                    editAddress.AddressName = selectedAddress.Name;
                    editAddress.Address1    = selectedAddress.Address1;
                    editAddress.Address2    = selectedAddress.Address2;
                    editAddress.City        = selectedAddress.City;
                    editAddress.State       = selectedAddress.State;
                    editAddress.ZipText     = selectedAddress.Zip.ToString();

                    DialogResult result_2 = editAddress.ShowDialog();

                    // edits the address details
                    if (result_2 == DialogResult.OK)
                    {
                        selectedAddress.Name     = editAddress.AddressName;
                        selectedAddress.Address1 = editAddress.Address1;
                        selectedAddress.Address2 = editAddress.Address2;
                        selectedAddress.City     = editAddress.City;
                        selectedAddress.State    = editAddress.State;
                        selectedAddress.Zip      = Convert.ToInt32(editAddress.ZipText);

                        reportTxt.Text = $"Address has been successfully edited."; //feedback
                    }
                }
            }
        }