public void Render(RenderContext context)
        {
            if (selectedPainter is RectanglePainter)
            {
                RectanglePainter painter = (RectanglePainter)selectedPainter;
                /* Top left angle */
                //context.DrawFillRectangle(painter.StartX - size / 2.0f, painter.StartY - size / 2.0f, painter.StartX - size / 2.0f, painter.StartY + size / 2.0f, PickColor);

                /* Top right angle */
                //context.DrawFillRectangle(painter.EndX - size / 2.0f, painter.StartY - size / 2.0f, painter.EndX - size / 2.0f, painter.StartY + size / 2.0f, PickColor);

                /* Bottom left angle */
                //context.DrawFillRectangle(painter.StartX - size / 2.0f, painter.EndY - size / 2.0f, painter.StartX - size / 2.0f, painter.EndY + size / 2.0f, PickColor);

                /* Bottom right angle */
                //context.DrawFillRectangle(painter.EndX - size / 2.0f, painter.EndY - size / 2.0f, painter.EndX - size / 2.0f, painter.EndY + size / 2.0f, PickColor);
            }
            else if (selectedPainter is PortConnection)
            {
                PortConnection painter = (PortConnection)selectedPainter;


                /* Bottom left angle */
                //context.DrawFillRectangle(painter.StartX - size / 2.0f, painter.EndY - size / 2.0f, painter.StartX - size / 2.0f, painter.EndY + size / 2.0f, PickColor);

                /* Bottom right angle */
                //context.DrawFillRectangle(painter.EndX - size / 2.0f, painter.EndY - size / 2.0f, painter.EndX - size / 2.0f, painter.EndY + size / 2.0f, PickColor);
            }
        }
Exemplo n.º 2
0
        public void Render(RenderContext context)
        {
            if (!PortPainter2Guid.Equals(Guid.Empty))
            {
                Point startPoint = Port1.GetConnectionPoint();
                Point endPoint   = Port2.GetConnectionPoint();

                if (IsSelected())
                {
                    lines.LinesColor = Colors.Red;
                }
                else
                {
                    lines.LinesColor = Colors.Black;
                }

                lines.Render(context);

                if (IsSelected())
                {
                    RectanglePainter rectangle = new RectanglePainter();
                    rectangle.Width           = 10;
                    rectangle.Height          = 10;
                    rectangle.Left            = startPoint.X - rectangle.Width / 2;
                    rectangle.Top             = startPoint.Y - rectangle.Height / 2;
                    rectangle.BackgroundColor = Colors.Blue;
                    rectangle.Render(context);

                    rectangle.Width           = 10;
                    rectangle.Height          = 10;
                    rectangle.Left            = endPoint.X - rectangle.Width / 2;
                    rectangle.Top             = endPoint.Y - rectangle.Height / 2;
                    rectangle.BackgroundColor = Colors.Blue;
                    rectangle.Render(context);
                    foreach (AnchorPoint point in anchors)
                    {
                        point.Render(context);
                    }
                }
            }
            else
            {
                Point startPoint = Port1.GetConnectionPoint();
                Point endPoint   = SecondPoint;

                context.DrawLine(startPoint.X, startPoint.Y, endPoint.X, endPoint.Y, LineColor);
            }
        }