### Signal

# Gtk CellRenderer::editing-started

since: 4.0

#### Declaration

    void
    editing_started (
      GtkCellRenderer* self,
      GtkCellEditable* editable,
      gchar* path,
      gpointer user_data
    )

#### Description [src]

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`.

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);
        }
    }

Default handler: The default handler is called before the handlers added via `g_signal_connect()`.
Available since: 4.0

#### Parameters

`editable`

  Type: `GtkCellEditable`

  The `GtkCellEditable`

  The data is owned by the caller of the function.

`path`

  Type: `gchar*`

  The path identifying the edited cell.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.