From e7e7449729fe2b750506b4b165c4be993834fd16 Mon Sep 17 00:00:00 2001 From: Tomaž Vajngerl Date: Mon, 1 Jan 2024 14:34:04 +0900 Subject: editeng: add begin, end, MarkAllSelectionsInvalid to ParaPortionList MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit begin, end to make iteration work with range for Change-Id: Ia64d4f8102485b257e190fc702e4aa734a81d866 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161530 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl --- editeng/inc/ParagraphPortionList.hxx | 14 +++++++++++++- editeng/source/editeng/impedit3.cxx | 3 +-- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'editeng') diff --git a/editeng/inc/ParagraphPortionList.hxx b/editeng/inc/ParagraphPortionList.hxx index 23654adc5e43..aa7862afa8d7 100644 --- a/editeng/inc/ParagraphPortionList.hxx +++ b/editeng/inc/ParagraphPortionList.hxx @@ -28,7 +28,8 @@ class EditDoc; class ParaPortionList { mutable sal_Int32 nLastCache = 0; - std::vector> maPortions; + typedef std::vector> ParaPortionContainerType; + ParaPortionContainerType maPortions; public: ParaPortionList() = default; @@ -50,6 +51,17 @@ public: void Append(std::unique_ptr p); sal_Int32 Count() const; + ParaPortionContainerType::iterator begin() { return maPortions.begin(); } + ParaPortionContainerType::iterator end() { return maPortions.end(); } + ParaPortionContainerType::const_iterator cbegin() const { return maPortions.cbegin(); } + ParaPortionContainerType::const_iterator cend() const { return maPortions.cend(); } + + void MarkAllSelectionsInvalid(sal_Int32 nStart) + { + for (auto& pParaPortion : maPortions) + pParaPortion->MarkSelectionInvalid(nStart); + } + #if OSL_DEBUG_LEVEL > 0 && !defined NDEBUG // temporary: static void DbgCheck(ParaPortionList const&, EditDoc const& rDoc); diff --git a/editeng/source/editeng/impedit3.cxx b/editeng/source/editeng/impedit3.cxx index a4e0a54aaa0d..d50c2eb1338e 100644 --- a/editeng/source/editeng/impedit3.cxx +++ b/editeng/source/editeng/impedit3.cxx @@ -393,8 +393,7 @@ bool ImpEditEngine::IsPageOverflow( ) const void ImpEditEngine::FormatFullDoc() { - for ( sal_Int32 nPortion = 0; nPortion < GetParaPortions().Count(); nPortion++ ) - GetParaPortions()[nPortion]->MarkSelectionInvalid( 0 ); + GetParaPortions().MarkAllSelectionsInvalid(0); FormatDoc(); } -- cgit