include/editeng/wghtitem.hxx | 8 ++++++++ sc/source/core/data/table1.cxx | 4 ++++ 2 files changed, 12 insertions(+)
New commits: commit 9073a47b99e22585c6d1603dd747cb14f081fca1 Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Tue Jun 2 17:15:15 2020 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Wed Jun 3 08:09:57 2020 +0200 tdf#88109 improve autofill perf (2) make SvxWeightItem sortable, which shaves off 1% and turn the tree search off while performing this operation, which shaves off about 25% of the time on my machine. Change-Id: I94358ed565a0d9f1cc0ddb36b8349e83c9deb959 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95369 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/include/editeng/wghtitem.hxx b/include/editeng/wghtitem.hxx index 121cfcf318a6..6f5f4b31ccc3 100644 --- a/include/editeng/wghtitem.hxx +++ b/include/editeng/wghtitem.hxx @@ -59,6 +59,14 @@ public: FontWeight GetWeight() const { return GetValue(); } void dumpAsXml(xmlTextWriterPtr pWriter) const override; + + virtual bool IsSortable() const override { return true; } + + virtual bool operator<(const SfxPoolItem& rCmp) const override + { + auto const & other = static_cast<const SvxWeightItem&>(rCmp); + return GetValue() < other.GetValue(); + } }; #endif // INCLUDED_EDITENG_WGHTITEM_HXX diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx index 022a57f2503f..16e6e5d594d5 100644 --- a/sc/source/core/data/table1.cxx +++ b/sc/source/core/data/table1.cxx @@ -464,6 +464,8 @@ bool ScTable::SetOptimalHeight( ScProgress* pProgress = GetProgressBar(nCount, GetWeightedCount(), pOuterProgress, pDocument); + mpRowHeights->enableTreeSearch(false); + GetOptimalHeightsInColumn(rCxt, aCol, nStartRow, nEndRow, pProgress, nProgressStart); SetRowHeightRangeFunc aFunc(this, rCxt.getPPTY()); @@ -472,6 +474,8 @@ bool ScTable::SetOptimalHeight( if ( pProgress != pOuterProgress ) delete pProgress; + mpRowHeights->enableTreeSearch(true); + return bChanged; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits