/* * Developed by Torben H. Nielsen */ #include "stdafx.h" #include "h6-udlånssystem.h" #include "ResultDialog.h" #include ".\resultdialog.h" #include "CommonStorage.h" #include "Containers.h" #include "ResultDetailsDialog.h" // ResultDialog dialog IMPLEMENT_DYNAMIC(ResultDialog, CDialog) ResultDialog::ResultDialog(CWnd* pParent /*=NULL*/) : CDialog(ResultDialog::IDD, pParent) { } ResultDialog::~ResultDialog() { } void ResultDialog::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); } BEGIN_MESSAGE_MAP(ResultDialog, CDialog) ON_WM_SETFOCUS() ON_BN_CLICKED(IDC_DETAILS, OnBnClickedDetails) END_MESSAGE_MAP() // ResultDialog message handlers void ResultDialog::OnOK() { // TODO: Add your specialized code here and/or call the base class //CDialog::OnOK(); } void ResultDialog::OnCancel() { // TODO: Add your specialized code here and/or call the base class //CDialog::OnCancel(); } void ResultDialog::OnSetFocus(CWnd* pOldWnd) { CDialog::OnSetFocus(pOldWnd); LoadResults(); } void ResultDialog::LoadResults(void) { CListCtrl *list = (CListCtrl *) GetDlgItem(IDC_LIST); EquipmentVector result = CommonStorage::Instance()->getSearchResult(); CString count; count.Format("Found %d items", result.size()); GetDlgItem(IDC_COUNTER)->SetWindowText(count); list->DeleteAllItems(); for (int i=0; iInsertItem(i, result[i].barcode); list->SetItemText(nItem,1,result[i].name); list->SetItemText(nItem,2,result[i].status); } if (result.size() >0) { list->SetColumnWidth(0,LVSCW_AUTOSIZE); list->SetColumnWidth(1,100); list->SetColumnWidth(2,100); } } BOOL ResultDialog::OnInitDialog() { CDialog::OnInitDialog(); CListCtrl *list = (CListCtrl *) GetDlgItem(IDC_LIST); list->SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT ); list->InsertColumn(0,"Barcode"); list->InsertColumn(1,"Equipment"); list->InsertColumn(2,"Status"); list->SetColumnWidth(0,LVSCW_AUTOSIZE_USEHEADER); list->SetColumnWidth(1,LVSCW_AUTOSIZE_USEHEADER); list->SetColumnWidth(2,LVSCW_AUTOSIZE_USEHEADER); return TRUE; } void ResultDialog::OnBnClickedDetails() { CListCtrl *list = (CListCtrl *) GetDlgItem(IDC_LIST); int sel = list->GetSelectionMark(); if (sel == -1) { MessageBox("You must select an item"); } else { ResultDetailsDialog resdialog; resdialog.m_resultIndex = sel; resdialog.DoModal(); } }