GtkAllocation *allocation);
static void gtk_event_box_paint (GtkWidget *widget,
GdkRectangle *area);
-static void gtk_event_box_draw (GtkWidget *widget,
- GdkRectangle *area);
static gint gtk_event_box_expose (GtkWidget *widget,
GdkEventExpose *event);
widget_class->realize = gtk_event_box_realize;
widget_class->size_request = gtk_event_box_size_request;
widget_class->size_allocate = gtk_event_box_size_allocate;
- widget_class->draw = gtk_event_box_draw;
widget_class->expose_event = gtk_event_box_expose;
}
0, 0, -1, -1);
}
-static void
-gtk_event_box_draw (GtkWidget *widget,
- GdkRectangle *area)
-{
- GtkBin *bin;
- GdkRectangle tmp_area;
- GdkRectangle child_area;
-
- g_return_if_fail (widget != NULL);
- g_return_if_fail (GTK_IS_EVENT_BOX (widget));
-
- if (GTK_WIDGET_DRAWABLE (widget))
- {
- bin = GTK_BIN (widget);
- tmp_area = *area;
- tmp_area.x -= GTK_CONTAINER (widget)->border_width;
- tmp_area.y -= GTK_CONTAINER (widget)->border_width;
-
- gtk_event_box_paint (widget, &tmp_area);
-
- if (bin->child)
- {
- if (gtk_widget_intersect (bin->child, &tmp_area, &child_area))
- gtk_widget_draw (bin->child, &child_area);
- }
- }
-}
-
static gint
gtk_event_box_expose (GtkWidget *widget,
GdkEventExpose *event)