home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the 3D Game Programming Gurus / gurus.iso / DirectX / dx9sdkcp.exe / SDK (C++) / Bin / DXUtils / Visual Studio 6.0 Wizards / Source Code / Cstm1Dlg.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2002-11-12  |  5.6 KB  |  213 lines

  1. // cstm1dlg.cpp : implementation file
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include "DxAppWiz.h"
  6. #include "cstm1dlg.h"
  7. #include "DXaw.h"
  8.  
  9. #ifdef _PSEUDO_DEBUG
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13.  
  14. /////////////////////////////////////////////////////////////////////////////
  15. // CCustom1Dlg dialog
  16.  
  17.  
  18. CCustom1Dlg::CCustom1Dlg( CDialogChooser* pChooser )
  19.     : CAppWizStepDlg(CCustom1Dlg::IDD)
  20. {
  21.     m_pChooser = pChooser;
  22.  
  23.     m_pChooser->m_pDlg1Preview = &m_Preview;
  24.  
  25.     m_bWindow      = m_pChooser->m_bWindow;
  26.     m_bMFCDialog   = m_pChooser->m_bMFCDialog;
  27.  
  28.     //{{AFX_DATA_INIT(CCustom1Dlg)
  29.     m_bDirectInput = m_pChooser->m_bDirectInput;
  30.     m_bDirectMusic = m_pChooser->m_bDirectMusic;
  31.     m_bDirectPlay  = m_pChooser->m_bDirectPlay;
  32.     m_bDirectSound = m_pChooser->m_bDirectSound;
  33.     m_bDirect3D    = m_pChooser->m_bDirect3D;
  34.     m_bRegAccess   = m_pChooser->m_bRegAccess;
  35.     m_bIncludeMenu = m_pChooser->m_bIncludeMenu;
  36.     //}}AFX_DATA_INIT
  37. }
  38.  
  39.  
  40. void CCustom1Dlg::DoDataExchange(CDataExchange* pDX)
  41. {
  42.     CAppWizStepDlg::DoDataExchange(pDX);
  43.     //{{AFX_DATA_MAP(CCustom1Dlg)
  44.     DDX_Control(pDX, IDC_PREVIEW, m_Preview);
  45.     DDX_Control(pDX, IDC_BACKGROUND, m_Background);
  46.     DDX_Check(pDX, IDC_DINPUT, m_bDirectInput);
  47.     DDX_Check(pDX, IDC_DMUSIC, m_bDirectMusic);
  48.     DDX_Check(pDX, IDC_DPLAY, m_bDirectPlay);
  49.     DDX_Check(pDX, IDC_DSOUND, m_bDirectSound);
  50.     DDX_Check(pDX, IDC_DIRECT3D, m_bDirect3D);
  51.     DDX_Check(pDX, IDC_REGINCLUDE, m_bRegAccess);
  52.     DDX_Check(pDX, IDC_ADDMENUS, m_bIncludeMenu);
  53.     //}}AFX_DATA_MAP
  54. }
  55.  
  56. void CCustom1Dlg::UpdateInfo()
  57. {
  58.     UpdateData(TRUE);
  59.  
  60.     m_bWindow    = IsDlgButtonChecked( IDC_WINDOW );
  61.     m_bMFCDialog = IsDlgButtonChecked( IDC_MFCDIALOG );
  62.     m_pChooser->m_bWindow      = m_bWindow;
  63.     m_pChooser->m_bMFCDialog   = m_bMFCDialog;
  64.     
  65.     m_pChooser->m_bDirectInput = m_bDirectInput;
  66.     m_pChooser->m_bDirectMusic = m_bDirectMusic;
  67.     m_pChooser->m_bDirectPlay  = m_bDirectPlay;
  68.     m_pChooser->m_bDirectSound = m_bDirectSound;
  69.     m_pChooser->m_bDirect3D    = m_bDirect3D;
  70.     m_pChooser->m_bRegAccess = m_bRegAccess;
  71.     m_pChooser->m_bIncludeMenu = m_bIncludeMenu;
  72.  
  73.     m_pChooser->UpdatePreviewAndSteps( &m_Preview );
  74. }
  75.  
  76. // This is called whenever the user presses Next, Back, or Finish with this step
  77. //  present.  Do all validation & data exchange from the dialog in this function.
  78. BOOL CCustom1Dlg::OnDismiss()
  79. {
  80.     UpdateInfo();
  81.  
  82.     if( m_bMFCDialog )
  83.         DirectXaw.m_Dictionary["DLG"]="Yes";
  84.     else
  85.         DirectXaw.m_Dictionary.RemoveKey("DLG");
  86.  
  87.     if( m_bWindow )
  88.         DirectXaw.m_Dictionary["WINDOW"]="Yes";
  89.     else
  90.         DirectXaw.m_Dictionary.RemoveKey("WINDOW");
  91.  
  92.     if( m_bDirect3D )
  93.         DirectXaw.m_Dictionary["D3D"]="Yes";
  94.     else
  95.         DirectXaw.m_Dictionary.RemoveKey("D3D");
  96.     
  97.     if( m_bDirectInput )
  98.         DirectXaw.m_Dictionary["DINPUT"]="Yes";
  99.     else
  100.         DirectXaw.m_Dictionary.RemoveKey("DINPUT");
  101.  
  102.     if( m_bDirectMusic )
  103.         DirectXaw.m_Dictionary["DMUSIC"]="Yes";
  104.     else
  105.         DirectXaw.m_Dictionary.RemoveKey("DMUSIC");
  106.  
  107.     if( m_bDirectPlay )
  108.         DirectXaw.m_Dictionary["DPLAY"]="Yes";
  109.     else
  110.         DirectXaw.m_Dictionary.RemoveKey("DPLAY");
  111.  
  112.     if( m_bDirectSound )
  113.         DirectXaw.m_Dictionary["DSOUND"]="Yes";
  114.     else
  115.         DirectXaw.m_Dictionary.RemoveKey("DSOUND");
  116.  
  117.     if( m_bRegAccess )
  118.         DirectXaw.m_Dictionary["REGACCESS"]="Yes";
  119.     else
  120.         DirectXaw.m_Dictionary.RemoveKey("REGACCESS");
  121.  
  122.     if( m_bIncludeMenu )
  123.         DirectXaw.m_Dictionary["MENUBAR"]="Yes";
  124.     else
  125.         DirectXaw.m_Dictionary.RemoveKey("MENUBAR");
  126.  
  127.     m_pChooser->InitDialogs();
  128.  
  129.     return TRUE;    // return FALSE if the dialog shouldn't be dismissed
  130. }
  131.  
  132.  
  133. BEGIN_MESSAGE_MAP(CCustom1Dlg, CAppWizStepDlg)
  134.     //{{AFX_MSG_MAP(CCustom1Dlg)
  135.     ON_BN_CLICKED(IDC_DIRECT3D, OnDirect3d)
  136.     ON_BN_CLICKED(IDC_DPLAY, OnDplay)
  137.     ON_BN_CLICKED(IDC_MFCDIALOG, OnMfcdialog)
  138.     ON_BN_CLICKED(IDC_WINDOW, OnWindow)
  139.     ON_BN_CLICKED(IDC_DINPUT, OnDinput)
  140.     ON_BN_CLICKED(IDC_DMUSIC, OnDmusic)
  141.     ON_BN_CLICKED(IDC_DSOUND, OnDsound)
  142.     ON_BN_CLICKED(IDC_REGINCLUDE, OnReginclude)
  143.     ON_BN_CLICKED(IDC_ADDMENUS, OnAddmenus)
  144.     //}}AFX_MSG_MAP
  145. END_MESSAGE_MAP()
  146.  
  147. BOOL CCustom1Dlg::OnInitDialog() 
  148. {
  149.     CAppWizStepDlg::OnInitDialog();
  150.  
  151.     ::ShowWindow( ::GetDlgItem(::GetParent(m_hWnd), 0xE146), SW_HIDE );
  152.  
  153.     CheckDlgButton( IDC_WINDOW, (m_bWindow) ? BST_CHECKED : BST_UNCHECKED );
  154.     CheckDlgButton( IDC_MFCDIALOG, (m_bMFCDialog) ? BST_CHECKED : BST_UNCHECKED );
  155.     CheckDlgButton( IDC_DINPUT, (m_bDirectInput) ? BST_CHECKED : BST_UNCHECKED );
  156.     CheckDlgButton( IDC_DMUSIC, (m_bDirectMusic) ? BST_CHECKED : BST_UNCHECKED );
  157.     CheckDlgButton( IDC_DPLAY, (m_bDirectPlay) ? BST_CHECKED : BST_UNCHECKED );
  158.     CheckDlgButton( IDC_DSOUND, (m_bDirectSound) ? BST_CHECKED : BST_UNCHECKED );
  159.     CheckDlgButton( IDC_DIRECT3D, (m_bDirect3D) ? BST_CHECKED : BST_UNCHECKED );
  160.     CheckDlgButton( IDC_REGINCLUDE, (m_bRegAccess) ? BST_CHECKED : BST_UNCHECKED );
  161.     CheckDlgButton( IDC_ADDMENUS, (m_bIncludeMenu) ? BST_CHECKED : BST_UNCHECKED );
  162.  
  163.     m_Background.SetBitmap( m_pChooser->m_hBackgroundBitmap );
  164.     UpdateInfo();
  165.  
  166.     return TRUE;  
  167. }
  168.  
  169. void CCustom1Dlg::OnDirect3d() 
  170. {
  171.     UpdateInfo();
  172. }
  173.  
  174. void CCustom1Dlg::OnDplay() 
  175. {
  176.     UpdateInfo();
  177. }
  178.  
  179. void CCustom1Dlg::OnMfcdialog() 
  180. {
  181.     UpdateInfo();
  182. }
  183.  
  184. void CCustom1Dlg::OnWindow() 
  185. {
  186.     UpdateInfo();
  187. }
  188.  
  189. void CCustom1Dlg::OnDinput() 
  190. {
  191.     UpdateInfo();
  192. }
  193.  
  194. void CCustom1Dlg::OnDmusic() 
  195. {
  196.     UpdateInfo();
  197. }
  198.  
  199. void CCustom1Dlg::OnDsound() 
  200. {
  201.     UpdateInfo();
  202. }
  203.  
  204. void CCustom1Dlg::OnReginclude() 
  205. {
  206.     UpdateInfo();
  207. }
  208.  
  209. void CCustom1Dlg::OnAddmenus() 
  210. {
  211.     UpdateInfo();
  212. }
  213.