include/systools/win32/comtools.hxx     |    3 ---
 vcl/inc/win/dnd_source.hxx              |    2 +-
 vcl/win/dtrans/APNDataObject.cxx        |   20 ++++++++++----------
 vcl/win/dtrans/APNDataObject.hxx        |    4 ++--
 vcl/win/dtrans/DOTransferable.cxx       |    8 ++++----
 vcl/win/dtrans/DOTransferable.hxx       |    4 ++--
 vcl/win/dtrans/DtObjFactory.cxx         |    4 ++--
 vcl/win/dtrans/DtObjFactory.hxx         |    5 +++--
 vcl/win/dtrans/MtaOleClipb.cxx          |    2 +-
 vcl/win/dtrans/WinClipboard.cxx         |    8 ++++----
 vcl/win/dtrans/WinClipboard.hxx         |    2 +-
 vcl/win/dtrans/XNotifyingDataObject.cxx |    2 +-
 vcl/win/dtrans/XNotifyingDataObject.hxx |    4 ++--
 vcl/win/dtrans/target.cxx               |    2 +-
 14 files changed, 34 insertions(+), 36 deletions(-)

New commits:
commit 6a992f99fe1491451db5273eeb65f3e09384b3e8
Author:     Mike Kaganski <[email protected]>
AuthorDate: Sat Jan 24 17:41:29 2026 +0100
Commit:     Mike Kaganski <[email protected]>
CommitDate: Sat Jan 24 19:43:52 2026 +0100

    Drop typedef IDataObjectPtr
    
    It doesn't make much sense.
    
    Change-Id: If44de0379e14bf65f4fd4fb40917c7b391768636
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198048
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <[email protected]>

diff --git a/include/systools/win32/comtools.hxx 
b/include/systools/win32/comtools.hxx
index 2ff0cd2bd94d..97423caf3d3d 100644
--- a/include/systools/win32/comtools.hxx
+++ b/include/systools/win32/comtools.hxx
@@ -254,7 +254,4 @@ namespace sal::systools
 
 } // sal::systools
 
-/* Typedefs for some popular COM interfaces */
-typedef sal::systools::COMReference<IDataObject> IDataObjectPtr;
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/inc/win/dnd_source.hxx b/vcl/inc/win/dnd_source.hxx
index ea794f069f47..2772bbd45a0b 100644
--- a/vcl/inc/win/dnd_source.hxx
+++ b/vcl/inc/win/dnd_source.hxx
@@ -75,7 +75,7 @@ public:
     Reference<XDragSourceContext>   m_currentContext;
 
     // the wrapper for the Transferable ( startDrag)
-    IDataObjectPtr m_spDataObject;
+    sal::systools::COMReference<IDataObject> m_spDataObject;
 
     sal_Int8 m_sourceActions;
 
diff --git a/vcl/win/dtrans/APNDataObject.cxx b/vcl/win/dtrans/APNDataObject.cxx
index 47dd481080b9..179083489615 100644
--- a/vcl/win/dtrans/APNDataObject.cxx
+++ b/vcl/win/dtrans/APNDataObject.cxx
@@ -27,7 +27,7 @@
 
 // ctor
 
-CAPNDataObject::CAPNDataObject( IDataObjectPtr rIDataObject ) :
+CAPNDataObject::CAPNDataObject( sal::systools::COMReference<IDataObject> 
rIDataObject ) :
     m_rIDataObjectOrg( rIDataObject ),
     m_hGlobal( nullptr ),
     m_nRefCnt( 0 )
@@ -147,7 +147,7 @@ STDMETHODIMP CAPNDataObject::GetData( FORMATETC * 
pFormatetc, STGMEDIUM * pmediu
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -164,7 +164,7 @@ STDMETHODIMP CAPNDataObject::EnumFormatEtc( DWORD 
dwDirection, IEnumFORMATETC**
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -181,7 +181,7 @@ STDMETHODIMP CAPNDataObject::QueryGetData( FORMATETC * 
pFormatetc )
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment( &pIDOTmp );
 
         if (SUCCEEDED(hr))
@@ -198,7 +198,7 @@ STDMETHODIMP CAPNDataObject::GetDataHere( FORMATETC * 
pFormatetc, STGMEDIUM * pm
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -215,7 +215,7 @@ STDMETHODIMP 
CAPNDataObject::GetCanonicalFormatEtc(FORMATETC * pFormatectIn, FOR
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -232,7 +232,7 @@ STDMETHODIMP CAPNDataObject::SetData( FORMATETC * 
pFormatetc, STGMEDIUM * pmediu
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -249,7 +249,7 @@ STDMETHODIMP CAPNDataObject::DAdvise( FORMATETC * 
pFormatetc, DWORD advf, IAdvis
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -266,7 +266,7 @@ STDMETHODIMP CAPNDataObject::DUnadvise( DWORD dwConnection )
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
@@ -283,7 +283,7 @@ STDMETHODIMP CAPNDataObject::EnumDAdvise( IEnumSTATDATA ** 
ppenumAdvise )
 
     if (RPC_E_WRONG_THREAD == hr)
     {
-        IDataObjectPtr pIDOTmp;
+        sal::systools::COMReference<IDataObject> pIDOTmp;
         hr = MarshalIDataObjectIntoCurrentApartment(&pIDOTmp);
 
         if (SUCCEEDED(hr))
diff --git a/vcl/win/dtrans/APNDataObject.hxx b/vcl/win/dtrans/APNDataObject.hxx
index 5de8ccfcc8d1..5a484ab6fa79 100644
--- a/vcl/win/dtrans/APNDataObject.hxx
+++ b/vcl/win/dtrans/APNDataObject.hxx
@@ -36,7 +36,7 @@
 class CAPNDataObject : public IDataObject
 {
 public:
-    explicit CAPNDataObject(IDataObjectPtr rIDataObject);
+    explicit CAPNDataObject(sal::systools::COMReference<IDataObject> 
rIDataObject);
     virtual ~CAPNDataObject();
 
     //IUnknown interface methods
@@ -61,7 +61,7 @@ private:
     HRESULT MarshalIDataObjectIntoCurrentApartment( IDataObject** ppIDataObj );
 
 private:
-    IDataObjectPtr  m_rIDataObjectOrg;
+    sal::systools::COMReference<IDataObject> m_rIDataObjectOrg;
     HGLOBAL         m_hGlobal;
     LONG            m_nRefCnt;
 
diff --git a/vcl/win/dtrans/DOTransferable.cxx 
b/vcl/win/dtrans/DOTransferable.cxx
index c7c75d9e7e39..975908998f93 100644
--- a/vcl/win/dtrans/DOTransferable.cxx
+++ b/vcl/win/dtrans/DOTransferable.cxx
@@ -211,8 +211,8 @@ bool cmpAllContentTypeParameter(
 
 } // end namespace
 
-CDOTransferable::CDOTransferable(
-    const Reference< XComponentContext >& rxContext, IDataObjectPtr 
rDataObject ) :
+CDOTransferable::CDOTransferable(const Reference<XComponentContext>& rxContext,
+                                 sal::systools::COMReference<IDataObject> 
rDataObject) :
     m_rDataObject( rDataObject ),
     m_xContext( rxContext ),
     m_DataFormatTranslator( rxContext ),
@@ -425,8 +425,8 @@ void CDOTransferable::tryToGetIDataObjectIfAbsent()
 namespace
 {
 // Uses a fallback to try TYMED_ISTREAM instead of TYMED_HGLOBAL
-HRESULT getClipboardData_impl(const IDataObjectPtr& pDataObject, CFormatEtc& 
rFormatEtc,
-                              STGMEDIUM& rStgmedium)
+HRESULT getClipboardData_impl(const sal::systools::COMReference<IDataObject>& 
pDataObject,
+                              CFormatEtc& rFormatEtc, STGMEDIUM& rStgmedium)
 {
     const HRESULT hr = pDataObject->GetData( rFormatEtc, &rStgmedium );
     if (SUCCEEDED(hr))
diff --git a/vcl/win/dtrans/DOTransferable.hxx 
b/vcl/win/dtrans/DOTransferable.hxx
index cab9e5095dd6..3592f30975d8 100644
--- a/vcl/win/dtrans/DOTransferable.hxx
+++ b/vcl/win/dtrans/DOTransferable.hxx
@@ -56,7 +56,7 @@ public:
 
     explicit CDOTransferable(
         const css::uno::Reference< css::uno::XComponentContext >& rxContext,
-        IDataObjectPtr rDataObject );
+        sal::systools::COMReference<IDataObject> rDataObject );
 
 private:
     // some helper functions
@@ -78,7 +78,7 @@ private:
 
 private:
     css::uno::WeakReference<css::datatransfer::clipboard::XClipboard> 
m_xClipboard;
-    IDataObjectPtr                                                             
             m_rDataObject;
+    sal::systools::COMReference<IDataObject>                          
m_rDataObject;
     css::uno::Sequence< css::datatransfer::DataFlavor >               
m_FlavorList;
     const css::uno::Reference< css::uno::XComponentContext >          
m_xContext;
     CDataFormatTranslator                                             
m_DataFormatTranslator;
diff --git a/vcl/win/dtrans/DtObjFactory.cxx b/vcl/win/dtrans/DtObjFactory.cxx
index 8fe03789b1f1..3b5907692366 100644
--- a/vcl/win/dtrans/DtObjFactory.cxx
+++ b/vcl/win/dtrans/DtObjFactory.cxx
@@ -24,11 +24,11 @@ using namespace com::sun::star::uno;
 using namespace com::sun::star::datatransfer;
 using namespace com::sun::star::lang;
 
-IDataObjectPtr
+sal::systools::COMReference<IDataObject>
 CDTransObjFactory::createDataObjFromTransferable(const 
Reference<XComponentContext>& rxContext,
                                                  const 
Reference<XTransferable>& refXTransferable)
 {
-    return (IDataObjectPtr(new CXTDataObject(rxContext, refXTransferable)));
+    return { new CXTDataObject(rxContext, refXTransferable) };
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/win/dtrans/DtObjFactory.hxx b/vcl/win/dtrans/DtObjFactory.hxx
index b5d5f5007589..e827f0873543 100644
--- a/vcl/win/dtrans/DtObjFactory.hxx
+++ b/vcl/win/dtrans/DtObjFactory.hxx
@@ -26,8 +26,9 @@
 
 namespace CDTransObjFactory
 {
-    IDataObjectPtr createDataObjFromTransferable( const css::uno::Reference< 
css::uno::XComponentContext >& rxContext,
-                                                                   const 
css::uno::Reference< css::datatransfer::XTransferable >& refXTransferable );
+sal::systools::COMReference<IDataObject> createDataObjFromTransferable(
+    const css::uno::Reference<css::uno::XComponentContext>& rxContext,
+    const css::uno::Reference<css::datatransfer::XTransferable>& 
refXTransferable);
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/win/dtrans/MtaOleClipb.cxx b/vcl/win/dtrans/MtaOleClipb.cxx
index 879ef6681a2e..bcc567d98499 100644
--- a/vcl/win/dtrans/MtaOleClipb.cxx
+++ b/vcl/win/dtrans/MtaOleClipb.cxx
@@ -151,7 +151,7 @@ HRESULT onGetClipboard(LPSTREAM* ppStream)
 {
     OSL_ASSERT(nullptr != ppStream);
 
-    IDataObjectPtr pIDataObject;
+    sal::systools::COMReference<IDataObject> pIDataObject;
 
     // forward the request to the OleClipboard
     HRESULT hr
diff --git a/vcl/win/dtrans/WinClipboard.cxx b/vcl/win/dtrans/WinClipboard.cxx
index 0cc55a23b6f0..a7d207eb7503 100644
--- a/vcl/win/dtrans/WinClipboard.cxx
+++ b/vcl/win/dtrans/WinClipboard.cxx
@@ -163,7 +163,7 @@ css::uno::Reference<css::datatransfer::XTransferable> 
CWinClipboard::getContents
     return rClipContent;
 }
 
-IDataObjectPtr CWinClipboard::getIDataObject()
+sal::systools::COMReference<IDataObject> CWinClipboard::getIDataObject()
 {
     {
         std::unique_lock aGuard(m_aMutex);
@@ -173,7 +173,7 @@ IDataObjectPtr CWinClipboard::getIDataObject()
                                           static_cast<XClipboardEx*>(this));
     }
     // get the current dataobject from clipboard
-    IDataObjectPtr pIDataObject;
+    sal::systools::COMReference<IDataObject> pIDataObject;
     HRESULT hr = m_MtaOleClipboard.getClipboard(&pIDataObject);
 
     if (SUCCEEDED(hr))
@@ -196,7 +196,7 @@ void SAL_CALL CWinClipboard::setContents(
         throw lang::DisposedException("object is already disposed",
                                       static_cast<XClipboardEx*>(this));
 
-    IDataObjectPtr pIDataObj;
+    sal::systools::COMReference<IDataObject> pIDataObj;
 
     // The object must be destroyed only outside of the mutex lock, and in a 
different thread,
     // because it may call CWinClipboard::onReleaseDataObject, or try to lock 
solar mutex, in
@@ -213,7 +213,7 @@ void SAL_CALL CWinClipboard::setContents(
             CDTransObjFactory::createDataObjFromTransferable(m_xContext, 
xTransferable),
             xTransferable, xClipboardOwner, this);
 
-        pIDataObj = IDataObjectPtr(m_pNewOwnClipContent);
+        pIDataObj = 
sal::systools::COMReference<IDataObject>(m_pNewOwnClipContent);
     }
     else
     {
diff --git a/vcl/win/dtrans/WinClipboard.hxx b/vcl/win/dtrans/WinClipboard.hxx
index 098f0816c557..dc5380710553 100644
--- a/vcl/win/dtrans/WinClipboard.hxx
+++ b/vcl/win/dtrans/WinClipboard.hxx
@@ -107,7 +107,7 @@ public:
     virtual sal_Bool SAL_CALL supportsService(const OUString& ServiceName) 
override;
     virtual css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames() 
override;
 
-    IDataObjectPtr getIDataObject();
+    sal::systools::COMReference<IDataObject> getIDataObject();
 
     virtual void disposing(std::unique_lock<std::mutex>&) override;
 };
diff --git a/vcl/win/dtrans/XNotifyingDataObject.cxx 
b/vcl/win/dtrans/XNotifyingDataObject.cxx
index cee9e63879ed..b10f96ea5a9c 100644
--- a/vcl/win/dtrans/XNotifyingDataObject.cxx
+++ b/vcl/win/dtrans/XNotifyingDataObject.cxx
@@ -28,7 +28,7 @@ using com::sun::star::uno::RuntimeException;
 using com::sun::star::uno::Reference;
 
 CXNotifyingDataObject::CXNotifyingDataObject(
-    const IDataObjectPtr& aIDataObject,
+    const sal::systools::COMReference<IDataObject>& aIDataObject,
     const Reference< XTransferable >& aXTransferable,
     const Reference< XClipboardOwner >& aXClipOwner,
     CWinClipboard* const theWinClipoard) :
diff --git a/vcl/win/dtrans/XNotifyingDataObject.hxx 
b/vcl/win/dtrans/XNotifyingDataObject.hxx
index ba15b143cbf5..34aedb1ab8e3 100644
--- a/vcl/win/dtrans/XNotifyingDataObject.hxx
+++ b/vcl/win/dtrans/XNotifyingDataObject.hxx
@@ -43,7 +43,7 @@ class CXNotifyingDataObject final : public IDataObject
 {
 public:
     CXNotifyingDataObject(
-        const IDataObjectPtr& aIDataObject,
+        const sal::systools::COMReference<IDataObject>& aIDataObject,
         const css::uno::Reference< css::datatransfer::XTransferable >& 
aXTransferable,
         const css::uno::Reference< 
css::datatransfer::clipboard::XClipboardOwner >& aXClipOwner,
         CWinClipboard* const theWinClipoard);
@@ -74,7 +74,7 @@ private:
     void lostOwnership( );
 
     sal_Int32                                                                  
   m_nRefCnt;
-    IDataObjectPtr                                                             
   m_aIDataObject;
+    sal::systools::COMReference<IDataObject>                                   
   m_aIDataObject;
     const css::uno::Reference< css::datatransfer::XTransferable >              
   m_XTransferable;
     const css::uno::Reference< css::datatransfer::clipboard::XClipboardOwner > 
   m_XClipboardOwner;
     unotools::WeakReference<CWinClipboard> m_pWinClipImpl;
diff --git a/vcl/win/dtrans/target.cxx b/vcl/win/dtrans/target.cxx
index 399ffd9d063d..d48293811b1c 100644
--- a/vcl/win/dtrans/target.cxx
+++ b/vcl/win/dtrans/target.cxx
@@ -333,7 +333,7 @@ HRESULT DropTarget::DragEnter( IDataObject *pDataObj,
         else
         {
             // Convert the IDataObject to a XTransferable
-            m_currentData = new CDOTransferable(m_xContext, 
IDataObjectPtr(pDataObj));
+            m_currentData = new CDOTransferable(m_xContext, pDataObj);
         }
 
         //<-- TRA

Reply via email to