Aspose::Words::ParagraphCollection class
Contents
[
Hide
]ParagraphCollection class
Provides typed access to a collection of Paragraph nodes. To learn more, visit the Working with Paragraphs documentation article.
class ParagraphCollection : public Aspose::Words::NodeCollection
Methods
Method | Description |
---|---|
Add(const System::SharedPtr<Aspose::Words::Node>&) | Adds a node to the end of the collection. |
Clear() | Removes all nodes from this collection and from the document. |
Contains(const System::SharedPtr<Aspose::Words::Node>&) | Determines whether a node is in the collection. |
get_Count() | Gets the number of nodes in the collection. |
GetEnumerator() override | Provides a simple “foreach” style iteration over the collection of nodes. |
GetType() const override | |
idx_get(int32_t) | Retrieves a Paragraph at the given index. |
IndexOf(const System::SharedPtr<Aspose::Words::Node>&) | Returns the zero-based index of the specified node. |
Insert(int32_t, const System::SharedPtr<Aspose::Words::Node>&) | Inserts a node into the collection at the specified index. |
Is(const System::TypeInfo&) const override | |
Remove(const System::SharedPtr<Aspose::Words::Node>&) | Removes the node from the collection and from the document. |
RemoveAt(int32_t) | Removes the node at the specified index from the collection and from the document. |
ToArray() | Copies all paragraphs from the collection to a new array of paragraphs. |
static Type() |
Examples
Shows how to check whether a paragraph is a move revision.
auto doc = MakeObject<Document>(MyDir + u"Revisions.docx");
// This document contains "Move" revisions, which appear when we highlight text with the cursor,
// and then drag it to move it to another location
// while tracking revisions in Microsoft Word via "Review" -> "Track changes".
ASSERT_EQ(6, doc->get_Revisions()->LINQ_Count([](SharedPtr<Revision> r) { return r->get_RevisionType() == RevisionType::Moving; }));
SharedPtr<ParagraphCollection> paragraphs = doc->get_FirstSection()->get_Body()->get_Paragraphs();
// Move revisions consist of pairs of "Move from", and "Move to" revisions.
// These revisions are potential changes to the document that we can either accept or reject.
// Before we accept/reject a move revision, the document
// must keep track of both the departure and arrival destinations of the text.
// The second and the fourth paragraph define one such revision, and thus both have the same contents.
ASSERT_EQ(paragraphs->idx_get(1)->GetText(), paragraphs->idx_get(3)->GetText());
// The "Move from" revision is the paragraph where we dragged the text from.
// If we accept the revision, this paragraph will disappear,
// and the other will remain and no longer be a revision.
ASSERT_TRUE(paragraphs->idx_get(1)->get_IsMoveFromRevision());
// The "Move to" revision is the paragraph where we dragged the text to.
// If we reject the revision, this paragraph instead will disappear, and the other will remain.
ASSERT_TRUE(paragraphs->idx_get(3)->get_IsMoveToRevision());
See Also
- Class NodeCollection
- Namespace Aspose::Words
- Library Aspose.Words for C++