gtk: Get rid of GtkCssCorner

We have GskCorner now which is identical.
This commit is contained in:
Benjamin Otte
2016-12-13 19:54:40 +01:00
parent 59d638a09f
commit 6d012fb4ea
5 changed files with 180 additions and 186 deletions

View File

@@ -687,11 +687,11 @@ corner_mask_equal (CornerMask *mask1,
} }
static void static void
draw_shadow_corner (const GtkCssValue *shadow, draw_shadow_corner (const GtkCssValue *shadow,
cairo_t *cr, cairo_t *cr,
GtkRoundedBox *box, GtkRoundedBox *box,
GtkRoundedBox *clip_box, GtkRoundedBox *clip_box,
GtkCssCorner corner, GskCorner corner,
cairo_rectangle_int_t *drawn_rect) cairo_rectangle_int_t *drawn_rect)
{ {
gdouble radius, clip_radius; gdouble radius, clip_radius;
@@ -711,13 +711,13 @@ draw_shadow_corner (const GtkCssValue *shadow,
clip_radius = _gtk_cairo_blur_compute_pixels (radius); clip_radius = _gtk_cairo_blur_compute_pixels (radius);
overlapped = FALSE; overlapped = FALSE;
if (corner == GTK_CSS_TOP_LEFT || corner == GTK_CSS_BOTTOM_LEFT) if (corner == GSK_CORNER_TOP_LEFT || corner == GSK_CORNER_BOTTOM_LEFT)
{ {
x1 = floor (box->box.x - clip_radius); x1 = floor (box->box.x - clip_radius);
x2 = ceil (box->box.x + box->corner[corner].horizontal + clip_radius); x2 = ceil (box->box.x + box->corner[corner].horizontal + clip_radius);
x = x1; x = x1;
sx = 1; sx = 1;
max_other = MAX(box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal); max_other = MAX(box->corner[GSK_CORNER_TOP_RIGHT].horizontal, box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal);
x3 = floor (box->box.x + box->box.width - max_other - clip_radius); x3 = floor (box->box.x + box->box.width - max_other - clip_radius);
if (x2 > x3) if (x2 > x3)
overlapped = TRUE; overlapped = TRUE;
@@ -728,19 +728,19 @@ draw_shadow_corner (const GtkCssValue *shadow,
x2 = ceil (box->box.x + box->box.width + clip_radius); x2 = ceil (box->box.x + box->box.width + clip_radius);
x = x2; x = x2;
sx = -1; sx = -1;
max_other = MAX(box->corner[GTK_CSS_TOP_LEFT].horizontal, box->corner[GTK_CSS_BOTTOM_LEFT].horizontal); max_other = MAX(box->corner[GSK_CORNER_TOP_LEFT].horizontal, box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal);
x3 = ceil (box->box.x + max_other + clip_radius); x3 = ceil (box->box.x + max_other + clip_radius);
if (x3 > x1) if (x3 > x1)
overlapped = TRUE; overlapped = TRUE;
} }
if (corner == GTK_CSS_TOP_LEFT || corner == GTK_CSS_TOP_RIGHT) if (corner == GSK_CORNER_TOP_LEFT || corner == GSK_CORNER_TOP_RIGHT)
{ {
y1 = floor (box->box.y - clip_radius); y1 = floor (box->box.y - clip_radius);
y2 = ceil (box->box.y + box->corner[corner].vertical + clip_radius); y2 = ceil (box->box.y + box->corner[corner].vertical + clip_radius);
y = y1; y = y1;
sy = 1; sy = 1;
max_other = MAX(box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->corner[GTK_CSS_BOTTOM_RIGHT].vertical); max_other = MAX(box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical);
y3 = floor (box->box.y + box->box.height - max_other - clip_radius); y3 = floor (box->box.y + box->box.height - max_other - clip_radius);
if (y2 > y3) if (y2 > y3)
overlapped = TRUE; overlapped = TRUE;
@@ -751,7 +751,7 @@ draw_shadow_corner (const GtkCssValue *shadow,
y2 = ceil (box->box.y + box->box.height + clip_radius); y2 = ceil (box->box.y + box->box.height + clip_radius);
y = y2; y = y2;
sy = -1; sy = -1;
max_other = MAX(box->corner[GTK_CSS_TOP_LEFT].vertical, box->corner[GTK_CSS_TOP_RIGHT].vertical); max_other = MAX(box->corner[GSK_CORNER_TOP_LEFT].vertical, box->corner[GSK_CORNER_TOP_RIGHT].vertical);
y3 = ceil (box->box.y + max_other + clip_radius); y3 = ceil (box->box.y + max_other + clip_radius);
if (y3 > y1) if (y3 > y1)
overlapped = TRUE; overlapped = TRUE;

View File

@@ -344,13 +344,6 @@ typedef enum /*< skip >*/ {
GTK_CSS_LEFT GTK_CSS_LEFT
} GtkCssSide; } GtkCssSide;
typedef enum /*< skip >*/ {
GTK_CSS_TOP_LEFT,
GTK_CSS_TOP_RIGHT,
GTK_CSS_BOTTOM_RIGHT,
GTK_CSS_BOTTOM_LEFT
} GtkCssCorner;
typedef enum /*< skip >*/ { typedef enum /*< skip >*/ {
GTK_CSS_DIMENSION_PERCENTAGE, GTK_CSS_DIMENSION_PERCENTAGE,
GTK_CSS_DIMENSION_NUMBER, GTK_CSS_DIMENSION_NUMBER,

View File

@@ -656,10 +656,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style,
border.right = _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_RIGHT_WIDTH), 100); border.right = _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_RIGHT_WIDTH), 100);
border.bottom = _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_WIDTH), 100); border.bottom = _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_WIDTH), 100);
border.left = _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_LEFT_WIDTH), 100); border.left = _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_LEFT_WIDTH), 100);
corner[GTK_CSS_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_LEFT_RADIUS); corner[GSK_CORNER_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_LEFT_RADIUS);
corner[GTK_CSS_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_RIGHT_RADIUS); corner[GSK_CORNER_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_RIGHT_RADIUS);
corner[GTK_CSS_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_LEFT_RADIUS); corner[GSK_CORNER_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_LEFT_RADIUS);
corner[GTK_CSS_BOTTOM_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_RIGHT_RADIUS); corner[GSK_CORNER_BOTTOM_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_RIGHT_RADIUS);
border_width = MIN (MIN (border.top, border.bottom), border_width = MIN (MIN (border.top, border.bottom),
MIN (border.left, border.right)); MIN (border.left, border.right));
@@ -674,10 +674,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style,
wc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0); wc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0);
hc = border_width; hc = border_width;
if (xy0_gap < _gtk_css_corner_value_get_x (corner[GTK_CSS_TOP_LEFT], width)) if (xy0_gap < _gtk_css_corner_value_get_x (corner[GSK_CORNER_TOP_LEFT], width))
junction |= GTK_JUNCTION_CORNER_TOPLEFT; junction |= GTK_JUNCTION_CORNER_TOPLEFT;
if (xy1_gap > width - _gtk_css_corner_value_get_x (corner[GTK_CSS_TOP_RIGHT], width)) if (xy1_gap > width - _gtk_css_corner_value_get_x (corner[GSK_CORNER_TOP_RIGHT], width))
junction |= GTK_JUNCTION_CORNER_TOPRIGHT; junction |= GTK_JUNCTION_CORNER_TOPRIGHT;
break; break;
case GTK_POS_BOTTOM: case GTK_POS_BOTTOM:
@@ -686,10 +686,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style,
wc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0); wc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0);
hc = border_width; hc = border_width;
if (xy0_gap < _gtk_css_corner_value_get_x (corner[GTK_CSS_BOTTOM_LEFT], width)) if (xy0_gap < _gtk_css_corner_value_get_x (corner[GSK_CORNER_BOTTOM_LEFT], width))
junction |= GTK_JUNCTION_CORNER_BOTTOMLEFT; junction |= GTK_JUNCTION_CORNER_BOTTOMLEFT;
if (xy1_gap > width - _gtk_css_corner_value_get_x (corner[GTK_CSS_BOTTOM_RIGHT], width)) if (xy1_gap > width - _gtk_css_corner_value_get_x (corner[GSK_CORNER_BOTTOM_RIGHT], width))
junction |= GTK_JUNCTION_CORNER_BOTTOMRIGHT; junction |= GTK_JUNCTION_CORNER_BOTTOMRIGHT;
break; break;
@@ -699,10 +699,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style,
wc = border_width; wc = border_width;
hc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0); hc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0);
if (xy0_gap < _gtk_css_corner_value_get_y (corner[GTK_CSS_TOP_LEFT], height)) if (xy0_gap < _gtk_css_corner_value_get_y (corner[GSK_CORNER_TOP_LEFT], height))
junction |= GTK_JUNCTION_CORNER_TOPLEFT; junction |= GTK_JUNCTION_CORNER_TOPLEFT;
if (xy1_gap > height - _gtk_css_corner_value_get_y (corner[GTK_CSS_BOTTOM_LEFT], height)) if (xy1_gap > height - _gtk_css_corner_value_get_y (corner[GSK_CORNER_BOTTOM_LEFT], height))
junction |= GTK_JUNCTION_CORNER_BOTTOMLEFT; junction |= GTK_JUNCTION_CORNER_BOTTOMLEFT;
break; break;
@@ -712,10 +712,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style,
wc = border_width; wc = border_width;
hc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0); hc = MAX (xy1_gap - xy0_gap - 2 * border_width, 0);
if (xy0_gap < _gtk_css_corner_value_get_y (corner[GTK_CSS_TOP_RIGHT], height)) if (xy0_gap < _gtk_css_corner_value_get_y (corner[GSK_CORNER_TOP_RIGHT], height))
junction |= GTK_JUNCTION_CORNER_TOPRIGHT; junction |= GTK_JUNCTION_CORNER_TOPRIGHT;
if (xy1_gap > height - _gtk_css_corner_value_get_y (corner[GTK_CSS_BOTTOM_RIGHT], height)) if (xy1_gap > height - _gtk_css_corner_value_get_y (corner[GSK_CORNER_BOTTOM_RIGHT], height))
junction |= GTK_JUNCTION_CORNER_BOTTOMRIGHT; junction |= GTK_JUNCTION_CORNER_BOTTOMRIGHT;
break; break;

View File

@@ -58,30 +58,30 @@ gtk_rounded_box_clamp_border_radius (GtkRoundedBox *box)
gdouble factor = 1.0; gdouble factor = 1.0;
gdouble corners; gdouble corners;
corners = box->corner[GTK_CSS_TOP_LEFT].horizontal + box->corner[GTK_CSS_TOP_RIGHT].horizontal; corners = box->corner[GSK_CORNER_TOP_LEFT].horizontal + box->corner[GSK_CORNER_TOP_RIGHT].horizontal;
if (corners != 0) if (corners != 0)
factor = MIN (factor, box->box.width / corners); factor = MIN (factor, box->box.width / corners);
corners = box->corner[GTK_CSS_TOP_RIGHT].vertical + box->corner[GTK_CSS_BOTTOM_RIGHT].vertical; corners = box->corner[GSK_CORNER_TOP_RIGHT].vertical + box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical;
if (corners != 0) if (corners != 0)
factor = MIN (factor, box->box.height / corners); factor = MIN (factor, box->box.height / corners);
corners = box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal; corners = box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal;
if (corners != 0) if (corners != 0)
factor = MIN (factor, box->box.width / corners); factor = MIN (factor, box->box.width / corners);
corners = box->corner[GTK_CSS_TOP_LEFT].vertical + box->corner[GTK_CSS_BOTTOM_LEFT].vertical; corners = box->corner[GSK_CORNER_TOP_LEFT].vertical + box->corner[GSK_CORNER_BOTTOM_LEFT].vertical;
if (corners != 0) if (corners != 0)
factor = MIN (factor, box->box.height / corners); factor = MIN (factor, box->box.height / corners);
box->corner[GTK_CSS_TOP_LEFT].horizontal *= factor; box->corner[GSK_CORNER_TOP_LEFT].horizontal *= factor;
box->corner[GTK_CSS_TOP_LEFT].vertical *= factor; box->corner[GSK_CORNER_TOP_LEFT].vertical *= factor;
box->corner[GTK_CSS_TOP_RIGHT].horizontal *= factor; box->corner[GSK_CORNER_TOP_RIGHT].horizontal *= factor;
box->corner[GTK_CSS_TOP_RIGHT].vertical *= factor; box->corner[GSK_CORNER_TOP_RIGHT].vertical *= factor;
box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal *= factor; box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal *= factor;
box->corner[GTK_CSS_BOTTOM_RIGHT].vertical *= factor; box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical *= factor;
box->corner[GTK_CSS_BOTTOM_LEFT].horizontal *= factor; box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal *= factor;
box->corner[GTK_CSS_BOTTOM_LEFT].vertical *= factor; box->corner[GSK_CORNER_BOTTOM_LEFT].vertical *= factor;
} }
static void static void
@@ -89,32 +89,32 @@ _gtk_rounded_box_apply_border_radius (GtkRoundedBox *box,
GtkCssValue **corner, GtkCssValue **corner,
GtkJunctionSides junction) GtkJunctionSides junction)
{ {
if (corner[GTK_CSS_TOP_LEFT] && (junction & GTK_JUNCTION_CORNER_TOPLEFT) == 0) if (corner[GSK_CORNER_TOP_LEFT] && (junction & GTK_JUNCTION_CORNER_TOPLEFT) == 0)
{ {
box->corner[GTK_CSS_TOP_LEFT].horizontal = _gtk_css_corner_value_get_x (corner[GTK_CSS_TOP_LEFT], box->corner[GSK_CORNER_TOP_LEFT].horizontal = _gtk_css_corner_value_get_x (corner[GSK_CORNER_TOP_LEFT],
box->box.width); box->box.width);
box->corner[GTK_CSS_TOP_LEFT].vertical = _gtk_css_corner_value_get_y (corner[GTK_CSS_TOP_LEFT], box->corner[GSK_CORNER_TOP_LEFT].vertical = _gtk_css_corner_value_get_y (corner[GSK_CORNER_TOP_LEFT],
box->box.height); box->box.height);
} }
if (corner[GTK_CSS_TOP_RIGHT] && (junction & GTK_JUNCTION_CORNER_TOPRIGHT) == 0) if (corner[GSK_CORNER_TOP_RIGHT] && (junction & GTK_JUNCTION_CORNER_TOPRIGHT) == 0)
{ {
box->corner[GTK_CSS_TOP_RIGHT].horizontal = _gtk_css_corner_value_get_x (corner[GTK_CSS_TOP_RIGHT], box->corner[GSK_CORNER_TOP_RIGHT].horizontal = _gtk_css_corner_value_get_x (corner[GSK_CORNER_TOP_RIGHT],
box->box.width); box->box.width);
box->corner[GTK_CSS_TOP_RIGHT].vertical = _gtk_css_corner_value_get_y (corner[GTK_CSS_TOP_RIGHT], box->corner[GSK_CORNER_TOP_RIGHT].vertical = _gtk_css_corner_value_get_y (corner[GSK_CORNER_TOP_RIGHT],
box->box.height); box->box.height);
} }
if (corner[GTK_CSS_BOTTOM_RIGHT] && (junction & GTK_JUNCTION_CORNER_BOTTOMRIGHT) == 0) if (corner[GSK_CORNER_BOTTOM_RIGHT] && (junction & GTK_JUNCTION_CORNER_BOTTOMRIGHT) == 0)
{ {
box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal = _gtk_css_corner_value_get_x (corner[GTK_CSS_BOTTOM_RIGHT], box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal = _gtk_css_corner_value_get_x (corner[GSK_CORNER_BOTTOM_RIGHT],
box->box.width); box->box.width);
box->corner[GTK_CSS_BOTTOM_RIGHT].vertical = _gtk_css_corner_value_get_y (corner[GTK_CSS_BOTTOM_RIGHT], box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical = _gtk_css_corner_value_get_y (corner[GSK_CORNER_BOTTOM_RIGHT],
box->box.height); box->box.height);
} }
if (corner[GTK_CSS_BOTTOM_LEFT] && (junction & GTK_JUNCTION_CORNER_BOTTOMLEFT) == 0) if (corner[GSK_CORNER_BOTTOM_LEFT] && (junction & GTK_JUNCTION_CORNER_BOTTOMLEFT) == 0)
{ {
box->corner[GTK_CSS_BOTTOM_LEFT].horizontal = _gtk_css_corner_value_get_x (corner[GTK_CSS_BOTTOM_LEFT], box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal = _gtk_css_corner_value_get_x (corner[GSK_CORNER_BOTTOM_LEFT],
box->box.width); box->box.width);
box->corner[GTK_CSS_BOTTOM_LEFT].vertical = _gtk_css_corner_value_get_y (corner[GTK_CSS_BOTTOM_LEFT], box->corner[GSK_CORNER_BOTTOM_LEFT].vertical = _gtk_css_corner_value_get_y (corner[GSK_CORNER_BOTTOM_LEFT],
box->box.height); box->box.height);
} }
@@ -128,10 +128,10 @@ _gtk_rounded_box_apply_border_radius_for_style (GtkRoundedBox *box,
{ {
GtkCssValue *corner[4]; GtkCssValue *corner[4];
corner[GTK_CSS_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_LEFT_RADIUS); corner[GSK_CORNER_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_LEFT_RADIUS);
corner[GTK_CSS_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_RIGHT_RADIUS); corner[GSK_CORNER_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_RIGHT_RADIUS);
corner[GTK_CSS_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_LEFT_RADIUS); corner[GSK_CORNER_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_LEFT_RADIUS);
corner[GTK_CSS_BOTTOM_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_RIGHT_RADIUS); corner[GSK_CORNER_BOTTOM_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_RIGHT_RADIUS);
_gtk_rounded_box_apply_border_radius (box, corner, junction); _gtk_rounded_box_apply_border_radius (box, corner, junction);
} }
@@ -143,10 +143,10 @@ _gtk_rounded_box_apply_outline_radius_for_style (GtkRoundedBox *box,
{ {
GtkCssValue *corner[4]; GtkCssValue *corner[4];
corner[GTK_CSS_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_TOP_LEFT_RADIUS); corner[GSK_CORNER_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_TOP_LEFT_RADIUS);
corner[GTK_CSS_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_TOP_RIGHT_RADIUS); corner[GSK_CORNER_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_TOP_RIGHT_RADIUS);
corner[GTK_CSS_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_BOTTOM_LEFT_RADIUS); corner[GSK_CORNER_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_BOTTOM_LEFT_RADIUS);
corner[GTK_CSS_BOTTOM_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_BOTTOM_RIGHT_RADIUS); corner[GSK_CORNER_BOTTOM_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_BOTTOM_RIGHT_RADIUS);
_gtk_rounded_box_apply_border_radius (box, corner, junction); _gtk_rounded_box_apply_border_radius (box, corner, junction);
} }
@@ -197,10 +197,10 @@ _gtk_rounded_box_grow (GtkRoundedBox *box,
box->box.height += top + bottom; box->box.height += top + bottom;
} }
gtk_css_border_radius_grow (&box->corner[GTK_CSS_TOP_LEFT], left, top); gtk_css_border_radius_grow (&box->corner[GSK_CORNER_TOP_LEFT], left, top);
gtk_css_border_radius_grow (&box->corner[GTK_CSS_TOP_RIGHT], right, top); gtk_css_border_radius_grow (&box->corner[GSK_CORNER_TOP_RIGHT], right, top);
gtk_css_border_radius_grow (&box->corner[GTK_CSS_BOTTOM_RIGHT], right, bottom); gtk_css_border_radius_grow (&box->corner[GSK_CORNER_BOTTOM_RIGHT], right, bottom);
gtk_css_border_radius_grow (&box->corner[GTK_CSS_BOTTOM_LEFT], left, bottom); gtk_css_border_radius_grow (&box->corner[GSK_CORNER_BOTTOM_LEFT], left, bottom);
} }
void void
@@ -361,28 +361,28 @@ _gtk_rounded_box_path (const GtkRoundedBox *box,
cairo_new_sub_path (cr); cairo_new_sub_path (cr);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal, box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal,
box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical, box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical,
box->corner[GTK_CSS_TOP_LEFT].horizontal, box->corner[GSK_CORNER_TOP_LEFT].horizontal,
box->corner[GTK_CSS_TOP_LEFT].vertical, box->corner[GSK_CORNER_TOP_LEFT].vertical,
G_PI, 3 * G_PI_2); G_PI, 3 * G_PI_2);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal,
box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical, box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical,
box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->corner[GSK_CORNER_TOP_RIGHT].horizontal,
box->corner[GTK_CSS_TOP_RIGHT].vertical, box->corner[GSK_CORNER_TOP_RIGHT].vertical,
- G_PI_2, 0); - G_PI_2, 0);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
0, G_PI_2); 0, G_PI_2);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
G_PI_2, G_PI); G_PI_2, G_PI);
cairo_close_path (cr); cairo_close_path (cr);
@@ -424,58 +424,58 @@ _gtk_rounded_box_path_side (const GtkRoundedBox *box,
{ {
case GTK_CSS_TOP: case GTK_CSS_TOP:
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal, box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal,
box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical, box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical,
box->corner[GTK_CSS_TOP_LEFT].horizontal, box->corner[GSK_CORNER_TOP_LEFT].horizontal,
box->corner[GTK_CSS_TOP_LEFT].vertical, box->corner[GSK_CORNER_TOP_LEFT].vertical,
5 * G_PI_4, 3 * G_PI_2); 5 * G_PI_4, 3 * G_PI_2);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal,
box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical, box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical,
box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->corner[GSK_CORNER_TOP_RIGHT].horizontal,
box->corner[GTK_CSS_TOP_RIGHT].vertical, box->corner[GSK_CORNER_TOP_RIGHT].vertical,
- G_PI_2, -G_PI_4); - G_PI_2, -G_PI_4);
break; break;
case GTK_CSS_RIGHT: case GTK_CSS_RIGHT:
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal,
box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical, box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical,
box->corner[GTK_CSS_TOP_RIGHT].horizontal, box->corner[GSK_CORNER_TOP_RIGHT].horizontal,
box->corner[GTK_CSS_TOP_RIGHT].vertical, box->corner[GSK_CORNER_TOP_RIGHT].vertical,
- G_PI_4, 0); - G_PI_4, 0);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
0, G_PI_4); 0, G_PI_4);
break; break;
case GTK_CSS_BOTTOM: case GTK_CSS_BOTTOM:
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
G_PI_4, G_PI_2); G_PI_4, G_PI_2);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
G_PI_2, 3 * G_PI_4); G_PI_2, 3 * G_PI_4);
break; break;
case GTK_CSS_LEFT: case GTK_CSS_LEFT:
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
box->corner[GTK_CSS_BOTTOM_LEFT].vertical, box->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
3 * G_PI_4, G_PI); 3 * G_PI_4, G_PI);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal, box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal,
box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical, box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical,
box->corner[GTK_CSS_TOP_LEFT].horizontal, box->corner[GSK_CORNER_TOP_LEFT].horizontal,
box->corner[GTK_CSS_TOP_LEFT].vertical, box->corner[GSK_CORNER_TOP_LEFT].vertical,
G_PI, 5 * G_PI_4); G_PI, 5 * G_PI_4);
break; break;
default: default:
@@ -507,29 +507,29 @@ _gtk_rounded_box_path_top (const GtkRoundedBox *outer,
cairo_new_sub_path (cr); cairo_new_sub_path (cr);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->corner[GTK_CSS_TOP_LEFT].horizontal, outer->box.x + outer->corner[GSK_CORNER_TOP_LEFT].horizontal,
outer->box.y + outer->corner[GTK_CSS_TOP_LEFT].vertical, outer->box.y + outer->corner[GSK_CORNER_TOP_LEFT].vertical,
outer->corner[GTK_CSS_TOP_LEFT].horizontal, outer->corner[GSK_CORNER_TOP_LEFT].horizontal,
outer->corner[GTK_CSS_TOP_LEFT].vertical, outer->corner[GSK_CORNER_TOP_LEFT].vertical,
start_angle, middle_angle); start_angle, middle_angle);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->box.width - outer->corner[GTK_CSS_TOP_RIGHT].horizontal, outer->box.x + outer->box.width - outer->corner[GSK_CORNER_TOP_RIGHT].horizontal,
outer->box.y + outer->corner[GTK_CSS_TOP_RIGHT].vertical, outer->box.y + outer->corner[GSK_CORNER_TOP_RIGHT].vertical,
outer->corner[GTK_CSS_TOP_RIGHT].horizontal, outer->corner[GSK_CORNER_TOP_RIGHT].horizontal,
outer->corner[GTK_CSS_TOP_RIGHT].vertical, outer->corner[GSK_CORNER_TOP_RIGHT].vertical,
middle_angle, end_angle); middle_angle, end_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->box.width - inner->corner[GTK_CSS_TOP_RIGHT].horizontal, inner->box.x + inner->box.width - inner->corner[GSK_CORNER_TOP_RIGHT].horizontal,
inner->box.y + inner->corner[GTK_CSS_TOP_RIGHT].vertical, inner->box.y + inner->corner[GSK_CORNER_TOP_RIGHT].vertical,
inner->corner[GTK_CSS_TOP_RIGHT].horizontal, inner->corner[GSK_CORNER_TOP_RIGHT].horizontal,
inner->corner[GTK_CSS_TOP_RIGHT].vertical, inner->corner[GSK_CORNER_TOP_RIGHT].vertical,
end_angle, middle_angle); end_angle, middle_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->corner[GTK_CSS_TOP_LEFT].horizontal, inner->box.x + inner->corner[GSK_CORNER_TOP_LEFT].horizontal,
inner->box.y + inner->corner[GTK_CSS_TOP_LEFT].vertical, inner->box.y + inner->corner[GSK_CORNER_TOP_LEFT].vertical,
inner->corner[GTK_CSS_TOP_LEFT].horizontal, inner->corner[GSK_CORNER_TOP_LEFT].horizontal,
inner->corner[GTK_CSS_TOP_LEFT].vertical, inner->corner[GSK_CORNER_TOP_LEFT].vertical,
middle_angle, start_angle); middle_angle, start_angle);
cairo_close_path (cr); cairo_close_path (cr);
@@ -558,29 +558,29 @@ _gtk_rounded_box_path_right (const GtkRoundedBox *outer,
cairo_new_sub_path (cr); cairo_new_sub_path (cr);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->box.width - outer->corner[GTK_CSS_TOP_RIGHT].horizontal, outer->box.x + outer->box.width - outer->corner[GSK_CORNER_TOP_RIGHT].horizontal,
outer->box.y + outer->corner[GTK_CSS_TOP_RIGHT].vertical, outer->box.y + outer->corner[GSK_CORNER_TOP_RIGHT].vertical,
outer->corner[GTK_CSS_TOP_RIGHT].horizontal, outer->corner[GSK_CORNER_TOP_RIGHT].horizontal,
outer->corner[GTK_CSS_TOP_RIGHT].vertical, outer->corner[GSK_CORNER_TOP_RIGHT].vertical,
start_angle, middle_angle); start_angle, middle_angle);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->box.width - outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, outer->box.x + outer->box.width - outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
middle_angle, end_angle); middle_angle, end_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->box.width - inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, inner->box.x + inner->box.width - inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
end_angle, middle_angle); end_angle, middle_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->box.width - inner->corner[GTK_CSS_TOP_RIGHT].horizontal, inner->box.x + inner->box.width - inner->corner[GSK_CORNER_TOP_RIGHT].horizontal,
inner->box.y + inner->corner[GTK_CSS_TOP_RIGHT].vertical, inner->box.y + inner->corner[GSK_CORNER_TOP_RIGHT].vertical,
inner->corner[GTK_CSS_TOP_RIGHT].horizontal, inner->corner[GSK_CORNER_TOP_RIGHT].horizontal,
inner->corner[GTK_CSS_TOP_RIGHT].vertical, inner->corner[GSK_CORNER_TOP_RIGHT].vertical,
middle_angle, start_angle); middle_angle, start_angle);
cairo_close_path (cr); cairo_close_path (cr);
@@ -609,29 +609,29 @@ _gtk_rounded_box_path_bottom (const GtkRoundedBox *outer,
cairo_new_sub_path (cr); cairo_new_sub_path (cr);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->box.width - outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, outer->box.x + outer->box.width - outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
start_angle, middle_angle); start_angle, middle_angle);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, outer->box.x + outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
middle_angle, end_angle); middle_angle, end_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, inner->box.x + inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
end_angle, middle_angle); end_angle, middle_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->box.width - inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, inner->box.x + inner->box.width - inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal,
inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical,
middle_angle, start_angle); middle_angle, start_angle);
cairo_close_path (cr); cairo_close_path (cr);
@@ -660,29 +660,29 @@ _gtk_rounded_box_path_left (const GtkRoundedBox *outer,
cairo_new_sub_path (cr); cairo_new_sub_path (cr);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, outer->box.x + outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
start_angle, middle_angle); start_angle, middle_angle);
_cairo_ellipsis (cr, _cairo_ellipsis (cr,
outer->box.x + outer->corner[GTK_CSS_TOP_LEFT].horizontal, outer->box.x + outer->corner[GSK_CORNER_TOP_LEFT].horizontal,
outer->box.y + outer->corner[GTK_CSS_TOP_LEFT].vertical, outer->box.y + outer->corner[GSK_CORNER_TOP_LEFT].vertical,
outer->corner[GTK_CSS_TOP_LEFT].horizontal, outer->corner[GSK_CORNER_TOP_LEFT].horizontal,
outer->corner[GTK_CSS_TOP_LEFT].vertical, outer->corner[GSK_CORNER_TOP_LEFT].vertical,
middle_angle, end_angle); middle_angle, end_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->corner[GTK_CSS_TOP_LEFT].horizontal, inner->box.x + inner->corner[GSK_CORNER_TOP_LEFT].horizontal,
inner->box.y + inner->corner[GTK_CSS_TOP_LEFT].vertical, inner->box.y + inner->corner[GSK_CORNER_TOP_LEFT].vertical,
inner->corner[GTK_CSS_TOP_LEFT].horizontal, inner->corner[GSK_CORNER_TOP_LEFT].horizontal,
inner->corner[GTK_CSS_TOP_LEFT].vertical, inner->corner[GSK_CORNER_TOP_LEFT].vertical,
end_angle, middle_angle); end_angle, middle_angle);
_cairo_ellipsis_negative (cr, _cairo_ellipsis_negative (cr,
inner->box.x + inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, inner->box.x + inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal,
inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical,
middle_angle, start_angle); middle_angle, start_angle);
cairo_close_path (cr); cairo_close_path (cr);
@@ -726,20 +726,20 @@ _gtk_rounded_box_contains_rectangle (const GtkRoundedBox *box,
y2 > box->box.y + box->box.height) y2 > box->box.y + box->box.height)
return FALSE; return FALSE;
if (x1 < box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal && if (x1 < box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal &&
y1 < box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical) y1 < box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical)
return FALSE; return FALSE;
if (x2 > box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal && if (x2 > box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal &&
y1 < box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical) y1 < box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical)
return FALSE; return FALSE;
if (x2 > box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal && if (x2 > box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal &&
y2 > box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical) y2 > box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical)
return FALSE; return FALSE;
if (x1 < box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal && if (x1 < box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal &&
y2 > box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical) y2 > box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical)
return FALSE; return FALSE;
return TRUE; return TRUE;

View File

@@ -20,6 +20,7 @@
#include <glib-object.h> #include <glib-object.h>
#include <cairo.h> #include <cairo.h>
#include <gsk/gsk.h>
#include <gtk/gtkenums.h> #include <gtk/gtkenums.h>
#include <gtk/gtktypes.h> #include <gtk/gtktypes.h>