home *** CD-ROM | disk | FTP | other *** search
/ Xentax forum attachments archive / xentax.7z / 8090 / ModelEdit.7z / EditOBBDlg.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-03-08  |  2.5 KB  |  90 lines

  1. #if !defined(AFX_EDITOBBDLG_H__26205818_B864_49E9_A8EF_5DE12F00831D__INCLUDED_)
  2. #define AFX_EDITOBBDLG_H__26205818_B864_49E9_A8EF_5DE12F00831D__INCLUDED_
  3.  
  4. #if _MSC_VER > 1000
  5. #pragma once
  6. #endif // _MSC_VER > 1000
  7. // EditOBBDlg.h : header file
  8. //
  9.  
  10. class CEditOBBDlg;
  11.  
  12. class COBBTracker : public SolidRectWnd
  13. {
  14. public:
  15.     COBBTracker();
  16.     ~COBBTracker();
  17.  
  18.     CEditOBBDlg* m_ParentDlg;        // the dialog that will have its callback called
  19.     UINT m_CtlID;                    // the ID of this control
  20.  
  21. private:
  22.     bool m_HasCapture;                // true if this tracker currently has the capture
  23.     CPoint m_InitPoint;                // initial point of the mouse down
  24.  
  25. protected:
  26.     afx_msg void OnLButtonDown( UINT nFlags, CPoint point );
  27.     afx_msg void OnLButtonUp( UINT nFlags, CPoint point );
  28.     afx_msg void OnRButtonDown( UINT nFlags, CPoint point );
  29.     afx_msg void OnMouseMove( UINT nFlags, CPoint point );
  30.     afx_msg void OnCaptureChanged( CWnd* pWnd );
  31.  
  32.     DECLARE_MESSAGE_MAP()
  33. };
  34.  
  35.  
  36. /////////////////////////////////////////////////////////////////////////////
  37. // CEditOBBDlg dialog
  38.  
  39. class CEditOBBDlg : public CDialog
  40. {
  41. private :
  42.     SOBB m_OBB ;                // current OBB
  43.     SOBB m_InitOBB;                // initial OBB
  44.     EulerAngles m_CurEA;        // current euler angles
  45.     bool m_InitEnable;            // initial OBB enabled setting
  46.     bool m_Initialized;            // true if the controls in the dialog are initialized
  47.  
  48.     //bool m_DisableChecked ; // was the disable do-dad checked?
  49.     ModelNode *m_pModelNode;
  50.  
  51.     COBBTracker trackers[9];
  52.  
  53. // Construction
  54. public:
  55.     //CEditOBBDlg(const SOBB &obb ,CWnd* pParent = NULL);   // standard constructor
  56.     CEditOBBDlg(ModelNode*pNode ,CWnd* pParent = NULL);   // standard constructor
  57.  
  58.     void TrackerCallback( UINT ctlID, float offset );        // called by the mouse trackers with value offset
  59.  
  60. // Dialog Data
  61.     //{{AFX_DATA(CEditOBBDlg)
  62.     enum { IDD = IDD_EDIT_OBB };
  63.         // NOTE: the ClassWizard will add data members here
  64.     //}}AFX_DATA
  65.  
  66.  
  67. // Overrides
  68.     // ClassWizard generated virtual function overrides
  69.     //{{AFX_VIRTUAL(CEditOBBDlg)
  70.     protected:
  71.     virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  72.     //}}AFX_VIRTUAL
  73.  
  74. // Implementation
  75. protected:
  76.  
  77.     // Generated message map functions
  78.     //{{AFX_MSG(CEditOBBDlg)
  79.     virtual BOOL OnInitDialog();
  80.     virtual void OnCancel();
  81.     afx_msg void OBBChange( void );
  82.     //}}AFX_MSG
  83.     DECLARE_MESSAGE_MAP()
  84. };
  85.  
  86. //{{AFX_INSERT_LOCATION}}
  87. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  88.  
  89. #endif // !defined(AFX_EDITOBBDLG_H__26205818_B864_49E9_A8EF_5DE12F00831D__INCLUDED_)
  90.