summaryrefslogtreecommitdiff
path: root/sc/source/core/data/table3.cxx
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-04-29 15:32:18 -0400
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2014-04-30 14:42:25 +0000
commit5e1fdc8cdf3bd35cee2e7c193827f5f5a1c534ac (patch)
treec662c240cb627a53553833fbbeec984c63976135 /sc/source/core/data/table3.cxx
parent74b45188b71a9fe22bb8997e3a23cc9a4b43d3c8 (diff)
fdo#75058: Optimize autofilter item filling for non-tree items.
(cherry picked from commit 878a5dabff4669fb606a461e11eaf286d0c8b07f) (cherry picked from commit 0b03f7ed575838f90e6b1ebec3538a3a214f81fb) Conflicts: sc/source/ui/cctrl/checklistmenu.cxx sc/source/ui/inc/checklistmenu.hxx Change-Id: I1b3ae601726401a0e70fb1a05b9a90c43773794c Reviewed-on: https://gerrit.libreoffice.org/9211 Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Diffstat (limited to 'sc/source/core/data/table3.cxx')
-rw-r--r--sc/source/core/data/table3.cxx9
1 files changed, 7 insertions, 2 deletions
diff --git a/sc/source/core/data/table3.cxx b/sc/source/core/data/table3.cxx
index 429cd52ede92..1765f251035d 100644
--- a/sc/source/core/data/table3.cxx
+++ b/sc/source/core/data/table3.cxx
@@ -2556,12 +2556,17 @@ bool ScTable::HasRowHeader( SCCOL nStartCol, SCROW nStartRow, SCCOL /* nEndCol *
void ScTable::GetFilterEntries(SCCOL nCol, SCROW nRow1, SCROW nRow2, std::vector<ScTypedStrData>& rStrings, bool& rHasDates)
{
- aCol[nCol].GetFilterEntries( nRow1, nRow2, rStrings, rHasDates );
+ sc::ColumnBlockConstPosition aBlockPos;
+ aCol[nCol].InitBlockPosition(aBlockPos);
+ aCol[nCol].GetFilterEntries(aBlockPos, nRow1, nRow2, rStrings, rHasDates);
}
void ScTable::GetFilteredFilterEntries(
SCCOL nCol, SCROW nRow1, SCROW nRow2, const ScQueryParam& rParam, std::vector<ScTypedStrData>& rStrings, bool& rHasDates)
{
+ sc::ColumnBlockConstPosition aBlockPos;
+ aCol[nCol].InitBlockPosition(aBlockPos);
+
// remove the entry for this column from the query parameter
ScQueryParam aParam( rParam );
aParam.RemoveEntryByField(nCol);
@@ -2573,7 +2578,7 @@ void ScTable::GetFilteredFilterEntries(
if (ValidQuery(j, aParam))
{
bool bThisHasDates = false;
- aCol[nCol].GetFilterEntries( j, j, rStrings, bThisHasDates );
+ aCol[nCol].GetFilterEntries(aBlockPos, j, j, rStrings, bThisHasDates);
bHasDates |= bThisHasDates;
}
}