--- ResultDialog.cpp 2006/09/03 15:31:13 32 +++ ResultDialog.cpp 2006/09/26 14:16:56 58 @@ -33,6 +33,7 @@ BEGIN_MESSAGE_MAP(ResultDialog, CDialog) ON_WM_SETFOCUS() ON_BN_CLICKED(IDC_DETAILS, OnBnClickedDetails) + ON_NOTIFY(NM_DBLCLK, IDC_LIST, OnNMDblclkList) END_MESSAGE_MAP() @@ -103,14 +104,34 @@ void ResultDialog::OnBnClickedDetails() { CListCtrl *list = (CListCtrl *) GetDlgItem(IDC_LIST); - int sel = list->GetSelectionMark(); + if (list->GetItemCount() > 0) { + + int sel = list->GetSelectionMark(); + CString barcode = list->GetItemText(sel,0); + + if (sel == -1) { + MessageBox("You must select an item"); + } else { + ResultDetailsDialog resdialog; + resdialog.m_barcode = barcode; + + resdialog.DoModal(); + } + } +} + +void ResultDialog::OnNMDblclkList(NMHDR *pNMHDR, LRESULT *pResult) +{ + CListCtrl *list = (CListCtrl *) GetDlgItem(IDC_LIST); + if (list->GetItemCount() > 0) { + int sel = list->GetSelectionMark(); + CString barcode = list->GetItemText(sel,0); - if (sel == -1) { - MessageBox("You must select an item"); - } else { ResultDetailsDialog resdialog; - resdialog.m_resultIndex = sel; + resdialog.m_barcode = barcode; resdialog.DoModal(); } + + *pResult = 0; }