Files
envi-code/SourceCode/Code2026/tg_shs/shs_siteplan/SinglePlaceTreeDlg.h
T
2026-09-28 15:28:50 +08:00

71 lines
1.9 KiB
C++

#if !defined(AFX_SINGLEPLACETREEDLG_H_)
#define AFX_SINGLEPLACETREEDLG_H_
#if _MSC_VER > 1000
#pragma once
#endif
#include "Resource.h"
#include "GsPreviewCtrl.h"
// 任意布树对话框类
class CSinglePlaceTreeDlg : public CModelessDialog
{
public:
CSinglePlaceTreeDlg(CWnd* pParent = NULL);
virtual ~CSinglePlaceTreeDlg();
int GetDrawType(); // 树的绘制类型
bool m_bUseEsc; // 标记退出类型
enum { IDD = IDD_DLG_SINGLEPLACETREE };
private:
int m_iTreeType; // 树形选择方式
int m_iDrawStyle; // 绘制方式
CString m_csRad; // 树半径编辑框数据
CString m_csDis; // 树间距编辑框数据
BOOL m_bIsRotation; // 随机旋转
BOOL m_bIsSetDis; // 间距可调
BOOL m_bIsRandSize; // 设置是否随机大小
CString m_csOffset; //偏移编辑框数据
AcDbObjectId m_idTreeStyle; // 图块的ID
HICON m_hIcon; // 按钮的图片
CImageDC m_imgPreview; // 幻灯片预览的DC
CGsPreviewCtrl m_PreviewCtrl; // 预览类
AcDbDatabase m_PreviewDb; // 预览数据库
protected:
virtual BOOL OnInitDialog();
virtual void DoDataExchange(CDataExchange* pDX);
protected:
afx_msg void OnBnClickedButPick();
afx_msg void OnBnClickedButRad();
afx_msg void OnBnClickedButDis();
afx_msg void OnPaint();
afx_msg void OnClose();
afx_msg void OnBnClickedDrawStyle();
afx_msg void OnBnClickedTreeFormSelect();
afx_msg void OnChkRandSize();
afx_msg void OnChkRotation();
afx_msg void OnChkSetDis();
//afx_msg void OnBnClickedButOffset();
afx_msg void OnEnChangeEdtOffset();
afx_msg void OnEnChangeEdtRad();
afx_msg void OnEnChangeEdtDis();
DECLARE_MESSAGE_MAP()
private:
void SetWindowHide(bool); // 隐藏对话框
void GetDis(CString&, bool); // 点取树的半径和树间距
CString GetFormatData(double dData); // 根据需求修改编辑框中数据的显示格式
AcDbObjectId GetTgTreeBlockId(XString sBlockName); // 获得天正图库中图块的ID
void SetPicture(CString &csFile); // 设置幻灯片
void UpdatePreview(); // 预览块以及外部的dwg文件
void UpdateControlState();
};
#endif