Struct gtk::EntryCompletion [−][src]
pub struct EntryCompletion(_);
Expand description
EntryCompletion
is an auxiliary object to be used in conjunction with
Entry
to provide the completion functionality. It implements the
CellLayout
interface, to allow the user to add extra cells to the
TreeView
with completion matches.
“Completion functionality” means that when the user modifies the text
in the entry, EntryCompletion
checks which rows in the model match
the current content of the entry, and displays a list of matches.
By default, the matching is done by comparing the entry text
case-insensitively against the text column of the model (see
EntryCompletionExt::set_text_column()
), but this can be overridden
with a custom match function (see EntryCompletionExt::set_match_func()
).
When the user selects a completion, the content of the entry is
updated. By default, the content of the entry is replaced by the
text column of the model, but this can be overridden by connecting
to the signal::EntryCompletion::match-selected
signal and updating the
entry in the signal handler. Note that you should return true
from
the signal handler to suppress the default behaviour.
To add completion functionality to an entry, use EntryExt::set_completion()
.
In addition to regular completion matches, which will be inserted into the
entry when they are selected, EntryCompletion
also allows to display
“actions” in the popup window. Their appearance is similar to menuitems,
to differentiate them clearly from completion strings. When an action is
selected, the signal::EntryCompletion::action-activated
signal is emitted.
GtkEntryCompletion uses a TreeModelFilter
model to represent the
subset of the entire model that is currently matching. While the
GtkEntryCompletion signals signal::EntryCompletion::match-selected
and
signal::EntryCompletion::cursor-on-match
take the original model and an
iter pointing to that model as arguments, other callbacks and signals
(such as GtkCellLayoutDataFuncs
or signal::CellArea::apply-attributes
)
will generally take the filter model as argument. As long as you are
only calling gtk_tree_model_get()
, this will make no difference to
you. If for some reason, you need the original model, use
TreeModelFilterExt::model()
. Don’t forget to use
TreeModelFilterExt::convert_iter_to_child_iter()
to obtain a
matching iter.
Implements
EntryCompletionExt
, glib::ObjectExt
, BuildableExt
, CellLayoutExt
, EntryCompletionExtManual
, BuildableExtManual
Implementations
Creates a new EntryCompletion
object using the
specified area
to layout cells in the underlying
TreeViewColumn
for the drop-down menu.
area
the CellArea
used to layout cells
Returns
A newly created EntryCompletion
object
Creates a new builder-pattern struct instance to construct EntryCompletion
objects.
This method returns an instance of EntryCompletionBuilder
which can be used to create EntryCompletion
objects.
Trait Implementations
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Returns the type identifier of Self
.
Auto Trait Implementations
impl RefUnwindSafe for EntryCompletion
impl !Send for EntryCompletion
impl !Sync for EntryCompletion
impl Unpin for EntryCompletion
impl UnwindSafe for EntryCompletion
Blanket Implementations
Mutably borrows from an owned value. Read more
Upcasts an object to a superclass or interface T
. Read more
Upcasts an object to a reference of its superclass or interface T
. Read more
Tries to downcast to a subclass or interface implementor T
. Read more
Tries to downcast to a reference of its subclass or interface implementor T
. Read more
Tries to cast to an object of type T
. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast
and upcast
will do many checks at compile-time already. Read more
Tries to cast to reference to an object of type T
. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast
and upcast
will do many checks at compile-time already. Read more
Casts to T
unconditionally. Read more
Casts to &T
unconditionally. Read more
Returns true
if the object is an instance of (can be cast to) T
.
pub fn set_properties_from_value(
&self,
property_values: &[(&str, Value)]
) -> Result<(), BoolError>
pub fn set_property<'a, N, V>(
&self,
property_name: N,
value: V
) -> Result<(), BoolError> where
V: ToValue,
N: Into<&'a str>,
pub fn set_property_from_value<'a, N>(
&self,
property_name: N,
value: &Value
) -> Result<(), BoolError> where
N: Into<&'a str>,
Safety Read more
Safety Read more
Safety Read more
Safety Read more
pub fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
pub fn connect_notify_local<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec),
pub unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
pub fn has_property<'a, N>(&self, property_name: N, type_: Option<Type>) -> bool where
N: Into<&'a str>,
pub fn find_property<'a, N>(&self, property_name: N) -> Option<ParamSpec> where
N: Into<&'a str>,
pub fn connect<'a, N, F>(
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
N: Into<&'a str>,
Same as connect
but takes a SignalId
instead of a signal name.
pub fn connect_local<'a, N, F>(
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value> + 'static,
N: Into<&'a str>,
Same as connect_local
but takes a SignalId
instead of a signal name.
pub unsafe fn connect_unsafe<'a, N, F>(
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
N: Into<&'a str>,
Same as connect_unsafe
but takes a SignalId
instead of a signal name.
Emit signal by signal id.
Emit signal with details by signal id.
Emit signal by it’s name.
pub fn bind_property<'a, O, N, M>(
&'a self,
source_property: N,
target: &'a O,
target_property: M
) -> BindingBuilder<'a> where
O: ObjectType,
N: Into<&'a str>,
M: Into<&'a str>,
Same as emit
but takes Value
for the arguments.
Same as emit_by_name
but takes Value
for the arguments.
Returns a SendValue
clone of self
.
impl<'a, T, C> FromValueOptional<'a> for T where
C: ValueTypeChecker<Error = ValueTypeMismatchOrNoneError>,
T: FromValue<'a, Checker = C>,