// CopyAndPasteSignalDlg.cpp : ±¸Çö ÆÄÀÏÀÔ´Ï´Ù. // #include "stdafx.h" #include "EtActionTool.h" #include "CopyAndPasteSignalDlg.h" #include "SignalManager.h" #include "SignalItem.h" // CCopyAndPasteSignalDlg ´ëÈ­ »óÀÚÀÔ´Ï´Ù. IMPLEMENT_DYNAMIC(CCopyAndPasteSignalDlg, CXTResizeDialog) CCopyAndPasteSignalDlg::CCopyAndPasteSignalDlg(CWnd* pParent /*=NULL*/) : CXTResizeDialog(CCopyAndPasteSignalDlg::IDD, pParent) { } CCopyAndPasteSignalDlg::~CCopyAndPasteSignalDlg() { } void CCopyAndPasteSignalDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_LIST1, m_ListCtrl); } BEGIN_MESSAGE_MAP(CCopyAndPasteSignalDlg, CXTResizeDialog) ON_WM_DESTROY() ON_BN_CLICKED(IDOK, &CCopyAndPasteSignalDlg::OnBnClickedOk) ON_BN_CLICKED(IDCANCEL, &CCopyAndPasteSignalDlg::OnBnClickedCancel) ON_NOTIFY(NM_DBLCLK, IDC_LIST1, &CCopyAndPasteSignalDlg::OnNMDblclkList1) ON_NOTIFY(LVN_ITEMCHANGING, IDC_LIST1, &CCopyAndPasteSignalDlg::OnLvnItemchangingList1) END_MESSAGE_MAP() extern bool SignalCompareProc( CSignalItem *pItem1, CSignalItem *pItem2 ); bool SignalEnableCompareProc( CSignalItem *pItem1, CSignalItem *pItem2 ) { return ( true == pItem1->IsEnableCopyAndPaste() && false == pItem2->IsEnableCopyAndPaste() ); } BOOL CCopyAndPasteSignalDlg::OnInitDialog() { CXTResizeDialog::OnInitDialog(); SetResize( IDC_LIST1, SZ_TOP_LEFT, SZ_BOTTOM_RIGHT ); SetResize( IDOK, SZ_BOTTOM_RIGHT, SZ_BOTTOM_RIGHT ); SetResize( IDCANCEL, SZ_BOTTOM_RIGHT, SZ_BOTTOM_RIGHT ); LoadPlacement( _T("CCopyAndPasteSignalDlg") ); m_ListCtrl.AddColumn( "Signal Name", 190 ); m_ListCtrl.AddColumn( "Initials", 40, LVCFMT_CENTER ); m_ListCtrl.AddColumn( "Copy&Paste Enable", 100, LVCFMT_RIGHT ); m_ListCtrl.SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_FLATSB ); ResetList( false ); return TRUE; } // CCopyAndPasteSignalDlg ¸Þ½ÃÁö 󸮱âÀÔ´Ï´Ù. void CCopyAndPasteSignalDlg::OnDestroy() { CXTResizeDialog::OnDestroy(); // TODO: ¿©±â¿¡ ¸Þ½ÃÁö 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. SavePlacement( _T("CCopyAndPasteSignalDlg") ); } void CCopyAndPasteSignalDlg::OnBnClickedOk() { // TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. OnOK(); } void CCopyAndPasteSignalDlg::OnBnClickedCancel() { // TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. OnCancel(); } void CCopyAndPasteSignalDlg::OnNMDblclkList1(NMHDR *pNMHDR, LRESULT *pResult) { // TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. *pResult = 0; /*POSITION p = m_ListCtrl.GetFirstSelectedItemPosition(); std::vector szVecSelectItemList; while(p) { int nIndex = m_ListCtrl.GetNextSelectedItem(p); szVecSelectItemList.push_back( m_ListCtrl.GetItemText( nIndex, 0 ) ); } if( szVecSelectItemList.size() == 0 ) return; CSignalItem *pItem = CSignalManager::GetInstance().GetSignalItemFromName( szVecSelectItemList[0] ); if( !pItem ) return; pItem->SetEnableCopyAndPaste( !pItem->IsEnableCopyAndPaste() ); ResetList( true );*/ } void CCopyAndPasteSignalDlg::OnLvnItemchangingList1(NMHDR *pNMHDR, LRESULT *pResult) { LPNMLISTVIEW pNMLV = reinterpret_cast(pNMHDR); // TODO: ¿©±â¿¡ ÄÁÆ®·Ñ ¾Ë¸² 󸮱â Äڵ带 Ãß°¡ÇÕ´Ï´Ù. *pResult = 0; } void CCopyAndPasteSignalDlg::ResetList( bool bOKButton ) { m_ListCtrl.DeleteAllItems(); std::vector pVecList; for( DWORD i=0; iGetName() ); szStr.Format( "%c|%d|%d", pItem->GetName()[0], pItem->GetInitialsColor(), pItem->GetBackgroundColor() ); m_ListCtrl.SetItemText( i, 1, szStr ); szStr.Format( "%s", pItem->IsEnableCopyAndPaste() ? "true" : "false" ); m_ListCtrl.SetItemText( i, 2, szStr ); } GetDlgItem( IDOK )->EnableWindow( bOKButton ); }