summaryrefslogtreecommitdiff
path: root/sc/inc
diff options
context:
space:
mode:
authorSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2018-01-23 14:22:59 +0100
committerEike Rathke <erack@redhat.com>2018-01-31 14:34:08 +0100
commitea607135ce6bb607508ac6ce6fcc4dae99f297a9 (patch)
tree2501ffe09d4917832b6ae8d8b506a25b011261bf /sc/inc
parent3341c752024687e96b7aad2d19e04d65ee7e232e (diff)
Improve performance when looking for draw objects anchored to cells
Look for a whole column at once so we don't have to iterate all draw objects for every cell, but only once per column. Follow-up for 3a2a430ae8e2c1647c18d8904477949f6e2e7941 Change-Id: Ic8740fca7d595528785b432c1cedf4fad4f13ba1 Reviewed-on: https://gerrit.libreoffice.org/48416 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
Diffstat (limited to 'sc/inc')
-rw-r--r--sc/inc/drwlayer.hxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/sc/inc/drwlayer.hxx b/sc/inc/drwlayer.hxx
index d9155d0d90f0..92fc4f0449df 100644
--- a/sc/inc/drwlayer.hxx
+++ b/sc/inc/drwlayer.hxx
@@ -182,8 +182,8 @@ public:
static void SetCellAnchoredFromPosition( SdrObject &rObj, const ScDocument &rDoc, SCTAB nTab );
static void UpdateCellAnchorFromPositionEnd( const SdrObject &rObj, ScDrawObjData &rAnchor, const ScDocument &rDoc, SCTAB nTab, bool bUseLogicRect = true );
static ScAnchorType GetAnchorType( const SdrObject& );
- std::vector<SdrObject*> GetObjectsAnchoredToCell(const ScAddress& rPos);
- bool HasObjectsAnchoredInRange(ScRange& rRange);
+ std::map<SCROW, std::vector<SdrObject*>> GetObjectsAnchoredToRange(SCTAB nTab, SCCOL nCol, SCROW nStartRow, SCROW nEndRow);
+ bool HasObjectsAnchoredInRange(ScRange& rRange);
void MoveObject(SdrObject* pObj, ScAddress& rNewPosition);
// positions for detektive lines