[gtk+/rendering-cleanup-next: 82/153] button: Remove is_drawable() check
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/rendering-cleanup-next: 82/153] button: Remove is_drawable() check
- Date: Sat, 11 Sep 2010 04:58:19 +0000 (UTC)
commit f0ca7af5633f49c6928d24fd7dd838fd42228515
Author: Benjamin Otte <otte redhat com>
Date: Wed Sep 8 00:12:35 2010 +0200
button: Remove is_drawable() check
It's already done in the expose function
gtk/gtkbutton.c | 175 +++++++++++++++++++++++++++----------------------------
1 files changed, 85 insertions(+), 90 deletions(-)
---
diff --git a/gtk/gtkbutton.c b/gtk/gtkbutton.c
index d241706..3b98a7c 100644
--- a/gtk/gtkbutton.c
+++ b/gtk/gtkbutton.c
@@ -1554,106 +1554,101 @@ _gtk_button_paint (GtkButton *button,
gboolean interior_focus;
gint focus_width;
gint focus_pad;
+ GtkAllocation allocation;
+ GdkWindow *window;
+ GtkStyle *style;
widget = GTK_WIDGET (button);
+ border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
- if (gtk_widget_is_drawable (widget))
- {
- GtkAllocation allocation;
- GdkWindow *window;
- GtkStyle *style;
+ gtk_button_get_props (button, &default_border, &default_outside_border, NULL, &interior_focus);
+ gtk_widget_style_get (widget,
+ "focus-line-width", &focus_width,
+ "focus-padding", &focus_pad,
+ NULL);
- border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
+ gtk_widget_get_allocation (widget, &allocation);
+ style = gtk_widget_get_style (widget);
+ window = gtk_widget_get_window (widget);
- gtk_button_get_props (button, &default_border, &default_outside_border, NULL, &interior_focus);
- gtk_widget_style_get (widget,
- "focus-line-width", &focus_width,
- "focus-padding", &focus_pad,
- NULL);
+ x = allocation.x + border_width;
+ y = allocation.y + border_width;
+ width = allocation.width - border_width * 2;
+ height = allocation.height - border_width * 2;
- gtk_widget_get_allocation (widget, &allocation);
- style = gtk_widget_get_style (widget);
- window = gtk_widget_get_window (widget);
+ if (gtk_widget_has_default (widget) &&
+ GTK_BUTTON (widget)->relief == GTK_RELIEF_NORMAL)
+ {
+ gtk_paint_box (style, window,
+ GTK_STATE_NORMAL, GTK_SHADOW_IN,
+ area, widget, "buttondefault",
+ x, y, width, height);
+
+ x += default_border.left;
+ y += default_border.top;
+ width -= default_border.left + default_border.right;
+ height -= default_border.top + default_border.bottom;
+ }
+ else if (gtk_widget_get_can_default (widget))
+ {
+ x += default_outside_border.left;
+ y += default_outside_border.top;
+ width -= default_outside_border.left + default_outside_border.right;
+ height -= default_outside_border.top + default_outside_border.bottom;
+ }
+
+ if (!interior_focus && gtk_widget_has_focus (widget))
+ {
+ x += focus_width + focus_pad;
+ y += focus_width + focus_pad;
+ width -= 2 * (focus_width + focus_pad);
+ height -= 2 * (focus_width + focus_pad);
+ }
- x = allocation.x + border_width;
- y = allocation.y + border_width;
- width = allocation.width - border_width * 2;
- height = allocation.height - border_width * 2;
+ if (button->relief != GTK_RELIEF_NONE || button->depressed ||
+ gtk_widget_get_state(widget) == GTK_STATE_PRELIGHT)
+ gtk_paint_box (style, window,
+ state_type,
+ shadow_type, area, widget, "button",
+ x, y, width, height);
+
+ if (gtk_widget_has_focus (widget))
+ {
+ gint child_displacement_x;
+ gint child_displacement_y;
+ gboolean displace_focus;
+
+ gtk_widget_style_get (widget,
+ "child-displacement-y", &child_displacement_y,
+ "child-displacement-x", &child_displacement_x,
+ "displace-focus", &displace_focus,
+ NULL);
- if (gtk_widget_has_default (widget) &&
- GTK_BUTTON (widget)->relief == GTK_RELIEF_NORMAL)
- {
- gtk_paint_box (style, window,
- GTK_STATE_NORMAL, GTK_SHADOW_IN,
- area, widget, "buttondefault",
- x, y, width, height);
-
- x += default_border.left;
- y += default_border.top;
- width -= default_border.left + default_border.right;
- height -= default_border.top + default_border.bottom;
- }
- else if (gtk_widget_get_can_default (widget))
- {
- x += default_outside_border.left;
- y += default_outside_border.top;
- width -= default_outside_border.left + default_outside_border.right;
- height -= default_outside_border.top + default_outside_border.bottom;
- }
-
- if (!interior_focus && gtk_widget_has_focus (widget))
- {
- x += focus_width + focus_pad;
- y += focus_width + focus_pad;
- width -= 2 * (focus_width + focus_pad);
- height -= 2 * (focus_width + focus_pad);
- }
+ if (interior_focus)
+ {
+ x += style->xthickness + focus_pad;
+ y += style->ythickness + focus_pad;
+ width -= 2 * (style->xthickness + focus_pad);
+ height -= 2 * (style->ythickness + focus_pad);
+ }
+ else
+ {
+ x -= focus_width + focus_pad;
+ y -= focus_width + focus_pad;
+ width += 2 * (focus_width + focus_pad);
+ height += 2 * (focus_width + focus_pad);
+ }
- if (button->relief != GTK_RELIEF_NONE || button->depressed ||
- gtk_widget_get_state(widget) == GTK_STATE_PRELIGHT)
- gtk_paint_box (style, window,
- state_type,
- shadow_type, area, widget, "button",
- x, y, width, height);
-
- if (gtk_widget_has_focus (widget))
- {
- gint child_displacement_x;
- gint child_displacement_y;
- gboolean displace_focus;
-
- gtk_widget_style_get (widget,
- "child-displacement-y", &child_displacement_y,
- "child-displacement-x", &child_displacement_x,
- "displace-focus", &displace_focus,
- NULL);
+ if (button->depressed && displace_focus)
+ {
+ x += child_displacement_x;
+ y += child_displacement_y;
+ }
- if (interior_focus)
- {
- x += style->xthickness + focus_pad;
- y += style->ythickness + focus_pad;
- width -= 2 * (style->xthickness + focus_pad);
- height -= 2 * (style->ythickness + focus_pad);
- }
- else
- {
- x -= focus_width + focus_pad;
- y -= focus_width + focus_pad;
- width += 2 * (focus_width + focus_pad);
- height += 2 * (focus_width + focus_pad);
- }
-
- if (button->depressed && displace_focus)
- {
- x += child_displacement_x;
- y += child_displacement_y;
- }
-
- gtk_paint_focus (style, window,
- gtk_widget_get_state (widget),
- area, widget, "button",
- x, y, width, height);
- }
+ gtk_paint_focus (style, window,
+ gtk_widget_get_state (widget),
+ area, widget, "button",
+ x, y, width, height);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]