ReactOS  0.4.13-dev-66-gc714b7f
column.c File Reference
#include "precomp.h"
Include dependency graph for column.c:

Go to the source code of this file.

Macros

#define DECLARE_COLUMN_PRESET(_name, _size, _state)   { IDS_TAB_##_name, IDC_##_name, _size, _state },
 

Functions

static int InsertColumn (int nCol, LPCWSTR lpszColumnHeading, int nFormat, int nWidth, int nSubItem)
 
INT_PTR CALLBACK ColumnsDialogWndProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
 
void AddColumns (void)
 
void SaveColumnSettings (void)
 
void ProcessPage_OnViewSelectColumns (void)
 
void UpdateColumnDataHints (void)
 

Variables

UINT ColumnDataHints [COLUMN_NMAX]
 
const PresetColumnEntry ColumnPresets [COLUMN_NMAX]
 

Macro Definition Documentation

◆ DECLARE_COLUMN_PRESET

#define DECLARE_COLUMN_PRESET (   _name,
  _size,
  _state 
)    { IDS_TAB_##_name, IDC_##_name, _size, _state },

Definition at line 28 of file column.c.

Function Documentation

◆ AddColumns()

void AddColumns ( void  )

Definition at line 63 of file column.c.

64 {
65  LRESULT size;
66  WCHAR szTemp[256];
67  unsigned int n;
68 
69  for (n=0; n<COLUMN_NMAX; n++) {
71  LoadStringW(hInst, ColumnPresets[n].dwIdsName, szTemp, sizeof(szTemp)/sizeof(WCHAR));
73  }
74  }
75 
78 
80 }
#define COLUMN_NMAX
Definition: column.h:51
GLdouble n
Definition: glext.h:7729
#define LVCFMT_LEFT
Definition: commctrl.h:2570
int ColumnSizeArray[COLUMN_NMAX]
Definition: taskmgr.h:82
UINT_PTR WPARAM
Definition: windef.h:207
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
#define HDM_GETITEMCOUNT
Definition: commctrl.h:718
HWND hProcessPageHeaderCtrl
Definition: procpage.c:39
const PresetColumnEntry ColumnPresets[COLUMN_NMAX]
Definition: column.c:31
LONG_PTR LPARAM
Definition: windef.h:208
void UpdateColumnDataHints(void)
Definition: column.c:203
GLsizeiptr size
Definition: glext.h:5919
#define HDM_SETORDERARRAY
Definition: commctrl.h:794
__wchar_t WCHAR
Definition: xmlstorage.h:180
BOOL Columns[COLUMN_NMAX]
Definition: taskmgr.h:80
HINSTANCE hInst
Definition: dxdiag.c:13
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
TASKMANAGER_SETTINGS TaskManagerSettings
Definition: taskmgr.c:52
static int InsertColumn(int nCol, LPCWSTR lpszColumnHeading, int nFormat, int nWidth, int nSubItem)
Definition: column.c:82
int ColumnOrderArray[COLUMN_NMAX]
Definition: taskmgr.h:81
LONG_PTR LRESULT
Definition: windef.h:209

Referenced by ProcessPage_OnViewSelectColumns(), and ProcessPageWndProc().

◆ ColumnsDialogWndProc()

INT_PTR CALLBACK ColumnsDialogWndProc ( HWND  hDlg,
UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 166 of file column.c.

167 {
168  unsigned int i;
169 
170  switch (message)
171  {
172  case WM_INITDIALOG:
173 
174  for (i=0; i<COLUMN_NMAX; i++) {
176  CheckDlgButton(hDlg, ColumnPresets[i].dwIdcCtrl, BST_CHECKED);
177  }
178  return TRUE;
179 
180  case WM_COMMAND:
181 
182  if (LOWORD(wParam) == IDCANCEL)
183  {
184  EndDialog(hDlg, LOWORD(wParam));
185  return TRUE;
186  }
187 
188  if (LOWORD(wParam) == IDOK)
189  {
190  for (i=0; i<COLUMN_NMAX; i++)
192 
193  EndDialog(hDlg, LOWORD(wParam));
194  return TRUE;
195  }
196 
197  break;
198  }
199 
200  return 0;
201 }
BOOL WINAPI CheckDlgButton(_In_ HWND, _In_ int, _In_ UINT)
Definition: tftpd.h:59
#define TRUE
Definition: types.h:120
#define IDOK
Definition: winuser.h:824
#define COLUMN_NMAX
Definition: column.h:51
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
WPARAM wParam
Definition: combotst.c:138
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
unsigned int BOOL
Definition: ntddk_ex.h:94
const PresetColumnEntry ColumnPresets[COLUMN_NMAX]
Definition: column.c:31
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
BOOL Columns[COLUMN_NMAX]
Definition: taskmgr.h:80
#define WM_COMMAND
Definition: winuser.h:1716
#define BST_CHECKED
Definition: winuser.h:197
TASKMANAGER_SETTINGS TaskManagerSettings
Definition: taskmgr.c:52
#define IDCANCEL
Definition: winuser.h:825
#define WM_INITDIALOG
Definition: winuser.h:1715
#define LOWORD(l)
Definition: pedump.c:82

Referenced by ProcessPage_OnViewSelectColumns().

◆ InsertColumn()

static int InsertColumn ( int  nCol,
LPCWSTR  lpszColumnHeading,
int  nFormat,
int  nWidth,
int  nSubItem 
)
static

Definition at line 82 of file column.c.

83 {
85 
86  column.mask = LVCF_TEXT|LVCF_FMT;
87  column.pszText = (LPWSTR)lpszColumnHeading;
88  column.fmt = nFormat;
89 
90  if (nWidth != -1)
91  {
92  column.mask |= LVCF_WIDTH;
93  column.cx = nWidth;
94  }
95 
96  if (nSubItem != -1)
97  {
98  column.mask |= LVCF_SUBITEM;
99  column.iSubItem = nSubItem;
100  }
101 
103 }
#define LVCF_WIDTH
Definition: commctrl.h:2559
#define LVCF_TEXT
Definition: commctrl.h:2560
#define LVCF_SUBITEM
Definition: commctrl.h:2561
#define LVCOLUMN
Definition: commctrl.h:2553
#define ListView_InsertColumn(hwnd, iCol, pcol)
Definition: commctrl.h:2608
#define LVCF_FMT
Definition: commctrl.h:2558
GLenum GLenum GLvoid GLvoid * column
Definition: glext.h:5664
WCHAR * LPWSTR
Definition: xmlstorage.h:184
HWND hProcessPageListCtrl
Definition: procpage.c:38

Referenced by AddColumns().

◆ ProcessPage_OnViewSelectColumns()

void ProcessPage_OnViewSelectColumns ( void  )

Definition at line 145 of file column.c.

146 {
147  int i;
148 
150  {
152  {
154  }
155 
156  for (i=0; i<COLUMN_NMAX; i++) {
159  }
160 
161  AddColumns();
162  }
163 }
#define IDOK
Definition: winuser.h:824
#define COLUMN_NMAX
Definition: column.h:51
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
Definition: typeof.h:49
#define ListView_DeleteColumn(hwnd, iCol)
Definition: commctrl.h:2611
int ColumnSizeArray[COLUMN_NMAX]
Definition: taskmgr.h:82
#define IDD_COLUMNS_DIALOG
Definition: resource.h:24
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
HWND hProcessPageHeaderCtrl
Definition: procpage.c:39
const PresetColumnEntry ColumnPresets[COLUMN_NMAX]
Definition: column.c:31
#define DialogBoxW(i, t, p, f)
Definition: winuser.h:4268
#define Header_GetItemCount(hwndHD)
Definition: commctrl.h:719
INT_PTR CALLBACK ColumnsDialogWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
Definition: column.c:166
HWND hMainWnd
Definition: magnifier.c:33
HINSTANCE hInst
Definition: dxdiag.c:13
TASKMANAGER_SETTINGS TaskManagerSettings
Definition: taskmgr.c:52
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
int ColumnOrderArray[COLUMN_NMAX]
Definition: taskmgr.h:81
HWND hProcessPageListCtrl
Definition: procpage.c:38
void AddColumns(void)
Definition: column.c:63

Referenced by TaskManagerWndProc().

◆ SaveColumnSettings()

void SaveColumnSettings ( void  )

Definition at line 105 of file column.c.

106 {
107  HDITEM hditem;
108  int i, n;
109  WCHAR text[260];
110  WCHAR szTemp[256];
111  LRESULT size;
112 
113  /* Reset column data */
114  for (i=0; i<COLUMN_NMAX; i++) {
118  }
119 
120  /* Get header order */
123 
124  /* Get visible columns */
125  for (i = 0; i < SendMessageW(hProcessPageHeaderCtrl, HDM_GETITEMCOUNT, 0, 0); i++) {
126  memset(&hditem, 0, sizeof(HDITEM));
127 
128  hditem.mask = HDI_TEXT|HDI_WIDTH;
129  hditem.pszText = text;
130  hditem.cchTextMax = 260;
131 
133 
134  for (n = 0; n < COLUMN_NMAX; n++) {
135  LoadStringW(hInst, ColumnPresets[n].dwIdsName, szTemp, sizeof(szTemp)/sizeof(WCHAR));
136  if (_wcsicmp(text, szTemp) == 0)
137  {
139  TaskManagerSettings.ColumnSizeArray[n] = hditem.cxy;
140  }
141  }
142  }
143 }
#define TRUE
Definition: types.h:120
#define COLUMN_NMAX
Definition: column.h:51
const WCHAR * text
Definition: package.c:1827
GLdouble n
Definition: glext.h:7729
int ColumnSizeArray[COLUMN_NMAX]
Definition: taskmgr.h:82
UINT_PTR WPARAM
Definition: windef.h:207
#define HDI_TEXT
Definition: commctrl.h:689
#define HDITEM
Definition: commctrl.h:682
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define HDM_GETITEMCOUNT
Definition: commctrl.h:718
HWND hProcessPageHeaderCtrl
Definition: procpage.c:39
const PresetColumnEntry ColumnPresets[COLUMN_NMAX]
Definition: column.c:31
LONG_PTR LPARAM
Definition: windef.h:208
GLsizeiptr size
Definition: glext.h:5919
__wchar_t WCHAR
Definition: xmlstorage.h:180
BOOL Columns[COLUMN_NMAX]
Definition: taskmgr.h:80
#define HDM_GETORDERARRAY
Definition: commctrl.h:791
HINSTANCE hInst
Definition: dxdiag.c:13
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
TASKMANAGER_SETTINGS TaskManagerSettings
Definition: taskmgr.c:52
#define HDM_GETITEM
Definition: commctrl.h:734
int ColumnOrderArray[COLUMN_NMAX]
Definition: taskmgr.h:81
LONG_PTR LRESULT
Definition: windef.h:209
#define HDI_WIDTH
Definition: commctrl.h:687
#define memset(x, y, z)
Definition: compat.h:39
_Check_return_ _CRTIMP int __cdecl _wcsicmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)

Referenced by ProcessPageWndProc().

◆ UpdateColumnDataHints()

void UpdateColumnDataHints ( void  )

Definition at line 203 of file column.c.

204 {
205  HDITEM hditem;
206  WCHAR text[260];
207  ULONG Index;
208  ULONG uItems;
209  WCHAR szTemp[256];
210  UINT i;
211 
213 
214  for (Index=0; Index<uItems; Index++)
215  {
216  memset(&hditem, 0, sizeof(HDITEM));
217 
218  hditem.mask = HDI_TEXT;
219  hditem.pszText = text;
220  hditem.cchTextMax = 260;
221 
223 
224  for (i=0; i<COLUMN_NMAX; i++) {
225  LoadStringW(hInst, ColumnPresets[i].dwIdsName, szTemp, sizeof(szTemp)/sizeof(WCHAR));
226  if (_wcsicmp(text, szTemp) == 0)
228  }
229  }
230 }
#define COLUMN_NMAX
Definition: column.h:51
const WCHAR * text
Definition: package.c:1827
#define HDI_TEXT
Definition: commctrl.h:689
#define HDITEM
Definition: commctrl.h:682
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define HDM_GETITEMCOUNT
Definition: commctrl.h:718
HWND hProcessPageHeaderCtrl
Definition: procpage.c:39
const PresetColumnEntry ColumnPresets[COLUMN_NMAX]
Definition: column.c:31
LONG_PTR LPARAM
Definition: windef.h:208
__wchar_t WCHAR
Definition: xmlstorage.h:180
UINT ColumnDataHints[COLUMN_NMAX]
Definition: column.c:26
static const UCHAR Index[8]
Definition: usbohci.c:18
HINSTANCE hInst
Definition: dxdiag.c:13
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define min(a, b)
Definition: monoChain.cc:55
unsigned int UINT
Definition: ndis.h:50
unsigned int ULONG
Definition: retypes.h:1
#define HDM_GETITEM
Definition: commctrl.h:734
#define memset(x, y, z)
Definition: compat.h:39
_Check_return_ _CRTIMP int __cdecl _wcsicmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)

Referenced by AddColumns(), and ProcessPageOnNotify().

Variable Documentation

◆ ColumnDataHints

UINT ColumnDataHints[COLUMN_NMAX]

Definition at line 26 of file column.c.

Referenced by PerfDataGetText(), ProcessPageOnNotify(), and UpdateColumnDataHints().

◆ ColumnPresets