#if !defined(AFX_DICTIONARYVIEWERDLG_H__30561C2A_4B75_4C87_81B3_0EEFB316E6AE__INCLUDED_) #define AFX_DICTIONARYVIEWERDLG_H__30561C2A_4B75_4C87_81B3_0EEFB316E6AE__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif #include "resource.h" class CDictionaryViewerDlg : public CDialog { public: CDictionaryViewerDlg(AcDbDatabase* pDb, LPCTSTR pszTitle, CWnd* pParent = NULL); //{{AFX_DATA(CDictionaryViewerDlg) enum { IDD = IDD_DICTS_CHECK }; CTreeCtrl m_wndTreeCtrl; //}}AFX_DATA //{{AFX_VIRTUAL(CDictionaryViewerDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); //}}AFX_VIRTUAL protected: //{{AFX_MSG(CDictionaryViewerDlg) afx_msg void OnRemove(); virtual BOOL OnInitDialog(); afx_msg void OnKeydownTreeDict(NMHDR* pNMHDR, LRESULT* pResult); //}}AFX_MSG DECLARE_MESSAGE_MAP() private: // 删除多余扩展字典 void RemoveRedundancyDic(); void InitDictionaryTree(); private: void HighlightItem(LPCTSTR pszItemText); BOOL GetItemByString(LPCTSTR pszName, HTREEITEM& hDecItem); void AddDictionary(const AcDbObjectId& idDict, HTREEITEM parent); HTREEITEM AddTreeItem(LPCTSTR pszName, HTREEITEM parent); private: CString m_sTitle; CStringList m_lstForbid;// 禁止删除列表 AcDbDatabase *m_pDb; }; #endif // !defined(AFX_DICTIONARYVIEWERDLG_H__30561C2A_4B75_4C87_81B3_0EEFB316E6AE__INCLUDED_)