private VNode BuildNumberingContainer() { var node = new VNode(_config.NumberingContainerTag, "", 0, 0); node.AddClasses(_config.NumberingContainerCls); return(node); }
public void RemoveClasses_Test() { var instance = new VNode(); instance.AddClasses("c1", "c2", "c3"); instance.RemoveClasses("c1", "c3"); Assert.AreEqual("c2", instance.Classes.Single()); }
public void AddClasses_EmptyTest() { var instance = new VNode(); instance.AddClasses("", null); Assert.AreEqual(0, instance.Classes.Count); }
private bool ProcessModifiedRun(IElementProcessingState state, OpenXmlElement modifedRun, string cssClass) { var vNode = new VNode("span", "", state.Index, modifedRun.InnerText.Length); vNode.AddClasses(cssClass); state.AddContent(vNode); state.CurrentVNode = vNode; return(true); }
public void AddClass_Test() { string className = "test-cls"; var instance = new VNode(); instance.AddClasses(className); Assert.IsTrue(instance.Classes.Contains(className)); Assert.AreEqual(className, instance.Attributes["class"]); }
private VNode BuildNumberingNumber(IParagraphData pData) { var numberingNumber = new VNode(_config.NumberingNumberTag); numberingNumber.AddClasses(_config.NumberingNumberCls); AddPadding(numberingNumber, pData); AddTrackChanges(numberingNumber, pData); AddNumberingNumberValue(numberingNumber, pData); return(numberingNumber); }
public void Transform_NoChildrenVNodeTest() { var expected = new XElement("div", "Some content"); expected.Add(new XAttribute("id", "test-id")); expected.Add(new XAttribute("class", "blue green red")); var vNode = new VNode("div") { Text = "Some content" }; vNode.SetAttribute("id", "test-id"); vNode.AddClasses("blue"); vNode.AddClasses("green"); vNode.AddClasses("red"); var result = VNodeXmlTransformer.ToXElement(vNode); Utils.AssertSameXml(expected, result); }
public bool ProcessElement(IElementProcessingState state, Run run) { var vSpan = new VNode { Tag = _config.RunTag, Index = state.Index, Length = run.InnerText.Length }; vSpan.AddClasses(_config.RunCls); state.AddContent(vSpan); state.CurrentVNode = vSpan; return(true); }
public bool ProcessElement(IElementProcessingState state, Hyperlink anchor) { var vAnchor = new VNode { Tag = _config.HyperLinkTag, Index = state.Index, Length = anchor.InnerText.Length }; vAnchor.AddClasses(_config.HyperLinkCls); state.AddContent(vAnchor); state.CurrentVNode = vAnchor; return(true); }
public void Clone_Test() { var node1 = new VNode { Index = 0, Length = 100, }; node1.AddClasses("ng-redirect"); node1.SetAttribute("id", "10"); node1.SetStyle("color", "red"); Assert.IsTrue(node1.Equals(node1)); }
private void AddTrackChanges(VNode numberingNumber, IParagraphData pData) { switch (pData.TrackChangesFlag) { case TrackChanges.TrackChangesFlag.Inserted: numberingNumber.AddClasses(_config.NumberingInsertedCls); break; case TrackChanges.TrackChangesFlag.Deleted: numberingNumber.AddClasses(_config.NumberingDeletedCls); break; case TrackChanges.TrackChangesFlag.Changed: var previousNumberingNumber = new VNode(_config.NumberingNumberTag, pData.PreviousVerbose); previousNumberingNumber.AddClasses(_config.PreviousNumberingNumber); numberingNumber.VLayers[0].Content.Add(previousNumberingNumber); numberingNumber.AddClasses(_config.NumberingChangedCls); break; default: break; } }
public void Initialize() { _p = new VNode("p", "", 0, 0); _numberingContainer = new VNode("div", "", 0, 0); _numberingContainer.AddClasses("numbering-container"); _spacerLeft = new VNode("div", "", 0, 0); _spacerLeft.AddClasses("spacer-left"); _spacerLeft.VLayers[0].Prefix.Add(_numberingContainer); _spacerRight = new VNode("div", "", 0, 0); _spacerRight.AddClasses("spacer_right"); _div = new VNode("div", "", 0, 0); _div.VLayers[0].Prefix.Add(_spacerLeft); _div.VLayers[0].Content.Add(_p); _div.VLayers[0].Suffix.Add(_spacerRight); _instance = new ElementProcessingState(); _instance.RootElement = new Paragraph(); _instance.RootVNode = _div; _instance.CurrentElement = new Paragraph(); _instance.CurrentVNode = _p; }
public bool ProcessElement(IElementProcessingState state, Paragraph p) { var layer = new VLayer(); foreach (Match m in regex.Matches(p.InnerText)) { var node = new VNode { Index = state.Index + m.Index, Length = m.Length, Tag = "span" }; node.AddClasses(CLASS_NAME); layer.Content.Add(node); } if (!layer.IsEmpty) { state.CurrentVNode.VLayers.Add(layer); } return(false); }
public bool ProcessElement(IElementProcessingState state, Paragraph paragraph) { if (!(paragraph.Parent is Body)) { var container = new VNode("div"); container.AddClasses("container"); state.AddContent(container); state.CurrentVNode = container; } var vP = new VNode { Tag = _config.ParagraphTag }; vP.Index = state.Index; vP.Length = paragraph.InnerText.Length; vP.Text = ""; // zero width white psace vP.AddClasses(_config.ParagraphCls); state.SetContext(new ParagraphContext { Parent = state.CurrentVNode }); state.AddContent(vP); state.CurrentVNode = vP; return(true); }
public void FlatternAndConvert_Test() { var expected = new XElement("div", new XAttribute("id", "100"), new XElement("div", new XAttribute("class", "margin-left"), new XElement("div", new XAttribute("class", "numbering-container"), new XElement("span", "1.1") ) ), new XElement("p", new XElement("span", "Some content is "), new XElement("a", new XAttribute("onclick", "doStuff()"), new XElement("span", "Defined") ), new XElement("span", " here.") ), new XElement("div", new XAttribute("class", "margin-right") ) ); string text = "Some content is Defined here."; string defined = "Defined"; // link var link = new VNode { Index = text.IndexOf(defined), Length = defined.Length, Tag = "a" }; link.SetAttribute("onclick", "doStuff()"); // prefix var nContainer = new VNode { Tag = "div" }; nContainer.AddClasses("numbering-container"); nContainer.VLayers[0].Content.Add(new VNode { Text = "1.1", Tag = "span" }); var marginLeft = new VNode { Tag = "div" }; marginLeft.AddClasses("margin-left"); marginLeft.VLayers[0].Content.Add(nContainer); // suffix var marginRight = new VNode("div"); marginRight.AddClasses("margin-right"); var vNode = new VNode( "div", "", 0, 0, new VNode( "p", "", 0, text.Length, new VNode[] { new VNode("span", text, 0, text.Length) }, new VNode[] { link } ) ); vNode.SetAttribute("id", "100"); vNode.VLayers[0].Prefix.Add(marginLeft); vNode.VLayers[0].Suffix.Add(marginRight); var result = VNodeXmlTransformer.Transform(vNode); Utils.AssertSameXml(expected, result); }