OWLNext    7.0
Borland's Object Windows Library for the modern age
Loading...
Searching...
No Matches
dispatch.h File Reference

Dispatch functions (crackers) to crack a Windows message and pass control to a member function via a pointer (Handler). More...

#include <owl/private/defs.h>
#include <owl/defs.h>
#include <owl/geometry.h>
#include <owl/wsyscls.h>
#include <windowsx.h>
#include <dbt.h>

Go to the source code of this file.

Classes

struct  owl::TDispatch< WM_ACTIVATE >
struct  owl::TDispatch< WM_ACTIVATEAPP >
struct  owl::TDispatch< WM_ASKCBFORMATNAME >
struct  owl::TDispatch< WM_CANCELMODE >
struct  owl::TDispatch< WM_CAPTURECHANGED >
struct  owl::TDispatch< WM_CHANGECBCHAIN >
struct  owl::TDispatch< WM_CHAR >
struct  owl::TDispatch< WM_CHARTOITEM >
struct  owl::TDispatch< WM_CHILDACTIVATE >
struct  owl::TDispatch< WM_CLOSE >
struct  owl::TDispatch< WM_COMPACTING >
struct  owl::TDispatch< WM_COMPAREITEM >
struct  owl::TDispatch< WM_CONTEXTMENU >
struct  owl::TDispatch< WM_COPYDATA >
struct  owl::TDispatch< WM_CREATE >
struct  owl::TDispatch< WM_CTLCOLORBTN >
struct  owl::TDispatch< WM_CTLCOLOREDIT >
struct  owl::TDispatch< WM_CTLCOLORDLG >
struct  owl::TDispatch< WM_CTLCOLORLISTBOX >
struct  owl::TDispatch< WM_CTLCOLORSCROLLBAR >
struct  owl::TDispatch< WM_CTLCOLORSTATIC >
struct  owl::TDispatch< WM_CUT >
struct  owl::TDispatch< WM_DEADCHAR >
struct  owl::TDispatch< WM_DELETEITEM >
struct  owl::TDispatch< WM_DESTROY >
struct  owl::TDispatch< WM_DESTROYCLIPBOARD >
struct  owl::TDispatch< WM_DEVICECHANGE >
struct  owl::TDispatch< WM_DEVMODECHANGE >
struct  owl::TDispatch< WM_DISPLAYCHANGE >
struct  owl::TDispatch< WM_DRAWCLIPBOARD >
struct  owl::TDispatch< WM_DRAWITEM >
struct  owl::TDispatch< WM_DROPFILES >
struct  owl::TDispatch< WM_ENABLE >
struct  owl::TDispatch< WM_ENDSESSION >
struct  owl::TDispatch< WM_ENTERIDLE >
struct  owl::TDispatch< WM_ENTERMENULOOP >
struct  owl::TDispatch< WM_ENTERSIZEMOVE >
struct  owl::TDispatch< WM_ERASEBKGND >
struct  owl::TDispatch< WM_EXITMENULOOP >
struct  owl::TDispatch< WM_EXITSIZEMOVE >
struct  owl::TDispatch< WM_FONTCHANGE >
struct  owl::TDispatch< WM_GETDLGCODE >
struct  owl::TDispatch< WM_GETFONT >
struct  owl::TDispatch< WM_GETICON >
struct  owl::TDispatch< WM_GETMINMAXINFO >
struct  owl::TDispatch< WM_GETTEXT >
struct  owl::TDispatch< WM_GETTEXTLENGTH >
struct  owl::TDispatch< WM_HELP >
struct  owl::TDispatch< WM_HOTKEY >
struct  owl::TDispatch< WM_HSCROLL >
struct  owl::TDispatch< WM_HSCROLLCLIPBOARD >
struct  owl::TDispatch< WM_INITMENU >
struct  owl::TDispatch< WM_INITMENUPOPUP >
struct  owl::TDispatch< WM_INPUTLANGCHANGE >
struct  owl::TDispatch< WM_INPUTLANGCHANGEREQUEST >
struct  owl::TDispatch< WM_KEYDOWN >
struct  owl::TDispatch< WM_KEYUP >
struct  owl::TDispatch< WM_KILLFOCUS >
struct  owl::TDispatch< WM_LBUTTONDBLCLK >
struct  owl::TDispatch< WM_LBUTTONDOWN >
struct  owl::TDispatch< WM_LBUTTONUP >
struct  owl::TDispatch< WM_MBUTTONDBLCLK >
struct  owl::TDispatch< WM_MBUTTONDOWN >
struct  owl::TDispatch< WM_MBUTTONUP >
struct  owl::TDispatch< WM_MDIACTIVATE >
struct  owl::TDispatch< WM_MDICASCADE >
struct  owl::TDispatch< WM_MDICREATE >
struct  owl::TDispatch< WM_MDIDESTROY >
struct  owl::TDispatch< WM_MEASUREITEM >
struct  owl::TDispatch< WM_MENUCHAR >
struct  owl::TDispatch< WM_MENUSELECT >
struct  owl::TDispatch< WM_MOUSEACTIVATE >
struct  owl::TDispatch< WM_MOUSEHOVER >
struct  owl::TDispatch< WM_MOUSEHWHEEL >
struct  owl::TDispatch< WM_MOUSELEAVE >
struct  owl::TDispatch< WM_MOUSEMOVE >
struct  owl::TDispatch< WM_MOUSEWHEEL >
struct  owl::TDispatch< WM_MOVE >
struct  owl::TDispatch< WM_MOVING >
struct  owl::TDispatch< WM_NCACTIVATE >
struct  owl::TDispatch< WM_NCCALCSIZE >
struct  owl::TDispatch< WM_NCCREATE >
struct  owl::TDispatch< WM_NCDESTROY >
struct  owl::TDispatch< WM_NCHITTEST >
struct  owl::TDispatch< WM_NCLBUTTONDBLCLK >
struct  owl::TDispatch< WM_NCLBUTTONDOWN >
struct  owl::TDispatch< WM_NCLBUTTONUP >
struct  owl::TDispatch< WM_NCMBUTTONDBLCLK >
struct  owl::TDispatch< WM_NCMBUTTONDOWN >
struct  owl::TDispatch< WM_NCMBUTTONUP >
struct  owl::TDispatch< WM_NCMOUSEHOVER >
struct  owl::TDispatch< WM_NCMOUSELEAVE >
struct  owl::TDispatch< WM_NCMOUSEMOVE >
struct  owl::TDispatch< WM_NCPAINT >
struct  owl::TDispatch< WM_NCRBUTTONDBLCLK >
struct  owl::TDispatch< WM_NCRBUTTONDOWN >
struct  owl::TDispatch< WM_NCRBUTTONUP >
struct  owl::TDispatch< WM_NEXTDLGCTL >
struct  owl::TDispatch< WM_NEXTMENU >
struct  owl::TDispatch< WM_PAINT >
struct  owl::TDispatch< WM_PAINTCLIPBOARD >
struct  owl::TDispatch< WM_PALETTECHANGED >
struct  owl::TDispatch< WM_PALETTEISCHANGING >
struct  owl::TDispatch< WM_PARENTNOTIFY >
struct  owl::TDispatch< WM_PARENTNOTIFY >::TArgs
 Base class for the parameter to the WM_PARENTNOTIFY handler. More...
struct  owl::TDispatch< WM_PARENTNOTIFY >::TChildInfoArgs
 Parameter package for the WM_PARENTNOTIFY handler. More...
struct  owl::TDispatch< WM_PARENTNOTIFY >::TMouseInfoArgs
 Parameter package for the WM_PARENTNOTIFY handler. More...
struct  owl::TDispatch< WM_PASTE >
struct  owl::TDispatch< WM_POWERBROADCAST >
struct  owl::TDispatch< WM_PRINT >
struct  owl::TDispatch< WM_PRINTCLIENT >
struct  owl::TDispatch< WM_QUERYDRAGICON >
struct  owl::TDispatch< WM_QUERYENDSESSION >
struct  owl::TDispatch< WM_QUERYNEWPALETTE >
struct  owl::TDispatch< WM_QUERYOPEN >
struct  owl::TDispatch< WM_QUEUESYNC >
struct  owl::TDispatch< WM_RBUTTONDBLCLK >
struct  owl::TDispatch< WM_RBUTTONDOWN >
struct  owl::TDispatch< WM_RBUTTONUP >
struct  owl::TDispatch< WM_RENDERALLFORMATS >
struct  owl::TDispatch< WM_RENDERFORMAT >
struct  owl::TDispatch< WM_SETCURSOR >
struct  owl::TDispatch< WM_SETICON >
struct  owl::TDispatch< WM_SETFOCUS >
struct  owl::TDispatch< WM_SETFONT >
struct  owl::TDispatch< WM_SETREDRAW >
struct  owl::TDispatch< WM_SETTEXT >
struct  owl::TDispatch< WM_SETTINGCHANGE >
struct  owl::TDispatch< WM_SHOWWINDOW >
struct  owl::TDispatch< WM_SIZE >
struct  owl::TDispatch< WM_SIZECLIPBOARD >
struct  owl::TDispatch< WM_SIZING >
struct  owl::TDispatch< WM_SPOOLERSTATUS >
struct  owl::TDispatch< WM_STYLECHANGED >
struct  owl::TDispatch< WM_STYLECHANGING >
struct  owl::TDispatch< WM_SYSCHAR >
struct  owl::TDispatch< WM_SYSCOLORCHANGE >
struct  owl::TDispatch< WM_SYSCOMMAND >
struct  owl::TDispatch< WM_SYSDEADCHAR >
struct  owl::TDispatch< WM_SYSKEYDOWN >
struct  owl::TDispatch< WM_SYSKEYUP >
struct  owl::TDispatch< WM_TCARD >
struct  owl::TDispatch< WM_THEMECHANGED >
struct  owl::TDispatch< WM_TIMECHANGE >
struct  owl::TDispatch< WM_TIMER >
struct  owl::TDispatch< WM_UNDO >
struct  owl::TDispatch< WM_USERCHANGED >
struct  owl::TDispatch< WM_VKEYTOITEM >
struct  owl::TDispatch< WM_VSCROLL >
struct  owl::TDispatch< WM_VSCROLLCLIPBOARD >
struct  owl::TDispatch< WM_WINDOWPOSCHANGED >
struct  owl::TDispatch< WM_WINDOWPOSCHANGING >
struct  owl::TDispatch< DM_GETDEFID >
struct  owl::TDispatch< DM_REPOSITION >
struct  owl::TDispatch< DM_SETDEFID >
struct  owl::TDispatch< WM_CHILDINVALID >
struct  owl::TDispatch< WM_COMMAND_ENABLE >
struct  owl::TDispatch< WM_OWLCANCLOSE >
struct  owl::TDispatch< WM_OWLCREATETTIP >
struct  owl::TDispatch< WM_OWLFRAMESIZE >
struct  owl::TDispatch< WM_OWLHELPHIT >
struct  owl::TDispatch< WM_OWLPREPROCMENU >
struct  owl::TDispatch< WM_OWLWAKEUP >
struct  owl::TDispatch< WM_OWLWINDOWDOCKED >

Namespaces

namespace  owl
 Object Windows Library (OWLNext Core).

Macros

#define OWL_NEW_RESPONSE_TABLE   1
#define OWL_DISPATCH(dispatch, method)
#define OWL_EV_SIGNATURE_CHECK   1
#define WM_OWLLAST   0x7FFF
#define WM_OWLFIRST   (WM_OWLLAST - 0x03FF)
#define WM_COMMAND_ENABLE   (WM_OWLLAST - 0)
#define WM_CHILDINVALID   (WM_OWLLAST - 1)
#define WM_OWLDOCUMENT   (WM_OWLLAST - 2)
#define WM_OWLVIEW   (WM_OWLLAST - 3)
#define WM_OWLNOTIFY   (WM_OWLLAST - 4)
#define WM_OWLPREPROCMENU   (WM_OWLLAST - 5)
#define WM_OWLCANCLOSE   (WM_OWLLAST - 6)
#define WM_VBXINITFORM   (WM_OWLLAST - 7)
#define WM_VBXNAME   (WM_OWLLAST - 8)
#define WM_VBXBASE   (WM_OWLLAST - 8 - 256)
#define WM_OWLWAKEUP   (WM_VBXBASE - 1)
#define WM_OWLFRAMESIZE   (WM_VBXBASE - 2)
 Notify children of frame resizing.
#define WM_OWLSLIPDBLCLK   (WM_VBXBASE - 3)
 Notify parent of user dblclick of edge slip.
#define WM_OWLWINDOWDOCKED   (WM_VBXBASE - 4)
 Notify window it was [un]docked/reparented.
#define WM_OWLCREATETTIP   (WM_VBXBASE - 5)
 Notify gadget window to create tooltips.
#define WM_OWLHELPHIT   (WM_VBXBASE - 6)
 Notify Help manager with hit point.

Typedefs

typedef void(TGeneric::*) owl::TAnyPMF()
typedef TResult(*) owl::TAnyDispatcher(TGeneric &, TAnyPMF, TParam1, TParam2)
typedef TDispatch< WM_PARENTNOTIFY >::TArgs owl::TParentNotify
 Alias for convenience.
typedef TDispatch< WM_PARENTNOTIFY >::TChildInfoArgs owl::TParentNotifyChildInfo
 Alias for convenience.
typedef TDispatch< WM_PARENTNOTIFY >::TMouseInfoArgs owl::TParentNotifyMouseInfo
 Alias for convenience.
Aliases for Windows message parameters
typedef LRESULT owl::TResult
 Result type.
typedef UINT owl::TMsgId
 Message ID type.
typedef WPARAM owl::TParam1
 First parameter type.
typedef LPARAM owl::TParam2
 Second parameter type.

Functions

template<TResult(*)(void *, TParam1, TParam2) F>
TResult owl::AnyDispatch (TGeneric &obj, TAnyPMF, TParam1 p1, TParam2 p2)
template<class T, TResult(T::*)(TParam1, TParam2) M>
TResult owl::DispatchRawArguments (void *i, TParam1 p1, TParam2 p2)
template<class T, void(T::*)() M>
TResult owl::DispatchChildNotify (void *i, TParam1, TParam2)
template<class T, void(T::*)(uint) M>
TResult owl::DispatchChildNotifyWithCode (void *i, TParam1 p1, TParam2)
template<class T, void(T::*)() M>
TResult owl::DispatchCommand (void *i, TParam1, TParam2)
template<class T, void(T::*)(uint) M>
TResult owl::DispatchCommandWithId (void *i, TParam1 p1, TParam2)
Parameter factories
template<class T1, class T2>
TParam2 owl::MkParam2 (const T1 &lo, const T2 &hi)
TParam1 owl::MkParam1 (uint lo, uint hi)

Detailed Description

Dispatch functions (crackers) to crack a Windows message and pass control to a member function via a pointer (Handler).

Definition in file dispatch.h.

Macro Definition Documentation

◆ OWL_DISPATCH

#define OWL_DISPATCH ( dispatch,
method )
Value:
TResult AnyDispatch(TGeneric &obj, TAnyPMF, TParam1 p1, TParam2 p2)
Definition dispatch.h:128

Definition at line 131 of file dispatch.h.

◆ OWL_EV_SIGNATURE_CHECK

#define OWL_EV_SIGNATURE_CHECK   1

Definition at line 139 of file dispatch.h.

◆ OWL_NEW_RESPONSE_TABLE

#define OWL_NEW_RESPONSE_TABLE   1

Definition at line 75 of file dispatch.h.

◆ WM_CHILDINVALID

#define WM_CHILDINVALID   (WM_OWLLAST - 1)

Definition at line 4104 of file dispatch.h.

◆ WM_COMMAND_ENABLE

#define WM_COMMAND_ENABLE   (WM_OWLLAST - 0)

Definition at line 4103 of file dispatch.h.

◆ WM_OWLCANCLOSE

#define WM_OWLCANCLOSE   (WM_OWLLAST - 6)

Definition at line 4109 of file dispatch.h.

◆ WM_OWLCREATETTIP

#define WM_OWLCREATETTIP   (WM_VBXBASE - 5)

Notify gadget window to create tooltips.

Definition at line 4117 of file dispatch.h.

◆ WM_OWLDOCUMENT

#define WM_OWLDOCUMENT   (WM_OWLLAST - 2)

Definition at line 4105 of file dispatch.h.

◆ WM_OWLFIRST

#define WM_OWLFIRST   (WM_OWLLAST - 0x03FF)

Definition at line 4101 of file dispatch.h.

◆ WM_OWLFRAMESIZE

#define WM_OWLFRAMESIZE   (WM_VBXBASE - 2)

Notify children of frame resizing.

Definition at line 4114 of file dispatch.h.

◆ WM_OWLHELPHIT

#define WM_OWLHELPHIT   (WM_VBXBASE - 6)

Notify Help manager with hit point.

Definition at line 4118 of file dispatch.h.

◆ WM_OWLLAST

#define WM_OWLLAST   0x7FFF

Definition at line 4100 of file dispatch.h.

◆ WM_OWLNOTIFY

#define WM_OWLNOTIFY   (WM_OWLLAST - 4)

Definition at line 4107 of file dispatch.h.

◆ WM_OWLPREPROCMENU

#define WM_OWLPREPROCMENU   (WM_OWLLAST - 5)

Definition at line 4108 of file dispatch.h.

◆ WM_OWLSLIPDBLCLK

#define WM_OWLSLIPDBLCLK   (WM_VBXBASE - 3)

Notify parent of user dblclick of edge slip.

Definition at line 4115 of file dispatch.h.

◆ WM_OWLVIEW

#define WM_OWLVIEW   (WM_OWLLAST - 3)

Definition at line 4106 of file dispatch.h.

◆ WM_OWLWAKEUP

#define WM_OWLWAKEUP   (WM_VBXBASE - 1)

Definition at line 4113 of file dispatch.h.

◆ WM_OWLWINDOWDOCKED

#define WM_OWLWINDOWDOCKED   (WM_VBXBASE - 4)

Notify window it was [un]docked/reparented.

Definition at line 4116 of file dispatch.h.

◆ WM_VBXBASE

#define WM_VBXBASE   (WM_OWLLAST - 8 - 256)

Definition at line 4112 of file dispatch.h.

◆ WM_VBXINITFORM

#define WM_VBXINITFORM   (WM_OWLLAST - 7)

Definition at line 4110 of file dispatch.h.

◆ WM_VBXNAME

#define WM_VBXNAME   (WM_OWLLAST - 8)

Definition at line 4111 of file dispatch.h.