OSDN Git Service

4d31a06cbc3f45d8b2696e7f2adfde4b45367474
[xkeymacs/xkeymacs.git] / xkeymacs / xkeymacs.h
1 // xkeymacs.h : main header file for the XKEYMACS application\r
2 //\r
3 \r
4 #if !defined(AFX_XKEYMACS_H__2E65B9CB_5ADB_4C3B_891F_8EFE395FBB2D__INCLUDED_)\r
5 #define AFX_XKEYMACS_H__2E65B9CB_5ADB_4C3B_891F_8EFE395FBB2D__INCLUDED_\r
6 \r
7 #if _MSC_VER > 1000\r
8 #pragma once\r
9 #endif // _MSC_VER > 1000\r
10 \r
11 #ifndef __AFXWIN_H__\r
12         #error include 'stdafx.h' before including this file for PCH\r
13 #endif\r
14 \r
15 #include "resource.h"       // main symbols\r
16 \r
17 enum Instance\r
18 {\r
19         FirstInstance,\r
20         SecondInstance,\r
21 };\r
22 \r
23 \r
24 /////////////////////////////////////////////////////////////////////////////\r
25 // CXkeymacsApp:\r
26 // See xkeymacs.cpp for the implementation of this class\r
27 //\r
28 \r
29 class CXkeymacsApp : public CWinApp\r
30 {\r
31 public:\r
32         CXkeymacsApp();\r
33 \r
34 // Overrides\r
35         // ClassWizard generated virtual function overrides\r
36         //{{AFX_VIRTUAL(CXkeymacsApp)\r
37         public:\r
38         virtual BOOL InitInstance();\r
39         virtual int ExitInstance();\r
40         //}}AFX_VIRTUAL\r
41 \r
42 // Implementation\r
43         //{{AFX_MSG(CXkeymacsApp)\r
44         afx_msg void OnAppAbout();\r
45                 // NOTE - the ClassWizard will add and remove member functions here.\r
46                 //    DO NOT EDIT what you see in these blocks of generated code !\r
47         //}}AFX_MSG\r
48         DECLARE_MESSAGE_MAP()\r
49 private:\r
50         Instance m_Instance;\r
51         HANDLE m_hMutex;\r
52 };\r
53 \r
54 /////////////////////////////////////////////////////////////////////////////\r
55 // CAboutDlg dialog used for App About\r
56 \r
57 class CAboutDlg : public CDialog\r
58 {\r
59 public:\r
60         CAboutDlg();\r
61 \r
62 // Dialog Data\r
63         //{{AFX_DATA(CAboutDlg)\r
64         enum { IDD = IDD_ABOUTBOX };\r
65         CStatic m_cURL;\r
66         CString m_szVersionInformation;\r
67         CString m_szLegalCopyright;\r
68         //}}AFX_DATA\r
69 \r
70         // ClassWizard generated virtual function overrides\r
71         //{{AFX_VIRTUAL(CAboutDlg)\r
72         protected:\r
73         virtual void DoDataExchange(CDataExchange *pDX);    // DDX/DDV support\r
74         //}}AFX_VIRTUAL\r
75 \r
76 // Implementation\r
77 protected:\r
78         //{{AFX_MSG(CAboutDlg)\r
79         virtual void OnOK();\r
80         afx_msg void OnClose();\r
81         afx_msg void OnUrl();\r
82         afx_msg HBRUSH OnCtlColor(CDC *pDC, CWnd *pWnd, UINT nCtlColor);\r
83         afx_msg BOOL OnSetCursor(CWnd *pWnd, UINT nHitTest, UINT message);\r
84         //}}AFX_MSG\r
85         DECLARE_MESSAGE_MAP()\r
86 };\r
87 \r
88 /////////////////////////////////////////////////////////////////////////////\r
89 \r
90 static const KeyName_t KeyNames[] = {\r
91         {0,                             _T("")},\r
92         {VK_LBUTTON,    _T("Left mouse button")},\r
93         {VK_RBUTTON,    _T("Right mouse button")},\r
94         {VK_CANCEL,             _T("Break")},\r
95         {VK_MBUTTON,    _T("Middle mouse button")},\r
96         {0x05,                  _T("X1 mouse button")}, // VK_XBUTTON1\r
97         {0x06,                  _T("X2 mouse button")}, // VK_XBUTTON2\r
98         {0x07,                  _T("Undefined")},\r
99         {VK_BACK,               _T("Backspace")},\r
100         {VK_TAB,                _T("Tab")},\r
101         {0x0a,                  _T("Reserved")},\r
102         {0x0b,                  _T("Reserved")},\r
103         {VK_CLEAR,              _T("Clear")},\r
104         {VK_RETURN,             _T("Enter")},\r
105         {0x0e,                  _T("Undefined")},\r
106         {0x0f,                  _T("Undefined")},\r
107         {VK_SHIFT,              _T("Shift")},\r
108         {VK_CONTROL,    _T("Ctrl")},\r
109         {VK_MENU,               _T("Alt")},\r
110         {VK_PAUSE,              _T("Pause")},\r
111         {VK_CAPITAL,    _T("Caps Lock")},\r
112         {VK_KANA,               _T("Kana")},    //      {VK_HANGUEL,    "Hanguel"},     {VK_HANGUL,             "Hangul"},\r
113         {0x16,                  _T("Undefined")},\r
114         {VK_JUNJA,              _T("Junja")},\r
115         {VK_FINAL,              _T("Final")},\r
116         {VK_KANJI,              _T("Kanji")},   //      {VK_HANJA,              "Hanja"},\r
117         {0x1a,                  _T("Undefined")},\r
118         {VK_ESCAPE,             _T("Esc")},\r
119         {VK_CONVERT,    _T("Convert")},         // \95Ï\8a·\r
120         {VK_NONCONVERT, _T("Nonconvert")},      // \96³\95Ï\8a·\r
121         {VK_ACCEPT,             _T("Accept")},\r
122         {VK_MODECHANGE, _T("Mode change")},\r
123         {VK_SPACE,              _T("Space")},\r
124         {VK_PRIOR,              _T("Page Up")},\r
125         {VK_NEXT,               _T("Page Down")},\r
126         {VK_END,                _T("End")},\r
127         {VK_HOME,               _T("Home")},\r
128         {VK_LEFT,               _T("Left")},\r
129         {VK_UP,                 _T("Up")},\r
130         {VK_RIGHT,              _T("Right")},\r
131         {VK_DOWN,               _T("Down")},\r
132         {VK_SELECT,             _T("Select")},\r
133         {VK_PRINT,              _T("Print")},\r
134         {VK_EXECUTE,    _T("Execute")},\r
135         {VK_SNAPSHOT,   _T("Print Screen")},\r
136         {VK_INSERT,             _T("Ins")},\r
137         {VK_DELETE,             _T("Del")},\r
138         {VK_HELP,               _T("Help")},\r
139         {'0',                   _T("0")},\r
140         {'1',                   _T("1")},\r
141         {'2',                   _T("2")},\r
142         {'3',                   _T("3")},\r
143         {'4',                   _T("4")},\r
144         {'5',                   _T("5")},\r
145         {'6',                   _T("6")},\r
146         {'7',                   _T("7")},\r
147         {'8',                   _T("8")},\r
148         {'9',                   _T("9")},\r
149         {0x3a,                  _T("Undefined")},\r
150         {0x3b,                  _T("Undefined")},\r
151         {0x3c,                  _T("Undefined")},\r
152         {0x3d,                  _T("Undefined")},\r
153         {0x3e,                  _T("Undefined")},\r
154         {0x3f,                  _T("Undefined")},\r
155         {0x40,                  _T("Undefined")},\r
156         {'A',                   _T("A")},\r
157         {'B',                   _T("B")},\r
158         {'C',                   _T("C")},\r
159         {'D',                   _T("D")},\r
160         {'E',                   _T("E")},\r
161         {'F',                   _T("F")},\r
162         {'G',                   _T("G")},\r
163         {'H',                   _T("H")},\r
164         {'I',                   _T("I")},\r
165         {'J',                   _T("J")},\r
166         {'K',                   _T("K")},\r
167         {'L',                   _T("L")},\r
168         {'M',                   _T("M")},\r
169         {'N',                   _T("N")},\r
170         {'O',                   _T("O")},\r
171         {'P',                   _T("P")},\r
172         {'Q',                   _T("Q")},\r
173         {'R',                   _T("R")},\r
174         {'S',                   _T("S")},\r
175         {'T',                   _T("T")},\r
176         {'U',                   _T("U")},\r
177         {'V',                   _T("V")},\r
178         {'W',                   _T("W")},\r
179         {'X',                   _T("X")},\r
180         {'Y',                   _T("Y")},\r
181         {'Z',                   _T("Z")},\r
182         {VK_LWIN,               _T("Left Windows")},\r
183         {VK_RWIN,               _T("Right Windows")},\r
184         {VK_APPS,               _T("Application")},\r
185         {0x5e,                  _T("Reserved")},\r
186         {0x5f,                  _T("Sleep")},   // VK_SLEEP\r
187         {VK_NUMPAD0,    _T("Num 0")},\r
188         {VK_NUMPAD1,    _T("Num 1")},\r
189         {VK_NUMPAD2,    _T("Num 2")},\r
190         {VK_NUMPAD3,    _T("Num 3")},\r
191         {VK_NUMPAD4,    _T("Num 4")},\r
192         {VK_NUMPAD5,    _T("Num 5")},\r
193         {VK_NUMPAD6,    _T("Num 6")},\r
194         {VK_NUMPAD7,    _T("Num 7")},\r
195         {VK_NUMPAD8,    _T("Num 8")},\r
196         {VK_NUMPAD9,    _T("Num 9")},\r
197         {VK_MULTIPLY,   _T("Num *")},\r
198         {VK_ADD,                _T("Num +")},\r
199         {VK_SEPARATOR,  _T("Separator")},\r
200         {VK_SUBTRACT,   _T("Num -")},\r
201         {VK_DECIMAL,    _T("Num .")},\r
202         {VK_DIVIDE,             _T("Num /")},\r
203         {VK_F1,                 _T("F1")},\r
204         {VK_F2,                 _T("F2")},\r
205         {VK_F3,                 _T("F3")},\r
206         {VK_F4,                 _T("F4")},\r
207         {VK_F5,                 _T("F5")},\r
208         {VK_F6,                 _T("F6")},\r
209         {VK_F7,                 _T("F7")},\r
210         {VK_F8,                 _T("F8")},\r
211         {VK_F9,                 _T("F9")},\r
212         {VK_F10,                _T("F10")},\r
213         {VK_F11,                _T("F11")},\r
214         {VK_F12,                _T("F12")},\r
215         {VK_F13,                _T("F13")},\r
216         {VK_F14,                _T("F14")},\r
217         {VK_F15,                _T("F15")},\r
218         {VK_F16,                _T("F16")},\r
219         {VK_F17,                _T("F17")},\r
220         {VK_F18,                _T("F18")},\r
221         {VK_F19,                _T("F19")},\r
222         {VK_F20,                _T("F20")},\r
223         {VK_F21,                _T("F21")},\r
224         {VK_F22,                _T("F22")},\r
225         {VK_F23,                _T("F23")},\r
226         {VK_F24,                _T("F24")},\r
227         {0x88,                  _T("Unassigned")},\r
228         {0x89,                  _T("Unassigned")},\r
229         {0x8a,                  _T("Unassigned")},\r
230         {0x8b,                  _T("Unassigned")},\r
231         {0x8c,                  _T("Unassigned")},\r
232         {0x8d,                  _T("Unassigned")},\r
233         {0x8e,                  _T("Unassigned")},\r
234         {0x8f,                  _T("Unassigned")},\r
235         {VK_NUMLOCK,    _T("Num Lock")},\r
236         {VK_SCROLL,             _T("Scroll Lock")},\r
237         {0x92,                  _T("OEM specific")},\r
238         {0x93,                  _T("OEM specific")},\r
239         {0x94,                  _T("OEM specific")},\r
240         {0x95,                  _T("OEM specific")},\r
241         {0x96,                  _T("OEM specific")},\r
242         {0x97,                  _T("Unassigned")},\r
243         {0x98,                  _T("Unassigned")},\r
244         {0x99,                  _T("Unassigned")},\r
245         {0x9a,                  _T("Unassigned")},\r
246         {0x9b,                  _T("Unassigned")},\r
247         {0x9c,                  _T("Unassigned")},\r
248         {0x9d,                  _T("Unassigned")},\r
249         {0x9e,                  _T("Unassigned")},\r
250         {0x9f,                  _T("Unassigned")},\r
251         {VK_LSHIFT,             _T("Left Shift")},\r
252         {VK_RSHIFT,             _T("Right Shift")},\r
253         {VK_LCONTROL,   _T("Left Ctrl")},\r
254         {VK_RCONTROL,   _T("Right Ctrl")},\r
255         {VK_LMENU,              _T("Left Alt")},\r
256         {VK_RMENU,              _T("Right Alt")},\r
257         {0xa6,                  _T("Browser Back")},            // VK_BROWSER_BACK\r
258         {0xa7,                  _T("Browser Forward")},         // VK_BROWSER_FORWARD\r
259         {0xa8,                  _T("Browser Refresh")},         // VK_BROWSER_REFRESH\r
260         {0xa9,                  _T("Browser Stop")},            // VK_BROWSER_STOP\r
261         {0xaa,                  _T("Browser Search")},          // VK_BROWSER_SEARCH\r
262         {0xab,                  _T("Browser Favorites")},       // VK_BROWSER_FAVORITES\r
263         {0xac,                  _T("Browser Start")},           // VK_BROWSER_HOME\r
264         {0xad,                  _T("Volume Mute")},                     // VK_VOLUME_MUTE\r
265         {0xae,                  _T("Volume Down")},                     // VK_VOLUME_DOWN\r
266         {0xaf,                  _T("Volume Up")},                       // VK_VOLUME_UP\r
267         {0xb0,                  _T("Next Track")},                      // VK_MEDIA_NEXT_TRACK\r
268         {0xb1,                  _T("Previous Track")},          // VK_MEDIA_PREV_TRACK\r
269         {0xb2,                  _T("Stop Media")},                      // VK_MEDIA_STOP\r
270         {0xb3,                  _T("Play/Pause Media")},        // VK_MEDIA_PLAY_PAUSE\r
271         {0xb4,                  _T("Start Mail")},                      // VK_LAUNCH_MAIL\r
272         {0xb5,                  _T("Select Media")},            // VK_LAUNCH_MEDIA_SELECT\r
273         {0xb6,                  _T("Start Application 1")},     // VK_LAUNCH_APP1\r
274         {0xb7,                  _T("Start Application 2")},     // VK_LAUNCH_APP2\r
275         {0xb8,                  _T("Reserved")},\r
276         {0xb9,                  _T("Reserved")},\r
277         {0xba,                  _T(";")},                                       // VK_OEM_1\r
278 //      {0xba,                  _T(":")},                                       // VK_OEM_1             // for Japanese keyboard\r
279         {0xbb,                  _T("+")},                                       // VK_OEM_PLUS\r
280 //      {0xbb,                  _T(";")},                                       // VK_OEM_PLUS  // for Japanese keyboard\r
281         {0xbc,                  _T(",")},                                       // VK_OEM_COMMA\r
282         {0xbd,                  _T("-")},                                       // VK_OEM_MINUS\r
283         {0xbe,                  _T(".")},                                       // VK_OEM_PERIOD\r
284         {0xbf,                  _T("/")},                                       // VK_OEM_2\r
285         {0xc0,                  _T("`")},                                       // VK_OEM_3\r
286 //      {0xc0,                  _T("@")},                                       // VK_OEM_3             // for Japanese keyboard\r
287         {0xc1,                  _T("Reserved")},\r
288         {0xc2,                  _T("Reserved")},\r
289         {0xc3,                  _T("Reserved")},\r
290         {0xc4,                  _T("Reserved")},\r
291         {0xc5,                  _T("Reserved")},\r
292         {0xc6,                  _T("Reserved")},\r
293         {0xc7,                  _T("Reserved")},\r
294         {0xc8,                  _T("Reserved")},\r
295         {0xc9,                  _T("Reserved")},\r
296         {0xca,                  _T("Reserved")},\r
297         {0xcb,                  _T("Reserved")},\r
298         {0xcc,                  _T("Reserved")},\r
299         {0xcd,                  _T("Reserved")},\r
300         {0xce,                  _T("Reserved")},\r
301         {0xcf,                  _T("Reserved")},\r
302         {0xd0,                  _T("Reserved")},\r
303         {0xd1,                  _T("Reserved")},\r
304         {0xd2,                  _T("Reserved")},\r
305         {0xd3,                  _T("Reserved")},\r
306         {0xd4,                  _T("Reserved")},\r
307         {0xd5,                  _T("Reserved")},\r
308         {0xd6,                  _T("Reserved")},\r
309         {0xd7,                  _T("Reserved")},\r
310         {0xd8,                  _T("Unassigned")},\r
311         {0xd9,                  _T("Unassigned")},\r
312         {0xda,                  _T("Unassigned")},\r
313         {0xdb,                  _T("[")},                                       // VK_OEM_4\r
314         {0xdc,                  _T("Backslash")},                       // VK_OEM_5\r
315         {0xdd,                  _T("]")},                                       // VK_OEM_6\r
316         {0xde,                  _T("'")},                                       // VK_OEM_7\r
317         {0xdf,                  _T("OEM specific")},            // VK_OEM_8\r
318         {0xe0,                  _T("Reserved")},\r
319         {0xe1,                  _T("OEM specific")},\r
320         {0xe2,                  _T("Backslash for 106 keyboard")},      // VK_OEM_102\r
321         {0xe3,                  _T("OEM specific")},\r
322         {0xe4,                  _T("OEM specific")},\r
323         {0xe5,                  _T("Process")},                         // VK_PROCESSKEY\r
324         {0xe6,                  _T("OEM specific")},\r
325         {0xe7,                  _T("Packet")},  // VK_PACKET\r
326         {0xe8,                  _T("Unassigned")},\r
327         {0xe9,                  _T("OEM specific")},\r
328         {0xea,                  _T("OEM specific")},\r
329         {0xeb,                  _T("OEM specific")},\r
330         {0xec,                  _T("OEM specific")},\r
331         {0xed,                  _T("OEM specific")},\r
332         {0xee,                  _T("OEM specific")},\r
333         {0xef,                  _T("OEM specific")},\r
334         {0xf0,                  _T("Eisu")},                                    // \89p\90\94\r
335         {0xf1,                  _T("OEM specific")},\r
336         {0xf2,                  _T("Hiragana")},                                // \82Ð\82ç\82ª\82È\r
337         {0xf3,                  _T("Hankaku/Zenkaku 0xf3")},    // "\94¼\8ap/\91S\8ap"\r
338         {0xf4,                  _T("Hankaku/Zenkaku 0xf4")},    // "\94¼\8ap/\91S\8ap"\r
339         {0xf5,                  _T("OEM specific")},\r
340         {VK_ATTN,               _T("Attn")},\r
341         {VK_CRSEL,              _T("CrSel")},\r
342         {VK_EXSEL,              _T("ExSel")},\r
343         {VK_EREOF,              _T("Erace EOF")},\r
344         {VK_PLAY,               _T("Play")},\r
345         {VK_ZOOM,               _T("Zoom")},\r
346         {VK_NONAME,             _T("Noname")},\r
347         {VK_PA1,                _T("PA1")},\r
348         {VK_OEM_CLEAR,  _T("OEM Clear")},\r
349         {0xff,                  _T("")},\r
350 };\r
351 \r
352 typedef struct Translate {\r
353         WORD wLanguage;\r
354         WORD wCodePage;\r
355 } Translate_t;\r
356 \r
357 //{{AFX_INSERT_LOCATION}}\r
358 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.\r
359 \r
360 #endif // !defined(AFX_XKEYMACS_H__2E65B9CB_5ADB_4C3B_891F_8EFE395FBB2D__INCLUDED_)\r