summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-02-27 10:05:33 +0000
committerCaolán McNamara <caolanm@redhat.com>2017-02-27 13:53:03 +0000
commit8e89aa77056c4b233c24ad3a93c6d4a8159fcf16 (patch)
treeb09274e14ec0d4762a5036d1cd1bd3e501eca286
parent9058b7075de432c6b135928878b9c93acda660b0 (diff)
use std::unique_ptr
Change-Id: I3f00cd66a0a8aa0571733caf4db4d16dfd102683
-rw-r--r--sw/inc/breakit.hxx34
-rw-r--r--sw/source/core/bastyp/breakit.cxx27
2 files changed, 25 insertions, 36 deletions
diff --git a/sw/inc/breakit.hxx b/sw/inc/breakit.hxx
index 2978f4472ef0..6b92d8052f27 100644
--- a/sw/inc/breakit.hxx
+++ b/sw/inc/breakit.hxx
@@ -35,8 +35,8 @@ class SW_DLLPUBLIC SwBreakIt
css::uno::Reference< css::uno::XComponentContext > m_xContext;
mutable css::uno::Reference< css::i18n::XBreakIterator > xBreak;
- LanguageTag * m_pLanguageTag; ///< language tag of the current locale
- css::i18n::ForbiddenCharacters * m_pForbidden;
+ std::unique_ptr<LanguageTag> m_xLanguageTag; ///< language tag of the current locale
+ std::unique_ptr<css::i18n::ForbiddenCharacters> m_xForbidden;
LanguageType aForbiddenLang; ///< language of the current forbiddenChar struct
@@ -50,9 +50,7 @@ class SW_DLLPUBLIC SwBreakIt
SwBreakIt& operator=(SwBreakIt const&) = delete;
// private (see @ Create_, Delete_).
- explicit SwBreakIt(
- const css::uno::Reference< css::uno::XComponentContext > & rxContext);
- ~SwBreakIt();
+ explicit SwBreakIt(const css::uno::Reference<css::uno::XComponentContext> & rxContext);
public:
// private (see @ source/core/bastyp/init.cxx).
@@ -71,9 +69,9 @@ public:
const css::lang::Locale& GetLocale( const LanguageType aLang )
{
- if( !m_pLanguageTag || m_pLanguageTag->getLanguageType() != aLang )
- GetLocale_( aLang );
- return m_pLanguageTag->getLocale();
+ if (!m_xLanguageTag || m_xLanguageTag->getLanguageType() != aLang)
+ GetLocale_(aLang);
+ return m_xLanguageTag->getLocale();
}
const css::lang::Locale& GetLocale( const LanguageTag& rLanguageTag )
@@ -82,16 +80,16 @@ public:
// because here the LanguageTag is already a known LanguageType value
// assigned, so LanguageTag does not need to convert to BCP47 for
// comparison.
- if( !m_pLanguageTag || m_pLanguageTag->getLanguageType() != rLanguageTag.getLanguageType() )
- GetLocale_( rLanguageTag );
- return m_pLanguageTag->getLocale();
+ if (!m_xLanguageTag || m_xLanguageTag->getLanguageType() != rLanguageTag.getLanguageType())
+ GetLocale_(rLanguageTag);
+ return m_xLanguageTag->getLocale();
}
const LanguageTag& GetLanguageTag( const LanguageType aLang )
{
- if( !m_pLanguageTag || m_pLanguageTag->getLanguageType() != aLang )
- GetLocale_( aLang );
- return *m_pLanguageTag;
+ if (!m_xLanguageTag || m_xLanguageTag->getLanguageType() != aLang)
+ GetLocale_(aLang);
+ return *m_xLanguageTag;
}
const LanguageTag& GetLanguageTag( const LanguageTag& rLanguageTag )
@@ -100,16 +98,16 @@ public:
// because here the LanguageTag is already a known LanguageType value
// assigned, so LanguageTag does not need to convert to BCP47 for
// comparison.
- if( !m_pLanguageTag || m_pLanguageTag->getLanguageType() != rLanguageTag.getLanguageType() )
+ if (!m_xLanguageTag || m_xLanguageTag->getLanguageType() != rLanguageTag.getLanguageType())
GetLocale_( rLanguageTag );
- return *m_pLanguageTag;
+ return *m_xLanguageTag;
}
const css::i18n::ForbiddenCharacters& GetForbidden( const LanguageType aLang )
{
- if( !m_pForbidden || aForbiddenLang != aLang )
+ if (!m_xForbidden || aForbiddenLang != aLang)
GetForbidden_( aLang );
- return *m_pForbidden;
+ return *m_xForbidden;
}
sal_uInt16 GetRealScriptOfText( const OUString& rText, sal_Int32 nPos ) const;
diff --git a/sw/source/core/bastyp/breakit.cxx b/sw/source/core/bastyp/breakit.cxx
index bf0ddb60ea02..69436e20d778 100644
--- a/sw/source/core/bastyp/breakit.cxx
+++ b/sw/source/core/bastyp/breakit.cxx
@@ -53,20 +53,12 @@ SwBreakIt * SwBreakIt::Get()
}
SwBreakIt::SwBreakIt( const uno::Reference<uno::XComponentContext> & rxContext )
- : m_xContext( rxContext ),
- m_pLanguageTag( nullptr ),
- m_pForbidden( nullptr ),
- aForbiddenLang( LANGUAGE_DONTKNOW )
+ : m_xContext(rxContext)
+ , aForbiddenLang(LANGUAGE_DONTKNOW)
{
OSL_ENSURE( m_xContext.is(), "SwBreakIt: no MultiServiceFactory" );
}
-SwBreakIt::~SwBreakIt()
-{
- delete m_pLanguageTag;
- delete m_pForbidden;
-}
-
void SwBreakIt::createBreakIterator() const
{
if ( m_xContext.is() && !xBreak.is() )
@@ -75,18 +67,18 @@ void SwBreakIt::createBreakIterator() const
void SwBreakIt::GetLocale_( const LanguageType aLang )
{
- if (m_pLanguageTag)
- m_pLanguageTag->reset( aLang );
+ if (m_xLanguageTag)
+ m_xLanguageTag->reset(aLang);
else
- m_pLanguageTag = new LanguageTag( aLang );
+ m_xLanguageTag.reset(new LanguageTag(aLang));
}
void SwBreakIt::GetLocale_( const LanguageTag& rLanguageTag )
{
- if (m_pLanguageTag)
- *m_pLanguageTag = rLanguageTag;
+ if (m_xLanguageTag)
+ *m_xLanguageTag = rLanguageTag;
else
- m_pLanguageTag = new LanguageTag( rLanguageTag );
+ m_xLanguageTag.reset(new LanguageTag(rLanguageTag));
}
void SwBreakIt::GetForbidden_( const LanguageType aLang )
@@ -94,8 +86,7 @@ void SwBreakIt::GetForbidden_( const LanguageType aLang )
LocaleDataWrapper aWrap( m_xContext, GetLanguageTag( aLang ) );
aForbiddenLang = aLang;
- delete m_pForbidden;
- m_pForbidden = new i18n::ForbiddenCharacters( aWrap.getForbiddenCharacters() );
+ m_xForbidden.reset(new i18n::ForbiddenCharacters(aWrap.getForbiddenCharacters()));
}
sal_uInt16 SwBreakIt::GetRealScriptOfText( const OUString& rText, sal_Int32 nPos ) const