diff options
author | Benjamin Ni <benjaminniri@hotmail.com> | 2015-05-27 09:00:45 +0100 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2015-05-30 09:06:58 +0000 |
commit | 51262ef0d11d9aef246001d8a9b1c1d8753023bd (patch) | |
tree | 182de28064a0d9e58a3e0f3c0a2dd0aa735293b8 /sc/inc | |
parent | 71eeb8aa5897349073d0a6235a034bec26465040 (diff) |
Implemented formula group count statistic
Change-Id: I8b9c11fdd4b6e4343b467f1e5b1d1e96f1dd3140
Reviewed-on: https://gerrit.libreoffice.org/15927
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Diffstat (limited to 'sc/inc')
-rw-r--r-- | sc/inc/column.hxx | 1 | ||||
-rw-r--r-- | sc/inc/dociter.hxx | 18 | ||||
-rw-r--r-- | sc/inc/document.hxx | 4 | ||||
-rw-r--r-- | sc/inc/table.hxx | 1 |
4 files changed, 24 insertions, 0 deletions
diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx index 9d9679308d49..d5e66254d243 100644 --- a/sc/inc/column.hxx +++ b/sc/inc/column.hxx @@ -145,6 +145,7 @@ friend class ScValueIterator; friend class ScHorizontalValueIterator; friend class ScDBQueryDataIterator; friend class ScQueryCellIterator; +friend class ScFormulaGroupIterator; friend class ScCellIterator; friend class ScHorizontalCellIterator; friend class ScHorizontalAttrIterator; diff --git a/sc/inc/dociter.hxx b/sc/inc/dociter.hxx index 5b32930858b7..49a782e3fe3c 100644 --- a/sc/inc/dociter.hxx +++ b/sc/inc/dociter.hxx @@ -21,6 +21,7 @@ #define INCLUDED_SC_INC_DOCITER_HXX #include "address.hxx" +#include "formulagroup.hxx" #include <tools/solar.h> #include "global.hxx" #include "scdllapi.h" @@ -184,6 +185,23 @@ public: bool GetNext(Value& rValue); }; +class ScFormulaGroupIterator +{ +private: + ScDocument* mpDoc; + SCTAB mnTab; + SCCOL mnCol; + bool mbNullCol; + size_t mnIndex; + std::vector<sc::FormulaGroupEntry> maEntries; + +public: + ScFormulaGroupIterator( ScDocument* pDoc ); + + sc::FormulaGroupEntry* first(); + sc::FormulaGroupEntry* next(); +}; + /** * Walk through all cells in an area. For SubTotal and Aggregate depending on mnSubTotalFlags. **/ diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx index 7ea90f19015f..79ea55532137 100644 --- a/sc/inc/document.hxx +++ b/sc/inc/document.hxx @@ -231,10 +231,12 @@ struct ScDocStat OUString aDocName; SCTAB nTableCount; sal_uLong nCellCount; + sal_uLong nFormulaCount; sal_uInt16 nPageCount; ScDocStat() : nTableCount(0) , nCellCount(0) + , nFormulaCount(0) , nPageCount(0) { } @@ -251,6 +253,7 @@ class ScDocument friend class ScValueIterator; friend class ScHorizontalValueIterator; friend class ScDBQueryDataIterator; +friend class ScFormulaGroupIterator; friend class ScCellIterator; friend class ScQueryCellIterator; friend class ScHorizontalCellIterator; @@ -465,6 +468,7 @@ public: bool IsUsingEmbededFonts() { return mbUseEmbedFonts; } void SetIsUsingEmbededFonts( bool bUse ) { mbUseEmbedFonts = bUse; } SC_DLLPUBLIC sal_uLong GetCellCount() const; // all cells + SC_DLLPUBLIC sal_uLong GetFormulaGroupCount() const; // all cells sal_uLong GetCodeCount() const; // RPN-Code in formulas DECL_LINK( GetUserDefinedColor, sal_uInt16 * ); // number formatter diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx index 7454188f04a7..8bbf7df98f13 100644 --- a/sc/inc/table.hxx +++ b/sc/inc/table.hxx @@ -209,6 +209,7 @@ friend class ScDocument; // for FillInfo friend class ScValueIterator; friend class ScHorizontalValueIterator; friend class ScDBQueryDataIterator; +friend class ScFormulaGroupIterator; friend class ScCellIterator; friend class ScQueryCellIterator; friend class ScHorizontalCellIterator; |