]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/ole/droptgt.cpp
fixed wxComboBox sizing problem again
[wxWidgets.git] / src / msw / ole / droptgt.cpp
index 67825f8569c8e97441581b241547b2e94051209f..99db77702848af08afd7109800cd922e14d9a939 100644 (file)
@@ -35,7 +35,7 @@
 #include "wx/log.h"
 
 #ifdef __WIN32__
 #include "wx/log.h"
 
 #ifdef __WIN32__
-    #ifndef __GNUWIN32__
+    #if !defined(__GNUWIN32__) || wxUSE_NORLANDER_HEADERS
         #include <shlobj.h>            // for DROPFILES structure
     #endif
 #else
         #include <shlobj.h>            // for DROPFILES structure
     #endif
 #else
@@ -61,7 +61,7 @@ class wxIDropTarget : public IDropTarget
 {
 public:
     wxIDropTarget(wxDropTarget *p);
 {
 public:
     wxIDropTarget(wxDropTarget *p);
-    ~wxIDropTarget();
+    virtual ~wxIDropTarget();
 
     // accessors for wxDropTarget
     void SetHwnd(HWND hwnd) { m_hwnd = hwnd; }
 
     // accessors for wxDropTarget
     void SetHwnd(HWND hwnd) { m_hwnd = hwnd; }
@@ -157,7 +157,7 @@ STDMETHODIMP wxIDropTarget::DragEnter(IDataObject *pIDataSource,
     // we need client coordinates to pass to wxWin functions
     if ( !ScreenToClient(m_hwnd, (POINT *)&pt) )
     {
     // we need client coordinates to pass to wxWin functions
     if ( !ScreenToClient(m_hwnd, (POINT *)&pt) )
     {
-        wxLogLastError("ScreenToClient");
+        wxLogLastError(wxT("ScreenToClient"));
     }
 
     // give some visual feedback
     }
 
     // give some visual feedback
@@ -197,7 +197,7 @@ STDMETHODIMP wxIDropTarget::DragOver(DWORD   grfKeyState,
     // we need client coordinates to pass to wxWin functions
     if ( !ScreenToClient(m_hwnd, (POINT *)&pt) )
     {
     // we need client coordinates to pass to wxWin functions
     if ( !ScreenToClient(m_hwnd, (POINT *)&pt) )
     {
-        wxLogLastError("ScreenToClient");
+        wxLogLastError(wxT("ScreenToClient"));
     }
 
     *pdwEffect = ConvertDragResultToEffect(
     }
 
     *pdwEffect = ConvertDragResultToEffect(
@@ -250,7 +250,7 @@ STDMETHODIMP wxIDropTarget::Drop(IDataObject *pIDataSource,
     // we need client coordinates to pass to wxWin functions
     if ( !ScreenToClient(m_hwnd, (POINT *)&pt) )
     {
     // we need client coordinates to pass to wxWin functions
     if ( !ScreenToClient(m_hwnd, (POINT *)&pt) )
     {
-        wxLogLastError("ScreenToClient");
+        wxLogLastError(wxT("ScreenToClient"));
     }
 
     // first ask the drop target if it wants data
     }
 
     // first ask the drop target if it wants data
@@ -260,14 +260,11 @@ STDMETHODIMP wxIDropTarget::Drop(IDataObject *pIDataSource,
 
         // and now it has the data
         wxDragResult rc = ConvertDragEffectToResult(GetDropEffect(grfKeyState));
 
         // and now it has the data
         wxDragResult rc = ConvertDragEffectToResult(GetDropEffect(grfKeyState));
-        m_pTarget->OnData(pt.x, pt.y);//, rc);
-/*
+        rc = m_pTarget->OnData(pt.x, pt.y, rc);
         if ( wxIsDragResultOk(rc) ) {
             // operation succeeded
             *pdwEffect = ConvertDragResultToEffect(rc);
         }
         if ( wxIsDragResultOk(rc) ) {
             // operation succeeded
             *pdwEffect = ConvertDragResultToEffect(rc);
         }
-*/
-
         //else: *pdwEffect is already DROPEFFECT_NONE
     }
     //else: OnDrop() returned FALSE, no need to copy data
         //else: *pdwEffect is already DROPEFFECT_NONE
     }
     //else: OnDrop() returned FALSE, no need to copy data
@@ -380,11 +377,11 @@ bool wxDropTarget::GetData()
             rc = TRUE;
         }
         else {
             rc = TRUE;
         }
         else {
-            wxLogLastError("IDataObject::SetData()");
+            wxLogLastError(wxT("IDataObject::SetData()"));
         }
     }
     else {
         }
     }
     else {
-        wxLogLastError("IDataObject::GetData()");
+        wxLogLastError(wxT("IDataObject::GetData()"));
     }
 
     return rc;
     }
 
     return rc;
@@ -424,7 +421,8 @@ wxDataFormat wxDropTarget::GetSupportedFormat(IDataObject *pIDataSource) const
 
     // get the list of supported formats
     size_t nFormats = m_dataObject->GetFormatCount(wxDataObject::Set);
 
     // get the list of supported formats
     size_t nFormats = m_dataObject->GetFormatCount(wxDataObject::Set);
-    wxDataFormat format, *formats;
+    wxDataFormat format;
+       wxDataFormat *formats;
     formats = nFormats == 1 ? &format :  new wxDataFormat[nFormats];
 
     m_dataObject->GetAllFormats(formats, wxDataObject::Set);
     formats = nFormats == 1 ? &format :  new wxDataFormat[nFormats];
 
     m_dataObject->GetAllFormats(formats, wxDataObject::Set);