struct Gtk::CellRenderer::EditingStartedSignal

Overview

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 (Gtk::CellRenderer *cell, Gtk::CellEditable *editable, const char *path, gpointer data) { if (GTK_IS_ENTRY (editable)) { Gtk::Entry *entry = GTK_ENTRY (editable);

  // ... create a Gtk::EntryCompletion

  gtk_entry_set_completion (entry, completion);
}

} ]|

Defined in:

lib/gi-crystal/src/auto/gtk-4.0/cell_renderer.cr

Instance Method Summary

Instance methods inherited from struct GObject::Signal

[](detail : String) : self [], name : String name

Constructor methods inherited from struct GObject::Signal

new(source : GObject::Object, detail : String? = nil) new

Instance Method Detail

def connect(*, after : Bool = false, &block : Proc(Gtk::CellEditable, String, Nil)) : GObject::SignalConnection #

def connect(handler : Proc(Gtk::CellEditable, String, Nil), *, after : Bool = false) : GObject::SignalConnection #

def connect(handler : Proc(Gtk::CellRenderer, Gtk::CellEditable, String, Nil), *, after : Bool = false) : GObject::SignalConnection #

def emit(editable : Gtk::CellEditable, path : String) : Nil #

def name : String #
Description copied from struct GObject::Signal

The signal name