Vidar Hasfjord - 2014-08-18

Hi Patrice,

Cool to hear that you are looking at 6.40 — I hope it works out well!

As stated in the release notes, version 6.40 has made a major overhaul of the message dispatch machinery, and many event handler signatures have been updated. See Windows Message Dispatch in OWLNext for details about the changes.

For documentation about the required event handler signatures for the response table macros, see the OWLNext Documentation. A link to the online version is available on our wiki [Main_Page]. Alternatively, you can download an offline version in the Files area.

Unfortunately, much of the documentation of the macros is currently poor and may lack the information about the required event handler signature. If so, look up the documentation for the TDispatch specialisation for the message, for example TDispatch <WM_SIZE>. The template parameter for the nested Decode function gives you the correct signature.

Tip: Google works well for look-ups in the online documentation; e.g. the search query "OWLNext TDispatch WM_SIZE" shows the relevant link at the top.

If you rather want to go to the source, the specialisations are located in "owl/dispatch.h" for the system messages, and "owl/commctrl.h" for the common controls.

The correct name and signature for EV_WM_SIZE is:

void T::EvSize(uint sizeType, const TSize&)


And for EV_COMMAND_ENABLE it is:

void T::Method(TCommandEnabler&)


Hope that helps and good luck with the upgrade!

PS. If anyone wants to contribute improvements to the documentation, please do.

 

Related

Wiki: Main_Page
Wiki: Windows_Message_Dispatch_in_OWLNext