[Libreoffice-commits] .: 4 commits - sc/inc sc/source
Kohei Yoshida
kohei at kemper.freedesktop.org
Tue May 10 13:00:45 PDT 2011
sc/inc/dbcolect.hxx | 219 +++++++++-----------
sc/inc/global.hxx | 24 +-
sc/source/core/data/global2.cxx | 4
sc/source/core/tool/dbcolect.cxx | 404 ++++++++++++++-----------------------
sc/source/core/tool/queryparam.cxx | 2
sc/source/ui/dbgui/dbnamdlg.cxx | 28 +-
sc/source/ui/dbgui/foptmgr.cxx | 2
sc/source/ui/dbgui/pfiltdlg.cxx | 14 -
sc/source/ui/dbgui/tpsort.cxx | 2
sc/source/ui/docshell/dbdocfun.cxx | 8
sc/source/ui/docshell/dbdocimp.cxx | 10
sc/source/ui/docshell/docsh5.cxx | 2
sc/source/ui/navipi/content.cxx | 2
sc/source/ui/undo/undoutil.cxx | 9
sc/source/ui/unoobj/datauno.cxx | 24 +-
sc/source/ui/unoobj/dispuno.cxx | 4
sc/source/ui/view/cellsh2.cxx | 2
17 files changed, 328 insertions(+), 432 deletions(-)
New commits:
commit e960fe88dd29980dcd902c5d2464c93fc5f6254e
Author: Kohei Yoshida <kyoshida at novell.com>
Date: Tue May 10 15:50:44 2011 -0400
More cleanups of ScDBData.
String to rtl::OUString, tabs to whitespaces etc.
diff --git a/sc/inc/dbcolect.hxx b/sc/inc/dbcolect.hxx
index 23d2ea3..1c1bcc9 100644
--- a/sc/inc/dbcolect.hxx
+++ b/sc/inc/dbcolect.hxx
@@ -31,8 +31,8 @@
#include "scdllapi.h"
#include "collect.hxx"
-#include "global.hxx" // MAXQUERY
-#include "sortparam.hxx" // MAXSORT
+#include "global.hxx" // MAXQUERY
+#include "sortparam.hxx" // MAXSORT
#include "refreshtimer.hxx"
#include "address.hxx"
#include "scdllapi.h"
@@ -48,119 +48,118 @@ class ScDBData : public ScDataObject, public ScRefreshTimer
{
private:
// DBParam
- String aName;
- SCTAB nTable;
- SCCOL nStartCol;
- SCROW nStartRow;
- SCCOL nEndCol;
- SCROW nEndRow;
- bool bByRow;
- bool bHasHeader;
- bool bDoSize;
- bool bKeepFmt;
- bool bStripData;
+ ::rtl::OUString aName;
+ SCTAB nTable;
+ SCCOL nStartCol;
+ SCROW nStartRow;
+ SCCOL nEndCol;
+ SCROW nEndRow;
+ bool bByRow;
+ bool bHasHeader;
+ bool bDoSize;
+ bool bKeepFmt;
+ bool bStripData;
// SortParam
- bool bSortCaseSens;
- bool bSortNaturalSort;
- bool bIncludePattern;
- bool bSortInplace;
- bool bSortUserDef;
- sal_uInt16 nSortUserIndex;
- SCTAB nSortDestTab;
- SCCOL nSortDestCol;
- SCROW nSortDestRow;
- bool bDoSort[MAXSORT];
- SCCOLROW nSortField[MAXSORT];
- bool bAscending[MAXSORT];
+ bool bSortCaseSens;
+ bool bSortNaturalSort;
+ bool bIncludePattern;
+ bool bSortInplace;
+ bool bSortUserDef;
+ sal_uInt16 nSortUserIndex;
+ SCTAB nSortDestTab;
+ SCCOL nSortDestCol;
+ SCROW nSortDestRow;
+ bool bDoSort[MAXSORT];
+ SCCOLROW nSortField[MAXSORT];
+ bool bAscending[MAXSORT];
::com::sun::star::lang::Locale aSortLocale;
- String aSortAlgorithm;
+ ::rtl::OUString aSortAlgorithm;
// QueryParam
- bool bIsAdvanced; // true if created by advanced filter
- ScRange aAdvSource; // source range
+ bool bIsAdvanced; // true if created by advanced filter
+ ScRange aAdvSource; // source range
ScQueryParam maQueryParam;
ScSubTotalParam maSubTotal;
ScImportParam maImportParam;
- bool bDBSelection; // not in Param: if selection, block update
+ bool bDBSelection; // not in Param: if selection, block update
- sal_uInt16 nIndex; // unique index formulas
- bool bAutoFilter; // AutoFilter? (not saved)
- bool bModified; // is set/cleared for/by(?) UpdateReference
+ sal_uInt16 nIndex; // unique index formulas
+ bool bAutoFilter; // AutoFilter? (not saved)
+ bool bModified; // is set/cleared for/by(?) UpdateReference
using ScRefreshTimer::operator==;
public:
- SC_DLLPUBLIC ScDBData(const String& rName,
+ SC_DLLPUBLIC ScDBData(const ::rtl::OUString& rName,
SCTAB nTab,
SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
- bool bByR = sal_True, bool bHasH = sal_True);
+ bool bByR = true, bool bHasH = true);
ScDBData(const ScDBData& rData);
~ScDBData();
- virtual ScDataObject* Clone() const;
+ virtual ScDataObject* Clone() const;
- ScDBData& operator= (const ScDBData& rData);
+ ScDBData& operator= (const ScDBData& rData);
- bool operator== (const ScDBData& rData) const;
+ bool operator== (const ScDBData& rData) const;
SCTAB GetTable() const;
- const String& GetName() const { return aName; }
- void GetName(String& rName) const { rName = aName; }
- void SetName(const String& rName) { aName = rName; }
- void GetArea(SCTAB& rTab, SCCOL& rCol1, SCROW& rRow1, SCCOL& rCol2, SCROW& rRow2) const;
+ const ::rtl::OUString& GetName() const { return aName; }
+ void SetName(const ::rtl::OUString& rName) { aName = rName; }
+ void GetArea(SCTAB& rTab, SCCOL& rCol1, SCROW& rRow1, SCCOL& rCol2, SCROW& rRow2) const;
SC_DLLPUBLIC void GetArea(ScRange& rRange) const;
- void SetArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2);
- void MoveTo(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2);
- bool IsByRow() const { return bByRow; }
- void SetByRow(bool bByR) { bByRow = bByR; }
- bool HasHeader() const { return bHasHeader; }
- void SetHeader(bool bHasH) { bHasHeader = bHasH; }
+ void SetArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2);
+ void MoveTo(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2);
+ bool IsByRow() const { return bByRow; }
+ void SetByRow(bool bByR) { bByRow = bByR; }
+ bool HasHeader() const { return bHasHeader; }
+ void SetHeader(bool bHasH) { bHasHeader = bHasH; }
void SetIndex(sal_uInt16 nInd) { nIndex = nInd; }
sal_uInt16 GetIndex() const { return nIndex; }
- bool IsDoSize() const { return bDoSize; }
- void SetDoSize(bool bSet) { bDoSize = bSet; }
- bool IsKeepFmt() const { return bKeepFmt; }
- void SetKeepFmt(bool bSet) { bKeepFmt = bSet; }
- bool IsStripData() const { return bStripData; }
- void SetStripData(bool bSet) { bStripData = bSet; }
+ bool IsDoSize() const { return bDoSize; }
+ void SetDoSize(bool bSet) { bDoSize = bSet; }
+ bool IsKeepFmt() const { return bKeepFmt; }
+ void SetKeepFmt(bool bSet) { bKeepFmt = bSet; }
+ bool IsStripData() const { return bStripData; }
+ void SetStripData(bool bSet) { bStripData = bSet; }
::rtl::OUString GetSourceString() const;
::rtl::OUString GetOperations() const;
- void GetSortParam(ScSortParam& rSortParam) const;
- void SetSortParam(const ScSortParam& rSortParam);
+ void GetSortParam(ScSortParam& rSortParam) const;
+ void SetSortParam(const ScSortParam& rSortParam);
- SC_DLLPUBLIC void GetQueryParam(ScQueryParam& rQueryParam) const;
- SC_DLLPUBLIC void SetQueryParam(const ScQueryParam& rQueryParam);
- SC_DLLPUBLIC bool GetAdvancedQuerySource(ScRange& rSource) const;
- SC_DLLPUBLIC void SetAdvancedQuerySource(const ScRange* pSource);
+ SC_DLLPUBLIC void GetQueryParam(ScQueryParam& rQueryParam) const;
+ SC_DLLPUBLIC void SetQueryParam(const ScQueryParam& rQueryParam);
+ SC_DLLPUBLIC bool GetAdvancedQuerySource(ScRange& rSource) const;
+ SC_DLLPUBLIC void SetAdvancedQuerySource(const ScRange* pSource);
- void GetSubTotalParam(ScSubTotalParam& rSubTotalParam) const;
- void SetSubTotalParam(const ScSubTotalParam& rSubTotalParam);
+ void GetSubTotalParam(ScSubTotalParam& rSubTotalParam) const;
+ void SetSubTotalParam(const ScSubTotalParam& rSubTotalParam);
- void GetImportParam(ScImportParam& rImportParam) const;
- void SetImportParam(const ScImportParam& rImportParam);
+ void GetImportParam(ScImportParam& rImportParam) const;
+ void SetImportParam(const ScImportParam& rImportParam);
- bool IsDBAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const;
- bool IsDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2) const;
+ bool IsDBAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const;
+ bool IsDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2) const;
- bool HasImportParam() const { return maImportParam.bImport; }
- bool HasQueryParam() const;
- bool HasSortParam() const { return bDoSort[0]; }
- bool HasSubTotalParam() const { return maSubTotal.bGroupActive[0]; }
+ bool HasImportParam() const { return maImportParam.bImport; }
+ SC_DLLPUBLIC bool HasQueryParam() const;
+ bool HasSortParam() const { return bDoSort[0]; }
+ bool HasSubTotalParam() const { return maSubTotal.bGroupActive[0]; }
- bool HasImportSelection() const { return bDBSelection; }
- void SetImportSelection(bool bSet) { bDBSelection = bSet; }
+ bool HasImportSelection() const { return bDBSelection; }
+ void SetImportSelection(bool bSet) { bDBSelection = bSet; }
- bool HasAutoFilter() const { return bAutoFilter; }
- void SetAutoFilter(bool bSet) { bAutoFilter = bSet; }
+ bool HasAutoFilter() const { return bAutoFilter; }
+ void SetAutoFilter(bool bSet) { bAutoFilter = bSet; }
- bool IsModified() const { return bModified; }
- void SetModified(bool bMod) { bModified = bMod; }
+ bool IsModified() const { return bModified; }
+ void SetModified(bool bMod) { bModified = bMod; }
- void UpdateMoveTab( SCTAB nOldPos, SCTAB nNewPos );
- void UpdateReference(ScDocument* pDoc, UpdateRefMode eUpdateRefMode,
+ void UpdateMoveTab( SCTAB nOldPos, SCTAB nNewPos );
+ void UpdateReference(ScDocument* pDoc, UpdateRefMode eUpdateRefMode,
SCCOL nCol1, SCROW nRow1, SCTAB nTab1,
SCCOL nCol2, SCROW nRow2, SCTAB nTab2,
SCsCOL nDx, SCsROW nDy, SCsTAB nDz);
@@ -177,46 +176,46 @@ public:
typedef DBRangesType AnonDBsType;
private:
- Link aRefreshHandler;
+ Link aRefreshHandler;
ScDocument* pDoc;
- sal_uInt16 nEntryIndex; // counter for unique indices
+ sal_uInt16 nEntryIndex; // counter for unique indices
AnonDBsType maAnonDBs;
public:
ScDBCollection(sal_uInt16 nLim = 4, sal_uInt16 nDel = 4, sal_Bool bDup = false, ScDocument* pDocument = NULL) :
- ScSortedCollection ( nLim, nDel, bDup ),
- pDoc ( pDocument ),
- nEntryIndex ( SC_START_INDEX_DB_COLL ) // see above for the names
+ ScSortedCollection ( nLim, nDel, bDup ),
+ pDoc ( pDocument ),
+ nEntryIndex ( SC_START_INDEX_DB_COLL ) // see above for the names
{}
ScDBCollection(const ScDBCollection& r);
- virtual ScDataObject* Clone() const { return new ScDBCollection(*this); }
- ScDBData* operator[]( const sal_uInt16 nIndex) const {return (ScDBData*)At(nIndex);}
- virtual short Compare(ScDataObject* pKey1, ScDataObject* pKey2) const;
- virtual sal_Bool IsEqual(ScDataObject* pKey1, ScDataObject* pKey2) const;
- ScDBData* GetDBAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, sal_Bool bStartOnly) const;
- ScDBData* GetDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2) const;
+ virtual ScDataObject* Clone() const { return new ScDBCollection(*this); }
+ ScDBData* operator[]( const sal_uInt16 nIndex) const {return (ScDBData*)At(nIndex);}
+ virtual short Compare(ScDataObject* pKey1, ScDataObject* pKey2) const;
+ virtual sal_Bool IsEqual(ScDataObject* pKey1, ScDataObject* pKey2) const;
+ ScDBData* GetDBAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, sal_Bool bStartOnly) const;
+ ScDBData* GetDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2) const;
ScDBData* GetFilterDBAtTable(SCTAB nTab) const;
ScDBData* GetDBNearCursor(SCCOL nCol, SCROW nRow, SCTAB nTab );
- sal_Bool SearchName( const String& rName, sal_uInt16& rIndex ) const;
+ sal_Bool SearchName( const String& rName, sal_uInt16& rIndex ) const;
void DeleteOnTab( SCTAB nTab );
- void UpdateReference(UpdateRefMode eUpdateRefMode,
+ void UpdateReference(UpdateRefMode eUpdateRefMode,
SCCOL nCol1, SCROW nRow1, SCTAB nTab1,
SCCOL nCol2, SCROW nRow2, SCTAB nTab2,
SCsCOL nDx, SCsROW nDy, SCsTAB nDz);
- void UpdateMoveTab( SCTAB nOldPos, SCTAB nNewPos );
+ void UpdateMoveTab( SCTAB nOldPos, SCTAB nNewPos );
ScDBData* FindIndex(sal_uInt16 nIndex);
- sal_uInt16 GetEntryIndex() { return nEntryIndex; }
- void SetEntryIndex(sal_uInt16 nInd) { nEntryIndex = nInd; }
+ sal_uInt16 GetEntryIndex() { return nEntryIndex; }
+ void SetEntryIndex(sal_uInt16 nInd) { nEntryIndex = nInd; }
virtual sal_Bool Insert(ScDataObject* pScDataObject);
- void SetRefreshHandler( const Link& rLink )
+ void SetRefreshHandler( const Link& rLink )
{ aRefreshHandler = rLink; }
- const Link& GetRefreshHandler() const { return aRefreshHandler; }
+ const Link& GetRefreshHandler() const { return aRefreshHandler; }
const ScDBData* findAnonAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const;
const ScDBData* findAnonByRange(const ScRange& rRange) const;
diff --git a/sc/source/core/tool/dbcolect.cxx b/sc/source/core/tool/dbcolect.cxx
index 8fb9c1f..176e0d4 100644
--- a/sc/source/core/tool/dbcolect.cxx
+++ b/sc/source/core/tool/dbcolect.cxx
@@ -52,26 +52,26 @@ using ::std::remove_if;
//---------------------------------------------------------------------------------------
-ScDBData::ScDBData( const String& rName,
+ScDBData::ScDBData( const ::rtl::OUString& rName,
SCTAB nTab,
SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
bool bByR, bool bHasH) :
- aName (rName),
- nTable (nTab),
- nStartCol (nCol1),
- nStartRow (nRow1),
- nEndCol (nCol2),
- nEndRow (nRow2),
- bByRow (bByR),
- bHasHeader (bHasH),
- bDoSize (false),
- bKeepFmt (false),
- bStripData (false),
- bIsAdvanced (false),
+ aName (rName),
+ nTable (nTab),
+ nStartCol (nCol1),
+ nStartRow (nRow1),
+ nEndCol (nCol2),
+ nEndRow (nRow2),
+ bByRow (bByR),
+ bHasHeader (bHasH),
+ bDoSize (false),
+ bKeepFmt (false),
+ bStripData (false),
+ bIsAdvanced (false),
bDBSelection(false),
- nIndex (0),
+ nIndex (0),
bAutoFilter (false),
- bModified (false)
+ bModified (false)
{
ScSortParam aSortParam;
ScQueryParam aQueryParam;
@@ -84,46 +84,46 @@ ScDBData::ScDBData( const String& rName,
ScDBData::ScDBData( const ScDBData& rData ) :
ScDataObject(),
- ScRefreshTimer ( rData ),
- aName (rData.aName),
- nTable (rData.nTable),
- nStartCol (rData.nStartCol),
- nStartRow (rData.nStartRow),
- nEndCol (rData.nEndCol),
- nEndRow (rData.nEndRow),
- bByRow (rData.bByRow),
- bHasHeader (rData.bHasHeader),
- bDoSize (rData.bDoSize),
- bKeepFmt (rData.bKeepFmt),
- bStripData (rData.bStripData),
- bSortCaseSens (rData.bSortCaseSens),
- bSortNaturalSort (rData.bSortNaturalSort),
- bIncludePattern (rData.bIncludePattern),
- bSortInplace (rData.bSortInplace),
- bSortUserDef (rData.bSortUserDef),
- nSortUserIndex (rData.nSortUserIndex),
- nSortDestTab (rData.nSortDestTab),
- nSortDestCol (rData.nSortDestCol),
- nSortDestRow (rData.nSortDestRow),
- aSortLocale (rData.aSortLocale),
- aSortAlgorithm (rData.aSortAlgorithm),
- bIsAdvanced (rData.bIsAdvanced),
- aAdvSource (rData.aAdvSource),
+ ScRefreshTimer ( rData ),
+ aName (rData.aName),
+ nTable (rData.nTable),
+ nStartCol (rData.nStartCol),
+ nStartRow (rData.nStartRow),
+ nEndCol (rData.nEndCol),
+ nEndRow (rData.nEndRow),
+ bByRow (rData.bByRow),
+ bHasHeader (rData.bHasHeader),
+ bDoSize (rData.bDoSize),
+ bKeepFmt (rData.bKeepFmt),
+ bStripData (rData.bStripData),
+ bSortCaseSens (rData.bSortCaseSens),
+ bSortNaturalSort (rData.bSortNaturalSort),
+ bIncludePattern (rData.bIncludePattern),
+ bSortInplace (rData.bSortInplace),
+ bSortUserDef (rData.bSortUserDef),
+ nSortUserIndex (rData.nSortUserIndex),
+ nSortDestTab (rData.nSortDestTab),
+ nSortDestCol (rData.nSortDestCol),
+ nSortDestRow (rData.nSortDestRow),
+ aSortLocale (rData.aSortLocale),
+ aSortAlgorithm (rData.aSortAlgorithm),
+ bIsAdvanced (rData.bIsAdvanced),
+ aAdvSource (rData.aAdvSource),
maQueryParam (rData.maQueryParam),
maSubTotal (rData.maSubTotal),
maImportParam (rData.maImportParam),
- bDBSelection (rData.bDBSelection),
- nIndex (rData.nIndex),
- bAutoFilter (rData.bAutoFilter),
- bModified (rData.bModified)
+ bDBSelection (rData.bDBSelection),
+ nIndex (rData.nIndex),
+ bAutoFilter (rData.bAutoFilter),
+ bModified (rData.bModified)
{
sal_uInt16 i;
for (i=0; i<MAXSORT; i++)
{
- bDoSort[i] = rData.bDoSort[i];
- nSortField[i] = rData.nSortField[i];
- bAscending[i] = rData.bAscending[i];
+ bDoSort[i] = rData.bDoSort[i];
+ nSortField[i] = rData.nSortField[i];
+ bAscending[i] = rData.bAscending[i];
}
}
@@ -132,42 +132,42 @@ ScDBData& ScDBData::operator= (const ScDBData& rData)
sal_uInt16 i;
ScRefreshTimer::operator=( rData );
- aName = rData.aName;
- nTable = rData.nTable;
- nStartCol = rData.nStartCol;
- nStartRow = rData.nStartRow;
- nEndCol = rData.nEndCol;
- nEndRow = rData.nEndRow;
- bByRow = rData.bByRow;
- bHasHeader = rData.bHasHeader;
- bDoSize = rData.bDoSize;
- bKeepFmt = rData.bKeepFmt;
- bStripData = rData.bStripData;
- bSortCaseSens = rData.bSortCaseSens;
- bSortNaturalSort = rData.bSortNaturalSort;
- bIncludePattern = rData.bIncludePattern;
- bSortInplace = rData.bSortInplace;
- nSortDestTab = rData.nSortDestTab;
- nSortDestCol = rData.nSortDestCol;
- nSortDestRow = rData.nSortDestRow;
- bSortUserDef = rData.bSortUserDef;
- nSortUserIndex = rData.nSortUserIndex;
- aSortLocale = rData.aSortLocale;
- aSortAlgorithm = rData.aSortAlgorithm;
- bIsAdvanced = rData.bIsAdvanced;
+ aName = rData.aName;
+ nTable = rData.nTable;
+ nStartCol = rData.nStartCol;
+ nStartRow = rData.nStartRow;
+ nEndCol = rData.nEndCol;
+ nEndRow = rData.nEndRow;
+ bByRow = rData.bByRow;
+ bHasHeader = rData.bHasHeader;
+ bDoSize = rData.bDoSize;
+ bKeepFmt = rData.bKeepFmt;
+ bStripData = rData.bStripData;
+ bSortCaseSens = rData.bSortCaseSens;
+ bSortNaturalSort = rData.bSortNaturalSort;
+ bIncludePattern = rData.bIncludePattern;
+ bSortInplace = rData.bSortInplace;
+ nSortDestTab = rData.nSortDestTab;
+ nSortDestCol = rData.nSortDestCol;
+ nSortDestRow = rData.nSortDestRow;
+ bSortUserDef = rData.bSortUserDef;
+ nSortUserIndex = rData.nSortUserIndex;
+ aSortLocale = rData.aSortLocale;
+ aSortAlgorithm = rData.aSortAlgorithm;
+ bIsAdvanced = rData.bIsAdvanced;
maQueryParam = rData.maQueryParam;
maSubTotal = rData.maSubTotal;
maImportParam = rData.maImportParam;
- aAdvSource = rData.aAdvSource;
- bDBSelection = rData.bDBSelection;
- nIndex = rData.nIndex;
+ aAdvSource = rData.aAdvSource;
+ bDBSelection = rData.bDBSelection;
+ nIndex = rData.nIndex;
bAutoFilter = rData.bAutoFilter;
for (i=0; i<MAXSORT; i++)
{
- bDoSort[i] = rData.bDoSort[i];
- nSortField[i] = rData.nSortField[i];
- bAscending[i] = rData.bAscending[i];
+ bDoSort[i] = rData.bDoSort[i];
+ nSortField[i] = rData.nSortField[i];
+ bAscending[i] = rData.bAscending[i];
}
return *this;
@@ -180,13 +180,13 @@ SCTAB ScDBData::GetTable() const
bool ScDBData::operator== (const ScDBData& rData) const
{
- // Daten, die nicht in den Params sind
+ // Daten, die nicht in den Params sind
- if ( nTable != rData.nTable ||
- bDoSize != rData.bDoSize ||
- bKeepFmt != rData.bKeepFmt ||
+ if ( nTable != rData.nTable ||
+ bDoSize != rData.bDoSize ||
+ bKeepFmt != rData.bKeepFmt ||
bIsAdvanced!= rData.bIsAdvanced||
- bStripData != rData.bStripData ||
+ bStripData != rData.bStripData ||
// SAB: I think this should be here, but I don't want to break something
// bAutoFilter!= rData.bAutoFilter||
ScRefreshTimer::operator!=( rData )
@@ -288,7 +288,7 @@ void ScDBData::GetArea(ScRange& rRange) const
void ScDBData::SetArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2)
{
- nTable = nTab;
+ nTable = nTab;
nStartCol = nCol1;
nStartRow = nRow1;
nEndCol = nCol2;
@@ -310,7 +310,7 @@ void ScDBData::MoveTo(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW n
if (nSortField[i] > nSortEnd)
{
nSortField[i] = 0;
- bDoSort[i] = false;
+ bDoSort[i] = false;
}
}
@@ -354,12 +354,12 @@ void ScDBData::GetSortParam( ScSortParam& rSortParam ) const
rSortParam.nDestCol = nSortDestCol;
rSortParam.nDestRow = nSortDestRow;
rSortParam.bIncludePattern = bIncludePattern;
- rSortParam.bUserDef = bSortUserDef;
+ rSortParam.bUserDef = bSortUserDef;
rSortParam.nUserIndex = nSortUserIndex;
for (sal_uInt16 i=0; i<MAXSORT; i++)
{
- rSortParam.bDoSort[i] = bDoSort[i];
- rSortParam.nField[i] = nSortField[i];
+ rSortParam.bDoSort[i] = bDoSort[i];
+ rSortParam.nField[i] = nSortField[i];
rSortParam.bAscending[i] = bAscending[i];
}
rSortParam.aCollatorLocale = aSortLocale;
@@ -379,7 +379,7 @@ void ScDBData::SetSortParam( const ScSortParam& rSortParam )
nSortUserIndex = rSortParam.nUserIndex;
for (sal_uInt16 i=0; i<MAXSORT; i++)
{
- bDoSort[i] = rSortParam.bDoSort[i];
+ bDoSort[i] = rSortParam.bDoSort[i];
nSortField[i] = rSortParam.nField[i];
bAscending[i] = rSortParam.bAscending[i];
}
@@ -410,8 +410,8 @@ void ScDBData::SetQueryParam(const ScQueryParam& rQueryParam)
maQueryParam = rQueryParam;
- // set bIsAdvanced to false for everything that is not from the
- // advanced filter dialog
+ // set bIsAdvanced to false for everything that is not from the
+ // advanced filter dialog
bIsAdvanced = false;
}
@@ -494,7 +494,7 @@ bool ScDBData::HasQueryParam() const
return maQueryParam.GetEntry(0).bDoQuery;
}
-ScDataObject* ScDBData::Clone() const
+ScDataObject* ScDBData::Clone() const
{
return new ScDBData(*this);
}
@@ -503,20 +503,20 @@ void ScDBData::UpdateMoveTab(SCTAB nOldPos, SCTAB nNewPos)
{
ScRange aRange;
GetArea( aRange );
- SCTAB nTab = aRange.aStart.Tab(); // hat nur eine Tabelle
+ SCTAB nTab = aRange.aStart.Tab(); // hat nur eine Tabelle
- // anpassen wie die aktuelle Tabelle bei ScTablesHint (tabvwsh5.cxx)
+ // anpassen wie die aktuelle Tabelle bei ScTablesHint (tabvwsh5.cxx)
- if ( nTab == nOldPos ) // verschobene Tabelle
+ if ( nTab == nOldPos ) // verschobene Tabelle
nTab = nNewPos;
- else if ( nOldPos < nNewPos ) // nach hinten verschoben
+ else if ( nOldPos < nNewPos ) // nach hinten verschoben
{
- if ( nTab > nOldPos && nTab <= nNewPos ) // nachrueckender Bereich
+ if ( nTab > nOldPos && nTab <= nNewPos ) // nachrueckender Bereich
--nTab;
}
- else // nach vorne verschoben
+ else // nach vorne verschoben
{
- if ( nTab >= nNewPos && nTab < nOldPos ) // nachrueckender Bereich
+ if ( nTab >= nNewPos && nTab < nOldPos ) // nachrueckender Bereich
++nTab;
}
@@ -525,7 +525,7 @@ void ScDBData::UpdateMoveTab(SCTAB nOldPos, SCTAB nNewPos)
SetArea( nTab, aRange.aStart.Col(), aRange.aStart.Row(),
aRange.aEnd.Col(),aRange.aEnd .Row() );
- // MoveTo ist nicht noetig, wenn nur die Tabelle geaendert ist
+ // MoveTo ist nicht noetig, wenn nur die Tabelle geaendert ist
SetModified(bChanged);
@@ -563,13 +563,13 @@ void ScDBData::UpdateReference(ScDocument* pDoc, UpdateRefMode eUpdateRefMode,
aRangeAdvSource.aEnd.Set( theCol2,theRow2,theTab2 );
SetAdvancedQuerySource( &aRangeAdvSource );
- bDoUpdate = true; // DBData is modified
+ bDoUpdate = true; // DBData is modified
}
}
SetModified(bDoUpdate);
- //! Testen, ob mitten aus dem Bereich geloescht/eingefuegt wurde !!!
+ //! Testen, ob mitten aus dem Bereich geloescht/eingefuegt wurde !!!
}
void ScDBData::ExtendDataArea(ScDocument* pDoc)
@@ -681,7 +681,7 @@ short ScDBCollection::Compare(ScDataObject* pKey1, ScDataObject* pKey2) const
return (short) ScGlobal::GetpTransliteration()->compareString( rStr1, rStr2 );
}
-// IsEqual - alles gleich
+// IsEqual - alles gleich
sal_Bool ScDBCollection::IsEqual(ScDataObject* pKey1, ScDataObject* pKey2) const
{
@@ -736,7 +736,7 @@ ScDBData* ScDBCollection::GetDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCO
if (pData)
return const_cast<ScDBData*>(pData);
- return NULL;
+ return NULL;
}
ScDBData* ScDBCollection::GetFilterDBAtTable(SCTAB nTab) const
@@ -821,7 +821,7 @@ void ScDBCollection::UpdateReference(UpdateRefMode eUpdateRefMode,
void ScDBCollection::UpdateMoveTab( SCTAB nOldPos, SCTAB nNewPos )
{
- // wenn nOldPos vor nNewPos liegt, ist nNewPos schon angepasst
+ // wenn nOldPos vor nNewPos liegt, ist nNewPos schon angepasst
for (sal_uInt16 i=0; i<nCount; i++)
{
@@ -849,7 +849,7 @@ ScDBData* ScDBCollection::FindIndex(sal_uInt16 nIndex)
sal_Bool ScDBCollection::Insert(ScDataObject* pScDataObject)
{
ScDBData* pData = (ScDBData*) pScDataObject;
- if (!pData->GetIndex()) // schon gesetzt?
+ if (!pData->GetIndex()) // schon gesetzt?
pData->SetIndex(nEntryIndex++);
sal_Bool bInserted = ScSortedCollection::Insert(pScDataObject);
if ( bInserted && pData->HasImportParam() && !pData->HasImportSelection() )
@@ -876,15 +876,15 @@ ScDBData* ScDBCollection::GetDBNearCursor(SCCOL nCol, SCROW nRow, SCTAB nTab )
if ( nCol < nStartCol || nCol > nEndCol || nRow < nStartRow || nRow > nEndRow )
{
if (!pNearData)
- pNearData = pDB; // ersten angrenzenden Bereich merken
+ pNearData = pDB; // ersten angrenzenden Bereich merken
}
else
- return pDB; // nicht "unbenannt" und Cursor steht wirklich drin
+ return pDB; // nicht "unbenannt" und Cursor steht wirklich drin
}
}
if (pNearData)
- return pNearData; // angrenzender, wenn nichts direkt getroffen
- return pDoc->GetAnonymousDBData(nTab); // "unbenannt" nur zurueck, wenn sonst nichts gefunden
+ return pNearData; // angrenzender, wenn nichts direkt getroffen
+ return pDoc->GetAnonymousDBData(nTab); // "unbenannt" nur zurueck, wenn sonst nichts gefunden
}
const ScDBData* ScDBCollection::findAnonAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const
diff --git a/sc/source/ui/dbgui/dbnamdlg.cxx b/sc/source/ui/dbgui/dbnamdlg.cxx
index 5e084c3..695b834 100644
--- a/sc/source/ui/dbgui/dbnamdlg.cxx
+++ b/sc/source/ui/dbgui/dbnamdlg.cxx
@@ -257,7 +257,7 @@ void ScDbNameDlg::Init()
pDBData = pDBColl->GetDBAtCursor( nStartCol, nStartRow, nStartTab, sal_True );
if ( pDBData )
{
- String theDbName;
+ ::rtl::OUString theDbName;
ScAddress& rStart = theCurArea.aStart;
ScAddress& rEnd = theCurArea.aEnd;
SCCOL nCol1;
@@ -272,8 +272,8 @@ void ScDbNameDlg::Init()
&& (rStart.Col() == nCol1) && (rStart.Row() == nRow1)
&& (rEnd.Col() == nCol2) && (rEnd.Row() == nRow2 ) )
{
- pDBData->GetName( theDbName );
- if ( theDbName != aStrNoName )
+ theDbName = pDBData->GetName();
+ if ( !theDbName.equals(aStrNoName) )
aEdName.SetText( theDbName );
else
aEdName.SetText( EMPTY_STRING );
@@ -297,21 +297,23 @@ void ScDbNameDlg::Init()
void ScDbNameDlg::SetInfoStrings( const ScDBData* pDBData )
{
- String aSource = aStrSource;
+ ::rtl::OUStringBuffer aBuf;
+ aBuf.append(aStrSource);
if (pDBData)
{
- aSource += ' ';
- aSource += pDBData->GetSourceString();
+ aBuf.append(sal_Unicode(' '));
+ aBuf.append(pDBData->GetSourceString());
}
- aFTSource.SetText( aSource );
+ aFTSource.SetText(aBuf.makeStringAndClear());
+ aBuf.append(aStrOperations);
String aOper = aStrOperations;
if (pDBData)
{
- aOper += ' ';
- aOper += pDBData->GetOperations();
+ aBuf.append(sal_Unicode(' '));
+ aBuf.append(pDBData->GetOperations());
}
- aFTOperations.SetText( aOper );
+ aFTOperations.SetText(aBuf.makeStringAndClear());
}
//----------------------------------------------------------------------------
@@ -377,15 +379,15 @@ void ScDbNameDlg::UpdateNames()
if ( nNameCount > 0 )
{
ScDBData* pDbData = NULL;
- String aString;
+ ::rtl::OUString aString;
for ( sal_uInt16 i=0; i<nNameCount; i++ )
{
pDbData = (ScDBData*)(aLocalDbCol.At( i ));
if ( pDbData )
{
- pDbData->GetName( aString );
- if ( aString != aStrNoName )
+ aString = pDbData->GetName();
+ if (!aString.equals(aStrNoName))
aEdName.InsertEntry( aString );
}
}
diff --git a/sc/source/ui/dbgui/foptmgr.cxx b/sc/source/ui/dbgui/foptmgr.cxx
index e55b34a..a6bc3f6 100644
--- a/sc/source/ui/dbgui/foptmgr.cxx
+++ b/sc/source/ui/dbgui/foptmgr.cxx
@@ -190,7 +190,7 @@ void ScFilterOptionsMgr::Init()
if ( pDBData )
{
rBtnHeader.Check( pDBData->HasHeader() );
- pDBData->GetName( theDbName );
+ theDbName = pDBData->GetName();
if ( theDbName != rStrNoName )
{
diff --git a/sc/source/ui/dbgui/pfiltdlg.cxx b/sc/source/ui/dbgui/pfiltdlg.cxx
index 9f59d42..b2e0cfe 100644
--- a/sc/source/ui/dbgui/pfiltdlg.cxx
+++ b/sc/source/ui/dbgui/pfiltdlg.cxx
@@ -174,8 +174,7 @@ void ScPivotFilterDlg::Init( const SfxItemSet& rArgSet )
theQueryData.nRow2,
nSrcTab ) );
ScDBCollection* pDBColl = pDoc->GetDBCollection();
- String theDbArea;
- String theDbName = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STR_DB_LOCAL_NONAME));
+ ::rtl::OUString theDbName = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STR_DB_LOCAL_NONAME));
/*
* Ueberpruefen, ob es sich bei dem uebergebenen
@@ -192,13 +191,14 @@ void ScPivotFilterDlg::Init( const SfxItemSet& rArgSet )
rStart.Col(), rStart.Row(),
rEnd.Col(), rEnd.Row() );
if ( pDBData )
- pDBData->GetName( theDbName );
+ theDbName = pDBData->GetName();
}
- theDbArea.AppendAscii(RTL_CONSTASCII_STRINGPARAM(" ("));
- theDbArea += theDbName;
- theDbArea += ')';
- aFtDbArea.SetText( theDbArea );
+ ::rtl::OUStringBuffer aBuf;
+ aBuf.appendAscii(" (");
+ aBuf.append(theDbName);
+ aBuf.append(sal_Unicode(')'));
+ aFtDbArea.SetText(aBuf.makeStringAndClear());
}
else
{
diff --git a/sc/source/ui/dbgui/tpsort.cxx b/sc/source/ui/dbgui/tpsort.cxx
index 8cc4a37..0ddd3b1 100644
--- a/sc/source/ui/dbgui/tpsort.cxx
+++ b/sc/source/ui/dbgui/tpsort.cxx
@@ -689,7 +689,7 @@ void ScTabPageSortOptions::Init()
rSortData.nCol2, rSortData.nRow2 );
if ( pDBData )
{
- pDBData->GetName( theDbName );
+ theDbName = pDBData->GetName();
aBtnHeader.Check( pDBData->HasHeader() );
}
}
diff --git a/sc/source/ui/docshell/dbdocfun.cxx b/sc/source/ui/docshell/dbdocfun.cxx
index 02d73f0..be8b2fc 100644
--- a/sc/source/ui/docshell/dbdocfun.cxx
+++ b/sc/source/ui/docshell/dbdocfun.cxx
@@ -1472,13 +1472,13 @@ void ScDBDocFunc::UpdateImport( const String& rTarget, const String& rDBName,
ScDBCollection& rDBColl = *pDoc->GetDBCollection();
ScDBData* pData = NULL;
ScImportParam aImportParam;
- sal_Bool bFound = false;
+ bool bFound = false;
sal_uInt16 nCount = rDBColl.GetCount();
for (sal_uInt16 i=0; i<nCount && !bFound; i++)
{
pData = rDBColl[i];
- if (pData->GetName() == rTarget)
- bFound = sal_True;
+ if (pData->GetName().equals(rTarget))
+ bFound = true;
}
if (!bFound)
{
diff --git a/sc/source/ui/docshell/docsh5.cxx b/sc/source/ui/docshell/docsh5.cxx
index a4b2527..3e7a4ee 100644
--- a/sc/source/ui/docshell/docsh5.cxx
+++ b/sc/source/ui/docshell/docsh5.cxx
@@ -489,7 +489,7 @@ String lcl_GetAreaName( ScDocument* pDoc, ScArea* pArea )
pArea->nColEnd, pArea->nRowEnd );
if (pData)
{
- pData->GetName( aName );
+ aName = pData->GetName();
bOk = sal_True;
}
diff --git a/sc/source/ui/navipi/content.cxx b/sc/source/ui/navipi/content.cxx
index 8fc3dca..dcd0aa9 100644
--- a/sc/source/ui/navipi/content.cxx
+++ b/sc/source/ui/navipi/content.cxx
@@ -272,7 +272,7 @@ String lcl_GetDBAreaRange( ScDocument* pDoc, const String& rDBName )
for ( sal_uInt16 i=0; i<nCount; i++ )
{
ScDBData* pData = (*pDbNames)[i];
- if ( pData->GetName() == rDBName )
+ if ( pData->GetName().equals(rDBName) )
{
ScRange aRange;
pData->GetArea(aRange);
diff --git a/sc/source/ui/undo/undoutil.cxx b/sc/source/ui/undo/undoutil.cxx
index 93d9c3f..1edbdc5 100644
--- a/sc/source/ui/undo/undoutil.cxx
+++ b/sc/source/ui/undo/undoutil.cxx
@@ -94,13 +94,12 @@ ScDBData* ScUndoUtil::GetOldDBData( ScDBData* pUndoData, ScDocument* pDoc, SCTAB
if (!pRet)
{
- sal_Bool bWasTemp = false;
+ bool bWasTemp = false;
if ( pUndoData )
{
- String aName;
- pUndoData->GetName( aName );
- if ( rtl::OUString(aName) == rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STR_DB_LOCAL_NONAME) ) )
- bWasTemp = sal_True;
+ const ::rtl::OUString& aName = pUndoData->GetName();
+ if (aName == rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STR_DB_LOCAL_NONAME)))
+ bWasTemp = true;
}
DBG_ASSERT(bWasTemp, "Undo: didn't find database range");
(void)bWasTemp;
diff --git a/sc/source/ui/unoobj/datauno.cxx b/sc/source/ui/unoobj/datauno.cxx
index a6212a3..0e7fcfa 100644
--- a/sc/source/ui/unoobj/datauno.cxx
+++ b/sc/source/ui/unoobj/datauno.cxx
@@ -2092,8 +2092,8 @@ uno::Any SAL_CALL ScDatabaseRangeObj::getPropertyValue( const rtl::OUString& aPr
else if ( aString.EqualsAscii( SC_UNONAME_ISUSER ) )
{
// all database ranges except "unnamed" are user defined
- ScUnoHelpFunctions::SetBoolInAny( aRet,
- ( pData->GetName() != String(RTL_CONSTASCII_USTRINGPARAM(STR_DB_LOCAL_NONAME)) ) );
+ ScUnoHelpFunctions::SetBoolInAny(
+ aRet, !pData->GetName().equalsAscii(STR_DB_LOCAL_NONAME));
}
else if ( aString.EqualsAscii( SC_UNO_LINKDISPBIT ) )
{
diff --git a/sc/source/ui/view/cellsh2.cxx b/sc/source/ui/view/cellsh2.cxx
index 3b88abb..64fc2a3 100644
--- a/sc/source/ui/view/cellsh2.cxx
+++ b/sc/source/ui/view/cellsh2.cxx
@@ -735,7 +735,7 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq )
if ( pDbData )
{
pDBName = new String;
- pDbData->GetName( *pDBName );
+ *pDBName = pDbData->GetName();
if ( *pDBName != aStrNoName )
aList.Insert( pDBName );
commit 357b6c357b656d177a82b195650d0a18b99f4662
Author: Kohei Yoshida <kyoshida at novell.com>
Date: Tue May 10 15:10:28 2011 -0400
Have ScDBData use ScQueryParam as data member.
diff --git a/sc/inc/dbcolect.hxx b/sc/inc/dbcolect.hxx
index 5e43d0b..23d2ea3 100644
--- a/sc/inc/dbcolect.hxx
+++ b/sc/inc/dbcolect.hxx
@@ -37,6 +37,7 @@
#include "address.hxx"
#include "scdllapi.h"
#include "subtotalparam.hxx"
+#include "queryparam.hxx"
#include <boost/ptr_container/ptr_vector.hpp>
#include <boost/scoped_ptr.hpp>
@@ -74,24 +75,10 @@ private:
::com::sun::star::lang::Locale aSortLocale;
String aSortAlgorithm;
// QueryParam
- bool bQueryInplace;
- bool bQueryCaseSens;
- bool bQueryRegExp;
- bool bQueryDuplicate;
- SCTAB nQueryDestTab;
- SCCOL nQueryDestCol;
- SCROW nQueryDestRow;
- bool bDoQuery[MAXQUERY];
- SCCOLROW nQueryField[MAXQUERY];
- ScQueryOp eQueryOp[MAXQUERY];
- bool bQueryByString[MAXQUERY];
- bool bQueryByDate[MAXQUERY];
- String* pQueryStr[MAXQUERY];
- double nQueryVal[MAXQUERY];
- ScQueryConnect eQueryConnect[MAXQUERY];
- bool bIsAdvanced; // sal_True if created by advanced filter
+ bool bIsAdvanced; // true if created by advanced filter
ScRange aAdvSource; // source range
+ ScQueryParam maQueryParam;
ScSubTotalParam maSubTotal;
ScImportParam maImportParam;
@@ -159,7 +146,7 @@ public:
bool IsDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2) const;
bool HasImportParam() const { return maImportParam.bImport; }
- bool HasQueryParam() const { return bDoQuery[0]; }
+ bool HasQueryParam() const;
bool HasSortParam() const { return bDoSort[0]; }
bool HasSubTotalParam() const { return maSubTotal.bGroupActive[0]; }
diff --git a/sc/source/core/tool/dbcolect.cxx b/sc/source/core/tool/dbcolect.cxx
index 67f4dfe..8fb9c1f 100644
--- a/sc/source/core/tool/dbcolect.cxx
+++ b/sc/source/core/tool/dbcolect.cxx
@@ -73,15 +73,10 @@ ScDBData::ScDBData( const String& rName,
bAutoFilter (false),
bModified (false)
{
- sal_uInt16 i;
-
ScSortParam aSortParam;
ScQueryParam aQueryParam;
ScImportParam aImportParam;
- for (i=0; i<MAXQUERY; i++)
- pQueryStr[i] = new String;
-
SetSortParam( aSortParam );
SetQueryParam( aQueryParam );
SetImportParam( aImportParam );
@@ -112,15 +107,9 @@ ScDBData::ScDBData( const ScDBData& rData ) :
nSortDestRow (rData.nSortDestRow),
aSortLocale (rData.aSortLocale),
aSortAlgorithm (rData.aSortAlgorithm),
- bQueryInplace (rData.bQueryInplace),
- bQueryCaseSens (rData.bQueryCaseSens),
- bQueryRegExp (rData.bQueryRegExp),
- bQueryDuplicate (rData.bQueryDuplicate),
- nQueryDestTab (rData.nQueryDestTab),
- nQueryDestCol (rData.nQueryDestCol),
- nQueryDestRow (rData.nQueryDestRow),
bIsAdvanced (rData.bIsAdvanced),
aAdvSource (rData.aAdvSource),
+ maQueryParam (rData.maQueryParam),
maSubTotal (rData.maSubTotal),
maImportParam (rData.maImportParam),
bDBSelection (rData.bDBSelection),
@@ -136,17 +125,6 @@ ScDBData::ScDBData( const ScDBData& rData ) :
nSortField[i] = rData.nSortField[i];
bAscending[i] = rData.bAscending[i];
}
- for (i=0; i<MAXQUERY; i++)
- {
- bDoQuery[i] = rData.bDoQuery[i];
- nQueryField[i] = rData.nQueryField[i];
- eQueryOp[i] = rData.eQueryOp[i];
- bQueryByString[i] = rData.bQueryByString[i];
- bQueryByDate[i] = rData.bQueryByDate[i];
- pQueryStr[i] = new String( *(rData.pQueryStr[i]) );
- nQueryVal[i] = rData.nQueryVal[i];
- eQueryConnect[i] = rData.eQueryConnect[i];
- }
}
ScDBData& ScDBData::operator= (const ScDBData& rData)
@@ -176,14 +154,8 @@ ScDBData& ScDBData::operator= (const ScDBData& rData)
nSortUserIndex = rData.nSortUserIndex;
aSortLocale = rData.aSortLocale;
aSortAlgorithm = rData.aSortAlgorithm;
- bQueryInplace = rData.bQueryInplace;
- bQueryCaseSens = rData.bQueryCaseSens;
- bQueryRegExp = rData.bQueryRegExp;
- bQueryDuplicate = rData.bQueryDuplicate;
- nQueryDestTab = rData.nQueryDestTab;
- nQueryDestCol = rData.nQueryDestCol;
- nQueryDestRow = rData.nQueryDestRow;
bIsAdvanced = rData.bIsAdvanced;
+ maQueryParam = rData.maQueryParam;
maSubTotal = rData.maSubTotal;
maImportParam = rData.maImportParam;
aAdvSource = rData.aAdvSource;
@@ -197,17 +169,6 @@ ScDBData& ScDBData::operator= (const ScDBData& rData)
nSortField[i] = rData.nSortField[i];
bAscending[i] = rData.bAscending[i];
}
- for (i=0; i<MAXQUERY; i++)
- {
- bDoQuery[i] = rData.bDoQuery[i];
- nQueryField[i] = rData.nQueryField[i];
- eQueryOp[i] = rData.eQueryOp[i];
- bQueryByString[i] = rData.bQueryByString[i];
- bQueryByDate[i] = rData.bQueryByDate[i];
- *pQueryStr[i] = *rData.pQueryStr[i];
- nQueryVal[i] = rData.nQueryVal[i];
- eQueryConnect[i] = rData.eQueryConnect[i];
- }
return *this;
}
@@ -265,10 +226,6 @@ bool ScDBData::operator== (const ScDBData& rData) const
ScDBData::~ScDBData()
{
StopRefreshTimer();
- sal_uInt16 i;
-
- for (i=0; i<MAXQUERY; i++)
- delete pQueryStr[i];
}
@@ -287,9 +244,12 @@ ScDBData::~ScDBData()
::rtl::OUString ScDBData::GetOperations() const
{
::rtl::OUStringBuffer aBuf;
- String aVal;
- if (bDoQuery[0])
- aBuf.append(ScGlobal::GetRscString(STR_OPERATION_FILTER));
+ if (maQueryParam.GetEntryCount())
+ {
+ const ScQueryEntry& rEntry = maQueryParam.GetEntry(0);
+ if (rEntry.bDoQuery)
+ aBuf.append(ScGlobal::GetRscString(STR_OPERATION_FILTER));
+ }
if (bDoSort[0])
{
@@ -353,13 +313,17 @@ void ScDBData::MoveTo(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW n
bDoSort[i] = false;
}
}
+
+ if (maQueryParam.GetEntryCount() < MAXQUERY)
+ maQueryParam.Resize(MAXQUERY);
for (i=0; i<MAXQUERY; i++)
{
- nQueryField[i] += nDifX;
- if (nQueryField[i] > nCol2)
+ ScQueryEntry& rEntry = maQueryParam.GetEntry(i);
+ rEntry.nField += nDifX;
+ if (rEntry.nField > nCol2)
{
- nQueryField[i] = 0;
- bDoQuery[i] = false;
+ rEntry.nField = 0;
+ rEntry.bDoQuery = false;
}
}
for (i=0; i<MAXSUBTOTAL; i++)
@@ -428,6 +392,7 @@ void ScDBData::SetSortParam( const ScSortParam& rSortParam )
void ScDBData::GetQueryParam( ScQueryParam& rQueryParam ) const
{
+ rQueryParam = maQueryParam;
rQueryParam.nCol1 = nStartCol;
rQueryParam.nRow1 = nStartRow;
rQueryParam.nCol2 = nEndCol;
@@ -435,28 +400,6 @@ void ScDBData::GetQueryParam( ScQueryParam& rQueryParam ) const
rQueryParam.nTab = nTable;
rQueryParam.bByRow = bByRow;
rQueryParam.bHasHeader = bHasHeader;
- rQueryParam.bInplace = bQueryInplace;
- rQueryParam.bCaseSens = bQueryCaseSens;
- rQueryParam.bRegExp = bQueryRegExp;
- rQueryParam.bDuplicate = bQueryDuplicate;
- rQueryParam.nDestTab = nQueryDestTab;
- rQueryParam.nDestCol = nQueryDestCol;
- rQueryParam.nDestRow = nQueryDestRow;
-
- rQueryParam.Resize( MAXQUERY );
- for (SCSIZE i=0; i<MAXQUERY; i++)
- {
- ScQueryEntry& rEntry = rQueryParam.GetEntry(i);
-
- rEntry.bDoQuery = bDoQuery[i];
- rEntry.nField = nQueryField[i];
- rEntry.eOp = eQueryOp[i];
- rEntry.bQueryByString = bQueryByString[i];
- rEntry.bQueryByDate = bQueryByDate[i];
- *rEntry.pStr = *pQueryStr[i];
- rEntry.nVal = nQueryVal[i];
- rEntry.eConnect = eQueryConnect[i];
- }
}
void ScDBData::SetQueryParam(const ScQueryParam& rQueryParam)
@@ -465,30 +408,11 @@ void ScDBData::SetQueryParam(const ScQueryParam& rQueryParam)
!rQueryParam.GetEntry(MAXQUERY).bDoQuery,
"zuviele Eintraege bei ScDBData::SetQueryParam" );
+ maQueryParam = rQueryParam;
+
// set bIsAdvanced to false for everything that is not from the
// advanced filter dialog
bIsAdvanced = false;
-
- bQueryInplace = rQueryParam.bInplace;
- bQueryCaseSens = rQueryParam.bCaseSens;
- bQueryRegExp = rQueryParam.bRegExp;
- bQueryDuplicate = rQueryParam.bDuplicate;
- nQueryDestTab = rQueryParam.nDestTab;
- nQueryDestCol = rQueryParam.nDestCol;
- nQueryDestRow = rQueryParam.nDestRow;
- for (SCSIZE i=0; i<MAXQUERY; i++)
- {
- ScQueryEntry& rEntry = rQueryParam.GetEntry(i);
-
- bDoQuery[i] = rEntry.bDoQuery;
- nQueryField[i] = rEntry.nField;
- eQueryOp[i] = rEntry.eOp;
- bQueryByString[i] = rEntry.bQueryByString;
- bQueryByDate[i] = rEntry.bQueryByDate;
- *pQueryStr[i] = *rEntry.pStr;
- nQueryVal[i] = rEntry.nVal;
- eQueryConnect[i] = rEntry.eConnect;
- }
}
void ScDBData::SetAdvancedQuerySource(const ScRange* pSource)
@@ -562,6 +486,14 @@ bool ScDBData::IsDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCR
&& (nCol2 == nEndCol) && (nRow2 == nEndRow));
}
+bool ScDBData::HasQueryParam() const
+{
+ if (!maQueryParam.GetEntryCount())
+ return false;
+
+ return maQueryParam.GetEntry(0).bDoQuery;
+}
+
ScDataObject* ScDBData::Clone() const
{
return new ScDBData(*this);
diff --git a/sc/source/core/tool/queryparam.cxx b/sc/source/core/tool/queryparam.cxx
index 0141f1c..7bb1741 100644
--- a/sc/source/core/tool/queryparam.cxx
+++ b/sc/source/core/tool/queryparam.cxx
@@ -73,7 +73,7 @@ ScQueryEntry& ScQueryParamBase::GetEntry(SCSIZE n) const
void ScQueryParamBase::Resize(SCSIZE nNew)
{
if ( nNew < MAXQUERY )
- nNew = MAXQUERY; // nie weniger als MAXQUERY
+ nNew = MAXQUERY; // never less than MAXQUERY
vector<ScQueryEntry> aNewEntries(nNew);
SCSIZE nCopy = ::std::min(maEntries.size(), nNew);
commit df1aceb1f3ed914a0b0af98fae73850fd628794b
Author: Kohei Yoshida <kyoshida at novell.com>
Date: Tue May 10 12:20:39 2011 -0400
Have ScDBData use ScImportParam & more String -> rtl::OUString.
diff --git a/sc/inc/dbcolect.hxx b/sc/inc/dbcolect.hxx
index 5c73ea2..5e43d0b 100644
--- a/sc/inc/dbcolect.hxx
+++ b/sc/inc/dbcolect.hxx
@@ -39,6 +39,7 @@
#include "subtotalparam.hxx"
#include <boost/ptr_container/ptr_vector.hpp>
+#include <boost/scoped_ptr.hpp>
class ScDocument;
@@ -92,15 +93,9 @@ private:
ScRange aAdvSource; // source range
ScSubTotalParam maSubTotal;
+ ScImportParam maImportParam;
- // data base import
- bool bDBImport;
- String aDBName;
- String aDBStatement;
- bool bDBNative;
bool bDBSelection; // not in Param: if selection, block update
- bool bDBSql; // aDBStatement is SQL not a name
- sal_uInt8 nDBType; // enum DBObject (up to now only dbTable, dbQuery)
sal_uInt16 nIndex; // unique index formulas
bool bAutoFilter; // AutoFilter? (not saved)
@@ -143,8 +138,8 @@ public:
bool IsStripData() const { return bStripData; }
void SetStripData(bool bSet) { bStripData = bSet; }
- String GetSourceString() const;
- String GetOperations() const;
+ ::rtl::OUString GetSourceString() const;
+ ::rtl::OUString GetOperations() const;
void GetSortParam(ScSortParam& rSortParam) const;
void SetSortParam(const ScSortParam& rSortParam);
@@ -163,7 +158,7 @@ public:
bool IsDBAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const;
bool IsDBAtArea(SCTAB nTab, SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2) const;
- bool HasImportParam() const { return bDBImport; }
+ bool HasImportParam() const { return maImportParam.bImport; }
bool HasQueryParam() const { return bDoQuery[0]; }
bool HasSortParam() const { return bDoSort[0]; }
bool HasSubTotalParam() const { return maSubTotal.bGroupActive[0]; }
diff --git a/sc/source/core/tool/dbcolect.cxx b/sc/source/core/tool/dbcolect.cxx
index dc53395..67f4dfe 100644
--- a/sc/source/core/tool/dbcolect.cxx
+++ b/sc/source/core/tool/dbcolect.cxx
@@ -122,13 +122,8 @@ ScDBData::ScDBData( const ScDBData& rData ) :
bIsAdvanced (rData.bIsAdvanced),
aAdvSource (rData.aAdvSource),
maSubTotal (rData.maSubTotal),
- bDBImport (rData.bDBImport),
- aDBName (rData.aDBName),
- aDBStatement (rData.aDBStatement),
- bDBNative (rData.bDBNative),
+ maImportParam (rData.maImportParam),
bDBSelection (rData.bDBSelection),
- bDBSql (rData.bDBSql),
- nDBType (rData.nDBType),
nIndex (rData.nIndex),
bAutoFilter (rData.bAutoFilter),
bModified (rData.bModified)
@@ -190,14 +185,9 @@ ScDBData& ScDBData::operator= (const ScDBData& rData)
nQueryDestRow = rData.nQueryDestRow;
bIsAdvanced = rData.bIsAdvanced;
maSubTotal = rData.maSubTotal;
+ maImportParam = rData.maImportParam;
aAdvSource = rData.aAdvSource;
- bDBImport = rData.bDBImport;
- aDBName = rData.aDBName;
- aDBStatement = rData.aDBStatement;
- bDBNative = rData.bDBNative;
bDBSelection = rData.bDBSelection;
- bDBSql = rData.bDBSql;
- nDBType = rData.nDBType;
nIndex = rData.nIndex;
bAutoFilter = rData.bAutoFilter;
@@ -282,42 +272,43 @@ ScDBData::~ScDBData()
}
-String ScDBData::GetSourceString() const
+::rtl::OUString ScDBData::GetSourceString() const
{
- String aVal;
- if (bDBImport)
+ ::rtl::OUStringBuffer aBuf;
+ if (maImportParam.bImport)
{
- aVal = aDBName;
- aVal += '/';
- aVal += aDBStatement;
+ aBuf.append(maImportParam.aDBName);
+ aBuf.append(sal_Unicode('/'));
+ aBuf.append(maImportParam.aStatement);
}
- return aVal;
+ return aBuf.makeStringAndClear();
}
-String ScDBData::GetOperations() const
+::rtl::OUString ScDBData::GetOperations() const
{
+ ::rtl::OUStringBuffer aBuf;
String aVal;
if (bDoQuery[0])
- aVal = ScGlobal::GetRscString(STR_OPERATION_FILTER);
+ aBuf.append(ScGlobal::GetRscString(STR_OPERATION_FILTER));
if (bDoSort[0])
{
- if (aVal.Len())
- aVal.AppendAscii( RTL_CONSTASCII_STRINGPARAM(", ") );
- aVal += ScGlobal::GetRscString(STR_OPERATION_SORT);
+ if (aBuf.getLength())
+ aBuf.appendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
+ aBuf.append(ScGlobal::GetRscString(STR_OPERATION_SORT));
}
if (maSubTotal.bGroupActive[0] && !maSubTotal.bRemoveOnly)
{
- if (aVal.Len())
- aVal.AppendAscii( RTL_CONSTASCII_STRINGPARAM(", ") );
- aVal += ScGlobal::GetRscString(STR_OPERATION_SUBTOTAL);
+ if (aBuf.getLength())
+ aBuf.appendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
+ aBuf.append(ScGlobal::GetRscString(STR_OPERATION_SUBTOTAL));
}
- if (!aVal.Len())
- aVal = ScGlobal::GetRscString(STR_OPERATION_NONE);
+ if (!aBuf.getLength())
+ aBuf.append(ScGlobal::GetRscString(STR_OPERATION_NONE));
- return aVal;
+ return aBuf.makeStringAndClear();
}
void ScDBData::GetArea(SCTAB& rTab, SCCOL& rCol1, SCROW& rRow1, SCCOL& rCol2, SCROW& rRow2) const
@@ -536,27 +527,18 @@ void ScDBData::SetSubTotalParam(const ScSubTotalParam& rSubTotalParam)
void ScDBData::GetImportParam(ScImportParam& rImportParam) const
{
+ rImportParam = maImportParam;
+ // set the range.
rImportParam.nCol1 = nStartCol;
rImportParam.nRow1 = nStartRow;
rImportParam.nCol2 = nEndCol;
rImportParam.nRow2 = nEndRow;
-
- rImportParam.bImport = bDBImport;
- rImportParam.aDBName = aDBName;
- rImportParam.aStatement = aDBStatement;
- rImportParam.bNative = bDBNative;
- rImportParam.bSql = bDBSql;
- rImportParam.nType = nDBType;
}
void ScDBData::SetImportParam(const ScImportParam& rImportParam)
{
- bDBImport = rImportParam.bImport;
- aDBName = rImportParam.aDBName;
- aDBStatement = rImportParam.aStatement;
- bDBNative = rImportParam.bNative;
- bDBSql = rImportParam.bSql;
- nDBType = rImportParam.nType;
+ // the range is ignored.
+ maImportParam = rImportParam;
}
bool ScDBData::IsDBAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const
commit a22981d9456626ccf3c4704e334141814a731e3b
Author: Kohei Yoshida <kyoshida at novell.com>
Date: Tue May 10 11:57:13 2011 -0400
Cleaned up ScImportParam.
diff --git a/sc/inc/global.hxx b/sc/inc/global.hxx
index 46f3a40..07d627a 100644
--- a/sc/inc/global.hxx
+++ b/sc/inc/global.hxx
@@ -418,23 +418,23 @@ enum ScDBObject
struct ScImportParam
{
- SCCOL nCol1;
- SCROW nRow1;
- SCCOL nCol2;
- SCROW nRow2;
- sal_Bool bImport;
- String aDBName; // alias of data base
- String aStatement;
- sal_Bool bNative;
- sal_Bool bSql; // statement or name?
- sal_uInt8 nType; // enum DBObject
+ SCCOL nCol1;
+ SCROW nRow1;
+ SCCOL nCol2;
+ SCROW nRow2;
+ bool bImport;
+ ::rtl::OUString aDBName; // alias of data base
+ ::rtl::OUString aStatement;
+ bool bNative;
+ bool bSql; // statement or name?
+ sal_uInt8 nType; // enum DBObject
ScImportParam();
ScImportParam( const ScImportParam& r );
~ScImportParam();
- ScImportParam& operator= ( const ScImportParam& r );
- sal_Bool operator== ( const ScImportParam& r ) const;
+ ScImportParam& operator= ( const ScImportParam& r );
+ bool operator== ( const ScImportParam& r ) const;
};
struct ScStringHashCode
diff --git a/sc/source/core/data/global2.cxx b/sc/source/core/data/global2.cxx
index 86f7efb..2b57d34 100644
--- a/sc/source/core/data/global2.cxx
+++ b/sc/source/core/data/global2.cxx
@@ -67,7 +67,7 @@ ScImportParam::ScImportParam() :
nRow2(0),
bImport(false),
bNative(false),
- bSql(sal_True),
+ bSql(true),
nType(ScDbTable)
{
}
@@ -106,7 +106,7 @@ ScImportParam& ScImportParam::operator=( const ScImportParam& r )
return *this;
}
-sal_Bool ScImportParam::operator==( const ScImportParam& rOther ) const
+bool ScImportParam::operator==( const ScImportParam& rOther ) const
{
return( nCol1 == rOther.nCol1 &&
nRow1 == rOther.nRow1 &&
diff --git a/sc/source/ui/docshell/dbdocfun.cxx b/sc/source/ui/docshell/dbdocfun.cxx
index 245de3b..02d73f0 100644
--- a/sc/source/ui/docshell/dbdocfun.cxx
+++ b/sc/source/ui/docshell/dbdocfun.cxx
@@ -1501,7 +1501,7 @@ void ScDBDocFunc::UpdateImport( const String& rTarget, const String& rDBName,
aImportParam.aStatement = bSql ? rStatement : rTableName;
aImportParam.bNative = bNative;
aImportParam.nType = nType;
- aImportParam.bImport = sal_True;
+ aImportParam.bImport = true;
sal_Bool bContinue = DoImport( nTab, aImportParam, xResultSet, pSelection, sal_True );
// DB-Operationen wiederholen
diff --git a/sc/source/ui/docshell/dbdocimp.cxx b/sc/source/ui/docshell/dbdocimp.cxx
index 2899859..1b37664 100644
--- a/sc/source/ui/docshell/dbdocimp.cxx
+++ b/sc/source/ui/docshell/dbdocimp.cxx
@@ -104,8 +104,8 @@ void ScDBDocFunc::ShowInBeamer( const ScImportParam& rParam, SfxViewFrame* pFram
sdb::CommandType::TABLE );
::svx::ODataAccessDescriptor aSelection;
- aSelection.setDataSource(rtl::OUString( rParam.aDBName ));
- aSelection[svx::daCommand] <<= rtl::OUString( rParam.aStatement );
+ aSelection.setDataSource(rParam.aDBName);
+ aSelection[svx::daCommand] <<= rParam.aStatement;
aSelection[svx::daCommandType] <<= nType;
xControllerSelection->select(uno::makeAny(aSelection.createPropertyValueSequence()));
@@ -127,7 +127,7 @@ sal_Bool ScDBDocFunc::DoImportUno( const ScAddress& rPos,
ScImportParam aImParam;
aImParam.nCol1 = aImParam.nCol2 = rPos.Col();
aImParam.nRow1 = aImParam.nRow2 = rPos.Row();
- aImParam.bImport = sal_True;
+ aImParam.bImport = true;
uno::Reference<sdbc::XResultSet> xResSet;
uno::Sequence<uno::Any> aSelection;
@@ -303,11 +303,11 @@ sal_Bool ScDBDocFunc::DoImport( SCTAB nTab, const ScImportParam& rParam,
sdb::CommandType::TABLE );
uno::Any aAny;
- aAny <<= rtl::OUString( rParam.aDBName );
+ aAny <<= rParam.aDBName;
xRowProp->setPropertyValue(
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(SC_DBPROP_DATASOURCENAME)), aAny );
- aAny <<= rtl::OUString( rParam.aStatement );
+ aAny <<= rParam.aStatement;
xRowProp->setPropertyValue(
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(SC_DBPROP_COMMAND)), aAny );
diff --git a/sc/source/ui/unoobj/datauno.cxx b/sc/source/ui/unoobj/datauno.cxx
index af898ba..a6212a3 100644
--- a/sc/source/ui/unoobj/datauno.cxx
+++ b/sc/source/ui/unoobj/datauno.cxx
@@ -232,19 +232,19 @@ void ScImportDescriptor::FillProperties( uno::Sequence<beans::PropertyValue>& rS
if (aDescriptor.has( svx::daDataSource ))
{
pArray[0].Name = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( SC_UNONAME_DBNAME ));
- pArray[0].Value <<= rtl::OUString( rParam.aDBName );
+ pArray[0].Value <<= rParam.aDBName;
}
else if (aDescriptor.has( svx::daConnectionResource ))
{
pArray[0].Name = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( SC_UNONAME_CONRES ));
- pArray[0].Value <<= rtl::OUString( rParam.aDBName );
+ pArray[0].Value <<= rParam.aDBName;
}
pArray[1].Name = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( SC_UNONAME_SRCTYPE ));
pArray[1].Value <<= eMode;
pArray[2].Name = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( SC_UNONAME_SRCOBJ ));
- pArray[2].Value <<= rtl::OUString( rParam.aStatement );
+ pArray[2].Value <<= rParam.aStatement;
pArray[3].Name = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( SC_UNONAME_ISNATIVE ));
ScUnoHelpFunctions::SetBoolInAny( pArray[3].Value, rParam.bNative );
@@ -265,17 +265,17 @@ void ScImportDescriptor::FillImportParam( ScImportParam& rParam, const uno::Sequ
else if (aPropName.EqualsAscii( SC_UNONAME_DBNAME ))
{
if ( rProp.Value >>= aStrVal )
- rParam.aDBName = String( aStrVal );
+ rParam.aDBName = aStrVal;
}
else if (aPropName.EqualsAscii( SC_UNONAME_CONRES ))
{
if ( rProp.Value >>= aStrVal )
- rParam.aDBName = String( aStrVal );
+ rParam.aDBName = aStrVal;
}
else if (aPropName.EqualsAscii( SC_UNONAME_SRCOBJ ))
{
if ( rProp.Value >>= aStrVal )
- rParam.aStatement = String( aStrVal );
+ rParam.aStatement = aStrVal;
}
else if (aPropName.EqualsAscii( SC_UNONAME_SRCTYPE ))
{
@@ -288,16 +288,16 @@ void ScImportDescriptor::FillImportParam( ScImportParam& rParam, const uno::Sequ
rParam.bImport = false;
break;
case sheet::DataImportMode_SQL:
- rParam.bImport = sal_True;
- rParam.bSql = sal_True;
+ rParam.bImport = true;
+ rParam.bSql = true;
break;
case sheet::DataImportMode_TABLE:
- rParam.bImport = sal_True;
+ rParam.bImport = true;
rParam.bSql = false;
rParam.nType = ScDbTable;
break;
case sheet::DataImportMode_QUERY:
- rParam.bImport = sal_True;
+ rParam.bImport = true;
rParam.bSql = false;
rParam.nType = ScDbQuery;
break;
diff --git a/sc/source/ui/unoobj/dispuno.cxx b/sc/source/ui/unoobj/dispuno.cxx
index 920f66f..ab43db9 100644
--- a/sc/source/ui/unoobj/dispuno.cxx
+++ b/sc/source/ui/unoobj/dispuno.cxx
@@ -276,8 +276,8 @@ void lcl_FillDataSource( frame::FeatureStateEvent& rEvent, const ScImportParam&
( (rParam.nType == ScDbQuery) ? sdb::CommandType::QUERY :
sdb::CommandType::TABLE );
- aDescriptor.setDataSource(rtl::OUString( rParam.aDBName ));
- aDescriptor[svx::daCommand] <<= rtl::OUString( rParam.aStatement );
+ aDescriptor.setDataSource(rParam.aDBName);
+ aDescriptor[svx::daCommand] <<= rParam.aStatement;
aDescriptor[svx::daCommandType] <<= nType;
}
else
More information about the Libreoffice-commits
mailing list