예제 #1
0
 public FlattenStyles(string input, string output, XmlDocument xmlCss, SortedSet <string> needHigher, bool noXmlHeader, string decorateStyles)
     : base(input, output, noXmlHeader)
 {
     _needHigher   = needHigher;
     StyleDecorate = decorateStyles;
     MakeRuleIndex(xmlCss);
     IdentifyDisplayBlockRules(xmlCss);
     _xmlCss            = xmlCss;
     Suffix             = string.Empty;
     _stylesheetPresent = false;
     DeclareBefore(XmlNodeType.Attribute, SaveClassLangDir);
     DeclareBefore(XmlNodeType.Element, Program.EntryReporter);
     DeclareBefore(XmlNodeType.Element, SaveSibling);
     DeclareBefore(XmlNodeType.Element, InsertBefore);
     DeclareBefore(XmlNodeType.Element, RemoveExtraStylesheets);
     DeclareBefore(XmlNodeType.EndElement, SetForEnd);
     DeclareBefore(XmlNodeType.Text, TextNode);
     DeclareBefore(XmlNodeType.EntityReference, OtherNode);
     DeclareBefore(XmlNodeType.Whitespace, OtherNode);
     DeclareBefore(XmlNodeType.SignificantWhitespace, OtherNode);
     DeclareBefore(XmlNodeType.CDATA, OtherNode);
     DeclareBeforeEnd(XmlNodeType.EndElement, DivEnds);
     DeclareBeforeEnd(XmlNodeType.EndElement, UnsaveClass);
     DeclareBeforeEnd(XmlNodeType.EndElement, UnsaveLang);
     SpaceClass = "sp";
     Classes.RemoveRange(0, Classes.Count);
     Langs.RemoveRange(0, Langs.Count);
 }
예제 #2
0
 public InsertHyphens(string input, string output, string langCodeName, Dictionary <string, string> hyphenatedWords)
     : base(input, output, false)
 {
     _lang            = langCodeName.Split(':')[0];
     _hyphenatedWords = hyphenatedWords;
     SetWordPattern();
     DeclareBefore(XmlNodeType.Attribute, SaveLang);
     DeclareBefore(XmlNodeType.Text, TextNode);
     DeclareAfter(XmlNodeType.Text, StopSkipping);
     Langs.RemoveRange(0, Langs.Count);
 }