home *** CD-ROM | disk | FTP | other *** search
/ PC PowerPlay 58 / pcpp58a.iso / extras / quake 3 source / Q3A_ToolSource.exe / Main / RotateDlg.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2001-01-02  |  2.5 KB  |  110 lines

  1. // RotateDlg.cpp : implementation file
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include "Radiant.h"
  6. #include "RotateDlg.h"
  7.  
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13.  
  14. /////////////////////////////////////////////////////////////////////////////
  15. // CRotateDlg dialog
  16.  
  17.  
  18. CRotateDlg::CRotateDlg(CWnd* pParent /*=NULL*/)
  19.     : CDialog(CRotateDlg::IDD, pParent)
  20. {
  21.     //{{AFX_DATA_INIT(CRotateDlg)
  22.     m_strX = _T("");
  23.     m_strY = _T("");
  24.     m_strZ = _T("");
  25.     //}}AFX_DATA_INIT
  26. }
  27.  
  28.  
  29. void CRotateDlg::DoDataExchange(CDataExchange* pDX)
  30. {
  31.     CDialog::DoDataExchange(pDX);
  32.     //{{AFX_DATA_MAP(CRotateDlg)
  33.     DDX_Control(pDX, IDC_SPIN3, m_wndSpin3);
  34.     DDX_Control(pDX, IDC_SPIN2, m_wndSpin2);
  35.     DDX_Control(pDX, IDC_SPIN1, m_wndSpin1);
  36.     DDX_Text(pDX, IDC_ROTX, m_strX);
  37.     DDX_Text(pDX, IDC_ROTY, m_strY);
  38.     DDX_Text(pDX, IDC_ROTZ, m_strZ);
  39.     //}}AFX_DATA_MAP
  40. }
  41.  
  42.  
  43. BEGIN_MESSAGE_MAP(CRotateDlg, CDialog)
  44.     //{{AFX_MSG_MAP(CRotateDlg)
  45.     ON_BN_CLICKED(ID_APPLY, OnApply)
  46.     ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN1, OnDeltaposSpin1)
  47.     ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN2, OnDeltaposSpin2)
  48.     ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN3, OnDeltaposSpin3)
  49.     //}}AFX_MSG_MAP
  50. END_MESSAGE_MAP()
  51.  
  52. /////////////////////////////////////////////////////////////////////////////
  53. // CRotateDlg message handlers
  54.  
  55. void CRotateDlg::OnOK() 
  56. {
  57.   OnApply();
  58.   CDialog::OnOK();
  59. }
  60.  
  61. void CRotateDlg::OnApply() 
  62. {
  63.   UpdateData(TRUE);
  64.     float f = atof(m_strX);
  65.   if (f != 0.0)
  66.     Select_RotateAxis(0,f);
  67.     f = atof(m_strY);
  68.   if (f != 0.0)
  69.     Select_RotateAxis(1,f);
  70.     f = atof(m_strZ);
  71.   if (f != 0.0)
  72.     Select_RotateAxis(2,f);
  73. }
  74.  
  75. BOOL CRotateDlg::OnInitDialog() 
  76. {
  77.     CDialog::OnInitDialog();
  78.     m_wndSpin1.SetRange(0, 359);
  79.     m_wndSpin2.SetRange(0, 359);
  80.     m_wndSpin3.SetRange(0, 359);
  81.     return TRUE;  // return TRUE unless you set the focus to a control
  82.                   // EXCEPTION: OCX Property Pages should return FALSE
  83. }
  84.  
  85. void CRotateDlg::OnDeltaposSpin1(NMHDR* pNMHDR, LRESULT* pResult) 
  86. {
  87.     NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNMHDR;
  88.     Select_RotateAxis(0, pNMUpDown->iDelta);
  89.     *pResult = 0;
  90. }
  91.  
  92. void CRotateDlg::OnDeltaposSpin2(NMHDR* pNMHDR, LRESULT* pResult) 
  93. {
  94.     NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNMHDR;
  95.     Select_RotateAxis(1, pNMUpDown->iDelta);
  96.     *pResult = 0;
  97. }
  98.  
  99. void CRotateDlg::OnDeltaposSpin3(NMHDR* pNMHDR, LRESULT* pResult) 
  100. {
  101.     NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNMHDR;
  102.     Select_RotateAxis(2, pNMUpDown->iDelta);
  103.     *pResult = 0;
  104. }
  105.  
  106. void CRotateDlg::ApplyNoPaint()
  107. {
  108.  
  109. }
  110.