diff --git a/ChangeLog b/ChangeLog index beeef5dae..0438818ab 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-04-20 Peter Johanson + + * gtk/glue/cellrenderer.c: Make GetSize, Render, etc behave correctly + for all cases. Fixes #77949. + 2006-04-15 Zac Bowling * README.generator : Updated with link to GAPI guide on Wiki diff --git a/gtk/glue/cellrenderer.c b/gtk/glue/cellrenderer.c index 7a06f20d1..940c60ff1 100644 --- a/gtk/glue/cellrenderer.c +++ b/gtk/glue/cellrenderer.c @@ -26,9 +26,8 @@ void gtksharp_cellrenderer_base_get_size (GtkCellRenderer *cell, GtkWidget *widg void gtksharp_cellrenderer_base_get_size (GtkCellRenderer *cell, GtkWidget *widget, GdkRectangle *cell_area, gint *x_offset, gint *y_offset, gint *width, gint *height) { - GtkCellRendererClass *parent = g_type_class_peek_parent (G_OBJECT_GET_CLASS (cell)); - if (parent->get_size) - (*parent->get_size) (cell, widget, cell_area, x_offset, y_offset, width, height); + if (GTK_CELL_RENDERER_GET_CLASS (cell)->get_size) + GTK_CELL_RENDERER_GET_CLASS (cell)->get_size (cell, widget, cell_area, x_offset, y_offset, width, height); } void gtksharp_cellrenderer_override_get_size (GType gtype, gpointer cb); @@ -47,9 +46,8 @@ void gtksharp_cellrenderer_base_render (GtkCellRenderer *cell, GdkDrawable *wind void gtksharp_cellrenderer_base_render (GtkCellRenderer *cell, GdkDrawable *window, GtkWidget *widget, GdkRectangle *background_area, GdkRectangle *cell_area, GdkRectangle *expose_area, GtkCellRendererState flags) { - GtkCellRendererClass *parent = g_type_class_peek_parent (G_OBJECT_GET_CLASS (cell)); - if (parent->render) - (*parent->render) (cell, window, widget, background_area, cell_area, expose_area, flags); + if (GTK_CELL_RENDERER_GET_CLASS (cell)->render) + GTK_CELL_RENDERER_GET_CLASS (cell)->render (cell, window, widget, background_area, cell_area, expose_area, flags); } void gtksharp_cellrenderer_override_render (GType gtype, gpointer cb); @@ -68,9 +66,8 @@ GtkCellEditable * gtksharp_cellrenderer_base_start_editing (GtkCellRenderer *cel GtkCellEditable * gtksharp_cellrenderer_base_start_editing (GtkCellRenderer *cell, GdkEvent *event, GtkWidget *widget, const gchar *path, GdkRectangle *background_area, GdkRectangle *cell_area, GtkCellRendererState flags) { - GtkCellRendererClass *parent = g_type_class_peek_parent (G_OBJECT_GET_CLASS (cell)); - if (parent->start_editing) - return (*parent->start_editing) (cell, event, widget, path, background_area, cell_area, flags); + if (GTK_CELL_RENDERER_GET_CLASS (cell)->start_editing) + return GTK_CELL_RENDERER_GET_CLASS (cell)->start_editing (cell, event, widget, path, background_area, cell_area, flags); return NULL; }