30 : msListId(
std::move(sListId) ),
31 msDefaultListStyleName( rDefaultListStyle.
GetName() ),
36 std::vector<bool> aVisited(
static_cast<sal_Int32
>(rNodes.
Count()),
false);
40 if (aVisited[
static_cast<sal_Int32
>(
nIndex)])
44 SAL_WARN(
"sw.core",
"corrupt document structure, bailing out of infinite loop");
45 throw css::uno::RuntimeException(
"corrupt document structure, bailing out of infinite loop");
47 aVisited[
static_cast<sal_Int32
>(
nIndex)] =
true;
51 std::make_unique<SwNodeNum>( &rDefaultListStyle ),
52 std::make_unique<SwNodeNum>( &rDefaultListStyle ),
53 std::make_unique<SwNodeNum>( &rDefaultListStyle ),
54 std::make_unique<SwPaM>( *(aPam.Start()), *(aPam.End()) ));
81 if (rNumberTree.pRoot->GetChildCount() != 0)
90 const int nLevel,
const SwDoc& rDoc)
97 auto [pStart, pEnd] = rNumberTree.pSection->StartEnd();
98 const SwNodes* pRangeNodes = &(pStart->GetNode().GetNodes());
100 if ( pRangeNodes == pNodesOfNodeNum &&
101 *pStart <= aPosOfNodeNum && aPosOfNodeNum <= *pEnd)
104 ? rNumberTree.pRootRLHidden
107 : rNumberTree.pRootOrigText);
108 pRoot->AddChild(&rNodeNum, nLevel, rDoc);
123 rNumberTree.pRoot->InvalidateTree();
124 rNumberTree.pRootRLHidden->InvalidateTree();
125 rNumberTree.pRootOrigText->InvalidateTree();
133 rNumberTree.pRoot->NotifyInvalidChildren(rDoc);
134 rNumberTree.pRootRLHidden->NotifyInvalidChildren(rDoc);
135 rNumberTree.pRootOrigText->NotifyInvalidChildren(rDoc);
179 rNumberTree.pRoot->NotifyNodesOnListLevel( nLevel );
180 rNumberTree.pRootRLHidden->NotifyNodesOnListLevel( nLevel );
181 rNumberTree.pRootOrigText->NotifyNodesOnListLevel( nLevel );
void InsertListItem(SwNodeNum &rNodeNum, SwListRedlineType eRedlines, const int nLevel, const SwDoc &rDoc)
static void RemoveListItem(SwNodeNum &rNodeNum, const SwDoc &rDoc)
void InvalidateListTree()
void NotifyItemsOnListLevel(const int nLevel)
OUString msDefaultListStyleName
bool IsListLevelMarked(const int nListLevel) const
void ValidateListTree(const SwDoc &rDoc)
void MarkListLevel(const int nListLevel, const bool bValue)
std::vector< tListTreeForRange > maListTrees
SwList(OUString sListId, SwNumRule &rDefaultListStyle, const SwNodes &rNodes)
void SetDefaultListStyleName(OUString const &)
~SwList() COVERITY_NOEXCEPT_FALSE
SwPosition GetPosition() const
static void HandleNumberTreeRootNodeDelete(SwNodeNum &rNodeNum)
Base class of the Writer document model elements.
SwNodeOffset GetIndex() const
SwNodes & GetNodes()
Node is in which nodes-array/doc?
const SwEndNode * EndOfSectionNode() const
SwNode & GetEndOfContent() const
Regular ContentSection (i.e. the BodyText).
SwNodeOffset Count() const
void RemoveMe(const SwDoc &rDoc)
Remove this child from the tree.
PaM is Point and Mark: a selection of the document model.
virtual OUString GetName() const override
#define SAL_WARN(area, stream)
o3tl::strong_int< sal_Int32, struct Tag_SwNodeOffset > SwNodeOffset
Marks a position in the document model.
constexpr sal_uInt8 MAXLEVEL