From 5ee57cabb40fefbba401cbcf8b181e02ad4f1f5d Mon Sep 17 00:00:00 2001 From: Jochen Nitschke Date: Tue, 28 Feb 2017 23:48:06 +0100 Subject: no need to use smart pointers for DataFlavorExVector DataFlavorExVector is a std::vector<..> typedef. remove odd void pointer in BrowseBox. return const references to keep getter const qualified. Change-Id: Iafd529a46b7511941c1dffc86d2066fdc4f07e28 Reviewed-on: https://gerrit.libreoffice.org/34767 Tested-by: Jenkins Reviewed-by: Noel Grandin --- include/svtools/brwbox.hxx | 4 ++-- include/svtools/transfer.hxx | 12 +++++------- 2 files changed, 7 insertions(+), 9 deletions(-) (limited to 'include/svtools') diff --git a/include/svtools/brwbox.hxx b/include/svtools/brwbox.hxx index ae950f5400a6..266491a5ae70 100644 --- a/include/svtools/brwbox.hxx +++ b/include/svtools/brwbox.hxx @@ -378,7 +378,7 @@ protected: bool IsDropFormatSupported( SotClipboardFormatId nFormat ); // need this because the base class' IsDropFormatSupported is not const ... private: - void* implGetDataFlavors() const; + const DataFlavorExVector& implGetDataFlavors() const; // with this we can make GetDataFlavors() inline, which is strongly needed as SVTOOLS does not export // any sysmbol containing an "_STL", so a non-inlined method would not be exported .... @@ -787,7 +787,7 @@ private: inline const DataFlavorExVector& BrowseBox::GetDataFlavors() const { - return *static_cast(implGetDataFlavors()); + return implGetDataFlavors(); } #endif // INCLUDED_SVTOOLS_BRWBOX_HXX diff --git a/include/svtools/transfer.hxx b/include/svtools/transfer.hxx index 4cfa47510020..8cf82f4e29a5 100644 --- a/include/svtools/transfer.hxx +++ b/include/svtools/transfer.hxx @@ -158,7 +158,7 @@ private: OUString maLastFormat; mutable css::uno::Reference< css::datatransfer::clipboard::XClipboard > mxClipboard; css::uno::Reference< css::frame::XTerminateListener > mxTerminateListener; - std::unique_ptr mxFormats; + DataFlavorExVector maFormats; std::unique_ptr mxObjDesc; protected: @@ -238,8 +238,6 @@ protected: public: - TransferableHelper(); - void PrepareOLE( const TransferableObjectDescriptor& rObjDesc ); void CopyToClipboard( vcl::Window *pWindow ) const; @@ -267,7 +265,7 @@ private: css::uno::Reference< css::datatransfer::XTransferable > mxTransfer; css::uno::Reference< css::datatransfer::clipboard::XClipboard > mxClipboard; - std::unique_ptr mxFormats; + DataFlavorExVector maFormats; std::unique_ptr mxObjDesc; std::unique_ptr mxImpl; @@ -299,7 +297,7 @@ public: SotClipboardFormatId GetFormat( sal_uInt32 nFormat ) const; css::datatransfer::DataFlavor GetFormatDataFlavor( sal_uInt32 nFormat ) const; - DataFlavorExVector& GetDataFlavorExVector() const {return *mxFormats; } + const DataFlavorExVector& GetDataFlavorExVector() const {return maFormats; } bool StartClipboardListening( ); void StopClipboardListening( ); @@ -444,7 +442,7 @@ private: css::uno::Reference< css::datatransfer::dnd::XDropTarget > mxDropTarget; css::uno::Reference< css::datatransfer::dnd::XDropTargetListener > mxDropTargetListener; - DataFlavorExVector* mpFormats; + DataFlavorExVector maFormats; DropTargetHelper() = delete; DropTargetHelper& operator=( const DropTargetHelper& rDropTargetHelper ) = delete; @@ -471,7 +469,7 @@ public: // typically called by the application in ::AcceptDrop and ::ExecuteDrop and (see above) bool IsDropFormatSupported( SotClipboardFormatId nFormat ); - DataFlavorExVector& GetDataFlavorExVector() const {return *mpFormats; } + const DataFlavorExVector& GetDataFlavorExVector() const {return maFormats; } }; -- cgit