GtkWidgetClass' expose_event function problem
- From: "David Shultz" <mrbraz97 gmail com>
- To: gtk-list gnome org
- Subject: GtkWidgetClass' expose_event function problem
- Date: Mon, 6 Nov 2006 09:29:39 -0500
If you look at the code below:
gtkbutton.c:
static void
gtk_button_class_init (GtkButtonClass *klass)
{
........
widget_class->expose_event = gtk_button_expose;
.....
}
static gboolean
gtk_button_expose (GtkWidget *widget,
GdkEventExpose *event)
{
if (GTK_WIDGET_DRAWABLE (widget))
{
GtkButton *button = GTK_BUTTON (widget);
_gtk_button_paint (button, &event->area,
GTK_WIDGET_STATE (widget),
button->depressed ? GTK_SHADOW_IN : GTK_SHADOW_OUT,
"button", "buttondefault");
(* GTK_WIDGET_CLASS
(parent_class)->expose_event) (widget, event);
<--------------------why??
}
return FALSE;
}
Why the expose_event() function of parent_class(GtkBinClass) is called?
GtkWidgetClass doesn't have an implementation of expose_event function.
We know that GtkWidgetClass' expose_event is set to gtk_button_expose
as shown above. So correct me if i'm wrong but it is basically calling
gtk_button_expose() function recursively? So the function should never
return Right? Can anyone kindly explain it? Thanks.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]