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; }
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)); } }
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(); } }
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); }
var(borders, shifts) = goodSuffixHeuristic;
public void draw_borders(object hdc, borders borders, position draw_pos, bool root) { }
public CollisionEdge(borders pBorderType, Vector2 pBounds) { borderType = pBorderType; bounds = pBounds; }