wxWidgets/samples/ipc
Vadim Zeitlin c657fd3d61 Fix passing Unicode strings via wxIPC when using DDE
wxIPC API doesn't map well onto DDE, as we don't have wxIPCFormat
parameter in StartAdvise() but do allow specifying the format when
calling Advise() itself, whereas DDE requires specifying the format when
establishing the advise loop and the data always must use this format
later.

Because of this, we have to pass the actual format with the data itself
instead of relying on DDE formats support. This has the advantage of
allowing wxIPC_UTF8TEXT to work, while previously it didn't and
couldn't, as DDE only supports the standard (or custom, but registered)
clipboard formats and it wasn't one of them. Of course, this also has a
disadvantage of having to make another copy of the data, but this seems
unavoidable.

This change allow Advise() overload taking wxString to work, including
for non-ASCII strings, as shown by the update to the IPC sample. It also
makes wxDDEConnection::m_dataType unnecessary, as we must always use the
format passed to DDE callback anyhow when handling XTYP_ADVREQ.

Closes #17900.
2018-12-24 01:42:12 +01:00
..
baseclient.cpp Fix extra semicolon warnings 2018-11-25 21:29:37 +01:00
baseserver.cpp Fix extra semicolon warnings 2018-11-25 21:29:37 +01:00
client.cpp Remove unnecessary c_str() calls from the samples 2018-11-03 22:52:57 +01:00
client.h Fix extra semicolon warnings 2018-11-25 21:29:37 +01:00
connection.h Remove unnecessary c_str() calls from the samples 2018-11-03 22:52:57 +01:00
ipc_vc7_baseipcclient.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc7_baseipcserver.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc7_ipcclient.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc7_ipcserver.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc8_baseipcclient.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc8_baseipcserver.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc8_ipcclient.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc8_ipcserver.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc9_baseipcclient.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc9_baseipcserver.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc9_ipcclient.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc_vc9_ipcserver.vcproj Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
ipc.bkl
ipcsetup.h Remove (most) occurrences of wxT() macro from the samples 2018-09-23 01:15:08 +02:00
makefile.bcc Remove MSW wxUxThemeEngine class 2018-01-22 00:51:11 +01:00
makefile.gcc Remove MSW wxUxThemeEngine class 2018-01-22 00:51:11 +01:00
Makefile.in Increment version number to 3.1.3 2018-12-10 19:06:18 +01:00
makefile.unx Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
makefile.vc Introduce MSW ARM64 support 2018-09-17 22:34:32 +02:00
server.cpp Fix passing Unicode strings via wxIPC when using DDE 2018-12-24 01:42:12 +01:00
server.h