diff options
-rw-r--r-- | include/vcl/graph.hxx | 3 | ||||
-rw-r--r-- | vcl/inc/impgraph.hxx | 11 | ||||
-rw-r--r-- | vcl/source/gdi/graph.cxx | 17 | ||||
-rw-r--r-- | vcl/source/gdi/impgraph.cxx | 5 |
4 files changed, 36 insertions, 0 deletions
diff --git a/include/vcl/graph.hxx b/include/vcl/graph.hxx index f0a528c84b42..2ec7a7e14706 100644 --- a/include/vcl/graph.hxx +++ b/include/vcl/graph.hxx @@ -196,6 +196,9 @@ public: return reinterpret_cast<std::size_t>(ImplGetImpGraphic()); } + OUString getOriginURL() const; + void setOriginURL(OUString const & rOriginURL); + public: std::shared_ptr<GraphicReader>& GetContext(); diff --git a/vcl/inc/impgraph.hxx b/vcl/inc/impgraph.hxx index 1dc5adc30ab5..6c76275abbb2 100644 --- a/vcl/inc/impgraph.hxx +++ b/vcl/inc/impgraph.hxx @@ -50,6 +50,7 @@ private: bool mbDummyContext; VectorGraphicDataPtr maVectorGraphicData; css::uno::Sequence<sal_Int8> maPdfData; + OUString msOriginURL; private: @@ -70,6 +71,16 @@ private: bool operator==( const ImpGraphic& rImpGraphic ) const; bool operator!=( const ImpGraphic& rImpGraphic ) const { return !( *this == rImpGraphic ); } + OUString getOriginURL() const + { + return msOriginURL; + } + + void setOriginURL(OUString const & rOriginURL) + { + msOriginURL = rOriginURL; + } + void ImplCreateSwapInfo(); void ImplClearGraphics(); void ImplClear(); diff --git a/vcl/source/gdi/graph.cxx b/vcl/source/gdi/graph.cxx index 0505bf6e1172..69e962c8ee64 100644 --- a/vcl/source/gdi/graph.cxx +++ b/vcl/source/gdi/graph.cxx @@ -597,6 +597,23 @@ const uno::Sequence<sal_Int8>& Graphic::getPdfData() const return mxImpGraphic->maPdfData; } +OUString Graphic::getOriginURL() const +{ + if (mxImpGraphic) + { + return mxImpGraphic->getOriginURL(); + } + return OUString(); +} + +void Graphic::setOriginURL(OUString const & rOriginURL) +{ + if (mxImpGraphic) + { + mxImpGraphic->setOriginURL(rOriginURL); + } +} + namespace { struct Id: public rtl::Static<cppu::OImplementationId, Id> {}; diff --git a/vcl/source/gdi/impgraph.cxx b/vcl/source/gdi/impgraph.cxx index 84aa0462c863..0e4ecc354ed1 100644 --- a/vcl/source/gdi/impgraph.cxx +++ b/vcl/source/gdi/impgraph.cxx @@ -120,6 +120,7 @@ ImpGraphic::ImpGraphic(const ImpGraphic& rImpGraphic) , mbDummyContext(rImpGraphic.mbDummyContext) , maVectorGraphicData(rImpGraphic.maVectorGraphicData) , maPdfData(rImpGraphic.maPdfData) + , msOriginURL(rImpGraphic.msOriginURL) { if( rImpGraphic.mpGfxLink ) mpGfxLink = o3tl::make_unique<GfxLink>( *rImpGraphic.mpGfxLink ); @@ -145,6 +146,7 @@ ImpGraphic::ImpGraphic(ImpGraphic&& rImpGraphic) , mbDummyContext(rImpGraphic.mbDummyContext) , maVectorGraphicData(std::move(rImpGraphic.maVectorGraphicData)) , maPdfData(std::move(rImpGraphic.maPdfData)) + , msOriginURL(rImpGraphic.msOriginURL) { rImpGraphic.ImplClear(); rImpGraphic.mbDummyContext = false; @@ -211,6 +213,7 @@ ImpGraphic& ImpGraphic::operator=( const ImpGraphic& rImpGraphic ) maSwapInfo = rImpGraphic.maSwapInfo; mpContext = rImpGraphic.mpContext; mbDummyContext = rImpGraphic.mbDummyContext; + msOriginURL = rImpGraphic.msOriginURL; mpAnimation.reset(); @@ -254,6 +257,7 @@ ImpGraphic& ImpGraphic::operator=(ImpGraphic&& rImpGraphic) mpGfxLink = std::move(rImpGraphic.mpGfxLink); maVectorGraphicData = std::move(rImpGraphic.maVectorGraphicData); maPdfData = std::move(rImpGraphic.maPdfData); + msOriginURL = rImpGraphic.msOriginURL; rImpGraphic.ImplClear(); rImpGraphic.mbDummyContext = false; @@ -373,6 +377,7 @@ void ImpGraphic::ImplClear() ImplClearGraphics(); meType = GraphicType::NONE; mnSizeBytes = 0; + msOriginURL.clear(); } void ImpGraphic::ImplSetDefaultType() |