search/mag_sel search/close
DocumentBase.h
1 // Copyright 2001-2021 Aspose Pty Ltd. All Rights Reserved.
3 //
4 // This file is part of Aspose.Words. The source code in this file
5 // is only intended as a supplement to the documentation, and is provided
6 // "as is", without warranty of any kind, either expressed or implied.
9 #pragma once
10 
11 #include <system/string.h>
12 #include <system/memory_management.h>
13 #include <system/enum_helpers.h>
14 
15 #include <Aspose.Words.Cpp/CompositeNode.h>
16 #include <Aspose.Words.Cpp/ImportFormatMode.h>
17 #include <Aspose.Words.Cpp/aspose_words_api_defs.h>
18 
19 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace Diagram { class DmlDiagramTextBoxFitCache; } } } } }
20 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Math { class MathContext; } } } }
21 namespace Aspose { namespace Words { namespace Layout { namespace PreAps { class PageLayout; } } } }
22 namespace Aspose { namespace Words { class PageExtractor; } }
23 namespace Aspose { namespace Words { namespace Drawing { namespace Core { namespace Dml { class DmlShapeInserter; } } } } }
24 namespace Aspose { namespace Words { namespace Replacing { class FindReplaceLegacy; } } }
25 namespace Aspose { namespace Words { class Node; } }
26 namespace Aspose { namespace Words { namespace Markup { class StructuredDocumentTagRangeStart; } } }
27 namespace Aspose { namespace Words { namespace Revisions { class RevisionTrackingUtil; } } }
28 namespace Aspose { namespace Words { class FormattingDifferenceCalculator; } }
29 namespace Aspose { namespace Words { class CommentIdsRegenerator; } }
30 namespace Aspose { namespace Words { class NodeCollection; } }
31 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace ShapeEffects { class DmlEffectRenderingContext; } } } } }
32 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace TextEffects { class DmlTextEffectsPostApplier; } } } } }
33 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace Text { class DmlTextShapeToShapeConvertor; } } } } }
34 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { class DmlRenderingServiceLocator; } } } }
35 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace Text { namespace Layout { class DmlTextFontRepository; } } } } } }
36 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace Text { class DmlTextShapeRenderer; } } } } }
37 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Math { class MathTextElement; } } } }
38 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { namespace WordArt { class VmlWordArtBuilder; } } } } }
39 namespace Aspose { namespace Words { namespace Layout { namespace Core { class SpanListRevisionsHelper; } } } }
40 namespace Aspose { namespace Words { namespace Layout { class ParagraphPrConverter; } } }
41 namespace Aspose { namespace Words { namespace Comparing { class DocumentComparer; } } }
42 namespace Aspose { namespace Words { namespace Themes { class ThemeColorUpdater; } } }
43 namespace Aspose { namespace Words { namespace Validation { class ComplexScriptRunUpdater; } } }
44 namespace Aspose { namespace Words { namespace Validation { class IstdVisitor; } } }
45 namespace Aspose { namespace Words { namespace RW { namespace Dml { namespace Writer { class DmlShapeValidator; } } } } }
46 namespace Aspose { namespace Words { class VideoInserter; } }
47 namespace Aspose { namespace Words { namespace Drawing { namespace Core { class SignatureLineRenderingHelper; } } } }
48 namespace Aspose { namespace Words { namespace Formatting { namespace Intern { class InternManager; } } } }
49 namespace Aspose { namespace Words { class FormatRevisionText; } }
50 namespace Aspose { namespace Words { namespace Tables { class TableMerger; } } }
51 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Reader { class HtmlControlAsSdtReader; } } } } }
52 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Reader { class NrxSettingsReader; } } } } }
53 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfRsidTableHandler; } } } } }
54 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxBackgroundReader; } } } } }
55 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxPeopleReader; } } } } }
56 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Reader { class NrxSectPrReaderBase; } } } } }
57 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxPeopleWriter; } } } } }
58 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Writer { class NrxRunPrWriterBase; } } } } }
59 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Css { namespace New { class DocumentFormatter; } } } } } }
60 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Writer { class NrxFootnotesWriter; } } } } }
61 namespace Aspose { namespace Words { namespace Fonts { class EmbeddedFontCollector; } } }
62 namespace Aspose { namespace Words { namespace Replacing { class FindReplace; } } }
63 namespace Aspose { namespace Words { class SuspendTrackRevisionsDocument; } }
64 namespace Aspose { namespace Words { namespace Drawing { namespace Core { namespace Dml { namespace Diagrams { namespace ComplexTypes { class DmlShapeProperties; } } } } } } }
65 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtChartToDmlConverter; } } } } }
66 namespace Aspose { namespace Words { namespace Rendering { class NodeRendererBase; } } }
67 namespace Aspose { namespace Words { namespace RW { namespace Dml { namespace Reader { class DmlChartComplexTypesReader; } } } } }
68 namespace Aspose { namespace Words { namespace Drawing { namespace Charts { class ChartDataPoint; } } } }
69 namespace Aspose { namespace Words { namespace Drawing { namespace Charts { class ChartTitle; } } } }
70 namespace Aspose { namespace Words { namespace Drawing { namespace Charts { class ChartMarker; } } } }
71 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { class DmlPictureRenderer; } } } }
72 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { class DmlShapeRenderer; } } } }
73 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace ShapeEffects { class DmlSimplifiedBlurHelper; } } } } }
74 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Math { class MathElement; } } } }
75 namespace Aspose { namespace Words { namespace Layout { namespace Core { class DocumentLayout; } } } }
76 namespace Aspose { namespace Words { class BookmarkCache; } }
77 namespace Aspose { namespace Words { class EditableRangeStart; } }
78 namespace Aspose { namespace Words { namespace Tables { class FixedGridCalculator; } } }
79 namespace Aspose { namespace Words { namespace Validation { class DrawingMLIdValidator; } } }
80 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtTrackedChangesReader; } } } } }
81 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtTrackedChangesWriter; } } } } }
82 namespace Aspose { namespace Words { class RevisionCollection; } }
83 namespace Aspose { namespace Words { namespace Markup { class StructuredDocumentTag; } } }
84 namespace Aspose { namespace Words { namespace Layout { namespace Core { class SpanShape; } } } }
85 namespace Aspose { namespace Words { namespace Layout { class AttributeConverter; } } }
86 namespace Aspose { namespace Words { namespace Layout { class DocumentRunSplitter; } } }
87 namespace Aspose { namespace Words { namespace Layout { class FontProps; } } }
88 namespace Aspose { namespace Words { namespace BuildingBlocks { class GlossaryDocument; } } }
89 namespace Aspose { namespace Words { namespace Validation { class AnnotationValidator; } } }
90 namespace Aspose { namespace Words { namespace TableLayout { class Extensions; } } }
91 namespace Aspose { namespace Words { namespace Tables { class TableFormattingExpander; } } }
92 namespace Aspose { namespace Words { class Document; } }
93 namespace Aspose { namespace Words { class DocumentBuilder; } }
94 namespace Aspose { namespace Words { namespace Validation { class DocumentPostLoader; } } }
95 namespace Aspose { namespace Words { namespace Validation { class DocumentValidator; } } }
96 namespace Aspose { namespace Words { namespace Validation { class LegacyListFormattingConverter; } } }
97 namespace Aspose { namespace Words { namespace Validation { class RunPrValidator; } } }
98 namespace Aspose { namespace Words { namespace Validation { class ShapeIdGenerator; } } }
99 namespace Aspose { namespace Words { class WordCounter; } }
100 namespace Aspose { namespace Words { namespace Drawing { class ShapeBase; } } }
101 namespace Aspose { namespace Words { namespace Validation { class TableValidator; } } }
102 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { class ShapeBoundsFinder; } } } }
103 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { class TextBoxApsBuilder; } } } }
104 namespace Aspose { namespace Words { namespace RW { class FixedPageWriterBase; } } }
105 namespace Aspose { namespace Words { namespace RW { namespace Html { class ListProps; } } } }
106 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Writer { class HtmlCoreWriter; } } } } }
107 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Writer { class HtmlSpanWriter; } } } } }
108 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Writer { class NrxSettingsWriter; } } } } }
109 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfContentHandler; } } } } }
110 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfPgpHandler; } } } } }
111 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfPgpWriter; } } } } }
112 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxThemeReader; } } } } }
113 namespace Aspose { namespace Words { namespace Drawing { class TextBox; } } }
114 namespace Aspose { namespace Words { namespace Lists { class ListLabelUtil; } } }
115 namespace Aspose { namespace Words { class ImportContext; } }
116 namespace Aspose { namespace Words { class NodeImporter; } }
117 namespace Aspose { namespace Words { namespace MailMerging { class MailMerge; } } }
118 namespace Aspose { namespace Words { class Section; } }
119 namespace Aspose { namespace Words { class StyleCollection; } }
120 namespace Aspose { namespace Words { namespace TableLayout { class TableLayouter; } } }
121 namespace Aspose { namespace Words { class Comment; } }
122 namespace Aspose { namespace Words { class Font; } }
123 namespace Aspose { namespace Words { class InlineHelper; } }
124 namespace Aspose { namespace Words { class Paragraph; } }
125 namespace Aspose { namespace Words { class Range; } }
126 namespace Aspose { namespace Words { class Run; } }
127 namespace Aspose { namespace Words { namespace Rendering { class AsposeWordsPrintDocument; } } }
128 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Reader { class NrxDocumentReaderBase; } } } } }
129 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxDocumentWriterBase; } } } } }
130 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfMailMergeHandler; } } } } }
131 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfMailMergeODSOHandler; } } } } }
132 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfMathPropertiesHandler; } } } } }
133 namespace Aspose { namespace Words { namespace RW { namespace Vml { class VmlShapeReader; } } } }
134 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtHeaderFooterReader; } } } } }
135 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtPageLayoutPropertiesReader; } } } } }
136 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtTextPropertiesReader; } } } } }
137 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtParagraphPropertiesReader; } } } } }
138 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtSettingsReader; } } } } }
139 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtAutomaticStylesReader; } } } } }
140 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtContentReader; } } } } }
141 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtReader; } } } } }
142 namespace Aspose { namespace Words { namespace RW { namespace Celler { class CellerTable; } } } }
143 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxFootnotesReader; } } } } }
144 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxSdtReader; } } } } }
145 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxSettingsReader; } } } } }
146 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxWebSettingsReader; } } } } }
147 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxFontTableWriter; } } } } }
148 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxRunWriter; } } } } }
149 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxSettingsWriter; } } } } }
150 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxWebSettingsWriter; } } } } }
151 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Comments { class FileComments; } } } } }
152 namespace Aspose { namespace Words { namespace RW { namespace Doc { class DocPrFiler; } } } }
153 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Reader { class DocReader; } } } } }
154 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Reader { class ModelBuilder; } } } } }
155 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Reader { class Parser; } } } } }
156 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Writer { class DocWriter; } } } } }
157 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtSectionWriter; } } } } }
158 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtParagraphPropertiesWriter; } } } } }
159 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtStylesWriter; } } } } }
160 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtSettingsWriter; } } } } }
161 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtWriter; } } } } }
162 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfDocPrReader; } } } } }
163 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfFileHandler; } } } } }
164 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfFontTableHandler; } } } } }
165 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfInfoGroupHandler; } } } } }
166 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfModelBuilder; } } } } }
167 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfReader; } } } } }
168 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfReaderContext; } } } } }
169 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfDocPrWriter; } } } } }
170 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfHeaderWriter; } } } } }
171 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfInfoGroupWriter; } } } } }
172 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfParaPrWriter; } } } } }
173 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfRevisionWriter; } } } } }
174 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfWriter; } } } } }
175 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Reader { class WmlDocPrReader; } } } } }
176 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Writer { class WmlDocPrWriter; } } } } }
177 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Writer { class WmlFontsWriter; } } } } }
178 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Writer { class WmlWriter; } } } } }
179 namespace Aspose { namespace Words { namespace RW { namespace Xaml { namespace Writer { class XamlListWriter; } } } } }
180 namespace Aspose { namespace Words { class INodeChangingCallback; } }
181 namespace Aspose { namespace Words { namespace Loading { class IResourceLoadingCallback; } } }
182 namespace Aspose { namespace Words { namespace Fonts { class FontInfoCollection; } } }
183 namespace Aspose { namespace Words { namespace Lists { class ListCollection; } } }
184 namespace Aspose { namespace Words { class HtmlBlockCollection; } }
185 namespace Aspose { namespace Words { class PersonCollection; } }
186 namespace Aspose { namespace Words { class IWarningCallback; } }
187 namespace Aspose { namespace Words { namespace Settings { class DocPr; } } }
188 namespace Aspose { namespace Words { class VariableCollection; } }
189 namespace Aspose { namespace Words { namespace Notes { class FootnoteSeparatorCollection; } } }
190 namespace Aspose { namespace Words { namespace Drawing { class Shape; } } }
191 namespace System { namespace Drawing { class Color; } }
192 namespace Aspose { namespace Words { namespace Markup { class SdtPlaceholderManager; } } }
193 namespace Aspose { namespace Words { class UniqueIdManager; } }
194 namespace Aspose { namespace Words { namespace Fonts { class DocumentFontProvider; } } }
195 namespace Aspose { namespace Words { class NodeChangingCallbackChain; } }
196 namespace Aspose { namespace Words { class INodeCloningListener; } }
197 namespace Aspose { namespace Words { class NodeChangingArgs; } }
198 namespace Aspose { namespace Words { enum class NodeChangingAction; } }
199 namespace Aspose { namespace Words { enum class WarningType; } }
200 namespace Aspose { namespace Words { enum class WarningSource; } }
201 namespace Aspose { namespace Words { namespace Themes { class Theme; } } }
202 
203 namespace Aspose {
204 
205 namespace Words {
206 
231 class ASPOSE_WORDS_SHARED_CLASS DocumentBase : public Aspose::Words::CompositeNode
232 {
233  typedef DocumentBase ThisType;
235 
236  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
237  ASPOSE_WORDS_SHARED_RTTI_INFO_DECL();
238 
239  friend class Aspose::Words::ApsBuilder::Dml::Diagram::DmlDiagramTextBoxFitCache;
240  friend class Aspose::Words::ApsBuilder::Math::MathContext;
241  friend class Aspose::Words::Layout::PreAps::PageLayout;
242  friend class Aspose::Words::PageExtractor;
243  friend class Aspose::Words::Drawing::Core::Dml::DmlShapeInserter;
244  friend class Aspose::Words::Replacing::FindReplaceLegacy;
245  friend class Aspose::Words::Node;
247  friend class Aspose::Words::Revisions::RevisionTrackingUtil;
248  friend class Aspose::Words::Revisions::RevisionTrackingUtil;
249  friend class Aspose::Words::FormattingDifferenceCalculator;
250  friend class Aspose::Words::CommentIdsRegenerator;
251  friend class Aspose::Words::NodeCollection;
252  friend class Aspose::Words::ApsBuilder::Dml::ShapeEffects::DmlEffectRenderingContext;
253  friend class Aspose::Words::ApsBuilder::Dml::TextEffects::DmlTextEffectsPostApplier;
254  friend class Aspose::Words::ApsBuilder::Dml::Text::DmlTextShapeToShapeConvertor;
255  friend class Aspose::Words::ApsBuilder::Dml::DmlRenderingServiceLocator;
256  friend class Aspose::Words::ApsBuilder::Dml::Text::Layout::DmlTextFontRepository;
257  friend class Aspose::Words::ApsBuilder::Dml::Text::DmlTextShapeRenderer;
258  friend class Aspose::Words::ApsBuilder::Math::MathTextElement;
259  friend class Aspose::Words::ApsBuilder::Shapes::WordArt::VmlWordArtBuilder;
260  friend class Aspose::Words::Layout::Core::SpanListRevisionsHelper;
261  friend class Aspose::Words::Layout::ParagraphPrConverter;
262  friend class Aspose::Words::Comparing::DocumentComparer;
263  friend class Aspose::Words::Themes::ThemeColorUpdater;
264  friend class Aspose::Words::Validation::ComplexScriptRunUpdater;
265  friend class Aspose::Words::Validation::IstdVisitor;
266  friend class Aspose::Words::CompositeNode;
267  friend class Aspose::Words::RW::Dml::Writer::DmlShapeValidator;
268  friend class Aspose::Words::VideoInserter;
269  friend class Aspose::Words::Drawing::Core::SignatureLineRenderingHelper;
270  friend class Aspose::Words::Formatting::Intern::InternManager;
271  friend class Aspose::Words::FormatRevisionText;
272  friend class Aspose::Words::Tables::TableMerger;
273  friend class Aspose::Words::RW::Html::Reader::HtmlControlAsSdtReader;
274  friend class Aspose::Words::RW::Nrx::Reader::NrxSettingsReader;
275  friend class Aspose::Words::RW::Rtf::Reader::RtfRsidTableHandler;
276  friend class Aspose::Words::RW::Docx::Reader::DocxBackgroundReader;
277  friend class Aspose::Words::RW::Docx::Reader::DocxPeopleReader;
278  friend class Aspose::Words::RW::Nrx::Reader::NrxSectPrReaderBase;
279  friend class Aspose::Words::RW::Docx::Writer::DocxPeopleWriter;
280  friend class Aspose::Words::RW::Nrx::Writer::NrxRunPrWriterBase;
281  friend class Aspose::Words::RW::Html::Css::New::DocumentFormatter;
282  friend class Aspose::Words::RW::Nrx::Writer::NrxFootnotesWriter;
283  friend class Aspose::Words::Fonts::EmbeddedFontCollector;
284  friend class Aspose::Words::Replacing::FindReplace;
285  friend class Aspose::Words::SuspendTrackRevisionsDocument;
286  friend class Aspose::Words::Drawing::Core::Dml::Diagrams::ComplexTypes::DmlShapeProperties;
287  friend class Aspose::Words::RW::Odt::Reader::OdtChartToDmlConverter;
289  friend class Aspose::Words::RW::Dml::Reader::DmlChartComplexTypesReader;
293  friend class Aspose::Words::ApsBuilder::Dml::DmlPictureRenderer;
294  friend class Aspose::Words::ApsBuilder::Dml::DmlShapeRenderer;
295  friend class Aspose::Words::ApsBuilder::Dml::ShapeEffects::DmlSimplifiedBlurHelper;
296  friend class Aspose::Words::ApsBuilder::Math::MathElement;
297  friend class Aspose::Words::Layout::Core::DocumentLayout;
298  friend class Aspose::Words::BookmarkCache;
300  friend class Aspose::Words::Tables::FixedGridCalculator;
301  friend class Aspose::Words::Validation::DrawingMLIdValidator;
302  friend class Aspose::Words::RW::Odt::Reader::OdtTrackedChangesReader;
303  friend class Aspose::Words::RW::Odt::Writer::OdtTrackedChangesWriter;
306  friend class Aspose::Words::Layout::Core::SpanShape;
307  friend class Aspose::Words::Layout::AttributeConverter;
308  friend class Aspose::Words::Layout::DocumentRunSplitter;
309  friend class Aspose::Words::Layout::FontProps;
311  friend class Aspose::Words::Validation::AnnotationValidator;
312  friend class Aspose::Words::TableLayout::Extensions;
313  friend class Aspose::Words::Tables::TableFormattingExpander;
314  friend class Aspose::Words::Document;
315  friend class Aspose::Words::DocumentBuilder;
316  friend class Aspose::Words::Validation::DocumentPostLoader;
317  friend class Aspose::Words::Validation::DocumentValidator;
318  friend class Aspose::Words::Validation::LegacyListFormattingConverter;
319  friend class Aspose::Words::Validation::RunPrValidator;
320  friend class Aspose::Words::Validation::ShapeIdGenerator;
321  friend class Aspose::Words::WordCounter;
323  friend class Aspose::Words::Validation::TableValidator;
324  friend class Aspose::Words::ApsBuilder::Shapes::ShapeBoundsFinder;
325  friend class Aspose::Words::ApsBuilder::Shapes::TextBoxApsBuilder;
326  friend class Aspose::Words::RW::FixedPageWriterBase;
327  friend class Aspose::Words::RW::Html::ListProps;
328  friend class Aspose::Words::RW::Html::Writer::HtmlCoreWriter;
329  friend class Aspose::Words::RW::Html::Writer::HtmlSpanWriter;
330  friend class Aspose::Words::RW::Nrx::Writer::NrxSettingsWriter;
331  friend class Aspose::Words::RW::Rtf::Reader::RtfContentHandler;
332  friend class Aspose::Words::RW::Rtf::Reader::RtfPgpHandler;
333  friend class Aspose::Words::RW::Rtf::Writer::RtfPgpWriter;
334  friend class Aspose::Words::RW::Docx::Reader::DocxThemeReader;
335  friend class Aspose::Words::Drawing::TextBox;
336  friend class Aspose::Words::Lists::ListLabelUtil;
337  friend class Aspose::Words::ImportContext;
338  friend class Aspose::Words::NodeImporter;
340  friend class Aspose::Words::Section;
341  friend class Aspose::Words::StyleCollection;
342  friend class Aspose::Words::TableLayout::TableLayouter;
343  friend class Aspose::Words::Comment;
344  friend class Aspose::Words::Font;
345  friend class Aspose::Words::InlineHelper;
346  friend class Aspose::Words::Paragraph;
347  friend class Aspose::Words::Range;
348  friend class Aspose::Words::Run;
349  friend class Aspose::Words::Rendering::AsposeWordsPrintDocument;
350  friend class Aspose::Words::RW::Nrx::Reader::NrxDocumentReaderBase;
351  friend class Aspose::Words::RW::Docx::Writer::DocxDocumentWriterBase;
352  friend class Aspose::Words::RW::Rtf::Reader::RtfMailMergeHandler;
353  friend class Aspose::Words::RW::Rtf::Reader::RtfMailMergeODSOHandler;
354  friend class Aspose::Words::RW::Rtf::Reader::RtfMathPropertiesHandler;
355  friend class Aspose::Words::RW::Vml::VmlShapeReader;
356  friend class Aspose::Words::RW::Odt::Reader::OdtHeaderFooterReader;
357  friend class Aspose::Words::RW::Odt::Reader::OdtPageLayoutPropertiesReader;
358  friend class Aspose::Words::RW::Odt::Reader::OdtTextPropertiesReader;
359  friend class Aspose::Words::RW::Odt::Reader::OdtParagraphPropertiesReader;
360  friend class Aspose::Words::RW::Odt::Reader::OdtSettingsReader;
361  friend class Aspose::Words::RW::Odt::Reader::OdtAutomaticStylesReader;
362  friend class Aspose::Words::RW::Odt::Reader::OdtContentReader;
363  friend class Aspose::Words::RW::Odt::Reader::OdtReader;
364  friend class Aspose::Words::RW::Celler::CellerTable;
365  friend class Aspose::Words::RW::Docx::Reader::DocxFootnotesReader;
366  friend class Aspose::Words::RW::Docx::Reader::DocxSdtReader;
367  friend class Aspose::Words::RW::Docx::Reader::DocxSettingsReader;
368  friend class Aspose::Words::RW::Docx::Reader::DocxWebSettingsReader;
369  friend class Aspose::Words::RW::Docx::Writer::DocxFontTableWriter;
370  friend class Aspose::Words::RW::Docx::Writer::DocxRunWriter;
371  friend class Aspose::Words::RW::Docx::Writer::DocxSettingsWriter;
372  friend class Aspose::Words::RW::Docx::Writer::DocxWebSettingsWriter;
373  friend class Aspose::Words::RW::Doc::Comments::FileComments;
374  friend class Aspose::Words::RW::Doc::DocPrFiler;
375  friend class Aspose::Words::RW::Doc::Reader::DocReader;
376  friend class Aspose::Words::RW::Doc::Reader::ModelBuilder;
377  friend class Aspose::Words::RW::Doc::Reader::Parser;
378  friend class Aspose::Words::RW::Doc::Writer::DocWriter;
379  friend class Aspose::Words::RW::Odt::Writer::OdtSectionWriter;
380  friend class Aspose::Words::RW::Odt::Writer::OdtParagraphPropertiesWriter;
381  friend class Aspose::Words::RW::Odt::Writer::OdtStylesWriter;
382  friend class Aspose::Words::RW::Odt::Writer::OdtSettingsWriter;
383  friend class Aspose::Words::RW::Odt::Writer::OdtWriter;
384  friend class Aspose::Words::RW::Rtf::Reader::RtfDocPrReader;
385  friend class Aspose::Words::RW::Rtf::Reader::RtfFileHandler;
386  friend class Aspose::Words::RW::Rtf::Reader::RtfFontTableHandler;
387  friend class Aspose::Words::RW::Rtf::Reader::RtfInfoGroupHandler;
388  friend class Aspose::Words::RW::Rtf::Reader::RtfModelBuilder;
389  friend class Aspose::Words::RW::Rtf::Reader::RtfReader;
390  friend class Aspose::Words::RW::Rtf::Reader::RtfReaderContext;
391  friend class Aspose::Words::RW::Rtf::Writer::RtfDocPrWriter;
392  friend class Aspose::Words::RW::Rtf::Writer::RtfHeaderWriter;
393  friend class Aspose::Words::RW::Rtf::Writer::RtfInfoGroupWriter;
394  friend class Aspose::Words::RW::Rtf::Writer::RtfParaPrWriter;
395  friend class Aspose::Words::RW::Rtf::Writer::RtfRevisionWriter;
396  friend class Aspose::Words::RW::Rtf::Writer::RtfWriter;
397  friend class Aspose::Words::RW::Wml::Reader::WmlDocPrReader;
398  friend class Aspose::Words::RW::Wml::Writer::WmlDocPrWriter;
399  friend class Aspose::Words::RW::Wml::Writer::WmlFontsWriter;
400  friend class Aspose::Words::RW::Wml::Writer::WmlWriter;
401  friend class Aspose::Words::RW::Xaml::Writer::XamlListWriter;
402 
403 public:
404  using Aspose::Words::CompositeNode::Clone;
405 
406 public:
407 
408  ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::DocumentBase> get_Document() const override;
409 
491 
494 
557 
560 
610 
668 
726 
846 
849 
898 
901 
924  ASPOSE_WORDS_SHARED_API System::Drawing::Color get_PageColor();
925 
927  ASPOSE_WORDS_SHARED_API void set_PageColor(System::Drawing::Color value);
928 
978  ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Node> ImportNode(System::SharedPtr<Aspose::Words::Node> srcNode, bool isImportChildren);
979 
1039 
1040 protected:
1041 
1042  virtual bool get_IsTrackRevisionsEnabled() = 0;
1043  int32_t get_TreeChangeCount() const;
1044  System::SharedPtr<Aspose::Words::Node> get_NullNode() const;
1045  System::SharedPtr<CsToCppPorter::MemoryManagement::ObjectsBag> get_HangingNodesCollection() const;
1046  System::SharedPtr<Aspose::Words::HtmlBlockCollection> get_HtmlBlockCollection() const;
1051  System::SharedPtr<Aspose::Words::Document> get_TemporaryDoc();
1054  bool get_IsIgnoreLastSectionBreak() const;
1055  void set_IsIgnoreLastSectionBreak(bool value);
1057 
1059  static const int32_t MapDivider;
1060 
1061  ASPOSE_WORDS_SHARED_API DocumentBase();
1062 
1063  ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Node> Clone(bool isCloneChildren, System::SharedPtr<Aspose::Words::INodeCloningListener> cloningListener) override;
1064  ASPOSE_WORDS_SHARED_API void ResetState();
1067  void MarkChanged();
1070  void AddInternalNodeChangingCallback(System::SharedPtr<Aspose::Words::INodeChangingCallback> callback);
1071  bool RemoveInternalNodeChangingCallback(System::SharedPtr<Aspose::Words::INodeChangingCallback> callback);
1072  virtual void SuspendTrackRevisions() = 0;
1073  virtual void ResumeTrackRevisions() = 0;
1074  void RemoveHangingNode(System::SharedPtr<Aspose::Words::Node> node);
1075  void AddHangingNode(System::SharedPtr<Aspose::Words::Node> node);
1076  void Warn(Aspose::Words::WarningType type, Aspose::Words::WarningSource source, System::String description);
1077  int32_t GetNextShapeId();
1078  virtual ASPOSE_WORDS_SHARED_API int32_t GetNextShapeId(System::SharedPtr<Aspose::Words::Drawing::ShapeBase> shape);
1079  void SetNextShapeId(int32_t value);
1080  virtual ASPOSE_WORDS_SHARED_API int32_t MapShapeToRange(int32_t currentId, int32_t lnkItemsCount);
1081  static bool HaveSameIdMap(int32_t id1, int32_t id2);
1082  static int32_t GetNearestMapId(int32_t id);
1083  int32_t GetNextDmlTextBoxId();
1084  void SetNextDmlTextBoxId(int32_t value);
1085  void ResetNextAnnotationId();
1086  int32_t GetNextAnnotationId();
1087  void SetBackgroundShapeSafe(System::SharedPtr<Aspose::Words::Drawing::Shape> shape);
1088  System::SharedPtr<Aspose::Words::Document> CreateTempDocument();
1089  virtual System::SharedPtr<Aspose::Words::Themes::Theme> GetThemeInternal() = 0;
1090 
1091  virtual ASPOSE_WORDS_SHARED_API ~DocumentBase();
1092 
1093 private:
1094 
1098  int32_t mTreeChangeCount;
1099  int32_t mNextShapeId;
1100  int32_t mNextDmlTextBoxId;
1101  int32_t mNextAnnotationId;
1104  bool mIsIgnoreLastSectionBreak;
1117 
1118  void RestoreSdtIds(System::SharedPtr<Aspose::Words::DocumentBase> lhs);
1120 
1121 };
1122 
1123 }
1124 }