diff --git a/gtk/gtkcssshadowvalue.c b/gtk/gtkcssshadowvalue.c index a86dd9ab2d..695ea24803 100644 --- a/gtk/gtkcssshadowvalue.c +++ b/gtk/gtkcssshadowvalue.c @@ -687,11 +687,11 @@ corner_mask_equal (CornerMask *mask1, } static void -draw_shadow_corner (const GtkCssValue *shadow, - cairo_t *cr, - GtkRoundedBox *box, - GtkRoundedBox *clip_box, - GtkCssCorner corner, +draw_shadow_corner (const GtkCssValue *shadow, + cairo_t *cr, + GtkRoundedBox *box, + GtkRoundedBox *clip_box, + GskCorner corner, cairo_rectangle_int_t *drawn_rect) { gdouble radius, clip_radius; @@ -711,13 +711,13 @@ draw_shadow_corner (const GtkCssValue *shadow, clip_radius = _gtk_cairo_blur_compute_pixels (radius); 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); x2 = ceil (box->box.x + box->corner[corner].horizontal + clip_radius); x = x1; 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); if (x2 > x3) overlapped = TRUE; @@ -728,19 +728,19 @@ draw_shadow_corner (const GtkCssValue *shadow, x2 = ceil (box->box.x + box->box.width + clip_radius); x = x2; 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); if (x3 > x1) 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); y2 = ceil (box->box.y + box->corner[corner].vertical + clip_radius); y = y1; 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); if (y2 > y3) overlapped = TRUE; @@ -751,7 +751,7 @@ draw_shadow_corner (const GtkCssValue *shadow, y2 = ceil (box->box.y + box->box.height + clip_radius); y = y2; 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); if (y3 > y1) overlapped = TRUE; diff --git a/gtk/gtkcsstypesprivate.h b/gtk/gtkcsstypesprivate.h index 644f0079b7..d6548bf197 100644 --- a/gtk/gtkcsstypesprivate.h +++ b/gtk/gtkcsstypesprivate.h @@ -344,13 +344,6 @@ typedef enum /*< skip >*/ { GTK_CSS_LEFT } GtkCssSide; -typedef enum /*< skip >*/ { - GTK_CSS_TOP_LEFT, - GTK_CSS_TOP_RIGHT, - GTK_CSS_BOTTOM_RIGHT, - GTK_CSS_BOTTOM_LEFT -} GtkCssCorner; - typedef enum /*< skip >*/ { GTK_CSS_DIMENSION_PERCENTAGE, GTK_CSS_DIMENSION_NUMBER, diff --git a/gtk/gtkrender.c b/gtk/gtkrender.c index 107783ab20..9aeced64e4 100644 --- a/gtk/gtkrender.c +++ b/gtk/gtkrender.c @@ -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.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); - corner[GTK_CSS_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[GTK_CSS_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_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_LEFT_RADIUS); + corner[GSK_CORNER_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_RIGHT_RADIUS); + corner[GSK_CORNER_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_LEFT_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), 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); 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; - 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; break; 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); 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; - 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; break; @@ -699,10 +699,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style, wc = border_width; 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; - 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; break; @@ -712,10 +712,10 @@ gtk_css_style_render_frame_gap (GtkCssStyle *style, wc = border_width; 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; - 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; break; diff --git a/gtk/gtkroundedbox.c b/gtk/gtkroundedbox.c index ea1297f4e0..514663c6cc 100644 --- a/gtk/gtkroundedbox.c +++ b/gtk/gtkroundedbox.c @@ -58,30 +58,30 @@ gtk_rounded_box_clamp_border_radius (GtkRoundedBox *box) gdouble factor = 1.0; 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) 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) 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) 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) factor = MIN (factor, box->box.height / corners); - box->corner[GTK_CSS_TOP_LEFT].horizontal *= factor; - box->corner[GTK_CSS_TOP_LEFT].vertical *= factor; - box->corner[GTK_CSS_TOP_RIGHT].horizontal *= factor; - box->corner[GTK_CSS_TOP_RIGHT].vertical *= factor; - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal *= factor; - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical *= factor; - box->corner[GTK_CSS_BOTTOM_LEFT].horizontal *= factor; - box->corner[GTK_CSS_BOTTOM_LEFT].vertical *= factor; + box->corner[GSK_CORNER_TOP_LEFT].horizontal *= factor; + box->corner[GSK_CORNER_TOP_LEFT].vertical *= factor; + box->corner[GSK_CORNER_TOP_RIGHT].horizontal *= factor; + box->corner[GSK_CORNER_TOP_RIGHT].vertical *= factor; + box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal *= factor; + box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical *= factor; + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal *= factor; + box->corner[GSK_CORNER_BOTTOM_LEFT].vertical *= factor; } static void @@ -89,32 +89,32 @@ _gtk_rounded_box_apply_border_radius (GtkRoundedBox *box, GtkCssValue **corner, 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->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); } - 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->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); } - 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->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); } - 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->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); } @@ -128,10 +128,10 @@ _gtk_rounded_box_apply_border_radius_for_style (GtkRoundedBox *box, { GtkCssValue *corner[4]; - corner[GTK_CSS_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[GTK_CSS_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_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_LEFT_RADIUS); + corner[GSK_CORNER_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_RIGHT_RADIUS); + corner[GSK_CORNER_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_LEFT_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); } @@ -143,10 +143,10 @@ _gtk_rounded_box_apply_outline_radius_for_style (GtkRoundedBox *box, { GtkCssValue *corner[4]; - corner[GTK_CSS_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[GTK_CSS_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_TOP_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_TOP_LEFT_RADIUS); + corner[GSK_CORNER_TOP_RIGHT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_TOP_RIGHT_RADIUS); + corner[GSK_CORNER_BOTTOM_LEFT] = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_BOTTOM_LEFT_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); } @@ -197,10 +197,10 @@ _gtk_rounded_box_grow (GtkRoundedBox *box, 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[GTK_CSS_TOP_RIGHT], right, top); - gtk_css_border_radius_grow (&box->corner[GTK_CSS_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_TOP_LEFT], left, top); + gtk_css_border_radius_grow (&box->corner[GSK_CORNER_TOP_RIGHT], right, top); + gtk_css_border_radius_grow (&box->corner[GSK_CORNER_BOTTOM_RIGHT], right, bottom); + gtk_css_border_radius_grow (&box->corner[GSK_CORNER_BOTTOM_LEFT], left, bottom); } void @@ -361,28 +361,28 @@ _gtk_rounded_box_path (const GtkRoundedBox *box, cairo_new_sub_path (cr); _cairo_ellipsis (cr, - box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal, - box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical, - box->corner[GTK_CSS_TOP_LEFT].horizontal, - box->corner[GTK_CSS_TOP_LEFT].vertical, + box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal, + box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical, + box->corner[GSK_CORNER_TOP_LEFT].horizontal, + box->corner[GSK_CORNER_TOP_LEFT].vertical, G_PI, 3 * G_PI_2); _cairo_ellipsis (cr, - box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal, - box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical, - box->corner[GTK_CSS_TOP_RIGHT].horizontal, - box->corner[GTK_CSS_TOP_RIGHT].vertical, + box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal, + box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical, + box->corner[GSK_CORNER_TOP_RIGHT].horizontal, + box->corner[GSK_CORNER_TOP_RIGHT].vertical, - G_PI_2, 0); _cairo_ellipsis (cr, - box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, 0, G_PI_2); _cairo_ellipsis (cr, - box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, - box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, + box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, G_PI_2, G_PI); cairo_close_path (cr); @@ -424,58 +424,58 @@ _gtk_rounded_box_path_side (const GtkRoundedBox *box, { case GTK_CSS_TOP: _cairo_ellipsis (cr, - box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal, - box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical, - box->corner[GTK_CSS_TOP_LEFT].horizontal, - box->corner[GTK_CSS_TOP_LEFT].vertical, + box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal, + box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical, + box->corner[GSK_CORNER_TOP_LEFT].horizontal, + box->corner[GSK_CORNER_TOP_LEFT].vertical, 5 * G_PI_4, 3 * G_PI_2); _cairo_ellipsis (cr, - box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal, - box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical, - box->corner[GTK_CSS_TOP_RIGHT].horizontal, - box->corner[GTK_CSS_TOP_RIGHT].vertical, + box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal, + box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical, + box->corner[GSK_CORNER_TOP_RIGHT].horizontal, + box->corner[GSK_CORNER_TOP_RIGHT].vertical, - G_PI_2, -G_PI_4); break; case GTK_CSS_RIGHT: _cairo_ellipsis (cr, - box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal, - box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical, - box->corner[GTK_CSS_TOP_RIGHT].horizontal, - box->corner[GTK_CSS_TOP_RIGHT].vertical, + box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal, + box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical, + box->corner[GSK_CORNER_TOP_RIGHT].horizontal, + box->corner[GSK_CORNER_TOP_RIGHT].vertical, - G_PI_4, 0); _cairo_ellipsis (cr, - box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, 0, G_PI_4); break; case GTK_CSS_BOTTOM: _cairo_ellipsis (cr, - box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, G_PI_4, G_PI_2); _cairo_ellipsis (cr, - box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, - box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, + box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, G_PI_2, 3 * G_PI_4); break; case GTK_CSS_LEFT: _cairo_ellipsis (cr, - box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, - box->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - box->corner[GTK_CSS_BOTTOM_LEFT].vertical, + box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + box->corner[GSK_CORNER_BOTTOM_LEFT].vertical, 3 * G_PI_4, G_PI); _cairo_ellipsis (cr, - box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal, - box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical, - box->corner[GTK_CSS_TOP_LEFT].horizontal, - box->corner[GTK_CSS_TOP_LEFT].vertical, + box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal, + box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical, + box->corner[GSK_CORNER_TOP_LEFT].horizontal, + box->corner[GSK_CORNER_TOP_LEFT].vertical, G_PI, 5 * G_PI_4); break; default: @@ -507,29 +507,29 @@ _gtk_rounded_box_path_top (const GtkRoundedBox *outer, cairo_new_sub_path (cr); _cairo_ellipsis (cr, - outer->box.x + outer->corner[GTK_CSS_TOP_LEFT].horizontal, - outer->box.y + outer->corner[GTK_CSS_TOP_LEFT].vertical, - outer->corner[GTK_CSS_TOP_LEFT].horizontal, - outer->corner[GTK_CSS_TOP_LEFT].vertical, + outer->box.x + outer->corner[GSK_CORNER_TOP_LEFT].horizontal, + outer->box.y + outer->corner[GSK_CORNER_TOP_LEFT].vertical, + outer->corner[GSK_CORNER_TOP_LEFT].horizontal, + outer->corner[GSK_CORNER_TOP_LEFT].vertical, start_angle, middle_angle); _cairo_ellipsis (cr, - outer->box.x + outer->box.width - outer->corner[GTK_CSS_TOP_RIGHT].horizontal, - outer->box.y + outer->corner[GTK_CSS_TOP_RIGHT].vertical, - outer->corner[GTK_CSS_TOP_RIGHT].horizontal, - outer->corner[GTK_CSS_TOP_RIGHT].vertical, + outer->box.x + outer->box.width - outer->corner[GSK_CORNER_TOP_RIGHT].horizontal, + outer->box.y + outer->corner[GSK_CORNER_TOP_RIGHT].vertical, + outer->corner[GSK_CORNER_TOP_RIGHT].horizontal, + outer->corner[GSK_CORNER_TOP_RIGHT].vertical, middle_angle, end_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->box.width - inner->corner[GTK_CSS_TOP_RIGHT].horizontal, - inner->box.y + inner->corner[GTK_CSS_TOP_RIGHT].vertical, - inner->corner[GTK_CSS_TOP_RIGHT].horizontal, - inner->corner[GTK_CSS_TOP_RIGHT].vertical, + inner->box.x + inner->box.width - inner->corner[GSK_CORNER_TOP_RIGHT].horizontal, + inner->box.y + inner->corner[GSK_CORNER_TOP_RIGHT].vertical, + inner->corner[GSK_CORNER_TOP_RIGHT].horizontal, + inner->corner[GSK_CORNER_TOP_RIGHT].vertical, end_angle, middle_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->corner[GTK_CSS_TOP_LEFT].horizontal, - inner->box.y + inner->corner[GTK_CSS_TOP_LEFT].vertical, - inner->corner[GTK_CSS_TOP_LEFT].horizontal, - inner->corner[GTK_CSS_TOP_LEFT].vertical, + inner->box.x + inner->corner[GSK_CORNER_TOP_LEFT].horizontal, + inner->box.y + inner->corner[GSK_CORNER_TOP_LEFT].vertical, + inner->corner[GSK_CORNER_TOP_LEFT].horizontal, + inner->corner[GSK_CORNER_TOP_LEFT].vertical, middle_angle, start_angle); cairo_close_path (cr); @@ -558,29 +558,29 @@ _gtk_rounded_box_path_right (const GtkRoundedBox *outer, cairo_new_sub_path (cr); _cairo_ellipsis (cr, - outer->box.x + outer->box.width - outer->corner[GTK_CSS_TOP_RIGHT].horizontal, - outer->box.y + outer->corner[GTK_CSS_TOP_RIGHT].vertical, - outer->corner[GTK_CSS_TOP_RIGHT].horizontal, - outer->corner[GTK_CSS_TOP_RIGHT].vertical, + outer->box.x + outer->box.width - outer->corner[GSK_CORNER_TOP_RIGHT].horizontal, + outer->box.y + outer->corner[GSK_CORNER_TOP_RIGHT].vertical, + outer->corner[GSK_CORNER_TOP_RIGHT].horizontal, + outer->corner[GSK_CORNER_TOP_RIGHT].vertical, start_angle, middle_angle); _cairo_ellipsis (cr, - outer->box.x + outer->box.width - outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + outer->box.x + outer->box.width - outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, middle_angle, end_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->box.width - inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + inner->box.x + inner->box.width - inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, end_angle, middle_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->box.width - inner->corner[GTK_CSS_TOP_RIGHT].horizontal, - inner->box.y + inner->corner[GTK_CSS_TOP_RIGHT].vertical, - inner->corner[GTK_CSS_TOP_RIGHT].horizontal, - inner->corner[GTK_CSS_TOP_RIGHT].vertical, + inner->box.x + inner->box.width - inner->corner[GSK_CORNER_TOP_RIGHT].horizontal, + inner->box.y + inner->corner[GSK_CORNER_TOP_RIGHT].vertical, + inner->corner[GSK_CORNER_TOP_RIGHT].horizontal, + inner->corner[GSK_CORNER_TOP_RIGHT].vertical, middle_angle, start_angle); cairo_close_path (cr); @@ -609,29 +609,29 @@ _gtk_rounded_box_path_bottom (const GtkRoundedBox *outer, cairo_new_sub_path (cr); _cairo_ellipsis (cr, - outer->box.x + outer->box.width - outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - outer->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - outer->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + outer->box.x + outer->box.width - outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + outer->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + outer->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, start_angle, middle_angle); _cairo_ellipsis (cr, - outer->box.x + outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, - outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, + outer->box.x + outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical, middle_angle, end_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, - inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, + inner->box.x + inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical, end_angle, middle_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->box.width - inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, - inner->corner[GTK_CSS_BOTTOM_RIGHT].horizontal, - inner->corner[GTK_CSS_BOTTOM_RIGHT].vertical, + inner->box.x + inner->box.width - inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, + inner->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal, + inner->corner[GSK_CORNER_BOTTOM_RIGHT].vertical, middle_angle, start_angle); cairo_close_path (cr); @@ -660,29 +660,29 @@ _gtk_rounded_box_path_left (const GtkRoundedBox *outer, cairo_new_sub_path (cr); _cairo_ellipsis (cr, - outer->box.x + outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - outer->box.y + outer->box.height - outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, - outer->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - outer->corner[GTK_CSS_BOTTOM_LEFT].vertical, + outer->box.x + outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + outer->box.y + outer->box.height - outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + outer->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + outer->corner[GSK_CORNER_BOTTOM_LEFT].vertical, start_angle, middle_angle); _cairo_ellipsis (cr, - outer->box.x + outer->corner[GTK_CSS_TOP_LEFT].horizontal, - outer->box.y + outer->corner[GTK_CSS_TOP_LEFT].vertical, - outer->corner[GTK_CSS_TOP_LEFT].horizontal, - outer->corner[GTK_CSS_TOP_LEFT].vertical, + outer->box.x + outer->corner[GSK_CORNER_TOP_LEFT].horizontal, + outer->box.y + outer->corner[GSK_CORNER_TOP_LEFT].vertical, + outer->corner[GSK_CORNER_TOP_LEFT].horizontal, + outer->corner[GSK_CORNER_TOP_LEFT].vertical, middle_angle, end_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->corner[GTK_CSS_TOP_LEFT].horizontal, - inner->box.y + inner->corner[GTK_CSS_TOP_LEFT].vertical, - inner->corner[GTK_CSS_TOP_LEFT].horizontal, - inner->corner[GTK_CSS_TOP_LEFT].vertical, + inner->box.x + inner->corner[GSK_CORNER_TOP_LEFT].horizontal, + inner->box.y + inner->corner[GSK_CORNER_TOP_LEFT].vertical, + inner->corner[GSK_CORNER_TOP_LEFT].horizontal, + inner->corner[GSK_CORNER_TOP_LEFT].vertical, end_angle, middle_angle); _cairo_ellipsis_negative (cr, - inner->box.x + inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - inner->box.y + inner->box.height - inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, - inner->corner[GTK_CSS_BOTTOM_LEFT].horizontal, - inner->corner[GTK_CSS_BOTTOM_LEFT].vertical, + inner->box.x + inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + inner->box.y + inner->box.height - inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical, + inner->corner[GSK_CORNER_BOTTOM_LEFT].horizontal, + inner->corner[GSK_CORNER_BOTTOM_LEFT].vertical, middle_angle, start_angle); cairo_close_path (cr); @@ -726,20 +726,20 @@ _gtk_rounded_box_contains_rectangle (const GtkRoundedBox *box, y2 > box->box.y + box->box.height) return FALSE; - if (x1 < box->box.x + box->corner[GTK_CSS_TOP_LEFT].horizontal && - y1 < box->box.y + box->corner[GTK_CSS_TOP_LEFT].vertical) + if (x1 < box->box.x + box->corner[GSK_CORNER_TOP_LEFT].horizontal && + y1 < box->box.y + box->corner[GSK_CORNER_TOP_LEFT].vertical) return FALSE; - if (x2 > box->box.x + box->box.width - box->corner[GTK_CSS_TOP_RIGHT].horizontal && - y1 < box->box.y + box->corner[GTK_CSS_TOP_RIGHT].vertical) + if (x2 > box->box.x + box->box.width - box->corner[GSK_CORNER_TOP_RIGHT].horizontal && + y1 < box->box.y + box->corner[GSK_CORNER_TOP_RIGHT].vertical) return FALSE; - if (x2 > box->box.x + box->box.width - box->corner[GTK_CSS_BOTTOM_RIGHT].horizontal && - y2 > box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_RIGHT].vertical) + if (x2 > box->box.x + box->box.width - box->corner[GSK_CORNER_BOTTOM_RIGHT].horizontal && + y2 > box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_RIGHT].vertical) return FALSE; - if (x1 < box->box.x + box->corner[GTK_CSS_BOTTOM_LEFT].horizontal && - y2 > box->box.y + box->box.height - box->corner[GTK_CSS_BOTTOM_LEFT].vertical) + if (x1 < box->box.x + box->corner[GSK_CORNER_BOTTOM_LEFT].horizontal && + y2 > box->box.y + box->box.height - box->corner[GSK_CORNER_BOTTOM_LEFT].vertical) return FALSE; return TRUE; diff --git a/gtk/gtkroundedboxprivate.h b/gtk/gtkroundedboxprivate.h index cdbf1e15ce..dd0a273dde 100644 --- a/gtk/gtkroundedboxprivate.h +++ b/gtk/gtkroundedboxprivate.h @@ -20,6 +20,7 @@ #include #include +#include #include #include