OWLNext
7.0
Borland's Object Windows Library for the modern age
Loading...
Searching...
No Matches
windowev.h
Go to the documentation of this file.
1
//
2
/// \file
3
/// Event response table macros for windows messages
4
//
5
// Part of OWLNext - the next generation Object Windows Library
6
// Copyright (c) 1992, 1996 by Borland International, All Rights Reserved
7
// Copyright (c) 2013 Vidar Hasfjord
8
//
9
// For more information, including license details, see
10
// http://owlnext.sourceforge.net
11
//
12
13
#if !defined(OWL_WINDOWEV_H)
14
#define OWL_WINDOWEV_H
15
16
#include <
owl/private/defs.h
>
17
#if defined(BI_HAS_PRAGMA_ONCE)
18
# pragma once
19
#endif
20
21
#include <
owl/eventhan.h
>
22
23
#if OWL_EV_SIGNATURE_CHECK
24
25
//
26
/// Response table entry for raw message handling
27
/// Uses a dispatcher that just forwards WPARAM and LPARAM.
28
///
29
/// Required method signature:
30
/// TResult method(TParam1, TParam2)
31
//
32
#define EV_MESSAGE(msgId, method)\
33
OWL_ID_EV_GENERIC_(msgId, msgId, 0, method, ::owl::TDispatchRawArguments)
34
35
//
36
/// Resonse table entry for a registered message
37
///
38
/// Required method signature:
39
/// TResult method(TParam1, TParam2)
40
//
41
#define EV_REGISTERED(str, method)\
42
OWL_ID_EV_GENERIC_(WM_NULL, ::RegisterWindowMessage(str), 0, method, ::owl::TDispatchRawArguments)
43
44
//
45
/// Response table entry for a child ID notification handled at the child's parent
46
///
47
/// Required method signature:
48
/// void method()
49
//
50
#define EV_CHILD_NOTIFY(id, notifyCode, method)\
51
OWL_ID_EV_GENERIC_(WM_COMMAND, notifyCode, id, method, ::owl::TDispatchChildNotify)
52
53
//
54
/// Response table entry for a child ID notification handled at the child's parent
55
///
56
/// The notification code is passed in as an argument; this allows multiple notifications to be
57
/// handled by a single response function.
58
///
59
/// Required method signature:
60
/// void method(uint notifyCode)
61
//
62
#define EV_CHILD_NOTIFY_AND_CODE(id, notifyCode, method)\
63
OWL_ID_EV_GENERIC_(WM_COMMAND, notifyCode, id, method, ::owl::TDispatchChildNotifyWithCode)
64
65
//
66
/// Generic handler for child ID notification: rather than specify the specific notification codes
67
/// you are interested in, ALL notifications from the child are passed to the response function.
68
///
69
/// Required method signature:
70
/// void method(uint notifyCode)
71
//
72
#define EV_CHILD_NOTIFY_ALL_CODES(id, method)\
73
OWL_ID_EV_GENERIC_(WM_COMMAND, UINT_MAX, id, method, ::owl::TDispatchChildNotifyWithCode)
74
75
//
76
/// Response table entry for a child ID notification handled at the child
77
///
78
/// Required method signature:
79
/// void method()
80
//
81
#define EV_NOTIFY_AT_CHILD(notifyCode, method)\
82
OWL_ID_EV_GENERIC_(WM_COMMAND, notifyCode, UINT_MAX, method, ::owl::TDispatchChildNotify)
83
84
//
85
/// Response table entry for a menu/accelerator/push button message
86
///
87
/// Required method signature:
88
/// void method()
89
//
90
#define EV_COMMAND(id, method)\
91
OWL_ID_EV_GENERIC_(WM_COMMAND, 0, id, method, ::owl::TDispatchCommand)
92
93
//
94
/// Response table entry for a menu/accelerator/push button message
95
/// The menu id is passed in as an argument; this allows multiple commands to be handled by a
96
/// single response function.
97
///
98
/// Required method signature:
99
/// void method(uint commandId)
100
//
101
#define EV_COMMAND_AND_ID(id, method)\
102
OWL_ID_EV_GENERIC_(WM_COMMAND, 0, id, method, ::owl::TDispatchCommandWithId)
103
104
#else
105
106
//
107
/// Response table entry for raw message handling
108
/// Uses a dispatcher that just forwards WPARAM and LPARAM.
109
///
110
/// Required method signature:
111
/// TResult method(TParam1, TParam2)
112
//
113
#define EV_MESSAGE(message, method)\
114
{{static_cast<::owl::TMsgId>(message)}, 0, OWL_DISPATCH(::owl::DispatchRawArguments, method)}
115
116
//
117
/// Resonse table entry for a registered message
118
///
119
/// Required method signature:
120
/// TResult method(TParam1, TParam2)
121
//
122
#define EV_REGISTERED(str, method)\
123
EV_MESSAGE(::RegisterWindowMessage(str), method)
124
125
//
126
/// Response table entry for a child ID notification handled at the child's parent
127
///
128
/// Required method signature:
129
/// void method()
130
//
131
#define EV_CHILD_NOTIFY(id, notifyCode, method)\
132
{{static_cast<::owl::uint>(notifyCode)}, static_cast<::owl::uint>(id), OWL_DISPATCH(::owl::DispatchChildNotify, method)}
133
134
//
135
/// Response table entry for a child ID notification handled at the child's parent
136
///
137
/// The notification code is passed in as an argument; this allows multiple notifications to be
138
/// handled by a single response function.
139
///
140
/// Required method signature:
141
/// void method(uint notifyCode)
142
//
143
#define EV_CHILD_NOTIFY_AND_CODE(id, notifyCode, method)\
144
{{static_cast<::owl::uint>(notifyCode)}, static_cast<::owl::uint>(id), OWL_DISPATCH(::owl::DispatchChildNotifyWithCode, method)}
145
146
//
147
/// Generic handler for child ID notification: rather than specify the specific notification codes
148
/// you are interested in, ALL notifications from the child are passed to the response function.
149
///
150
/// Required method signature:
151
/// void method(uint notifyCode)
152
//
153
#define EV_CHILD_NOTIFY_ALL_CODES(id, method)\
154
{{UINT_MAX}, static_cast<::owl::uint>(id), OWL_DISPATCH(::owl::DispatchChildNotifyWithCode, method)}
155
156
//
157
/// Response table entry for a child ID notification handled at the child
158
///
159
/// Required method signature:
160
/// void method()
161
//
162
#define EV_NOTIFY_AT_CHILD(notifyCode, method)\
163
{{static_cast<::owl::uint>(notifyCode)}, UINT_MAX, OWL_DISPATCH(::owl::DispatchChildNotify, method)}
164
165
//
166
/// Response table entry for a menu/accelerator/push button message
167
///
168
/// Required method signature:
169
/// void method()
170
//
171
#define EV_COMMAND(id, method)\
172
{{0}, static_cast<::owl::uint>(id), OWL_DISPATCH(::owl::DispatchCommand, method)}
173
174
//
175
/// Response table entry for a menu/accelerator/push button message
176
/// The menu id is passed in as an argument; this allows multiple commands to be handled by a
177
/// single response function.
178
///
179
/// Required method signature:
180
/// void method(uint commandId)
181
//
182
#define EV_COMMAND_AND_ID(id, method)\
183
{{0}, static_cast<::owl::uint>(id), OWL_DISPATCH(::owl::DispatchCommandWithId, method)}
184
185
#endif
186
187
//
188
/// Response table entry for enabling a command
189
///
190
/// Required method signature:
191
/// void method(TCommandEnabler&)
192
//
193
#define EV_COMMAND_ENABLE(id, method)\
194
OWL_ID_EV_(WM_COMMAND_ENABLE, id, method)
195
196
//
197
/// \name Document Manager Messages
198
/// These macros handle messages generated by the document manager:
199
/// @{
200
201
#define EV_OWLDOCUMENT(id, method) OWL_ID_EV_(WM_OWLDOCUMENT, id, method)
202
#define EV_OWLVIEW(id, method) OWL_ID_EV_(WM_OWLVIEW, id, method)
203
#define EV_OWLNOTIFY(id, method) OWL_ID_EV_(WM_OWLNOTIFY, id, method)
204
#define EV_VIEWNOTIFY(id, method) EV_OWLNOTIFY(id, method)
205
206
/// @}
207
208
#define EV_WM_CHILDINVALID OWL_EV_(WM_CHILDINVALID, EvChildInvalid)
209
210
//
211
/// Response table entry for the OWL frame sizing message
212
//
213
#define EV_OWLFRAMESIZE OWL_EV_(WM_OWLFRAMESIZE, EvOwlFrameSize)
214
215
//
216
/// Response table entry for the OWL Docking message
217
//
218
#define EV_WM_OWLWINDOWDOCKED OWL_EV_(WM_OWLWINDOWDOCKED, EvOwlWindowDocked)
219
#define EV_OWLWINDOWDOCKED EV_WM_OWLWINDOWDOCKED
220
221
//
222
/// Response table entry for the OWL Help manager message
223
//
224
#define EV_OWLHELPHIT OWL_EV_(WM_OWLHELPHIT, EvHelpHit)
225
226
/// \name Standard Windows Messages
227
/// These macros handle Windows messages. To determine the name of the Windows message that
228
/// corresponds to the macro, remove the EV_ prefix. For example, WM_ACTIVATE is the name of the
229
/// Windows message that the EV_WM_ACTIVATE macro handles. These macros take no arguments. They
230
/// all assume the event handler function has a corresponding predefined name. For example, the
231
/// predefined event handler function name for WM_ACTIVATE is EvActivate.
232
///
233
/// \note Messages WM_COMMAND and WM_NOTIFY are not dispatched directly. Instead, they are handled
234
/// in the virtual functions TWindow::EvCommand and TWindow::EvNotify, respectively. There the
235
/// messages are partly decoded, identifying the notification code and sender, and then dispatched
236
/// accordingly, i.e. the response tables are searched for an entry that matches the notification
237
/// and/or sender. Response table entries for notification messages are created using separate sets
238
/// of macros, such as EV_COMMAND, EV_BN_CLICKED, EV_NM_CHAR, EV_EN_SELCHANGE. If you need to
239
/// handle WM_COMMAND or WM_NOTIFY directly, override TWindow::EvCommand or TWindow::EvNotify,
240
/// respectively.
241
/// @{
242
243
#define EV_WM_ACTIVATE OWL_EV_(WM_ACTIVATE, EvActivate)
244
#define EV_WM_ACTIVATEAPP OWL_EV_(WM_ACTIVATEAPP, EvActivateApp)
245
#define EV_WM_ASKCBFORMATNAME OWL_EV_(WM_ASKCBFORMATNAME, EvAskCBFormatName)
246
#define EV_WM_CANCELMODE OWL_EV_(WM_CANCELMODE, EvCancelMode)
247
#define EV_WM_CAPTURECHANGED OWL_EV_(WM_CAPTURECHANGED, EvCaptureChanged)
248
#define EV_WM_CHANGECBCHAIN OWL_EV_(WM_CHANGECBCHAIN, EvChangeCBChain)
249
#define EV_WM_CHAR OWL_EV_(WM_CHAR, EvChar)
250
#define EV_WM_CHARTOITEM OWL_EV_(WM_CHARTOITEM, EvCharToItem)
251
#define EV_WM_CHILDACTIVATE OWL_EV_(WM_CHILDACTIVATE, EvChildActivate)
252
#define EV_WM_CLOSE OWL_EV_(WM_CLOSE, EvClose)
253
#define EV_WM_COMPACTING OWL_EV_(WM_COMPACTING, EvCompacting)
254
#define EV_WM_COMPAREITEM OWL_EV_(WM_COMPAREITEM, EvCompareItem)
255
#define EV_WM_CONTEXTMENU OWL_EV_(WM_CONTEXTMENU, EvContextMenu)
256
#define EV_WM_COPYDATA OWL_EV_(WM_COPYDATA, EvCopyData)
257
#define EV_WM_CREATE OWL_EV_(WM_CREATE, EvCreate)
258
#define EV_WM_CTLCOLORBTN(method) OWL_EV_(WM_CTLCOLORBTN, method)
259
#define EV_WM_CTLCOLOREDIT(method) OWL_EV_(WM_CTLCOLOREDIT, method)
260
#define EV_WM_CTLCOLORDLG(method) OWL_EV_(WM_CTLCOLORDLG, method)
261
#define EV_WM_CTLCOLORLISTBOX(method) OWL_EV_(WM_CTLCOLORLISTBOX, method)
262
263
#if defined(OWL5_COMPAT)
264
265
//
266
/// This macro is deprecated.
267
/// \sa TDispatch<WM_CTLCOLORMSGBOX>.
268
//
269
#define EV_WM_CTLCOLORMSGBOX(method) OWL_EV_(WM_CTLCOLORMSGBOX, method)
270
271
#endif
272
273
#define EV_WM_CTLCOLORSCROLLBAR(method) OWL_EV_(WM_CTLCOLORSCROLLBAR, method)
274
#define EV_WM_CTLCOLORSTATIC(method) OWL_EV_(WM_CTLCOLORSTATIC, method)
275
#define EV_WM_CUT OWL_EV_(WM_CUT, EvCut)
276
#define EV_WM_DEADCHAR OWL_EV_(WM_DEADCHAR, EvDeadChar)
277
#define EV_WM_DELETEITEM OWL_EV_(WM_DELETEITEM, EvDeleteItem)
278
#define EV_WM_DESTROY OWL_EV_(WM_DESTROY, EvDestroy)
279
#define EV_WM_DESTROYCLIPBOARD OWL_EV_(WM_DESTROYCLIPBOARD, EvDestroyClipboard)
280
#define EV_WM_DEVICECHANGE OWL_EV_(WM_DEVICECHANGE, EvDeviceChange)
281
#define EV_WM_DEVMODECHANGE OWL_EV_(WM_DEVMODECHANGE, EvDevModeChange)
282
#define EV_WM_DISPLAYCHANGE OWL_EV_(WM_DISPLAYCHANGE, EvDisplayChange)
283
#define EV_WM_DRAWCLIPBOARD OWL_EV_(WM_DRAWCLIPBOARD, EvDrawClipboard)
284
#define EV_WM_DRAWITEM OWL_EV_(WM_DRAWITEM, EvDrawItem)
285
#define EV_WM_DROPFILES OWL_EV_(WM_DROPFILES, EvDropFiles)
286
#define EV_WM_ENABLE OWL_EV_(WM_ENABLE, EvEnable)
287
#define EV_WM_ENDSESSION OWL_EV_(WM_ENDSESSION, EvEndSession)
288
#define EV_WM_ENTERIDLE OWL_EV_(WM_ENTERIDLE, EvEnterIdle)
289
#define EV_WM_ENTERMENULOOP OWL_EV_(WM_ENTERMENULOOP, EvEnterMenuLoop)
290
#define EV_WM_ENTERSIZEMOVE OWL_EV_(WM_ENTERSIZEMOVE, EvEnterSizeMove)
291
#define EV_WM_ERASEBKGND OWL_EV_(WM_ERASEBKGND, EvEraseBkgnd)
292
#define EV_WM_EXITMENULOOP OWL_EV_(WM_EXITMENULOOP, EvExitMenuLoop)
293
#define EV_WM_EXITSIZEMOVE OWL_EV_(WM_EXITSIZEMOVE, EvExitSizeMove)
294
#define EV_WM_FONTCHANGE OWL_EV_(WM_FONTCHANGE, EvFontChange)
295
#define EV_WM_GETDLGCODE OWL_EV_(WM_GETDLGCODE, EvGetDlgCode)
296
#define EV_WM_GETFONT OWL_EV_(WM_GETFONT, EvGetFont)
297
#define EV_WM_GETICON OWL_EV_(WM_GETICON, EvGetIcon)
298
#define EV_WM_GETMINMAXINFO OWL_EV_(WM_GETMINMAXINFO, EvGetMinMaxInfo)
299
#define EV_WM_GETTEXT OWL_EV_(WM_GETTEXT, EvGetText)
300
#define EV_WM_GETTEXTLENGTH OWL_EV_(WM_GETTEXTLENGTH, EvGetTextLength)
301
#define EV_WM_HELP OWL_EV_(WM_HELP, EvHelp)
302
#define EV_WM_HOTKEY OWL_EV_(WM_HOTKEY, EvHotKey)
303
#define EV_WM_HSCROLL OWL_EV_(WM_HSCROLL, EvHScroll)
304
#define EV_WM_HSCROLLCLIPBOARD OWL_EV_(WM_HSCROLLCLIPBOARD, EvHScrollClipboard)
305
#define EV_WM_INITMENU OWL_EV_(WM_INITMENU, EvInitMenu)
306
#define EV_WM_INITMENUPOPUP OWL_EV_(WM_INITMENUPOPUP, EvInitMenuPopup)
307
#define EV_WM_INPUTLANGCHANGE OWL_EV_(WM_INPUTLANGCHANGE, EvInputLangChange)
308
#define EV_WM_INPUTLANGCHANGEREQUEST OWL_EV_(WM_INPUTLANGCHANGEREQUEST, EvInputLangChangeRequest)
309
#define EV_WM_KEYDOWN OWL_EV_(WM_KEYDOWN, EvKeyDown)
310
#define EV_WM_KEYUP OWL_EV_(WM_KEYUP, EvKeyUp)
311
#define EV_WM_KILLFOCUS OWL_EV_(WM_KILLFOCUS, EvKillFocus)
312
#define EV_WM_LBUTTONDBLCLK OWL_EV_(WM_LBUTTONDBLCLK, EvLButtonDblClk)
313
#define EV_WM_LBUTTONDOWN OWL_EV_(WM_LBUTTONDOWN, EvLButtonDown)
314
#define EV_WM_LBUTTONUP OWL_EV_(WM_LBUTTONUP, EvLButtonUp)
315
#define EV_WM_MBUTTONDBLCLK OWL_EV_(WM_MBUTTONDBLCLK, EvMButtonDblClk)
316
#define EV_WM_MBUTTONDOWN OWL_EV_(WM_MBUTTONDOWN, EvMButtonDown)
317
#define EV_WM_MBUTTONUP OWL_EV_(WM_MBUTTONUP, EvMButtonUp)
318
#define EV_WM_MDIACTIVATE OWL_EV_(WM_MDIACTIVATE, EvMDIActivate)
319
#define EV_WM_MDICASCADE OWL_EV_(WM_MDICASCADE, EvMDICascade)
320
#define EV_WM_MDICREATE OWL_EV_(WM_MDICREATE, EvMDICreate)
321
#define EV_WM_MDIDESTROY OWL_EV_(WM_MDIDESTROY, EvMDIDestroy)
322
#define EV_WM_MEASUREITEM OWL_EV_(WM_MEASUREITEM, EvMeasureItem)
323
#define EV_WM_MENUCHAR OWL_EV_(WM_MENUCHAR, EvMenuChar)
324
#define EV_WM_MENUSELECT OWL_EV_(WM_MENUSELECT, EvMenuSelect)
325
#define EV_WM_MOUSEACTIVATE OWL_EV_(WM_MOUSEACTIVATE, EvMouseActivate)
326
#define EV_WM_MOUSEHOVER OWL_EV_(WM_MOUSEHOVER, EvMouseHover)
327
#define EV_WM_MOUSEHWHEEL OWL_EV_(WM_MOUSEHWHEEL, EvMouseHWheel)
328
#define EV_WM_MOUSELEAVE OWL_EV_(WM_MOUSELEAVE, EvMouseLeave)
329
#define EV_WM_MOUSEMOVE OWL_EV_(WM_MOUSEMOVE, EvMouseMove)
330
#define EV_WM_MOUSEWHEEL OWL_EV_(WM_MOUSEWHEEL, EvMouseWheel)
331
#define EV_WM_MOVE OWL_EV_(WM_MOVE, EvMove)
332
#define EV_WM_MOVING OWL_EV_(WM_MOVING, EvMoving)
333
#define EV_WM_NCACTIVATE OWL_EV_(WM_NCACTIVATE, EvNCActivate)
334
#define EV_WM_NCCALCSIZE OWL_EV_(WM_NCCALCSIZE, EvNCCalcSize)
335
#define EV_WM_NCCREATE OWL_EV_(WM_NCCREATE, EvNCCreate)
336
#define EV_WM_NCDESTROY OWL_EV_(WM_NCDESTROY, EvNCDestroy)
337
#define EV_WM_NCHITTEST OWL_EV_(WM_NCHITTEST, EvNCHitTest)
338
#define EV_WM_NCLBUTTONDBLCLK OWL_EV_(WM_NCLBUTTONDBLCLK, EvNCLButtonDblClk)
339
#define EV_WM_NCLBUTTONDOWN OWL_EV_(WM_NCLBUTTONDOWN, EvNCLButtonDown)
340
#define EV_WM_NCLBUTTONUP OWL_EV_(WM_NCLBUTTONUP, EvNCLButtonUp)
341
#define EV_WM_NCMBUTTONDBLCLK OWL_EV_(WM_NCMBUTTONDBLCLK, EvNCMButtonDblClk)
342
#define EV_WM_NCMBUTTONDOWN OWL_EV_(WM_NCMBUTTONDOWN, EvNCMButtonDown)
343
#define EV_WM_NCMBUTTONUP OWL_EV_(WM_NCMBUTTONUP, EvNCMButtonUp)
344
#define EV_WM_NCMOUSEHOVER OWL_EV_(WM_NCMOUSEHOVER, EvNCMouseHover)
345
#define EV_WM_NCMOUSELEAVE OWL_EV_(WM_NCMOUSELEAVE, EvNCMouseLeave)
346
#define EV_WM_NCMOUSEMOVE OWL_EV_(WM_NCMOUSEMOVE, EvNCMouseMove)
347
#define EV_WM_NCPAINT OWL_EV_(WM_NCPAINT, EvNCPaint)
348
#define EV_WM_NCRBUTTONDBLCLK OWL_EV_(WM_NCRBUTTONDBLCLK, EvNCRButtonDblClk)
349
#define EV_WM_NCRBUTTONDOWN OWL_EV_(WM_NCRBUTTONDOWN, EvNCRButtonDown)
350
#define EV_WM_NCRBUTTONUP OWL_EV_(WM_NCRBUTTONUP, EvNCRButtonUp)
351
#define EV_WM_NEXTDLGCTL OWL_EV_(WM_NEXTDLGCTL, EvNextDlgCtl)
352
#define EV_WM_NEXTMENU OWL_EV_(WM_NEXTMENU, EvNextMenu)
353
#define EV_WM_PAINT OWL_EV_(WM_PAINT, EvPaint)
354
#define EV_WM_PAINTCLIPBOARD OWL_EV_(WM_PAINTCLIPBOARD, EvPaintClipboard)
355
#define EV_WM_PALETTECHANGED OWL_EV_(WM_PALETTECHANGED, EvPaletteChanged)
356
#define EV_WM_PALETTEISCHANGING OWL_EV_(WM_PALETTEISCHANGING, EvPaletteIsChanging)
357
#define EV_WM_PARENTNOTIFY OWL_EV_(WM_PARENTNOTIFY, EvParentNotify)
358
#define EV_WM_PASTE OWL_EV_(WM_PASTE, EvPaste)
359
#define EV_WM_POWERBROADCAST OWL_EV_(WM_POWERBROADCAST, EvPowerBroadCast)
360
#define EV_WM_PRINT OWL_EV_(WM_PRINT, EvPrint)
361
#define EV_WM_PRINTCLIENT OWL_EV_(WM_PRINTCLIENT, EvPrintClient)
362
#define EV_WM_QUERYDRAGICON OWL_EV_(WM_QUERYDRAGICON, EvQueryDragIcon)
363
#define EV_WM_QUERYENDSESSION OWL_EV_(WM_QUERYENDSESSION, EvQueryEndSession)
364
#define EV_WM_QUERYNEWPALETTE OWL_EV_(WM_QUERYNEWPALETTE, EvQueryNewPalette)
365
#define EV_WM_QUERYOPEN OWL_EV_(WM_QUERYOPEN, EvQueryOpen)
366
#define EV_WM_QUEUESYNC OWL_EV_(WM_QUEUESYNC, EvQueueSync)
367
#define EV_WM_RBUTTONDBLCLK OWL_EV_(WM_RBUTTONDBLCLK, EvRButtonDblClk)
368
#define EV_WM_RBUTTONDOWN OWL_EV_(WM_RBUTTONDOWN, EvRButtonDown)
369
#define EV_WM_RBUTTONUP OWL_EV_(WM_RBUTTONUP, EvRButtonUp)
370
#define EV_WM_RENDERALLFORMATS OWL_EV_(WM_RENDERALLFORMATS, EvRenderAllFormats)
371
#define EV_WM_RENDERFORMAT OWL_EV_(WM_RENDERFORMAT, EvRenderFormat)
372
#define EV_WM_SETCURSOR OWL_EV_(WM_SETCURSOR, EvSetCursor)
373
#define EV_WM_SETICON OWL_EV_(WM_SETICON, EvSetIcon)
374
#define EV_WM_SETFOCUS OWL_EV_(WM_SETFOCUS, EvSetFocus)
375
#define EV_WM_SETFONT OWL_EV_(WM_SETFONT, EvSetFont)
376
#define EV_WM_SETREDRAW OWL_EV_(WM_SETREDRAW, EvSetRedraw)
377
#define EV_WM_SETTEXT OWL_EV_(WM_SETTEXT, EvSetText)
378
#define EV_WM_SETTINGCHANGE OWL_EV_(WM_SETTINGCHANGE, EvSettingChange)
379
#define EV_WM_SHOWWINDOW OWL_EV_(WM_SHOWWINDOW, EvShowWindow)
380
#define EV_WM_SIZE OWL_EV_(WM_SIZE, EvSize)
381
#define EV_WM_SIZECLIPBOARD OWL_EV_(WM_SIZECLIPBOARD, EvSizeClipboard)
382
#define EV_WM_SIZING OWL_EV_(WM_SIZING, EvSizing)
383
#define EV_WM_SPOOLERSTATUS OWL_EV_(WM_SPOOLERSTATUS, EvSpoolerStatus)
384
#define EV_WM_STYLECHANGED OWL_EV_(WM_STYLECHANGED, EvStyleChanged)
385
#define EV_WM_STYLECHANGING OWL_EV_(WM_STYLECHANGING, EvStyleChanging)
386
#define EV_WM_SYSCHAR OWL_EV_(WM_SYSCHAR, EvSysChar)
387
#define EV_WM_SYSCOLORCHANGE OWL_EV_(WM_SYSCOLORCHANGE, EvSysColorChange)
388
#define EV_WM_SYSCOMMAND OWL_EV_(WM_SYSCOMMAND, EvSysCommand)
389
#define EV_WM_SYSDEADCHAR OWL_EV_(WM_SYSDEADCHAR, EvSysDeadChar)
390
#define EV_WM_SYSKEYDOWN OWL_EV_(WM_SYSKEYDOWN, EvSysKeyDown)
391
#define EV_WM_SYSKEYUP OWL_EV_(WM_SYSKEYUP, EvSysKeyUp)
392
#define EV_WM_TCARD OWL_EV_(WM_TCARD, EvTCard)
393
#define EV_WM_THEMECHANGED OWL_EV_(WM_THEMECHANGED, EvThemeChanged)
394
#define EV_WM_TIMECHANGE OWL_EV_(WM_TIMECHANGE, EvTimeChange)
395
#define EV_WM_TIMER OWL_EV_(WM_TIMER, EvTimer)
396
#define EV_WM_UNDO OWL_EV_(WM_UNDO, EvUndo)
397
#define EV_WM_USERCHANGED OWL_EV_(WM_USERCHANGED, EvUserChanged)
398
#define EV_WM_VKEYTOITEM OWL_EV_(WM_VKEYTOITEM, EvVKeyToItem)
399
#define EV_WM_VSCROLL OWL_EV_(WM_VSCROLL, EvVScroll)
400
#define EV_WM_VSCROLLCLIPBOARD OWL_EV_(WM_VSCROLLCLIPBOARD, EvVScrollClipboard)
401
#define EV_WM_WINDOWPOSCHANGED OWL_EV_(WM_WINDOWPOSCHANGED, EvWindowPosChanged)
402
#define EV_WM_WINDOWPOSCHANGING OWL_EV_(WM_WINDOWPOSCHANGING, EvWindowPosChanging)
403
404
#if defined(OWL5_COMPAT)
405
406
//
407
/// The WM_CTLCOLOR is an obsolete Win16 message, superceded by the more specific messages
408
/// WM_CTLCOLORBTN etc. But for backwards compatibility we simulate an entry for it here;
409
/// implemented by directing all the new messages to the same handler.
410
//
411
#define EV_WM_CTLCOLOR\
412
EV_WM_CTLCOLORBTN(EvCtlColor),\
413
EV_WM_CTLCOLOREDIT(EvCtlColor),\
414
EV_WM_CTLCOLORDLG(EvCtlColor),\
415
EV_WM_CTLCOLORLISTBOX(EvCtlColor),\
416
EV_WM_CTLCOLORMSGBOX(EvCtlColor),\
417
EV_WM_CTLCOLORSCROLLBAR(EvCtlColor),\
418
EV_WM_CTLCOLORSTATIC(EvCtlColor)
419
420
//
421
// WM_POWER is an obsolete Win16 message. Applications should use the WM_POWERBROADCAST message.
422
//
423
#define EV_WM_POWER OWL_EV_(WM_POWER, EvPower)
424
425
//
426
// WM_SETTINGCHANGE supercedes WM_WININICHANGE.
427
// See Decode_WM_WININICHANGE.
428
//
429
#define EV_WM_WININICHANGE\
430
{{WM_WININICHANGE}, 0, OWL_DISPATCH(::owl::Decode_WM_WININICHANGE, EvWinIniChange)}
431
432
#endif
433
434
/// @}
435
/// \name Dialog messages
436
/// @{
437
438
#define EV_DM_GETDEFID OWL_EV_(DM_GETDEFID, EvGetDefId)
439
#define EV_DM_SETDEFID OWL_EV_(DM_SETDEFID, EvSetDefId)
440
#define EV_DM_REPOSITION OWL_EV_(DM_REPOSITION, EvReposition)
441
442
/// @}
443
/// \name Button Notification Messages
444
/// @{
445
446
#define EV_BN_CLICKED(id, method) EV_CHILD_NOTIFY(id, BN_CLICKED, method)
447
#define EV_BN_DISABLE(id, method) EV_CHILD_NOTIFY(id, BN_DISABLE, method)
448
#define EV_BN_DOUBLECLICKED(id, method) EV_CHILD_NOTIFY(id, BN_DOUBLECLICKED, method)
449
#define EV_BN_HILITE(id, method) EV_CHILD_NOTIFY(id, BN_HILITE, method)
450
#define EV_BN_PAINT(id, method) EV_CHILD_NOTIFY(id, BN_PAINT, method)
451
#define EV_BN_UNHILITE(id, method) EV_CHILD_NOTIFY(id, BN_UNHILITE, method)
452
#define EV_BN_KILLFOCUS(id, method) EV_CHILD_NOTIFY(id, BN_KILLFOCUS, method)
453
#define EV_BN_SETFOCUS(id, method) EV_CHILD_NOTIFY(id, BN_SETFOCUS, method)
454
455
/// @}
456
/// \name Combo Box Notification Messages
457
/// @{
458
459
#define EV_CBN_CLOSEUP(id, method) EV_CHILD_NOTIFY(id, CBN_CLOSEUP, method)
460
#define EV_CBN_DBLCLK(id, method) EV_CHILD_NOTIFY(id, CBN_DBLCLK, method)
461
#define EV_CBN_DROPDOWN(id, method) EV_CHILD_NOTIFY(id, CBN_DROPDOWN, method)
462
#define EV_CBN_EDITCHANGE(id, method) EV_CHILD_NOTIFY(id, CBN_EDITCHANGE, method)
463
#define EV_CBN_EDITUPDATE(id, method) EV_CHILD_NOTIFY(id, CBN_EDITUPDATE, method)
464
#define EV_CBN_ERRSPACE(id, method) EV_CHILD_NOTIFY(id, CBN_ERRSPACE, method)
465
#define EV_CBN_KILLFOCUS(id, method) EV_CHILD_NOTIFY(id, CBN_KILLFOCUS, method)
466
#define EV_CBN_SELCHANGE(id, method) EV_CHILD_NOTIFY(id, CBN_SELCHANGE, method)
467
#define EV_CBN_SELENDCANCEL(id, method) EV_CHILD_NOTIFY(id, CBN_SELENDCANCEL, method)
468
#define EV_CBN_SELENDOK(id, method) EV_CHILD_NOTIFY(id, CBN_SELENDOK, method)
469
#define EV_CBN_SETFOCUS(id, method) EV_CHILD_NOTIFY(id, CBN_SETFOCUS, method)
470
471
/// @}
472
/// \name Edit Control Notification Messages
473
/// @{
474
475
#define EV_EN_CHANGE(id, method) EV_CHILD_NOTIFY(id, EN_CHANGE, method)
476
#define EV_EN_ERRSPACE(id, method) EV_CHILD_NOTIFY(id, EN_ERRSPACE, method)
477
#define EV_EN_HSCROLL(id, method) EV_CHILD_NOTIFY(id, EN_HSCROLL, method)
478
#define EV_EN_KILLFOCUS(id, method) EV_CHILD_NOTIFY(id, EN_KILLFOCUS, method)
479
#define EV_EN_MAXTEXT(id, method) EV_CHILD_NOTIFY(id, EN_MAXTEXT, method)
480
#define EV_EN_SETFOCUS(id, method) EV_CHILD_NOTIFY(id, EN_SETFOCUS, method)
481
#define EV_EN_UPDATE(id, method) EV_CHILD_NOTIFY(id, EN_UPDATE, method)
482
#define EV_EN_VSCROLL(id, method) EV_CHILD_NOTIFY(id, EN_VSCROLL, method)
483
484
/// @}
485
/// \name List Box Notification Messages
486
/// @{
487
488
#define EV_LBN_DBLCLK(id, method) EV_CHILD_NOTIFY(id, LBN_DBLCLK, method)
489
#define EV_LBN_ERRSPACE(id, method) EV_CHILD_NOTIFY(id, LBN_ERRSPACE, method)
490
#define EV_LBN_KILLFOCUS(id, method) EV_CHILD_NOTIFY(id, LBN_KILLFOCUS, method)
491
#define EV_LBN_SELCANCEL(id, method) EV_CHILD_NOTIFY(id, LBN_SELCANCEL, method)
492
#define EV_LBN_SELCHANGE(id, method) EV_CHILD_NOTIFY(id, LBN_SELCHANGE, method)
493
#define EV_LBN_SETFOCUS(id, method) EV_CHILD_NOTIFY(id, LBN_SETFOCUS, method)
494
495
/// @}
496
/// \name Scroll Bar Notification Messages
497
/// @{
498
499
#define EV_SB_LINEDOWN(id, method) EV_CHILD_NOTIFY(id, SB_LINEDOWN, method)
500
#define EV_SB_LINEUP(id, method) EV_CHILD_NOTIFY(id, SB_LINEUP, method)
501
#define EV_SB_PAGEDOWN(id, method) EV_CHILD_NOTIFY(id, SB_PAGEDOWN, method)
502
#define EV_SB_PAGEUP(id, method) EV_CHILD_NOTIFY(id, SB_PAGEUP, method)
503
#define EV_SB_TOP(id, method) EV_CHILD_NOTIFY(id, SB_TOP, method)
504
#define EV_SB_BOTTOM(id, method) EV_CHILD_NOTIFY(id, SB_BOTTOM, method)
505
#define EV_SB_THUMBPOSITION(id, method) EV_CHILD_NOTIFY(id, SB_THUMBPOSITION, method)
506
#define EV_SB_ENDSCROLL(id, method) EV_CHILD_NOTIFY(id, SB_ENDSCROLL, method)
507
#define EV_SB_BEGINTRACK(id, method) EV_CHILD_NOTIFY(id, 9, method)
508
509
/// @}
510
/// \name Static Control Notification Messages
511
/// \note These notifications are only sent if the control has the SS_NOTIFY style.
512
/// @{
513
514
#define EV_STN_DBLCLK(id, method) EV_CHILD_NOTIFY(id, STN_DBLCLK, method)
515
#define EV_STN_CLICKED(id, method) EV_CHILD_NOTIFY(id, STN_CLICKED, method)
516
#define EV_STN_DISABLE(id, method) EV_CHILD_NOTIFY(id, STN_DISABLE, method)
517
#define EV_STN_ENABLE(id, method) EV_CHILD_NOTIFY(id, STN_ENABLE, method)
518
519
/// @}
520
521
#endif
eventhan.h
Definition of TEventHandler and related classes & macros.
defs.h
include
owl
windowev.h
Generated by
1.10.0