Beispiel #1
0
 public borders(borders val)
 {
     left   = val.left;
     right  = val.right;
     top    = val.top;
     bottom = val.bottom;
     front  = val.front; //:h3ml
     back   = val.back;  //:h3ml
     radius = val.radius;
 }
Beispiel #2
0
        protected override void DrawBorders(UIntPtr hdc, ref borders borders, ref position draw_pos, bool root)
        {
            // Skinny controls can push borders off, in which case we can't create a rect with a negative size.
            if (draw_pos.width < 0)
            {
                draw_pos.width = 0;
            }
            if (draw_pos.height < 0)
            {
                draw_pos.height = 0;
            }
            Rect rect = new Rect(draw_pos.x, draw_pos.y, draw_pos.width, draw_pos.height);
            var  br   = borders.radius;

            if (borders.top.width > 0)
            {
                Point p1 = new Point(rect.Left + br.top_left_x, rect.Top);
                Point p2 = new Point(rect.Right - br.top_right_x, rect.Top);
                Point p3 = new Point(rect.Right, rect.Top);
                Point p4 = new Point(rect.Right, rect.Top + br.top_right_y);
                DrawCurvedPath(p1, p2, p3, p4, ref borders.top.color, borders.top.width);
                //            DrawRect(rect.Left + br.top_left_x, rect.Top, rect.Width - br.top_left_x - br.top_right, GetBrush(ref borders.top.color));
            }

            if (borders.right.width > 0)
            {
                Point p1 = new Point(rect.Right, rect.Top + br.top_right_y);
                Point p2 = new Point(rect.Right, rect.Bottom - br.bottom_right_y);
                Point p3 = new Point(rect.Right, rect.Bottom);
                Point p4 = new Point(rect.Right - br.bottom_right_x, rect.Bottom);
                DrawCurvedPath(p1, p2, p3, p4, ref borders.right.color, borders.right.width);
                //            DrawRect(p4.x,  draw_pos.x + draw_pos.width - borders.right.width, draw_pos.y, borders.right.width, draw_pos.height, GetBrush(ref borders.right.color));
            }

            if (borders.bottom.width > 0)
            {
                Point p1 = new Point(rect.Right - br.bottom_right_x, rect.Bottom);
                Point p2 = new Point(rect.Left + br.bottom_left_x, rect.Bottom);
                Point p3 = new Point(rect.Left, rect.Bottom);
                Point p4 = new Point(rect.Left, rect.Bottom - br.bottom_left_y);
                DrawCurvedPath(p1, p2, p3, p4, ref borders.bottom.color, borders.bottom.width);
                //           DrawRect(draw_pos.x, draw_pos.y + draw_pos.height - borders.bottom.width, draw_pos.width, borders.bottom.width, GetBrush(ref borders.bottom.color));
            }

            if (borders.left.width > 0)
            {
                Point p1 = new Point(rect.Left, rect.Bottom - br.bottom_left_y);
                Point p2 = new Point(rect.Left, rect.Top + br.top_left_y);
                Point p3 = new Point(rect.Left, rect.Top);
                Point p4 = new Point(rect.Left + br.top_left_x, rect.Top);
                DrawCurvedPath(p1, p2, p3, p4, ref borders.left.color, borders.left.width);
                //            DrawRect(draw_pos.x, draw_pos.y, borders.left.width, draw_pos.height, GetBrush(ref borders.left.color));
            }
        }
Beispiel #3
0
        protected override void DrawBorders(UIntPtr hdc, ref borders borders, ref position draw_pos, bool root)
        {
            var rect = draw_pos.ToRect();
            var br   = borders.radius;

            if (borders.top.width > 0)
            {
                Context.MoveTo(rect.Left + br.top_left_x, rect.Top);
                Context.AddLineToPoint(rect.Right - br.top_right_x, rect.Top);
                Context.AddQuadCurveToPoint(rect.Right, rect.Top, rect.Right, rect.Top + br.top_right_y);

                Context.SetLineWidth(borders.top.width);
                Context.SetStrokeColor(borders.top.color.ToCGColor());
                Context.StrokePath();
            }
            if (borders.right.width > 0)
            {
                Context.MoveTo(rect.Right, rect.Top + br.top_right_y);
                Context.AddLineToPoint(rect.Right, rect.Bottom - br.bottom_right_y);
                Context.AddQuadCurveToPoint(rect.Right, rect.Bottom, rect.Right - br.bottom_right_x, rect.Bottom);

                Context.SetLineWidth(borders.right.width);
                Context.SetStrokeColor(borders.right.color.ToCGColor());
                Context.StrokePath();
            }
            if (borders.bottom.width > 0)
            {
                Context.MoveTo(rect.Right - br.bottom_right_x, rect.Bottom);
                Context.AddLineToPoint(rect.Left + br.bottom_left_x, rect.Bottom);
                Context.AddQuadCurveToPoint(rect.Left, rect.Bottom, rect.Left, rect.Bottom - br.bottom_left_y);

                Context.SetLineWidth(borders.bottom.width);
                Context.SetStrokeColor(borders.bottom.color.ToCGColor());
                Context.StrokePath();
            }
            if (borders.left.width > 0)
            {
                Context.MoveTo(rect.Left, rect.Bottom - br.bottom_left_y);
                Context.AddLineToPoint(rect.Left, rect.Top + br.top_left_y);
                Context.AddQuadCurveToPoint(rect.Left, rect.Top, rect.Left + br.top_left_x, rect.Top);

                Context.SetLineWidth(borders.left.width);
                Context.SetStrokeColor(borders.left.color.ToCGColor());
                Context.StrokePath();
            }
        }
Beispiel #4
0
        public void draw_borders(object hdc, borders borders, position draw_pos, bool root = false)
        {
            var gdi = (Graphics)hdc;

            apply_clip(gdi);
            // draw left border
            if (borders.left.width != 0 && borders.left.style > border_style.hidden)
            {
                using (var pen = new Pen(Color.FromArgb(borders.left.color.red, borders.left.color.green, borders.left.color.blue)))
                    for (var x = 0; x < borders.left.width; x++)
                    {
                        gdi.DrawLine(pen, new Point(draw_pos.left + x, draw_pos.top), new Point(draw_pos.left + x, draw_pos.bottom));
                    }
            }
            // draw right border
            if (borders.right.width != 0 && borders.right.style > border_style.hidden)
            {
                using (var pen = new Pen(Color.FromArgb(borders.right.color.red, borders.right.color.green, borders.right.color.blue)))
                    for (var x = 0; x < borders.right.width; x++)
                    {
                        gdi.DrawLine(pen, new Point(draw_pos.right - x - 1, draw_pos.top), new Point(draw_pos.right - x - 1, draw_pos.bottom));
                    }
            }
            // draw top border
            if (borders.top.width != 0 && borders.top.style > border_style.hidden)
            {
                using (var pen = new Pen(Color.FromArgb(borders.top.color.red, borders.top.color.green, borders.top.color.blue)))
                    for (var y = 0; y < borders.top.width; y++)
                    {
                        gdi.DrawLine(pen, new Point(draw_pos.left, draw_pos.top + y), new Point(draw_pos.right, draw_pos.top + y));
                    }
            }
            // draw bottom border
            if (borders.bottom.width != 0 && borders.bottom.style > border_style.hidden)
            {
                using (var pen = new Pen(Color.FromArgb(borders.bottom.color.red, borders.bottom.color.green, borders.bottom.color.blue)))
                    for (var y = 0; y < borders.bottom.width; y++)
                    {
                        gdi.DrawLine(pen, new Point(draw_pos.left, draw_pos.bottom - y - 1), new Point(draw_pos.right, draw_pos.bottom - y - 1));
                    }
            }
            release_clip(gdi);
        }
Beispiel #5
0
 var(borders, shifts) = goodSuffixHeuristic;
Beispiel #6
0
 public void draw_borders(object hdc, borders borders, position draw_pos, bool root)
 {
 }
Beispiel #7
0
 public CollisionEdge(borders pBorderType, Vector2 pBounds)
 {
     borderType = pBorderType;
     bounds     = pBounds;
 }