<?xml version="1.0" standalone="no"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
    "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">

<refentry id="class-gtkcelleditable">
  <refnamediv>
    <refname>gtk.CellEditable</refname>
    <refpurpose>an interface for editing a TreeView cell</refpurpose>
  </refnamediv>

  <refsect1>
    <title>Synopsis</title>

    <classsynopsis language="python">
      <ooclass><classname>gtk.CellEditable</classname></ooclass>
      <ooclass><classname>gobject.GInterface</classname></ooclass>
      <methodsynopsis language="python">
        <methodname><link linkend="method-gtkcelleditable--start-editing">start_editing</link></methodname>
        <methodparam><parameter role="keyword">event</parameter></methodparam>
      </methodsynopsis>
      <methodsynopsis language="python">
        <methodname><link linkend="method-gtkcelleditable--editing-done">editing_done</link></methodname>
        <methodparam></methodparam>
      </methodsynopsis>
      <methodsynopsis language="python">
        <methodname><link linkend="method-gtkcelleditable--remove-widget">remove_widget</link></methodname>
        <methodparam></methodparam>
      </methodsynopsis>
    </classsynopsis>

  </refsect1>

  <refsect1 id="properties-gtkeditable">
    <title>gtk.CellEditable Properties</title>

    <blockquote role="properties">
      <informaltable pgwide="1" frame="none">
        <tgroup cols="3">
          <colspec column="1" colwidth="1in"/>
          <colspec column="2" colwidth="1in"/>
          <colspec column="3" colwidth="3.5in"/>
          <tbody>
            <row valign="top">
              <entry>"editing-canceled"</entry>
              <entry>Read/Write</entry>
              <entry>If <literal>True</literal> the editing on the cell has been canceled. This property is available in PyGTK 2.22 and above.</entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
    </blockquote>

  </refsect1>

  <refsect1 id="signal-prototypes-gtkcelleditable">
    <title>gtk.CellEditable Signal Prototypes</title>

    <variablelist>
      <varlistentry>
        <term>"<link linkend="signal-gtkcelleditable--editing-done">editing-done</link>"</term>
        <listitem>
          <methodsynopsis language="python"><methodname>callback</methodname>
            <methodparam><parameter>celleditable</parameter></methodparam>
            <methodparam><parameter>user_param1</parameter></methodparam>
            <methodparam><parameter>...</parameter></methodparam>
          </methodsynopsis>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>"<link linkend="signal-gtkcelleditable--remove-widget">remove-widget</link>"</term>
        <listitem>
          <methodsynopsis language="python">
            <methodname>callback</methodname>
            <methodparam><parameter>celleditable</parameter></methodparam>
            <methodparam><parameter>user_param1</parameter></methodparam>
            <methodparam><parameter>...</parameter></methodparam>
          </methodsynopsis>
        </listitem>
      </varlistentry>
    </variablelist>

  </refsect1>

  <refsect1>
    <title>Description</title>

    <para>The <link
linkend="class-gtkcelleditable"><classname>gtk.CellEditable</classname></link> 
is an interface that provides editing of a cell in a <link
linkend="class-gtktreeview"><classname>gtk.TreeView</classname></link>
cell.</para>

  </refsect1>

  <refsect1>
    <title>Methods</title>

    <refsect2 id="method-gtkcelleditable--start-editing">
      <title>gtk.CellEditable.start_editing</title>

      <programlisting><methodsynopsis language="python">
        <methodname>start_editing</methodname>
        <methodparam><parameter role="keyword">event</parameter></methodparam>
      </methodsynopsis></programlisting>
      <variablelist>
        <varlistentry>
          <term><parameter role="keyword">event</parameter>&nbsp;:</term>
          <listitem><simpara>A <link linkend="class-gdkevent"><classname>gtk.gdk.Event</classname></link>, or <literal>None</literal></simpara></listitem>
        </varlistentry>
      </variablelist>

      <para>The <methodname>start_editing</methodname>() method begins the
editing on a <parameter>cell_editable</parameter> widget that has been
reparented over the treeview cell.  <parameter>event</parameter> is the
<link linkend="class-gdkevent"><classname>gtk.gdk.Event</classname></link>
that began the editing process. If the editing was initiated through
programmatic means, <parameter>event</parameter> may be
<literal>None</literal>, .
</para>

    </refsect2>

    <refsect2 id="method-gtkcelleditable--editing-done">
      <title>gtk.CellEditable.editing_done</title>

      <programlisting><methodsynopsis language="python">
        <methodname>editing_done</methodname>
        <methodparam></methodparam>
      </methodsynopsis></programlisting>

      <para>The <methodname>editing_done</methodname>() method emits the
"editing_done" signal that notifies the cell renderer to update it's value
from the cell.</para>

    </refsect2>

    <refsect2 id="method-gtkcelleditable--remove-widget">
      <title>gtk.CellEditable.remove_widget</title>

      <programlisting><methodsynopsis language="python">
        <methodname>remove_widget</methodname>
        <methodparam></methodparam>
      </methodsynopsis></programlisting>

      <para>The remove_widget() method emits the "remove_widget" signal that
indicates that the cell is finished editing, and the celleditable widget may
now be destroyed.</para>

    </refsect2>

  </refsect1>

  <refsect1>
    <title>Signals</title>

    <refsect2 id="signal-gtkcelleditable--editing-done">
      <title>The "editing-done" gtk.CellEditable Signal</title>

      <programlisting><methodsynopsis language="python">
        <methodname>callback</methodname>
        <methodparam><parameter>celleditable</parameter></methodparam>
        <methodparam><parameter>user_param1</parameter></methodparam>
        <methodparam><parameter>...</parameter></methodparam>
      </methodsynopsis></programlisting>

      <variablelist>
        <varlistentry>
          <term><parameter>celleditable</parameter>&nbsp;:</term>
          <listitem><simpara>the celleditable that received the signal</simpara></listitem>
        </varlistentry>
        <varlistentry>
          <term><parameter>user_param1</parameter>&nbsp;:</term>
          <listitem><simpara>the first user parameter (if any) specified with the <link linkend="method-gobject--connect"><methodname>connect</methodname>()</link> method</simpara></listitem>
        </varlistentry>
        <varlistentry>
          <term><parameter>...</parameter>&nbsp;:</term>
          <listitem><simpara>additional user parameters (if any)</simpara></listitem>
        </varlistentry>
      </variablelist>

      <para>The "editing-done" signal is emitted when the <link
linkend="method-gtkcelleditable--editing-done"><methodname>editing_done</methodname>()</link> 
method is called.</para>

    </refsect2>

    <refsect2 id="signal-gtkcelleditable--remove-widget">
      <title>The "remove-widget" gtk.CellEditable Signal</title>

      <programlisting><methodsynopsis language="python">
        <methodname>callback</methodname>
        <methodparam><parameter>celleditable</parameter></methodparam>
        <methodparam><parameter>user_param1</parameter></methodparam>
        <methodparam><parameter>...</parameter></methodparam>
      </methodsynopsis></programlisting>

      <variablelist>
        <varlistentry>
          <term><parameter>celleditable</parameter>&nbsp;:</term>
          <listitem><simpara>the celleditable that received the signal</simpara></listitem>
        </varlistentry>
        <varlistentry>
          <term><parameter>user_param1</parameter>&nbsp;:</term>
          <listitem><simpara>the first user parameter (if any) specified with the <link linkend="method-gobject--connect"><methodname>connect</methodname>()</link> method</simpara></listitem>
        </varlistentry>
        <varlistentry>
          <term><parameter>...</parameter>&nbsp;:</term>
          <listitem><simpara>additional user parameters (if any)</simpara></listitem>
        </varlistentry>
      </variablelist>

      <para>The "remove-widget" signal is emitted when the cellrenderer for
the treeview cell has retrieved the edited information and the celleditable
widget can be destroyed.</para>

    </refsect2>

  </refsect1>

</refentry>
