Kaydet (Commit) c6a23023 authored tarafından Tomaž Vajngerl's avatar Tomaž Vajngerl Kaydeden (comit) Tomaž Vajngerl

Add origin URL to Graphic to remember where the image came from

Change-Id: I73e7377c2049211de0b464efff03058dc5de33a6
Reviewed-on: https://gerrit.libreoffice.org/49554Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarTomaž Vajngerl <quikee@gmail.com>
üst d4a44dc4
......@@ -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();
......
......@@ -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();
......
......@@ -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> {};
......
......@@ -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()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment