#pragma once #include "resource.h" #include "afxcmn.h" #include "EarThwormDef.h" class CJDXZDlg : public CDialog { DECLARE_DYNAMIC(CJDXZDlg) public: enum Type { eMove = 0, eRotate, eDelete, eUshape, eCopy, eMirror, }; enum Axis { eX = 0, eY, eZ, }; public: CJDXZDlg(CWnd* pParent = NULL); virtual ~CJDXZDlg(); enum { IDD = IDD_JDXZ_DLG }; void SetCopyFrom(CTreeCtrl* pTree); void SetFuncAction(int nAction); void SetUShapeData(UShapeData& data); void GetUShapeData(UShapeData& data); BOOL GetSelectItems(CPtrArray& arItemSel); protected: virtual void DoDataExchange(CDataExchange* pDX); DECLARE_MESSAGE_MAP() public: virtual BOOL OnInitDialog(); afx_msg void OnBnClickedOk(); afx_msg void OnNMClickTree1(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnClose(); afx_msg void OnBnClickedCancel(); void ShowModelTree(); void IteratorMakeTree(HTREEITEM hRootFr,HTREEITEM hRootTo); void ItersectItemSel(HTREEITEM hParent); void CheckChildItem(HTREEITEM hParent,BOOL bCheck); Type GetOperType(); void EnableCtrl(UINT id, bool bShow); void SetOperType(Type t); void SetXYZType(Axis a) { m_nXYZType = (int)a; } void SetValue(const double &d) { m_dOper = d; } int GetXYZType() { return m_nXYZType; } double GetValue() { return m_dOper; } protected: CTreeCtrl* m_pWndTree; CImageList m_Imagelist; CTreeCtrl m_wndModelTree; CPtrArray m_arItemSel; CMapPtrToPtr m_mapItemNewToOld; HTREEITEM m_hItemCur; int m_nAction; UShapeData m_UShapeData; int m_nOperType; int m_nXYZType; double m_dOper; };