63 std::unique_ptr<SwNodeNum>
pRoot;
75 tListTreeForRange(std::unique_ptr<SwNodeNum> p1, std::unique_ptr<SwNodeNum> p2, std::unique_ptr<SwPaM> p3)
76 : pRoot(
std::move(p1)), pRootRLHidden(
std::move(p2)), pSection(
std::move(p3)) {}
88 : msListId( sListId ),
89 msDefaultListStyleName( rDefaultListStyle.GetName() ),
94 const SwNode* pNode = rNodes[0];
100 std::make_unique<SwNodeNum>( &rDefaultListStyle ),
101 std::make_unique<SwNodeNum>( &rDefaultListStyle ),
102 std::make_unique<SwPaM>( *(aPam.Start()), *(aPam.End()) ));
109 pNode = rNodes[nIndex];
128 const SwNodes* pNodesOfNodeNum = &(aPosOfNodeNum.nNode.GetNode().GetNodes());
132 const SwPosition* pStart = rNumberTree.pSection->Start();
133 const SwPosition* pEnd = rNumberTree.pSection->End();
136 if ( pRangeNodes == pNodesOfNodeNum &&
137 *pStart <= aPosOfNodeNum && aPosOfNodeNum <= *pEnd)
139 auto const& pRoot(isHiddenRedlines
140 ? rNumberTree.pRootRLHidden
141 : rNumberTree.pRoot);
142 pRoot->AddChild(&rNodeNum, nLevel);
157 rNumberTree.pRoot->InvalidateTree();
158 rNumberTree.pRootRLHidden->InvalidateTree();
166 rNumberTree.pRoot->NotifyInvalidChildren();
167 rNumberTree.pRootRLHidden->NotifyInvalidChildren();
211 rNumberTree.pRoot->NotifyNodesOnListLevel( nLevel );
212 rNumberTree.pRootRLHidden->NotifyNodesOnListLevel( nLevel );
219 : mpListImpl( new
SwListImpl( sListId, rDefaultListStyle, rNodes ) )
245 mpListImpl->InsertListItem( rNodeNum, isHiddenRedlines, nLevel );
266 mpListImpl->MarkListLevel( nListLevel, bValue );
271 return mpListImpl->IsListLevelMarked( nListLevel );
static void RemoveListItem(SwNodeNum &rNodeNum)
const SwEndNode * EndOfSectionNode() const
static void HandleNumberTreeRootNodeDelete(SwNodeNum &rNodeNum)
void NotifyItemsOnListLevel(const int nLevel)
sal_uLong GetIndex() const
Marks a position in the document model.
SW_DLLPUBLIC const OUString & GetDefaultListStyleName() const
const OUString & GetListId() const
std::unique_ptr< SwNodeNum > pRootRLHidden
Tree that is missing those nodes that are merged or hidden by delete redlines; this is only used if t...
const OUString & GetDefaultListStyleName() const
SwList(const OUString &sListId, SwNumRule &rDefaultListStyle, const SwNodes &rNodes)
std::unique_ptr< SwPaM > pSection
top-level SwNodes section
SwPosition GetPosition() const
~SwListImpl() COVERITY_NOEXCEPT_FALSE
OUString msDefaultListStyleName
void SetDefaultListStyleName(OUString const &)
bool IsListLevelMarked(const int nListLevel) const
void MarkListLevel(const int nListLevel, const bool bValue)
void MarkListLevel(const int nListLevel, const bool bValue)
std::unique_ptr< SwListImpl, o3tl::default_delete< SwListImpl > > mpListImpl
void InsertListItem(SwNodeNum &rNodeNum, bool isHiddenRedlines, const int nLevel)
SwNode & GetEndOfContent() const
Regular ContentSection (i.e. the BodyText).
PaM is Point and Mark: a selection of the document model.
bool IsListLevelMarked(const int nListLevel) const
const OUString & GetListId() const
void InvalidateListTree()
void RemoveMe()
Remove this child from the tree.
SwNodes & GetNodes()
Node is in which nodes-array/doc?
static void RemoveListItem(SwNodeNum &rNodeNum)
SwListImpl(const OUString &sListId, SwNumRule &rDefaultListStyle, const SwNodes &rNodes)
void InsertListItem(SwNodeNum &rNodeNum, bool isHiddenRedlines, const int nLevel)
void InvalidateListTree()
tListTreeForRange(std::unique_ptr< SwNodeNum > p1, std::unique_ptr< SwNodeNum > p2, std::unique_ptr< SwPaM > p3)
std::vector< tListTreeForRange > maListTrees
std::unique_ptr< SwNodeNum > pRoot
tree always corresponds to document model
Base class of the Writer document model elements.