private FlowchartModel CreateModel() { var model = new FlowchartModel(); var start = new FlowNode(NodeKinds.Start); start.Row = 0; start.Column = 1; start.Text = "Start"; var ac0 = new FlowNode(NodeKinds.Action); ac0.Row = 1; ac0.Column = 1; ac0.Text = "i = 0"; var cond = new FlowNode(NodeKinds.Condition); cond.Row = 2; cond.Column = 1; cond.Text = "i < n"; var ac1 = new FlowNode(NodeKinds.Action); ac1.Row = 3; ac1.Column = 1; ac1.Text = "do something"; var ac2 = new FlowNode(NodeKinds.Action); ac2.Row = 4; ac2.Column = 1; ac2.Text = "i++"; var end = new FlowNode(NodeKinds.End); end.Row = 3; end.Column = 2; end.Text = "End"; model.Nodes.Add(start); model.Nodes.Add(cond); model.Nodes.Add(ac0); model.Nodes.Add(ac1); model.Nodes.Add(ac2); model.Nodes.Add(end); model.Links.Add(new Link(start, PortKinds.Bottom, ac0, PortKinds.Top)); model.Links.Add(new Link(ac0, PortKinds.Bottom, cond, PortKinds.Top)); model.Links.Add(new Link(cond, PortKinds.Bottom, ac1, PortKinds.Top) { Text = "True" }); model.Links.Add(new Link(cond, PortKinds.Right, end, PortKinds.Top) { Text = "False" }); model.Links.Add(new Link(ac1, PortKinds.Bottom, ac2, PortKinds.Top)); model.Links.Add(new Link(ac2, PortKinds.Bottom, cond, PortKinds.Top)); return(model); }
private FlowchartModel CreateModel() { var model = new FlowchartModel(); var start = new FlowNode(NodeKinds.Start); start.Row = 0; start.Column = 1; start.Text = "Start"; var ac0 = new FlowNode(NodeKinds.Action); ac0.Row = 1; ac0.Column = 1; ac0.Text = "i = 0"; var cond = new FlowNode(NodeKinds.Condition); cond.Row = 2; cond.Column = 1; cond.Text = "i < n"; var ac1 = new FlowNode(NodeKinds.Action); ac1.Row = 3; ac1.Column = 1; ac1.Text = "do something"; var ac2 = new FlowNode(NodeKinds.Action); ac2.Row = 4; ac2.Column = 1; ac2.Text = "i++"; var end = new FlowNode(NodeKinds.End); end.Row = 3; end.Column = 2; end.Text = "End"; //model.Nodes.Add(start); //model.Nodes.Add(cond); //model.Nodes.Add(ac0); //model.Nodes.Add(ac1); //model.Nodes.Add(ac2); //model.Nodes.Add(end); //model.Links.Add(new Link(start, PortKinds.Bottom, ac0, PortKinds.Top)); //model.Links.Add(new Link(ac0, PortKinds.Bottom, cond, PortKinds.Top)); //model.Links.Add(new Link(cond, PortKinds.Bottom, ac1, PortKinds.Top) { Text = "True" }); //model.Links.Add(new Link(cond, PortKinds.Right, end, PortKinds.Top) { Text = "False" }); //model.Links.Add(new Link(ac1, PortKinds.Bottom, ac2, PortKinds.Top)); //model.Links.Add(new Link(ac2, PortKinds.Bottom, cond, PortKinds.Top)); var cpn = new FlowNode(NodeKinds.ConstantPayload); cpn.Row = 0; cpn.Column = 0; var fpn = new FlowNode(NodeKinds.FlexiblePaylaod); fpn.Row = 2; fpn.Column = 0; var dn = new FlowNode(NodeKinds.Distribute); dn.Row = 1; dn.Column = 2; var otn = new FlowNode(NodeKinds.Output); otn.Row = 1; otn.Column = 4; model.Nodes.Add(otn); model.Nodes.Add(cpn); model.Nodes.Add(fpn); model.Nodes.Add(dn); model.Links.Add(new Link(cpn, PortKinds.Right, dn, PortKinds.Top)); //dn.AddNode(cpn); model.Links.Add(new Link(fpn, PortKinds.Right, dn, PortKinds.Top)); //dn.AddNode(fpn); model.Links.Add(new Link(dn, PortKinds.Right, otn, PortKinds.Top)); //otn.AddNode(dn); return(model); }