Files
envi-code/SourceCode/Code2026/Pool3dCmd/MCXGDlg.h
T
2026-09-28 15:28:50 +08:00

64 lines
1.5 KiB
C++

#pragma once
#include "resource.h"
#include "GsPreviewCtrl.h"
#include "AecDbOpening.h"
class CMCXGDlg : public CDialog
{
DECLARE_DYNAMIC(CMCXGDlg)
public:
CMCXGDlg(CWnd* pParent = NULL);
virtual ~CMCXGDlg();
bool SetOpeningData(const OpeningData& data);
void GetOpeningData(OpeningData& data);
DWDATA* GetData();
enum { IDD = IDD_MCXG_DLG };
CGsPreviewCtrl m_wndPreView;
CStatic m_wndTip;
CComboBox m_wndComboWidth;
CComboBox m_wndComboNo;
CString m_sNo;
CString m_sWidth;
CString m_sMaterial;
CString m_sProvider;
double m_dHeight;
double m_dBomEl;
protected:
virtual void DoDataExchange(CDataExchange* pDX);
DECLARE_MESSAGE_MAP()
afx_msg LRESULT OnStaticPreview(WPARAM wparam,LPARAM lparam);
public:
afx_msg void OnBnClickedOk();
virtual BOOL OnInitDialog();
private:
void InitGenDoorWidthCombo();
void ShowSlide();
BOOL CreateBlockRecord();
BOOL CreateBlockRecord3d();
bool GetActiveViewPortInfo (AcDbDatabase *pDb, ads_real &height, ads_real &width, AcGePoint3d &target, AcGeVector3d &viewDir, ads_real &viewTwist, bool getViewCenter);
void SetViewTo(AcGsView *pView, AcDbDatabase *pDb, AcGeMatrix3d& viewMat);
Acad::ErrorStatus InitDrawingControl (AcDbDatabase *pDb, const TCHAR *space = ACDB_MODEL_SPACE);
Acad::ErrorStatus InitDrawingControlWin(AcDbDatabase *pDb, const TCHAR *space);
Acad::ErrorStatus InitDrawingControlDoor(AcDbDatabase *pDb, const TCHAR *space);
private:
DWDATA m_dwData;
CString m_sDwgFile;
CString m_sDwg3DFile;
AcDbVoidPtrArray m_arpDb;
};