GeoSetDlg.cpp
上传用户:jc6688
上传日期:2013-05-06
资源大小:344k
文件大小:2k
源码类别:

GPS编程

开发平台:

Visual C++

  1. // GeoSetDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "MapDemo.h"
  5. #include "GeoSetDlg.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CGeoSetDlg dialog
  13. CGeoSetDlg::CGeoSetDlg(CWnd* pParent /*=NULL*/)
  14. : CDialog(CGeoSetDlg::IDD, pParent)
  15. {
  16. //{{AFX_DATA_INIT(CGeoSetDlg)
  17. m_strName = _T("");
  18. //}}AFX_DATA_INIT
  19. m_pMapX=NULL;
  20. }
  21. CGeoSetDlg::CGeoSetDlg(CMapX* pMapX,CWnd* pParent /*=NULL*/)
  22. : CDialog(CGeoSetDlg::IDD, pParent)
  23. {
  24.     m_pMapX=pMapX;
  25. m_strName = _T("");
  26. }
  27. void CGeoSetDlg::DoDataExchange(CDataExchange* pDX)
  28. {
  29. CDialog::DoDataExchange(pDX);
  30. //{{AFX_DATA_MAP(CGeoSetDlg)
  31. DDX_Control(pDX, IDC_COMBO_GEOSETNAME, m_ctlGeoSet);
  32. DDX_CBString(pDX, IDC_COMBO_GEOSETNAME, m_strName);
  33. //}}AFX_DATA_MAP
  34. }
  35. BEGIN_MESSAGE_MAP(CGeoSetDlg, CDialog)
  36. //{{AFX_MSG_MAP(CGeoSetDlg)
  37. //}}AFX_MSG_MAP
  38. END_MESSAGE_MAP()
  39. /////////////////////////////////////////////////////////////////////////////
  40. // CGeoSetDlg message handlers
  41. BOOL CGeoSetDlg::OnInitDialog() 
  42. {
  43. CDialog::OnInitDialog();
  44. if(m_pMapX==NULL) return TRUE;
  45. CMapXGeosets newGeo=m_pMapX->GetGeosets();
  46. CString strCurName=m_pMapX->GetGeoSet();
  47. int nIndex=-1;
  48. for(int i=0;i<newGeo.GetCount();i++){
  49.       CMapXGeoset tempGeo=newGeo.Item(i+1);
  50.   CString strGeo=tempGeo.GetUserName();
  51.   if(strGeo==strCurName) nIndex=i;
  52.   m_ctlGeoSet.AddString (strGeo); 
  53. }
  54. UpdateData(FALSE);
  55. m_ctlGeoSet.SetCurSel (nIndex-1);
  56. return TRUE;  // return TRUE unless you set the focus to a control
  57.               // EXCEPTION: OCX Property Pages should return FALSE
  58. }
  59. void CGeoSetDlg::OnOK() 
  60. {
  61. CDialog::OnOK();
  62.     if(m_pMapX!=NULL) m_pMapX->SetGeoSet(m_strName);
  63. }