CellRenderer
⚠️ Deprecated ⚠️
This is deprecated since version 4.10.
List views use widgets for displaying their contents
An object for rendering a single cell
The GtkCellRenderer
is a base class of a set of objects used for rendering a cell to a cairo_t
. These objects are used primarily by the GtkTreeView
widget, though they aren’t tied to them in any specific way. It is worth noting that GtkCellRenderer
is not a GtkWidget
and cannot be treated as such.
The primary use of a GtkCellRenderer
is for drawing a certain graphical elements on a cairo_t
. Typically, one cell renderer is used to draw many cells on the screen. To this extent, it isn’t expected that a CellRenderer keep any permanent state around. Instead, any state is set just prior to use using GObject
s property system. Then, the cell is measured using gtk_cell_renderer_get_preferred_size(). Finally, the cell is rendered in the correct location using gtk_cell_renderer_snapshot().
There are a number of rules that must be followed when writing a new GtkCellRenderer
. First and foremost, it’s important that a certain set of properties will always yield a cell renderer of the same size, barring a style change. The GtkCellRenderer
also has a number of generic properties that are expected to be honored by all children.
Beyond merely rendering a cell, cell renderers can optionally provide active user interface elements. A cell renderer can be “activatable” like GtkCellRenderer
Toggle, which toggles when it gets activated by a mouse click, or it can be “editable” like GtkCellRenderer
Text, which allows the user to edit the text using a widget implementing the GtkCellEditable
interface, e.g. GtkEntry
. To make a cell renderer activatable or editable, you have to implement the GtkCellRenderer
Class.activate or GtkCellRenderer
Class.start_editing virtual functions, respectively.
Many properties of GtkCellRenderer
and its subclasses have a corresponding “set” property, e.g. “cell-background-set” corresponds to “cell-background”. These “set” properties reflect whether a property has been set or not. You should not set them independently.
Skipped during bindings generation
parameter
xalign
: xalign: Out parameter is not supportedparameter
width
: width: Out parameter is not supportedparameter
xpad
: xpad: Out parameter is not supportedparameter
minimum_size
: minimum_size: Out parameter is not supportedparameter
minimum_height
: minimum_height: Out parameter is not supportedparameter
minimum_size
: minimum_size: Out parameter is not supportedparameter
minimum_width
: minimum_width: Out parameter is not supportedmethod
cell-background
: Property has no getter nor settermethod
cell-background-rgba
: Property has no getter nor settermethod
cell-background-set
: Property has no getter nor settermethod
editing
: Property has no getter nor settermethod
height
: Property has no getter nor settermethod
mode
: Property has no getter nor settermethod
width
: Property has no getter nor settermethod
xalign
: Property has no getter nor settermethod
xpad
: Property has no getter nor settermethod
yalign
: Property has no getter nor settermethod
ypad
: Property has no getter nor setter
Inheritors
Constructors
Types
The CellRendererImpl type represents a native instance of the abstract CellRenderer class.
Functions
Emits the "editing-canceled" signal. See onEditingCanceled.
Emits the "editing-started" signal. See onEditingStarted.
This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This signal gets emitted when the user cancels the process of editing a cell. For example, an editable cell renderer could be written to cancel editing when the user presses Escape.
This signal gets emitted when a cell starts to be edited. The intended use of this signal is to do special setup on @editable, e.g. adding a GtkEntryCompletion
or setting up additional columns in a GtkComboBox
.
This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---This is deprecated since version 4.10.
---