You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
GCS-GISControlDlg-for-981A-.../ModifyLinePointDlg.h

83 lines
1.9 KiB
C

2 years ago
#pragma once
#include "Resource.h"
#include "afxwin.h"
#include "angle.h"
#include <regex>
#include <string>
#include "DrawLineStruct.h"
// CModifyLinePointDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
class CModifyLinePointDlg : public CBCGPDialog
{
DECLARE_DYNAMIC(CModifyLinePointDlg)
public:
CModifyLinePointDlg(CWnd* pParent = NULL); // <20><>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><ECBAAF>
virtual ~CModifyLinePointDlg();
DrawLineDataStruct m_editLineDataGroup; // <20><EFBFBD><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetLonLat(double lon,double lat);
void GetLonLat(double &lon,double &lat, int &pointID);
bool IsCirclingPoint();
void SetCirclingPointRBTNVisible(bool isVisible=false);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㰴ť<E3B0B4>Ƿ<EFBFBD><C7B7>ɼ<EFBFBD>
void CheckedCirclingPoint(); //<2F><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetSelectedPointID(int pointID); //<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD>еĺ<D0B5><C4BA><EFBFBD>
// <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
enum { IDD = IDD_DLG_MODIFY_POINT };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧<><D6A7>
DECLARE_MESSAGE_MAP()
public:
virtual BOOL OnInitDialog();
afx_msg void OnCbnSelchangeComboPt();
private:
CBCGPComboBox m_PositionType;
CBCGPEdit m_strLon;
CBCGPEdit m_strLat;
int m_bCirclingPoint;
bool m_bCheck;
int m_selectedPointID; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Angle angle;
double m_gLat;
double m_gLon;
int posTypeID;
int lastTypeID;
bool m_bCirclingPointVisible;
std::string splitSymbol;
std::string dSymbol;
std::string mSymbol;
std::string sSymbol;
public:
afx_msg void OnCbnSelchangeComboType();
private:
void InitEidtText();
void getDMSString(double lon,double lat,string &str_lon,string &str_lat);
double getEditValue(const int ID);
bool checkLon(string strLon,int type=0);
bool checkLat(string strLat,int type=0);
public:
afx_msg void OnBnClickedOk();
afx_msg void OnBnClickedCancel();
afx_msg void OnBnClickedSetcirclingpoint();
afx_msg void OnEnKillfocusEditLon();
afx_msg void OnEnKillfocusEditLat();
CBCGPComboBox m_PointID;
afx_msg void OnCbnSelchangeComboPointid();
};