OSDN Git Service

change EOL style to CRLF to adjust to default setting of Visual Studio
[yamy/yamy.git] / mayuipc.h
1 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
2 // mayuipc.h - mayu inter process communication\r
3 \r
4 #ifndef _MAYUIPC_H\r
5 #  define _MAYUIPC_H\r
6 \r
7 #  include <windows.h>\r
8 \r
9 #  ifdef __cplusplus\r
10 extern "C" {\r
11 #  endif // __cplusplus\r
12 \r
13 /// \r
14 #  define WM_MayuIPC_NAME _T("MayuIPC{46269F4D-D560-40f9-B38B-DB5E280FEF47}")\r
15 \r
16 enum MayuIPCCommand\r
17 {\r
18         // enable or disable Mayu\r
19         MayuIPCCommand_Enable = 1,\r
20 };\r
21 \r
22 BOOL MayuIPC_PostMessage(MayuIPCCommand i_wParam, LPARAM i_lParam);\r
23 BOOL MayuIPC_Enable(BOOL i_isEnabled);\r
24 \r
25 #  ifdef _MAYUIPC_H_DEFINE_FUNCTIONS\r
26 \r
27 BOOL MayuIPC_PostMessage(MayuIPCCommand i_command, LPARAM i_lParam)\r
28 {\r
29         static UINT WM_MayuIPC;\r
30         HWND hwnd;\r
31         \r
32         if (WM_MayuIPC == 0)\r
33         {\r
34                 WM_MayuIPC = RegisterWindowMessage(WM_MayuIPC_NAME);\r
35                 if (WM_MayuIPC == 0)\r
36                 {\r
37                         return FALSE;\r
38                 }\r
39         }\r
40         \r
41         hwnd = FindWindow(_T("mayuTasktray"), NULL);\r
42         if (hwnd == NULL)\r
43         {\r
44                 return FALSE;\r
45         }\r
46         PostMessage(hwnd, WM_MayuIPC, i_command, i_lParam);\r
47         return TRUE;\r
48 }\r
49 \r
50 BOOL MayuIPC_Enable(BOOL i_isEnabled)\r
51 {\r
52         return MayuIPC_PostMessage(MayuIPCCommand_Enable, i_isEnabled);\r
53 }\r
54 \r
55 #  endif // _MAYUIPC_H_DEFINE_FUNCTIONS\r
56 \r
57 #  ifdef __cplusplus\r
58 }\r
59 #  endif // __cplusplus\r
60 #endif // !_MAYUIPC_H\r