Sets our main struct and passes it to the parent class.
Creates a new #GtkCellAreaBox.
Get the main Gtk struct
Gets the spacing added between cell renderers.
the main Gtk struct as a void*
Adds @renderer to @box, packed with reference to the end of @box.
Adds @renderer to @box, packed with reference to the start of @box.
Sets the spacing to add between cell renderers in @box.
the main Gtk struct
the main Gtk struct
Get the main Gtk struct
the main Gtk struct as a void*
Activates @area, usually by activating the currently focused cell, however some subclasses which embed widgets in the area can also activate a widget if it currently has the focus.
This is used by #GtkCellArea subclasses when handling events to activate cells, the base #GtkCellArea class activates cells for keyboard events for free in its own GtkCellArea->activate() implementation.
Adds @renderer to @area with the default child cell properties.
Adds @sibling to @renderer’s focusable area, focus will be drawn around @renderer and all of its siblings if @renderer can focus for a given row.
Applies any connected attributes to the renderers in @area by pulling the values from @tree_model.
Connects an @attribute to apply values from @column for the #GtkTreeModel in use.
Disconnects @attribute for the @renderer in @area so that attribute will no longer be updated with values from the model.
Returns the model column that an attribute has been mapped to, or -1 if the attribute is not mapped.
Gets the value of a cell property for @renderer in @area.
Gets the values of one or more cell properties for @renderer in @area.
Sets a cell property for @renderer in @area.
Sets one or more cell properties for @renderer in @area.
This is sometimes needed for cases where rows need to share alignments in one orientation but may be separately grouped in the opposing orientation.
Creates a #GtkCellAreaContext to be used with @area for all purposes. #GtkCellAreaContext stores geometry information for rows for which it was operated on, it is important to use the same context for the same row of data at all times (i.e. one should render and handle events with the same #GtkCellAreaContext which was used to request the size of those rows of data).
Delegates event handling to a #GtkCellArea.
This should be called by the @area’s owning layout widget when focus is to be passed to @area, or moved within @area for a given @direction and row data.
Calls @callback for every #GtkCellRenderer in @area.
Calls @callback for every #GtkCellRenderer in @area with the allocated rectangle inside @cell_area.
Derives the allocation of @renderer inside @area if @area were to be renderered in @cell_area.
Gets the #GtkCellRenderer at @x and @y coordinates inside @area and optionally returns the full cell allocation for it inside @cell_area.
Gets the current #GtkTreePath string for the currently applied #GtkTreeIter, this is implicitly updated when gtk_cell_area_apply_attributes() is called and can be used to interact with renderers from #GtkCellArea subclasses.
Gets the #GtkCellEditable widget currently used to edit the currently edited cell.
Gets the #GtkCellRenderer in @area that is currently being edited.
Retrieves the currently focused cell for @area
Gets the #GtkCellRenderer which is expected to be focusable for which @renderer is, or may be a sibling.
Gets the focus sibling cell renderers for @renderer.
Retrieves a cell area’s initial minimum and natural height.
Retrieves a cell area’s minimum and natural height if it would be given the specified @width.
Retrieves a cell area’s initial minimum and natural width.
Retrieves a cell area’s minimum and natural width if it would be given the specified @height.
Gets whether the area prefers a height-for-width layout or a width-for-height layout.
Checks if @area contains @renderer.
This is a convenience function for #GtkCellArea implementations to get the inner area where a given #GtkCellRenderer will be rendered. It removes any padding previously added by gtk_cell_area_request_renderer().
Returns whether the area can do anything when activated, after applying new attributes to @area.
Returns whether @sibling is one of @renderer’s focus siblings (see gtk_cell_area_add_focus_sibling()).
Removes @renderer from @area.
Removes @sibling from @renderer’s focus sibling list (see gtk_cell_area_add_focus_sibling()).
Renders @area’s cells according to @area’s layout onto @widget at the given coordinates.
This is a convenience function for #GtkCellArea implementations to request size for cell renderers. It’s important to use this function to request size and then use gtk_cell_area_inner_cell_area() at render and event time since this function will add padding around the cell for focus painting.
Explicitly sets the currently focused cell to @renderer.
Explicitly stops the editing of the currently edited cell.
Indicates that editing has started on @renderer and that @editable should be added to the owning cell-layouting widget at @cell_area.
This signal is emitted whenever applying attributes to @area from @model
Indicates that focus changed on this @area. This signal is emitted either as a result of focus handling or event handling.
Indicates that editing finished on @renderer and that @editable should be removed from the owning cell-layouting widget.
Get the main Gtk struct
the main Gtk struct as a void*
Retrieves the orientation of the @orientable.
Sets the orientation of the @orientable.
The #GtkCellAreaBox renders cell renderers into a row or a column depending on its #GtkOrientation.
GtkCellAreaBox uses a notion of packing. Packing refers to adding cell renderers with reference to a particular position in a #GtkCellAreaBox. There are two reference positions: the start and the end of the box. When the #GtkCellAreaBox is oriented in the %GTK_ORIENTATION_VERTICAL orientation, the start is defined as the top of the box and the end is defined as the bottom. In the %GTK_ORIENTATION_HORIZONTAL orientation start is defined as the left side and the end is defined as the right side.
Alignments of #GtkCellRenderers rendered in adjacent rows can be configured by configuring the #GtkCellAreaBox align child cell property with gtk_cell_area_cell_set_property() or by specifying the "align" argument to gtk_cell_area_box_pack_start() and gtk_cell_area_box_pack_end().