// PropertySheetDlg.cpp : implementation file // #include "StdAfx.h" #include "PropertySheetDlg.h" #include "LogPage.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // PropertySheetDlg IMPLEMENT_DYNAMIC(CPropertySheetDlg, CPropertySheet) CPropertySheetDlg::CPropertySheetDlg(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage) :CPropertySheet(pszCaption, pParentWnd, iSelectPage) { m_MWListSCP.m_pPropertySheet = this; // Adding the pages to the property sheet dialog CPropertySheetDlg::AddPage(&m_Page1); CPropertySheetDlg::AddPage(&m_Page2); CPropertySheetDlg::AddPage(&m_Page3); CPropertySheetDlg::m_psh.dwFlags |= PSH_PROPTITLE | PSH_USEHICON | PSH_NOAPPLYNOW; CPropertySheetDlg::m_psh.nStartPage = 0; CPropertySheetDlg::m_psh.hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); } CPropertySheetDlg::~CPropertySheetDlg() { } BEGIN_MESSAGE_MAP(CPropertySheetDlg, CPropertySheet) //{{AFX_MSG_MAP(CPropertySheetDlg) ON_WM_DESTROY() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // PropertySheetDlg message handlers BOOL CPropertySheetDlg::OnInitDialog() { BOOL bResult = CPropertySheet::OnInitDialog(); // Hiding Ok and Help buttons, and renaming Cancel button to Close GetDlgItem(IDOK)->ShowWindow(FALSE); GetDlgItem(IDCANCEL)->ShowWindow(FALSE); GetDlgItem(IDHELP)->SetWindowText("Clos&e"); m_sStatus.Empty(); return bResult; } BOOL CPropertySheetDlg::OnCommand(WPARAM wParam, LPARAM lParam) { if (wParam == IDOK || wParam == IDCANCEL) { return TRUE; } if(wParam == IDHELP) { EndDialog(0); return TRUE; } return CPropertySheet::OnCommand(wParam, lParam); } ///////////////////////////////////////////////////////////////////////////// // LMWListSCP class virtual functions L_VOID CMWListSCP::OnClientsStatus(const CString& sNewClient) { if (sNewClient.IsEmpty()) { return; } if (!m_pPropertySheet) { return; } m_pPropertySheet->m_sStatus += "*** Last client connected: " + sNewClient; if (m_pPropertySheet->GetActivePage()->m_hWnd == m_pPropertySheet->m_Page3.m_hWnd) { m_pPropertySheet->m_Page3.m_sEditStatus = m_pPropertySheet->m_sStatus; m_pPropertySheet->m_Page3.UpdateData(FALSE); } } L_VOID CMWListSCP::OnStatus(const CString& sClientName, const CString& sStatus, L_INT nErrorCode) { CString sTemp; if (sStatus.IsEmpty()) { return; } if (sClientName.IsEmpty()) { sTemp=""; } else { sTemp = "Client Name: " + sClientName + " -- "; } if (nErrorCode == DICOM_SUCCESS) { m_pPropertySheet->m_sStatus += sTemp + sStatus + "\r\n"; } else { m_pPropertySheet->m_sStatus += sTemp; sTemp.Format("Dicom Error code: [%d] -- \n", nErrorCode); m_pPropertySheet->m_sStatus += sTemp + sStatus + "\r\n"; } if (m_pPropertySheet->GetActivePage() == &m_pPropertySheet->m_Page3) { m_pPropertySheet->m_Page3.m_sEditStatus = m_pPropertySheet->m_sStatus; m_pPropertySheet->m_Page3.UpdateData(FALSE); } } void CPropertySheetDlg::OnDestroy() { m_MWListSCP.StopListening(); CPropertySheet::OnDestroy(); }