public void DOM_CustomProperties() { // Create the doc var shape_nodes = new VA.DOM.ShapeList(); var vrect1 = new VA.DOM.Rectangle(1, 1, 9, 9); vrect1.Text = new VA.Text.Markup.TextElement("HELLO WORLD"); vrect1.CustomProperties = new Dictionary<string, VA.Shapes.CustomProperties.CustomPropertyCells>(); var cp1 = new VA.Shapes.CustomProperties.CustomPropertyCells(); cp1.Value = "FOOVALUE"; cp1.Label = "Foo Label"; var cp2 = new VA.Shapes.CustomProperties.CustomPropertyCells(); cp2.Value = "BARVALUE"; cp2.Label = "Bar Label"; vrect1.CustomProperties["FOO"] = cp1; vrect1.CustomProperties["BAR"] = cp2; shape_nodes.Add(vrect1); // Render it var app = this.GetVisioApplication(); var doc = this.GetNewDoc(); shape_nodes.Render(app.ActivePage); // Verify Assert.IsNotNull(vrect1.VisioShape); Assert.AreEqual("HELLO WORLD", vrect1.VisioShape.Text); Assert.IsTrue(VA.Shapes.CustomProperties.CustomPropertyHelper.Contains(vrect1.VisioShape, "FOO")); Assert.IsTrue(VA.Shapes.CustomProperties.CustomPropertyHelper.Contains(vrect1.VisioShape, "BAR")); doc.Close(true); }
public void DOM_DrawSimpleShape() { // Create the doc var page_node = new VA.DOM.Page(); var vrect1 = new VisioAutomation.DOM.Rectangle(1, 1, 9, 9); vrect1.Text = new VA.Text.Markup.TextElement("HELLO WORLD"); vrect1.Cells.FillForegnd = "rgb(255,0,0)"; page_node.Shapes.Add(vrect1); // Render it var app = this.GetVisioApplication(); var doc = this.GetNewDoc(); this.pagesize = new VA.Drawing.Size(10, 10); VisioAutomationTest.SetPageSize(app.ActivePage, this.pagesize); var page = page_node.Render(app.ActiveDocument); // Verify Assert.IsNotNull(vrect1.VisioShape); Assert.AreEqual("HELLO WORLD", vrect1.VisioShape.Text); app.ActiveDocument.Close(true); }
public void DOM_CustomProperties() { // Create the doc var shape_nodes = new VA.DOM.ShapeList(); var vrect1 = new VisioAutomation.DOM.Rectangle(1, 1, 9, 9); vrect1.Text = new VA.Text.Markup.TextElement("HELLO WORLD"); vrect1.CustomProperties = new Dictionary <string, VA.Shapes.CustomProperties.CustomPropertyCells>(); var cp1 = new VA.Shapes.CustomProperties.CustomPropertyCells(); cp1.Value = "FOOVALUE"; cp1.Label = "Foo Label"; var cp2 = new VA.Shapes.CustomProperties.CustomPropertyCells(); cp2.Value = "BARVALUE"; cp2.Label = "Bar Label"; vrect1.CustomProperties["FOO"] = cp1; vrect1.CustomProperties["BAR"] = cp2; shape_nodes.Add(vrect1); // Render it var app = this.GetVisioApplication(); var doc = this.GetNewDoc(); shape_nodes.Render(app.ActivePage); // Verify Assert.IsNotNull(vrect1.VisioShape); Assert.AreEqual("HELLO WORLD", vrect1.VisioShape.Text); Assert.IsTrue(VA.Shapes.CustomProperties.CustomPropertyHelper.Contains(vrect1.VisioShape, "FOO")); Assert.IsTrue(VA.Shapes.CustomProperties.CustomPropertyHelper.Contains(vrect1.VisioShape, "BAR")); doc.Close(true); }
public void DOM_DrawSimpleShape() { // Create the doc var page_node = new VA.DOM.Page(); var vrect1 = new VA.DOM.Rectangle(1, 1, 9, 9); vrect1.Text = new VA.Text.Markup.TextElement("HELLO WORLD"); vrect1.Cells.FillForegnd = "rgb(255,0,0)"; page_node.Shapes.Add(vrect1); // Render it var app = this.GetVisioApplication(); var doc = this.GetNewDoc(); VisioAutomationTest.SetPageSize(app.ActivePage, new VA.Drawing.Size(10, 10)); var page = page_node.Render(app.ActiveDocument); // Verify Assert.IsNotNull(vrect1.VisioShape); Assert.AreEqual("HELLO WORLD", vrect1.VisioShape.Text); app.ActiveDocument.Close(true); }
private void CreateBezierEdges(VA.DOM.ShapeList domshapes, MG.GeometryGraph msagl_graph) { // DRAW EDGES WITH BEZIERS foreach (var msagl_edge in msagl_graph.Edges) { var layoutconnector = (DGMODEL.Connector)msagl_edge.UserData; var vconnector = draw_edge_bezier(domshapes, layoutconnector, msagl_edge); layoutconnector.DOMNode = vconnector; domshapes.Add(vconnector); } var edge_pairs = from n in msagl_graph.Edges let lc = (DGMODEL.Connector)n.UserData select new { msagl_edge = n, layout_connector = lc, bezier_node = (VA.DOM.BezierCurve)lc.DOMNode }; foreach (var i in edge_pairs) { if (i.layout_connector.Cells != null) { i.bezier_node.Cells = i.layout_connector.Cells.ShallowCopy(); } } foreach (var i in edge_pairs.Where(item => !string.IsNullOrEmpty(item.layout_connector.Label))) { // this is a bezier connector // draw a manual box instead var label_bb = ToDocumentCoordinates(VA.Internal.MSAGLUtil.ToVARectangle(i.msagl_edge.Label.BoundingBox)); var vshape = new VA.DOM.Rectangle(label_bb); domshapes.Add(vshape); vshape.Cells = DefaultBezierConnectorShapeCells.ShallowCopy(); vshape.Text = new VA.Text.Markup.TextElement(i.layout_connector.Label); } }