Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

149 lines
3.5 KiB

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1996-1997 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // RegKey.cpp
  7. //
  8. // Abstract:
  9. // Implementation of the CEditRegKeyDlg class.
  10. //
  11. // Author:
  12. // David Potter (davidp) February 23, 1997
  13. //
  14. // Revision History:
  15. //
  16. // Notes:
  17. //
  18. /////////////////////////////////////////////////////////////////////////////
  19. #include "stdafx.h"
  20. #include "CluAdmX.h"
  21. #include "RegKey.h"
  22. #include "HelpData.h"
  23. #ifdef _DEBUG
  24. #define new DEBUG_NEW
  25. #undef THIS_FILE
  26. static char THIS_FILE[] = __FILE__;
  27. #endif
  28. /////////////////////////////////////////////////////////////////////////////
  29. // CEditRegKeyDlg dialog
  30. /////////////////////////////////////////////////////////////////////////////
  31. /////////////////////////////////////////////////////////////////////////////
  32. // Message Maps
  33. BEGIN_MESSAGE_MAP(CEditRegKeyDlg, CBaseDialog)
  34. //{{AFX_MSG_MAP(CEditRegKeyDlg)
  35. ON_EN_CHANGE(IDC_REGKEY, OnChangeRegKey)
  36. //}}AFX_MSG_MAP
  37. END_MESSAGE_MAP()
  38. /////////////////////////////////////////////////////////////////////////////
  39. //++
  40. //
  41. // CEditRegKeyDlg::CEditRegKeyDlg
  42. //
  43. // Routine Description:
  44. // Constructor.
  45. //
  46. // Arguments:
  47. // pParent [IN] Parent window for the dialog.
  48. //
  49. // Return Value:
  50. // None.
  51. //
  52. //--
  53. /////////////////////////////////////////////////////////////////////////////
  54. CEditRegKeyDlg::CEditRegKeyDlg(CWnd * pParent /*=NULL*/)
  55. : CBaseDialog(IDD, g_aHelpIDs_IDD_EDIT_REGKEY, pParent)
  56. {
  57. //{{AFX_DATA_INIT(CEditRegKeyDlg)
  58. m_strRegKey = _T("");
  59. //}}AFX_DATA_INIT
  60. } //*** CEditRegKeyDlg::CEditRegKeyDlg()
  61. /////////////////////////////////////////////////////////////////////////////
  62. //++
  63. //
  64. // CEditRegKeyDlg::DoDataExchange
  65. //
  66. // Routine Description:
  67. // Do data exchange between the dialog and the class.
  68. //
  69. // Arguments:
  70. // pDX [IN OUT] Data exchange object
  71. //
  72. // Return Value:
  73. // None.
  74. //
  75. //--
  76. /////////////////////////////////////////////////////////////////////////////
  77. void CEditRegKeyDlg::DoDataExchange(CDataExchange * pDX)
  78. {
  79. CBaseDialog::DoDataExchange(pDX);
  80. //{{AFX_DATA_MAP(CEditRegKeyDlg)
  81. DDX_Control(pDX, IDOK, m_pbOK);
  82. DDX_Control(pDX, IDC_REGKEY, m_editRegKey);
  83. DDX_Text(pDX, IDC_REGKEY, m_strRegKey);
  84. //}}AFX_DATA_MAP
  85. } //*** CEditRegKeyDlg::DoDataExchange()
  86. /////////////////////////////////////////////////////////////////////////////
  87. //++
  88. //
  89. // CEditRegKeyDlg::OnInitDialog
  90. //
  91. // Routine Description:
  92. // Handler for the WM_INITDIALOG message.
  93. //
  94. // Arguments:
  95. // None.
  96. //
  97. // Return Value:
  98. // TRUE We need the focus to be set for us.
  99. // FALSE We already set the focus to the proper control.
  100. //
  101. //--
  102. /////////////////////////////////////////////////////////////////////////////
  103. BOOL CEditRegKeyDlg::OnInitDialog(void)
  104. {
  105. CBaseDialog::OnInitDialog();
  106. if (m_strRegKey.GetLength() == 0)
  107. m_pbOK.EnableWindow(FALSE);
  108. return TRUE; // return TRUE unless you set the focus to a control
  109. // EXCEPTION: OCX Property Pages should return FALSE
  110. } //*** CEditRegKeyDlg::OnInitDialog()
  111. /////////////////////////////////////////////////////////////////////////////
  112. //++
  113. //
  114. // CEditRegKeyDlg::OnChangeRegKey
  115. //
  116. // Routine Description:
  117. // Handler for the EN_CHANGE message on the Name edit control.
  118. //
  119. // Arguments:
  120. // None.
  121. //
  122. // Return Value:
  123. // TRUE Page successfully applied.
  124. // FALSE Error applying page.
  125. //
  126. //--
  127. /////////////////////////////////////////////////////////////////////////////
  128. void CEditRegKeyDlg::OnChangeRegKey(void)
  129. {
  130. BOOL bEnable;
  131. bEnable = (m_editRegKey.GetWindowTextLength() > 0);
  132. m_pbOK.EnableWindow(bEnable);
  133. } //*** CEditRegKeyDlg::OnChangeRegKey()