Implement Utility Manager software
[reactos.git] / base / applications / utilman / precomp.h
1 /*
2 * PROJECT: ReactOS Utility Manager (Accessibility)
3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4 * PURPOSE: Pre-compiled header file
5 * COPYRIGHT: Copyright 2019 Bișoc George (fraizeraust99 at gmail dot com)
6 */
7
8 #ifndef _UTILMAN_H
9 #define _UTILMAN_H
10
11 /* INCLUDES ******************************************************************/
12
13 #include <stdlib.h>
14 #include <windows.h>
15 #include <commctrl.h>
16 #include <tlhelp32.h>
17 #include <windowsx.h>
18 #include <debug.h>
19 #include <wchar.h>
20 #include <strsafe.h>
21
22 #include "resource.h"
23
24 /* DEFINES ********************************************************************/
25
26 #define MAX_BUFFER 256
27
28 /* TYPES **********************************************************************/
29
30 typedef struct
31 {
32 HINSTANCE hInstance;
33 HICON hIcon;
34 UINT_PTR iTimer;
35 INT iSelectedIndex;
36 HWND hDlgCtlStart;
37 HWND hDlgCtlStop;
38 HWND hListDlg;
39 HWND hMainDlg;
40 WCHAR szRunning[MAX_BUFFER];
41 WCHAR szNotRunning[MAX_BUFFER];
42 WCHAR szGrpBoxTitle[MAX_BUFFER];
43 } UTILMAN_GLOBALS;
44
45 typedef struct _UTILMAN_STATE
46 {
47 LPCWSTR lpProgram;
48 UINT uNameId;
49 WCHAR szResource[MAX_BUFFER];
50 BOOL bState;
51 } UTILMAN_STATE, *PUTILMAN_STATE;
52
53 /* DECLARATIONS ***************************************************************/
54
55 /* dialog.c */
56 BOOL DlgInitHandler(HWND hDlg);
57 INT_PTR APIENTRY DlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam);
58 INT ListBoxRefreshContents(VOID);
59 VOID CheckUtilityState(BOOL bUtilState);
60
61 /* process.c */
62 BOOL IsProcessRunning(IN LPCWSTR lpProcessName);
63 BOOL LaunchProcess(LPCWSTR lpProcessName);
64 BOOL CloseProcess(IN LPCWSTR lpProcessName);
65
66 /* about.c */
67 VOID ShowAboutDlg(HWND hDlgParent);
68 INT_PTR CALLBACK AboutDlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam);
69
70 /* Struct variable declaration */
71 extern UTILMAN_GLOBALS Globals;
72
73 #endif /* _UTILMAN_H */
74
75 /* EOF */