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.

206 lines
4.9 KiB

  1. //============================================================================
  2. // Copyright (C) Microsoft Corporation, 1997 - 1999
  3. //
  4. // File: ripprop.h
  5. //
  6. // History:
  7. // 07/22/97 Kenn M. Takara Created.
  8. //
  9. // IP Summary property sheet and property pages
  10. //
  11. //============================================================================
  12. #ifndef _RIPPROP_H
  13. #define _RIPPROP_H
  14. #ifndef _INFO_H
  15. #include "info.h"
  16. #endif
  17. #ifndef _RTRSHEET_H
  18. #include "rtrsheet.h"
  19. #endif
  20. #ifndef __IPCTRL_H
  21. #include "ipctrl.h"
  22. #endif
  23. /*---------------------------------------------------------------------------
  24. Forward declarations
  25. ---------------------------------------------------------------------------*/
  26. class IPXConnection;
  27. class RipProperties;
  28. class RipInterfaceProperties;
  29. /*---------------------------------------------------------------------------
  30. Class: RipPageGeneral
  31. This class handles the General page of the Rip sheet.
  32. ---------------------------------------------------------------------------*/
  33. class RipPageGeneral :
  34. public RtrPropertyPage
  35. {
  36. public:
  37. RipPageGeneral(UINT nIDTemplate, UINT nIDCaption = 0)
  38. : RtrPropertyPage(nIDTemplate, nIDCaption)
  39. {};
  40. HRESULT Init(RipProperties * pIPPropSheet);
  41. protected:
  42. // Override the OnApply() so that we can grab our data from the
  43. // controls in the dialog.
  44. virtual BOOL OnApply();
  45. RipProperties * m_pRipPropSheet;
  46. void SetErrorLevelButtons(DWORD dwErrorLevel);
  47. DWORD QueryErrorLevelButtons();
  48. //{{AFX_VIRTUAL(RipPageGeneral)
  49. protected:
  50. virtual VOID DoDataExchange(CDataExchange *pDX);
  51. //}}AFX_VIRTUAL
  52. //{{AFX_MSG(RipPageGeneral)
  53. virtual BOOL OnInitDialog();
  54. afx_msg void OnButtonClicked();
  55. //}}AFX_MSG
  56. DECLARE_MESSAGE_MAP()
  57. };
  58. /*---------------------------------------------------------------------------
  59. Class: RipProperties
  60. This is the property sheet support class for the properties page of
  61. the Rip node.
  62. ---------------------------------------------------------------------------*/
  63. class RipProperties :
  64. public RtrPropertySheet
  65. {
  66. public:
  67. RipProperties(ITFSNode *pNode,
  68. IComponentData *pComponentData,
  69. ITFSComponentData *pTFSCompData,
  70. LPCTSTR pszSheetName,
  71. CWnd *pParent = NULL,
  72. UINT iPage=0,
  73. BOOL fScopePane = TRUE);
  74. HRESULT Init(IRtrMgrInfo *pRm);
  75. virtual BOOL SaveSheetData();
  76. // Loads the infobase for this interface.
  77. HRESULT LoadInfoBase(IPXConnection *pIPXConn);
  78. HRESULT GetInfoBase(IInfoBase **ppInfoBase);
  79. protected:
  80. SPIRtrMgrInfo m_spRm;
  81. SPIRtrMgrInterfaceInfo m_spRmIf;
  82. SPIInterfaceInfo m_spIf;
  83. RipPageGeneral m_pageGeneral;
  84. SPITFSNode m_spNode;
  85. SPIInfoBase m_spInfoBase;
  86. };
  87. /*---------------------------------------------------------------------------
  88. Class: RipInterfacePageGeneral
  89. This class handles the General page of the Rip sheet.
  90. ---------------------------------------------------------------------------*/
  91. class RipInterfacePageGeneral :
  92. public RtrPropertyPage
  93. {
  94. public:
  95. RipInterfacePageGeneral(UINT nIDTemplate, UINT nIDCaption = 0)
  96. : RtrPropertyPage(nIDTemplate, nIDCaption)
  97. {};
  98. HRESULT Init(RipInterfaceProperties * pIPPropSheet,
  99. IInterfaceInfo *pIf);
  100. protected:
  101. // Override the OnApply() so that we can grab our data from the
  102. // controls in the dialog.
  103. virtual BOOL OnApply();
  104. // Brings up either the input or output filters
  105. void ShowFilter(BOOL fOutputFilter);
  106. RipInterfaceProperties * m_pRipIfPropSheet;
  107. SPIInterfaceInfo m_spIf;
  108. CSpinButtonCtrl m_spinInterval;
  109. CSpinButtonCtrl m_spinMultiplier;
  110. //{{AFX_VIRTUAL(RipInterfacePageGeneral)
  111. protected:
  112. virtual VOID DoDataExchange(CDataExchange *pDX);
  113. //}}AFX_VIRTUAL
  114. //{{AFX_MSG(RipInterfacePageGeneral)
  115. virtual BOOL OnInitDialog();
  116. afx_msg void OnButtonClicked();
  117. afx_msg void OnUpdateButtonClicked();
  118. afx_msg void OnChangeEdit();
  119. afx_msg void OnInputFilter();
  120. afx_msg void OnOutputFilter();
  121. //}}AFX_MSG
  122. DECLARE_MESSAGE_MAP()
  123. };
  124. /*---------------------------------------------------------------------------
  125. Class: RipInterfaceProperties
  126. This is the property sheet support class for the properties page of
  127. the RIP node.
  128. ---------------------------------------------------------------------------*/
  129. class RipInterfaceProperties :
  130. public RtrPropertySheet
  131. {
  132. public:
  133. RipInterfaceProperties(ITFSNode *pNode,
  134. IComponentData *pComponentData,
  135. ITFSComponentData *pTFSCompData,
  136. LPCTSTR pszSheetName,
  137. CWnd *pParent = NULL,
  138. UINT iPage=0,
  139. BOOL fScopePane = TRUE);
  140. HRESULT Init(IInterfaceInfo *pIf, IRtrMgrInfo *pRm);
  141. virtual BOOL SaveSheetData();
  142. virtual void CancelSheetData();
  143. // Loads the infobase for this interface.
  144. HRESULT LoadInfoBase(IPXConnection *pIPXConn);
  145. HRESULT GetInfoBase(IInfoBase **ppInfoBase);
  146. BOOL m_bNewInterface;
  147. protected:
  148. SPIRtrMgrInfo m_spRm;
  149. SPIRtrMgrInterfaceInfo m_spRmIf;
  150. SPIInterfaceInfo m_spIf;
  151. RipInterfacePageGeneral m_pageGeneral;
  152. SPITFSNode m_spNode;
  153. SPIInfoBase m_spInfoBase;
  154. BOOL m_bClientInfoBase;
  155. };
  156. #endif _RIPPROP_H