Process Hacker
colmgr.h
Go to the documentation of this file.
1 #ifndef PH_COLMGR_H
2 #define PH_COLMGR_H
3 
4 #define PH_CM_ORDER_LIMIT 160
5 
6 // begin_phapppub
7 typedef LONG (NTAPI *PPH_CM_POST_SORT_FUNCTION)(
8  _In_ LONG Result,
9  _In_ PVOID Node1,
10  _In_ PVOID Node2,
11  _In_ PH_SORT_ORDER SortOrder
12  );
13 // end_phapppub
14 
15 typedef struct _PH_CM_MANAGER
16 {
17  HWND Handle;
18  ULONG MinId;
19  ULONG NextId;
21  LIST_ENTRY ColumnListHead;
24 
25 typedef struct _PH_CM_COLUMN
26 {
27  LIST_ENTRY ListEntry;
28  ULONG Id;
29  struct _PH_PLUGIN *Plugin;
30  ULONG SubId;
31  PVOID Context;
32  PVOID SortFunction;
34 
36  _Out_ PPH_CM_MANAGER Manager,
37  _In_ HWND Handle,
38  _In_ ULONG MinId,
39  _In_ PPH_CM_POST_SORT_FUNCTION PostSortFunction
40  );
41 
43  _In_ PPH_CM_MANAGER Manager
44  );
45 
46 PPH_CM_COLUMN PhCmCreateColumn(
47  _Inout_ PPH_CM_MANAGER Manager,
48  _In_ PPH_TREENEW_COLUMN Column,
49  _In_ struct _PH_PLUGIN *Plugin,
50  _In_ ULONG SubId,
51  _In_opt_ PVOID Context,
52  _In_ PVOID SortFunction
53  );
54 
55 PPH_CM_COLUMN PhCmFindColumn(
56  _In_ PPH_CM_MANAGER Manager,
57  _In_ PPH_STRINGREF PluginName,
58  _In_ ULONG SubId
59  );
60 
62  _In_ PPH_CM_MANAGER Manager,
63  _In_ struct _PH_PLUGIN *Plugin
64  );
65 
66 BOOLEAN PhCmForwardMessage(
67  _In_ HWND hwnd,
68  _In_ PH_TREENEW_MESSAGE Message,
69  _In_opt_ PVOID Parameter1,
70  _In_opt_ PVOID Parameter2,
71  _In_ PPH_CM_MANAGER Manager
72  );
73 
74 BOOLEAN PhCmForwardSort(
75  _In_ PPH_TREENEW_NODE *Nodes,
76  _In_ ULONG NumberOfNodes,
77  _In_ ULONG SortColumn,
78  _In_ PH_SORT_ORDER SortOrder,
79  _In_ PPH_CM_MANAGER Manager
80  );
81 
82 // begin_phapppub
84 BOOLEAN
85 NTAPI
87  _In_ HWND TreeNewHandle,
88  _In_ PPH_STRINGREF Settings
89  );
90 // end_phapppub
91 
92 #define PH_CM_COLUMN_WIDTHS_ONLY 0x1
93 
94 BOOLEAN PhCmLoadSettingsEx(
95  _In_ HWND TreeNewHandle,
96  _In_opt_ PPH_CM_MANAGER Manager,
97  _In_ ULONG Flags,
98  _In_ PPH_STRINGREF Settings,
99  _In_opt_ PPH_STRINGREF SortSettings
100  );
101 
102 // begin_phapppub
103 PHAPPAPI
105 NTAPI
107  _In_ HWND TreeNewHandle
108  );
109 // end_phapppub
110 
112  _In_ HWND TreeNewHandle,
113  _In_opt_ PPH_CM_MANAGER Manager,
114  _In_ ULONG Flags,
115  _Out_opt_ PPH_STRING *SortSettings
116  );
117 
118 #endif