Container.propagateDraw

When a container receives a call to the draw function, it must send synthetic #GtkWidget::draw calls to all children that don’t have their own #GdkWindows. This function provides a convenient way of doing this. A container, when it receives a call to its #GtkWidget::draw function, calls gtk_container_propagate_draw() once for each child, passing in the @cr the container received.

gtk_container_propagate_draw() takes care of translating the origin of @cr, and deciding whether the draw needs to be sent to the child. It is a convenient and optimized way of getting the same effect as calling gtk_widget_draw() on the child directly.

In most cases, a container can simply either inherit the #GtkWidget::draw implementation from #GtkContainer, or do some drawing and then chain to the ::draw implementation from #GtkContainer.

class Container
void
propagateDraw

Parameters

child Widget

a child of @container

cr Context

Cairo context as passed to the container. If you want to use @cr in container’s draw function, consider using cairo_save() and cairo_restore() before calling this function.

Meta