Files
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

88 lines
2.5 KiB
C++

#if !defined(__DLGPARAMINSERT_H__)
#define __DLGPARAMINSERT_H__
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "resource.h"
#include "InPlaceCtrls.h"
#include "PropertyListBox.h"
#include "KTObjLifeMgr.h"
#include "KTParamClass.h"
#include "GsPreviewCtrl.h"
class CDlgParamInsert : public CDialog
{
public:
CDlgParamInsert(CWnd* pParent = NULL);
void SetClassCode(ULONG lId);
void SetClassCode(LPCTSTR pszCode);
protected:
void OnInitClassList(ULONG lUpId, LPCTSTR pszPrefix);
// 转换数据类型到Item的类型
CPropertyItem::ItemStyle AsItemStyle(LPCTSTR pszDataType, BOOL bMulti = FALSE, BOOL bOverride = FALSE);
// 转换数据为指定Item类型的数据
LPCTSTR AsItemString(CString& sData, LPCTSTR pszDataType);
// 转换数据为指定的描述字符串
LPCTSTR AsItemDesc(CString& sDesc, LPCTSTR pszData, LPCTSTR pszVarDesc, const CMapStringToString& mapVarToValue);
// 转换描述为指定的数据字符串
LPCTSTR ByItemDesc(CString& sData, LPCTSTR pszDesc, LPCTSTR pszVarDesc, const CMapStringToString& mapVarToValue);
// 根据表达式获得数据列表
void GetAvalidValueList(LPCTSTR pszValueExpress, const CMapStringToString& mapData, CStringArray& arsValue);
// 显示指定Id的所有属性包括父属性
void OnShowAttributeAttrItems(CPropertyItemTab* pTab, ULONG lId);
// 清除属性列表数据
void OnCleanAttributeList();
static BOOL ExpressCalcVarProc(LPCTSTR pszVariable, double& dValue, WPARAM wParam, LPARAM lParam);
BOOL m_bAttrModified;
ULONG m_lAttributesCount;
//AcDbDatabase* m_pDbPreview;
KTParamClass m_cClassData;
CMapStringToString m_mapAttrToValue;
typedef CMap<ULONG, ULONG, KTParamAttribute*, KTParamAttribute*> CMapULongToAttribute;
CMapULongToAttribute m_mapHideAttribute;
protected:
enum { IDD = IDD_PARAMINSERT };
CComboBox m_wndCmbClass;
CButton m_wndRadBlock;
CButton m_wndRadGroup;
//CKTObjViewCtrl m_wndStcPreview;
CGsPreviewCtrl m_wndViewCtrl;
CStatic m_wndStcDesc;
CPropertyListBox m_wndLstAttribute;
//}}AFX_DATA
//{{AFX_VIRTUAL(CDlgParamInsert)
public:
virtual BOOL Create(CWnd* pParentWnd);
protected:
virtual void DoDataExchange(CDataExchange* pDX);
//}}AFX_VIRTUAL
protected:
//{{AFX_MSG(CDlgParamInsert)
virtual BOOL OnInitDialog();
afx_msg void OnDestroy();
virtual void OnOK();
afx_msg void OnBtnPreview();
afx_msg void OnSelendokCmbClass();
//}}AFX_MSG
afx_msg LRESULT OnPropListBoxNotify(WPARAM wParam, LPARAM lParam);
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
#endif // !defined(__DLGPARAMINSERT_H__)