/* * Refreshes all fields displayed in the window according to * current system objects states. */ private void refreshDisplay() { if (mFacade.IsABookingLoaded()) { clearDisplay(); refreshBookingDisplay(); refreshCustomerDisplay(); refreshGuestsDisplay(); } }
/* * Refreshes all booking detail fields displayed in the window * according to current booking state. */ private void refreshBookDetailDisplay() { if (mFacade.IsABookingLoaded()) { // update field contents: DateTime start; DateTime end; mFacade.GetCurrentBookDates(out start, out end); lblArrivalValue.Content = start.ToString().Substring(0, 10); lblDepartureValue.Content = end.ToString().Substring(0, 10); lblCustNameValue.Content = mFacade.GetCurrentCustName(); lstGuests.Items.Clear(); foreach (String g in mFacade.GetGuestNames()) { lstGuests.Items.Add(g); } // make labels visible: lblArrivalValue.Visibility = Visibility.Visible; lblDepartureValue.Visibility = Visibility.Visible; lblCustNameValue.Visibility = Visibility.Visible; } else { refreshDisplay(); } }
/* * Checks if the booking can be saved or updated on the basis of * window field values, and acts accordingly (closes the window, * except if the booking was a new one). */ private void btnSave_Click(object sender, RoutedEventArgs e) { if (areAllValuesValid()) { if (!mFacade.IsABookingLoaded()) { mFacade.CreateBooking((DateTime)dtpArrival.SelectedDate, (DateTime)dtpDeparture.SelectedDate); mFacade.PersistCurrentBooking(); refreshDisplay(); } else { mFacade.UpdateBooking((DateTime)dtpArrival.SelectedDate, (DateTime)dtpDeparture.SelectedDate); mFacade.PersistCurrentBooking(); } } }
// METHODS: /* * The window constructor. */ public WindowCreateEdit(ModelFacade modelFacade) { this.mFacade = modelFacade; InitializeComponent(); lblBookingRef.Content = "Booking number\r\n"; if (!mFacade.IsABookingLoaded()) { clearDisplay(); } else { lblBookingRef.Content += mFacade.GetCurrentBookNb() .ToString(); refreshDisplay(); } }