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.

134 lines
2.9 KiB

  1. /*++
  2. Module Name:
  3. JPProp.h
  4. Abstract:
  5. This module contains the declaration for CReplicaSetPropPage
  6. This is used to implement the property page for Junction Point(aka Replica Set)
  7. --*/
  8. #ifndef __CREPLICA_SET_PROPPAGE_H_
  9. #define __CREPLICA_SET_PROPPAGE_H_
  10. #include "qwizpage.h" // The base class that implements the common functionality
  11. // of property and wizard pages
  12. #include "DfsCore.h"
  13. // ----------------------------------------------------------------------------
  14. // CReplicaSetPropPage: Property Sheet Page for the Junction Point(Replica Set)
  15. class CReplicaSetPropPage : public CQWizardPageImpl<CReplicaSetPropPage>
  16. {
  17. public:
  18. enum { IDD = IDD_JP_PROP };
  19. BEGIN_MSG_MAP(CReplicaSetPropPage)
  20. MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
  21. MESSAGE_HANDLER(WM_HELP, OnCtxHelp)
  22. MESSAGE_HANDLER(WM_CONTEXTMENU, OnCtxMenuHelp)
  23. MESSAGE_HANDLER(WM_PARENT_NODE_CLOSING, OnParentClosing)
  24. COMMAND_ID_HANDLER(IDC_REPLICA_SET_COMMENT, OnComment)
  25. COMMAND_ID_HANDLER(IDC_REFFERAL_TIME, OnReferralTime)
  26. CHAIN_MSG_MAP(CQWizardPageImpl<CReplicaSetPropPage>)
  27. END_MSG_MAP()
  28. CReplicaSetPropPage(
  29. );
  30. ~CReplicaSetPropPage(
  31. );
  32. LRESULT OnInitDialog(
  33. IN UINT i_uMsg,
  34. IN WPARAM i_wParam,
  35. LPARAM i_lParam,
  36. IN OUT BOOL& io_bHandled
  37. );
  38. LRESULT OnCtxHelp(
  39. IN UINT i_uMsg,
  40. IN WPARAM i_wParam,
  41. IN LPARAM i_lParam,
  42. IN OUT BOOL& io_bHandled
  43. );
  44. LRESULT OnCtxMenuHelp(
  45. IN UINT i_uMsg,
  46. IN WPARAM i_wParam,
  47. IN LPARAM i_lParam,
  48. IN OUT BOOL& io_bHandled
  49. );
  50. // Message handlers
  51. LRESULT OnApply(
  52. );
  53. LRESULT OnComment(
  54. IN WORD i_wNotifyCode,
  55. IN WORD i_wID,
  56. IN HWND i_hWndCtl,
  57. IN OUT BOOL& io_bHandled
  58. );
  59. LRESULT OnReferralTime(
  60. IN WORD i_wNotifyCode,
  61. IN WORD i_wID,
  62. IN HWND i_hWndCtl,
  63. IN OUT BOOL& io_bHandled
  64. );
  65. // Used by the node to tell the propery page to close.
  66. LRESULT OnParentClosing(
  67. IN UINT i_uMsg,
  68. IN WPARAM i_wParam,
  69. LPARAM i_lParam,
  70. IN OUT BOOL& io_bHandled
  71. );
  72. // Used to set notification data
  73. HRESULT SetNotifyData(
  74. IN LONG_PTR i_lNotifyHandle,
  75. IN LPARAM i_lParam
  76. );
  77. void _ReSet();
  78. HRESULT Initialize(
  79. IN IDfsRoot* i_piDfsRoot,
  80. IN IDfsJunctionPoint* i_piDfsJPObject
  81. );
  82. HRESULT _Save(
  83. IN BSTR i_bstrJPComment,
  84. IN long i_lTimeout
  85. );
  86. private:
  87. CComPtr<IDfsRoot> m_piDfsRoot;
  88. CComPtr<IDfsJunctionPoint> m_piDfsJPObject;
  89. CComBSTR m_bstrJPEntryPath;
  90. CComBSTR m_bstrJPComment;
  91. long m_lReferralTime;
  92. LONG_PTR m_lNotifyHandle;
  93. LPARAM m_lNotifyParam;
  94. BOOL m_bDfsRoot;
  95. BOOL m_bHideTimeout;
  96. };
  97. #endif // __CREPLICA_SET_PROPPAGE_H_