コード例 #1
0
        public ActionResult Swimlane()
        {
            SwimlaneModel swimlaneModel = new SwimlaneModel();

            swimlaneModel.createSymbolPalette(symbolPalette);
            swimlaneModel.GenerateBasicShapes(symbolPalette);
            swimlaneModel.GenerateSwimlaneShapes(symbolPalette);
            swimlaneModel.GenerateConnectors(symbolPalette);
            swimlaneModel.GenerateDiagram(diagram);
            diagram.PageSettings.ScrollLimit = ScrollLimit.Diagram;
            ViewData["DiagramModel"]         = diagram;
            ViewData["SymbolPaletteModel"]   = symbolPalette;
            return(View());
        }
コード例 #2
0
        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());
        }