]> git.saurik.com Git - wxWidgets.git/commitdiff
Call SetDataSource() from OnEnter() so that querying/accessing the data is possible...
authorRobert Roebling <robert@roebling.de>
Wed, 21 Jan 2009 17:44:55 +0000 (17:44 +0000)
committerRobert Roebling <robert@roebling.de>
Wed, 21 Jan 2009 17:44:55 +0000 (17:44 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/msw/ole/droptgt.h
src/msw/ole/droptgt.cpp

index 909a90dc41948cabdc13ffb12a31d5fe97212ec7..6fc30359c8d2c8b842f89db38d937e90cf3ba5dc 100644 (file)
@@ -54,15 +54,15 @@ public:
     // -------------------------------
 
     // do we accept this kind of data?
     // -------------------------------
 
     // do we accept this kind of data?
-    bool IsAcceptedData(IDataObject *pIDataSource) const;
+    bool MSWIsAcceptedData(IDataObject *pIDataSource) const;
 
     // give us the data source from IDropTarget::Drop() - this is later used by
     // GetData() when it's called from inside OnData()
 
     // give us the data source from IDropTarget::Drop() - this is later used by
     // GetData() when it's called from inside OnData()
-    void SetDataSource(IDataObject *pIDataSource);
+    void MSWSetDataSource(IDataObject *pIDataSource);
 
 private:
     // helper used by IsAcceptedData() and GetData()
 
 private:
     // helper used by IsAcceptedData() and GetData()
-    wxDataFormat GetSupportedFormat(IDataObject *pIDataSource) const;
+    wxDataFormat MSWGetSupportedFormat(IDataObject *pIDataSource) const;
 
     wxIDropTarget *m_pIDropTarget; // the pointer to our COM interface
     IDataObject   *m_pIDataSource; // the pointer to the source data object
 
     wxIDropTarget *m_pIDropTarget; // the pointer to our COM interface
     IDataObject   *m_pIDataSource; // the pointer to the source data object
index ba1fccc45f77d770f72827ff949651e05584e800..385dd52660acfd86e7377da347f57e7dc84f7176 100644 (file)
@@ -192,13 +192,16 @@ STDMETHODIMP wxIDropTarget::DragEnter(IDataObject *pIDataSource,
     }
 #endif // 0
 
     }
 #endif // 0
 
-    if ( !m_pTarget->IsAcceptedData(pIDataSource) ) {
+    if ( !m_pTarget->MSWIsAcceptedData(pIDataSource) ) {
         // we don't accept this kind of data
         *pdwEffect = DROPEFFECT_NONE;
 
         return S_OK;
     }
 
         // we don't accept this kind of data
         *pdwEffect = DROPEFFECT_NONE;
 
         return S_OK;
     }
 
+    // for use in OnEnter and OnDrag calls
+    m_pTarget->MSWSetDataSource(pIDataSource);
+    
     // get hold of the data object
     m_pIDataObject = pIDataSource;
     m_pIDataObject->AddRef();
     // get hold of the data object
     m_pIDataObject = pIDataSource;
     m_pIDataObject->AddRef();
@@ -308,7 +311,7 @@ STDMETHODIMP wxIDropTarget::Drop(IDataObject *pIDataSource,
     // first ask the drop target if it wants data
     if ( m_pTarget->OnDrop(pt.x, pt.y) ) {
         // it does, so give it the data source
     // first ask the drop target if it wants data
     if ( m_pTarget->OnDrop(pt.x, pt.y) ) {
         // it does, so give it the data source
-        m_pTarget->SetDataSource(pIDataSource);
+        m_pTarget->MSWSetDataSource(pIDataSource);
 
         // and now it has the data
         wxDragResult rc = ConvertDragEffectToResult(
 
         // and now it has the data
         wxDragResult rc = ConvertDragEffectToResult(
@@ -432,7 +435,7 @@ bool wxDropTarget::OnDrop(wxCoord WXUNUSED(x), wxCoord WXUNUSED(y))
 // copy the data from the data source to the target data object
 bool wxDropTarget::GetData()
 {
 // copy the data from the data source to the target data object
 bool wxDropTarget::GetData()
 {
-    wxDataFormat format = GetSupportedFormat(m_pIDataSource);
+    wxDataFormat format = MSWGetSupportedFormat(m_pIDataSource);
     if ( format == wxDF_INVALID ) {
         // this is strange because IsAcceptedData() succeeded previously!
         wxFAIL_MSG(wxT("strange - did supported formats list change?"));
     if ( format == wxDF_INVALID ) {
         // this is strange because IsAcceptedData() succeeded previously!
         wxFAIL_MSG(wxT("strange - did supported formats list change?"));
@@ -474,15 +477,15 @@ bool wxDropTarget::GetData()
 // ----------------------------------------------------------------------------
 
 // we need a data source, so wxIDropTarget gives it to us using this function
 // ----------------------------------------------------------------------------
 
 // we need a data source, so wxIDropTarget gives it to us using this function
-void wxDropTarget::SetDataSource(IDataObject *pIDataSource)
+void wxDropTarget::MSWSetDataSource(IDataObject *pIDataSource)
 {
     m_pIDataSource = pIDataSource;
 }
 
 // determine if we accept data of this type
 {
     m_pIDataSource = pIDataSource;
 }
 
 // determine if we accept data of this type
-bool wxDropTarget::IsAcceptedData(IDataObject *pIDataSource) const
+bool wxDropTarget::MSWIsAcceptedData(IDataObject *pIDataSource) const
 {
 {
-    return GetSupportedFormat(pIDataSource) != wxDF_INVALID;
+    return MSWGetSupportedFormat(pIDataSource) != wxDF_INVALID;
 }
 
 // ----------------------------------------------------------------------------
 }
 
 // ----------------------------------------------------------------------------
@@ -491,10 +494,10 @@ bool wxDropTarget::IsAcceptedData(IDataObject *pIDataSource) const
 
 wxDataFormat wxDropTarget::GetMatchingPair()
 {
 
 wxDataFormat wxDropTarget::GetMatchingPair()
 {
-    return GetSupportedFormat( m_pIDataSource );
+    return MSWGetSupportedFormat( m_pIDataSource );
 }
 
 }
 
-wxDataFormat wxDropTarget::GetSupportedFormat(IDataObject *pIDataSource) const
+wxDataFormat wxDropTarget::MSWGetSupportedFormat(IDataObject *pIDataSource) const
 {
     // this strucutre describes a data of any type (first field will be
     // changing) being passed through global memory block.
 {
     // this strucutre describes a data of any type (first field will be
     // changing) being passed through global memory block.