Leaked source code of windows server 2003
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.

136 lines
3.3 KiB

  1. /*++
  2. 1998 Seagate Software, Inc. All rights reserved
  3. Module Name:
  4. PrMrIe.h
  5. Abstract:
  6. Inclusion / Exclusion property Page.
  7. Author:
  8. Art Bragg [abragg] 08-Aug-1997
  9. Revision History:
  10. --*/
  11. #ifndef _PRMRIE_H
  12. #define _PRMRIE_H
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CPrMrIe dialog
  15. #include "stdafx.h"
  16. #include "IeList.h"
  17. #define MAX_RULES 512
  18. class CPrMrIe : public CSakVolPropPage
  19. {
  20. // Construction
  21. public:
  22. CPrMrIe();
  23. ~CPrMrIe();
  24. // Dialog Data
  25. //{{AFX_DATA(CPrMrIe)
  26. enum { IDD = IDD_PROP_MANRES_INCEXC };
  27. CButton m_BtnUp;
  28. CButton m_BtnRemove;
  29. CButton m_BtnEdit;
  30. CButton m_BtnDown;
  31. CButton m_BtnAdd;
  32. CIeList m_listIncExc;
  33. //}}AFX_DATA
  34. // Overrides
  35. // ClassWizard generate virtual function overrides
  36. //{{AFX_VIRTUAL(CPrMrIe)
  37. public:
  38. virtual BOOL OnApply();
  39. protected:
  40. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  41. //}}AFX_VIRTUAL
  42. // Implementation
  43. protected:
  44. // Generated message map functions
  45. //{{AFX_MSG(CPrMrIe)
  46. virtual BOOL OnInitDialog();
  47. afx_msg void OnBtnAdd();
  48. afx_msg void OnBtnDown();
  49. afx_msg void OnBtnRemove();
  50. afx_msg void OnBtnUp();
  51. afx_msg void OnBtnEdit();
  52. afx_msg void OnDestroy();
  53. afx_msg void OnDblclkListIe(NMHDR* pNMHDR, LRESULT* pResult);
  54. afx_msg void OnClickListIe(NMHDR* pNMHDR, LRESULT* pResult);
  55. afx_msg void OnItemchangedListIe(NMHDR* pNMHDR, LRESULT* pResult);
  56. afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
  57. afx_msg void OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct);
  58. afx_msg void OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct);
  59. //}}AFX_MSG
  60. DECLARE_MESSAGE_MAP()
  61. public:
  62. // Unmarshalled pointer to managed resource
  63. CComPtr <IFsaResource> m_pFsaResource;
  64. // UnMarshalled pointer to FsaServer
  65. CComPtr <IFsaServer> m_pFsaServer;
  66. private:
  67. CStatic *m_LineList[MAX_RULES];
  68. USHORT m_LineCount;
  69. CWsbStringPtr m_pResourceName; // Name of this resource
  70. // Collection of rules for this managed resource
  71. CComPtr <IWsbIndexedCollection> m_pRulesIndexedCollection;
  72. // CImageList m_ImageList;
  73. HRESULT DisplayUserRuleText (
  74. CListCtrl *pListControl,
  75. int index);
  76. HRESULT GetRuleFromObject (
  77. IHsmRule *pHsmRule,
  78. CString& szPath,
  79. CString& szName,
  80. BOOL *bInclude,
  81. BOOL *bSubdirs,
  82. BOOL *bUserDefined);
  83. HRESULT CPrMrIe::SetRuleInObject (
  84. IHsmRule *pHsmRule,
  85. CString szPath,
  86. CString szName,
  87. BOOL bInclude,
  88. BOOL bSubdirs,
  89. BOOL bUserDefined);
  90. // HRESULT CreateImageList(void);
  91. void MoveSelectedListItem(CListCtrl *pList, int moveAmount);
  92. void SwapLines(CListCtrl *pListControl, int indexA, int indexB);
  93. void SetBtnState(void);
  94. void SortList(void);
  95. void FixRulePath (CString& sPath);
  96. BOOL IsRuleInList(CString sPath, CString sFileSpec, int ignoreIndex);
  97. void SetSelectedItem( ULONG_PTR itemData );
  98. };
  99. //{{AFX_INSERT_LOCATION}}
  100. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  101. //}}AFX
  102. #endif