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.

181 lines
3.9 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 2000 - 2001.
  5. //
  6. // File: rolesnap.h
  7. //
  8. // Contents: Contains Info which is common to many classes
  9. //
  10. // History: 07-26-2001 Hiteshr Created
  11. //
  12. //----------------------------------------------------------------------------
  13. #define BMP_COLOR_MASK RGB(255,0,255) // pink
  14. //
  15. // Context menus
  16. //
  17. // Identifiers for each of the commands in the context menu.
  18. enum
  19. {
  20. //
  21. // Items for the root node
  22. //
  23. IDM_ROOT_OPEN_STORE,
  24. IDM_ROOT_NEW_STORE,
  25. IDM_ROOT_OPTIONS,
  26. //
  27. //Items for the AdminManger Node
  28. //
  29. IDM_ADMIN_NEW_APP,
  30. IDM_ADMIN_CLOSE_ADMIN_MANAGER,
  31. IDM_ADMIN_RELOAD,
  32. //
  33. //Items for the Application node
  34. //
  35. IDM_APP_NEW_SCOPE,
  36. //
  37. //Items for Scope Node
  38. //
  39. IDM_SCOPE_ADD_ROLE,
  40. //
  41. //Items For Group Container Node
  42. //
  43. IDM_GROUP_CONTAINER_NEW_GROUP,
  44. //
  45. //Items For Role Container Node
  46. //
  47. IDM_ROLE_CONTAINER_ASSIGN_ROLE,
  48. //
  49. //Items for Role Definition container Node
  50. //
  51. IDM_ROLE_DEFINITION_CONTAINER_NEW_ROLE_DEFINITION,
  52. //
  53. //Items For Task Container Node
  54. //
  55. IDM_TASK_CONTAINER_NEW_TASK,
  56. //
  57. //Items For Operation Container Node
  58. //
  59. IDM_OPERATION_CONTAINER_NEW_OPERATION,
  60. //
  61. //Items for RoleNode
  62. //
  63. IDM_ROLE_NODE_ASSIGN_APPLICATION_GROUPS,
  64. IDM_ROLE_NODE_ASSIGN_WINDOWS_GROUPS,
  65. };
  66. DECLARE_MENU(CRootDataMenuHolder)
  67. DECLARE_MENU(CAdminManagerNodeMenuHolder)
  68. DECLARE_MENU(CApplicationNodeMenuHolder)
  69. DECLARE_MENU(CScopeNodeMenuHolder)
  70. DECLARE_MENU(CGroupCollectionNodeMenuHolder)
  71. DECLARE_MENU(CTaskCollectionNodeMenuHolder)
  72. DECLARE_MENU(CRoleCollectionNodeMenuHolder)
  73. DECLARE_MENU(COperationCollectionNodeMenuHolder)
  74. DECLARE_MENU(CRoleDefinitionCollectionNodeMenuHolder)
  75. DECLARE_MENU(CGroupNodeMenuHolder)
  76. DECLARE_MENU(CTaskNodeMenuHolder)
  77. DECLARE_MENU(CRoleNodeMenuHolder)
  78. //
  79. // enumeration for image strips
  80. //
  81. enum
  82. {
  83. ROOT_IMAGE = 0,
  84. };
  85. //
  86. //Column Headers for result pane
  87. //
  88. extern RESULT_HEADERMAP _DefaultHeaderStrings[];
  89. #define N_DEFAULT_HEADER_COLS 3
  90. //
  91. // CRoleDefaultColumnSet
  92. //
  93. class CRoleDefaultColumnSet : public CColumnSet
  94. {
  95. public :
  96. CRoleDefaultColumnSet(LPCWSTR lpszColumnID)
  97. : CColumnSet(lpszColumnID)
  98. {
  99. for (int iCol = 0; iCol < N_DEFAULT_HEADER_COLS; iCol++)
  100. {
  101. CColumn* pNewColumn = new CColumn(_DefaultHeaderStrings[iCol].szBuffer,
  102. _DefaultHeaderStrings[iCol].nFormat,
  103. _DefaultHeaderStrings[iCol].nWidth,
  104. iCol);
  105. AddTail(pNewColumn);
  106. }
  107. }
  108. };
  109. //+----------------------------------------------------------------------------
  110. // Structure for Listview Columns and their width in percentage
  111. //
  112. //
  113. //
  114. //-----------------------------------------------------------------------------
  115. typedef struct _col_for_listview
  116. {
  117. UINT idText; // Resource Id for column name
  118. UINT iPercent; // Percent of width
  119. } COL_FOR_LV;
  120. #define LAST_COL_ENTRY_IDTEXT 0xFFFF
  121. //
  122. //Columns For Various ListBoxes
  123. //
  124. extern COL_FOR_LV Col_For_Task_Role[];
  125. extern COL_FOR_LV Col_For_Add_Object[];
  126. extern COL_FOR_LV Col_For_Security_Page[];
  127. extern COL_FOR_LV Col_For_Browse_ADStore_Page[];
  128. #define COL_NAME 0x0001
  129. #define COL_TYPE 0x0002
  130. #define COL_PARENT_TYPE 0x0004
  131. #define COL_DESCRIPTION 0x0008
  132. // Enumeration for the icons used
  133. enum
  134. {
  135. iIconUnknownSid,
  136. iIconComputerSid,
  137. iIconGroup,
  138. iIconLocalGroup, //This is not used, but since its in the imagelist
  139. //i added an entry here
  140. iIconUser,
  141. iIconBasicGroup,
  142. iIconLdapGroup,
  143. iIconOperation,
  144. iIconTask,
  145. iIconRoleDefinition,
  146. iIconStore,
  147. iIconApplication,
  148. iIconRole,
  149. iIconRoleSnapin,
  150. iIconScope,
  151. iIconContainer,
  152. };