diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-06-04 15:16:53 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-06-11 08:26:50 +0200 |
commit | daa93e62f76a86c66ebaa7e915e1f6fc71ea02e2 (patch) | |
tree | 7593abc5945137f89f5ad998ec200819f29c88e6 /filter | |
parent | loplugin:useuniqueptr in XMLFilterSettingsDialog (diff) | |
download | core-daa93e62f76a86c66ebaa7e915e1f6fc71ea02e2.tar.gz core-daa93e62f76a86c66ebaa7e915e1f6fc71ea02e2.zip |
loplugin:useuniqueptr in SVGTextWriter
Change-Id: I15828d7dca6569bb4792728e947feaaba47e8bf5
Reviewed-on: https://gerrit.libreoffice.org/55524
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'filter')
-rw-r--r-- | filter/source/svg/svgwriter.cxx | 35 | ||||
-rw-r--r-- | filter/source/svg/svgwriter.hxx | 6 |
2 files changed, 12 insertions, 29 deletions
diff --git a/filter/source/svg/svgwriter.cxx b/filter/source/svg/svgwriter.cxx index 7f740aa7a0c0..c1512f58ecb2 100644 --- a/filter/source/svg/svgwriter.cxx +++ b/filter/source/svg/svgwriter.cxx @@ -1233,7 +1233,7 @@ void SVGTextWriter::startTextShape() mrExport.AddAttribute( XML_NAMESPACE_NONE, aXMLAttrTransform, aTransform ); } - mpTextShapeElem = new SvXMLElementExport( mrExport, XML_NAMESPACE_NONE, aXMLElemText, true, mbIWS ); + mpTextShapeElem.reset(new SvXMLElementExport( mrExport, XML_NAMESPACE_NONE, aXMLElemText, true, mbIWS )); startTextParagraph(); } } @@ -1242,17 +1242,10 @@ void SVGTextWriter::startTextShape() void SVGTextWriter::endTextShape() { endTextParagraph(); - if( mrTextShape.is() ) - mrTextShape.clear(); - if( mrParagraphEnumeration.is() ) - mrParagraphEnumeration.clear(); - if( mrCurrentTextParagraph.is() ) - mrCurrentTextParagraph.clear(); - if( mpTextShapeElem ) - { - delete mpTextShapeElem; - mpTextShapeElem = nullptr; - } + mrTextShape.clear(); + mrParagraphEnumeration.clear(); + mrCurrentTextParagraph.clear(); + mpTextShapeElem.reset(); mbIsTextShapeStarted = false; // these need to be invoked after the <text> element has been closed implExportHyperlinkIds(); @@ -1290,7 +1283,7 @@ void SVGTextWriter::startTextParagraph() } maParentFont = vcl::Font(); addFontAttributes( /* isTexTContainer: */ true ); - mpTextParagraphElem = new SvXMLElementExport( mrExport, XML_NAMESPACE_NONE, aXMLElemTspan, mbIWS, mbIWS ); + mpTextParagraphElem.reset(new SvXMLElementExport( mrExport, XML_NAMESPACE_NONE, aXMLElemTspan, mbIWS, mbIWS )); if( !mbIsListLevelStyleImage ) { @@ -1306,13 +1299,7 @@ void SVGTextWriter::endTextParagraph() mbIsNewListItem = false; mbIsListLevelStyleImage = false; mbPositioningNeeded = false; - - if( mpTextParagraphElem ) - { - delete mpTextParagraphElem; - mpTextParagraphElem = nullptr; - } - + mpTextParagraphElem.reset(); } @@ -1326,17 +1313,13 @@ void SVGTextWriter::startTextPosition( bool bExportX, bool bExportY ) if( bExportY ) mrExport.AddAttribute( XML_NAMESPACE_NONE, aXMLAttrY, OUString::number( maTextPos.Y() ) ); - mpTextPositionElem = new SvXMLElementExport( mrExport, XML_NAMESPACE_NONE, aXMLElemTspan, mbIWS, mbIWS ); + mpTextPositionElem.reset( new SvXMLElementExport( mrExport, XML_NAMESPACE_NONE, aXMLElemTspan, mbIWS, mbIWS ) ); } void SVGTextWriter::endTextPosition() { - if( mpTextPositionElem ) - { - delete mpTextPositionElem; - mpTextPositionElem = nullptr; - } + mpTextPositionElem.reset(); } diff --git a/filter/source/svg/svgwriter.hxx b/filter/source/svg/svgwriter.hxx index 6de5495c68b4..7340efa42e15 100644 --- a/filter/source/svg/svgwriter.hxx +++ b/filter/source/svg/svgwriter.hxx @@ -231,9 +231,9 @@ class SVGTextWriter final Reference<XTextRange> mrCurrentTextPortion; const GDIMetaFile* mpTextEmbeddedBitmapMtf; MapMode* mpTargetMapMode; - SvXMLElementExport* mpTextShapeElem; - SvXMLElementExport* mpTextParagraphElem; - SvXMLElementExport* mpTextPositionElem; + std::unique_ptr<SvXMLElementExport> mpTextShapeElem; + std::unique_ptr<SvXMLElementExport> mpTextParagraphElem; + std::unique_ptr<SvXMLElementExport> mpTextPositionElem; sal_Int32 mnLeftTextPortionLength; Point maTextPos; long int mnTextWidth; |