[Libreoffice-commits] core.git: 26 commits - include/xmloff sc/source sw/source xmloff/inc xmloff/source
David Tardon
dtardon at redhat.com
Fri Sep 9 05:34:42 UTC 2016
include/xmloff/prstylei.hxx | 4
include/xmloff/shapeimport.hxx | 27 +-
include/xmloff/txtstyli.hxx | 3
include/xmloff/xmlictxt.hxx | 9
include/xmloff/xmlimp.hxx | 2
include/xmloff/xmlnumi.hxx | 7
sc/source/filter/xml/xmlcvali.cxx | 4
sw/source/filter/xml/xmlfmt.cxx | 37 +--
sw/source/filter/xml/xmlitemi.cxx | 4
sw/source/filter/xml/xmltbli.cxx | 45 +--
sw/source/filter/xml/xmltbli.hxx | 4
xmloff/inc/XMLTextColumnsContext.hxx | 14 -
xmloff/inc/xmltabi.hxx | 8
xmloff/source/core/xmlictxt.cxx | 15 +
xmloff/source/core/xmlimp.cxx | 89 +++----
xmloff/source/core/xmlmultiimagehelper.cxx | 6
xmloff/source/draw/XMLShapePropertySetContext.cxx | 4
xmloff/source/draw/sdxmlimp.cxx | 234 ++++++++------------
xmloff/source/draw/sdxmlimp_impl.hxx | 24 +-
xmloff/source/draw/shapeimport.cxx | 232 ++++++++-----------
xmloff/source/draw/ximp3dscene.cxx | 17 -
xmloff/source/draw/ximpshap.cxx | 28 +-
xmloff/source/draw/ximpstyl.cxx | 67 +----
xmloff/source/draw/ximpstyl.hxx | 11
xmloff/source/forms/layerimport.cxx | 33 --
xmloff/source/forms/layerimport.hxx | 3
xmloff/source/style/XMLFontStylesContext_impl.hxx | 2
xmloff/source/style/prstylei.cxx | 12 -
xmloff/source/style/xmlnumi.cxx | 31 --
xmloff/source/style/xmlstyle.cxx | 50 +---
xmloff/source/style/xmltabi.cxx | 32 --
xmloff/source/table/XMLTableImport.cxx | 2
xmloff/source/text/XMLIndexTOCContext.cxx | 8
xmloff/source/text/XMLTextColumnsContext.cxx | 59 +----
xmloff/source/text/XMLTextFrameContext.cxx | 24 +-
xmloff/source/text/XMLTextFrameHyperlinkContext.cxx | 12 -
xmloff/source/text/XMLTextListBlockContext.cxx | 6
xmloff/source/text/XMLTextShapeStyleContext.cxx | 4
xmloff/source/text/txtfldi.cxx | 4
xmloff/source/text/txtimp.cxx | 32 +-
xmloff/source/text/txtlists.cxx | 10
xmloff/source/text/txtparaimphint.hxx | 25 --
xmloff/source/text/txtstyli.cxx | 20 -
43 files changed, 523 insertions(+), 741 deletions(-)
New commits:
commit 0f9a81c8f58c1a9e771d7ff90abe3c20e8283f94
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 16:27:25 2016 +0200
remove manual memory management
Change-Id: I07960df50645fb77b24eaad4a60f93b715cbb6a9
diff --git a/xmloff/source/style/xmlstyle.cxx b/xmloff/source/style/xmlstyle.cxx
index 885cabd..a77496a 100644
--- a/xmloff/source/style/xmlstyle.cxx
+++ b/xmloff/source/style/xmlstyle.cxx
@@ -207,27 +207,26 @@ class SvXMLStyleIndex_Impl
{
OUString sName;
sal_uInt16 nFamily;
- const SvXMLStyleContext *pStyle;
+ const uno::Reference<SvXMLStyleContext> mxStyle;
public:
SvXMLStyleIndex_Impl( sal_uInt16 nFam, const OUString& rName ) :
sName( rName ),
- nFamily( nFam ),
- pStyle ( nullptr )
+ nFamily( nFam )
{
}
- SvXMLStyleIndex_Impl( const SvXMLStyleContext *pStl ) :
- sName( pStl->GetName() ),
- nFamily( pStl->GetFamily() ),
- pStyle ( pStl )
+ SvXMLStyleIndex_Impl( const uno::Reference<SvXMLStyleContext> &rStl ) :
+ sName( rStl->GetName() ),
+ nFamily( rStl->GetFamily() ),
+ mxStyle ( rStl )
{
}
const OUString& GetName() const { return sName; }
sal_uInt16 GetFamily() const { return nFamily; }
- const SvXMLStyleContext *GetStyle() const { return pStyle; }
+ const SvXMLStyleContext *GetStyle() const { return mxStyle.get(); }
};
struct SvXMLStyleIndexCmp_Impl
@@ -249,7 +248,7 @@ struct SvXMLStyleIndexCmp_Impl
class SvXMLStylesContext_Impl
{
- typedef std::vector<SvXMLStyleContext*> StylesType;
+ typedef std::vector<uno::Reference<SvXMLStyleContext>> StylesType;
typedef std::set<SvXMLStyleIndex_Impl, SvXMLStyleIndexCmp_Impl> IndicesType;
StylesType aStyles;
@@ -264,13 +263,12 @@ class SvXMLStylesContext_Impl
public:
explicit SvXMLStylesContext_Impl( bool bAuto );
- ~SvXMLStylesContext_Impl();
size_t GetStyleCount() const { return aStyles.size(); }
SvXMLStyleContext *GetStyle( size_t i )
{
- return i < aStyles.size() ? aStyles[ i ] : nullptr;
+ return i < aStyles.size() ? aStyles[ i ].get() : nullptr;
}
inline void AddStyle( SvXMLStyleContext *pStyle );
@@ -289,19 +287,9 @@ SvXMLStylesContext_Impl::SvXMLStylesContext_Impl( bool bAuto ) :
#endif
{}
-SvXMLStylesContext_Impl::~SvXMLStylesContext_Impl()
-{
- for (SvXMLStyleContext* pStyle : aStyles)
- {
- pStyle->ReleaseRef();
- }
- aStyles.clear();
-}
-
inline void SvXMLStylesContext_Impl::AddStyle( SvXMLStyleContext *pStyle )
{
aStyles.push_back( pStyle );
- pStyle->AddFirstRef();
FlushIndex();
}
@@ -309,11 +297,6 @@ inline void SvXMLStylesContext_Impl::AddStyle( SvXMLStyleContext *pStyle )
void SvXMLStylesContext_Impl::Clear()
{
FlushIndex();
-
- for (SvXMLStyleContext* pStyle : aStyles)
- {
- pStyle->ReleaseRef();
- }
aStyles.clear();
}
@@ -345,7 +328,7 @@ const SvXMLStyleContext *SvXMLStylesContext_Impl::FindStyleChildContext( sal_uIn
{
for( size_t i = 0; !pStyle && i < aStyles.size(); i++ )
{
- const SvXMLStyleContext *pS = aStyles[ i ];
+ const SvXMLStyleContext *pS = aStyles[ i ].get();
if( pS->GetFamily() == nFamily &&
pS->GetName() == rName )
pStyle = pS;
commit 6678ff2e84f134a670259b48a7ba1721fccdaeb6
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 15:41:11 2016 +0200
improve comment
Change-Id: I475902aa68b426ce27782ed80f45344b57eadd9c
diff --git a/xmloff/source/text/txtstyli.cxx b/xmloff/source/text/txtstyli.cxx
index f603699..6a78c2d 100644
--- a/xmloff/source/text/txtstyli.cxx
+++ b/xmloff/source/text/txtstyli.cxx
@@ -226,7 +226,7 @@ void XMLTextStyleContext::CreateAndInsert( bool bOverwrite )
// tell the style about it's events (if applicable)
if (mxEventContext.is())
{
- // set event suppplier and release reference to context
+ // pass events into event suppplier
Reference<document::XEventsSupplier> xEventsSupplier(xStyle,UNO_QUERY);
mxEventContext->SetEvents(xEventsSupplier);
mxEventContext.clear();
commit 084de9dda40095937dfb990fc39edea31626dba3
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 15:40:23 2016 +0200
remove manual memory management
Change-Id: Ic715adae42ff34be892d19802629aa50077dc120
diff --git a/include/xmloff/txtstyli.hxx b/include/xmloff/txtstyli.hxx
index bfcd7fc..3b7cb23 100644
--- a/include/xmloff/txtstyli.hxx
+++ b/include/xmloff/txtstyli.hxx
@@ -53,7 +53,7 @@ private:
// Introduce import of empty list style (#i69523#)
bool mbListStyleSet : 1;
- XMLEventsImportContext* pEventContext;
+ css::uno::Reference<XMLEventsImportContext> mxEventContext;
protected:
@@ -69,7 +69,6 @@ public:
const css::uno::Reference< css::xml::sax::XAttributeList > & xAttrList,
SvXMLStylesContext& rStyles, sal_uInt16 nFamily,
bool bDefaultStyle = false );
- virtual ~XMLTextStyleContext();
virtual SvXMLImportContext *CreateChildContext(
sal_uInt16 nPrefix,
diff --git a/xmloff/source/text/txtstyli.cxx b/xmloff/source/text/txtstyli.cxx
index 5564408..f603699 100644
--- a/xmloff/source/text/txtstyli.cxx
+++ b/xmloff/source/text/txtstyli.cxx
@@ -146,11 +146,6 @@ XMLTextStyleContext::XMLTextStyleContext( SvXMLImport& rImport,
, bHasCombinedCharactersLetter( false )
// Inherited paragraph style lost information about unset numbering (#i69523#)
, mbListStyleSet( false )
-, pEventContext( nullptr )
-{
-}
-
-XMLTextStyleContext::~XMLTextStyleContext()
{
}
@@ -192,10 +187,9 @@ SvXMLImportContext *XMLTextStyleContext::CreateChildContext(
{
// create and remember events import context
// (for delayed processing of events)
- pEventContext = new XMLEventsImportContext( GetImport(), nPrefix,
- rLocalName);
- pEventContext->AddFirstRef();
- pContext = pEventContext;
+ mxEventContext.set(new XMLEventsImportContext( GetImport(), nPrefix,
+ rLocalName));
+ pContext = mxEventContext.get();
}
if( !pContext )
@@ -230,12 +224,12 @@ void XMLTextStyleContext::CreateAndInsert( bool bOverwrite )
}
// tell the style about it's events (if applicable)
- if (nullptr != pEventContext)
+ if (mxEventContext.is())
{
// set event suppplier and release reference to context
Reference<document::XEventsSupplier> xEventsSupplier(xStyle,UNO_QUERY);
- pEventContext->SetEvents(xEventsSupplier);
- pEventContext->ReleaseRef();
+ mxEventContext->SetEvents(xEventsSupplier);
+ mxEventContext.clear();
}
// XML import: reconstrution of assignment of paragraph style to outline levels (#i69629#)
commit 7dd877b4be3ca9cad441b88e4510d5917d25b5b6
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 15:01:39 2016 +0200
remove manual memory management
Change-Id: I218784e052ee4d7b9a64ac54cdfaa0f8d08aacad
diff --git a/xmloff/source/text/txtparaimphint.hxx b/xmloff/source/text/txtparaimphint.hxx
index 84da197..c2eeaee 100644
--- a/xmloff/source/text/txtparaimphint.hxx
+++ b/xmloff/source/text/txtparaimphint.hxx
@@ -106,22 +106,15 @@ class XMLHyperlinkHint_Impl : public XMLHint_Impl
OUString sTargetFrameName;
OUString sStyleName;
OUString sVisitedStyleName;
- XMLEventsImportContext* pEvents;
+ css::uno::Reference<XMLEventsImportContext> mxEvents;
public:
XMLHyperlinkHint_Impl( const css::uno::Reference < css::text::XTextRange > & rPos ) :
- XMLHint_Impl( XML_HINT_HYPERLINK, rPos, rPos ),
- pEvents( nullptr )
+ XMLHint_Impl( XML_HINT_HYPERLINK, rPos, rPos )
{
}
- virtual ~XMLHyperlinkHint_Impl()
- {
- if (nullptr != pEvents)
- pEvents->ReleaseRef();
- }
-
void SetHRef( const OUString& s ) { sHRef = s; }
const OUString& GetHRef() const { return sHRef; }
void SetName( const OUString& s ) { sName = s; }
@@ -134,13 +127,11 @@ public:
const OUString& GetVisitedStyleName() const { return sVisitedStyleName; }
XMLEventsImportContext* GetEventsContext() const
{
- return pEvents;
+ return mxEvents.get();
}
void SetEventsContext( XMLEventsImportContext* pCtxt )
{
- pEvents = pCtxt;
- if (pEvents != nullptr)
- pEvents->AddFirstRef();
+ mxEvents.set(pCtxt);
}
};
commit c6a65137436c87a6e9f85d46193c42ba35698446
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:59:12 2016 +0200
use std::unique_ptr
Change-Id: I352e542de656d22963eb872f79b40e20008d0a32
diff --git a/xmloff/inc/XMLTextColumnsContext.hxx b/xmloff/inc/XMLTextColumnsContext.hxx
index b750adb..15b40cd 100644
--- a/xmloff/inc/XMLTextColumnsContext.hxx
+++ b/xmloff/inc/XMLTextColumnsContext.hxx
@@ -20,6 +20,8 @@
#ifndef INCLUDED_XMLOFF_INC_XMLTEXTCOLUMNSCONTEXT_HXX
#define INCLUDED_XMLOFF_INC_XMLTEXTCOLUMNSCONTEXT_HXX
+#include <memory>
+
#include "XMLElementPropertyContext.hxx"
class XMLTextColumnContext_Impl;
@@ -39,10 +41,10 @@ class XMLTextColumnsContext :public XMLElementPropertyContext
const OUString sSeparatorLineStyle;
- XMLTextColumnsArray_Impl *pColumns;
+ std::unique_ptr<XMLTextColumnsArray_Impl> pColumns;
css::uno::Reference<XMLTextColumnSepContext_Impl> mxColumnSep;
- SvXMLTokenMap *pColumnAttrTokenMap;
- SvXMLTokenMap *pColumnSepAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> pColumnAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> pColumnSepAttrTokenMap;
sal_Int16 nCount;
bool bAutomatic;
sal_Int32 nAutomaticDistance;
@@ -56,8 +58,6 @@ public:
const XMLPropertyState& rProp,
::std::vector< XMLPropertyState > &rProps );
- virtual ~XMLTextColumnsContext();
-
virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix,
const OUString& rLocalName,
const css::uno::Reference< css::xml::sax::XAttributeList > & xAttrList ) override;
diff --git a/xmloff/source/text/XMLTextColumnsContext.cxx b/xmloff/source/text/XMLTextColumnsContext.cxx
index 475f9c9..95440b0 100644
--- a/xmloff/source/text/XMLTextColumnsContext.cxx
+++ b/xmloff/source/text/XMLTextColumnsContext.cxx
@@ -22,6 +22,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/style/VerticalAlignment.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <o3tl/make_unique.hxx>
#include <sax/tools/converter.hxx>
#include <xmloff/xmltkmap.hxx>
#include <xmloff/xmluconv.hxx>
@@ -275,7 +276,6 @@ XMLTextColumnsContext::XMLTextColumnsContext(
, sSeparatorLineVerticalAlignment("SeparatorLineVerticalAlignment")
, sAutomaticDistance("AutomaticDistance")
, sSeparatorLineStyle("SeparatorLineStyle")
-, pColumns( nullptr )
, pColumnAttrTokenMap( new SvXMLTokenMap(aColAttrTokenMap) )
, pColumnSepAttrTokenMap( new SvXMLTokenMap(aColSepAttrTokenMap) )
, nCount( 0 )
@@ -308,13 +308,6 @@ XMLTextColumnsContext::XMLTextColumnsContext(
}
}
-XMLTextColumnsContext::~XMLTextColumnsContext()
-{
- delete pColumns;
- delete pColumnAttrTokenMap;
- delete pColumnSepAttrTokenMap;
-}
-
SvXMLImportContext *XMLTextColumnsContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -331,7 +324,7 @@ SvXMLImportContext *XMLTextColumnsContext::CreateChildContext(
// add new tabstop to array of tabstops
if( !pColumns )
- pColumns = new XMLTextColumnsArray_Impl;
+ pColumns = o3tl::make_unique<XMLTextColumnsArray_Impl>();
pColumns->push_back( xColumn );
commit 516992ec6e8d67552610928b91d7b0d9f7014600
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:56:44 2016 +0200
remove manual memory management
Change-Id: Ice48916fc9841a29b3a02997375347c7b605effe
diff --git a/xmloff/inc/XMLTextColumnsContext.hxx b/xmloff/inc/XMLTextColumnsContext.hxx
index f743632..b750adb 100644
--- a/xmloff/inc/XMLTextColumnsContext.hxx
+++ b/xmloff/inc/XMLTextColumnsContext.hxx
@@ -26,7 +26,7 @@ class XMLTextColumnContext_Impl;
class XMLTextColumnSepContext_Impl;
class SvXMLTokenMap;
-typedef std::vector<XMLTextColumnContext_Impl *> XMLTextColumnsArray_Impl;
+typedef std::vector<css::uno::Reference<XMLTextColumnContext_Impl>> XMLTextColumnsArray_Impl;
class XMLTextColumnsContext :public XMLElementPropertyContext
{
@@ -40,7 +40,7 @@ class XMLTextColumnsContext :public XMLElementPropertyContext
XMLTextColumnsArray_Impl *pColumns;
- XMLTextColumnSepContext_Impl *pColumnSep;
+ css::uno::Reference<XMLTextColumnSepContext_Impl> mxColumnSep;
SvXMLTokenMap *pColumnAttrTokenMap;
SvXMLTokenMap *pColumnSepAttrTokenMap;
sal_Int16 nCount;
diff --git a/xmloff/source/text/XMLTextColumnsContext.cxx b/xmloff/source/text/XMLTextColumnsContext.cxx
index 08e8d05..475f9c9 100644
--- a/xmloff/source/text/XMLTextColumnsContext.cxx
+++ b/xmloff/source/text/XMLTextColumnsContext.cxx
@@ -276,7 +276,6 @@ XMLTextColumnsContext::XMLTextColumnsContext(
, sAutomaticDistance("AutomaticDistance")
, sSeparatorLineStyle("SeparatorLineStyle")
, pColumns( nullptr )
-, pColumnSep( nullptr )
, pColumnAttrTokenMap( new SvXMLTokenMap(aColAttrTokenMap) )
, pColumnSepAttrTokenMap( new SvXMLTokenMap(aColSepAttrTokenMap) )
, nCount( 0 )
@@ -311,17 +310,6 @@ XMLTextColumnsContext::XMLTextColumnsContext(
XMLTextColumnsContext::~XMLTextColumnsContext()
{
- if( pColumns )
- {
- for (XMLTextColumnsArray_Impl::iterator it = pColumns->begin();
- it != pColumns->end(); ++it)
- {
- (*it)->ReleaseRef();
- }
- }
- if( pColumnSep )
- pColumnSep->ReleaseRef();
-
delete pColumns;
delete pColumnAttrTokenMap;
delete pColumnSepAttrTokenMap;
@@ -337,28 +325,26 @@ SvXMLImportContext *XMLTextColumnsContext::CreateChildContext(
if( XML_NAMESPACE_STYLE == nPrefix &&
IsXMLToken( rLocalName, XML_COLUMN ) )
{
- XMLTextColumnContext_Impl *pColumn =
+ const uno::Reference<XMLTextColumnContext_Impl> xColumn{
new XMLTextColumnContext_Impl( GetImport(), nPrefix, rLocalName,
- xAttrList, *pColumnAttrTokenMap );
+ xAttrList, *pColumnAttrTokenMap )};
// add new tabstop to array of tabstops
if( !pColumns )
pColumns = new XMLTextColumnsArray_Impl;
- pColumns->push_back( pColumn );
- pColumn->AddFirstRef();
+ pColumns->push_back( xColumn );
- pContext = pColumn;
+ pContext = xColumn.get();
}
else if( XML_NAMESPACE_STYLE == nPrefix &&
IsXMLToken( rLocalName, XML_COLUMN_SEP ) )
{
- pColumnSep =
+ mxColumnSep.set(
new XMLTextColumnSepContext_Impl( GetImport(), nPrefix, rLocalName,
- xAttrList, *pColumnSepAttrTokenMap );
- pColumnSep->AddFirstRef();
+ xAttrList, *pColumnSepAttrTokenMap ));
- pContext = pColumnSep;
+ pContext = mxColumnSep.get();
}
else
{
@@ -442,29 +428,29 @@ void XMLTextColumnsContext::EndElement( )
Reference < XPropertySet > xPropSet( xColumns, UNO_QUERY );
if( xPropSet.is() )
{
- bool bOn = pColumnSep != nullptr;
+ bool bOn = mxColumnSep != nullptr;
xPropSet->setPropertyValue( sSeparatorLineIsOn, Any(bOn) );
- if( pColumnSep )
+ if( mxColumnSep.is() )
{
- if( pColumnSep->GetWidth() )
+ if( mxColumnSep->GetWidth() )
{
- xPropSet->setPropertyValue( sSeparatorLineWidth, Any(pColumnSep->GetWidth()) );
+ xPropSet->setPropertyValue( sSeparatorLineWidth, Any(mxColumnSep->GetWidth()) );
}
- if( pColumnSep->GetHeight() )
+ if( mxColumnSep->GetHeight() )
{
xPropSet->setPropertyValue( sSeparatorLineRelativeHeight,
- Any(pColumnSep->GetHeight()) );
+ Any(mxColumnSep->GetHeight()) );
}
- if ( pColumnSep->GetStyle() )
+ if ( mxColumnSep->GetStyle() )
{
- xPropSet->setPropertyValue( sSeparatorLineStyle, Any(pColumnSep->GetStyle()) );
+ xPropSet->setPropertyValue( sSeparatorLineStyle, Any(mxColumnSep->GetStyle()) );
}
- xPropSet->setPropertyValue( sSeparatorLineColor, Any(pColumnSep->GetColor()) );
+ xPropSet->setPropertyValue( sSeparatorLineColor, Any(mxColumnSep->GetColor()) );
- xPropSet->setPropertyValue( sSeparatorLineVerticalAlignment, Any(pColumnSep->GetVertAlign()) );
+ xPropSet->setPropertyValue( sSeparatorLineVerticalAlignment, Any(mxColumnSep->GetVertAlign()) );
}
// handle 'automatic columns': column distance
commit 73f32870cf3b88b65c40e362fae9bb63e51ec5ce
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:50:52 2016 +0200
use std::unique_ptr
Change-Id: I3cbe6058cd0d1bccb786866a6adf4859424e36ab
diff --git a/xmloff/inc/xmltabi.hxx b/xmloff/inc/xmltabi.hxx
index ecc1b4a..de941e5 100644
--- a/xmloff/inc/xmltabi.hxx
+++ b/xmloff/inc/xmltabi.hxx
@@ -20,6 +20,8 @@
#ifndef INCLUDED_XMLOFF_INC_XMLTABI_HXX
#define INCLUDED_XMLOFF_INC_XMLTABI_HXX
+#include <memory>
+
#include "XMLElementPropertyContext.hxx"
class SvXMLImport;
@@ -30,7 +32,7 @@ typedef std::vector<css::uno::Reference<SvxXMLTabStopContext_Impl>> SvxXMLTabSto
class SvxXMLTabStopImportContext : public XMLElementPropertyContext
{
private:
- SvxXMLTabStopArray_Impl* mpTabStops;
+ std::unique_ptr<SvxXMLTabStopArray_Impl> mpTabStops;
public:
@@ -39,8 +41,6 @@ public:
const XMLPropertyState& rProp,
::std::vector< XMLPropertyState > &rProps );
- virtual ~SvxXMLTabStopImportContext();
-
virtual SvXMLImportContext *CreateChildContext( sal_uInt16 nPrefix,
const OUString& rLocalName,
const css::uno::Reference< css::xml::sax::XAttributeList > & xAttrList ) override;
diff --git a/xmloff/source/style/xmltabi.cxx b/xmloff/source/style/xmltabi.cxx
index c2b6557..33382e9 100644
--- a/xmloff/source/style/xmltabi.cxx
+++ b/xmloff/source/style/xmltabi.cxx
@@ -18,6 +18,7 @@
*/
#include <com/sun/star/style/TabAlign.hpp>
+#include <o3tl/make_unique.hxx>
#include <rtl/ustrbuf.hxx>
#include <xmloff/xmltkmap.hxx>
#include <xmloff/nmspmap.hxx>
@@ -172,16 +173,10 @@ SvxXMLTabStopImportContext::SvxXMLTabStopImportContext(
const OUString& rLName,
const XMLPropertyState& rProp,
::std::vector< XMLPropertyState > &rProps )
-: XMLElementPropertyContext( rImport, nPrfx, rLName, rProp, rProps ),
- mpTabStops( nullptr )
+: XMLElementPropertyContext( rImport, nPrfx, rLName, rProp, rProps )
{
}
-SvxXMLTabStopImportContext::~SvxXMLTabStopImportContext()
-{
- delete mpTabStops;
-}
-
SvXMLImportContext *SvxXMLTabStopImportContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -198,7 +193,7 @@ SvXMLImportContext *SvxXMLTabStopImportContext::CreateChildContext(
// add new tabstop to array of tabstops
if( !mpTabStops )
- mpTabStops = new SvxXMLTabStopArray_Impl;
+ mpTabStops = o3tl::make_unique<SvxXMLTabStopArray_Impl>();
mpTabStops->push_back( xTabStopContext );
commit 655b94643cae76e09d179adc8172790fcff3f881
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:49:11 2016 +0200
remove manual memory management
Change-Id: I3f5259ac7cf099a5d03d95a7e9132cc8cb6d0734
diff --git a/xmloff/inc/xmltabi.hxx b/xmloff/inc/xmltabi.hxx
index 5fb54e0..ecc1b4a 100644
--- a/xmloff/inc/xmltabi.hxx
+++ b/xmloff/inc/xmltabi.hxx
@@ -25,7 +25,7 @@
class SvXMLImport;
class SvxXMLTabStopContext_Impl;
-typedef std::vector<SvxXMLTabStopContext_Impl *> SvxXMLTabStopArray_Impl;
+typedef std::vector<css::uno::Reference<SvxXMLTabStopContext_Impl>> SvxXMLTabStopArray_Impl;
class SvxXMLTabStopImportContext : public XMLElementPropertyContext
{
diff --git a/xmloff/source/style/xmltabi.cxx b/xmloff/source/style/xmltabi.cxx
index d922b4b..c2b6557 100644
--- a/xmloff/source/style/xmltabi.cxx
+++ b/xmloff/source/style/xmltabi.cxx
@@ -179,16 +179,6 @@ SvxXMLTabStopImportContext::SvxXMLTabStopImportContext(
SvxXMLTabStopImportContext::~SvxXMLTabStopImportContext()
{
- if( mpTabStops )
- {
- while( !mpTabStops->empty() )
- {
- SvxXMLTabStopContext_Impl *pTabStop = mpTabStops->back();
- mpTabStops->pop_back();
- pTabStop->ReleaseRef();
- }
- }
-
delete mpTabStops;
}
@@ -202,18 +192,17 @@ SvXMLImportContext *SvxXMLTabStopImportContext::CreateChildContext(
if( XML_NAMESPACE_STYLE == nPrefix && IsXMLToken( rLocalName, XML_TAB_STOP ) )
{
// create new tabstop import context
- SvxXMLTabStopContext_Impl *pTabStopContext =
+ const uno::Reference<SvxXMLTabStopContext_Impl> xTabStopContext{
new SvxXMLTabStopContext_Impl( GetImport(), nPrefix, rLocalName,
- xAttrList );
+ xAttrList )};
// add new tabstop to array of tabstops
if( !mpTabStops )
mpTabStops = new SvxXMLTabStopArray_Impl;
- mpTabStops->push_back( pTabStopContext );
- pTabStopContext->AddFirstRef();
+ mpTabStops->push_back( xTabStopContext );
- pContext = pTabStopContext;
+ pContext = xTabStopContext.get();
}
else
{
@@ -235,7 +224,7 @@ void SvxXMLTabStopImportContext::EndElement( )
style::TabStop* pTabStops = aSeq.getArray();
for( sal_uInt16 i=0; i < nCount; i++ )
{
- SvxXMLTabStopContext_Impl *pTabStopContext = (*mpTabStops)[i];
+ SvxXMLTabStopContext_Impl *pTabStopContext = (*mpTabStops)[i].get();
const style::TabStop& rTabStop = pTabStopContext->getTabStop();
bool bDflt = style::TabAlign_DEFAULT == rTabStop.Alignment;
if( !bDflt || 0==i )
commit 4bda91ca86f0036320140178a533c6424b01e43f
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:45:44 2016 +0200
use std::unique_ptr
Change-Id: I26ab9b4fa441fcbcce8eb013a1d7dce5c8591b6d
diff --git a/xmloff/source/style/xmlstyle.cxx b/xmloff/source/style/xmlstyle.cxx
index 6d9e8d9..885cabd 100644
--- a/xmloff/source/style/xmlstyle.cxx
+++ b/xmloff/source/style/xmlstyle.cxx
@@ -29,6 +29,7 @@
#include <com/sun/star/style/XAutoStylesSupplier.hpp>
#include <com/sun/star/style/XAutoStyleFamily.hpp>
#include "PageMasterPropMapper.hxx"
+#include <o3tl/make_unique.hxx>
#include <tools/debug.hxx>
#include <svl/itemset.hxx>
#include <xmloff/nmspmap.hxx>
@@ -53,6 +54,7 @@
#include "PageMasterImportContext.hxx"
#include "PageMasterImportPropMapper.hxx"
+#include <memory>
#include <set>
#include <vector>
@@ -251,14 +253,14 @@ class SvXMLStylesContext_Impl
typedef std::set<SvXMLStyleIndex_Impl, SvXMLStyleIndexCmp_Impl> IndicesType;
StylesType aStyles;
- mutable IndicesType* pIndices;
+ mutable std::unique_ptr<IndicesType> pIndices;
bool bAutomaticStyle;
#if OSL_DEBUG_LEVEL > 0
mutable sal_uInt32 m_nIndexCreated;
#endif
- void FlushIndex() { delete pIndices; pIndices = nullptr; }
+ void FlushIndex() { pIndices.reset(); }
public:
explicit SvXMLStylesContext_Impl( bool bAuto );
@@ -281,7 +283,6 @@ public:
};
SvXMLStylesContext_Impl::SvXMLStylesContext_Impl( bool bAuto ) :
- pIndices( nullptr ),
bAutomaticStyle( bAuto )
#if OSL_DEBUG_LEVEL > 0
, m_nIndexCreated( 0 )
@@ -290,8 +291,6 @@ SvXMLStylesContext_Impl::SvXMLStylesContext_Impl( bool bAuto ) :
SvXMLStylesContext_Impl::~SvXMLStylesContext_Impl()
{
- delete pIndices;
-
for (SvXMLStyleContext* pStyle : aStyles)
{
pStyle->ReleaseRef();
@@ -326,7 +325,7 @@ const SvXMLStyleContext *SvXMLStylesContext_Impl::FindStyleChildContext( sal_uIn
if( !pIndices && bCreateIndex && !aStyles.empty() )
{
- pIndices = new IndicesType(aStyles.begin(), aStyles.end());
+ pIndices = o3tl::make_unique<IndicesType>(aStyles.begin(), aStyles.end());
SAL_WARN_IF(pIndices->size() != aStyles.size(), "xmloff", "Here is a duplicate Style");
#if OSL_DEBUG_LEVEL > 0
SAL_WARN_IF(0 != m_nIndexCreated, "xmloff.style",
@@ -341,7 +340,7 @@ const SvXMLStyleContext *SvXMLStylesContext_Impl::FindStyleChildContext( sal_uIn
IndicesType::iterator aFind = pIndices->find(aIndex);
if( aFind != pIndices->end() )
pStyle = aFind->GetStyle();
- }
+ }
else
{
for( size_t i = 0; !pStyle && i < aStyles.size(); i++ )
commit a363175cfc100664efa218b87a4d9a143014054a
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:36:25 2016 +0200
remove direct memory management
Change-Id: I9c7d53a9cfd5c03e1551626a96cdaa30fc4e546b
diff --git a/include/xmloff/xmlnumi.hxx b/include/xmloff/xmlnumi.hxx
index f6bf8d6..dbe8adc 100644
--- a/include/xmloff/xmlnumi.hxx
+++ b/include/xmloff/xmlnumi.hxx
@@ -33,7 +33,7 @@
namespace com { namespace sun { namespace star { namespace frame { class XModel; } } } }
class SvxXMLListLevelStyleContext_Impl;
-typedef std::vector<SvxXMLListLevelStyleContext_Impl *> SvxXMLListStyle_Impl;
+typedef std::vector<css::uno::Reference<SvxXMLListLevelStyleContext_Impl>> SvxXMLListStyle_Impl;
class XMLOFF_DLLPUBLIC SvxXMLListStyleContext
: public SvXMLStyleContext
@@ -66,8 +66,6 @@ public:
const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList,
bool bOutl = false );
- virtual ~SvxXMLListStyleContext();
-
virtual SvXMLImportContext *CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
diff --git a/xmloff/source/style/xmlnumi.cxx b/xmloff/source/style/xmlnumi.cxx
index b087fed..bfec980 100644
--- a/xmloff/source/style/xmlnumi.cxx
+++ b/xmloff/source/style/xmlnumi.cxx
@@ -1033,20 +1033,6 @@ SvxXMLListStyleContext::SvxXMLListStyleContext( SvXMLImport& rImport,
{
}
-SvxXMLListStyleContext::~SvxXMLListStyleContext()
-{
- if( pLevelStyles )
- {
- while( !pLevelStyles->empty() )
- {
- SvxXMLListLevelStyleContext_Impl *pStyle = pLevelStyles->back();
- pLevelStyles->pop_back();
- pStyle->ReleaseRef();
- }
- }
-}
-
-
SvXMLImportContext *SvxXMLListStyleContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -1061,15 +1047,14 @@ SvXMLImportContext *SvxXMLListStyleContext::CreateChildContext(
IsXMLToken( rLocalName, XML_LIST_LEVEL_STYLE_BULLET ) ||
IsXMLToken( rLocalName, XML_LIST_LEVEL_STYLE_IMAGE ) ) ) )
{
- SvxXMLListLevelStyleContext_Impl *pLevelStyle =
+ uno::Reference<SvxXMLListLevelStyleContext_Impl> xLevelStyle{
new SvxXMLListLevelStyleContext_Impl( GetImport(), nPrefix,
- rLocalName, xAttrList );
+ rLocalName, xAttrList )};
if( !pLevelStyles )
pLevelStyles = o3tl::make_unique<SvxXMLListStyle_Impl>();
- pLevelStyles->push_back( pLevelStyle );
- pLevelStyle->AddFirstRef();
+ pLevelStyles->push_back( xLevelStyle );
- pContext = pLevelStyle;
+ pContext = xLevelStyle.get();
}
else
{
@@ -1091,7 +1076,7 @@ void SvxXMLListStyleContext::FillUnoNumRule(
for( sal_uInt16 i=0; i < nCount; i++ )
{
SvxXMLListLevelStyleContext_Impl *pLevelStyle =
- (*pLevelStyles)[i];
+ (*pLevelStyles)[i].get();
sal_Int32 nLevel = pLevelStyle->GetLevel();
if( nLevel >= 0 && nLevel < l_nLevels )
{
commit a66933a890a70f5ff2ac43ccc03c26540ef2ccb3
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 14:34:42 2016 +0200
use std::unique_ptr
Change-Id: I5128b3e950657f3fe6fc71a8de56c9dd87ac2324
diff --git a/include/xmloff/xmlnumi.hxx b/include/xmloff/xmlnumi.hxx
index 1b5983e..f6bf8d6 100644
--- a/include/xmloff/xmlnumi.hxx
+++ b/include/xmloff/xmlnumi.hxx
@@ -22,6 +22,7 @@
#include <sal/config.h>
+#include <memory>
#include <vector>
#include <com/sun/star/container/XIndexReplace.hpp>
@@ -43,7 +44,7 @@ class XMLOFF_DLLPUBLIC SvxXMLListStyleContext
css::uno::Reference< css::container::XIndexReplace > xNumRules;
- SvxXMLListStyle_Impl *pLevelStyles;
+ std::unique_ptr<SvxXMLListStyle_Impl> pLevelStyles;
sal_Int32 nLevels;
bool bConsecutive : 1;
diff --git a/xmloff/source/style/xmlnumi.cxx b/xmloff/source/style/xmlnumi.cxx
index 5feafab..b087fed 100644
--- a/xmloff/source/style/xmlnumi.cxx
+++ b/xmloff/source/style/xmlnumi.cxx
@@ -31,6 +31,7 @@
#include <com/sun/star/io/XOutputStream.hpp>
#include <o3tl/any.hxx>
+#include <o3tl/make_unique.hxx>
#include <rtl/ustrbuf.hxx>
#include <osl/diagnose.h>
@@ -1026,7 +1027,6 @@ SvxXMLListStyleContext::SvxXMLListStyleContext( SvXMLImport& rImport,
, sIsPhysical( "IsPhysical" )
, sNumberingRules( "NumberingRules" )
, sIsContinuousNumbering( "IsContinuousNumbering" )
-, pLevelStyles( nullptr )
, nLevels( 0 )
, bConsecutive( false )
, bOutline( bOutl )
@@ -1044,8 +1044,6 @@ SvxXMLListStyleContext::~SvxXMLListStyleContext()
pStyle->ReleaseRef();
}
}
-
- delete pLevelStyles;
}
@@ -1067,7 +1065,7 @@ SvXMLImportContext *SvxXMLListStyleContext::CreateChildContext(
new SvxXMLListLevelStyleContext_Impl( GetImport(), nPrefix,
rLocalName, xAttrList );
if( !pLevelStyles )
- pLevelStyles = new SvxXMLListStyle_Impl;
+ pLevelStyles = o3tl::make_unique<SvxXMLListStyle_Impl>();
pLevelStyles->push_back( pLevelStyle );
pLevelStyle->AddFirstRef();
commit 91c8bec906cd3c39b9da5629391b151d1bad9a03
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:33:01 2016 +0200
remove direct memory management
Change-Id: I269d42704004f2d6e620fedc82a27e7982ecda23
diff --git a/xmloff/source/forms/layerimport.cxx b/xmloff/source/forms/layerimport.cxx
index c25565e..7992650 100644
--- a/xmloff/source/forms/layerimport.cxx
+++ b/xmloff/source/forms/layerimport.cxx
@@ -71,7 +71,6 @@ using namespace ::com::sun::star::sdb;
//= OFormLayerXMLImport_Impl
OFormLayerXMLImport_Impl::OFormLayerXMLImport_Impl(SvXMLImport& _rImporter)
:m_rImporter(_rImporter)
- ,m_pAutoStyles(nullptr)
{
// build the attribute2property map
// string properties which are exported as attributes
@@ -226,20 +225,10 @@ OFormLayerXMLImport_Impl::OFormLayerXMLImport_Impl(SvXMLImport& _rImporter)
m_aCurrentPageIds = m_aControlIds.end();
}
-OFormLayerXMLImport_Impl::~OFormLayerXMLImport_Impl()
-{
- // outlined to allow forward declaration of OAttribute2Property in the header
-
- if (m_pAutoStyles)
- m_pAutoStyles->ReleaseRef();
-}
-
void OFormLayerXMLImport_Impl::setAutoStyleContext(SvXMLStylesContext* _pNewContext)
{
- OSL_ENSURE(!m_pAutoStyles, "OFormLayerXMLImport_Impl::setAutoStyleContext: not to be called twice!");
- m_pAutoStyles = _pNewContext;
- if (m_pAutoStyles)
- m_pAutoStyles->AddFirstRef();
+ OSL_ENSURE(!m_xAutoStyles.is(), "OFormLayerXMLImport_Impl::setAutoStyleContext: not to be called twice!");
+ m_xAutoStyles.set(_pNewContext);
}
void OFormLayerXMLImport_Impl::applyControlNumberStyle(const Reference< XPropertySet >& _rxControlModel, const OUString& _rControlNumerStyleName)
@@ -247,17 +236,15 @@ void OFormLayerXMLImport_Impl::applyControlNumberStyle(const Reference< XPropert
OSL_ENSURE(_rxControlModel.is() && (!_rControlNumerStyleName.isEmpty()),
"OFormLayerXMLImport_Impl::applyControlNumberStyle: invalid arguments (this will crash)!");
- OSL_ENSURE(m_pAutoStyles, "OFormLayerXMLImport_Impl::applyControlNumberStyle: have no auto style context!");
- if (!m_pAutoStyles)
+ OSL_ENSURE(m_xAutoStyles.is(), "OFormLayerXMLImport_Impl::applyControlNumberStyle: have no auto style context!");
+ if (!m_xAutoStyles.is())
{
- m_pAutoStyles = m_rImporter.GetShapeImport()->GetAutoStylesContext();
- if (m_pAutoStyles)
- m_pAutoStyles->AddFirstRef();
+ m_xAutoStyles.set(m_rImporter.GetShapeImport()->GetAutoStylesContext());
}
- if (m_pAutoStyles)
+ if (m_xAutoStyles.is())
{
- const SvXMLStyleContext* pStyle = m_pAutoStyles->FindStyleChildContext(XML_STYLE_FAMILY_DATA_STYLE, _rControlNumerStyleName);
+ const SvXMLStyleContext* pStyle = m_xAutoStyles->FindStyleChildContext(XML_STYLE_FAMILY_DATA_STYLE, _rControlNumerStyleName);
if (pStyle)
{
const SvXMLNumFormatContext* pDataStyle = static_cast<const SvXMLNumFormatContext*>(pStyle);
@@ -341,12 +328,12 @@ void OFormLayerXMLImport_Impl::registerCellRangeListSource( const Reference< XPr
}
const SvXMLStyleContext* OFormLayerXMLImport_Impl::getStyleElement(const OUString& _rStyleName) const
{
- OSL_ENSURE( m_pAutoStyles, "OFormLayerXMLImport_Impl::getStyleElement: have no auto style context!" );
+ OSL_ENSURE( m_xAutoStyles.is(), "OFormLayerXMLImport_Impl::getStyleElement: have no auto style context!" );
// did you use setAutoStyleContext?
const SvXMLStyleContext* pControlStyle =
- m_pAutoStyles ? m_pAutoStyles->FindStyleChildContext( XML_STYLE_FAMILY_TEXT_PARAGRAPH, _rStyleName ) : nullptr;
- OSL_ENSURE( pControlStyle || !m_pAutoStyles,
+ m_xAutoStyles.is() ? m_xAutoStyles->FindStyleChildContext( XML_STYLE_FAMILY_TEXT_PARAGRAPH, _rStyleName ) : nullptr;
+ OSL_ENSURE( pControlStyle || !m_xAutoStyles.is(),
OStringBuffer("OFormLayerXMLImport_Impl::getStyleElement: did not find the style named \"").append(OUStringToOString(_rStyleName, RTL_TEXTENCODING_ASCII_US)).append("\"!").getStr() );
return pControlStyle;
}
diff --git a/xmloff/source/forms/layerimport.hxx b/xmloff/source/forms/layerimport.hxx
index be8dddf..c3b91e2 100644
--- a/xmloff/source/forms/layerimport.hxx
+++ b/xmloff/source/forms/layerimport.hxx
@@ -58,7 +58,7 @@ namespace xmloff
/// the supplier for the forms of the currently imported page
css::uno::Reference< css::form::XFormsSupplier2 >
m_xCurrentPageFormsSupp;
- SvXMLStylesContext* m_pAutoStyles;
+ css::uno::Reference<SvXMLStylesContext> m_xAutoStyles;
protected:
typedef std::map< OUString, css::uno::Reference< css::beans::XPropertySet > > MapString2PropertySet;
@@ -129,7 +129,6 @@ namespace xmloff
const OUString& _rSubmissionID
);
- virtual ~OFormLayerXMLImport_Impl();
protected:
explicit OFormLayerXMLImport_Impl(SvXMLImport& _rImporter);
commit 7977914ae7614657575f7d1ae2cf86f7ad69a580
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:28:31 2016 +0200
remove direct memory management
Change-Id: I9ab3fccd5b8a0cc64bfe7b70ed7a3e36d0e58a33
diff --git a/xmloff/source/draw/ximpstyl.cxx b/xmloff/source/draw/ximpstyl.cxx
index aee1d7b..5a42668 100644
--- a/xmloff/source/draw/ximpstyl.cxx
+++ b/xmloff/source/draw/ximpstyl.cxx
@@ -379,8 +379,7 @@ SdXMLPageMasterContext::SdXMLPageMasterContext(
sal_uInt16 nPrfx,
const OUString& rLName,
const uno::Reference< xml::sax::XAttributeList>& xAttrList)
-: SvXMLStyleContext(rImport, nPrfx, rLName, xAttrList, XML_STYLE_FAMILY_SD_PAGEMASTERCONEXT_ID),
- mpPageMasterStyle( nullptr )
+: SvXMLStyleContext(rImport, nPrfx, rLName, xAttrList, XML_STYLE_FAMILY_SD_PAGEMASTERCONEXT_ID)
{
// set family to something special at SvXMLStyleContext
// for differences in search-methods
@@ -405,16 +404,6 @@ SdXMLPageMasterContext::SdXMLPageMasterContext(
}
}
-SdXMLPageMasterContext::~SdXMLPageMasterContext()
-{
- // release remembered contexts, they are no longer needed
- if(mpPageMasterStyle)
- {
- mpPageMasterStyle->ReleaseRef();
- mpPageMasterStyle = nullptr;
- }
-}
-
SvXMLImportContext *SdXMLPageMasterContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -424,12 +413,9 @@ SvXMLImportContext *SdXMLPageMasterContext::CreateChildContext(
if(nPrefix == XML_NAMESPACE_STYLE && IsXMLToken( rLocalName, XML_PAGE_LAYOUT_PROPERTIES) )
{
- pContext = new SdXMLPageMasterStyleContext(GetSdImport(), nPrefix, rLocalName, xAttrList);
-
- // remember SdXMLPresentationPlaceholderContext for later evaluation
- pContext->AddFirstRef();
- DBG_ASSERT(!mpPageMasterStyle, "PageMasterStyle is set, there seem to be two of them (!)");
- mpPageMasterStyle = static_cast<SdXMLPageMasterStyleContext*>(pContext);
+ DBG_ASSERT(!mxPageMasterStyle.is(), "PageMasterStyle is set, there seem to be two of them (!)");
+ mxPageMasterStyle.set(new SdXMLPageMasterStyleContext(GetSdImport(), nPrefix, rLocalName, xAttrList));
+ pContext = mxPageMasterStyle.get();
}
// call base class
@@ -465,10 +451,6 @@ SdXMLPresentationPageLayoutContext::SdXMLPresentationPageLayoutContext(
}
}
-SdXMLPresentationPageLayoutContext::~SdXMLPresentationPageLayoutContext()
-{
-}
-
SvXMLImportContext *SdXMLPresentationPageLayoutContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -478,13 +460,13 @@ SvXMLImportContext *SdXMLPresentationPageLayoutContext::CreateChildContext(
if(nPrefix == XML_NAMESPACE_PRESENTATION && IsXMLToken( rLocalName, XML_PLACEHOLDER ) )
{
+ const uno::Reference< SdXMLPresentationPlaceholderContext > xContext{
+ new SdXMLPresentationPlaceholderContext(GetSdImport(), nPrefix, rLocalName, xAttrList)};
// presentation:placeholder inside style:presentation-page-layout context
- pContext = new SdXMLPresentationPlaceholderContext(
- GetSdImport(), nPrefix, rLocalName, xAttrList);
+ pContext = xContext.get();
// remember SdXMLPresentationPlaceholderContext for later evaluation
- pContext->AddFirstRef();
- maList.push_back( static_cast<SdXMLPresentationPlaceholderContext*>(pContext) );
+ maList.push_back( xContext );
}
// call base class
@@ -501,7 +483,7 @@ void SdXMLPresentationPageLayoutContext::EndElement()
// at the moment only use number of types used there
if( !maList.empty() )
{
- SdXMLPresentationPlaceholderContext* pObj0 = maList[ 0 ];
+ SdXMLPresentationPlaceholderContext* pObj0 = maList[ 0 ].get();
if( pObj0->GetName() == "handout" )
{
switch( maList.size() )
@@ -543,7 +525,7 @@ void SdXMLPresentationPageLayoutContext::EndElement()
}
case 2:
{
- SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ];
+ SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ].get();
if( pObj1->GetName() == "subtitle" )
{
@@ -586,8 +568,8 @@ void SdXMLPresentationPageLayoutContext::EndElement()
}
case 3:
{
- SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ];
- SdXMLPresentationPlaceholderContext* pObj2 = maList[ 2 ];
+ SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ].get();
+ SdXMLPresentationPlaceholderContext* pObj2 = maList[ 2 ].get();
if( pObj1->GetName() == "outline" )
{
@@ -651,8 +633,8 @@ void SdXMLPresentationPageLayoutContext::EndElement()
}
case 4:
{
- SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ];
- SdXMLPresentationPlaceholderContext* pObj2 = maList[ 2 ];
+ SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ].get();
+ SdXMLPresentationPlaceholderContext* pObj2 = maList[ 2 ].get();
if( pObj1->GetName() == "object" )
{
@@ -673,7 +655,7 @@ void SdXMLPresentationPageLayoutContext::EndElement()
}
case 5:
{
- SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ];
+ SdXMLPresentationPlaceholderContext* pObj1 = maList[ 1 ].get();
if( pObj1->GetName() == "object" )
{
@@ -700,8 +682,6 @@ void SdXMLPresentationPageLayoutContext::EndElement()
}
// release remembered contexts, they are no longer needed
- for ( size_t i = maList.size(); i > 0; )
- maList[ --i ]->ReleaseRef();
maList.clear();
}
}
@@ -1459,13 +1439,6 @@ SdXMLMasterStylesContext::SdXMLMasterStylesContext(
{
}
-SdXMLMasterStylesContext::~SdXMLMasterStylesContext()
-{
- for ( size_t i = maMasterPageList.size(); i > 0; )
- maMasterPageList[ --i ]->ReleaseRef();
- maMasterPageList.clear();
-}
-
SvXMLImportContext* SdXMLMasterStylesContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -1501,11 +1474,11 @@ SvXMLImportContext* SdXMLMasterStylesContext::CreateChildContext(
uno::Reference< drawing::XShapes > xNewShapes(xNewMasterPage, uno::UNO_QUERY);
if(xNewShapes.is() && GetSdImport().GetShapeImport()->GetStylesContext())
{
- pContext = new SdXMLMasterPageContext(GetSdImport(),
- nPrefix, rLocalName, xAttrList, xNewShapes);
-
- pContext->AddFirstRef();
- maMasterPageList.push_back( static_cast<SdXMLMasterPageContext*>(pContext) );
+ const uno::Reference<SdXMLMasterPageContext> xContext{
+ new SdXMLMasterPageContext(GetSdImport(),
+ nPrefix, rLocalName, xAttrList, xNewShapes)};
+ pContext = xContext.get();
+ maMasterPageList.push_back(xContext);
}
}
}
diff --git a/xmloff/source/draw/ximpstyl.hxx b/xmloff/source/draw/ximpstyl.hxx
index 6e1c5c0..788e3e4 100644
--- a/xmloff/source/draw/ximpstyl.hxx
+++ b/xmloff/source/draw/ximpstyl.hxx
@@ -68,7 +68,7 @@ public:
class SdXMLPageMasterContext: public SvXMLStyleContext
{
OUString msName;
- SdXMLPageMasterStyleContext*mpPageMasterStyle;
+ css::uno::Reference<SdXMLPageMasterStyleContext> mxPageMasterStyle;
const SdXMLImport& GetSdImport() const { return static_cast<const SdXMLImport&>(GetImport()); }
SdXMLImport& GetSdImport() { return static_cast<SdXMLImport&>(GetImport()); }
@@ -80,13 +80,12 @@ public:
sal_uInt16 nPrfx,
const OUString& rLName,
const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList);
- virtual ~SdXMLPageMasterContext();
virtual SvXMLImportContext *CreateChildContext(
sal_uInt16 nPrefix, const OUString& rLocalName,
const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList ) override;
- const SdXMLPageMasterStyleContext* GetPageMasterStyle() const { return mpPageMasterStyle; }
+ const SdXMLPageMasterStyleContext* GetPageMasterStyle() const { return mxPageMasterStyle.get(); }
};
// style:masterpage context
@@ -148,7 +147,7 @@ public:
class SdXMLPresentationPageLayoutContext: public SvXMLStyleContext
{
OUString msName;
- std::vector< SdXMLPresentationPlaceholderContext* >
+ std::vector< css::uno::Reference< SdXMLPresentationPlaceholderContext > >
maList;
sal_uInt16 mnTypeId;
@@ -162,7 +161,6 @@ public:
sal_uInt16 nPrfx,
const OUString& rLName,
const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList);
- virtual ~SdXMLPresentationPageLayoutContext();
virtual SvXMLImportContext *CreateChildContext(
sal_uInt16 nPrefix, const OUString& rLocalName,
@@ -228,7 +226,7 @@ public:
class SdXMLMasterStylesContext : public SvXMLImportContext
{
- std::vector< SdXMLMasterPageContext* > maMasterPageList;
+ std::vector< css::uno::Reference< SdXMLMasterPageContext > > maMasterPageList;
const SdXMLImport& GetSdImport() const { return static_cast<const SdXMLImport&>(GetImport()); }
SdXMLImport& GetSdImport() { return static_cast<SdXMLImport&>(GetImport()); }
@@ -238,7 +236,6 @@ public:
SdXMLMasterStylesContext(
SdXMLImport& rImport,
const OUString& rLName);
- virtual ~SdXMLMasterStylesContext();
virtual SvXMLImportContext* CreateChildContext(
sal_uInt16 nPrefix,
commit 3ef084c9bd7a7952a0e69efb9dbda81473c7856b
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:18:15 2016 +0200
remove direct memory management
Change-Id: Id0278f15e0c46a32cf07900dffdf27b3acb2649c
diff --git a/include/xmloff/shapeimport.hxx b/include/xmloff/shapeimport.hxx
index e9bc24f..3042e03 100644
--- a/include/xmloff/shapeimport.hxx
+++ b/include/xmloff/shapeimport.hxx
@@ -204,7 +204,7 @@ protected:
SvXMLImport& mrImport;
// list for local light contexts
- ::std::vector< SdXML3DLightContext* >
+ ::std::vector< css::uno::Reference< SdXML3DLightContext > >
maList;
// local parameters which need to be read
@@ -228,7 +228,6 @@ protected:
public:
SdXML3DSceneAttributesHelper( SvXMLImport& rImporter );
- ~SdXML3DSceneAttributesHelper();
/** creates a 3d light context and adds it to the internal list for later processing */
SvXMLImportContext * create3DLightContext( sal_uInt16 nPrfx, const OUString& rLName, const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList);
diff --git a/xmloff/source/draw/ximp3dscene.cxx b/xmloff/source/draw/ximp3dscene.cxx
index 7680acf..31ce368 100644
--- a/xmloff/source/draw/ximp3dscene.cxx
+++ b/xmloff/source/draw/ximp3dscene.cxx
@@ -226,24 +226,15 @@ SdXML3DSceneAttributesHelper::SdXML3DSceneAttributesHelper( SvXMLImport& rImport
{
}
-SdXML3DSceneAttributesHelper::~SdXML3DSceneAttributesHelper()
-{
- // release remembered light contexts, they are no longer needed
- for ( size_t i = maList.size(); i > 0; )
- maList[ --i ]->ReleaseRef();
- maList.clear();
-}
-
/** creates a 3d light context and adds it to the internal list for later processing */
SvXMLImportContext * SdXML3DSceneAttributesHelper::create3DLightContext( sal_uInt16 nPrfx, const OUString& rLName, const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList)
{
- SvXMLImportContext* pContext = new SdXML3DLightContext(mrImport, nPrfx, rLName, xAttrList);
+ const uno::Reference<SdXML3DLightContext> xContext{new SdXML3DLightContext(mrImport, nPrfx, rLName, xAttrList)};
// remember SdXML3DLightContext for later evaluation
- pContext->AddFirstRef();
- maList.push_back( static_cast<SdXML3DLightContext*>(pContext) );
+ maList.push_back(xContext);
- return pContext;
+ return xContext.get();
}
/** this should be called for each scene attribute */
@@ -376,7 +367,7 @@ void SdXML3DSceneAttributesHelper::setSceneAttributes( const css::uno::Reference
// set lights
for( size_t a = 0; a < maList.size(); a++)
{
- SdXML3DLightContext* pCtx = maList[ a ];
+ SdXML3DLightContext* pCtx = maList[ a ].get();
// set anys
aAny <<= pCtx->GetDiffuseColor();
commit 4f776e0ff2d7b3635dc504c3251dddd03f76c205
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:11:18 2016 +0200
drop useless comments
Change-Id: Idbecb59bbefb4e63e1de80b8a28033be31e3dd58
diff --git a/xmloff/source/draw/shapeimport.cxx b/xmloff/source/draw/shapeimport.cxx
index 26f77da..016195f 100644
--- a/xmloff/source/draw/shapeimport.cxx
+++ b/xmloff/source/draw/shapeimport.cxx
@@ -208,7 +208,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::GetGroupShapeElemTokenMap()
};
mpGroupShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aGroupShapeElemTokenMap);
- } // if(!mpGroupShapeElemTokenMap)
+ }
return *mpGroupShapeElemTokenMap;
}
@@ -231,7 +231,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::GetFrameShapeElemTokenMap()
};
mpFrameShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aFrameShapeElemTokenMap);
- } // if(!mpFrameShapeElemTokenMap)
+ }
return *mpFrameShapeElemTokenMap;
}
@@ -251,7 +251,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DSceneShapeElemTokenMap()
};
mp3DSceneShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DSceneShapeElemTokenMap);
- } // if(!mp3DSceneShapeElemTokenMap)
+ }
return *mp3DSceneShapeElemTokenMap;
}
@@ -268,7 +268,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DObjectAttrTokenMap()
};
mp3DObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DObjectAttrTokenMap);
- } // if(!mp3DObjectAttrTokenMap)
+ }
return *mp3DObjectAttrTokenMap;
}
@@ -285,7 +285,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DPolygonBasedAttrTokenMap()
};
mp3DPolygonBasedAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DPolygonBasedAttrTokenMap);
- } // if(!mp3DPolygonBasedAttrTokenMap)
+ }
return *mp3DPolygonBasedAttrTokenMap;
}
@@ -302,7 +302,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DCubeObjectAttrTokenMap()
};
mp3DCubeObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DCubeObjectAttrTokenMap);
- } // if(!mp3DCubeObjectAttrTokenMap)
+ }
return *mp3DCubeObjectAttrTokenMap;
}
@@ -319,7 +319,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DSphereObjectAttrTokenMap()
};
mp3DSphereObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DSphereObjectAttrTokenMap);
- } // if(!mp3DSphereObjectAttrTokenMap)
+ }
return *mp3DSphereObjectAttrTokenMap;
}
@@ -338,7 +338,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DLightAttrTokenMap()
};
mp3DLightAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DLightAttrTokenMap);
- } // if(!mp3DLightAttrTokenMap)
+ }
return *mp3DLightAttrTokenMap;
}
commit 4da3d1e3d7469f9ee3de5f183fe0e94cedcb3b1d
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:10:27 2016 +0200
fix indentation
Change-Id: I0292b9408b0ff74f133daba955a81d9ac706b336
diff --git a/xmloff/source/draw/shapeimport.cxx b/xmloff/source/draw/shapeimport.cxx
index 6e2ecb7..26f77da 100644
--- a/xmloff/source/draw/shapeimport.cxx
+++ b/xmloff/source/draw/shapeimport.cxx
@@ -178,34 +178,34 @@ const SvXMLTokenMap& XMLShapeImportHelper::GetGroupShapeElemTokenMap()
if(!mpGroupShapeElemTokenMap)
{
static const SvXMLTokenMapEntry aGroupShapeElemTokenMap[] =
-{
- { XML_NAMESPACE_DRAW, XML_G, XML_TOK_GROUP_GROUP },
- { XML_NAMESPACE_DRAW, XML_RECT, XML_TOK_GROUP_RECT },
- { XML_NAMESPACE_DRAW, XML_LINE, XML_TOK_GROUP_LINE },
- { XML_NAMESPACE_DRAW, XML_CIRCLE, XML_TOK_GROUP_CIRCLE },
- { XML_NAMESPACE_DRAW, XML_ELLIPSE, XML_TOK_GROUP_ELLIPSE },
- { XML_NAMESPACE_DRAW, XML_POLYGON, XML_TOK_GROUP_POLYGON },
- { XML_NAMESPACE_DRAW, XML_POLYLINE, XML_TOK_GROUP_POLYLINE },
- { XML_NAMESPACE_DRAW, XML_PATH, XML_TOK_GROUP_PATH },
-
- { XML_NAMESPACE_DRAW, XML_CONTROL, XML_TOK_GROUP_CONTROL },
- { XML_NAMESPACE_DRAW, XML_CONNECTOR, XML_TOK_GROUP_CONNECTOR },
- { XML_NAMESPACE_DRAW, XML_MEASURE, XML_TOK_GROUP_MEASURE },
- { XML_NAMESPACE_DRAW, XML_PAGE_THUMBNAIL, XML_TOK_GROUP_PAGE },
- { XML_NAMESPACE_DRAW, XML_CAPTION, XML_TOK_GROUP_CAPTION },
-
- { XML_NAMESPACE_CHART, XML_CHART, XML_TOK_GROUP_CHART },
- { XML_NAMESPACE_DR3D, XML_SCENE, XML_TOK_GROUP_3DSCENE },
-
- { XML_NAMESPACE_DRAW, XML_FRAME, XML_TOK_GROUP_FRAME },
- { XML_NAMESPACE_DRAW, XML_CUSTOM_SHAPE, XML_TOK_GROUP_CUSTOM_SHAPE },
-
- { XML_NAMESPACE_DRAW, XML_CUSTOM_SHAPE, XML_TOK_GROUP_CUSTOM_SHAPE },
- { XML_NAMESPACE_OFFICE, XML_ANNOTATION, XML_TOK_GROUP_ANNOTATION },
- { XML_NAMESPACE_DRAW, XML_A, XML_TOK_GROUP_A },
-
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DRAW, XML_G, XML_TOK_GROUP_GROUP },
+ { XML_NAMESPACE_DRAW, XML_RECT, XML_TOK_GROUP_RECT },
+ { XML_NAMESPACE_DRAW, XML_LINE, XML_TOK_GROUP_LINE },
+ { XML_NAMESPACE_DRAW, XML_CIRCLE, XML_TOK_GROUP_CIRCLE },
+ { XML_NAMESPACE_DRAW, XML_ELLIPSE, XML_TOK_GROUP_ELLIPSE },
+ { XML_NAMESPACE_DRAW, XML_POLYGON, XML_TOK_GROUP_POLYGON },
+ { XML_NAMESPACE_DRAW, XML_POLYLINE, XML_TOK_GROUP_POLYLINE },
+ { XML_NAMESPACE_DRAW, XML_PATH, XML_TOK_GROUP_PATH },
+
+ { XML_NAMESPACE_DRAW, XML_CONTROL, XML_TOK_GROUP_CONTROL },
+ { XML_NAMESPACE_DRAW, XML_CONNECTOR, XML_TOK_GROUP_CONNECTOR },
+ { XML_NAMESPACE_DRAW, XML_MEASURE, XML_TOK_GROUP_MEASURE },
+ { XML_NAMESPACE_DRAW, XML_PAGE_THUMBNAIL, XML_TOK_GROUP_PAGE },
+ { XML_NAMESPACE_DRAW, XML_CAPTION, XML_TOK_GROUP_CAPTION },
+
+ { XML_NAMESPACE_CHART, XML_CHART, XML_TOK_GROUP_CHART },
+ { XML_NAMESPACE_DR3D, XML_SCENE, XML_TOK_GROUP_3DSCENE },
+
+ { XML_NAMESPACE_DRAW, XML_FRAME, XML_TOK_GROUP_FRAME },
+ { XML_NAMESPACE_DRAW, XML_CUSTOM_SHAPE, XML_TOK_GROUP_CUSTOM_SHAPE },
+
+ { XML_NAMESPACE_DRAW, XML_CUSTOM_SHAPE, XML_TOK_GROUP_CUSTOM_SHAPE },
+ { XML_NAMESPACE_OFFICE, XML_ANNOTATION, XML_TOK_GROUP_ANNOTATION },
+ { XML_NAMESPACE_DRAW, XML_A, XML_TOK_GROUP_A },
+
+ XML_TOKEN_MAP_END
+ };
mpGroupShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aGroupShapeElemTokenMap);
} // if(!mpGroupShapeElemTokenMap)
@@ -218,17 +218,17 @@ const SvXMLTokenMap& XMLShapeImportHelper::GetFrameShapeElemTokenMap()
if(!mpFrameShapeElemTokenMap)
{
static const SvXMLTokenMapEntry aFrameShapeElemTokenMap[] =
-{
- { XML_NAMESPACE_DRAW, XML_TEXT_BOX, XML_TOK_FRAME_TEXT_BOX },
- { XML_NAMESPACE_DRAW, XML_IMAGE, XML_TOK_FRAME_IMAGE },
- { XML_NAMESPACE_DRAW, XML_OBJECT, XML_TOK_FRAME_OBJECT },
- { XML_NAMESPACE_DRAW, XML_OBJECT_OLE, XML_TOK_FRAME_OBJECT_OLE },
- { XML_NAMESPACE_DRAW, XML_PLUGIN, XML_TOK_FRAME_PLUGIN },
- { XML_NAMESPACE_DRAW, XML_FLOATING_FRAME, XML_TOK_FRAME_FLOATING_FRAME},
- { XML_NAMESPACE_DRAW, XML_APPLET, XML_TOK_FRAME_APPLET },
- { XML_NAMESPACE_TABLE, XML_TABLE, XML_TOK_FRAME_TABLE },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DRAW, XML_TEXT_BOX, XML_TOK_FRAME_TEXT_BOX },
+ { XML_NAMESPACE_DRAW, XML_IMAGE, XML_TOK_FRAME_IMAGE },
+ { XML_NAMESPACE_DRAW, XML_OBJECT, XML_TOK_FRAME_OBJECT },
+ { XML_NAMESPACE_DRAW, XML_OBJECT_OLE, XML_TOK_FRAME_OBJECT_OLE },
+ { XML_NAMESPACE_DRAW, XML_PLUGIN, XML_TOK_FRAME_PLUGIN },
+ { XML_NAMESPACE_DRAW, XML_FLOATING_FRAME, XML_TOK_FRAME_FLOATING_FRAME},
+ { XML_NAMESPACE_DRAW, XML_APPLET, XML_TOK_FRAME_APPLET },
+ { XML_NAMESPACE_TABLE, XML_TABLE, XML_TOK_FRAME_TABLE },
+ XML_TOKEN_MAP_END
+ };
mpFrameShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aFrameShapeElemTokenMap);
} // if(!mpFrameShapeElemTokenMap)
@@ -241,14 +241,14 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DSceneShapeElemTokenMap()
if(!mp3DSceneShapeElemTokenMap)
{
static const SvXMLTokenMapEntry a3DSceneShapeElemTokenMap[] =
-{
- { XML_NAMESPACE_DR3D, XML_SCENE, XML_TOK_3DSCENE_3DSCENE },
- { XML_NAMESPACE_DR3D, XML_CUBE, XML_TOK_3DSCENE_3DCUBE },
- { XML_NAMESPACE_DR3D, XML_SPHERE, XML_TOK_3DSCENE_3DSPHERE },
- { XML_NAMESPACE_DR3D, XML_ROTATE, XML_TOK_3DSCENE_3DLATHE },
- { XML_NAMESPACE_DR3D, XML_EXTRUDE, XML_TOK_3DSCENE_3DEXTRUDE },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DR3D, XML_SCENE, XML_TOK_3DSCENE_3DSCENE },
+ { XML_NAMESPACE_DR3D, XML_CUBE, XML_TOK_3DSCENE_3DCUBE },
+ { XML_NAMESPACE_DR3D, XML_SPHERE, XML_TOK_3DSCENE_3DSPHERE },
+ { XML_NAMESPACE_DR3D, XML_ROTATE, XML_TOK_3DSCENE_3DLATHE },
+ { XML_NAMESPACE_DR3D, XML_EXTRUDE, XML_TOK_3DSCENE_3DEXTRUDE },
+ XML_TOKEN_MAP_END
+ };
mp3DSceneShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DSceneShapeElemTokenMap);
} // if(!mp3DSceneShapeElemTokenMap)
@@ -261,11 +261,11 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DObjectAttrTokenMap()
if(!mp3DObjectAttrTokenMap)
{
static const SvXMLTokenMapEntry a3DObjectAttrTokenMap[] =
-{
- { XML_NAMESPACE_DRAW, XML_STYLE_NAME, XML_TOK_3DOBJECT_DRAWSTYLE_NAME },
- { XML_NAMESPACE_DR3D, XML_TRANSFORM, XML_TOK_3DOBJECT_TRANSFORM },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DRAW, XML_STYLE_NAME, XML_TOK_3DOBJECT_DRAWSTYLE_NAME },
+ { XML_NAMESPACE_DR3D, XML_TRANSFORM, XML_TOK_3DOBJECT_TRANSFORM },
+ XML_TOKEN_MAP_END
+ };
mp3DObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DObjectAttrTokenMap);
} // if(!mp3DObjectAttrTokenMap)
@@ -278,11 +278,11 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DPolygonBasedAttrTokenMap()
if(!mp3DPolygonBasedAttrTokenMap)
{
static const SvXMLTokenMapEntry a3DPolygonBasedAttrTokenMap[] =
-{
- { XML_NAMESPACE_SVG, XML_VIEWBOX, XML_TOK_3DPOLYGONBASED_VIEWBOX },
- { XML_NAMESPACE_SVG, XML_D, XML_TOK_3DPOLYGONBASED_D },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_SVG, XML_VIEWBOX, XML_TOK_3DPOLYGONBASED_VIEWBOX },
+ { XML_NAMESPACE_SVG, XML_D, XML_TOK_3DPOLYGONBASED_D },
+ XML_TOKEN_MAP_END
+ };
mp3DPolygonBasedAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DPolygonBasedAttrTokenMap);
} // if(!mp3DPolygonBasedAttrTokenMap)
@@ -295,11 +295,11 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DCubeObjectAttrTokenMap()
if(!mp3DCubeObjectAttrTokenMap)
{
static const SvXMLTokenMapEntry a3DCubeObjectAttrTokenMap[] =
-{
- { XML_NAMESPACE_DR3D, XML_MIN_EDGE, XML_TOK_3DCUBEOBJ_MINEDGE },
- { XML_NAMESPACE_DR3D, XML_MAX_EDGE, XML_TOK_3DCUBEOBJ_MAXEDGE },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DR3D, XML_MIN_EDGE, XML_TOK_3DCUBEOBJ_MINEDGE },
+ { XML_NAMESPACE_DR3D, XML_MAX_EDGE, XML_TOK_3DCUBEOBJ_MAXEDGE },
+ XML_TOKEN_MAP_END
+ };
mp3DCubeObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DCubeObjectAttrTokenMap);
} // if(!mp3DCubeObjectAttrTokenMap)
@@ -312,11 +312,11 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DSphereObjectAttrTokenMap()
if(!mp3DSphereObjectAttrTokenMap)
{
static const SvXMLTokenMapEntry a3DSphereObjectAttrTokenMap[] =
-{
- { XML_NAMESPACE_DR3D, XML_CENTER, XML_TOK_3DSPHEREOBJ_CENTER },
- { XML_NAMESPACE_DR3D, XML_SIZE, XML_TOK_3DSPHEREOBJ_SIZE },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DR3D, XML_CENTER, XML_TOK_3DSPHEREOBJ_CENTER },
+ { XML_NAMESPACE_DR3D, XML_SIZE, XML_TOK_3DSPHEREOBJ_SIZE },
+ XML_TOKEN_MAP_END
+ };
mp3DSphereObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DSphereObjectAttrTokenMap);
} // if(!mp3DSphereObjectAttrTokenMap)
@@ -329,13 +329,13 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DLightAttrTokenMap()
if(!mp3DLightAttrTokenMap)
{
static const SvXMLTokenMapEntry a3DLightAttrTokenMap[] =
-{
- { XML_NAMESPACE_DR3D, XML_DIFFUSE_COLOR, XML_TOK_3DLIGHT_DIFFUSE_COLOR },
- { XML_NAMESPACE_DR3D, XML_DIRECTION, XML_TOK_3DLIGHT_DIRECTION },
- { XML_NAMESPACE_DR3D, XML_ENABLED, XML_TOK_3DLIGHT_ENABLED },
- { XML_NAMESPACE_DR3D, XML_SPECULAR, XML_TOK_3DLIGHT_SPECULAR },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DR3D, XML_DIFFUSE_COLOR, XML_TOK_3DLIGHT_DIFFUSE_COLOR },
+ { XML_NAMESPACE_DR3D, XML_DIRECTION, XML_TOK_3DLIGHT_DIRECTION },
+ { XML_NAMESPACE_DR3D, XML_ENABLED, XML_TOK_3DLIGHT_ENABLED },
+ { XML_NAMESPACE_DR3D, XML_SPECULAR, XML_TOK_3DLIGHT_SPECULAR },
+ XML_TOKEN_MAP_END
+ };
mp3DLightAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DLightAttrTokenMap);
} // if(!mp3DLightAttrTokenMap)
commit 45df4baf4e311e3f0e785bd7b2af9f65ffc436e8
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:09:32 2016 +0200
use std::unique_ptr
Change-Id: Ic6ebe839fa22e6a7b9904ad00877eddd78331ba4
diff --git a/include/xmloff/shapeimport.hxx b/include/xmloff/shapeimport.hxx
index eda682d..e9bc24f 100644
--- a/include/xmloff/shapeimport.hxx
+++ b/include/xmloff/shapeimport.hxx
@@ -279,14 +279,14 @@ class XMLOFF_DLLPUBLIC XMLShapeImportHelper : public salhelper::SimpleReferenceO
css::uno::Reference<SvXMLStylesContext> mxAutoStylesContext;
// contexts for xShape contents TokenMaps
- SvXMLTokenMap* mpGroupShapeElemTokenMap;
- SvXMLTokenMap* mpFrameShapeElemTokenMap;
- SvXMLTokenMap* mp3DSceneShapeElemTokenMap;
- SvXMLTokenMap* mp3DObjectAttrTokenMap;
- SvXMLTokenMap* mp3DPolygonBasedAttrTokenMap;
- SvXMLTokenMap* mp3DCubeObjectAttrTokenMap;
- SvXMLTokenMap* mp3DSphereObjectAttrTokenMap;
- SvXMLTokenMap* mp3DLightAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpGroupShapeElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpFrameShapeElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mp3DSceneShapeElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mp3DObjectAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mp3DPolygonBasedAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mp3DCubeObjectAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mp3DSphereObjectAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mp3DLightAttrTokenMap;
const OUString msStartShape;
const OUString msEndShape;
diff --git a/xmloff/source/draw/shapeimport.cxx b/xmloff/source/draw/shapeimport.cxx
index 3f40c56..6e2ecb7 100644
--- a/xmloff/source/draw/shapeimport.cxx
+++ b/xmloff/source/draw/shapeimport.cxx
@@ -17,6 +17,8 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <o3tl/make_unique.hxx>
+
#include <tools/debug.hxx>
#include <com/sun/star/text/PositionLayoutDir.hpp>
@@ -113,14 +115,6 @@ XMLShapeImportHelper::XMLShapeImportHelper(
mpPropertySetMapper(nullptr),
mpPresPagePropsMapper(nullptr),
- mpGroupShapeElemTokenMap(nullptr),
- mpFrameShapeElemTokenMap(nullptr),
- mp3DSceneShapeElemTokenMap(nullptr),
- mp3DObjectAttrTokenMap(nullptr),
- mp3DPolygonBasedAttrTokenMap(nullptr),
- mp3DCubeObjectAttrTokenMap(nullptr),
- mp3DSphereObjectAttrTokenMap(nullptr),
- mp3DLightAttrTokenMap(nullptr),
msStartShape("StartShape"),
msEndShape("EndShape"),
msStartGluePointIndex("StartGluePointIndex"),
@@ -171,16 +165,6 @@ XMLShapeImportHelper::~XMLShapeImportHelper()
// cleanup presPage mapper, decrease refcount. Should lead to destruction.
mpPresPagePropsMapper.clear();
- delete mpGroupShapeElemTokenMap;
- delete mpFrameShapeElemTokenMap;
-
- delete mp3DSceneShapeElemTokenMap;
- delete mp3DObjectAttrTokenMap;
- delete mp3DPolygonBasedAttrTokenMap;
- delete mp3DCubeObjectAttrTokenMap;
- delete mp3DSphereObjectAttrTokenMap;
- delete mp3DLightAttrTokenMap;
-
// Styles or AutoStyles context?
if(mxStylesContext.is())
mxStylesContext->Clear();
@@ -223,7 +207,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::GetGroupShapeElemTokenMap()
XML_TOKEN_MAP_END
};
- mpGroupShapeElemTokenMap = new SvXMLTokenMap(aGroupShapeElemTokenMap);
+ mpGroupShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aGroupShapeElemTokenMap);
} // if(!mpGroupShapeElemTokenMap)
return *mpGroupShapeElemTokenMap;
@@ -246,7 +230,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::GetFrameShapeElemTokenMap()
XML_TOKEN_MAP_END
};
- mpFrameShapeElemTokenMap = new SvXMLTokenMap(aFrameShapeElemTokenMap);
+ mpFrameShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aFrameShapeElemTokenMap);
} // if(!mpFrameShapeElemTokenMap)
return *mpFrameShapeElemTokenMap;
@@ -266,7 +250,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DSceneShapeElemTokenMap()
XML_TOKEN_MAP_END
};
- mp3DSceneShapeElemTokenMap = new SvXMLTokenMap(a3DSceneShapeElemTokenMap);
+ mp3DSceneShapeElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DSceneShapeElemTokenMap);
} // if(!mp3DSceneShapeElemTokenMap)
return *mp3DSceneShapeElemTokenMap;
@@ -283,7 +267,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DObjectAttrTokenMap()
XML_TOKEN_MAP_END
};
- mp3DObjectAttrTokenMap = new SvXMLTokenMap(a3DObjectAttrTokenMap);
+ mp3DObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DObjectAttrTokenMap);
} // if(!mp3DObjectAttrTokenMap)
return *mp3DObjectAttrTokenMap;
@@ -300,7 +284,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DPolygonBasedAttrTokenMap()
XML_TOKEN_MAP_END
};
- mp3DPolygonBasedAttrTokenMap = new SvXMLTokenMap(a3DPolygonBasedAttrTokenMap);
+ mp3DPolygonBasedAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DPolygonBasedAttrTokenMap);
} // if(!mp3DPolygonBasedAttrTokenMap)
return *mp3DPolygonBasedAttrTokenMap;
@@ -317,7 +301,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DCubeObjectAttrTokenMap()
XML_TOKEN_MAP_END
};
- mp3DCubeObjectAttrTokenMap = new SvXMLTokenMap(a3DCubeObjectAttrTokenMap);
+ mp3DCubeObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DCubeObjectAttrTokenMap);
} // if(!mp3DCubeObjectAttrTokenMap)
return *mp3DCubeObjectAttrTokenMap;
@@ -334,7 +318,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DSphereObjectAttrTokenMap()
XML_TOKEN_MAP_END
};
- mp3DSphereObjectAttrTokenMap = new SvXMLTokenMap(a3DSphereObjectAttrTokenMap);
+ mp3DSphereObjectAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DSphereObjectAttrTokenMap);
} // if(!mp3DSphereObjectAttrTokenMap)
return *mp3DSphereObjectAttrTokenMap;
@@ -353,7 +337,7 @@ const SvXMLTokenMap& XMLShapeImportHelper::Get3DLightAttrTokenMap()
XML_TOKEN_MAP_END
};
- mp3DLightAttrTokenMap = new SvXMLTokenMap(a3DLightAttrTokenMap);
+ mp3DLightAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(a3DLightAttrTokenMap);
} // if(!mp3DLightAttrTokenMap)
return *mp3DLightAttrTokenMap;
commit bb35e4dcf986619edb300f4dcd35d54b04dce034
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 11:05:39 2016 +0200
remove direct memory management
Change-Id: I5dd5d9130f11f47c4b48c1aae9748434ac751d95
diff --git a/include/xmloff/shapeimport.hxx b/include/xmloff/shapeimport.hxx
index db54f5c..eda682d 100644
--- a/include/xmloff/shapeimport.hxx
+++ b/include/xmloff/shapeimport.hxx
@@ -275,8 +275,8 @@ class XMLOFF_DLLPUBLIC XMLShapeImportHelper : public salhelper::SimpleReferenceO
rtl::Reference<SvXMLImportPropertyMapper> mpPresPagePropsMapper;
// contexts for Style and AutoStyle import
- SvXMLStylesContext* mpStylesContext;
- SvXMLStylesContext* mpAutoStylesContext;
+ css::uno::Reference<SvXMLStylesContext> mxStylesContext;
+ css::uno::Reference<SvXMLStylesContext> mxAutoStylesContext;
// contexts for xShape contents TokenMaps
SvXMLTokenMap* mpGroupShapeElemTokenMap;
@@ -335,9 +335,9 @@ public:
const SvXMLTokenMap& Get3DLightAttrTokenMap();
// Styles and AutoStyles contexts
- SvXMLStylesContext* GetStylesContext() const { return mpStylesContext; }
+ SvXMLStylesContext* GetStylesContext() const { return mxStylesContext.get(); }
void SetStylesContext(SvXMLStylesContext* pNew);
- SvXMLStylesContext* GetAutoStylesContext() const { return mpAutoStylesContext; }
+ SvXMLStylesContext* GetAutoStylesContext() const { return mxAutoStylesContext.get(); }
void SetAutoStylesContext(SvXMLStylesContext* pNew);
// get factories and mappers
diff --git a/xmloff/source/draw/shapeimport.cxx b/xmloff/source/draw/shapeimport.cxx
index 2402aad..3f40c56 100644
--- a/xmloff/source/draw/shapeimport.cxx
+++ b/xmloff/source/draw/shapeimport.cxx
@@ -113,8 +113,6 @@ XMLShapeImportHelper::XMLShapeImportHelper(
mpPropertySetMapper(nullptr),
mpPresPagePropsMapper(nullptr),
- mpStylesContext(nullptr),
- mpAutoStylesContext(nullptr),
mpGroupShapeElemTokenMap(nullptr),
mpFrameShapeElemTokenMap(nullptr),
mp3DSceneShapeElemTokenMap(nullptr),
@@ -184,17 +182,11 @@ XMLShapeImportHelper::~XMLShapeImportHelper()
delete mp3DLightAttrTokenMap;
// Styles or AutoStyles context?
- if(mpStylesContext)
- {
- mpStylesContext->Clear();
- mpStylesContext->ReleaseRef();
- }
+ if(mxStylesContext.is())
+ mxStylesContext->Clear();
- if(mpAutoStylesContext)
- {
- mpAutoStylesContext->Clear();
- mpAutoStylesContext->ReleaseRef();
- }
+ if(mxAutoStylesContext.is())
+ mxAutoStylesContext->Clear();
}
const SvXMLTokenMap& XMLShapeImportHelper::GetGroupShapeElemTokenMap()
@@ -434,16 +426,12 @@ SvXMLShapeContext* XMLShapeImportHelper::Create3DSceneChildContext(
void XMLShapeImportHelper::SetStylesContext(SvXMLStylesContext* pNew)
{
- mpStylesContext = pNew;
- if (mpStylesContext)
- mpStylesContext->AddFirstRef();
+ mxStylesContext.set(pNew);
}
void XMLShapeImportHelper::SetAutoStylesContext(SvXMLStylesContext* pNew)
{
- mpAutoStylesContext = pNew;
- if (mpAutoStylesContext)
- mpAutoStylesContext->AddFirstRef();
+ mxAutoStylesContext.set(pNew);
}
SvXMLShapeContext* XMLShapeImportHelper::CreateGroupChildContext(
commit 8b229333aeb98dae259dac068b67195a8baa1423
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 10:59:54 2016 +0200
fix indentation
Change-Id: I7f2bf5b4ee507cd50904a193bfd64b293cbdd922
diff --git a/xmloff/source/draw/sdxmlimp.cxx b/xmloff/source/draw/sdxmlimp.cxx
index 622d3cf..8053989 100644
--- a/xmloff/source/draw/sdxmlimp.cxx
+++ b/xmloff/source/draw/sdxmlimp.cxx
@@ -426,15 +426,15 @@ const SvXMLTokenMap& SdXMLImport::GetBodyElemTokenMap()
if(!mpBodyElemTokenMap)
{
static const SvXMLTokenMapEntry aBodyElemTokenMap[] =
-{
- { XML_NAMESPACE_DRAW, XML_PAGE, XML_TOK_BODY_PAGE },
- { XML_NAMESPACE_PRESENTATION, XML_SETTINGS, XML_TOK_BODY_SETTINGS },
- { XML_NAMESPACE_PRESENTATION, XML_HEADER_DECL, XML_TOK_BODY_HEADER_DECL },
- { XML_NAMESPACE_PRESENTATION, XML_FOOTER_DECL, XML_TOK_BODY_FOOTER_DECL },
- { XML_NAMESPACE_PRESENTATION, XML_DATE_TIME_DECL,XML_TOK_BODY_DATE_TIME_DECL },
+ {
+ { XML_NAMESPACE_DRAW, XML_PAGE, XML_TOK_BODY_PAGE },
+ { XML_NAMESPACE_PRESENTATION, XML_SETTINGS, XML_TOK_BODY_SETTINGS },
+ { XML_NAMESPACE_PRESENTATION, XML_HEADER_DECL, XML_TOK_BODY_HEADER_DECL },
+ { XML_NAMESPACE_PRESENTATION, XML_FOOTER_DECL, XML_TOK_BODY_FOOTER_DECL },
+ { XML_NAMESPACE_PRESENTATION, XML_DATE_TIME_DECL,XML_TOK_BODY_DATE_TIME_DECL },
- XML_TOKEN_MAP_END
-};
+ XML_TOKEN_MAP_END
+ };
mpBodyElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aBodyElemTokenMap);
}
@@ -447,12 +447,12 @@ const SvXMLTokenMap& SdXMLImport::GetStylesElemTokenMap()
if(!mpStylesElemTokenMap)
{
static const SvXMLTokenMapEntry aStylesElemTokenMap[] =
-{
- { XML_NAMESPACE_STYLE, XML_PAGE_LAYOUT, XML_TOK_STYLES_PAGE_MASTER },
- { XML_NAMESPACE_STYLE, XML_PRESENTATION_PAGE_LAYOUT, XML_TOK_STYLES_PRESENTATION_PAGE_LAYOUT },
- { XML_NAMESPACE_STYLE, XML_STYLE, XML_TOK_STYLES_STYLE },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_STYLE, XML_PAGE_LAYOUT, XML_TOK_STYLES_PAGE_MASTER },
+ { XML_NAMESPACE_STYLE, XML_PRESENTATION_PAGE_LAYOUT, XML_TOK_STYLES_PRESENTATION_PAGE_LAYOUT },
+ { XML_NAMESPACE_STYLE, XML_STYLE, XML_TOK_STYLES_STYLE },
+ XML_TOKEN_MAP_END
+ };
mpStylesElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aStylesElemTokenMap);
}
@@ -465,11 +465,11 @@ const SvXMLTokenMap& SdXMLImport::GetMasterPageElemTokenMap()
if(!mpMasterPageElemTokenMap)
{
static const SvXMLTokenMapEntry aMasterPageElemTokenMap[] =
-{
- { XML_NAMESPACE_STYLE, XML_STYLE, XML_TOK_MASTERPAGE_STYLE },
- { XML_NAMESPACE_PRESENTATION, XML_NOTES, XML_TOK_MASTERPAGE_NOTES },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_STYLE, XML_STYLE, XML_TOK_MASTERPAGE_STYLE },
+ { XML_NAMESPACE_PRESENTATION, XML_NOTES, XML_TOK_MASTERPAGE_NOTES },
+ XML_TOKEN_MAP_END
+ };
mpMasterPageElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aMasterPageElemTokenMap);
}
@@ -482,17 +482,17 @@ const SvXMLTokenMap& SdXMLImport::GetMasterPageAttrTokenMap()
if(!mpMasterPageAttrTokenMap)
{
static const SvXMLTokenMapEntry aMasterPageAttrTokenMap[] =
-{
- { XML_NAMESPACE_STYLE, XML_NAME, XML_TOK_MASTERPAGE_NAME },
- { XML_NAMESPACE_STYLE, XML_DISPLAY_NAME, XML_TOK_MASTERPAGE_DISPLAY_NAME },
- { XML_NAMESPACE_STYLE, XML_PAGE_LAYOUT_NAME, XML_TOK_MASTERPAGE_PAGE_MASTER_NAME },
- { XML_NAMESPACE_DRAW, XML_STYLE_NAME, XML_TOK_MASTERPAGE_STYLE_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_PRESENTATION_PAGE_LAYOUT_NAME, XML_TOK_MASTERPAGE_PAGE_LAYOUT_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_USE_HEADER_NAME, XML_TOK_MASTERPAGE_USE_HEADER_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_USE_FOOTER_NAME, XML_TOK_MASTERPAGE_USE_FOOTER_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_USE_DATE_TIME_NAME, XML_TOK_MASTERPAGE_USE_DATE_TIME_NAME },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_STYLE, XML_NAME, XML_TOK_MASTERPAGE_NAME },
+ { XML_NAMESPACE_STYLE, XML_DISPLAY_NAME, XML_TOK_MASTERPAGE_DISPLAY_NAME },
+ { XML_NAMESPACE_STYLE, XML_PAGE_LAYOUT_NAME, XML_TOK_MASTERPAGE_PAGE_MASTER_NAME },
+ { XML_NAMESPACE_DRAW, XML_STYLE_NAME, XML_TOK_MASTERPAGE_STYLE_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_PRESENTATION_PAGE_LAYOUT_NAME, XML_TOK_MASTERPAGE_PAGE_LAYOUT_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_USE_HEADER_NAME, XML_TOK_MASTERPAGE_USE_HEADER_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_USE_FOOTER_NAME, XML_TOK_MASTERPAGE_USE_FOOTER_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_USE_DATE_TIME_NAME, XML_TOK_MASTERPAGE_USE_DATE_TIME_NAME },
+ XML_TOKEN_MAP_END
+ };
mpMasterPageAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aMasterPageAttrTokenMap);
}
@@ -505,10 +505,10 @@ const SvXMLTokenMap& SdXMLImport::GetPageMasterAttrTokenMap()
if(!mpPageMasterAttrTokenMap)
{
static const SvXMLTokenMapEntry aPageMasterAttrTokenMap[] =
-{
- { XML_NAMESPACE_STYLE, XML_NAME, XML_TOK_PAGEMASTER_NAME },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_STYLE, XML_NAME, XML_TOK_PAGEMASTER_NAME },
+ XML_TOKEN_MAP_END
+ };
mpPageMasterAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPageMasterAttrTokenMap);
}
@@ -521,16 +521,16 @@ const SvXMLTokenMap& SdXMLImport::GetPageMasterStyleAttrTokenMap()
if(!mpPageMasterStyleAttrTokenMap)
{
static const SvXMLTokenMapEntry aPageMasterStyleAttrTokenMap[] =
-{
- { XML_NAMESPACE_FO, XML_MARGIN_TOP, XML_TOK_PAGEMASTERSTYLE_MARGIN_TOP },
- { XML_NAMESPACE_FO, XML_MARGIN_BOTTOM, XML_TOK_PAGEMASTERSTYLE_MARGIN_BOTTOM },
- { XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TOK_PAGEMASTERSTYLE_MARGIN_LEFT },
- { XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TOK_PAGEMASTERSTYLE_MARGIN_RIGHT },
- { XML_NAMESPACE_FO, XML_PAGE_WIDTH, XML_TOK_PAGEMASTERSTYLE_PAGE_WIDTH },
- { XML_NAMESPACE_FO, XML_PAGE_HEIGHT, XML_TOK_PAGEMASTERSTYLE_PAGE_HEIGHT },
- { XML_NAMESPACE_STYLE, XML_PRINT_ORIENTATION, XML_TOK_PAGEMASTERSTYLE_PAGE_ORIENTATION },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_FO, XML_MARGIN_TOP, XML_TOK_PAGEMASTERSTYLE_MARGIN_TOP },
+ { XML_NAMESPACE_FO, XML_MARGIN_BOTTOM, XML_TOK_PAGEMASTERSTYLE_MARGIN_BOTTOM },
+ { XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TOK_PAGEMASTERSTYLE_MARGIN_LEFT },
+ { XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TOK_PAGEMASTERSTYLE_MARGIN_RIGHT },
+ { XML_NAMESPACE_FO, XML_PAGE_WIDTH, XML_TOK_PAGEMASTERSTYLE_PAGE_WIDTH },
+ { XML_NAMESPACE_FO, XML_PAGE_HEIGHT, XML_TOK_PAGEMASTERSTYLE_PAGE_HEIGHT },
+ { XML_NAMESPACE_STYLE, XML_PRINT_ORIENTATION, XML_TOK_PAGEMASTERSTYLE_PAGE_ORIENTATION },
+ XML_TOKEN_MAP_END
+ };
mpPageMasterStyleAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPageMasterStyleAttrTokenMap);
}
@@ -543,20 +543,20 @@ const SvXMLTokenMap& SdXMLImport::GetDrawPageAttrTokenMap()
if(!mpDrawPageAttrTokenMap)
{
static const SvXMLTokenMapEntry aDrawPageAttrTokenMap[] =
-{
- { XML_NAMESPACE_DRAW, XML_NAME, XML_TOK_DRAWPAGE_NAME },
- { XML_NAMESPACE_DRAW, XML_STYLE_NAME, XML_TOK_DRAWPAGE_STYLE_NAME },
- { XML_NAMESPACE_DRAW, XML_MASTER_PAGE_NAME, XML_TOK_DRAWPAGE_MASTER_PAGE_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_PRESENTATION_PAGE_LAYOUT_NAME, XML_TOK_DRAWPAGE_PAGE_LAYOUT_NAME },
- { XML_NAMESPACE_DRAW, XML_ID, XML_TOK_DRAWPAGE_DRAWID },
- { XML_NAMESPACE_XML, XML_ID, XML_TOK_DRAWPAGE_XMLID },
- { XML_NAMESPACE_XLINK, XML_HREF, XML_TOK_DRAWPAGE_HREF },
- { XML_NAMESPACE_PRESENTATION, XML_USE_HEADER_NAME, XML_TOK_DRAWPAGE_USE_HEADER_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_USE_FOOTER_NAME, XML_TOK_DRAWPAGE_USE_FOOTER_NAME },
- { XML_NAMESPACE_PRESENTATION, XML_USE_DATE_TIME_NAME, XML_TOK_DRAWPAGE_USE_DATE_TIME_NAME },
-
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_DRAW, XML_NAME, XML_TOK_DRAWPAGE_NAME },
+ { XML_NAMESPACE_DRAW, XML_STYLE_NAME, XML_TOK_DRAWPAGE_STYLE_NAME },
+ { XML_NAMESPACE_DRAW, XML_MASTER_PAGE_NAME, XML_TOK_DRAWPAGE_MASTER_PAGE_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_PRESENTATION_PAGE_LAYOUT_NAME, XML_TOK_DRAWPAGE_PAGE_LAYOUT_NAME },
+ { XML_NAMESPACE_DRAW, XML_ID, XML_TOK_DRAWPAGE_DRAWID },
+ { XML_NAMESPACE_XML, XML_ID, XML_TOK_DRAWPAGE_XMLID },
+ { XML_NAMESPACE_XLINK, XML_HREF, XML_TOK_DRAWPAGE_HREF },
+ { XML_NAMESPACE_PRESENTATION, XML_USE_HEADER_NAME, XML_TOK_DRAWPAGE_USE_HEADER_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_USE_FOOTER_NAME, XML_TOK_DRAWPAGE_USE_FOOTER_NAME },
+ { XML_NAMESPACE_PRESENTATION, XML_USE_DATE_TIME_NAME, XML_TOK_DRAWPAGE_USE_DATE_TIME_NAME },
+
+ XML_TOKEN_MAP_END
+ };
mpDrawPageAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDrawPageAttrTokenMap);
}
@@ -569,12 +569,12 @@ const SvXMLTokenMap& SdXMLImport::GetDrawPageElemTokenMap()
if(!mpDrawPageElemTokenMap)
{
static const SvXMLTokenMapEntry aDrawPageElemTokenMap[] =
-{
- { XML_NAMESPACE_PRESENTATION, XML_NOTES, XML_TOK_DRAWPAGE_NOTES },
- { XML_NAMESPACE_ANIMATION, XML_PAR, XML_TOK_DRAWPAGE_PAR },
- { XML_NAMESPACE_ANIMATION, XML_SEQ, XML_TOK_DRAWPAGE_SEQ },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_PRESENTATION, XML_NOTES, XML_TOK_DRAWPAGE_NOTES },
+ { XML_NAMESPACE_ANIMATION, XML_PAR, XML_TOK_DRAWPAGE_PAR },
+ { XML_NAMESPACE_ANIMATION, XML_SEQ, XML_TOK_DRAWPAGE_SEQ },
+ XML_TOKEN_MAP_END
+ };
mpDrawPageElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDrawPageElemTokenMap);
}
@@ -587,14 +587,14 @@ const SvXMLTokenMap& SdXMLImport::GetPresentationPlaceholderAttrTokenMap()
if(!mpPresentationPlaceholderAttrTokenMap)
{
static const SvXMLTokenMapEntry aPresentationPlaceholderAttrTokenMap[] =
-{
- { XML_NAMESPACE_PRESENTATION, XML_OBJECT, XML_TOK_PRESENTATIONPLACEHOLDER_OBJECTNAME },
- { XML_NAMESPACE_SVG, XML_X, XML_TOK_PRESENTATIONPLACEHOLDER_X },
- { XML_NAMESPACE_SVG, XML_Y, XML_TOK_PRESENTATIONPLACEHOLDER_Y },
- { XML_NAMESPACE_SVG, XML_WIDTH, XML_TOK_PRESENTATIONPLACEHOLDER_WIDTH },
- { XML_NAMESPACE_SVG, XML_HEIGHT, XML_TOK_PRESENTATIONPLACEHOLDER_HEIGHT },
- XML_TOKEN_MAP_END
-};
+ {
+ { XML_NAMESPACE_PRESENTATION, XML_OBJECT, XML_TOK_PRESENTATIONPLACEHOLDER_OBJECTNAME },
+ { XML_NAMESPACE_SVG, XML_X, XML_TOK_PRESENTATIONPLACEHOLDER_X },
+ { XML_NAMESPACE_SVG, XML_Y, XML_TOK_PRESENTATIONPLACEHOLDER_Y },
+ { XML_NAMESPACE_SVG, XML_WIDTH, XML_TOK_PRESENTATIONPLACEHOLDER_WIDTH },
+ { XML_NAMESPACE_SVG, XML_HEIGHT, XML_TOK_PRESENTATIONPLACEHOLDER_HEIGHT },
+ XML_TOKEN_MAP_END
+ };
mpPresentationPlaceholderAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPresentationPlaceholderAttrTokenMap);
}
commit d0d596fc737404e1102fa49086eb585c473cc77a
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 10:58:55 2016 +0200
drop useless comments
Change-Id: I0493541da0d444ab94676365e93d4e0e5712bbea
diff --git a/xmloff/source/draw/sdxmlimp.cxx b/xmloff/source/draw/sdxmlimp.cxx
index d1dacf1..622d3cf 100644
--- a/xmloff/source/draw/sdxmlimp.cxx
+++ b/xmloff/source/draw/sdxmlimp.cxx
@@ -416,7 +416,7 @@ const SvXMLTokenMap& SdXMLImport::GetDocElemTokenMap()
};
mpDocElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDocElemTokenMap);
- } // if(!mpDocElemTokenMap)
+ }
return *mpDocElemTokenMap;
}
@@ -437,7 +437,7 @@ const SvXMLTokenMap& SdXMLImport::GetBodyElemTokenMap()
};
mpBodyElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aBodyElemTokenMap);
- } // if(!mpBodyElemTokenMap)
+ }
return *mpBodyElemTokenMap;
}
@@ -455,7 +455,7 @@ const SvXMLTokenMap& SdXMLImport::GetStylesElemTokenMap()
};
mpStylesElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aStylesElemTokenMap);
- } // if(!mpStylesElemTokenMap)
+ }
return *mpStylesElemTokenMap;
}
@@ -472,7 +472,7 @@ const SvXMLTokenMap& SdXMLImport::GetMasterPageElemTokenMap()
};
mpMasterPageElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aMasterPageElemTokenMap);
- } // if(!mpMasterPageElemTokenMap)
+ }
return *mpMasterPageElemTokenMap;
}
@@ -495,7 +495,7 @@ const SvXMLTokenMap& SdXMLImport::GetMasterPageAttrTokenMap()
};
mpMasterPageAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aMasterPageAttrTokenMap);
- } // if(!mpMasterPageAttrTokenMap)
+ }
return *mpMasterPageAttrTokenMap;
}
@@ -511,7 +511,7 @@ const SvXMLTokenMap& SdXMLImport::GetPageMasterAttrTokenMap()
};
mpPageMasterAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPageMasterAttrTokenMap);
- } // if(!mpPageMasterAttrTokenMap)
+ }
return *mpPageMasterAttrTokenMap;
}
@@ -533,7 +533,7 @@ const SvXMLTokenMap& SdXMLImport::GetPageMasterStyleAttrTokenMap()
};
mpPageMasterStyleAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPageMasterStyleAttrTokenMap);
- } // if(!mpPageMasterStyleAttrTokenMap)
+ }
return *mpPageMasterStyleAttrTokenMap;
}
@@ -559,7 +559,7 @@ const SvXMLTokenMap& SdXMLImport::GetDrawPageAttrTokenMap()
};
mpDrawPageAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDrawPageAttrTokenMap);
- } // if(!mpDrawPageAttrTokenMap)
+ }
return *mpDrawPageAttrTokenMap;
}
@@ -577,7 +577,7 @@ const SvXMLTokenMap& SdXMLImport::GetDrawPageElemTokenMap()
};
mpDrawPageElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDrawPageElemTokenMap);
- } // if(!mpDrawPageElemTokenMap)
+ }
return *mpDrawPageElemTokenMap;
}
@@ -597,7 +597,7 @@ const SvXMLTokenMap& SdXMLImport::GetPresentationPlaceholderAttrTokenMap()
};
mpPresentationPlaceholderAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPresentationPlaceholderAttrTokenMap);
- } // if(!mpPresentationPlaceholderAttrTokenMap)
+ }
return *mpPresentationPlaceholderAttrTokenMap;
}
commit db77b0c691cb3725bdef016117aad0f32718af9f
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 10:58:05 2016 +0200
use std::unique_ptr
Change-Id: If5e2e9a47480cca5fea09f96e876aece9cb21f9e
diff --git a/xmloff/source/draw/sdxmlimp.cxx b/xmloff/source/draw/sdxmlimp.cxx
index da92ee2..d1dacf1 100644
--- a/xmloff/source/draw/sdxmlimp.cxx
+++ b/xmloff/source/draw/sdxmlimp.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <o3tl/make_unique.hxx>
#include <osl/thread.h>
#include <comphelper/processfactory.hxx>
@@ -283,16 +284,6 @@ SdXMLImport::SdXMLImport(
OUString const & implementationName,
bool bIsDraw, SvXMLImportFlags nImportFlags )
: SvXMLImport( xContext, implementationName, nImportFlags ),
- mpDocElemTokenMap(nullptr),
- mpBodyElemTokenMap(nullptr),
- mpStylesElemTokenMap(nullptr),
- mpMasterPageElemTokenMap(nullptr),
- mpMasterPageAttrTokenMap(nullptr),
- mpPageMasterAttrTokenMap(nullptr),
- mpPageMasterStyleAttrTokenMap(nullptr),
- mpDrawPageAttrTokenMap(nullptr),
- mpDrawPageElemTokenMap(nullptr),
- mpPresentationPlaceholderAttrTokenMap(nullptr),
mnNewPageCount(0L),
mnNewMasterPageCount(0L),
mbIsDraw(bIsDraw),
@@ -407,21 +398,6 @@ void SAL_CALL SdXMLImport::initialize( const uno::Sequence< uno::Any >& aArgumen
}
}
-SdXMLImport::~SdXMLImport() throw ()
-{
- // delete all token maps
- delete mpDocElemTokenMap;
- delete mpBodyElemTokenMap;
- delete mpStylesElemTokenMap;
- delete mpMasterPageElemTokenMap;
- delete mpMasterPageAttrTokenMap;
- delete mpPageMasterAttrTokenMap;
- delete mpPageMasterStyleAttrTokenMap;
- delete mpDrawPageAttrTokenMap;
- delete mpDrawPageElemTokenMap;
- delete mpPresentationPlaceholderAttrTokenMap;
-}
-
const SvXMLTokenMap& SdXMLImport::GetDocElemTokenMap()
{
if(!mpDocElemTokenMap)
@@ -439,7 +415,7 @@ const SvXMLTokenMap& SdXMLImport::GetDocElemTokenMap()
XML_TOKEN_MAP_END
};
- mpDocElemTokenMap = new SvXMLTokenMap(aDocElemTokenMap);
+ mpDocElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDocElemTokenMap);
} // if(!mpDocElemTokenMap)
return *mpDocElemTokenMap;
@@ -460,7 +436,7 @@ const SvXMLTokenMap& SdXMLImport::GetBodyElemTokenMap()
XML_TOKEN_MAP_END
};
- mpBodyElemTokenMap = new SvXMLTokenMap(aBodyElemTokenMap);
+ mpBodyElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aBodyElemTokenMap);
} // if(!mpBodyElemTokenMap)
return *mpBodyElemTokenMap;
@@ -478,7 +454,7 @@ const SvXMLTokenMap& SdXMLImport::GetStylesElemTokenMap()
XML_TOKEN_MAP_END
};
- mpStylesElemTokenMap = new SvXMLTokenMap(aStylesElemTokenMap);
+ mpStylesElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aStylesElemTokenMap);
} // if(!mpStylesElemTokenMap)
return *mpStylesElemTokenMap;
@@ -495,7 +471,7 @@ const SvXMLTokenMap& SdXMLImport::GetMasterPageElemTokenMap()
XML_TOKEN_MAP_END
};
- mpMasterPageElemTokenMap = new SvXMLTokenMap(aMasterPageElemTokenMap);
+ mpMasterPageElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aMasterPageElemTokenMap);
} // if(!mpMasterPageElemTokenMap)
return *mpMasterPageElemTokenMap;
@@ -518,7 +494,7 @@ const SvXMLTokenMap& SdXMLImport::GetMasterPageAttrTokenMap()
XML_TOKEN_MAP_END
};
- mpMasterPageAttrTokenMap = new SvXMLTokenMap(aMasterPageAttrTokenMap);
+ mpMasterPageAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aMasterPageAttrTokenMap);
} // if(!mpMasterPageAttrTokenMap)
return *mpMasterPageAttrTokenMap;
@@ -534,7 +510,7 @@ const SvXMLTokenMap& SdXMLImport::GetPageMasterAttrTokenMap()
XML_TOKEN_MAP_END
};
- mpPageMasterAttrTokenMap = new SvXMLTokenMap(aPageMasterAttrTokenMap);
+ mpPageMasterAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPageMasterAttrTokenMap);
} // if(!mpPageMasterAttrTokenMap)
return *mpPageMasterAttrTokenMap;
@@ -556,7 +532,7 @@ const SvXMLTokenMap& SdXMLImport::GetPageMasterStyleAttrTokenMap()
XML_TOKEN_MAP_END
};
- mpPageMasterStyleAttrTokenMap = new SvXMLTokenMap(aPageMasterStyleAttrTokenMap);
+ mpPageMasterStyleAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPageMasterStyleAttrTokenMap);
} // if(!mpPageMasterStyleAttrTokenMap)
return *mpPageMasterStyleAttrTokenMap;
@@ -582,7 +558,7 @@ const SvXMLTokenMap& SdXMLImport::GetDrawPageAttrTokenMap()
XML_TOKEN_MAP_END
};
- mpDrawPageAttrTokenMap = new SvXMLTokenMap(aDrawPageAttrTokenMap);
+ mpDrawPageAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDrawPageAttrTokenMap);
} // if(!mpDrawPageAttrTokenMap)
return *mpDrawPageAttrTokenMap;
@@ -600,7 +576,7 @@ const SvXMLTokenMap& SdXMLImport::GetDrawPageElemTokenMap()
XML_TOKEN_MAP_END
};
- mpDrawPageElemTokenMap = new SvXMLTokenMap(aDrawPageElemTokenMap);
+ mpDrawPageElemTokenMap = o3tl::make_unique<SvXMLTokenMap>(aDrawPageElemTokenMap);
} // if(!mpDrawPageElemTokenMap)
return *mpDrawPageElemTokenMap;
@@ -620,7 +596,7 @@ const SvXMLTokenMap& SdXMLImport::GetPresentationPlaceholderAttrTokenMap()
XML_TOKEN_MAP_END
};
- mpPresentationPlaceholderAttrTokenMap = new SvXMLTokenMap(aPresentationPlaceholderAttrTokenMap);
+ mpPresentationPlaceholderAttrTokenMap = o3tl::make_unique<SvXMLTokenMap>(aPresentationPlaceholderAttrTokenMap);
} // if(!mpPresentationPlaceholderAttrTokenMap)
return *mpPresentationPlaceholderAttrTokenMap;
diff --git a/xmloff/source/draw/sdxmlimp_impl.hxx b/xmloff/source/draw/sdxmlimp_impl.hxx
index 27e3813..e8bc3a1 100644
--- a/xmloff/source/draw/sdxmlimp_impl.hxx
+++ b/xmloff/source/draw/sdxmlimp_impl.hxx
@@ -27,6 +27,7 @@
#include <com/sun/star/container/XNameAccess.hpp>
#include <map>
+#include <memory>
#include <vector>
#include <xmloff/xmlimp.hxx>
@@ -170,16 +171,16 @@ class SdXMLImport: public SvXMLImport
css::uno::Reference<SdXMLMasterStylesContext> mxMasterStylesContext;
// token map lists
- SvXMLTokenMap* mpDocElemTokenMap;
- SvXMLTokenMap* mpBodyElemTokenMap;
- SvXMLTokenMap* mpStylesElemTokenMap;
- SvXMLTokenMap* mpMasterPageElemTokenMap;
- SvXMLTokenMap* mpMasterPageAttrTokenMap;
- SvXMLTokenMap* mpPageMasterAttrTokenMap;
- SvXMLTokenMap* mpPageMasterStyleAttrTokenMap;
- SvXMLTokenMap* mpDrawPageAttrTokenMap;
- SvXMLTokenMap* mpDrawPageElemTokenMap;
- SvXMLTokenMap* mpPresentationPlaceholderAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpDocElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpBodyElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpStylesElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpMasterPageElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpMasterPageAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpPageMasterAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpPageMasterStyleAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpDrawPageAttrTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpDrawPageElemTokenMap;
+ std::unique_ptr<SvXMLTokenMap> mpPresentationPlaceholderAttrTokenMap;
sal_Int32 mnNewPageCount;
sal_Int32 mnNewMasterPageCount;
@@ -207,7 +208,6 @@ public:
const css::uno::Reference< css::uno::XComponentContext >& xContext,
OUString const & implementationName,
bool bIsDraw, SvXMLImportFlags nImportFlags );
- virtual ~SdXMLImport() throw ();
// XImporter
virtual void SAL_CALL setTargetDocument( const css::uno::Reference< css::lang::XComponent >& xDoc ) throw(css::lang::IllegalArgumentException, css::uno::RuntimeException, std::exception) override;
commit 5b010b43d7cadc11ebc6756a9b7689c660f3d387
Author: David Tardon <dtardon at redhat.com>
Date: Thu Sep 8 10:53:24 2016 +0200
remove direct memory management
Change-Id: I15823666ce8ea1840dc7b927d1a6f2f810edf2d2
diff --git a/xmloff/source/draw/sdxmlimp.cxx b/xmloff/source/draw/sdxmlimp.cxx
index a6c9f36..da92ee2 100644
--- a/xmloff/source/draw/sdxmlimp.cxx
+++ b/xmloff/source/draw/sdxmlimp.cxx
@@ -283,7 +283,6 @@ SdXMLImport::SdXMLImport(
OUString const & implementationName,
bool bIsDraw, SvXMLImportFlags nImportFlags )
: SvXMLImport( xContext, implementationName, nImportFlags ),
- mpMasterStylesContext(nullptr),
mpDocElemTokenMap(nullptr),
mpBodyElemTokenMap(nullptr),
mpStylesElemTokenMap(nullptr),
@@ -410,10 +409,6 @@ void SAL_CALL SdXMLImport::initialize( const uno::Sequence< uno::Any >& aArgumen
SdXMLImport::~SdXMLImport() throw ()
{
- // Styles or AutoStyles context?
- if(mpMasterStylesContext)
- mpMasterStylesContext->ReleaseRef();
-
// delete all token maps
delete mpDocElemTokenMap;
delete mpBodyElemTokenMap;
@@ -719,14 +714,9 @@ SvXMLStylesContext *SdXMLImport::CreateAutoStylesContext(const OUString& rLocalN
SvXMLImportContext* SdXMLImport::CreateMasterStylesContext(const OUString& rLocalName,
const uno::Reference<xml::sax::XAttributeList>&)
{
- if(mpMasterStylesContext)
- return mpMasterStylesContext;
-
- mpMasterStylesContext = new SdXMLMasterStylesContext(
- *this, rLocalName);
- mpMasterStylesContext->AddFirstRef();
-
- return mpMasterStylesContext;
+ if (!mxMasterStylesContext.is())
+ mxMasterStylesContext.set(new SdXMLMasterStylesContext(*this, rLocalName));
+ return mxMasterStylesContext.get();
}
SvXMLImportContext *SdXMLImport::CreateFontDeclsContext(const OUString& rLocalName,
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list