diff --git a/reactos/base/applications/taskmgr/column.c b/reactos/base/applications/taskmgr/column.c index 57a841f82b5..a0b2aba4b50 100644 --- a/reactos/base/applications/taskmgr/column.c +++ b/reactos/base/applications/taskmgr/column.c @@ -23,135 +23,54 @@ #include -UINT ColumnDataHints[25]; +UINT ColumnDataHints[COLUMN_NMAX]; TCHAR szTemp[256]; +#define DECLARE_COLUMN_PRESET(_name, _size, _state) \ + { IDS_TAB_##_name, IDC_##_name, _size, _state }, + +const PresetColumnEntry ColumnPresets[COLUMN_NMAX] = { + DECLARE_COLUMN_PRESET(IMAGENAME, 105, TRUE) + DECLARE_COLUMN_PRESET(PID, 50, TRUE) + DECLARE_COLUMN_PRESET(USERNAME, 107, FALSE) + DECLARE_COLUMN_PRESET(SESSIONID, 70, FALSE) + DECLARE_COLUMN_PRESET(CPUUSAGE, 35, TRUE) + DECLARE_COLUMN_PRESET(CPUTIME, 70, TRUE) + DECLARE_COLUMN_PRESET(MEMORYUSAGE, 70, TRUE) + DECLARE_COLUMN_PRESET(PEAKMEMORYUSAGE, 100, FALSE) + DECLARE_COLUMN_PRESET(MEMORYUSAGEDELTA, 70, FALSE) + DECLARE_COLUMN_PRESET(PAGEFAULTS, 70, FALSE) + DECLARE_COLUMN_PRESET(PAGEFAULTSDELTA, 70, FALSE) + DECLARE_COLUMN_PRESET(VIRTUALMEMORYSIZE, 70, FALSE) + DECLARE_COLUMN_PRESET(PAGEDPOOL, 70, FALSE) + DECLARE_COLUMN_PRESET(NONPAGEDPOOL, 70, FALSE) + DECLARE_COLUMN_PRESET(BASEPRIORITY, 60, FALSE) + DECLARE_COLUMN_PRESET(HANDLECOUNT, 60, FALSE) + DECLARE_COLUMN_PRESET(THREADCOUNT, 60, FALSE) + DECLARE_COLUMN_PRESET(USEROBJECTS, 60, FALSE) + DECLARE_COLUMN_PRESET(GDIOBJECTS, 60, FALSE) + DECLARE_COLUMN_PRESET(IOREADS, 70, FALSE) + DECLARE_COLUMN_PRESET(IOWRITES, 70, FALSE) + DECLARE_COLUMN_PRESET(IOOTHER, 70, FALSE) + DECLARE_COLUMN_PRESET(IOREADBYTES, 70, FALSE) + DECLARE_COLUMN_PRESET(IOWRITEBYTES, 70, FALSE) + DECLARE_COLUMN_PRESET(IOOTHERBYTES, 70, FALSE) +}; + int InsertColumn(int nCol, LPCTSTR lpszColumnHeading, int nFormat, int nWidth, int nSubItem); INT_PTR CALLBACK ColumnsDialogWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); void AddColumns(void) { LRESULT size; + TCHAR szTemp[256]; + unsigned int n; - if (TaskManagerSettings.Column_ImageName) { - LoadString(hInst, IDS_TAB_IMAGENAME, szTemp, 256); - InsertColumn(0, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[0], -1); - } - if (TaskManagerSettings.Column_PID) { - LoadString(hInst, IDS_TAB_PID, szTemp, 256); - InsertColumn(1, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[1], -1); - } - if (TaskManagerSettings.Column_UserName) { - LoadString(hInst, IDS_TAB_USERNAME, szTemp, 256); - InsertColumn(2, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[2], -1); - } - if (TaskManagerSettings.Column_SessionID) { - LoadString(hInst, IDS_TAB_SESSIONID, szTemp, 256); - InsertColumn(3, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[3], -1); - } - if (TaskManagerSettings.Column_CPUUsage) { - LoadString(hInst, IDS_TAB_CPU, szTemp, 256); - InsertColumn(4, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[4], -1); - } - - if (TaskManagerSettings.Column_CPUTime) { - LoadString(hInst, IDS_TAB_CPUTIME, szTemp, 256); - InsertColumn(5, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[5], -1); - } - - if (TaskManagerSettings.Column_MemoryUsage) { - LoadString(hInst, IDS_TAB_MEMUSAGE, szTemp, 256); - InsertColumn(6, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[6], -1); - } - - if (TaskManagerSettings.Column_PeakMemoryUsage) { - LoadString(hInst, IDS_TAB_PEAKMEMUSAGE, szTemp, 256); - InsertColumn(7, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[7], -1); - } - - if (TaskManagerSettings.Column_MemoryUsageDelta) { - LoadString(hInst, IDS_TAB_MEMDELTA, szTemp, 256); - InsertColumn(8, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[8], -1); - } - - if (TaskManagerSettings.Column_PageFaults) { - LoadString(hInst, IDS_TAB_PAGEFAULT, szTemp, 256); - InsertColumn(9, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[9], -1); - } - - if (TaskManagerSettings.Column_PageFaultsDelta) { - LoadString(hInst, IDS_TAB_PFDELTA, szTemp, 256); - InsertColumn(10, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[10], -1); - } - - if (TaskManagerSettings.Column_VirtualMemorySize) { - LoadString(hInst, IDS_TAB_VMSIZE, szTemp, 256); - InsertColumn(11, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[11], -1); - } - - if (TaskManagerSettings.Column_PagedPool) { - LoadString(hInst, IDS_TAB_PAGEDPOOL, szTemp, 256); - InsertColumn(12, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[12], -1); - } - - if (TaskManagerSettings.Column_NonPagedPool) { - LoadString(hInst, IDS_TAB_NPPOOL, szTemp, 256); - InsertColumn(13, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[13], -1); - } - - if (TaskManagerSettings.Column_BasePriority) { - LoadString(hInst, IDS_TAB_BASEPRI, szTemp, 256); - InsertColumn(14, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[14], -1); - } - - if (TaskManagerSettings.Column_HandleCount) { - LoadString(hInst, IDS_TAB_HANDLES, szTemp, 256); - InsertColumn(15, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[15], -1); - } - - if (TaskManagerSettings.Column_ThreadCount) { - LoadString(hInst, IDS_TAB_THREADS, szTemp, 256); - InsertColumn(16, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[16], -1); - } - - if (TaskManagerSettings.Column_USERObjects) { - LoadString(hInst, IDS_TAB_USERPBJECTS, szTemp, 256); - InsertColumn(17, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[17], -1); - } - - if (TaskManagerSettings.Column_GDIObjects) { - LoadString(hInst, IDS_TAB_GDIOBJECTS, szTemp, 256); - InsertColumn(18, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[18], -1); - } - - if (TaskManagerSettings.Column_IOReads) { - LoadString(hInst, IDS_TAB_IOREADS, szTemp, 256); - InsertColumn(19, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[19], -1); - } - - if (TaskManagerSettings.Column_IOWrites) { - LoadString(hInst, IDS_TAB_IOWRITES, szTemp, 256); - InsertColumn(20, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[20], -1); - } - - if (TaskManagerSettings.Column_IOOther) { - LoadString(hInst, IDS_TAB_IOOTHER, szTemp, 256); - InsertColumn(21, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[21], -1); - } - - if (TaskManagerSettings.Column_IOReadBytes) { - LoadString(hInst, IDS_TAB_IOREADBYTES, szTemp, 256); - InsertColumn(22, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[22], -1); - } - - if (TaskManagerSettings.Column_IOWriteBytes) { - LoadString(hInst, IDS_TAB_IOWRITESBYTES, szTemp, 256); - InsertColumn(23, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[23], -1); - } - - if (TaskManagerSettings.Column_IOOtherBytes) { - LoadString(hInst, IDS_TAB_IOOTHERBYTES, szTemp, 256); - InsertColumn(24, szTemp, LVCFMT_LEFT, TaskManagerSettings.ColumnSizeArray[24], -1); + for (n=0; n #include +#include "column.h" #include "taskmgr.h" #include "perfdata.h" #include "perfpage.h" @@ -22,7 +23,6 @@ #include "proclist.h" #include "affinity.h" #include "applpage.h" -#include "column.h" #include "dbgchnl.h" #include "debug.h" #include "endproc.h" diff --git a/reactos/base/applications/taskmgr/taskmgr.c b/reactos/base/applications/taskmgr/taskmgr.c index 25d9de28355..8dcd42a802a 100644 --- a/reactos/base/applications/taskmgr/taskmgr.c +++ b/reactos/base/applications/taskmgr/taskmgr.c @@ -698,60 +698,12 @@ void LoadSettings(void) /* Processes page settings */ TaskManagerSettings.ShowProcessesFromAllUsers = FALSE; /* Server-only? */ - TaskManagerSettings.Column_ImageName = TRUE; - TaskManagerSettings.Column_PID = TRUE; - TaskManagerSettings.Column_CPUUsage = TRUE; - TaskManagerSettings.Column_CPUTime = TRUE; - TaskManagerSettings.Column_MemoryUsage = TRUE; - TaskManagerSettings.Column_MemoryUsageDelta = FALSE; - TaskManagerSettings.Column_PeakMemoryUsage = FALSE; - TaskManagerSettings.Column_PageFaults = FALSE; - TaskManagerSettings.Column_USERObjects = FALSE; - TaskManagerSettings.Column_IOReads = FALSE; - TaskManagerSettings.Column_IOReadBytes = FALSE; - TaskManagerSettings.Column_SessionID = FALSE; /* Server-only? */ - TaskManagerSettings.Column_UserName = FALSE; /* Server-only? */ - TaskManagerSettings.Column_PageFaultsDelta = FALSE; - TaskManagerSettings.Column_VirtualMemorySize = FALSE; - TaskManagerSettings.Column_PagedPool = FALSE; - TaskManagerSettings.Column_NonPagedPool = FALSE; - TaskManagerSettings.Column_BasePriority = FALSE; - TaskManagerSettings.Column_HandleCount = FALSE; - TaskManagerSettings.Column_ThreadCount = FALSE; - TaskManagerSettings.Column_GDIObjects = FALSE; - TaskManagerSettings.Column_IOWrites = FALSE; - TaskManagerSettings.Column_IOWriteBytes = FALSE; - TaskManagerSettings.Column_IOOther = FALSE; - TaskManagerSettings.Column_IOOtherBytes = FALSE; - for (i = 0; i < 25; i++) { + for (i = 0; i < COLUMN_NMAX; i++) { + TaskManagerSettings.Columns[i] = ColumnPresets[i].bDefaults; TaskManagerSettings.ColumnOrderArray[i] = i; + TaskManagerSettings.ColumnSizeArray[i] = ColumnPresets[i].size; } - TaskManagerSettings.ColumnSizeArray[0] = 105; - TaskManagerSettings.ColumnSizeArray[1] = 50; - TaskManagerSettings.ColumnSizeArray[2] = 107; - TaskManagerSettings.ColumnSizeArray[3] = 70; - TaskManagerSettings.ColumnSizeArray[4] = 35; - TaskManagerSettings.ColumnSizeArray[5] = 70; - TaskManagerSettings.ColumnSizeArray[6] = 70; - TaskManagerSettings.ColumnSizeArray[7] = 100; - TaskManagerSettings.ColumnSizeArray[8] = 70; - TaskManagerSettings.ColumnSizeArray[9] = 70; - TaskManagerSettings.ColumnSizeArray[10] = 70; - TaskManagerSettings.ColumnSizeArray[11] = 70; - TaskManagerSettings.ColumnSizeArray[12] = 70; - TaskManagerSettings.ColumnSizeArray[13] = 70; - TaskManagerSettings.ColumnSizeArray[14] = 60; - TaskManagerSettings.ColumnSizeArray[15] = 60; - TaskManagerSettings.ColumnSizeArray[16] = 60; - TaskManagerSettings.ColumnSizeArray[17] = 60; - TaskManagerSettings.ColumnSizeArray[18] = 60; - TaskManagerSettings.ColumnSizeArray[19] = 70; - TaskManagerSettings.ColumnSizeArray[20] = 70; - TaskManagerSettings.ColumnSizeArray[21] = 70; - TaskManagerSettings.ColumnSizeArray[22] = 70; - TaskManagerSettings.ColumnSizeArray[23] = 70; - TaskManagerSettings.ColumnSizeArray[24] = 70; TaskManagerSettings.SortColumn = 1; TaskManagerSettings.SortAscending = TRUE; diff --git a/reactos/base/applications/taskmgr/taskmgr.h b/reactos/base/applications/taskmgr/taskmgr.h index bbe5a08501b..cebdfe891a3 100644 --- a/reactos/base/applications/taskmgr/taskmgr.h +++ b/reactos/base/applications/taskmgr/taskmgr.h @@ -77,34 +77,10 @@ typedef struct /* Processes page settings */ BOOL ShowProcessesFromAllUsers; /* Server-only? */ - BOOL Column_ImageName; - BOOL Column_PID; - BOOL Column_CPUUsage; - BOOL Column_CPUTime; - BOOL Column_MemoryUsage; - BOOL Column_MemoryUsageDelta; - BOOL Column_PeakMemoryUsage; - BOOL Column_PageFaults; - BOOL Column_USERObjects; - BOOL Column_IOReads; - BOOL Column_IOReadBytes; - BOOL Column_SessionID; /* Server-only? */ - BOOL Column_UserName; /* Server-only? */ - BOOL Column_PageFaultsDelta; - BOOL Column_VirtualMemorySize; - BOOL Column_PagedPool; - BOOL Column_NonPagedPool; - BOOL Column_BasePriority; - BOOL Column_HandleCount; - BOOL Column_ThreadCount; - BOOL Column_GDIObjects; - BOOL Column_IOWrites; - BOOL Column_IOWriteBytes; - BOOL Column_IOOther; - BOOL Column_IOOtherBytes; - int ColumnOrderArray[25]; - int ColumnSizeArray[25]; - int SortColumn; + BOOL Columns[COLUMN_NMAX]; + int ColumnOrderArray[COLUMN_NMAX]; + int ColumnSizeArray[COLUMN_NMAX]; + int SortColumn; BOOL SortAscending; /* Performance page settings */