gtk/gtkcheckmenuitem.c: use accessor functions to access GtkWidget

This commit is contained in:
Javier Jardón 2010-08-11 23:15:16 +02:00
parent 0baa3feb4b
commit 1e3448f222

View File

@ -469,6 +469,8 @@ gtk_real_check_menu_item_draw_indicator (GtkCheckMenuItem *check_menu_item,
if (gtk_widget_is_drawable (widget)) if (gtk_widget_is_drawable (widget))
{ {
GtkAllocation allocation;
GtkStyle *style;
guint border_width; guint border_width;
guint offset; guint offset;
guint toggle_size; guint toggle_size;
@ -476,6 +478,9 @@ gtk_real_check_menu_item_draw_indicator (GtkCheckMenuItem *check_menu_item,
guint horizontal_padding; guint horizontal_padding;
guint indicator_size; guint indicator_size;
style = gtk_widget_get_style (widget);
gtk_widget_get_allocation (widget, &allocation);
gtk_widget_style_get (widget, gtk_widget_style_get (widget,
"toggle-spacing", &toggle_spacing, "toggle-spacing", &toggle_spacing,
"horizontal-padding", &horizontal_padding, "horizontal-padding", &horizontal_padding,
@ -484,26 +489,29 @@ gtk_real_check_menu_item_draw_indicator (GtkCheckMenuItem *check_menu_item,
toggle_size = GTK_MENU_ITEM (check_menu_item)->toggle_size; toggle_size = GTK_MENU_ITEM (check_menu_item)->toggle_size;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget)); border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
offset = border_width + widget->style->xthickness + 2; offset = border_width + style->xthickness + 2;
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_LTR) if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_LTR)
{ {
x = widget->allocation.x + offset + horizontal_padding + x = allocation.x + offset + horizontal_padding +
(toggle_size - toggle_spacing - indicator_size) / 2; (toggle_size - toggle_spacing - indicator_size) / 2;
} }
else else
{ {
x = widget->allocation.x + widget->allocation.width - x = allocation.x + allocation.width -
offset - horizontal_padding - toggle_size + toggle_spacing + offset - horizontal_padding - toggle_size + toggle_spacing +
(toggle_size - toggle_spacing - indicator_size) / 2; (toggle_size - toggle_spacing - indicator_size) / 2;
} }
y = widget->allocation.y + (widget->allocation.height - indicator_size) / 2; y = allocation.y + (allocation.height - indicator_size) / 2;
if (priv->active || if (priv->active ||
priv->always_show_toggle || priv->always_show_toggle ||
(gtk_widget_get_state (widget) == GTK_STATE_PRELIGHT)) (gtk_widget_get_state (widget) == GTK_STATE_PRELIGHT))
{ {
GdkWindow *window;
window = gtk_widget_get_window (widget);
state_type = gtk_widget_get_state (widget); state_type = gtk_widget_get_state (widget);
if (priv->inconsistent) if (priv->inconsistent)
@ -518,14 +526,14 @@ gtk_real_check_menu_item_draw_indicator (GtkCheckMenuItem *check_menu_item,
if (priv->draw_as_radio) if (priv->draw_as_radio)
{ {
gtk_paint_option (widget->style, widget->window, gtk_paint_option (style, window,
state_type, shadow_type, state_type, shadow_type,
area, widget, "option", area, widget, "option",
x, y, indicator_size, indicator_size); x, y, indicator_size, indicator_size);
} }
else else
{ {
gtk_paint_check (widget->style, widget->window, gtk_paint_check (style, window,
state_type, shadow_type, state_type, shadow_type,
area, widget, "check", area, widget, "check",
x, y, indicator_size, indicator_size); x, y, indicator_size, indicator_size);