]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dde.cpp
Highly experimental, unstable code (for determining the
[wxWidgets.git] / src / msw / dde.cpp
index 0d084650d7322d82d4a3bac66921ccb6da12cc3b..de0a40434675f59de853205ae90f16973309cac9 100644 (file)
@@ -37,6 +37,8 @@
 
 #include "wx/module.h"
 #include "wx/dde.h"
+#include "wx/intl.h"
+
 
 #include "wx/msw/private.h"
 
     #include "wx/msw/gnuwin32/extra.h"
 #endif
 
+// some compilers headers don't define this one (mingw32)
+#ifndef DMLERR_NO_ERROR
+    #define DMLERR_NO_ERROR (0)
+
+    // this one is also missing from some mingw32 headers, but there is no way
+    // to test for it (I know of) - the test for DMLERR_NO_ERROR works for me,
+    // but is surely not the right thing to do
+    extern "C"
+    HDDEDATA STDCALL DdeClientTransaction(LPBYTE pData,
+                                          DWORD cbData,
+                                          HCONV hConv,
+                                          HSZ hszItem,
+                                          UINT wFmt,
+                                          UINT wType,
+                                          DWORD dwTimeout,
+                                          LPDWORD pdwResult);
+#endif // no DMLERR_NO_ERROR
+
 // ----------------------------------------------------------------------------
 // macros and constants
 // ----------------------------------------------------------------------------
@@ -898,7 +918,7 @@ static HSZ DDEAtomFromString(const wxString& s)
 {
     wxASSERT_MSG( DDEIdInst, _T("DDE not initialized") );
 
-    HSZ hsz = DdeCreateStringHandle(DDEIdInst, s, DDE_CP);
+    HSZ hsz = DdeCreateStringHandle(DDEIdInst, (char*) s.c_str(), DDE_CP);
     if ( !hsz )
     {
         DDELogError(_("Failed to create DDE string"));
@@ -952,10 +972,10 @@ static wxString DDEGetErrorMsg(UINT error)
             err = _("a request for a synchronous data transaction has timed out.");
             break;
         case DMLERR_DLL_NOT_INITIALIZED:
-            err = _("a DDEML function was called without first calling the DdeInitialize function,\n\ror an invalid instance identifier\n\rwas passed to a DDEML function.");
+            err = _("a DDEML function was called without first calling the DdeInitialize function,\nor an invalid instance identifier\nwas passed to a DDEML function.");
             break;
         case DMLERR_DLL_USAGE:
-            err = _("an application initialized as APPCLASS_MONITOR has\n\rattempted to perform a DDE transaction,\n\ror an application initialized as APPCMD_CLIENTONLY has \n\rattempted to perform server transactions.");
+            err = _("an application initialized as APPCLASS_MONITOR has\nattempted to perform a DDE transaction,\nor an application initialized as APPCMD_CLIENTONLY has \nattempted to perform server transactions.");
             break;
         case DMLERR_EXECACKTIMEOUT:
             err = _("a request for a synchronous execute transaction has timed out.");
@@ -985,7 +1005,7 @@ static wxString DDEGetErrorMsg(UINT error)
             err = _("reentrancy problem.");
             break;
         case DMLERR_SERVER_DIED:
-            err = _("a server-side transaction was attempted on a conversation\n\rthat was terminated by the client, or the server\n\rterminated before completing a transaction.");
+            err = _("a server-side transaction was attempted on a conversation\nthat was terminated by the client, or the server\nterminated before completing a transaction.");
             break;
         case DMLERR_SYS_ERROR:
             err = _("an internal error has occurred in the DDEML.");
@@ -994,7 +1014,7 @@ static wxString DDEGetErrorMsg(UINT error)
             err = _("a request to end an advise transaction has timed out.");
             break;
         case DMLERR_UNFOUND_QUEUE_ID:
-            err = _("an invalid transaction identifier was passed to a DDEML function.\n\rOnce the application has returned from an XTYP_XACT_COMPLETE callback,\n\rthe transaction identifier for that callback is no longer valid.");
+            err = _("an invalid transaction identifier was passed to a DDEML function.\nOnce the application has returned from an XTYP_XACT_COMPLETE callback,\nthe transaction identifier for that callback is no longer valid.");
             break;
         default:
             err.Printf(_("Unknown DDE error %08x"), error);