public void GenerateBasicShapes(SymbolPaletteProperties symbolPalettes) { Palette basicShapes = new Palette("Basic Shapes"); basicShapes.Expanded = true; Node Rectangle = CreateNodes("Rectangle", "rectangle", null, null, "Process", 70, 45); basicShapes.AppendChild(Rectangle); Node Ellipse = CreateNodes("Ellipse", "ellipse", null, null, "Start/\nEnd", 70, 70); basicShapes.AppendChild(Ellipse); Collection points = new Collection(); points.Add(new DiagramPoint(25, 1)); points.Add(new DiagramPoint(99, 1)); points.Add(new DiagramPoint(75, 99)); points.Add(new DiagramPoint(1, 99)); Node Parallelogram = CreateNodes("Parallelogram", "polygon", points, null, "Input/\nOutput", 70, 70); basicShapes.AppendChild(Parallelogram); points = new Collection(); points.Add(new DiagramPoint(50, 1)); points.Add(new DiagramPoint(100, 50)); points.Add(new DiagramPoint(50, 100)); points.Add(new DiagramPoint(1, 50)); Node Dimond = CreateNodes("Dimond", "polygon", points, null, "Decision", 70, 70); basicShapes.AppendChild(Dimond); symbolPalettes.Palettes.Add(basicShapes); }
public void GeneratePalette(SymbolPaletteProperties symbolpalette) { Palette palette = new Palette() { Name = "BPMN Shapes", Expanded = true }; Collection items = new Collection(); items.Add(CreateBasicBPMN("Event", BPMNShapes.Event, 100, 100)); items.Add(CreateBasicBPMN("Gateway", BPMNShapes.Gateway, 100, 100)); items.Add(CreateBasicBPMN("Message", BPMNShapes.Message, 100, 100)); items.Add(CreateBasicBPMN("DataSource", BPMNShapes.DataSource, 100, 100)); items.Add(CreateBasicBPMN("DataObject", BPMNShapes.DataSource, 100, 100)); items.Add(CreateBasicBPMN("Group", BPMNShapes.Group, 100, 100)); items.Add(CreateTaskBPMN("Task", BPMNShapes.Activity, 100, 100)); items.Add(CreateTaskBPMN("SubprocessEventBased", BPMNShapes.Activity, 100, 100, true)); items.Add(CreateTaskBPMN("SubprocessTransaction", BPMNShapes.Activity, 100, 100, false)); items.Add(CreateTriggerBPMN("None", BPMNShapes.Event, 100, 100, BPMNTriggers.None)); items.Add(CreateTriggerBPMN("Message", BPMNShapes.Event, 100, 100, BPMNTriggers.Message)); items.Add(CreateTriggerBPMN("Timer", BPMNShapes.Event, 100, 100, BPMNTriggers.Timer)); items.Add(CreateExclusiveBPMN("Exclusive", BPMNShapes.Gateway, 100, 100, BPMNGateways.Exclusive)); items.Add(CreateExclusiveBPMN("Inclusive", BPMNShapes.Gateway, 100, 100, BPMNGateways.Inclusive)); items.Add(CreateServiceBPMN("Service", BPMNShapes.Gateway, 100, 100, BPMNTasks.Service)); items.Add(CreateServiceBPMN("Receive", BPMNShapes.Gateway, 100, 100, BPMNTasks.Receive)); items.Add(CompensationCallListBPMN("compensation_compensation1", BPMNShapes.Gateway, 100, 100, false)); items.Add(CompensationCallListBPMN("callList12", BPMNShapes.Gateway, 100, 100, true)); palette.Items = items; symbolpalette.Palettes.Add(palette); }
// // GET: /DiagramBuilder/Home/ public ActionResult Index() { DiagramBuilderModel diagramModel = new DiagramBuilderModel(); SymbolPaletteProperties symbolpalette = new SymbolPaletteProperties(); diagramModel.Palette(symbolpalette); diagramModel.GenerateBasicShapes(symbolpalette); diagramModel.GenerateFlowShapes(symbolpalette); diagramModel.GenerateArrowShapes(symbolpalette); diagramModel.GenerateElectricalShapes(symbolpalette); diagramModel.GenerateBpmnShapes(symbolpalette); diagramModel.GenerateConnectors(symbolpalette); diagramModel.GenerateSwimLanes(symbolpalette); MapPath(symbolpalette); SymbolPaletteProperties searchSymbolPalette = new SymbolPaletteProperties(); diagramModel.Palette(searchSymbolPalette); searchSymbolPalette.SelectedPaletteName = "filteredShapes"; Palette palette = new Palette(); palette.Name = "filteredShapes"; searchSymbolPalette.Palettes.Add(palette); ViewData["DiagramModel"] = diagramModel.Model; ViewData["SymbolPaletteModel"] = symbolpalette; ViewData["searchPaletteModel"] = searchSymbolPalette; SetDropDownDataSource(); SetDropDownTemplates(); return(View()); }
private void MapPath(SymbolPaletteProperties symbolPalette) { for (int i = 0; i < symbolPalette.Palettes.Count; i++) { Palette palette = symbolPalette.Palettes[i] as Palette; Dictionary <string, object> addInfo = palette.AddInfo as Dictionary <string, object>; addInfo["source"] = Url.Content(addInfo["source"].ToString()); } }
public void GenerateSwimlaneShapes(SymbolPaletteProperties symbolPalettes) { Palette swimlaneShapes = new Palette("Swimlane Shapes"); swimlaneShapes.Expanded = true; GenerateSwimlaneShape(swimlaneShapes, "stackCanvas1", 50, "#C7D4DF", "horizontal", 60, 140, "#f5f5f5", 70, 30); GenerateSwimlaneShape(swimlaneShapes, "stackCanvas2", 50, "#C7D4DF", "vertical", 140, 60, "#f5f5f5", 30, 70); GenerateSwimlanePhase(swimlaneShapes, "verticalPhase", "vertical"); GenerateSwimlanePhase(swimlaneShapes, "horizontalPhase", "horizontal"); symbolPalettes.Palettes.Add(swimlaneShapes); }
public void createSymbolPalette(SymbolPaletteProperties symbolpalette) { symbolpalette.Height = "100%"; symbolpalette.Width = "100%"; symbolpalette.PaletteItemHeight = 51; symbolpalette.PaletteItemWidth = 51; symbolpalette.PreviewHeight = 100; symbolpalette.PreviewWidth = 100; symbolpalette.SelectedPaletteName = "Basic Shapes"; symbolpalette.ShowPaletteItemText = false; symbolpalette.DiagramId = "DiagramContent"; }
public ActionResult BPMNDiagram() { DiagramProperties Diagram = new DiagramProperties(); SymbolPaletteProperties SymbolPalette = new SymbolPaletteProperties(); createSymbolPalette(SymbolPalette); GenerateDiagram(Diagram); GeneratePalette(SymbolPalette); ViewData["diagramModel"] = Diagram; ViewData["symbolPaletteModel"] = SymbolPalette; return(View()); }
// // GET: /Tooltip/ public ActionResult SymbolPalette() { SymbolPaletteProperties model = new SymbolPaletteProperties(); model.Height = "500px"; model.Width = "300px"; model.ShowPaletteItemText = true; model.SelectedPaletteName = "Flow Shapes"; model.Palettes.Add(CreateFlowShapes()); model.Palettes.Add(CreateConnectors()); model.Palettes.Add(CreateBasicShapes()); ViewData["SymbolPaletteModel"] = model; return(View()); }
public ActionResult Network() { DiagramProperties Diagram = new DiagramProperties(); SymbolPaletteProperties symbolPalette = new SymbolPaletteProperties(); createSymbolPaletteNetwork(symbolPalette); GenerateNaiveShapes(symbolPalette); createSymbolPaletteNode(symbolPalette); GenerateDiagram1(Diagram); Diagram.Create = "created"; ViewData["diagramModel"] = Diagram; ViewData["symbolPaletteModel"] = symbolPalette; return(View()); }
public void GenerateNaiveShapes(SymbolPaletteProperties symbolpalette) { Palette swimlaneShapes = new Palette("Native Shapes"); GenerateNativeShape(swimlaneShapes, "native", 40, 40, "svgTemplate7", 100, 100); GenerateNativeShape(swimlaneShapes, "native1", 40, 40, "svgTemplate8", 100, 100); GenerateNativeShape(swimlaneShapes, "native2", 40, 40, "svgTemplate6", 100, 100); GenerateNativeShape(swimlaneShapes, "native3", 25, 40, "svgTemplate4", 100, 100); GenerateNativeShape(swimlaneShapes, "native4", 40, 40, "svgTemplate3", 100, 100); GenerateNativeShape(swimlaneShapes, "native5", 40, 40, "svgTemplate5", 100, 100); GenerateNativeShape(swimlaneShapes, "native6", 40, 40, "svgTemplate1", 100, 100); GenerateNativeShape(swimlaneShapes, "native7", 40, 40, "svgTemplate2", 100, 100); swimlaneShapes.AppendChild(CreateDiagramNode("arrow1", 100, 100, "white", "", 100, 100, true)); symbolpalette.Palettes.Add(swimlaneShapes); }
public void createSymbolPaletteNode(SymbolPaletteProperties symbolpalette) { Palette connectors = new Palette("Connectors"); connectors.Expanded = true; Collection segments = new Collection(); Segment seg = new Syncfusion.JavaScript.DataVisualization.Models.Diagram.Segment(Segments.Orthogonal); segments.Add(seg); connectors.Items.Add(new Connector { Name = "link1", Segments = segments, SourcePoint = new DiagramPoint(0, 0), TargetPoint = new DiagramPoint(40, 40), LineWidth = 1 }); segments = new Collection(); seg = new Syncfusion.JavaScript.DataVisualization.Models.Diagram.Segment(Segments.Straight); segments.Add(seg); connectors.Items.Add(new Connector { Name = "link2", Segments = segments, SourcePoint = new DiagramPoint(0, 0), TargetPoint = new DiagramPoint(40, 40), LineWidth = 1 }); symbolpalette.Palettes.Add(connectors); }
public void GenerateActivityShapes(SymbolPaletteProperties symbolpalette) { Palette activityShapes = new Palette("UML Activity Shapes"); activityShapes.Expanded = true; createPaletteShapes(activityShapes, "AcceptingEvent", 80, 50, 70 / 2, 70 / 2, UMLActivityShapes.AcceptingEvent); createPaletteShapes(activityShapes, "Action", 80, 50, 20, 20, UMLActivityShapes.Action); createPaletteShapes(activityShapes, "SendSignal", 80, 50, 20, 20, UMLActivityShapes.SendSignal); createPaletteShapes(activityShapes, "MergeNode", 80, 50, 20, 20, UMLActivityShapes.MergeNode); createPaletteShapes(activityShapes, "Decision", 80, 50, 20, 20, UMLActivityShapes.Decision); createPaletteShapes(activityShapes, "FinalNode", 80, 50, 40, 25, UMLActivityShapes.FinalNode); createPaletteShapes(activityShapes, "JoinNode", 90, 50, 20, 20, UMLActivityShapes.JoinNode); createPaletteShapes(activityShapes, "ForkNode", 90, 50, 20, 20, UMLActivityShapes.ForkNode); createPaletteShapes(activityShapes, "InitialNode", 70, 70, 20, 20, UMLActivityShapes.InitialNode); createPaletteShapes(activityShapes, "TimeEvent", 50, 50, 20, 20, UMLActivityShapes.TimeEvent); createPaletteShapes(activityShapes, "ReceiveSignal", 80, 50, 20, 20, UMLActivityShapes.ReceiveSignal); createPaletteShapes(activityShapes, "StructuredNode", 80, 50, 20, 20, UMLActivityShapes.StructuredNode); createPaletteShapes(activityShapes, "Note", 80, 50, 20, 20, UMLActivityShapes.Note); createPaletteShapes(activityShapes, "AcceptingEvent", 80, 50, 20, 20, UMLActivityShapes.AcceptingEvent); symbolpalette.Palettes.Add(activityShapes); }
public ActionResult UMLActivityDiagram() { DiagramProperties model = new DiagramProperties(); model.Height = "100%"; model.Width = "100%"; model.PageSettings.ScrollLimit = ScrollLimit.Diagram; SymbolPaletteProperties symbolpalette = new SymbolPaletteProperties(); symbolpalette.Height = "100%"; symbolpalette.Width = "100%"; symbolpalette.PaletteItemHeight = 51; symbolpalette.PaletteItemWidth = 51; symbolpalette.PreviewHeight = 100; symbolpalette.PreviewWidth = 100; symbolpalette.SelectedPaletteName = "UML Activity Shapes"; symbolpalette.ShowPaletteItemText = false; symbolpalette.DiagramId = "DiagramContent"; GenerateActivityShapes(symbolpalette); model.Height = "100%"; model.Width = "100%"; model.SelectedItems.Constraints = SelectorConstraints.All ^ SelectorConstraints.Rotator; UMLActivityShape node1 = CreateNode("node1", 50, 50, 390, 40, "", UMLActivityShapes.InitialNode); UMLActivityShape node2 = CreateNode("node2", 100, 50, 390, 130, "Establish E-mail Communication", UMLActivityShapes.Action); UMLActivityShape node3 = CreateNode("node3", 340, 5, 390, 200, "", UMLActivityShapes.ForkNode); node3.Ports.Add(AddPort("n3aport", 0.13f, 0.5f, PortShapes.Circle, PortVisibility.Visible)); node3.Ports.Add(AddPort("n3bport", 0.85f, 0.5f, PortShapes.Circle, PortVisibility.Visible)); UMLActivityShape node4 = CreateNode("node4", 80, 50, 264, 270, "Send Email", UMLActivityShapes.Action); UMLActivityShape node5 = CreateNode("node5", 80, 50, 510, 270, "Receive Response", UMLActivityShapes.Action); UMLActivityShape node6 = CreateNode("node6", 60, 60, 264, 360, "", UMLActivityShapes.MergeNode); node6.Ports.Add(AddPort("n6aport", 0, 0.5f)); node6.Ports.Add(AddPort("n6bport", 1, 0.5f)); UMLActivityShape node7 = CreateNode("node7", 80, 50, 185, 450, "Encrypted Email", UMLActivityShapes.Action); UMLActivityShape node8 = CreateNode("node8", 80, 50, 340, 450, "Regular Email", UMLActivityShapes.Action); UMLActivityShape node9 = CreateNode("node9", 60, 60, 264, 540, "", UMLActivityShapes.MergeNode); node9.Ports.Add(AddPort("n9aport", 0, 0.5f)); node9.Ports.Add(AddPort("n9bport", 1, 0.5f)); UMLActivityShape node10 = CreateNode("node10", 50, 50, 510, 450, "Wait 2 hours after send", UMLActivityShapes.TimeEvent); UMLActivityShape node11 = CreateNode("node11", 60, 60, 510, 540, "", UMLActivityShapes.MergeNode); UMLActivityShape node11a = CreateNode("node11a", 50, 50, 650, 540, "", UMLActivityShapes.FinalNode); UMLActivityShape node12 = CreateNode("node12", 340, 50, 388.74, 617.5, "", UMLActivityShapes.ForkNode); node12.Ports.Add(AddPort("n12aport", 0.13f, 0.5f, PortShapes.Circle, PortVisibility.Visible)); node12.Ports.Add(AddPort("n12bport", 0.85f, 0.5f, PortShapes.Circle, PortVisibility.Visible)); UMLActivityShape node13 = CreateNode("node13", 100, 50, 388.74, 690, "Communication Established", UMLActivityShapes.Action); UMLActivityShape node14 = CreateNode("node14", 50, 50, 388, 765, "", UMLActivityShapes.FinalNode); Connector connector1 = new Connector() { SourceNode = "node1", TargetNode = "node2" }; Connector connector2 = new Connector() { SourceNode = "node2", TargetNode = "node3" }; Connector connector3 = new Connector() { SourceNode = "node3", TargetNode = "node4", SourcePort = "n3aport" }; Connector connector4 = new Connector() { SourceNode = "node3", TargetNode = "node5", SourcePort = "n3bport" }; Connector connector5 = new Connector() { SourceNode = "node4", TargetNode = "node6" }; Connector connector6 = new Connector() { SourceNode = "node5", TargetNode = "node10" }; Connector connector7 = new Connector() { SourceNode = "node6", TargetNode = "node7", SourcePort = "n6aport", Segments = new Collection() { new Segment(Segments.Orthogonal) }, Labels = new Collection() { new Label() { Text = "[private content]", FillColor = "white", Wrapping = TextWrapping.Wrap } } }; Connector connector8 = new Connector() { SourceNode = "node6", TargetNode = "node8", SourcePort = "n6bport", Segments = new Collection() { new Segment(Segments.Orthogonal) }, Labels = new Collection() { new Label() { Text = "[else]", FillColor = "white", Wrapping = TextWrapping.Wrap } } }; Connector connector9 = new Connector() { SourceNode = "node7", TargetNode = "node9", TargetPort = "n9aport", Segments = new Collection() { new Segment(Segments.Orthogonal) } }; Connector connector10 = new Connector() { SourceNode = "node8", TargetNode = "node9", TargetPort = "n9bport", Segments = new Collection() { new Segment(Segments.Orthogonal) } }; Connector connector11 = new Connector() { SourceNode = "node10", TargetNode = "node11" }; Connector connector12 = new Connector() { SourceNode = "node9", TargetNode = "node12", TargetPort = "n12aport" }; Connector connector13 = new Connector() { SourceNode = "node11", TargetNode = "node11a", Labels = new Collection() { new Label() { Text = "[no reply]||[error]", FillColor = "white", Wrapping = TextWrapping.Wrap } } }; Connector connector14 = new Connector() { SourceNode = "node11", TargetNode = "node12", TargetPort = "n12bport", Labels = new Collection() { new Label() { Text = "valid reply", FillColor = "white", Wrapping = TextWrapping.Wrap } } }; Connector connector15 = new Connector() { SourceNode = "node12", TargetNode = "node13" }; Connector connector16 = new Connector() { SourceNode = "node13", TargetNode = "node14" }; model.Nodes.Add(node1); model.Nodes.Add(node2); model.Nodes.Add(node3); model.Nodes.Add(node4); model.Nodes.Add(node5); model.Nodes.Add(node6); model.Nodes.Add(node7); model.Nodes.Add(node8); model.Nodes.Add(node9); model.Nodes.Add(node10); model.Nodes.Add(node11); model.Nodes.Add(node11a); model.Nodes.Add(node12); model.Nodes.Add(node13); model.Nodes.Add(node14); model.Connectors.Add(connector1); model.Connectors.Add(connector2); model.Connectors.Add(connector3); model.Connectors.Add(connector4); model.Connectors.Add(connector5); model.Connectors.Add(connector6); model.Connectors.Add(connector7); model.Connectors.Add(connector8); model.Connectors.Add(connector9); model.Connectors.Add(connector10); model.Connectors.Add(connector11); model.Connectors.Add(connector12); model.Connectors.Add(connector13); model.Connectors.Add(connector14); model.Connectors.Add(connector15); model.Connectors.Add(connector16); model.NodeCollectionChange = "nodeCollectionChange"; model.EnableContextMenu = false; ViewData["diagramModel"] = model; ViewData["SymbolPaletteModel"] = symbolpalette; return(View()); }
public ActionResult DiagramEvents() { SymbolPaletteProperties palette = new SymbolPaletteProperties(); SwimlaneModel lane = new SwimlaneModel(); lane.createSymbolPalette(palette); lane.GenerateBasicShapes(palette); lane.GenerateSwimlaneShapes(palette); lane.GenerateConnectors(palette); ViewData["SymbolPaletteModel"] = palette; DiagramProperties model = new DiagramProperties(); model.Height = "600px"; model.Width = "100%"; model.PageSettings.ScrollLimit = ScrollLimit.Diagram; model.SelectionChange = "selectionChange"; model.SizeChange = "sizeChanged"; model.ConnectorCollectionChange = "collectionChanged"; model.NodeCollectionChange = "collectionChanged"; model.TextChange = "textChanged"; model.SegmentChange = "segmentChanged"; model.RotationChange = "eventLog"; model.ConnectorTargetChange = "endPointChanged"; model.ConnectorSourceChange = "endPointChanged"; model.ScrollChange = "scrollChanged"; model.DoubleClick = "doubleClickd"; model.DragEnter = "eventLog"; model.DragOver = "eventLog"; model.DragLeave = "eventLog"; model.Drag = "dragd"; model.Drop = "eventLog"; model.GroupChange = "eventLog"; model.HistoryChange = "eventLog"; model.Click = "clicked"; model.ConnectionChange = "eventLog"; model.ContextMenuBeforeOpen = "eventLog"; model.ContextMenuClick = "contextMenuClicked"; FlowShape node1 = CreateDiagramNode("node1", 100, 60, 200, 50, "Start", FlowShapes.Terminator, "#05ADA4"); FlowShape node2 = CreateDiagramNode("node2", 100, 70, 200, 150, "Process1", FlowShapes.Process, "#33AACA"); FlowShape node3 = CreateDiagramNode("node3", 90, 90, 200, 270, "Decision1", FlowShapes.Decision, "#83A93F"); FlowShape node4 = CreateDiagramNode("node4", 90, 90, 100, 450, "Decision2", FlowShapes.Decision, "#83A93F"); FlowShape node5 = CreateDiagramNode("node5", 90, 90, 300, 450, "Process2", FlowShapes.Process, "#83A93F"); FlowShape node6 = CreateDiagramNode("node6", 100, 60, 200, 550, "End", FlowShapes.Terminator, "#05ADA4"); ConnectDiagramNode(model, node1, node2, ""); ConnectDiagramNode(model, node2, node3, ""); ConnectDiagramNode(model, node3, node4, "No"); ConnectDiagramNode(model, node3, node5, "Yes"); Connector connector = ConnectDiagramNode(model, node4, node6, "No"); connector.Segments = new Collection() { new Segment() { Type = Segments.Orthogonal, Length = 50, Direction = "left" } }; connector = ConnectDiagramNode(model, node5, node6, "Yes"); connector.Segments = new Collection() { new Segment() { Type = Segments.Orthogonal, Length = 50, Direction = "right" } }; model.Nodes.Add(node1); model.Nodes.Add(node2); model.Nodes.Add(node3); model.Nodes.Add(node4); model.Nodes.Add(node5); model.Nodes.Add(node6); model.EnableContextMenu = false; ViewData["DiagramModel"] = model; return(View()); }