diff options
author | Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> | 2018-06-18 11:46:10 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-06-28 14:04:58 +0200 |
commit | 0f530cb9fb086e058ba2946e8f956b33924e82f4 (patch) | |
tree | 53496e66b83d536d89dd5a44b5566869cb2d0a2e | |
parent | 521d8ff0e64d59c88fc44ad376c96c1d019a29f1 (diff) |
tdf#117904 Don't allow copying signed shapes
Instead just copy the "unsigned" graphic
Change-Id: I5183b0b33be0469dceaace142d73aa403cc32ef2
Reviewed-on: https://gerrit.libreoffice.org/56472
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 79e434948d65dd9eba150bc986e968bcb3754631)
Reviewed-on: https://gerrit.libreoffice.org/56510
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
-rw-r--r-- | svx/source/svdraw/svdograf.cxx | 5 | ||||
-rw-r--r-- | xmloff/source/draw/SignatureLineContext.cxx | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/svx/source/svdraw/svdograf.cxx b/svx/source/svdraw/svdograf.cxx index 1f623faeffe9..d336c9634d42 100644 --- a/svx/source/svdraw/svdograf.cxx +++ b/svx/source/svdraw/svdograf.cxx @@ -885,7 +885,6 @@ SdrGrafObj& SdrGrafObj::operator=( const SdrGrafObj& rObj ) return *this; SdrRectObj::operator=( rObj ); - mpGraphicObject->SetGraphic( rObj.GetGraphic(), &rObj.GetGraphicObject() ); aFileName = rObj.aFileName; aFilterName = rObj.aFilterName; bMirrored = rObj.bMirrored; @@ -899,6 +898,10 @@ SdrGrafObj& SdrGrafObj::operator=( const SdrGrafObj& rObj ) mbIsSignatureLineShowSignDate = rObj.mbIsSignatureLineShowSignDate; mbIsSignatureLineCanAddComment = rObj.mbIsSignatureLineCanAddComment; mpSignatureLineUnsignedGraphic = rObj.mpSignatureLineUnsignedGraphic; + if (mbIsSignatureLine && rObj.mpSignatureLineUnsignedGraphic) + mpGraphicObject->SetGraphic(rObj.mpSignatureLineUnsignedGraphic); + else + mpGraphicObject->SetGraphic( rObj.GetGraphic(), &rObj.GetGraphicObject() ); if( rObj.IsLinkedGraphic() ) { diff --git a/xmloff/source/draw/SignatureLineContext.cxx b/xmloff/source/draw/SignatureLineContext.cxx index 3adc70dd779c..445d9c73c2bc 100644 --- a/xmloff/source/draw/SignatureLineContext.cxx +++ b/xmloff/source/draw/SignatureLineContext.cxx @@ -100,6 +100,13 @@ SignatureLineContext::SignatureLineContext(SvXMLImport& rImport, sal_uInt16 nPrf "No InvalidSignatureLineImage!"); xGraphic = xSignatureInfo[i].InvalidSignatureLineImage; } + + // Save unsigned graphic + Reference<XGraphic> xUnsignedGraphic; + xPropSet->getPropertyValue("Graphic") >>= xUnsignedGraphic; + if (xUnsignedGraphic.is()) + xPropSet->setPropertyValue("SignatureLineUnsignedImage", Any(xUnsignedGraphic)); + xPropSet->setPropertyValue("Graphic", Any(xGraphic)); break; } |