summaryrefslogtreecommitdiff
path: root/svl/source/numbers/zforlist.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svl/source/numbers/zforlist.cxx')
-rw-r--r--svl/source/numbers/zforlist.cxx65
1 files changed, 26 insertions, 39 deletions
diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx
index 020d84542753..4c0f6bd4ec95 100644
--- a/svl/source/numbers/zforlist.cxx
+++ b/svl/source/numbers/zforlist.cxx
@@ -45,6 +45,7 @@
#include <math.h>
#include <limits>
+#include <boost/scoped_ptr.hpp>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -685,7 +686,7 @@ void SvNumberFormatter::DeleteEntry(sal_uInt32 nKey)
bool SvNumberFormatter::Load( SvStream& rStream )
{
LanguageType eSysLang = SvtSysLocale().GetLanguageTag().getLanguageType();
- SvNumberFormatter* pConverter = NULL;
+ boost::scoped_ptr<SvNumberFormatter> pConverter;
ImpSvNumMultipleReadHeader aHdr( rStream );
sal_uInt16 nVersion;
@@ -725,7 +726,7 @@ bool SvNumberFormatter::Load( SvStream& rStream )
// different SYSTEM locale
if ( !pConverter )
{
- pConverter = new SvNumberFormatter( m_xContext, eSysLang );
+ pConverter.reset(new SvNumberFormatter( m_xContext, eSysLang ));
}
pEntry->ConvertLanguage( *pConverter, eSaveSysLang, eLoadSysLang, true );
}
@@ -763,10 +764,7 @@ bool SvNumberFormatter::Load( SvStream& rStream )
aHdr.EndEntry();
}
- if ( pConverter )
- {
- delete pConverter;
- }
+ pConverter.reset();
// generate additional i18n standard formats for all used locales
LanguageType eOldLanguage = ActLnge;
@@ -1562,11 +1560,11 @@ bool SvNumberFormatter::GetPreviewString(const OUString& sFormatString,
eLnge = ActLnge;
sal_Int32 nCheckPos = -1;
OUString sTmpString = sFormatString;
- SvNumberformat* p_Entry = new SvNumberformat(sTmpString,
+ boost::scoped_ptr<SvNumberformat> p_Entry(new SvNumberformat(sTmpString,
pFormatScanner,
pStringScanner,
nCheckPos,
- eLnge);
+ eLnge));
if (nCheckPos == 0) // String ok
{
sal_uInt32 CLOffset = ImpGenerateCL(eLnge); // create new standard formats if necessary
@@ -1587,12 +1585,10 @@ bool SvNumberFormatter::GetPreviewString(const OUString& sFormatString,
p_Entry->SetStarFormatSupport( false );
}
}
- delete p_Entry;
return true;
}
else
{
- delete p_Entry;
return false;
}
}
@@ -1625,15 +1621,15 @@ bool SvNumberFormatter::GetPreviewStringGuess( const OUString& sFormatString,
return true;
}
- SvNumberformat *pEntry = NULL;
+ boost::scoped_ptr<SvNumberformat> pEntry;
sal_Int32 nCheckPos = -1;
OUString sTmpString;
if ( bEnglish )
{
sTmpString = sFormatString;
- pEntry = new SvNumberformat( sTmpString, pFormatScanner,
- pStringScanner, nCheckPos, eLnge );
+ pEntry.reset(new SvNumberformat( sTmpString, pFormatScanner,
+ pStringScanner, nCheckPos, eLnge ));
}
else
{
@@ -1645,8 +1641,8 @@ bool SvNumberFormatter::GetPreviewStringGuess( const OUString& sFormatString,
LanguageType eFormatLang = LANGUAGE_ENGLISH_US;
pFormatScanner->SetConvertMode( LANGUAGE_ENGLISH_US, eLnge );
sTmpString = sFormatString;
- pEntry = new SvNumberformat( sTmpString, pFormatScanner,
- pStringScanner, nCheckPos, eFormatLang );
+ pEntry.reset(new SvNumberformat( sTmpString, pFormatScanner,
+ pStringScanner, nCheckPos, eFormatLang ));
pFormatScanner->SetConvertMode( false );
ChangeIntl( eLnge );
@@ -1656,10 +1652,9 @@ bool SvNumberFormatter::GetPreviewStringGuess( const OUString& sFormatString,
pEntry->GetFormatstring() ) )
{
// other Format
- delete pEntry;
sTmpString = sFormatString;
- pEntry = new SvNumberformat( sTmpString, pFormatScanner,
- pStringScanner, nCheckPos, eLnge );
+ pEntry.reset(new SvNumberformat( sTmpString, pFormatScanner,
+ pStringScanner, nCheckPos, eLnge ));
}
else
{
@@ -1669,20 +1664,18 @@ bool SvNumberFormatter::GetPreviewStringGuess( const OUString& sFormatString,
eFormatLang = eLnge;
pFormatScanner->SetConvertMode( eLnge, LANGUAGE_ENGLISH_US );
sTmpString = sFormatString;
- SvNumberformat* pEntry2 = new SvNumberformat( sTmpString, pFormatScanner,
- pStringScanner, nCheckPos2, eFormatLang );
+ boost::scoped_ptr<SvNumberformat> pEntry2(new SvNumberformat( sTmpString, pFormatScanner,
+ pStringScanner, nCheckPos2, eFormatLang ));
pFormatScanner->SetConvertMode( false );
ChangeIntl( eLnge );
if ( nCheckPos2 == 0 && !xTransliteration->isEqual( sFormatString,
pEntry2->GetFormatstring() ) )
{
// other Format
- delete pEntry;
sTmpString = sFormatString;
- pEntry = new SvNumberformat( sTmpString, pFormatScanner,
- pStringScanner, nCheckPos, eLnge );
+ pEntry.reset(new SvNumberformat( sTmpString, pFormatScanner,
+ pStringScanner, nCheckPos, eLnge ));
}
- delete pEntry2;
}
}
}
@@ -1691,10 +1684,8 @@ bool SvNumberFormatter::GetPreviewStringGuess( const OUString& sFormatString,
{
ImpGenerateCL( eLnge ); // create new standard formats if necessary
pEntry->GetOutputString( fPreviewNumber, sOutString, ppColor );
- delete pEntry;
return true;
}
- delete pEntry;
return false;
}
@@ -1717,11 +1708,11 @@ bool SvNumberFormatter::GetPreviewString( const OUString& sFormatString,
eLnge = ActLnge;
sal_Int32 nCheckPos = -1;
OUString sTmpString = sFormatString;
- SvNumberformat* p_Entry = new SvNumberformat( sTmpString,
+ boost::scoped_ptr<SvNumberformat> p_Entry(new SvNumberformat( sTmpString,
pFormatScanner,
pStringScanner,
nCheckPos,
- eLnge);
+ eLnge));
if (nCheckPos == 0) // String ok
{
// May have to create standard formats for this locale.
@@ -1746,12 +1737,10 @@ bool SvNumberFormatter::GetPreviewString( const OUString& sFormatString,
sOutString = sPreviewString;
}
}
- delete p_Entry;
return true;
}
else
{
- delete p_Entry;
return false;
}
}
@@ -1772,11 +1761,11 @@ sal_uInt32 SvNumberFormatter::TestNewString(const OUString& sFormatString,
sal_uInt32 nRes;
sal_Int32 nCheckPos = -1;
OUString sTmpString = sFormatString;
- SvNumberformat* pEntry = new SvNumberformat(sTmpString,
+ boost::scoped_ptr<SvNumberformat> pEntry(new SvNumberformat(sTmpString,
pFormatScanner,
pStringScanner,
nCheckPos,
- eLnge);
+ eLnge));
if (nCheckPos == 0) // String ok
{
sal_uInt32 CLOffset = ImpGenerateCL(eLnge); // create new standard formats if necessary
@@ -1787,7 +1776,6 @@ sal_uInt32 SvNumberFormatter::TestNewString(const OUString& sFormatString,
{
nRes = NUMBERFORMAT_ENTRY_NOT_FOUND;
}
- delete pEntry;
return nRes;
}
@@ -1988,8 +1976,8 @@ sal_uInt32 SvNumberFormatter::GetFormatSpecialInfo( const OUString& rFormatStrin
eLnge = ActLnge;
OUString aTmpStr( rFormatString );
sal_Int32 nCheckPos = 0;
- SvNumberformat* pFormat = new SvNumberformat( aTmpStr, pFormatScanner,
- pStringScanner, nCheckPos, eLnge );
+ boost::scoped_ptr<SvNumberformat> pFormat(new SvNumberformat( aTmpStr, pFormatScanner,
+ pStringScanner, nCheckPos, eLnge ));
if ( nCheckPos == 0 )
{
pFormat->GetFormatSpecialInfo( bThousand, IsRed, nPrecision, nAnzLeading );
@@ -2001,7 +1989,6 @@ sal_uInt32 SvNumberFormatter::GetFormatSpecialInfo( const OUString& rFormatStrin
nPrecision = pFormatScanner->GetStandardPrec();
nAnzLeading = 0;
}
- delete pFormat;
return nCheckPos;
}
@@ -3698,9 +3685,9 @@ void SvNumberFormatter::ImpInitCurrencyTable()
bInitializing = true;
LanguageType eSysLang = SvtSysLocale().GetLanguageTag().getLanguageType();
- LocaleDataWrapper* pLocaleData = new LocaleDataWrapper(
+ boost::scoped_ptr<LocaleDataWrapper> pLocaleData(new LocaleDataWrapper(
::comphelper::getProcessComponentContext(),
- SvtSysLocale().GetLanguageTag() );
+ SvtSysLocale().GetLanguageTag() ));
// get user configured currency
OUString aConfiguredCurrencyAbbrev;
LanguageType eConfiguredCurrencyLanguage = LANGUAGE_SYSTEM;
@@ -3835,7 +3822,7 @@ void SvNumberFormatter::ImpInitCurrencyTable()
LocaleDataWrapper::outputCheckMessage(
"SvNumberFormatter::ImpInitCurrencyTable: system currency not in I18N locale data.");
}
- delete pLocaleData;
+ pLocaleData.reset();
SvtSysLocaleOptions::SetCurrencyChangeLink( STATIC_LINK( NULL, SvNumberFormatter, CurrencyChangeLink ) );
bInitializing = false;
bCurrencyTableInitialized = true;