void gtk_list_box_set_header_func ( GtkListBox* box, GtkListBoxUpdateHeaderFunc update_header, gpointer user_data, GDestroyNotify destroy )
By setting a header function on the
box one can dynamically add headers
in front of rows, depending on the contents of the row and its position in the list.
For instance, one could use it to add headers in front of the first item of a
new kind, in a list sorted by the kind.
update_header can look at the current header widget using
and either update the state of the widget as needed, or set a new one using
gtk_list_box_row_set_header(). If no header is needed, set the header to
Note that you may get many calls
update_header to this for a particular row when e.g.
changing things that don’t affect the header. In this case it is important for performance
to not blindly replace an existing header with an identical one.
update_header function will be called for each row after the call, and it will
continue to be called each time a row changes (via gtk_list_box_row_changed()) and when
the row before changes (either by
gtk_list_box_row_changed() on the previous row, or when
the previous row becomes a different row). It is also called for all rows when
gtk_list_box_invalidate_headers() is called.