source: trunk/src/user32/oslibmsg.h@ 10012

Last change on this file since 10012 was 10012, checked in by sandervl, 22 years ago

KSO: Implemented WM_COPYDATA

File size: 15.9 KB
Line 
1/* $Id: oslibmsg.h,v 1.20 2003-04-11 14:22:05 sandervl Exp $ */
2/*
3 * Window message translation functions for OS/2
4 *
5 *
6 * Copyright 1999 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 *
9 * Project Odin Software License can be found in LICENSE.TXT
10 *
11 */
12#ifndef __OSLIBMSG_H__
13#define __OSLIBMSG_H__
14
15
16typedef struct tagCOPYDATASTRUCT_W
17{
18 DWORD dwData;
19 DWORD cbData;
20 LPVOID lpData;
21} COPYDATASTRUCT_W, *PCOPYDATASTRUCT_W, *LPCOPYDATASTRUCT_W;
22
23
24#ifdef __cplusplus
25
26ULONG TranslateWinMsg(ULONG msg);
27
28#define MSG_NOREMOVE 0
29#define MSG_REMOVE 1
30
31#ifdef OS2DEF_INCLUDED
32BOOL OS2ToWinMsgTranslate(void *pThdb, QMSG *os2Msg, MSG *winMsg, BOOL isUnicode, BOOL fMsgRemoved);
33void WinToOS2MsgTranslate(MSG *winMsg, QMSG *os2Msg, BOOL isUnicode);
34
35#endif
36
37BOOL OSLibWinGetMsg(LPMSG pMsg, HWND hwnd, UINT uMsgFilterMin,
38 UINT uMsgFilterMax, BOOL isUnicode = FALSE);
39BOOL OSLibWinPeekMsg(LPMSG pMsg, HWND hwnd, UINT uMsgFilterMin,
40 UINT uMsgFilterMax, DWORD fRemove, BOOL isUnicode = FALSE);
41void OSLibWinPostQuitMessage(ULONG nExitCode);
42LONG OSLibWinDispatchMsg(MSG *msg, BOOL isUnicode = FALSE);
43BOOL OSLibWinTranslateMessage(MSG *msg);
44
45ULONG OSLibWinQueryMsgTime();
46BOOL OSLibWinWaitMessage();
47BOOL OSLibWinInSendMessage();
48DWORD OSLibWinGetMessagePos();
49LONG OSLibWinGetMessageTime();
50BOOL OSLibWinReplyMessage(ULONG result);
51ULONG OSLibWinQueryQueueStatus();
52
53BOOL OSLibPostThreadMessage(ULONG threadid, UINT msg, WPARAM wParam, LPARAM lParam, BOOL fUnicode);
54BOOL OSLibPostMessage(HWND hwndWin32, HWND hwndOS2, ULONG msg, ULONG wParam, ULONG lParam, BOOL fUnicode);
55ULONG OSLibSendMessage(HWND hwnd, ULONG msg, ULONG wParam, ULONG lParam, BOOL fUnicode);
56ULONG OSLibWinBroadcastMsg(ULONG msg, ULONG wParam, ULONG lParam, BOOL fSend);
57
58//Direct posting of messages that must remain invisible to the win32 app
59BOOL OSLibPostMessageDirect(HWND hwnd, ULONG msg, ULONG wParam, ULONG lParam);
60
61#define WINWM_NULL 0x0000
62#define WINWM_CREATE 0x0001
63#define WINWM_DESTROY 0x0002
64#define WINWM_MOVE 0x0003
65#define WINWM_SIZE 0x0005
66#define WINWM_ACTIVATE 0x0006
67#define WINWM_SETFOCUS 0x0007
68#define WINWM_KILLFOCUS 0x0008
69#define WINWM_ENABLE 0x000A
70#define WINWM_SETREDRAW 0x000B
71#define WINWM_SETTEXT 0x000C
72#define WINWM_GETTEXT 0x000D
73#define WINWM_GETTEXTLENGTH 0x000E
74#define WINWM_PAINT 0x000F
75#define WINWM_CLOSE 0x0010
76#define WINWM_QUERYENDSESSION 0x0011
77#define WINWM_QUIT 0x0012
78#define WINWM_QUERYOPEN 0x0013
79#define WINWM_ERASEBKGND 0x0014
80#define WINWM_SYSCOLORCHANGE 0x0015
81#define WINWM_ENDSESSION 0x0016
82#define WINWM_SHOWWINDOW 0x0018
83#define WINWM_WININICHANGE 0x001A
84#define WINWM_DEVMODECHANGE 0x001B
85#define WINWM_ACTIVATEAPP 0x001C
86#define WINWM_FONTCHANGE 0x001D
87#define WINWM_TIMECHANGE 0x001E
88#define WINWM_CANCELMODE 0x001F
89#define WINWM_SETCURSOR 0x0020
90#define WINWM_MOUSEACTIVATE 0x0021
91#define WINWM_CHILDACTIVATE 0x0022
92#define WINWM_QUEUESYNC 0x0023
93#define WINWM_GETMINMAXINFO 0x0024
94#define WINWM_PAINTICON 0x0026
95#define WINWM_ICONERASEBKGND 0x0027
96#define WINWM_NEXTDLGCTL 0x0028
97#define WINWM_SPOOLERSTATUS 0x002A
98#define WINWM_DRAWITEM 0x002B
99#define WINWM_MEASUREITEM 0x002C
100#define WINWM_DELETEITEM 0x002D
101#define WINWM_VKEYTOITEM 0x002E
102#define WINWM_CHARTOITEM 0x002F
103#define WINWM_SETFONT 0x0030
104#define WINWM_GETFONT 0x0031
105#define WINWM_SETHOTKEY 0x0032
106#define WINWM_GETHOTKEY 0x0033
107#define WINWM_QUERYDRAGICON 0x0037
108#define WINWM_COMPAREITEM 0x0039
109#define WINWM_COMPACTING 0x0041
110#define WINWM_WINDOWPOSCHANGING 0x0046
111#define WINWM_WINDOWPOSCHANGED 0x0047
112#define WINWM_POWER 0x0048
113#define WINWM_COPYDATA 0x004A
114#define WINWM_CANCELJOURNAL 0x004B
115#define WINWM_CONTEXTMENU 0x007b
116#define WINWM_STYLECHANGING 0x007c
117#define WINWM_STYLECHANGED 0x007d
118#define WINWM_DISPLAYCHANGE 0x007e
119#define WINWM_GETICON 0x007f
120#define WINWM_SETICON 0x0080
121#define WINWM_NCCREATE 0x0081
122#define WINWM_NCDESTROY 0x0082
123#define WINWM_NCCALCSIZE 0x0083
124#define WINWM_NCHITTEST 0x0084
125#define WINWM_NCPAINT 0x0085
126#define WINWM_NCACTIVATE 0x0086
127#define WINWM_GETDLGCODE 0x0087
128#define WINWM_NCMOUSEMOVE 0x00A0
129#define WINWM_NCLBUTTONDOWN 0x00A1
130#define WINWM_NCLBUTTONUP 0x00A2
131#define WINWM_NCLBUTTONDBLCLK 0x00A3
132#define WINWM_NCRBUTTONDOWN 0x00A4
133#define WINWM_NCRBUTTONUP 0x00A5
134#define WINWM_NCRBUTTONDBLCLK 0x00A6
135#define WINWM_NCMBUTTONDOWN 0x00A7
136#define WINWM_NCMBUTTONUP 0x00A8
137#define WINWM_NCMBUTTONDBLCLK 0x00A9
138#define WINWM_KEYFIRST 0x0100
139#define WINWM_KEYDOWN 0x0100
140#define WINWM_KEYUP 0x0101
141#define WINWM_CHAR 0x0102
142#define WINWM_DEADCHAR 0x0103
143#define WINWM_SYSKEYDOWN 0x0104
144#define WINWM_SYSKEYUP 0x0105
145#define WINWM_SYSCHAR 0x0106
146#define WINWM_SYSDEADCHAR 0x0107
147#define WINWM_KEYLAST 0x0108
148#define WINWM_INITDIALOG 0x0110
149#define WINWM_COMMAND 0x0111
150#define WINWM_SYSCOMMAND 0x0112
151#define WINWM_TIMER 0x0113
152#define WINWM_HSCROLL 0x0114
153#define WINWM_VSCROLL 0x0115
154#define WINWM_INITMENU 0x0116
155#define WINWM_INITMENUPOPUP 0x0117
156#define WINWM_SYSTIMER 0x0118
157#define WINWM_MENUSELECT 0x011F
158#define WINWM_MENUCHAR 0x0120
159#define WINWM_ENTERIDLE 0x0121
160#define WINWM_CTLCOLORMSGBOX 0x0132
161#define WINWM_CTLCOLOREDIT 0x0133
162#define WINWM_CTLCOLORLISTBOX 0x0134
163#define WINWM_CTLCOLORBTN 0x0135
164#define WINWM_CTLCOLORDLG 0x0136
165#define WINWM_CTLCOLORSCROLLBAR 0x0137
166#define WINWM_CTLCOLORSTATIC 0x0138
167#define WINWM_MOUSEFIRST 0x0200
168#define WINWM_MOUSEMOVE 0x0200
169#define WINWM_LBUTTONDOWN 0x0201
170#define WINWM_LBUTTONUP 0x0202
171#define WINWM_LBUTTONDBLCLK 0x0203
172#define WINWM_RBUTTONDOWN 0x0204
173#define WINWM_RBUTTONUP 0x0205
174#define WINWM_RBUTTONDBLCLK 0x0206
175#define WINWM_MBUTTONDOWN 0x0207
176#define WINWM_MBUTTONUP 0x0208
177#define WINWM_MBUTTONDBLCLK 0x0209
178#define WINWM_MOUSEWHEEL 0x020A
179#define WINWM_MOUSELAST 0x020A
180#define WINWM_PARENTNOTIFY 0x0210
181#define WINWM_ENTERMENULOOP 0x0211
182#define WINWM_EXITMENULOOP 0x0212
183#define WINWM_MDICREATE 0x0220
184#define WINWM_MDIDESTROY 0x0221
185#define WINWM_MDIACTIVATE 0x0222
186#define WINWM_MDIRESTORE 0x0223
187#define WINWM_MDINEXT 0x0224
188#define WINWM_MDIMAXIMIZE 0x0225
189#define WINWM_MDITILE 0x0226
190#define WINWM_MDICASCADE 0x0227
191#define WINWM_MDIICONARRANGE 0x0228
192#define WINWM_MDIGETACTIVE 0x0229
193#define WINWM_MDISETMENU 0x0230
194#define WINWM_DROPFILES 0x0233
195#define WINWM_MDIREFRESHMENU 0x0234
196#define WINWM_CUT 0x0300
197#define WINWM_COPY 0x0301
198#define WINWM_PASTE 0x0302
199#define WINWM_CLEAR 0x0303
200#define WINWM_UNDO 0x0304
201#define WINWM_RENDERFORMAT 0x0305
202#define WINWM_RENDERALLFORMATS 0x0306
203#define WINWM_DESTROYCLIPBOARD 0x0307
204#define WINWM_DRAWCLIPBOARD 0x0308
205#define WINWM_PAINTCLIPBOARD 0x0309
206#define WINWM_VSCROLLCLIPBOARD 0x030A
207#define WINWM_SIZECLIPBOARD 0x030B
208#define WINWM_ASKCBFORMATNAME 0x030C
209#define WINWM_CHANGECBCHAIN 0x030D
210#define WINWM_HSCROLLCLIPBOARD 0x030E
211#define WINWM_QUERYNEWPALETTE 0x030F
212#define WINWM_PALETTEISCHANGING 0x0310
213#define WINWM_PALETTECHANGED 0x0311
214#define WINWM_HOTKEY 0x0312
215#define WINWM_DDE_FIRST 0x03E0
216#define WINWM_DDE_INITIATE (WINWM_DDE_FIRST)
217#define WINWM_DDE_TERMINATE (WINWM_DDE_FIRST + 1)
218#define WINWM_DDE_ADVISE (WINWM_DDE_FIRST + 2)
219#define WINWM_DDE_UNADVISE (WINWM_DDE_FIRST + 3)
220#define WINWM_DDE_ACK (WINWM_DDE_FIRST + 4)
221#define WINWM_DDE_DATA (WINWM_DDE_FIRST + 5)
222#define WINWM_DDE_REQUEST (WINWM_DDE_FIRST + 6)
223#define WINWM_DDE_POKE (WINWM_DDE_FIRST + 7)
224#define WINWM_DDE_EXECUTE (WINWM_DDE_FIRST + 8)
225#define WINWM_DDE_LAST (WINWM_DDE_FIRST + 8)
226#define WINWM_USER 0x0400
227
228/*******
229#define OSWM_NULL 0x0000
230#define OSWM_CREATE 0x0001
231#define OSWM_DESTROY 0x0002
232#define OSWM_ENABLE 0x0004
233#define OSWM_SHOW 0x0005
234#define OSWM_MOVE 0x0006
235#define OSWM_SIZE 0x0007
236#define OSWM_ADJUSTWINDOWPOS 0x0008
237#define OSWM_CALCVALIDRECTS 0x0009
238#define OSWM_SETWINDOWPARAMS 0x000a
239#define OSWM_QUERYWINDOWPARAMS 0x000b
240#define OSWM_HITTEST 0x000c
241#define OSWM_ACTIVATE 0x000d
242#define OSWM_SETFOCUS 0x000f
243#define OSWM_SETSELECTION 0x0010
244#define OSWM_PPAINT 0x0011
245#define OSWM_PSETFOCUS 0x0012
246#define OSWM_PSYSCOLORCHANGE 0x0013
247#define OSWM_PSIZE 0x0014
248#define OSWM_PACTIVATE 0x0015
249#define OSWM_PCONTROL 0x0016
250#define OSWM_COMMAND 0x0020
251#define OSWM_SYSCOMMAND 0x0021
252#define OSWM_HELP 0x0022
253#define OSWM_PAINT 0x0023
254#define OSWM_TIMER 0x0024
255#define OSWM_SEM1 0x0025
256#define OSWM_SEM2 0x0026
257#define OSWM_SEM3 0x0027
258#define OSWM_SEM4 0x0028
259#define OSWM_CLOSE 0x0029
260#define OSWM_QUIT 0x002a
261#define OSWM_SYSCOLORCHANGE 0x002b
262#define OSWM_SYSVALUECHANGED 0x002d
263#define OSWM_APPTERMINATENOTIFY 0x002e
264#define OSWM_PRESPARAMCHANGED 0x002f
265#define OSWM_CONTROL 0x0030
266#define OSWM_VSCROLL 0x0031
267#define OSWM_HSCROLL 0x0032
268#define OSWM_INITMENU 0x0033
269#define OSWM_MENUSELECT 0x0034
270#define OSWM_MENUEND 0x0035
271#define OSWM_DRAWITEM 0x0036
272#define OSWM_MEASUREITEM 0x0037
273#define OSWM_CONTROLPOINTER 0x0038
274#define OSWM_QUERYDLGCODE 0x003a
275#define OSWM_INITDLG 0x003b
276#define OSWM_SUBSTITUTESTRING 0x003c
277#define OSWM_MATCHMNEMONIC 0x003d
278#define OSWM_SAVEAPPLICATION 0x003e
279#define OSWM_FLASHWINDOW 0x0040
280#define OSWM_FORMATFRAME 0x0041
281#define OSWM_UPDATEFRAME 0x0042
282#define OSWM_FOCUSCHANGE 0x0043
283#define OSWM_SETBORDERSIZE 0x0044
284#define OSWM_TRACKFRAME 0x0045
285#define OSWM_MINMAXFRAME 0x0046
286#define OSWM_SETICON 0x0047
287#define OSWM_QUERYICON 0x0048
288#define OSWM_SETACCELTABLE 0x0049
289#define OSWM_QUERYACCELTABLE 0x004a
290#define OSWM_TRANSLATEACCEL 0x004b
291#define OSWM_QUERYTRACKINFO 0x004c
292#define OSWM_QUERYBORDERSIZE 0x004d
293#define OSWM_NEXTMENU 0x004e
294#define OSWM_ERASEBACKGROUND 0x004f
295#define OSWM_QUERYFRAMEINFO 0x0050
296#define OSWM_QUERYFOCUSCHAIN 0x0051
297#define OSWM_OWNERPOSCHANGE 0x0052
298#define OSWM_CALCFRAMERECT 0x0053
299#define OSWM_WINDOWPOSCHANGED 0x0055
300#define OSWM_ADJUSTFRAMEPOS 0x0056
301#define OSWM_QUERYFRAMECTLCOUNT 0x0059
302#define OSWM_QUERYHELPINFO 0x005B
303#define OSWM_SETHELPINFO 0x005C
304#define OSWM_ERROR 0x005D
305#define OSWM_REALIZEPALETTE 0x005E
306#define OSWM_RENDERFMT 0x0060
307#define OSWM_RENDERALLFMTS 0x0061
308#define OSWM_DESTROYCLIPBOARD 0x0062
309#define OSWM_PAINTCLIPBOARD 0x0063
310#define OSWM_SIZECLIPBOARD 0x0064
311#define OSWM_HSCROLLCLIPBOARD 0x0065
312#define OSWM_VSCROLLCLIPBOARD 0x0066
313#define OSWM_DRAWCLIPBOARD 0x0067
314#define OSWM_MOUSEMOVE 0x0070
315#define OSWM_BUTTON1DOWN 0x0071
316#define OSWM_BUTTON1UP 0x0072
317#define OSWM_BUTTON1DBLCLK 0x0073
318#define OSWM_BUTTON2DOWN 0x0074
319#define OSWM_BUTTON2UP 0x0075
320#define OSWM_BUTTON2DBLCLK 0x0076
321#define OSWM_BUTTON3DOWN 0x0077
322#define OSWM_BUTTON3UP 0x0078
323#define OSWM_BUTTON3DBLCLK 0x0079
324#define OSWM_CHAR 0x007a
325#define OSWM_VIOCHAR 0x007b
326#define OSWM_JOURNALNOTIFY 0x007c
327#define OSWM_MOUSEMAP 0x007D
328#define OSWM_VRNDISABLED 0x007e
329#define OSWM_VRNENABLED 0x007f
330#define OSWM_DDE_FIRST 0x00A0
331#define OSWM_DDE_INITIATE 0x00A0
332#define OSWM_DDE_REQUEST 0x00A1
333#define OSWM_DDE_ACK 0x00A2
334#define OSWM_DDE_DATA 0x00A3
335#define OSWM_DDE_ADVISE 0x00A4
336#define OSWM_DDE_UNADVISE 0x00A5
337#define OSWM_DDE_POKE 0x00A6
338#define OSWM_DDE_EXECUTE 0x00A7
339#define OSWM_DDE_TERMINATE 0x00A8
340#define OSWM_DDE_INITIATEACK 0x00A9
341#define OSWM_DDE_LAST 0x00AF
342#define OSWM_QUERYCONVERTPOS 0x00b0
343#define OSWM_DBCSFIRST 0x00b0
344#define OSWM_DBCSLAST 0x00cf
345#define OSWM_MSGBOXINIT 0x010E
346#define OSWM_MSGBOXDISMISS 0x010F
347#define OSWM_CTLCOLORCHANGE 0x0129
348#define OSWM_QUERYCTLTYPE 0x0130
349#define OSWM_EXTMOUSEFIRST 0x0410
350#define OSWM_EXTMOUSELAST 0x0419
351#define OSWM_CHORD 0x0410
352#define OSWM_BUTTON1MOTIONSTART 0x0411
353#define OSWM_BUTTON1MOTIONEND 0x0412
354#define OSWM_BUTTON1CLICK 0x0413
355#define OSWM_BUTTON2MOTIONSTART 0x0414
356#define OSWM_BUTTON2MOTIONEND 0x0415
357#define OSWM_BUTTON2CLICK 0x0416
358#define OSWM_BUTTON3MOTIONSTART 0x0417
359#define OSWM_BUTTON3MOTIONEND 0x0418
360#define OSWM_BUTTON3CLICK 0x0419
361#define OSWM_MOUSETRANSLATEFIRST 0x0420
362#define OSWM_MOUSETRANSLATELAST 0x0428
363#define OSWM_BEGINDRAG 0x0420
364#define OSWM_ENDDRAG 0x0421
365#define OSWM_SINGLESELECT 0x0422
366#define OSWM_OPEN 0x0423
367#define OSWM_CONTEXTMENU 0x0424
368#define OSWM_CONTEXTHELP 0x0425
369#define OSWM_TEXTEDIT 0x0426
370#define OSWM_BEGINSELECT 0x0427
371#define OSWM_ENDSELECT 0x0428
372#define OSWM_PICKUP 0x0429
373#define OSWM_PENFIRST 0x04C0
374#define OSWM_PENLAST 0x04FF
375#define OSWM_MMPMFIRST 0x0500
376#define OSWM_MMPMLAST 0x05FF
377#define OSWM_STDDLGFIRST 0x0600
378#define OSWM_STDDLGLAST 0x065F
379#define OSWM_BIDI_FIRST 0x0BD0
380#define OSWM_BIDI_LAST 0x0BFF
381#define OSWM_USER 0x1000
382************/
383
384#define OSWM_SYSCOMMAND 0x0021
385#define OSSC_SYSMENU 0x8007
386
387#endif
388
389#ifdef __cplusplus
390extern "C" {
391#endif
392
393void OSLibSetMenuDoubleClick(BOOL fSet);
394
395#ifdef __cplusplus
396}
397#endif
398
399#endif //__OSLIBMSG_H__
Note: See TracBrowser for help on using the repository browser.