// CharSearch.cpp : ±¸Çö ÆÄÀÏÀÔ´Ï´Ù. // #include "stdafx.h" #include "GameDBTool.h" #include "CharSearch.h" #include "GameDBTool.h" #include "GameDBToolDlg.h" #include ".\charsearch.h" IMPLEMENT_DYNAMIC(CCharSearch, CDialog) CCharSearch::CCharSearch(CWnd* pParent /*=NULL*/) : CDialog(CCharSearch::IDD, pParent) , m_Data(_T("")) { } CCharSearch::~CCharSearch() { } void CCharSearch::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_SEARCH_TYPE, m_SearchType); DDX_Text(pDX, IDC_DATA, m_Data); DDX_Control(pDX, IDC_ALIGN_TYPE, m_AlignType); } BEGIN_MESSAGE_MAP(CCharSearch, CDialog) ON_BN_CLICKED(IDC_SEARCH, OnBnClickedSearch) ON_WM_CTLCOLOR() END_MESSAGE_MAP() BOOL CCharSearch::OnInitDialog() { CDialog::OnInitDialog(); m_SearchType.InsertString(0, "CID"); m_SearchType.InsertString(1, "Under Inputed CID"); m_SearchType.InsertString(2, "Over Inputed CID"); m_SearchType.InsertString(3, "Character Name"); m_SearchType.InsertString(4, "Character Level"); m_SearchType.InsertString(5, "Under Inputed Level"); m_SearchType.InsertString(6, "Over Inputed Level"); m_SearchType.SetCurSel(0); m_AlignType.InsertString(0, "Descending Series"); m_AlignType.InsertString(1, "Ascending Series"); m_AlignType.SetCurSel(0); return TRUE; } void CCharSearch::OnBnClickedSearch() { CGameDBToolApp* pAppWnd = (CGameDBToolApp*)AfxGetApp(); CGameDBToolDlg* pDlgWnd = (CGameDBToolDlg*)pAppWnd->m_pMainWnd; UpdateData(); int CurSel = m_SearchType.GetCurSel(); if(CB_ERR == CurSel) return; CGameDBToolDlg::AlignType AlignType = (m_AlignType.GetCurSel() == 0) ? CGameDBToolDlg::AlignType::ASC : CGameDBToolDlg::AlignType::DESC; switch(CurSel) { case 0: // ij¸¯ÅÍ ¾ÆÀ̵ð pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::CID, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "UID"); break; case 1: // ij¸¯ÅÍ ¾ÆÀ̵ðÀÌÇÏ pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::CIDBelow, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "UID"); break; case 2: // ij¸¯ÅÍ ¾ÆÀ̵ðÀÌ»ó pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::CIDAbove, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "UID"); break; case 3: // ij¸¯ÅÍ À̸§ pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::Name, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "Name"); break; case 4: // ij¸¯ÅÍ ·¹º§ pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::Level, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "Level"); break; case 5: // ij¸¯ÅÍ ÀÌÇÏ pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::LevelBelow, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "Level"); break; case 6: // ij¸¯ÅÍ ÀÌ»ó pDlgWnd->SetSearch(CGameDBToolDlg::SearchType::LevelAbove, m_Data.GetBuffer(0)); pDlgWnd->SetAlign(AlignType, "Level"); break; } CDialog::OnOK(); } HBRUSH CCharSearch::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: ¿©±â¼­ DCÀÇ Æ¯¼ºÀ» º¯°æÇÕ´Ï´Ù. HBRUSH m_hBrush; m_hBrush = CreateSolidBrush(RGB( 255, 169, 128)); switch( nCtlColor ){ case CTLCOLOR_DLG: pDC->SetBkColor(RGB( 255, 255, 255)); pDC->SetTextColor(RGB( 0, 0, 0)); return m_hBrush; break; case CTLCOLOR_STATIC: pDC->SetBkColor(RGB( 255, 169, 128)); pDC->SetTextColor(RGB( 0, 0, 0)); return m_hBrush; break; default: return hbr; break; } }