/// <summary>
/// Reads the content.
/// </summary>
private void ReadContent()
{
/*
* NOTICE:
* Do not change this order!
*/
// 1. load content file
this._document.XmlDoc = new XmlDocument();
this._document.XmlDoc.Load(Path.Combine(m_dirInfo.Dir, "content.xml"));
// 2. Read local styles
LocalStyleProcessor lsp = new LocalStyleProcessor(this._document, false);
lsp.ReadStyles();
// 3. Import common styles and read common styles
this.ImportCommonStyles();
lsp = new LocalStyleProcessor(this._document, true);
lsp.ReadStyles();
if (_document is TextDocument)
{
FormsProcessor fp= new FormsProcessor(this._document);
fp.ReadFormNodes();
TextDocument td = _document as TextDocument;
td.VariableDeclarations.Clear();
XmlNode nodeText = td.XmlDoc.SelectSingleNode(
TextDocumentHelper.OfficeTextPath, td.NamespaceManager);
if (nodeText != null)
{
XmlNode nodeVarDecls = nodeText.SelectSingleNode("text:variable-decls", td.NamespaceManager);
if (nodeVarDecls != null)
{
foreach (XmlNode vd in nodeVarDecls.CloneNode(true).SelectNodes("text:variable-decl", td.NamespaceManager))
{
td.VariableDeclarations.Add(new VariableDecl(td, vd));
}
nodeVarDecls.InnerXml = "";
}
}
}
// 4. Register warnig events
MainContentProcessor mcp = new MainContentProcessor(this._document);
mcp.Warning += mcp_OnWarning;
// 5. Read the content
mcp.ReadContentNodes();
// 6.1 load master pages and styles for TextDocument
if (this._document is TextDocument)
{
MasterPageFactory.RenameMasterStyles(
((TextDocument)this._document).DocumentStyles.Styles,
this._document.XmlDoc, this._document.NamespaceManager);
// Read the moved and renamed styles
lsp = new LocalStyleProcessor(this._document, false);
lsp.ReReadKnownAutomaticStyles();
new MasterPageFactory(m_dirInfo).FillFromXMLDocument(this._document as TextDocument);
}
}