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.

120 lines
3.1 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1998 - 1999
  6. //
  7. // File: delegwiz.h
  8. //
  9. //--------------------------------------------------------------------------
  10. #ifndef _DELEGWIZ_H
  11. #define _DELEGWIZ_H
  12. ///////////////////////////////////////////////////////////////////////////////
  13. // CDNSDelegationWiz_StartPropertyPage
  14. class CDNSDelegationWiz_StartPropertyPage : public CPropertyPageBase
  15. {
  16. public:
  17. CDNSDelegationWiz_StartPropertyPage();
  18. virtual BOOL OnInitDialog();
  19. virtual BOOL OnSetActive();
  20. friend class CDNSDelegationWizardHolder;
  21. };
  22. ///////////////////////////////////////////////////////////////////////////////
  23. // CDNSDelegationWiz_DomainNamePropertyPage
  24. class CDNSDelegationWiz_DomainNamePropertyPage : public CPropertyPageBase
  25. {
  26. public:
  27. virtual BOOL OnInitDialog();
  28. virtual BOOL OnSetActive();
  29. CDNSDelegationWiz_DomainNamePropertyPage();
  30. virtual BOOL OnKillActive();
  31. protected:
  32. afx_msg void OnChangeDomainNameEdit();
  33. private:
  34. CString m_szDomainName;
  35. int m_nUTF8ParentLen;
  36. CEdit* GetDomainEdit() { return (CEdit*)GetDlgItem(IDC_NEW_DOMAIN_NAME_EDIT);}
  37. DECLARE_MESSAGE_MAP()
  38. friend class CDNSDelegationWizardHolder;
  39. };
  40. ///////////////////////////////////////////////////////////////////////////////
  41. // CDNSDelegationWiz_NameServersPropertyPage
  42. class CDNSDelegationWiz_NameServersPropertyPage : public CDNSNameServersPropertyPage
  43. {
  44. public:
  45. CDNSDelegationWiz_NameServersPropertyPage();
  46. virtual BOOL OnSetActive();
  47. protected:
  48. virtual void ReadRecordNodesList() { } // we do not load anything
  49. virtual BOOL WriteNSRecordNodesList() { ASSERT(FALSE); return FALSE;} // never called
  50. virtual void OnCountChange(int nCount);
  51. private:
  52. BOOL CreateNewNSRecords(CDNSDomainNode* pSubdomainNode);
  53. friend class CDNSDelegationWizardHolder;
  54. };
  55. ///////////////////////////////////////////////////////////////////////////////
  56. // CDNSDelegationWiz_FinishPropertyPage
  57. class CDNSDelegationWiz_FinishPropertyPage : public CPropertyPageBase
  58. {
  59. public:
  60. virtual BOOL OnSetActive();
  61. virtual BOOL OnWizardFinish();
  62. CDNSDelegationWiz_FinishPropertyPage();
  63. private:
  64. void DisplaySummaryInfo();
  65. friend class CDNSDelegationWizardHolder;
  66. };
  67. ///////////////////////////////////////////////////////////////////////////////
  68. // CDNSDelegationWizardHolder
  69. class CDNSDelegationWizardHolder : public CPropertyPageHolderBase
  70. {
  71. public:
  72. CDNSDelegationWizardHolder(CDNSMTContainerNode* pContainerNode, CDNSDomainNode* pThisDomainNode,
  73. CComponentDataObject* pComponentData);
  74. virtual ~CDNSDelegationWizardHolder();
  75. private:
  76. CDNSDomainNode* GetDomainNode();
  77. BOOL OnFinish();
  78. CDNSDomainNode* m_pSubdomainNode;
  79. CDNSDelegationWiz_StartPropertyPage m_startPage;
  80. CDNSDelegationWiz_DomainNamePropertyPage m_domainNamePage;
  81. CDNSDelegationWiz_NameServersPropertyPage m_nameServersPage;
  82. CDNSDelegationWiz_FinishPropertyPage m_finishPage;
  83. friend class CDNSDelegationWiz_DomainNamePropertyPage;
  84. friend class CDNSDelegationWiz_NameServersPropertyPage;
  85. friend class CDNSDelegationWiz_FinishPropertyPage;
  86. };
  87. #endif // _DELEGWIZ_H