Trait gtk::prelude::CellEditableExt
source · [−]pub trait CellEditableExt: 'static {
fn editing_done(&self);
fn remove_widget(&self);
fn start_editing(&self, event: Option<&Event>);
fn is_editing_canceled(&self) -> bool;
fn set_editing_canceled(&self, editing_canceled: bool);
fn connect_editing_done<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_remove_widget<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_editing_canceled_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
}
Expand description
Trait containing all CellEditable
methods.
Implementors
AppChooserButton
, CellEditable
, ComboBoxText
, ComboBox
, Entry
, SearchEntry
, SpinButton
Required Methods
fn editing_done(&self)
fn editing_done(&self)
Emits the signal::CellEditable::editing-done
signal.
fn remove_widget(&self)
fn remove_widget(&self)
Emits the signal::CellEditable::remove-widget
signal.
fn start_editing(&self, event: Option<&Event>)
fn start_editing(&self, event: Option<&Event>)
Begins editing on a self
.
The CellRenderer
for the cell creates and returns a CellEditable
from
CellRendererExt::start_editing()
, configured for the CellRenderer
type.
start_editing()
can then set up self
suitably for
editing a cell, e.g. making the Esc key emit signal::CellEditable::editing-done
.
Note that the self
is created on-demand for the current edit; its
lifetime is temporary and does not persist across other edits and/or cells.
event
The GdkEvent
that began the editing process, or
None
if editing was initiated programmatically
fn is_editing_canceled(&self) -> bool
fn is_editing_canceled(&self) -> bool
Indicates whether editing on the cell has been canceled.
fn set_editing_canceled(&self, editing_canceled: bool)
fn set_editing_canceled(&self, editing_canceled: bool)
Indicates whether editing on the cell has been canceled.
fn connect_editing_done<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn connect_editing_done<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
This signal is a sign for the cell renderer to update its
value from the cell_editable
.
Implementations of CellEditable
are responsible for
emitting this signal when they are done editing, e.g.
Entry
emits this signal when the user presses Enter. Typical things to
do in a handler for ::editing-done are to capture the edited value,
disconnect the cell_editable
from signals on the CellRenderer
, etc.
editing_done()
is a convenience method
for emitting signal::CellEditable::editing-done
.
fn connect_remove_widget<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn connect_remove_widget<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
This signal is meant to indicate that the cell is finished
editing, and the cell_editable
widget is being removed and may
subsequently be destroyed.
Implementations of CellEditable
are responsible for
emitting this signal when they are done editing. It must
be emitted after the signal::CellEditable::editing-done
signal,
to give the cell renderer a chance to update the cell’s value
before the widget is removed.
remove_widget()
is a convenience method
for emitting signal::CellEditable::remove-widget
.