#pragma once #include "Atom.h" #include "rmsd.h" // MCEOverlayAtomsDlg dialog #define WM_EXIT_OVERLAY_ATOMS WM_USER + 15 #define WM_APPLY_OVERLAY_ATOMS WM_USER + 16 class MCEOverlayAtomsDlg : public CDialogEx { DECLARE_DYNAMIC(MCEOverlayAtomsDlg) public: MCEOverlayAtomsDlg(CWnd* pParent = NULL); // standard constructor MCEOverlayAtomsDlg(CView* pView); // new modelless constructor virtual ~MCEOverlayAtomsDlg(); BOOL Create(); void AddAtom(float x, float y, float z, CString name, bool is_part_of_fragment); bool overlay(); // Dialog Data enum { IDD = IDD_DIALOG4 }; int m_current_editbox; float m_translate_1[3]; float m_translate_2[3]; float m_translate_3[3]; float m_rotate[3][3]; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support virtual BOOL OnInitDialog(); virtual void OnCancel(); DECLARE_MESSAGE_MAP() private: CView* m_pMCEView; Atom m_atom_frag_1; Atom m_atom_frag_2; Atom m_atom_frag_3; Atom m_atom_dest_1; Atom m_atom_dest_2; Atom m_atom_dest_3; double m_center_vect[3]; double m_mov_vect[3]; double m_rotMx[3][3]; public: afx_msg void OnBnClickedOk(); afx_msg void OnBnClickedCancel(); afx_msg void OnEnChangeEdit1(); afx_msg void OnEnChangeEdit2(); afx_msg void OnEnChangeEdit3(); afx_msg void OnEnChangeEdit5(); afx_msg void OnEnChangeEdit6(); afx_msg void OnEnChangeEdit7(); };