[Libreoffice-commits] .: 2 commits - sw/source
Jan Holesovsky
kendy at kemper.freedesktop.org
Fri Dec 30 07:37:19 PST 2011
sw/source/ui/dochdl/gloshdl.cxx | 8 +-
sw/source/ui/inc/glosbib.hxx | 11 ++--
sw/source/ui/inc/glosdoc.hxx | 6 +-
sw/source/ui/misc/glosbib.cxx | 107 +++++++++++++++++-----------------------
sw/source/ui/misc/glosdoc.cxx | 66 +++++++++---------------
sw/source/ui/misc/glossary.cxx | 5 -
sw/source/ui/utlui/gloslst.cxx | 10 +--
7 files changed, 90 insertions(+), 123 deletions(-)
New commits:
commit a9b3b64a5a94a4c27ac524ac6997ef2e2467267c
Author: Brad Sowden <code at sowden.org>
Date: Tue Dec 27 23:18:50 2011 +1300
fdo#38831 Convert some SvStrings to std::vector (part 2)
diff --git a/sw/source/ui/dochdl/gloshdl.cxx b/sw/source/ui/dochdl/gloshdl.cxx
index efd545f..2fa3c32 100644
--- a/sw/source/ui/dochdl/gloshdl.cxx
+++ b/sw/source/ui/dochdl/gloshdl.cxx
@@ -38,8 +38,6 @@
#include <svl/macitem.hxx>
#include <sfx2/fcontnr.hxx>
#include <sfx2/docfile.hxx>
-#define _SVSTDARR_STRINGS
-#include <svl/svstdarr.hxx>
#include <svl/urihelper.hxx>
#include <unotools/transliterationwrapper.hxx>
#include <poolfmt.hxx>
@@ -138,13 +136,13 @@ void SwGlossaryHdl::SetCurGroup(const String &rGrp, sal_Bool bApi, sal_Bool bAlw
String sCurBase = aTemp.getBase();
aTemp.removeSegment();
const String sCurEntryPath = aTemp.GetMainURL(INetURLObject::NO_DECODE);
- const SvStrings* pPathArr = rStatGlossaries.GetPathArray();
+ const std::vector<String*> *pPathArr = rStatGlossaries.GetPathArray();
sal_uInt16 nCurrentPath = USHRT_MAX;
- for(sal_uInt16 nPath = 0; nPath < pPathArr->Count(); nPath++)
+ for( size_t nPath = 0; nPath < pPathArr->size(); nPath++ )
{
if(sCurEntryPath == *(*pPathArr)[nPath])
{
- nCurrentPath = nPath;
+ nCurrentPath = static_cast<sal_uInt16>(nPath);
break;
}
}
diff --git a/sw/source/ui/inc/glosbib.hxx b/sw/source/ui/inc/glosbib.hxx
index a7f9c49..83c2706 100644
--- a/sw/source/ui/inc/glosbib.hxx
+++ b/sw/source/ui/inc/glosbib.hxx
@@ -41,7 +41,6 @@
#include <vector>
class SwGlossaryHdl;
-class SvStrings;
class FEdit : public Edit
{
@@ -104,7 +103,7 @@ protected:
public:
SwGlossaryGroupDlg(Window * pParent,
- const SvStrings* pPathArr,
+ const std::vector<String*> *pPathArr,
SwGlossaryHdl *pGlosHdl);
~SwGlossaryGroupDlg();
diff --git a/sw/source/ui/inc/glosdoc.hxx b/sw/source/ui/inc/glosdoc.hxx
index b85e6fa..a0db0b8 100644
--- a/sw/source/ui/inc/glosdoc.hxx
+++ b/sw/source/ui/inc/glosdoc.hxx
@@ -66,7 +66,7 @@ class SW_DLLPUBLIC SwGlossaries
String m_aPath;
String m_sOldErrPath;
String m_sErrPath;
- SvStrings *m_pPathArr;
+ std::vector<String*> m_aPathArr;
SvStrings *m_pGlosArr;
sal_Bool m_bError;
@@ -141,8 +141,8 @@ public:
void SaveGroupDoc(const String &rGrpName, const String& rLongName );
void UpdateGlosPath(sal_Bool bFull);
void ShowError();
- inline sal_uLong IsGlosPathErr() { return m_bError; }
- const SvStrings* GetPathArray() const {return m_pPathArr;}
+ inline sal_uLong IsGlosPathErr() { return m_bError; }
+ const std::vector<String*>* GetPathArray() const { return &m_aPathArr; }
};
diff --git a/sw/source/ui/misc/glosbib.cxx b/sw/source/ui/misc/glosbib.cxx
index 18f10d2..fff2a2c 100644
--- a/sw/source/ui/misc/glosbib.cxx
+++ b/sw/source/ui/misc/glosbib.cxx
@@ -30,7 +30,6 @@
#undef SW_DLLIMPLEMENTATION
#endif
-#define _SVSTDARR_STRINGS
#include <tools/urlobj.hxx>
#include <tools/stream.hxx>
#include <vcl/msgbox.hxx>
@@ -59,7 +58,7 @@
#define RENAME_TOKEN_DELIM (sal_Unicode)1
SwGlossaryGroupDlg::SwGlossaryGroupDlg(Window * pParent,
- const SvStrings* pPathArr,
+ const std::vector<String*> *pPathArr,
SwGlossaryHdl *pHdl) :
SvxStandardDialog(pParent, SW_RES(DLG_BIB_BASE)),
aBibFT( this, SW_RES(FT_BIB)),
@@ -81,8 +80,6 @@ SwGlossaryGroupDlg::SwGlossaryGroupDlg(Window * pParent,
pRenamedArr(0),
pGlosHdl(pHdl)
{
- sal_uInt16 i;
-
FreeResource();
long nTabs[] =
@@ -100,7 +97,8 @@ SwGlossaryGroupDlg::SwGlossaryGroupDlg(Window * pParent,
aNameED.SetModifyHdl(LINK(this, SwGlossaryGroupDlg, ModifyHdl));
aPathLB.SetSelectHdl(LINK(this, SwGlossaryGroupDlg, ModifyHdl));
aRenamePB.SetClickHdl(LINK(this, SwGlossaryGroupDlg, RenameHdl));
- for( i = 0; i < pPathArr->Count(); i++)
+
+ for( size_t i = 0; i < pPathArr->size(); i++ )
{
String sPath(*(*pPathArr)[i]);
INetURLObject aTempURL(sPath);
@@ -119,7 +117,7 @@ SwGlossaryGroupDlg::SwGlossaryGroupDlg(Window * pParent,
aPathLB.Enable(sal_True);
const sal_uInt16 nCount = pHdl->GetGroupCnt();
- for(i = 0; i < nCount; ++i)
+ for( sal_uInt16 i = 0; i < nCount; ++i)
{
String sTitle;
String sGroup = pHdl->GetGroupName(i, &sTitle);
diff --git a/sw/source/ui/misc/glosdoc.cxx b/sw/source/ui/misc/glosdoc.cxx
index 661ddc1..3f02b01 100644
--- a/sw/source/ui/misc/glosdoc.cxx
+++ b/sw/source/ui/misc/glosdoc.cxx
@@ -144,7 +144,7 @@ sal_Bool SwGlossaries::FindGroupName(String & rGroup)
String sTemp( GetGroupName( i ));
sal_uInt16 nPath = (sal_uInt16)sTemp.GetToken(1, GLOS_DELIM).ToInt32();
- if( !SWUnoHelper::UCB_IsCaseSensitiveFileName( *(*m_pPathArr)[nPath] )
+ if( !SWUnoHelper::UCB_IsCaseSensitiveFileName( *m_aPathArr[nPath] )
&& rSCmp.isEqual( rGroup, sTemp.GetToken( 0, GLOS_DELIM) ) )
{
rGroup = sTemp;
@@ -218,9 +218,9 @@ void SwGlossaries::PutGroupDoc(SwTextBlocks *pBlock) {
sal_Bool SwGlossaries::NewGroupDoc(String& rGroupName, const String& rTitle)
{
sal_uInt16 nNewPath = (sal_uInt16)rGroupName.GetToken(1, GLOS_DELIM).ToInt32();
- if(nNewPath >= m_pPathArr->Count())
+ if( static_cast<size_t>(nNewPath) >= m_aPathArr.size() )
return sal_False;
- String sNewFilePath(*(*m_pPathArr)[nNewPath]);
+ String sNewFilePath(*m_aPathArr[nNewPath]);
String sNewGroup = lcl_CheckFileName(sNewFilePath, rGroupName.GetToken(0, GLOS_DELIM));
sNewGroup += GLOS_DELIM;
sNewGroup += rGroupName.GetToken(1, GLOS_DELIM);
@@ -244,9 +244,9 @@ sal_Bool SwGlossaries::RenameGroupDoc(
{
sal_Bool bRet = sal_False;
sal_uInt16 nOldPath = (sal_uInt16)rOldGroup.GetToken(1, GLOS_DELIM).ToInt32();
- if(nOldPath < m_pPathArr->Count())
+ if( static_cast<size_t>(nOldPath) < m_aPathArr.size() )
{
- String sOldFileURL(*(*m_pPathArr)[nOldPath]);
+ String sOldFileURL(*m_aPathArr[nOldPath]);
sOldFileURL += INET_PATH_TOKEN;
sOldFileURL += rOldGroup.GetToken(0, GLOS_DELIM);
sOldFileURL += SwGlossaries::GetExtension();
@@ -255,9 +255,9 @@ sal_Bool SwGlossaries::RenameGroupDoc(
if(bExist)
{
sal_uInt16 nNewPath = (sal_uInt16)rNewGroup.GetToken(1, GLOS_DELIM).ToInt32();
- if( nNewPath < m_pPathArr->Count())
+ if( static_cast<size_t>(nNewPath) < m_aPathArr.size() )
{
- String sNewFilePath(*(*m_pPathArr)[nNewPath]);
+ String sNewFilePath(*m_aPathArr[nNewPath]);
String sNewFileName = lcl_CheckFileName(
sNewFilePath, rNewGroup.GetToken(0, GLOS_DELIM));
const sal_uInt16 nFileNameLen = sNewFileName.Len();
@@ -304,9 +304,9 @@ sal_Bool SwGlossaries::RenameGroupDoc(
sal_Bool SwGlossaries::DelGroupDoc(const String &rName)
{
sal_uInt16 nPath = (sal_uInt16)rName.GetToken(1, GLOS_DELIM).ToInt32();
- if(nPath >= m_pPathArr->Count())
+ if( static_cast<size_t>(nPath) >= m_aPathArr.size() )
return sal_False;
- String sFileURL(*(*m_pPathArr)[nPath]);
+ String sFileURL(*m_aPathArr[nPath]);
String aTmp( rName.GetToken(0, GLOS_DELIM));
String aName(aTmp);
aName += GLOS_DELIM;
@@ -324,9 +324,6 @@ sal_Bool SwGlossaries::DelGroupDoc(const String &rName)
return bRemoved;
}
-/*------------------------------------------------------------------------
- Description: DTOR
-------------------------------------------------------------------------*/
SwGlossaries::~SwGlossaries()
{
sal_uInt16 nCount = m_pGlosArr? m_pGlosArr->Count() : 0;
@@ -337,14 +334,11 @@ SwGlossaries::~SwGlossaries()
String *pTmp = (*m_pGlosArr)[i];
delete pTmp;
}
- nCount = m_pPathArr? m_pPathArr->Count() : 0;
- for(i = 0; i < nCount; ++i)
- {
- String *pTmp = (*m_pPathArr)[i];
- delete pTmp;
- }
+
+ for(std::vector<String*>::const_iterator it(m_aPathArr.begin()); it != m_aPathArr.end(); ++it)
+ delete *it;
+
delete m_pGlosArr;
- delete m_pPathArr;
InvalidateUNOOjects();
}
@@ -356,9 +350,9 @@ SwTextBlocks* SwGlossaries::GetGlosDoc( const String &rName, sal_Bool bCreate )
{
sal_uInt16 nPath = (sal_uInt16)rName.GetToken(1, GLOS_DELIM).ToInt32();
SwTextBlocks *pTmp = 0;
- if(nPath < m_pPathArr->Count())
+ if( static_cast<size_t>(nPath) < m_aPathArr.size() )
{
- String sFileURL(*(*m_pPathArr)[nPath]);
+ String sFileURL(*m_aPathArr[nPath]);
String aTmp( rName.GetToken(0, GLOS_DELIM));
aTmp += SwGlossaries::GetExtension();
sFileURL += INET_PATH_TOKEN;
@@ -395,19 +389,18 @@ SvStrings* SwGlossaries::GetNameList()
{
m_pGlosArr = new SvStrings;
String sExt( SwGlossaries::GetExtension() );
- for( sal_uInt16 i = 0; i < m_pPathArr->Count(); i++ )
+ for( size_t i = 0; i < m_aPathArr.size(); ++i )
{
SvStrings aFiles( 16, 16 );
- SWUnoHelper::UCB_GetFileListOfFolder( *(*m_pPathArr)[i], aFiles,
- &sExt );
+ SWUnoHelper::UCB_GetFileListOfFolder( *m_aPathArr[i], aFiles, &sExt );
for( sal_uInt16 nFiles = 0, nFEnd = aFiles.Count();
nFiles < nFEnd; ++nFiles )
{
String* pTitle = aFiles[ nFiles ];
String sName( pTitle->Copy( 0, pTitle->Len() - sExt.Len() ));
sName += GLOS_DELIM;
- sName += String::CreateFromInt32( i );
+ sName += String::CreateFromInt32( static_cast<sal_Int16>(i) );
m_pGlosArr->Insert( new String(sName), m_pGlosArr->Count() );
// don't need any more these pointers
@@ -426,14 +419,9 @@ SvStrings* SwGlossaries::GetNameList()
return m_pGlosArr;
}
-/*------------------------------------------------------------------------
- Description: CTOR
-------------------------------------------------------------------------*/
SwGlossaries::SwGlossaries() :
- m_pPathArr(0),
m_pGlosArr(0)
{
- m_pPathArr = new SvStrings;
UpdateGlosPath(sal_True);
}
@@ -460,18 +448,14 @@ void SwGlossaries::UpdateGlosPath(sal_Bool bFull)
if (bFull || bPathChanged)
{
m_aPath = aNewPath;
- sal_uInt16 nCount = m_pPathArr? m_pPathArr->Count() : 0;
- sal_uInt16 i;
- for( i = nCount; i; --i)
- {
- String *pTmp = (*m_pPathArr)[i - 1];
- m_pPathArr->Remove(i - 1);
- delete pTmp;
- }
+ for(std::vector<String*>::const_iterator it(m_aPathArr.begin()); it != m_aPathArr.end(); ++it)
+ delete *it;
+ m_aPathArr.clear();
+
sal_uInt16 nTokenCount = m_aPath.GetTokenCount(SVT_SEARCHPATH_DELIMITER);
SvStrings aDirArr;
- for( i = 0; i < nTokenCount; i++ )
+ for( sal_uInt16 i = 0; i < nTokenCount; i++ )
{
String sPth(m_aPath.GetToken(i, SVT_SEARCHPATH_DELIMITER));
sPth = URIHelper::SmartRel2Abs(
@@ -490,7 +474,7 @@ void SwGlossaries::UpdateGlosPath(sal_Bool bFull)
m_sErrPath += String(aTemp.GetFull());
}
else
- m_pPathArr->Insert(new String(sPth), m_pPathArr->Count());
+ m_aPathArr.push_back(new String(sPth));
}
aDirArr.DeleteAndDestroy(0, aDirArr.Count());
@@ -510,7 +494,7 @@ void SwGlossaries::UpdateGlosPath(sal_Bool bFull)
if(m_pGlosArr)
{
- for(i = 0; i < m_pGlosArr->Count(); ++i)
+ for(sal_uInt16 i = 0; i < m_pGlosArr->Count(); ++i)
{
delete (String *)(*m_pGlosArr)[i];
}
diff --git a/sw/source/ui/misc/glossary.cxx b/sw/source/ui/misc/glossary.cxx
index fe61a0b..66c5bea 100644
--- a/sw/source/ui/misc/glossary.cxx
+++ b/sw/source/ui/misc/glossary.cxx
@@ -32,7 +32,6 @@
#endif
#define _SVSTDARR_STRINGSDTOR
-#define _SVSTDARR_STRINGS
#include <hintids.hxx>
#include <vcl/menu.hxx>
@@ -941,8 +940,8 @@ void SwGlTreeListBox::RequestHelp( const HelpEvent& rHEvt )
if(!GetParent(pEntry))
{
GroupUserData* pData = (GroupUserData*)pEntry->GetUserData();
- const SvStrings* pPathArr = ::GetGlossaries()->GetPathArray();
- if(pPathArr->Count())
+ const std::vector<String*>* pPathArr = ::GetGlossaries()->GetPathArray();
+ if( !pPathArr->empty() )
{
sMsg = (*(*pPathArr)[pData->nPathIdx]);
sMsg += INET_PATH_TOKEN;
diff --git a/sw/source/ui/utlui/gloslst.cxx b/sw/source/ui/utlui/gloslst.cxx
index 1d1720f..860b5d1 100644
--- a/sw/source/ui/utlui/gloslst.cxx
+++ b/sw/source/ui/utlui/gloslst.cxx
@@ -291,7 +291,7 @@ void SwGlossaryList::Update()
ClearGroups();
}
SwGlossaries* pGlossaries = ::GetGlossaries();
- const SvStrings* pPathArr = pGlossaries->GetPathArray();
+ const std::vector<String*>* pPathArr = pGlossaries->GetPathArray();
String sExt( SwGlossaries::GetExtension() );
if(!bFilled)
{
@@ -300,7 +300,7 @@ void SwGlossaryList::Update()
{
String sGrpName = pGlossaries->GetGroupName(i);
sal_uInt16 nPath = (sal_uInt16)sGrpName.GetToken(1, GLOS_DELIM).ToInt32();
- if(nPath < pPathArr->Count())
+ if( static_cast<size_t>(nPath) < pPathArr->size() )
{
AutoTextGroup* pGroup = new AutoTextGroup;
pGroup->sName = sGrpName;
@@ -322,7 +322,7 @@ void SwGlossaryList::Update()
}
else
{
- for(sal_uInt16 nPath = 0; nPath < pPathArr->Count(); nPath++)
+ for( size_t nPath = 0; nPath < pPathArr->size(); nPath++ )
{
SvStringsDtor aFoundGroupNames;
SvStrings aFiles( 16, 16 );
@@ -341,7 +341,7 @@ void SwGlossaryList::Update()
aFoundGroupNames.Insert( new String(sName),
aFoundGroupNames.Count());
sName += GLOS_DELIM;
- sName += String::CreateFromInt32( nPath );
+ sName += String::CreateFromInt32( static_cast<sal_uInt16>(nPath) );
AutoTextGroup* pFound = FindGroup( sName );
if( !pFound )
{
@@ -372,7 +372,7 @@ void SwGlossaryList::Update()
GLOS_DELIM).ToInt32();
// nur die Gruppen werden geprueft, die fuer den
// aktuellen Teilpfad registriert sind
- if(nGroupPath == nPath)
+ if( nGroupPath == static_cast<sal_uInt16>(nPath) )
{
sal_Bool bFound = sal_False;
String sCompareGroup = pGroup->sName.GetToken(0, GLOS_DELIM);
commit d8f2a82f6905178f1f594b22a0d5427b29c8eb33
Author: Brad Sowden <code at sowden.org>
Date: Tue Dec 27 19:19:51 2011 +1300
fdo#38831 Convert some SvStrings to std::vector
diff --git a/sw/source/ui/inc/glosbib.hxx b/sw/source/ui/inc/glosbib.hxx
index c886ad6..a7f9c49 100644
--- a/sw/source/ui/inc/glosbib.hxx
+++ b/sw/source/ui/inc/glosbib.hxx
@@ -38,6 +38,8 @@
#include <vcl/button.hxx>
#include <vcl/fixed.hxx>
+#include <vector>
+
class SwGlossaryHdl;
class SvStrings;
@@ -82,9 +84,9 @@ class SwGlossaryGroupDlg : public SvxStandardDialog
PushButton aDelPB;
PushButton aRenamePB;
- SvStrings* pRemovedArr;
- SvStrings* pInsertedArr;
- SvStrings* pRenamedArr;
+ std::vector<String*> *pRemovedArr;
+ std::vector<String*> *pInsertedArr;
+ std::vector<String*> *pRenamedArr;
SwGlossaryHdl *pGlosHdl;
diff --git a/sw/source/ui/misc/glosbib.cxx b/sw/source/ui/misc/glosbib.cxx
index c3967b3..18f10d2 100644
--- a/sw/source/ui/misc/glosbib.cxx
+++ b/sw/source/ui/misc/glosbib.cxx
@@ -30,8 +30,6 @@
#undef SW_DLLIMPLEMENTATION
#endif
-
-
#define _SVSTDARR_STRINGS
#include <tools/urlobj.hxx>
#include <tools/stream.hxx>
@@ -146,17 +144,20 @@ SwGlossaryGroupDlg::~SwGlossaryGroupDlg()
if(pInsertedArr)
{
- pInsertedArr->DeleteAndDestroy(0, pInsertedArr->Count());
+ for(std::vector<String*>::const_iterator it(pInsertedArr->begin()); it != pInsertedArr->end(); ++it)
+ delete *it;
delete pInsertedArr;
}
if(pRemovedArr)
{
- pRemovedArr->DeleteAndDestroy(0, pRemovedArr->Count());
+ for(std::vector<String*>::const_iterator it(pRemovedArr->begin()); it != pRemovedArr->end(); ++it)
+ delete *it;
delete pRemovedArr;
}
if(pRenamedArr)
{
- pRenamedArr->DeleteAndDestroy(0, pRenamedArr->Count());
+ for(std::vector<String*>::const_iterator it(pRenamedArr->begin()); it != pRenamedArr->end(); ++it)
+ delete *it;
delete pRenamedArr;
}
@@ -169,13 +170,11 @@ void SwGlossaryGroupDlg::Apply()
String aActGroup = SwGlossaryDlg::GetCurrGroup();
- if(pRemovedArr && pRemovedArr->Count())
+ if(pRemovedArr)
{
- sal_uInt16 nCount = pRemovedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::const_iterator it(pRemovedArr->begin()); it != pRemovedArr->end(); ++it)
{
- const String* pDelEntry = (*pRemovedArr)[i];
- const String sDelGroup = pDelEntry->GetToken(0, '\t');
+ const String sDelGroup = (*it)->GetToken(0, '\t');
if( sDelGroup == aActGroup )
{
//when the current group is deleted, the current group has to be relocated
@@ -187,7 +186,7 @@ void SwGlossaryGroupDlg::Apply()
}
}
String sMsg(SW_RES(STR_QUERY_DELETE_GROUP1));
- String sTitle(pDelEntry->GetToken(1, '\t'));
+ String sTitle( (*it)->GetToken(1, '\t') );
if(sTitle.Len())
sMsg += sTitle;
else
@@ -200,29 +199,26 @@ void SwGlossaryGroupDlg::Apply()
}
//don't rename before there was one
- if(pRenamedArr && pRenamedArr->Count())
+ if(pRenamedArr)
{
- sal_uInt16 nCount = pRenamedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::const_iterator it(pRenamedArr->begin()); it != pRenamedArr->end(); ++it)
{
- String * pEntry = (*pRenamedArr)[i];
xub_StrLen nStrSttPos = 0;
- String sOld( pEntry->GetToken(0, RENAME_TOKEN_DELIM, nStrSttPos ) );
- String sNew( pEntry->GetToken(0, RENAME_TOKEN_DELIM, nStrSttPos) );
- String sTitle( pEntry->GetToken(0, RENAME_TOKEN_DELIM, nStrSttPos) );
+ String sOld( (*it)->GetToken(0, RENAME_TOKEN_DELIM, nStrSttPos ) );
+ String sNew( (*it)->GetToken(0, RENAME_TOKEN_DELIM, nStrSttPos) );
+ String sTitle( (*it)->GetToken(0, RENAME_TOKEN_DELIM, nStrSttPos) );
pGlosHdl->RenameGroup(sOld, sNew, sTitle);
- if(!i)
+ if( it == pRenamedArr->begin() )
sCreatedGroup = sNew;
}
}
- if(pInsertedArr && pInsertedArr->Count())
+ if(pInsertedArr)
{
- sal_uInt16 nCount = pInsertedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::const_iterator it(pInsertedArr->begin()); it != pInsertedArr->end(); ++it)
{
- String sNewGroup = *(*pInsertedArr)[i];
+ String sNewGroup = **it;
String sNewTitle = sNewGroup.GetToken(0, GLOS_DELIM);
- if( *(*pInsertedArr)[i] != aActGroup )
+ if( sNewGroup != aActGroup )
{
pGlosHdl->NewGroup(sNewGroup, sNewTitle);
if(!sCreatedGroup.Len())
@@ -264,8 +260,8 @@ IMPL_LINK( SwGlossaryGroupDlg, NewHdl, Button*, EMPTYARG )
sGroup += String::CreateFromInt32(aPathLB.GetSelectEntryPos());
OSL_ENSURE(!pGlosHdl->FindGroupName(sGroup), "group already available!");
if(!pInsertedArr)
- pInsertedArr = new SvStrings;
- pInsertedArr->Insert(new String(sGroup), pInsertedArr->Count());
+ pInsertedArr = new std::vector<String*>;
+ pInsertedArr->push_back(new String(sGroup));
String sTemp(aNameED.GetText());
sTemp += '\t';
sTemp += aPathLB.GetSelectEntry();
@@ -294,15 +290,13 @@ IMPL_LINK( SwGlossaryGroupDlg, DeleteHdl, Button*, pButton )
String sEntry(pUserData->sGroupName);
// if the name to be deleted is among the new ones - get rid of it
sal_Bool bDelete = sal_True;
- if(pInsertedArr && pInsertedArr->Count())
+ if(pInsertedArr)
{
- sal_uInt16 nCount = pInsertedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::iterator it(pInsertedArr->begin()); it != pInsertedArr->end(); ++it)
{
- const String* pTemp = (*pInsertedArr)[i];
- if(*pTemp == sEntry)
+ if( **it == sEntry )
{
- pInsertedArr->Remove(i);
+ pInsertedArr->erase(it);
bDelete = sal_False;
break;
}
@@ -312,16 +306,13 @@ IMPL_LINK( SwGlossaryGroupDlg, DeleteHdl, Button*, pButton )
// it should probably be renamed?
if(bDelete)
{
- if(pRenamedArr && pRenamedArr->Count())
+ if(pRenamedArr)
{
- sal_uInt16 nCount = pRenamedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::iterator it(pRenamedArr->begin()); it != pRenamedArr->end(); ++it)
{
- const String* pTemp = (*pRenamedArr)[i];
- String sTemp( pTemp->GetToken(0, RENAME_TOKEN_DELIM ));
- if(sTemp == sEntry)
+ if( (*it)->GetToken(0, RENAME_TOKEN_DELIM) == sEntry )
{
- pRenamedArr->Remove(i);
+ pRenamedArr->erase(it);
bDelete = sal_False;
break;
}
@@ -331,11 +322,11 @@ IMPL_LINK( SwGlossaryGroupDlg, DeleteHdl, Button*, pButton )
if(bDelete)
{
if(!pRemovedArr)
- pRemovedArr = new SvStrings;
+ pRemovedArr = new std::vector<String*>;
String sGroupEntry(pUserData->sGroupName);
sGroupEntry += '\t';
sGroupEntry += pUserData->sGroupTitle;
- pRemovedArr->Insert(new String(sGroupEntry), pRemovedArr->Count());
+ pRemovedArr->push_back(new String(sGroupEntry));
}
delete pUserData;
aGroupTLB.GetModel()->Remove(pEntry);
@@ -362,16 +353,14 @@ IMPL_LINK( SwGlossaryGroupDlg, RenameHdl, Button *, EMPTYARG )
// if the name to be renamed is among the new ones - replace
sal_Bool bDone = sal_False;
- if(pInsertedArr && pInsertedArr->Count())
+ if(pInsertedArr)
{
- sal_uInt16 nCount = pInsertedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::iterator it(pInsertedArr->begin()); it != pInsertedArr->end(); ++it)
{
- const String* pTemp = (*pInsertedArr)[i];
- if(*pTemp == sEntry)
+ if( **it == sEntry )
{
- pInsertedArr->Remove(i);
- pInsertedArr->Insert(new String(sNewName), pInsertedArr->Count());
+ pInsertedArr->erase(it);
+ pInsertedArr->push_back(new String(sNewName));
bDone = sal_True;
break;
}
@@ -380,12 +369,12 @@ IMPL_LINK( SwGlossaryGroupDlg, RenameHdl, Button *, EMPTYARG )
if(!bDone)
{
if(!pRenamedArr)
- pRenamedArr = new SvStrings;
+ pRenamedArr = new std::vector<String*>;
sEntry += RENAME_TOKEN_DELIM;
sEntry += sNewName;
sEntry += RENAME_TOKEN_DELIM;
sEntry += sNewTitle;
- pRenamedArr->Insert(new String(sEntry), pRenamedArr->Count());
+ pRenamedArr->push_back(new String(sEntry));
}
delete (GlosBibUserData*)pEntry->GetUserData();
aGroupTLB.GetModel()->Remove(pEntry);
@@ -467,13 +456,11 @@ sal_Bool SwGlossaryGroupDlg::IsDeleteAllowed(const String &rGroup)
// as well! Because for non existing region names ReadOnly issues
// sal_True.
- if(pInsertedArr && pInsertedArr->Count())
+ if(pInsertedArr)
{
- sal_uInt16 nCount = pInsertedArr->Count();
- for(sal_uInt16 i = 0; i < nCount; ++i)
+ for(std::vector<String*>::const_iterator it(pInsertedArr->begin()); it != pInsertedArr->end(); ++it)
{
- const String* pTemp = (*pInsertedArr)[i];
- if(*pTemp == rGroup)
+ if( **it == rGroup )
{
bDel = sal_True;
break;
More information about the Libreoffice-commits
mailing list