Process Hacker
treenew.h File Reference

Go to the source code of this file.

Data Structures

struct  _PH_TREENEW_COLUMN
 
struct  _PH_TREENEW_NODE
 
struct  _PH_TREENEW_CELL_PARTS
 
struct  _PH_TREENEW_HIT_TEST
 
struct  _PH_TREENEW_GET_CHILDREN
 
struct  _PH_TREENEW_IS_LEAF
 
struct  _PH_TREENEW_GET_CELL_TEXT
 
struct  _PH_TREENEW_GET_NODE_COLOR
 
struct  _PH_TREENEW_GET_NODE_FONT
 
struct  _PH_TREENEW_GET_NODE_ICON
 
struct  _PH_TREENEW_GET_CELL_TOOLTIP
 
struct  _PH_TREENEW_CUSTOM_DRAW
 
struct  _PH_TREENEW_MOUSE_EVENT
 
struct  _PH_TREENEW_KEY_EVENT
 
struct  _PH_TREENEW_NODE_EVENT
 
struct  _PH_TREENEW_CONTEXT_MENU
 
struct  _PH_TREENEW_HEADER_MOUSE_EVENT
 
struct  _PH_TREENEW_SEARCH_EVENT
 
struct  _PH_TREENEW_VIEW_PARTS
 

Macros

#define PH_TREENEW_CLASSNAME   L"PhTreeNew"
 
#define PH_TREENEW_SEARCH_TIMEOUT   1000
 
#define PH_TREENEW_SEARCH_MAXIMUM_LENGTH   1023
 
#define TN_STYLE_ICONS   0x1
 
#define TN_STYLE_DOUBLE_BUFFERED   0x2
 
#define TN_STYLE_NO_DIVIDER   0x4
 
#define TN_STYLE_ANIMATE_DIVIDER   0x8
 
#define TN_STYLE_NO_COLUMN_SORT   0x10
 
#define TN_STYLE_NO_COLUMN_REORDER   0x20
 
#define TN_STYLE_THIN_ROWS   0x40
 
#define TN_STYLE_NO_COLUMN_HEADER   0x80
 
#define TN_FLAG_ITEM_DRAG_SELECT   0x1
 
#define TN_FLAG_NO_UNFOLDING_TOOLTIPS   0x2
 
#define TN_CACHE   0x1
 
#define TN_AUTO_FORECOLOR   0x1000
 
#define TN_COLUMN_CONTEXT   0x1
 
#define TN_COLUMN_TEXT   0x2
 
#define TN_COLUMN_WIDTH   0x4
 
#define TN_COLUMN_ALIGNMENT   0x8
 
#define TN_COLUMN_DISPLAYINDEX   0x10
 
#define TN_COLUMN_TEXTFLAGS   0x20
 
#define TN_COLUMN_FLAG_VISIBLE   0x100000
 
#define TN_COLUMN_FLAG_CUSTOMDRAW   0x200000
 
#define TN_COLUMN_FLAG_FIXED   0x400000
 
#define TN_COLUMN_FLAG_SORTDESCENDING   0x800000
 
#define TN_COLUMN_FLAGS   0xfff00000
 
#define TN_CACHE_COLOR   0x1
 
#define TN_CACHE_FONT   0x2
 
#define TN_CACHE_ICON   0x4
 
#define TN_MEASURE_TEXT   0x1
 
#define TN_PART_CELL   0x1
 
#define TN_PART_PLUSMINUS   0x2
 
#define TN_PART_ICON   0x4
 
#define TN_PART_CONTENT   0x8
 
#define TN_PART_TEXT   0x10
 
#define TN_TEST_COLUMN   0x1
 
#define TN_TEST_SUBITEM   0x2
 
#define TN_HIT_LEFT   0x1
 
#define TN_HIT_RIGHT   0x2
 
#define TN_HIT_ABOVE   0x4
 
#define TN_HIT_BELOW   0x8
 
#define TN_HIT_ITEM   0x10
 
#define TN_HIT_ITEM_PLUSMINUS   0x20
 
#define TN_HIT_ITEM_ICON   0x40
 
#define TN_HIT_ITEM_CONTENT   0x80
 
#define TN_HIT_DIVIDER   0x100
 
#define TN_SELECT_DESELECT   0x1
 
#define TN_SELECT_TOGGLE   0x2
 
#define TN_SELECT_RESET   0x4
 
#define TN_AUTOSIZE_REMAINING_SPACE   0x1
 
#define TNM_FIRST   (WM_USER + 1)
 
#define TNM_SETCALLBACK   (WM_USER + 1)
 
#define TNM_NODESADDED   (WM_USER + 2)
 
#define TNM_NODESREMOVED   (WM_USER + 3)
 
#define TNM_NODESSTRUCTURED   (WM_USER + 4)
 
#define TNM_ADDCOLUMN   (WM_USER + 5)
 
#define TNM_REMOVECOLUMN   (WM_USER + 6)
 
#define TNM_GETCOLUMN   (WM_USER + 7)
 
#define TNM_SETCOLUMN   (WM_USER + 8)
 
#define TNM_GETCOLUMNORDERARRAY   (WM_USER + 9)
 
#define TNM_SETCOLUMNORDERARRAY   (WM_USER + 10)
 
#define TNM_SETCURSOR   (WM_USER + 11)
 
#define TNM_GETSORT   (WM_USER + 12)
 
#define TNM_SETSORT   (WM_USER + 13)
 
#define TNM_SETTRISTATE   (WM_USER + 14)
 
#define TNM_ENSUREVISIBLE   (WM_USER + 15)
 
#define TNM_SCROLL   (WM_USER + 16)
 
#define TNM_GETFLATNODECOUNT   (WM_USER + 17)
 
#define TNM_GETFLATNODE   (WM_USER + 18)
 
#define TNM_GETCELLTEXT   (WM_USER + 19)
 
#define TNM_SETNODEEXPANDED   (WM_USER + 20)
 
#define TNM_GETMAXID   (WM_USER + 21)
 
#define TNM_SETMAXID   (WM_USER + 22)
 
#define TNM_INVALIDATENODE   (WM_USER + 23)
 
#define TNM_INVALIDATENODES   (WM_USER + 24)
 
#define TNM_GETFIXEDHEADER   (WM_USER + 25)
 
#define TNM_GETHEADER   (WM_USER + 26)
 
#define TNM_GETTOOLTIPS   (WM_USER + 27)
 
#define TNM_SELECTRANGE   (WM_USER + 28)
 
#define TNM_DESELECTRANGE   (WM_USER + 29)
 
#define TNM_GETCOLUMNCOUNT   (WM_USER + 30)
 
#define TNM_SETREDRAW   (WM_USER + 31)
 
#define TNM_GETVIEWPARTS   (WM_USER + 32)
 
#define TNM_GETFIXEDCOLUMN   (WM_USER + 33)
 
#define TNM_GETFIRSTCOLUMN   (WM_USER + 34)
 
#define TNM_SETFOCUSNODE   (WM_USER + 35)
 
#define TNM_SETMARKNODE   (WM_USER + 36)
 
#define TNM_SETHOTNODE   (WM_USER + 37)
 
#define TNM_SETEXTENDEDFLAGS   (WM_USER + 38)
 
#define TNM_GETCALLBACK   (WM_USER + 39)
 
#define TNM_HITTEST   (WM_USER + 40)
 
#define TNM_GETVISIBLECOLUMNCOUNT   (WM_USER + 41)
 
#define TNM_AUTOSIZECOLUMN   (WM_USER + 42)
 
#define TNM_SETEMPTYTEXT   (WM_USER + 43)
 
#define TNM_SETROWHEIGHT   (WM_USER + 44)
 
#define TNM_LAST   (WM_USER + 44)
 
#define TreeNew_SetCallback(hWnd, Callback, Context)   SendMessage((hWnd), TNM_SETCALLBACK, (WPARAM)(Context), (LPARAM)(Callback))
 
#define TreeNew_NodesStructured(hWnd)   SendMessage((hWnd), TNM_NODESSTRUCTURED, 0, 0)
 
#define TreeNew_AddColumn(hWnd, Column)   SendMessage((hWnd), TNM_ADDCOLUMN, 0, (LPARAM)(Column))
 
#define TreeNew_RemoveColumn(hWnd, Id)   SendMessage((hWnd), TNM_REMOVECOLUMN, (WPARAM)(Id), 0)
 
#define TreeNew_GetColumn(hWnd, Id, Column)   SendMessage((hWnd), TNM_GETCOLUMN, (WPARAM)(Id), (LPARAM)(Column))
 
#define TreeNew_SetColumn(hWnd, Mask, Column)   SendMessage((hWnd), TNM_SETCOLUMN, (WPARAM)(Mask), (LPARAM)(Column))
 
#define TreeNew_GetColumnOrderArray(hWnd, Count, Array)   SendMessage((hWnd), TNM_GETCOLUMNORDERARRAY, (WPARAM)(Count), (LPARAM)(Array))
 
#define TreeNew_SetColumnOrderArray(hWnd, Count, Array)   SendMessage((hWnd), TNM_SETCOLUMNORDERARRAY, (WPARAM)(Count), (LPARAM)(Array))
 
#define TreeNew_SetCursor(hWnd, Cursor)   SendMessage((hWnd), TNM_SETCURSOR, 0, (LPARAM)(Cursor))
 
#define TreeNew_GetSort(hWnd, Column, Order)   SendMessage((hWnd), TNM_GETSORT, (WPARAM)(Column), (LPARAM)(Order))
 
#define TreeNew_SetSort(hWnd, Column, Order)   SendMessage((hWnd), TNM_SETSORT, (WPARAM)(Column), (LPARAM)(Order))
 
#define TreeNew_SetTriState(hWnd, TriState)   SendMessage((hWnd), TNM_SETTRISTATE, (WPARAM)(TriState), 0)
 
#define TreeNew_EnsureVisible(hWnd, Node)   SendMessage((hWnd), TNM_ENSUREVISIBLE, 0, (LPARAM)(Node))
 
#define TreeNew_Scroll(hWnd, DeltaRows, DeltaX)   SendMessage((hWnd), TNM_SCROLL, (WPARAM)(DeltaRows), (LPARAM)(DeltaX))
 
#define TreeNew_GetFlatNodeCount(hWnd)   ((ULONG)SendMessage((hWnd), TNM_GETFLATNODECOUNT, 0, 0))
 
#define TreeNew_GetFlatNode(hWnd, Index)   ((PPH_TREENEW_NODE)SendMessage((hWnd), TNM_GETFLATNODE, (WPARAM)(Index), 0))
 
#define TreeNew_GetCellText(hWnd, GetCellText)   SendMessage((hWnd), TNM_GETCELLTEXT, 0, (LPARAM)(GetCellText))
 
#define TreeNew_SetNodeExpanded(hWnd, Node, Expanded)   SendMessage((hWnd), TNM_SETNODEEXPANDED, (WPARAM)(Expanded), (LPARAM)(Node))
 
#define TreeNew_GetMaxId(hWnd)   ((ULONG)SendMessage((hWnd), TNM_GETMAXID, 0, 0))
 
#define TreeNew_SetMaxId(hWnd, MaxId)   SendMessage((hWnd), TNM_SETMAXID, (WPARAM)(MaxId), 0)
 
#define TreeNew_InvalidateNode(hWnd, Node)   SendMessage((hWnd), TNM_INVALIDATENODE, 0, (LPARAM)(Node))
 
#define TreeNew_InvalidateNodes(hWnd, Start, End)   SendMessage((hWnd), TNM_INVALIDATENODES, (WPARAM)(Start), (LPARAM)(End))
 
#define TreeNew_GetFixedHeader(hWnd)   ((HWND)SendMessage((hWnd), TNM_GETFIXEDHEADER, 0, 0))
 
#define TreeNew_GetHeader(hWnd)   ((HWND)SendMessage((hWnd), TNM_GETHEADER, 0, 0))
 
#define TreeNew_GetTooltips(hWnd)   ((HWND)SendMessage((hWnd), TNM_GETTOOLTIPS, 0, 0))
 
#define TreeNew_SelectRange(hWnd, Start, End)   SendMessage((hWnd), TNM_SELECTRANGE, (WPARAM)(Start), (LPARAM)(End))
 
#define TreeNew_DeselectRange(hWnd, Start, End)   SendMessage((hWnd), TNM_DESELECTRANGE, (WPARAM)(Start), (LPARAM)(End))
 
#define TreeNew_GetColumnCount(hWnd)   ((ULONG)SendMessage((hWnd), TNM_GETCOLUMNCOUNT, 0, 0))
 
#define TreeNew_SetRedraw(hWnd, Redraw)   ((LONG)SendMessage((hWnd), TNM_SETREDRAW, (WPARAM)(Redraw), 0))
 
#define TreeNew_GetViewParts(hWnd, Parts)   SendMessage((hWnd), TNM_GETVIEWPARTS, 0, (LPARAM)(Parts))
 
#define TreeNew_GetFixedColumn(hWnd)   ((PPH_TREENEW_COLUMN)SendMessage((hWnd), TNM_GETFIXEDCOLUMN, 0, 0))
 
#define TreeNew_GetFirstColumn(hWnd)   ((PPH_TREENEW_COLUMN)SendMessage((hWnd), TNM_GETFIRSTCOLUMN, 0, 0))
 
#define TreeNew_SetFocusNode(hWnd, Node)   SendMessage((hWnd), TNM_SETFOCUSNODE, 0, (LPARAM)(Node))
 
#define TreeNew_SetMarkNode(hWnd, Node)   SendMessage((hWnd), TNM_SETMARKNODE, 0, (LPARAM)(Node))
 
#define TreeNew_SetHotNode(hWnd, Node)   SendMessage((hWnd), TNM_SETHOTNODE, 0, (LPARAM)(Node))
 
#define TreeNew_SetExtendedFlags(hWnd, Mask, Value)   SendMessage((hWnd), TNM_SETEXTENDEDFLAGS, (WPARAM)(Mask), (LPARAM)(Value))
 
#define TreeNew_GetCallback(hWnd, Callback, Context)   SendMessage((hWnd), TNM_GETCALLBACK, (WPARAM)(Context), (LPARAM)(Callback))
 
#define TreeNew_HitTest(hWnd, HitTest)   SendMessage((hWnd), TNM_HITTEST, 0, (LPARAM)(HitTest))
 
#define TreeNew_GetVisibleColumnCount(hWnd)   ((ULONG)SendMessage((hWnd), TNM_GETVISIBLECOLUMNCOUNT, 0, 0))
 
#define TreeNew_AutoSizeColumn(hWnd, Id, Flags)   SendMessage((hWnd), TNM_AUTOSIZECOLUMN, (WPARAM)(Id), (LPARAM)(Flags))
 
#define TreeNew_SetEmptyText(hWnd, Text, Flags)   SendMessage((hWnd), TNM_SETEMPTYTEXT, (WPARAM)(Flags), (LPARAM)(Text))
 
#define TreeNew_SetRowHeight(hWnd, RowHeight)   SendMessage((hWnd), TNM_SETROWHEIGHT, (WPARAM)(RowHeight), 0)
 

Typedefs

typedef struct _PH_TREENEW_COLUMN PH_TREENEW_COLUMN
 
typedef struct _PH_TREENEW_COLUMNPPH_TREENEW_COLUMN
 
typedef struct _PH_TREENEW_NODE PH_TREENEW_NODE
 
typedef struct _PH_TREENEW_NODEPPH_TREENEW_NODE
 
typedef struct
_PH_TREENEW_CELL_PARTS 
PH_TREENEW_CELL_PARTS
 
typedef struct
_PH_TREENEW_CELL_PARTS
PPH_TREENEW_CELL_PARTS
 
typedef struct _PH_TREENEW_HIT_TEST PH_TREENEW_HIT_TEST
 
typedef struct
_PH_TREENEW_HIT_TEST
PPH_TREENEW_HIT_TEST
 
typedef enum _PH_TREENEW_MESSAGE PH_TREENEW_MESSAGE
 
typedef BOOLEAN(NTAPI * PPH_TREENEW_CALLBACK )(_In_ HWND hwnd, _In_ PH_TREENEW_MESSAGE Message, _In_opt_ PVOID Parameter1, _In_opt_ PVOID Parameter2, _In_opt_ PVOID Context)
 
typedef struct
_PH_TREENEW_GET_CHILDREN 
PH_TREENEW_GET_CHILDREN
 
typedef struct
_PH_TREENEW_GET_CHILDREN
PPH_TREENEW_GET_CHILDREN
 
typedef struct _PH_TREENEW_IS_LEAF PH_TREENEW_IS_LEAF
 
typedef struct
_PH_TREENEW_IS_LEAF
PPH_TREENEW_IS_LEAF
 
typedef struct
_PH_TREENEW_GET_CELL_TEXT 
PH_TREENEW_GET_CELL_TEXT
 
typedef struct
_PH_TREENEW_GET_CELL_TEXT
PPH_TREENEW_GET_CELL_TEXT
 
typedef struct
_PH_TREENEW_GET_NODE_COLOR 
PH_TREENEW_GET_NODE_COLOR
 
typedef struct
_PH_TREENEW_GET_NODE_COLOR
PPH_TREENEW_GET_NODE_COLOR
 
typedef struct
_PH_TREENEW_GET_NODE_FONT 
PH_TREENEW_GET_NODE_FONT
 
typedef struct
_PH_TREENEW_GET_NODE_FONT
PPH_TREENEW_GET_NODE_FONT
 
typedef struct
_PH_TREENEW_GET_NODE_ICON 
PH_TREENEW_GET_NODE_ICON
 
typedef struct
_PH_TREENEW_GET_NODE_ICON
PPH_TREENEW_GET_NODE_ICON
 
typedef struct
_PH_TREENEW_GET_CELL_TOOLTIP 
PH_TREENEW_GET_CELL_TOOLTIP
 
typedef struct
_PH_TREENEW_GET_CELL_TOOLTIP
PPH_TREENEW_GET_CELL_TOOLTIP
 
typedef struct
_PH_TREENEW_CUSTOM_DRAW 
PH_TREENEW_CUSTOM_DRAW
 
typedef struct
_PH_TREENEW_CUSTOM_DRAW
PPH_TREENEW_CUSTOM_DRAW
 
typedef struct
_PH_TREENEW_MOUSE_EVENT 
PH_TREENEW_MOUSE_EVENT
 
typedef struct
_PH_TREENEW_MOUSE_EVENT
PPH_TREENEW_MOUSE_EVENT
 
typedef struct
_PH_TREENEW_KEY_EVENT 
PH_TREENEW_KEY_EVENT
 
typedef struct
_PH_TREENEW_KEY_EVENT
PPH_TREENEW_KEY_EVENT
 
typedef struct
_PH_TREENEW_NODE_EVENT 
PH_TREENEW_NODE_EVENT
 
typedef struct
_PH_TREENEW_NODE_EVENT
PPH_TREENEW_NODE_EVENT
 
typedef struct
_PH_TREENEW_CONTEXT_MENU 
PH_TREENEW_CONTEXT_MENU
 
typedef struct
_PH_TREENEW_CONTEXT_MENU
PPH_TREENEW_CONTEXT_MENU
 
typedef struct
_PH_TREENEW_HEADER_MOUSE_EVENT 
PH_TREENEW_HEADER_MOUSE_EVENT
 
typedef struct
_PH_TREENEW_HEADER_MOUSE_EVENT
PPH_TREENEW_HEADER_MOUSE_EVENT
 
typedef struct
_PH_TREENEW_SEARCH_EVENT 
PH_TREENEW_SEARCH_EVENT
 
typedef struct
_PH_TREENEW_SEARCH_EVENT
PPH_TREENEW_SEARCH_EVENT
 
typedef struct
_PH_TREENEW_VIEW_PARTS 
PH_TREENEW_VIEW_PARTS
 
typedef struct
_PH_TREENEW_VIEW_PARTS
PPH_TREENEW_VIEW_PARTS
 

Enumerations

enum  _PH_TREENEW_MESSAGE {
  TreeNewGetChildren, TreeNewIsLeaf, TreeNewGetCellText, TreeNewGetNodeColor,
  TreeNewGetNodeFont, TreeNewGetNodeIcon, TreeNewGetCellTooltip, TreeNewCustomDraw,
  TreeNewNodeExpanding, TreeNewNodeSelecting, TreeNewSortChanged, TreeNewSelectionChanged,
  TreeNewKeyDown, TreeNewLeftClick, TreeNewRightClick, TreeNewLeftDoubleClick,
  TreeNewRightDoubleClick, TreeNewContextMenu, TreeNewHeaderRightClick, TreeNewIncrementalSearch,
  TreeNewColumnResized, TreeNewColumnReordered, TreeNewDestroying, TreeNewGetDialogCode,
  MaxTreeNewMessage
}
 

Functions

BOOLEAN PhTreeNewInitialization (VOID)
 
FORCEINLINE VOID PhInitializeTreeNewNode (_In_ PPH_TREENEW_NODE Node)
 
FORCEINLINE VOID PhInvalidateTreeNewNode (_Inout_ PPH_TREENEW_NODE Node, _In_ ULONG Flags)
 
FORCEINLINE BOOLEAN PhAddTreeNewColumn (_In_ HWND hwnd, _In_ ULONG Id, _In_ BOOLEAN Visible, _In_ PWSTR Text, _In_ ULONG Width, _In_ ULONG Alignment, _In_ ULONG DisplayIndex, _In_ ULONG TextFlags)
 
FORCEINLINE BOOLEAN PhAddTreeNewColumnEx (_In_ HWND hwnd, _In_ ULONG Id, _In_ BOOLEAN Visible, _In_ PWSTR Text, _In_ ULONG Width, _In_ ULONG Alignment, _In_ ULONG DisplayIndex, _In_ ULONG TextFlags, _In_ BOOLEAN SortDescending)
 
FORCEINLINE BOOLEAN PhAddTreeNewColumnEx2 (_In_ HWND hwnd, _In_ ULONG Id, _In_ BOOLEAN Visible, _In_ PWSTR Text, _In_ ULONG Width, _In_ ULONG Alignment, _In_ ULONG DisplayIndex, _In_ ULONG TextFlags, _In_ ULONG ExtraFlags)
 

Macro Definition Documentation

#define PH_TREENEW_CLASSNAME   L"PhTreeNew"

Definition at line 4 of file treenew.h.

#define PH_TREENEW_SEARCH_MAXIMUM_LENGTH   1023

Definition at line 7 of file treenew.h.

#define PH_TREENEW_SEARCH_TIMEOUT   1000

Definition at line 6 of file treenew.h.

#define TN_AUTO_FORECOLOR   0x1000

Definition at line 106 of file treenew.h.

#define TN_AUTOSIZE_REMAINING_SPACE   0x1

Definition at line 157 of file treenew.h.

#define TN_CACHE   0x1

Definition at line 105 of file treenew.h.

#define TN_CACHE_COLOR   0x1

Definition at line 122 of file treenew.h.

#define TN_CACHE_FONT   0x2

Definition at line 123 of file treenew.h.

#define TN_CACHE_ICON   0x4

Definition at line 124 of file treenew.h.

#define TN_COLUMN_ALIGNMENT   0x8

Definition at line 112 of file treenew.h.

#define TN_COLUMN_CONTEXT   0x1

Definition at line 109 of file treenew.h.

#define TN_COLUMN_DISPLAYINDEX   0x10

Definition at line 113 of file treenew.h.

#define TN_COLUMN_FLAG_CUSTOMDRAW   0x200000

Definition at line 116 of file treenew.h.

#define TN_COLUMN_FLAG_FIXED   0x400000

Definition at line 117 of file treenew.h.

#define TN_COLUMN_FLAG_SORTDESCENDING   0x800000

Definition at line 118 of file treenew.h.

#define TN_COLUMN_FLAG_VISIBLE   0x100000

Definition at line 115 of file treenew.h.

#define TN_COLUMN_FLAGS   0xfff00000

Definition at line 119 of file treenew.h.

#define TN_COLUMN_TEXT   0x2

Definition at line 110 of file treenew.h.

#define TN_COLUMN_TEXTFLAGS   0x20

Definition at line 114 of file treenew.h.

#define TN_COLUMN_WIDTH   0x4

Definition at line 111 of file treenew.h.

#define TN_FLAG_ITEM_DRAG_SELECT   0x1

Definition at line 101 of file treenew.h.

#define TN_FLAG_NO_UNFOLDING_TOOLTIPS   0x2

Definition at line 102 of file treenew.h.

#define TN_HIT_ABOVE   0x4

Definition at line 143 of file treenew.h.

#define TN_HIT_BELOW   0x8

Definition at line 144 of file treenew.h.

#define TN_HIT_DIVIDER   0x100

Definition at line 149 of file treenew.h.

#define TN_HIT_ITEM   0x10

Definition at line 145 of file treenew.h.

#define TN_HIT_ITEM_CONTENT   0x80

Definition at line 148 of file treenew.h.

#define TN_HIT_ITEM_ICON   0x40

Definition at line 147 of file treenew.h.

#define TN_HIT_ITEM_PLUSMINUS   0x20

Definition at line 146 of file treenew.h.

#define TN_HIT_LEFT   0x1

Definition at line 141 of file treenew.h.

#define TN_HIT_RIGHT   0x2

Definition at line 142 of file treenew.h.

#define TN_MEASURE_TEXT   0x1

Definition at line 127 of file treenew.h.

#define TN_PART_CELL   0x1

Definition at line 130 of file treenew.h.

#define TN_PART_CONTENT   0x8

Definition at line 133 of file treenew.h.

#define TN_PART_ICON   0x4

Definition at line 132 of file treenew.h.

#define TN_PART_PLUSMINUS   0x2

Definition at line 131 of file treenew.h.

#define TN_PART_TEXT   0x10

Definition at line 134 of file treenew.h.

#define TN_SELECT_DESELECT   0x1

Definition at line 152 of file treenew.h.

#define TN_SELECT_RESET   0x4

Definition at line 154 of file treenew.h.

#define TN_SELECT_TOGGLE   0x2

Definition at line 153 of file treenew.h.

#define TN_STYLE_ANIMATE_DIVIDER   0x8

Definition at line 94 of file treenew.h.

#define TN_STYLE_DOUBLE_BUFFERED   0x2

Definition at line 92 of file treenew.h.

#define TN_STYLE_ICONS   0x1

Definition at line 91 of file treenew.h.

#define TN_STYLE_NO_COLUMN_HEADER   0x80

Definition at line 98 of file treenew.h.

#define TN_STYLE_NO_COLUMN_REORDER   0x20

Definition at line 96 of file treenew.h.

#define TN_STYLE_NO_COLUMN_SORT   0x10

Definition at line 95 of file treenew.h.

#define TN_STYLE_NO_DIVIDER   0x4

Definition at line 93 of file treenew.h.

#define TN_STYLE_THIN_ROWS   0x40

Definition at line 97 of file treenew.h.

#define TN_TEST_COLUMN   0x1

Definition at line 137 of file treenew.h.

#define TN_TEST_SUBITEM   0x2

Definition at line 138 of file treenew.h.

#define TNM_ADDCOLUMN   (WM_USER + 5)

Definition at line 352 of file treenew.h.

#define TNM_AUTOSIZECOLUMN   (WM_USER + 42)

Definition at line 389 of file treenew.h.

#define TNM_DESELECTRANGE   (WM_USER + 29)

Definition at line 376 of file treenew.h.

#define TNM_ENSUREVISIBLE   (WM_USER + 15)

Definition at line 362 of file treenew.h.

#define TNM_FIRST   (WM_USER + 1)

Definition at line 347 of file treenew.h.

#define TNM_GETCALLBACK   (WM_USER + 39)

Definition at line 386 of file treenew.h.

#define TNM_GETCELLTEXT   (WM_USER + 19)

Definition at line 366 of file treenew.h.

#define TNM_GETCOLUMN   (WM_USER + 7)

Definition at line 354 of file treenew.h.

#define TNM_GETCOLUMNCOUNT   (WM_USER + 30)

Definition at line 377 of file treenew.h.

#define TNM_GETCOLUMNORDERARRAY   (WM_USER + 9)

Definition at line 356 of file treenew.h.

#define TNM_GETFIRSTCOLUMN   (WM_USER + 34)

Definition at line 381 of file treenew.h.

#define TNM_GETFIXEDCOLUMN   (WM_USER + 33)

Definition at line 380 of file treenew.h.

#define TNM_GETFIXEDHEADER   (WM_USER + 25)

Definition at line 372 of file treenew.h.

#define TNM_GETFLATNODE   (WM_USER + 18)

Definition at line 365 of file treenew.h.

#define TNM_GETFLATNODECOUNT   (WM_USER + 17)

Definition at line 364 of file treenew.h.

#define TNM_GETHEADER   (WM_USER + 26)

Definition at line 373 of file treenew.h.

#define TNM_GETMAXID   (WM_USER + 21)

Definition at line 368 of file treenew.h.

#define TNM_GETSORT   (WM_USER + 12)

Definition at line 359 of file treenew.h.

#define TNM_GETTOOLTIPS   (WM_USER + 27)

Definition at line 374 of file treenew.h.

#define TNM_GETVIEWPARTS   (WM_USER + 32)

Definition at line 379 of file treenew.h.

#define TNM_GETVISIBLECOLUMNCOUNT   (WM_USER + 41)

Definition at line 388 of file treenew.h.

#define TNM_HITTEST   (WM_USER + 40)

Definition at line 387 of file treenew.h.

#define TNM_INVALIDATENODE   (WM_USER + 23)

Definition at line 370 of file treenew.h.

#define TNM_INVALIDATENODES   (WM_USER + 24)

Definition at line 371 of file treenew.h.

#define TNM_LAST   (WM_USER + 44)

Definition at line 392 of file treenew.h.

#define TNM_NODESADDED   (WM_USER + 2)

Definition at line 349 of file treenew.h.

#define TNM_NODESREMOVED   (WM_USER + 3)

Definition at line 350 of file treenew.h.

#define TNM_NODESSTRUCTURED   (WM_USER + 4)

Definition at line 351 of file treenew.h.

#define TNM_REMOVECOLUMN   (WM_USER + 6)

Definition at line 353 of file treenew.h.

#define TNM_SCROLL   (WM_USER + 16)

Definition at line 363 of file treenew.h.

#define TNM_SELECTRANGE   (WM_USER + 28)

Definition at line 375 of file treenew.h.

#define TNM_SETCALLBACK   (WM_USER + 1)

Definition at line 348 of file treenew.h.

#define TNM_SETCOLUMN   (WM_USER + 8)

Definition at line 355 of file treenew.h.

#define TNM_SETCOLUMNORDERARRAY   (WM_USER + 10)

Definition at line 357 of file treenew.h.

#define TNM_SETCURSOR   (WM_USER + 11)

Definition at line 358 of file treenew.h.

#define TNM_SETEMPTYTEXT   (WM_USER + 43)

Definition at line 390 of file treenew.h.

#define TNM_SETEXTENDEDFLAGS   (WM_USER + 38)

Definition at line 385 of file treenew.h.

#define TNM_SETFOCUSNODE   (WM_USER + 35)

Definition at line 382 of file treenew.h.

#define TNM_SETHOTNODE   (WM_USER + 37)

Definition at line 384 of file treenew.h.

#define TNM_SETMARKNODE   (WM_USER + 36)

Definition at line 383 of file treenew.h.

#define TNM_SETMAXID   (WM_USER + 22)

Definition at line 369 of file treenew.h.

#define TNM_SETNODEEXPANDED   (WM_USER + 20)

Definition at line 367 of file treenew.h.

#define TNM_SETREDRAW   (WM_USER + 31)

Definition at line 378 of file treenew.h.

#define TNM_SETROWHEIGHT   (WM_USER + 44)

Definition at line 391 of file treenew.h.

#define TNM_SETSORT   (WM_USER + 13)

Definition at line 360 of file treenew.h.

#define TNM_SETTRISTATE   (WM_USER + 14)

Definition at line 361 of file treenew.h.

#define TreeNew_AddColumn (   hWnd,
  Column 
)    SendMessage((hWnd), TNM_ADDCOLUMN, 0, (LPARAM)(Column))

Definition at line 400 of file treenew.h.

#define TreeNew_AutoSizeColumn (   hWnd,
  Id,
  Flags 
)    SendMessage((hWnd), TNM_AUTOSIZECOLUMN, (WPARAM)(Id), (LPARAM)(Flags))

Definition at line 511 of file treenew.h.

#define TreeNew_DeselectRange (   hWnd,
  Start,
  End 
)    SendMessage((hWnd), TNM_DESELECTRANGE, (WPARAM)(Start), (LPARAM)(End))

Definition at line 472 of file treenew.h.

#define TreeNew_EnsureVisible (   hWnd,
  Node 
)    SendMessage((hWnd), TNM_ENSUREVISIBLE, 0, (LPARAM)(Node))

Definition at line 430 of file treenew.h.

#define TreeNew_GetCallback (   hWnd,
  Callback,
  Context 
)    SendMessage((hWnd), TNM_GETCALLBACK, (WPARAM)(Context), (LPARAM)(Callback))

Definition at line 502 of file treenew.h.

#define TreeNew_GetCellText (   hWnd,
  GetCellText 
)    SendMessage((hWnd), TNM_GETCELLTEXT, 0, (LPARAM)(GetCellText))

Definition at line 442 of file treenew.h.

#define TreeNew_GetColumn (   hWnd,
  Id,
  Column 
)    SendMessage((hWnd), TNM_GETCOLUMN, (WPARAM)(Id), (LPARAM)(Column))

Definition at line 406 of file treenew.h.

#define TreeNew_GetColumnCount (   hWnd)    ((ULONG)SendMessage((hWnd), TNM_GETCOLUMNCOUNT, 0, 0))

Definition at line 475 of file treenew.h.

#define TreeNew_GetColumnOrderArray (   hWnd,
  Count,
  Array 
)    SendMessage((hWnd), TNM_GETCOLUMNORDERARRAY, (WPARAM)(Count), (LPARAM)(Array))

Definition at line 412 of file treenew.h.

#define TreeNew_GetFirstColumn (   hWnd)    ((PPH_TREENEW_COLUMN)SendMessage((hWnd), TNM_GETFIRSTCOLUMN, 0, 0))

Definition at line 487 of file treenew.h.

#define TreeNew_GetFixedColumn (   hWnd)    ((PPH_TREENEW_COLUMN)SendMessage((hWnd), TNM_GETFIXEDCOLUMN, 0, 0))

Definition at line 484 of file treenew.h.

#define TreeNew_GetFixedHeader (   hWnd)    ((HWND)SendMessage((hWnd), TNM_GETFIXEDHEADER, 0, 0))

Definition at line 460 of file treenew.h.

#define TreeNew_GetFlatNode (   hWnd,
  Index 
)    ((PPH_TREENEW_NODE)SendMessage((hWnd), TNM_GETFLATNODE, (WPARAM)(Index), 0))

Definition at line 439 of file treenew.h.

#define TreeNew_GetFlatNodeCount (   hWnd)    ((ULONG)SendMessage((hWnd), TNM_GETFLATNODECOUNT, 0, 0))

Definition at line 436 of file treenew.h.

#define TreeNew_GetHeader (   hWnd)    ((HWND)SendMessage((hWnd), TNM_GETHEADER, 0, 0))

Definition at line 463 of file treenew.h.

#define TreeNew_GetMaxId (   hWnd)    ((ULONG)SendMessage((hWnd), TNM_GETMAXID, 0, 0))

Definition at line 448 of file treenew.h.

#define TreeNew_GetSort (   hWnd,
  Column,
  Order 
)    SendMessage((hWnd), TNM_GETSORT, (WPARAM)(Column), (LPARAM)(Order))

Definition at line 421 of file treenew.h.

#define TreeNew_GetTooltips (   hWnd)    ((HWND)SendMessage((hWnd), TNM_GETTOOLTIPS, 0, 0))

Definition at line 466 of file treenew.h.

#define TreeNew_GetViewParts (   hWnd,
  Parts 
)    SendMessage((hWnd), TNM_GETVIEWPARTS, 0, (LPARAM)(Parts))

Definition at line 481 of file treenew.h.

#define TreeNew_GetVisibleColumnCount (   hWnd)    ((ULONG)SendMessage((hWnd), TNM_GETVISIBLECOLUMNCOUNT, 0, 0))

Definition at line 508 of file treenew.h.

#define TreeNew_HitTest (   hWnd,
  HitTest 
)    SendMessage((hWnd), TNM_HITTEST, 0, (LPARAM)(HitTest))

Definition at line 505 of file treenew.h.

#define TreeNew_InvalidateNode (   hWnd,
  Node 
)    SendMessage((hWnd), TNM_INVALIDATENODE, 0, (LPARAM)(Node))

Definition at line 454 of file treenew.h.

#define TreeNew_InvalidateNodes (   hWnd,
  Start,
  End 
)    SendMessage((hWnd), TNM_INVALIDATENODES, (WPARAM)(Start), (LPARAM)(End))

Definition at line 457 of file treenew.h.

#define TreeNew_NodesStructured (   hWnd)    SendMessage((hWnd), TNM_NODESSTRUCTURED, 0, 0)

Definition at line 397 of file treenew.h.

#define TreeNew_RemoveColumn (   hWnd,
  Id 
)    SendMessage((hWnd), TNM_REMOVECOLUMN, (WPARAM)(Id), 0)

Definition at line 403 of file treenew.h.

#define TreeNew_Scroll (   hWnd,
  DeltaRows,
  DeltaX 
)    SendMessage((hWnd), TNM_SCROLL, (WPARAM)(DeltaRows), (LPARAM)(DeltaX))

Definition at line 433 of file treenew.h.

#define TreeNew_SelectRange (   hWnd,
  Start,
  End 
)    SendMessage((hWnd), TNM_SELECTRANGE, (WPARAM)(Start), (LPARAM)(End))

Definition at line 469 of file treenew.h.

#define TreeNew_SetCallback (   hWnd,
  Callback,
  Context 
)    SendMessage((hWnd), TNM_SETCALLBACK, (WPARAM)(Context), (LPARAM)(Callback))

Definition at line 394 of file treenew.h.

#define TreeNew_SetColumn (   hWnd,
  Mask,
  Column 
)    SendMessage((hWnd), TNM_SETCOLUMN, (WPARAM)(Mask), (LPARAM)(Column))

Definition at line 409 of file treenew.h.

#define TreeNew_SetColumnOrderArray (   hWnd,
  Count,
  Array 
)    SendMessage((hWnd), TNM_SETCOLUMNORDERARRAY, (WPARAM)(Count), (LPARAM)(Array))

Definition at line 415 of file treenew.h.

#define TreeNew_SetCursor (   hWnd,
  Cursor 
)    SendMessage((hWnd), TNM_SETCURSOR, 0, (LPARAM)(Cursor))

Definition at line 418 of file treenew.h.

#define TreeNew_SetEmptyText (   hWnd,
  Text,
  Flags 
)    SendMessage((hWnd), TNM_SETEMPTYTEXT, (WPARAM)(Flags), (LPARAM)(Text))

Definition at line 514 of file treenew.h.

#define TreeNew_SetExtendedFlags (   hWnd,
  Mask,
  Value 
)    SendMessage((hWnd), TNM_SETEXTENDEDFLAGS, (WPARAM)(Mask), (LPARAM)(Value))

Definition at line 499 of file treenew.h.

#define TreeNew_SetFocusNode (   hWnd,
  Node 
)    SendMessage((hWnd), TNM_SETFOCUSNODE, 0, (LPARAM)(Node))

Definition at line 490 of file treenew.h.

#define TreeNew_SetHotNode (   hWnd,
  Node 
)    SendMessage((hWnd), TNM_SETHOTNODE, 0, (LPARAM)(Node))

Definition at line 496 of file treenew.h.

#define TreeNew_SetMarkNode (   hWnd,
  Node 
)    SendMessage((hWnd), TNM_SETMARKNODE, 0, (LPARAM)(Node))

Definition at line 493 of file treenew.h.

#define TreeNew_SetMaxId (   hWnd,
  MaxId 
)    SendMessage((hWnd), TNM_SETMAXID, (WPARAM)(MaxId), 0)

Definition at line 451 of file treenew.h.

#define TreeNew_SetNodeExpanded (   hWnd,
  Node,
  Expanded 
)    SendMessage((hWnd), TNM_SETNODEEXPANDED, (WPARAM)(Expanded), (LPARAM)(Node))

Definition at line 445 of file treenew.h.

#define TreeNew_SetRedraw (   hWnd,
  Redraw 
)    ((LONG)SendMessage((hWnd), TNM_SETREDRAW, (WPARAM)(Redraw), 0))

Definition at line 478 of file treenew.h.

#define TreeNew_SetRowHeight (   hWnd,
  RowHeight 
)    SendMessage((hWnd), TNM_SETROWHEIGHT, (WPARAM)(RowHeight), 0)

Definition at line 517 of file treenew.h.

#define TreeNew_SetSort (   hWnd,
  Column,
  Order 
)    SendMessage((hWnd), TNM_SETSORT, (WPARAM)(Column), (LPARAM)(Order))

Definition at line 424 of file treenew.h.

#define TreeNew_SetTriState (   hWnd,
  TriState 
)    SendMessage((hWnd), TNM_SETTRISTATE, (WPARAM)(TriState), 0)

Definition at line 427 of file treenew.h.

Typedef Documentation

typedef BOOLEAN(NTAPI * PPH_TREENEW_CALLBACK)(_In_ HWND hwnd, _In_ PH_TREENEW_MESSAGE Message, _In_opt_ PVOID Parameter1, _In_opt_ PVOID Parameter2, _In_opt_ PVOID Context)

Definition at line 219 of file treenew.h.

Enumeration Type Documentation

Enumerator:
TreeNewGetChildren 
TreeNewIsLeaf 
TreeNewGetCellText 
TreeNewGetNodeColor 
TreeNewGetNodeFont 
TreeNewGetNodeIcon 
TreeNewGetCellTooltip 
TreeNewCustomDraw 
TreeNewNodeExpanding 
TreeNewNodeSelecting 
TreeNewSortChanged 
TreeNewSelectionChanged 
TreeNewKeyDown 
TreeNewLeftClick 
TreeNewRightClick 
TreeNewLeftDoubleClick 
TreeNewRightDoubleClick 
TreeNewContextMenu 
TreeNewHeaderRightClick 
TreeNewIncrementalSearch 
TreeNewColumnResized 
TreeNewColumnReordered 
TreeNewDestroying 
TreeNewGetDialogCode 
MaxTreeNewMessage 

Definition at line 182 of file treenew.h.

Function Documentation

FORCEINLINE BOOLEAN PhAddTreeNewColumn ( _In_ HWND  hwnd,
_In_ ULONG  Id,
_In_ BOOLEAN  Visible,
_In_ PWSTR  Text,
_In_ ULONG  Width,
_In_ ULONG  Alignment,
_In_ ULONG  DisplayIndex,
_In_ ULONG  TextFlags 
)

Definition at line 561 of file treenew.h.

FORCEINLINE BOOLEAN PhAddTreeNewColumnEx ( _In_ HWND  hwnd,
_In_ ULONG  Id,
_In_ BOOLEAN  Visible,
_In_ PWSTR  Text,
_In_ ULONG  Width,
_In_ ULONG  Alignment,
_In_ ULONG  DisplayIndex,
_In_ ULONG  TextFlags,
_In_ BOOLEAN  SortDescending 
)

Definition at line 589 of file treenew.h.

FORCEINLINE BOOLEAN PhAddTreeNewColumnEx2 ( _In_ HWND  hwnd,
_In_ ULONG  Id,
_In_ BOOLEAN  Visible,
_In_ PWSTR  Text,
_In_ ULONG  Width,
_In_ ULONG  Alignment,
_In_ ULONG  DisplayIndex,
_In_ ULONG  TextFlags,
_In_ ULONG  ExtraFlags 
)

Definition at line 620 of file treenew.h.

FORCEINLINE VOID PhInitializeTreeNewNode ( _In_ PPH_TREENEW_NODE  Node)

Definition at line 538 of file treenew.h.

FORCEINLINE VOID PhInvalidateTreeNewNode ( _Inout_ PPH_TREENEW_NODE  Node,
_In_ ULONG  Flags 
)

Definition at line 548 of file treenew.h.

BOOLEAN PhTreeNewInitialization ( VOID  )

Definition at line 57 of file treenew.c.