]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dde.cpp
Implement undo and redo for the ie and gtk webkit backends. Extend the sample to...
[wxWidgets.git] / src / msw / dde.cpp
index 20bbe4bb239c542667674b5f828a1127a6c85114..d59e1256d3933da5e29c7096b40b48f42fdd911e 100644 (file)
@@ -139,7 +139,7 @@ private:
 
 IMPLEMENT_DYNAMIC_CLASS(wxDDEServer, wxServerBase)
 IMPLEMENT_DYNAMIC_CLASS(wxDDEClient, wxClientBase)
-IMPLEMENT_CLASS(wxDDEConnection, wxConnectionBase)
+IMPLEMENT_DYNAMIC_CLASS(wxDDEConnection, wxConnectionBase)
 IMPLEMENT_DYNAMIC_CLASS(wxDDEModule, wxModule)
 
 // ============================================================================
@@ -160,7 +160,7 @@ extern void wxDDEInitialize()
         UINT rc = DdeInitialize(&DDEIdInst, callback, APPCLASS_STANDARD, 0L);
         if ( rc != DMLERR_NO_ERROR )
         {
-            DDELogError(_T("Failed to initialize DDE"), rc);
+            DDELogError(wxT("Failed to initialize DDE"), rc);
         }
         else
         {
@@ -174,7 +174,7 @@ void wxDDECleanUp()
     // deleting them later won't work as DDE won't be initialized any more
     wxASSERT_MSG( wxDDEServerObjects.empty() &&
                     wxDDEClientObjects.empty(),
-                    _T("all DDE objects should be deleted by now") );
+                    wxT("all DDE objects should be deleted by now") );
 
     wxAtomTable.clear();
 
@@ -327,7 +327,6 @@ wxDDEServer::~wxDDEServer()
     {
         wxDDEConnection *connection = node->GetData();
         wxDDEConnectionList::compatibility_iterator next = node->GetNext();
-        connection->SetConnected(false);
         connection->OnDisconnect(); // May delete the node implicitly
         node = next;
     }
@@ -539,7 +538,7 @@ bool wxDDEConnection::Disconnect()
     bool ok = DdeDisconnect(GetHConv()) != 0;
     if ( !ok )
     {
-        DDELogError(_T("Failed to disconnect from DDE server gracefully"));
+        DDELogError(wxT("Failed to disconnect from DDE server gracefully"));
     }
 
     SetConnected( false );  // so we don't try and disconnect again
@@ -554,7 +553,7 @@ wxDDEConnection::DoExecute(const void *data, size_t size, wxIPCFormat format)
                  format == wxIPC_UTF8TEXT ||
                  format == wxIPC_UNICODETEXT,
                  false,
-                 _T("wxDDEServer::Execute() supports only text data") );
+                 wxT("wxDDEServer::Execute() supports only text data") );
 
     wxMemoryBuffer buffer;
     LPBYTE realData = NULL;
@@ -605,7 +604,7 @@ wxDDEConnection::DoExecute(const void *data, size_t size, wxIPCFormat format)
         // we could implement this in theory but it's not obvious how to pass
         // the format information and, basically, why bother -- just use
         // Unicode build
-        wxFAIL_MSG( _T("UTF-8 text not supported in ANSI build") );
+        wxFAIL_MSG( wxT("UTF-8 text not supported in ANSI build") );
 
         return false;
     }
@@ -649,7 +648,7 @@ wxDDEConnection::DoExecute(const void *data, size_t size, wxIPCFormat format)
 
     if ( !ok )
     {
-        DDELogError(_T("DDE execute request failed"));
+        DDELogError(wxT("DDE execute request failed"));
     }
 
     return ok;
@@ -669,7 +668,7 @@ const void *wxDDEConnection::Request(const wxString& item, size_t *size, wxIPCFo
                                                   &result);
     if ( !returned_data )
     {
-        DDELogError(_T("DDE data request failed"));
+        DDELogError(wxT("DDE data request failed"));
 
         return NULL;
     }
@@ -678,7 +677,7 @@ const void *wxDDEConnection::Request(const wxString& item, size_t *size, wxIPCFo
 
     void *data = GetBufferAtLeast(len);
     wxASSERT_MSG(data != NULL,
-                 _T("Buffer too small in wxDDEConnection::Request") );
+                 wxT("Buffer too small in wxDDEConnection::Request") );
     (void) DdeGetData(returned_data, (LPBYTE)data, len, 0);
 
     (void) DdeFreeDataHandle(returned_data);
@@ -845,7 +844,7 @@ _DDECallback(WORD wType,
 
                     void *data = connection->GetBufferAtLeast(len);
                     wxASSERT_MSG(data != NULL,
-                                 _T("Buffer too small in _DDECallback (XTYP_EXECUTE)") );
+                                 wxT("Buffer too small in _DDECallback (XTYP_EXECUTE)") );
 
                     DdeGetData(hData, (LPBYTE)data, len, 0);
 
@@ -926,7 +925,7 @@ _DDECallback(WORD wType,
 
                     void *data = connection->GetBufferAtLeast(len);
                     wxASSERT_MSG(data != NULL,
-                                 _T("Buffer too small in _DDECallback (XTYP_POKE)") );
+                                 wxT("Buffer too small in _DDECallback (XTYP_POKE)") );
 
                     DdeGetData(hData, (LPBYTE)data, len, 0);
 
@@ -1013,7 +1012,7 @@ _DDECallback(WORD wType,
 
                     void *data = connection->GetBufferAtLeast(len);
                     wxASSERT_MSG(data != NULL,
-                                 _T("Buffer too small in _DDECallback (XTYP_ADVDATA)") );
+                                 wxT("Buffer too small in _DDECallback (XTYP_ADVDATA)") );
 
                     DdeGetData(hData, (LPBYTE)data, len, 0);
 
@@ -1063,7 +1062,7 @@ The returned handle has to be freed by the caller (using
 */
 static HSZ DDEAtomFromString(const wxString& s)
 {
-    wxASSERT_MSG( DDEIdInst, _T("DDE not initialized") );
+    wxASSERT_MSG( DDEIdInst, wxT("DDE not initialized") );
 
     HSZ hsz = DdeCreateStringHandle(DDEIdInst, (wxChar*)s.wx_str(), DDE_CP);
     if ( !hsz )
@@ -1105,7 +1104,7 @@ static void DDELogError(const wxString& s, UINT error)
         error = DdeGetLastError(DDEIdInst);
     }
 
-    wxLogError(s + _T(": ") + DDEGetErrorMsg(error));
+    wxLogError(s + wxT(": ") + DDEGetErrorMsg(error));
 }
 
 static wxString DDEGetErrorMsg(UINT error)