#pragma once #include "resource.h" #include "symbdialog.h" class CElevationCheckDlg : public CModelessDialog { public: CElevationCheckDlg(CWnd* pParent = NULL); virtual ~CElevationCheckDlg(); void SetPipeName(std::vector &vecPipeIds); //根据管线ID获取管线两端井编号 void ShowPipe(std::vector &vecPipeIds, int nColorIndex, bool bIsShow); // 高亮显示并闪动容器内的管线 void GetPipeColor(CString &sLayerName, AcCmColor &color); //获取管线颜色 void GetWellName(AcDbObjectId &idNode, CString &sWellName); //获取井或池名字 //{{AFX_DATA(CElevationCheckDlg) enum { IDD = IDD_ELEVATION_CHECK }; CListBox m_wndLstPipe; //}}AFX_DATA //{{AFX_VIRTUAL(CElevationCheckDlg) public: virtual BOOL DestroyWindow(); protected: virtual void DoDataExchange(CDataExchange* pDX); //}}AFX_VIRTUAL protected: //{{AFX_MSG(CElevationCheckDlg) afx_msg void OnSelPipeList(); //}}AFX_MSG virtual BOOL OnInitDialog(); afx_msg void OnBtnShowall(); afx_msg void OnClose(); afx_msg void OnTimer(UINT_PTR nIDEvent); DECLARE_MESSAGE_MAP() private: std::vector m_vecPipeIds; //要闪烁的管道ID std::map m_mapPipe; //存储管线名称和ID bool m_bIsVisible; //闪烁变量 std::map m_mapColor; //保存检查前管道的颜色 };