mirror of
https://github.com/mirror/processhacker
synced 2026-06-08 16:03:24 +00:00
1533dd503d
git-svn-id: svn://svn.code.sf.net/p/processhacker/code@6092 21ef857c-d57f-4fe0-8362-d861dc6d29cd
145 lines
3.4 KiB
C
145 lines
3.4 KiB
C
#ifndef PH_SYSINFO_H
|
|
#define PH_SYSINFO_H
|
|
|
|
// begin_phapppub
|
|
typedef enum _PH_SYSINFO_VIEW_TYPE
|
|
{
|
|
SysInfoSummaryView,
|
|
SysInfoSectionView
|
|
} PH_SYSINFO_VIEW_TYPE;
|
|
|
|
typedef VOID (NTAPI *PPH_SYSINFO_COLOR_SETUP_FUNCTION)(
|
|
_Out_ PPH_GRAPH_DRAW_INFO DrawInfo,
|
|
_In_ COLORREF Color1,
|
|
_In_ COLORREF Color2
|
|
);
|
|
|
|
typedef struct _PH_SYSINFO_PARAMETERS
|
|
{
|
|
HWND SysInfoWindowHandle;
|
|
HWND ContainerWindowHandle;
|
|
|
|
HFONT Font;
|
|
HFONT MediumFont;
|
|
HFONT LargeFont;
|
|
ULONG FontHeight;
|
|
ULONG FontAverageWidth;
|
|
ULONG MediumFontHeight;
|
|
ULONG MediumFontAverageWidth;
|
|
COLORREF GraphBackColor;
|
|
COLORREF PanelForeColor;
|
|
PPH_SYSINFO_COLOR_SETUP_FUNCTION ColorSetupFunction;
|
|
|
|
ULONG MinimumGraphHeight;
|
|
ULONG SectionViewGraphHeight;
|
|
ULONG PanelWidth;
|
|
} PH_SYSINFO_PARAMETERS, *PPH_SYSINFO_PARAMETERS;
|
|
|
|
typedef enum _PH_SYSINFO_SECTION_MESSAGE
|
|
{
|
|
SysInfoCreate,
|
|
SysInfoDestroy,
|
|
SysInfoTick,
|
|
SysInfoViewChanging, // PH_SYSINFO_VIEW_TYPE Parameter1, PPH_SYSINFO_SECTION Parameter2
|
|
SysInfoCreateDialog, // PPH_SYSINFO_CREATE_DIALOG Parameter1
|
|
SysInfoGraphGetDrawInfo, // PPH_GRAPH_DRAW_INFO Parameter1
|
|
SysInfoGraphGetTooltipText, // PPH_SYSINFO_GRAPH_GET_TOOLTIP_TEXT Parameter1
|
|
SysInfoGraphDrawPanel, // PPH_SYSINFO_DRAW_PANEL Parameter1
|
|
MaxSysInfoMessage
|
|
} PH_SYSINFO_SECTION_MESSAGE;
|
|
|
|
typedef BOOLEAN (NTAPI *PPH_SYSINFO_SECTION_CALLBACK)(
|
|
_In_ struct _PH_SYSINFO_SECTION *Section,
|
|
_In_ PH_SYSINFO_SECTION_MESSAGE Message,
|
|
_In_opt_ PVOID Parameter1,
|
|
_In_opt_ PVOID Parameter2
|
|
);
|
|
|
|
typedef struct _PH_SYSINFO_CREATE_DIALOG
|
|
{
|
|
BOOLEAN CustomCreate;
|
|
|
|
// Parameters for default create
|
|
PVOID Instance;
|
|
PWSTR Template;
|
|
DLGPROC DialogProc;
|
|
PVOID Parameter;
|
|
} PH_SYSINFO_CREATE_DIALOG, *PPH_SYSINFO_CREATE_DIALOG;
|
|
|
|
typedef struct _PH_SYSINFO_GRAPH_GET_TOOLTIP_TEXT
|
|
{
|
|
ULONG Index;
|
|
PH_STRINGREF Text;
|
|
} PH_SYSINFO_GRAPH_GET_TOOLTIP_TEXT, *PPH_SYSINFO_GRAPH_GET_TOOLTIP_TEXT;
|
|
|
|
typedef struct _PH_SYSINFO_DRAW_PANEL
|
|
{
|
|
HDC hdc;
|
|
RECT Rect;
|
|
BOOLEAN CustomDraw;
|
|
|
|
// Parameters for default draw
|
|
PPH_STRING Title;
|
|
PPH_STRING SubTitle;
|
|
PPH_STRING SubTitleOverflow;
|
|
} PH_SYSINFO_DRAW_PANEL, *PPH_SYSINFO_DRAW_PANEL;
|
|
// end_phapppub
|
|
|
|
// begin_phapppub
|
|
typedef struct _PH_SYSINFO_SECTION
|
|
{
|
|
// Public
|
|
|
|
// Initialization
|
|
PH_STRINGREF Name;
|
|
ULONG Flags;
|
|
PPH_SYSINFO_SECTION_CALLBACK Callback;
|
|
PVOID Context;
|
|
PVOID Reserved[3];
|
|
|
|
// State
|
|
HWND GraphHandle;
|
|
PH_GRAPH_STATE GraphState;
|
|
PPH_SYSINFO_PARAMETERS Parameters;
|
|
PVOID Reserved2[3];
|
|
// end_phapppub
|
|
|
|
// Private
|
|
|
|
struct
|
|
{
|
|
ULONG GraphHot : 1;
|
|
ULONG PanelHot : 1;
|
|
ULONG HasFocus : 1;
|
|
ULONG HideFocus : 1;
|
|
ULONG SpareFlags : 28;
|
|
};
|
|
HWND DialogHandle;
|
|
HWND PanelHandle;
|
|
ULONG PanelId;
|
|
WNDPROC GraphOldWndProc;
|
|
WNDPROC PanelOldWndProc;
|
|
// begin_phapppub
|
|
} PH_SYSINFO_SECTION, *PPH_SYSINFO_SECTION;
|
|
// end_phapppub
|
|
|
|
VOID PhSiNotifyChangeSettings(
|
|
VOID
|
|
);
|
|
|
|
// begin_phapppub
|
|
PHAPPAPI
|
|
VOID
|
|
NTAPI
|
|
PhSiSetColorsGraphDrawInfo(
|
|
_Out_ PPH_GRAPH_DRAW_INFO DrawInfo,
|
|
_In_ COLORREF Color1,
|
|
_In_ COLORREF Color2
|
|
);
|
|
// end_phapppub
|
|
|
|
VOID PhShowSystemInformationDialog(
|
|
_In_opt_ PWSTR SectionName
|
|
);
|
|
|
|
#endif |