--- ResultDetailsDialog.cpp 2006/09/03 10:10:19 31 +++ ResultDetailsDialog.cpp 2006/09/04 08:54:27 37 @@ -10,6 +10,9 @@ #include "CommonStorage.h" #include "DatabaseLayer.h" #include "CheckoutDialog.h" +#include "SearchDialog.h" +#include "ResultDialog.h" +#include "MyTabCtrl.h" // ResultDetailsDialog dialog @@ -69,11 +72,7 @@ //load Equipment::checkouts CListCtrl *checkouts = (CListCtrl*) GetDlgItem(IDC_CHECKOUTS); - checkouts->SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT ); - checkouts->InsertColumn(0,"Inits"); - checkouts->InsertColumn(1,"Start date"); - checkouts->InsertColumn(2,"Return date"); - checkouts->InsertColumn(3,"Number of days"); + checkouts->DeleteAllItems(); for (int i=0; iInsertItem(i,currentdata.checkouts[i].inits); @@ -88,10 +87,7 @@ // load Equipment::reservations CListCtrl *reservations = (CListCtrl*) GetDlgItem(IDC_RESERVATIONS); - reservations->SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT ); - reservations->InsertColumn(0,"#"); - reservations->InsertColumn(1,"Inits"); - reservations->InsertColumn(2,"Reservation date"); + reservations->DeleteAllItems(); for (int i=0; iSetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT ); + checkouts->InsertColumn(0,"Inits"); + checkouts->InsertColumn(1,"Start date"); + checkouts->InsertColumn(2,"Return date"); + checkouts->InsertColumn(3,"Number of days"); + checkouts->SetColumnWidth(0,LVSCW_AUTOSIZE_USEHEADER); + checkouts->SetColumnWidth(1,LVSCW_AUTOSIZE_USEHEADER); + checkouts->SetColumnWidth(2,LVSCW_AUTOSIZE_USEHEADER); + checkouts->SetColumnWidth(3,LVSCW_AUTOSIZE_USEHEADER); + + CListCtrl *reservations = (CListCtrl*) GetDlgItem(IDC_RESERVATIONS); + reservations->SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT ); + reservations->InsertColumn(0,"#"); + reservations->InsertColumn(1,"Inits"); + reservations->InsertColumn(2,"Reservation date"); + reservations->SetColumnWidth(0,LVSCW_AUTOSIZE_USEHEADER); + reservations->SetColumnWidth(1,LVSCW_AUTOSIZE_USEHEADER); + reservations->SetColumnWidth(2,LVSCW_AUTOSIZE_USEHEADER); + + + GetDlgItem(IDC_RESERVE)->EnableWindow(CommonStorage::Instance()->getAdmin()); GetDlgItem(IDC_CHECKOUT)->EnableWindow(CommonStorage::Instance()->getAdmin()); GetDlgItem(IDC_RETURN)->EnableWindow(CommonStorage::Instance()->getAdmin()); @@ -187,7 +204,8 @@ CString barcode = CommonStorage::Instance()->getSearchResult()[m_resultIndex].barcode; CommonStorage::Instance()->getDBLayer()->ReturnEquipment(barcode); - MessageBox("The Item is returned, but the changes won't show until the next query"); + ((SearchDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[0])->OnBnClickedSearch(); + ((ResultDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[1])->LoadResults(); OnOK(); } @@ -218,7 +236,8 @@ if (status == "Reserveret") { //if the equipment was reserved, we must delete the reservation dblayer->DeleteReservation(eq.barcode, topReservation.reservationID); } - + ((SearchDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[0])->OnBnClickedSearch(); + ((ResultDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[1])->LoadResults(); OnOK(); } } @@ -234,7 +253,11 @@ CString barcode; GetDlgItem(IDC_BARCODE)->GetWindowText(barcode); dblayer->EquipmentReservation(barcode,p); - OnOK(); + + ((SearchDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[0])->OnBnClickedSearch(); + ((ResultDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[1])->LoadResults(); + LoadListControls(); + } } @@ -245,7 +268,9 @@ CString reservationID = CommonStorage::Instance()->getSearchResult()[m_resultIndex].reservations[sel].reservationID; CString barcode = CommonStorage::Instance()->getSearchResult()[m_resultIndex].barcode; CommonStorage::Instance()->getDBLayer()->DeleteReservation(barcode, reservationID); - MessageBox("Reservation deleted, but won't show until next search"); + ((SearchDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[0])->OnBnClickedSearch(); + ((ResultDialog*)CommonStorage::Instance()->getTabCtrl()->m_tabs[1])->LoadResults(); + LoadListControls(); } else { MessageBox("No reservation is selected"); }