Exemplo n.º 1
0
        private async Task DrawShapeChange(Syncfusion.Blazor.SplitButtons.MenuEventArgs args)
        {
            var diagram = Parent.DiagramContent.Diagram;

            if (args.Item.Text == "Rectangle")
            {
                Parent.DiagramContent.DiagramDrawingObject = new DiagramNode()
                {
                    Shape = new DiagramShape()
                    {
                        Type = Shapes.Basic, BasicShape = BasicShapes.Rectangle
                    }, Style = new NodeShapeStyle()
                    {
                        StrokeWidth = 2
                    }
                };
            }
            else if (args.Item.Text == "Ellipse")
            {
                Parent.DiagramContent.DiagramDrawingObject = new DiagramNode()
                {
                    Shape = new DiagramShape()
                    {
                        Type = Shapes.Basic, BasicShape = BasicShapes.Ellipse
                    }, Style = new NodeShapeStyle()
                    {
                        StrokeWidth = 2
                    }
                };
            }
            else if (args.Item.Text == "Polygon")
            {
                Parent.DiagramContent.DiagramDrawingObject = new DiagramNode()
                {
                    Shape = new DiagramShape()
                    {
                        Type = Shapes.Basic, BasicShape = BasicShapes.Polygon
                    }, Style = new NodeShapeStyle()
                    {
                        StrokeWidth = 2
                    }
                };
            }
            Parent.DiagramContent.DiagramTool = DiagramTools.ContinuousDraw;
            await diagram.DataBind().ConfigureAwait(true);

            await removeSelectedToolbarItem("shape").ConfigureAwait(true);

            Parent.DiagramContent.StateChanged();
            //document.getElementById("btnDrawShape").classList.add("tb-item-selected");
        }
Exemplo n.º 2
0
        private async Task DrawConnectorChange(Syncfusion.Blazor.SplitButtons.MenuEventArgs args)
        {
            var diagram = Parent.DiagramContent.Diagram;

            if (args.Item.Text == "Straight Line")
            {
                Parent.DiagramContent.DiagramDrawingObject = new DiagramConnector()
                {
                    Type = Segments.Straight, Constraints = ConnectorConstraints.Default, Style = new ConnectorShapeStyle()
                    {
                        StrokeWidth = 2
                    }
                };
            }
            else if (args.Item.Text == "Orthogonal Line")
            {
                Parent.DiagramContent.DiagramDrawingObject = new DiagramConnector()
                {
                    Type = Segments.Orthogonal, Constraints = ConnectorConstraints.Default, Style = new ConnectorShapeStyle()
                    {
                        StrokeWidth = 2
                    }
                };
            }
            else if (args.Item.Text == "Bezier")
            {
                Parent.DiagramContent.DiagramDrawingObject = new DiagramConnector()
                {
                    Type = Segments.Bezier, Constraints = ConnectorConstraints.Default, Style = new ConnectorShapeStyle()
                    {
                        StrokeWidth = 2
                    }
                };
            }
            Parent.DiagramContent.DiagramTool = DiagramTools.ContinuousDraw;
            await diagram.ClearSelection().ConfigureAwait(true);

            await removeSelectedToolbarItem("connector").ConfigureAwait(true);

            await diagram.DataBind().ConfigureAwait(true);

            Parent.DiagramContent.StateChanged();
            //document.getElementById("btnDrawConnector').classList.add('tb-item-selected');
        }
Exemplo n.º 3
0
        private async Task OrderCommandsChange(Syncfusion.Blazor.SplitButtons.MenuEventArgs args)
        {
            var diagram = Parent.DiagramContent.Diagram;

            if (args.Item.Text == "Send To Back")
            {
                await diagram.SendToBack().ConfigureAwait(true);
            }
            else if (args.Item.Text == "Bring To Front")
            {
                await diagram.BringToFront().ConfigureAwait(true);
            }
            else if (args.Item.Text == "Bring Forward")
            {
                //selectedItem.isModified = true;
                await diagram.MoveForward().ConfigureAwait(true);
            }
            else if (args.Item.Text == "Send Backward")
            {
                //selectedItem.isModified = true;
                await diagram.SendBackward().ConfigureAwait(true);
            }
        }
Exemplo n.º 4
0
        private async Task DrawZoomChange(Syncfusion.Blazor.SplitButtons.MenuEventArgs args)
        {
            if (ZoomItemDropdownContent != args.Item.Text)
            {
                var diagram = Parent.DiagramContent.Diagram;
                if (args.Item.Text == "Custom")
                {
                }
                else if (args.Item.Text == "Fit To Screen")
                {
                    ZoomItemDropdownContent = "Fit ...";
                    IFitOptions fitoption = new IFitOptions()
                    {
                        Mode   = FitModes.Page,
                        Region = DiagramRegions.Content,
                        Margin = new DiagramMargin()
                        {
                            Left = 0, Top = 0, Right = 0, Bottom = 0
                        }
                    };
                    //Parent.DiagramContent.DigramFitOption = fitoption;
                    await Parent.DiagramContent.Diagram.FitToPage(fitoption).ConfigureAwait(true);
                }
                else
                {
                    var         currentZoom = Parent.DiagramContent.CurrentZoom;
                    ZoomOptions zoom        = new ZoomOptions();
                    switch (args.Item.Text)
                    {
                    case "400%":
                        zoom.ZoomFactor = (4 / currentZoom) - 1;
                        break;

                    case "300%":
                        zoom.ZoomFactor = (3 / currentZoom) - 1;
                        break;

                    case "200%":
                        zoom.ZoomFactor = (2 / currentZoom) - 1;
                        break;

                    case "150%":
                        zoom.ZoomFactor = (1.5 / currentZoom) - 1;
                        break;

                    case "100%":
                        zoom.ZoomFactor = (1 / currentZoom) - 1;
                        break;

                    case "75%":
                        zoom.ZoomFactor = (0.75 / currentZoom) - 1;
                        break;

                    case "50%":
                        zoom.ZoomFactor = (0.5 / currentZoom) - 1;
                        break;

                    case "25%":
                        zoom.ZoomFactor = (0.25 / currentZoom) - 1;
                        break;
                    }
                    ZoomItemDropdownContent = args.Item.Text;
#pragma warning disable CA1305 // Specify IFormatProvider
                    Parent.DiagramContent.CurrentZoom = double.Parse(args.Item.Text.Remove(args.Item.Text.Length - 1, 1)) / 100;
#pragma warning restore CA1305 // Specify IFormatProvider
                    await diagram.ZoomTo(zoom).ConfigureAwait(true);
                }
            }
            Parent.DiagramContent.StateChanged();
        }