83 lines
2.5 KiB
C++
83 lines
2.5 KiB
C++
#pragma once
|
|
|
|
#include "resource.h"
|
|
#include "afxwin.h"
|
|
#include "DwgCompareDbMgr.h"
|
|
|
|
// CDwgCompareDlg 对话框
|
|
const int MAX_ENTCOUNT_ASONEAREA = 500; //不分区的最大实体数
|
|
const int MAX_ENTCOUNT_PERAREA = 1; //每个区域实体(未炸开)数
|
|
|
|
class CDwgCompareDlg : public CDialog
|
|
{
|
|
DECLARE_DYNAMIC(CDwgCompareDlg)
|
|
|
|
public:
|
|
CDwgCompareDlg(CWnd* pParent = NULL); // 标准构造函数
|
|
//通过已经初始化的CDwgCompareDbMgr构造对话框
|
|
//m_iType=1:局部比对,pMgr1,pMgr2都已经加载数据
|
|
//m_iType=2:图纸比对,文件已加载到pMgr1,pMgr2
|
|
CDwgCompareDlg(CDwgCompareDbMgr * pMgr1, CDwgCompareDbMgr * pMgr2, int m_iType, CWnd* pParent = NULL);
|
|
virtual ~CDwgCompareDlg();
|
|
|
|
virtual BOOL OnInitDialog();
|
|
afx_msg void OnBnClickedFile1();
|
|
afx_msg void OnBnClickedFile2();
|
|
afx_msg void OnBnClickedAdvance();
|
|
afx_msg void OnBnClickedOk();
|
|
afx_msg void OnBnClickedCheckAlllayer1();
|
|
afx_msg void OnBnClickedCheckAlllayer2();
|
|
|
|
// 对话框数据
|
|
enum { IDD = IDD_TPMDWGCMP };
|
|
|
|
public:
|
|
BOOL SetDbMgr(CDwgCompareDbMgr * pMgr1, CDwgCompareDbMgr * pMgr2);
|
|
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
|
|
protected:
|
|
BOOL SelectFile(CString & strFile, CString & strPath);
|
|
void InitLayerList(CDwgCompareDbMgr * pDbMgr, CCheckListBox & listBox);
|
|
void EnableCmpButton();
|
|
void SetCompareLayer(CDwgCompareDbMgr * pDbMgr, CCheckListBox & listBox);
|
|
void ShowAdvance(BOOL bShow);
|
|
void CheckAllListItem(CCheckListBox & listBox, BOOL bCheck);
|
|
BOOL CalcRowAndCol(int iEntCount); //根据实体数量计算分块数
|
|
|
|
public:
|
|
int m_iRowCount; //分割行数
|
|
int m_iColumnCount; //分割列数
|
|
BOOL m_bCmpHatch; //是否比对图案填充
|
|
BOOL m_bCmpBlock; //是否比对块
|
|
BOOL m_bCmpXref; //是否比外部参照
|
|
double m_timeLoadFile1; //文件1加载时间
|
|
double m_timeLoadFile2; //文件2加载时间
|
|
|
|
protected:
|
|
CString m_strFile1; //文件名
|
|
CString m_strFilePath1; //文件路径
|
|
CString m_strFile2;
|
|
CString m_strFilePath2;
|
|
CCheckListBox m_listLayer1; //比对图层列表
|
|
CCheckListBox m_listLayer2;
|
|
BOOL m_bAllLayer1; //比对所有图层
|
|
BOOL m_bAllLayer2;
|
|
BOOL m_bCmpClosedLayer1;
|
|
BOOL m_bCmpFrozenLayer1;
|
|
BOOL m_bCmpLockedlayer1;
|
|
BOOL m_bCmpClosedLayer2;
|
|
BOOL m_bCmpFrozenLayer2;
|
|
BOOL m_bCmpLockedlayer2;
|
|
|
|
CStatic m_staticPos;
|
|
CDwgCompareDbMgr * m_pDbMgr1;
|
|
CDwgCompareDbMgr * m_pDbMgr2;
|
|
|
|
int iHeightDlg; //对话框高度
|
|
int m_iType; //0:文件比对, 1:部分比对
|
|
};
|