Interface

Gtk-4.0GtkCellRendererComboSignalSignatures

interface SignalSignatures {
    changed: (arg0: string, arg1: Gtk.TreeIter) => void;
    edited: (arg0: string, arg1: string) => void;
    "editing-canceled": () => void;
    "editing-started": (arg0: Gtk.CellEditable, arg1: string) => void;
    notify: (arg0: GObject.ParamSpec) => void;
    "notify::align-set": (pspec: GObject.ParamSpec) => void;
    "notify::alignment": (pspec: GObject.ParamSpec) => void;
    "notify::attributes": (pspec: GObject.ParamSpec) => void;
    "notify::background": (pspec: GObject.ParamSpec) => void;
    "notify::background-rgba": (pspec: GObject.ParamSpec) => void;
    "notify::background-set": (pspec: GObject.ParamSpec) => void;
    "notify::cell-background": (pspec: GObject.ParamSpec) => void;
    "notify::cell-background-rgba": (pspec: GObject.ParamSpec) => void;
    "notify::cell-background-set": (pspec: GObject.ParamSpec) => void;
    "notify::editable": (pspec: GObject.ParamSpec) => void;
    "notify::editable-set": (pspec: GObject.ParamSpec) => void;
    "notify::editing": (pspec: GObject.ParamSpec) => void;
    "notify::ellipsize": (pspec: GObject.ParamSpec) => void;
    "notify::ellipsize-set": (pspec: GObject.ParamSpec) => void;
    "notify::family": (pspec: GObject.ParamSpec) => void;
    "notify::family-set": (pspec: GObject.ParamSpec) => void;
    "notify::font": (pspec: GObject.ParamSpec) => void;
    "notify::font-desc": (pspec: GObject.ParamSpec) => void;
    "notify::foreground": (pspec: GObject.ParamSpec) => void;
    "notify::foreground-rgba": (pspec: GObject.ParamSpec) => void;
    "notify::foreground-set": (pspec: GObject.ParamSpec) => void;
    "notify::has-entry": (pspec: GObject.ParamSpec) => void;
    "notify::height": (pspec: GObject.ParamSpec) => void;
    "notify::is-expanded": (pspec: GObject.ParamSpec) => void;
    "notify::is-expander": (pspec: GObject.ParamSpec) => void;
    "notify::language": (pspec: GObject.ParamSpec) => void;
    "notify::language-set": (pspec: GObject.ParamSpec) => void;
    "notify::markup": (pspec: GObject.ParamSpec) => void;
    "notify::max-width-chars": (pspec: GObject.ParamSpec) => void;
    "notify::mode": (pspec: GObject.ParamSpec) => void;
    "notify::model": (pspec: GObject.ParamSpec) => void;
    "notify::placeholder-text": (pspec: GObject.ParamSpec) => void;
    "notify::rise": (pspec: GObject.ParamSpec) => void;
    "notify::rise-set": (pspec: GObject.ParamSpec) => void;
    "notify::scale": (pspec: GObject.ParamSpec) => void;
    "notify::scale-set": (pspec: GObject.ParamSpec) => void;
    "notify::sensitive": (pspec: GObject.ParamSpec) => void;
    "notify::single-paragraph-mode": (pspec: GObject.ParamSpec) => void;
    "notify::size": (pspec: GObject.ParamSpec) => void;
    "notify::size-points": (pspec: GObject.ParamSpec) => void;
    "notify::size-set": (pspec: GObject.ParamSpec) => void;
    "notify::stretch": (pspec: GObject.ParamSpec) => void;
    "notify::stretch-set": (pspec: GObject.ParamSpec) => void;
    "notify::strikethrough": (pspec: GObject.ParamSpec) => void;
    "notify::strikethrough-set": (pspec: GObject.ParamSpec) => void;
    "notify::style": (pspec: GObject.ParamSpec) => void;
    "notify::style-set": (pspec: GObject.ParamSpec) => void;
    "notify::text": (pspec: GObject.ParamSpec) => void;
    "notify::text-column": (pspec: GObject.ParamSpec) => void;
    "notify::underline": (pspec: GObject.ParamSpec) => void;
    "notify::underline-set": (pspec: GObject.ParamSpec) => void;
    "notify::variant": (pspec: GObject.ParamSpec) => void;
    "notify::variant-set": (pspec: GObject.ParamSpec) => void;
    "notify::visible": (pspec: GObject.ParamSpec) => void;
    "notify::weight": (pspec: GObject.ParamSpec) => void;
    "notify::weight-set": (pspec: GObject.ParamSpec) => void;
    "notify::width": (pspec: GObject.ParamSpec) => void;
    "notify::width-chars": (pspec: GObject.ParamSpec) => void;
    "notify::wrap-mode": (pspec: GObject.ParamSpec) => void;
    "notify::wrap-width": (pspec: GObject.ParamSpec) => void;
    "notify::xalign": (pspec: GObject.ParamSpec) => void;
    "notify::xpad": (pspec: GObject.ParamSpec) => void;
    "notify::yalign": (pspec: GObject.ParamSpec) => void;
    "notify::ypad": (pspec: GObject.ParamSpec) => void;
}

Hierarchy (View Summary)

Index

Properties

changed: (arg0: string, arg1: Gtk.TreeIter) => void

This signal is emitted each time after the user selected an item in the combo box, either by using the mouse or the arrow keys. Contrary to GtkComboBox, GtkCellRendererCombo::changed is not emitted for changes made to a selected item in the entry. The argument new_iter corresponds to the newly selected item in the combo box and it is relative to the GtkTreeModel set via the model property on GtkCellRendererCombo.

Note that as soon as you change the model displayed in the tree view, the tree view will immediately cease the editing operating. This means that you most probably want to refrain from changing the model until the combo cell renderer emits the edited or editing_canceled signal.

"notify::align-set": (pspec: GObject.ParamSpec) => void
"notify::alignment": (pspec: GObject.ParamSpec) => void
"notify::attributes": (pspec: GObject.ParamSpec) => void
"notify::background": (pspec: GObject.ParamSpec) => void
"notify::background-rgba": (pspec: GObject.ParamSpec) => void
"notify::background-set": (pspec: GObject.ParamSpec) => void
"notify::cell-background": (pspec: GObject.ParamSpec) => void
"notify::cell-background-rgba": (pspec: GObject.ParamSpec) => void
"notify::cell-background-set": (pspec: GObject.ParamSpec) => void
"notify::editable": (pspec: GObject.ParamSpec) => void
"notify::editable-set": (pspec: GObject.ParamSpec) => void
"notify::editing": (pspec: GObject.ParamSpec) => void
"notify::ellipsize": (pspec: GObject.ParamSpec) => void
"notify::ellipsize-set": (pspec: GObject.ParamSpec) => void
"notify::family": (pspec: GObject.ParamSpec) => void
"notify::family-set": (pspec: GObject.ParamSpec) => void
"notify::font": (pspec: GObject.ParamSpec) => void
"notify::font-desc": (pspec: GObject.ParamSpec) => void
"notify::foreground": (pspec: GObject.ParamSpec) => void
"notify::foreground-rgba": (pspec: GObject.ParamSpec) => void
"notify::foreground-set": (pspec: GObject.ParamSpec) => void

notify::has-entry

"notify::has-entry": (pspec: GObject.ParamSpec) => void
"notify::height": (pspec: GObject.ParamSpec) => void
"notify::is-expanded": (pspec: GObject.ParamSpec) => void
"notify::is-expander": (pspec: GObject.ParamSpec) => void
"notify::language": (pspec: GObject.ParamSpec) => void
"notify::language-set": (pspec: GObject.ParamSpec) => void
"notify::markup": (pspec: GObject.ParamSpec) => void
"notify::max-width-chars": (pspec: GObject.ParamSpec) => void
"notify::mode": (pspec: GObject.ParamSpec) => void
"notify::model": (pspec: GObject.ParamSpec) => void
"notify::placeholder-text": (pspec: GObject.ParamSpec) => void
"notify::rise": (pspec: GObject.ParamSpec) => void
"notify::rise-set": (pspec: GObject.ParamSpec) => void
"notify::scale": (pspec: GObject.ParamSpec) => void
"notify::scale-set": (pspec: GObject.ParamSpec) => void
"notify::sensitive": (pspec: GObject.ParamSpec) => void
"notify::single-paragraph-mode": (pspec: GObject.ParamSpec) => void
"notify::size": (pspec: GObject.ParamSpec) => void
"notify::size-points": (pspec: GObject.ParamSpec) => void
"notify::size-set": (pspec: GObject.ParamSpec) => void
"notify::stretch": (pspec: GObject.ParamSpec) => void
"notify::stretch-set": (pspec: GObject.ParamSpec) => void
"notify::strikethrough": (pspec: GObject.ParamSpec) => void
"notify::strikethrough-set": (pspec: GObject.ParamSpec) => void
"notify::style": (pspec: GObject.ParamSpec) => void
"notify::style-set": (pspec: GObject.ParamSpec) => void
"notify::text": (pspec: GObject.ParamSpec) => void
"notify::text-column": (pspec: GObject.ParamSpec) => void
"notify::underline": (pspec: GObject.ParamSpec) => void
"notify::underline-set": (pspec: GObject.ParamSpec) => void
"notify::variant": (pspec: GObject.ParamSpec) => void
"notify::variant-set": (pspec: GObject.ParamSpec) => void
"notify::visible": (pspec: GObject.ParamSpec) => void
"notify::weight": (pspec: GObject.ParamSpec) => void
"notify::weight-set": (pspec: GObject.ParamSpec) => void
"notify::width": (pspec: GObject.ParamSpec) => void
"notify::width-chars": (pspec: GObject.ParamSpec) => void
"notify::wrap-mode": (pspec: GObject.ParamSpec) => void
"notify::wrap-width": (pspec: GObject.ParamSpec) => void
"notify::xalign": (pspec: GObject.ParamSpec) => void
"notify::xpad": (pspec: GObject.ParamSpec) => void
"notify::yalign": (pspec: GObject.ParamSpec) => void
"notify::ypad": (pspec: GObject.ParamSpec) => void

Properties - Inherited from Gtk.CellRendererText.SignalSignatures

edited: (arg0: string, arg1: string) => void

This signal is emitted after renderer has been edited.

It is the responsibility of the application to update the model and store new_text at the position indicated by path.

"editing-canceled": () => void

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.

See also: gtk_cell_renderer_stop_editing().

"editing-started": (arg0: Gtk.CellEditable, arg1: string) => void

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 Gtk.EntryCompletion or setting up additional columns in a Gtk.ComboBox.

See gtk_cell_editable_start_editing() for information on the lifecycle of the editable and a way to do setup that doesn’t depend on the renderer.

Note that GTK doesn't guarantee that cell renderers will continue to use the same kind of widget for editing in future releases, therefore you should check the type of editable before doing any specific setup, as in the following example:

static void
text_editing_started (GtkCellRenderer *cell,
GtkCellEditable *editable,
const char *path,
gpointer data)
{
if (GTK_IS_ENTRY (editable))
{
GtkEntry *entry = GTK_ENTRY (editable);

// ... create a GtkEntryCompletion

gtk_entry_set_completion (entry, completion);
}
}
notify: (arg0: GObject.ParamSpec) => void

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with GObject.ParamFlags.EXPLICIT_NOTIFY, then any call to g_object_set_property() results in ::notify being emitted, even if the new value is the same as the old. If they did pass GObject.ParamFlags.EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

g_signal_connect (text_view->buffer, "notify::paste-target-list",
G_CALLBACK (gtk_text_view_target_list_notify),
text_view)

It is important to note that you must use [canonical parameter names][class@GObject.ParamSpec#parameter-names] as detail strings for the notify signal.