Trait gtk4::prelude::TreeModelExt
source · pub trait TreeModelExt: 'static {
Show 24 methods
// Required methods
fn foreach<P: FnMut(&TreeModel, &TreePath, &TreeIter) -> bool>(
&self,
func: P
);
fn column_type(&self, index_: i32) -> Type;
fn flags(&self) -> TreeModelFlags;
fn iter(&self, path: &TreePath) -> Option<TreeIter>;
fn iter_first(&self) -> Option<TreeIter>;
fn iter_from_string(&self, path_string: &str) -> Option<TreeIter>;
fn n_columns(&self) -> i32;
fn path(&self, iter: &TreeIter) -> TreePath;
fn string_from_iter(&self, iter: &TreeIter) -> Option<GString>;
fn iter_children(&self, parent: Option<&TreeIter>) -> Option<TreeIter>;
fn iter_has_child(&self, iter: &TreeIter) -> bool;
fn iter_n_children(&self, iter: Option<&TreeIter>) -> i32;
fn iter_next(&self, iter: &TreeIter) -> bool;
fn iter_nth_child(
&self,
parent: Option<&TreeIter>,
n: i32
) -> Option<TreeIter>;
fn iter_parent(&self, child: &TreeIter) -> Option<TreeIter>;
fn iter_previous(&self, iter: &TreeIter) -> bool;
fn row_changed(&self, path: &TreePath, iter: &TreeIter);
fn row_deleted(&self, path: &TreePath);
fn row_has_child_toggled(&self, path: &TreePath, iter: &TreeIter);
fn row_inserted(&self, path: &TreePath, iter: &TreeIter);
fn connect_row_changed<F: Fn(&Self, &TreePath, &TreeIter) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_row_deleted<F: Fn(&Self, &TreePath) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_row_has_child_toggled<F: Fn(&Self, &TreePath, &TreeIter) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_row_inserted<F: Fn(&Self, &TreePath, &TreeIter) + 'static>(
&self,
f: F
) -> SignalHandlerId;
}
Expand description
Trait containing all TreeModel
methods.
Implementors
ListStore
, TreeModelFilter
, TreeModelSort
, TreeModel
, TreeSortable
, TreeStore
Required Methods§
sourcefn column_type(&self, index_: i32) -> Type
fn column_type(&self, index_: i32) -> Type
sourcefn flags(&self) -> TreeModelFlags
fn flags(&self) -> TreeModelFlags
sourcefn iter_first(&self) -> Option<TreeIter>
fn iter_first(&self) -> Option<TreeIter>
sourcefn iter_from_string(&self, path_string: &str) -> Option<TreeIter>
fn iter_from_string(&self, path_string: &str) -> Option<TreeIter>
sourcefn string_from_iter(&self, iter: &TreeIter) -> Option<GString>
fn string_from_iter(&self, iter: &TreeIter) -> Option<GString>
sourcefn iter_children(&self, parent: Option<&TreeIter>) -> Option<TreeIter>
fn iter_children(&self, parent: Option<&TreeIter>) -> Option<TreeIter>
Sets @iter to point to the first child of @parent.
If @parent has no children, false
is returned and @iter is
set to be invalid. @parent will remain a valid node after this
function has been called.
If @parent is None
returns the first node, equivalent to
gtk_tree_model_get_iter_first (tree_model, iter);
parent
the TreeIter
Returns
true
, if @iter has been set to the first child
iter
the new TreeIter
to be set to the child
sourcefn iter_has_child(&self, iter: &TreeIter) -> bool
fn iter_has_child(&self, iter: &TreeIter) -> bool
sourcefn iter_n_children(&self, iter: Option<&TreeIter>) -> i32
fn iter_n_children(&self, iter: Option<&TreeIter>) -> i32
sourcefn iter_nth_child(&self, parent: Option<&TreeIter>, n: i32) -> Option<TreeIter>
fn iter_nth_child(&self, parent: Option<&TreeIter>, n: i32) -> Option<TreeIter>
Sets @iter to be the child of @parent, using the given index.
The first index is 0. If @n is too big, or @parent has no children,
@iter is set to an invalid iterator and false
is returned. @parent
will remain a valid node after this function has been called. As a
special case, if @parent is None
, then the @n-th root node
is set.
parent
the TreeIter
to get the child from
n
the index of the desired child
Returns
true
, if @parent has an @n-th child
iter
the TreeIter
to set to the nth child
sourcefn iter_parent(&self, child: &TreeIter) -> Option<TreeIter>
fn iter_parent(&self, child: &TreeIter) -> Option<TreeIter>
Sets @iter to be the parent of @child.
If @child is at the toplevel, and doesn’t have a parent, then
@iter is set to an invalid iterator and false
is returned.
@child will remain a valid node after this function has been
called.
@iter will be initialized before the lookup is performed, so @child and @iter cannot point to the same memory location.
child
the TreeIter
Returns
true
, if @iter is set to the parent of @child
iter
the new TreeIter
to set to the parent
sourcefn iter_previous(&self, iter: &TreeIter) -> bool
fn iter_previous(&self, iter: &TreeIter) -> bool
sourcefn row_changed(&self, path: &TreePath, iter: &TreeIter)
fn row_changed(&self, path: &TreePath, iter: &TreeIter)
sourcefn row_deleted(&self, path: &TreePath)
fn row_deleted(&self, path: &TreePath)
Emits the ::row-deleted signal on @self.
See signal::TreeModel::row-deleted
.
This should be called by models after a row has been removed. The location pointed to by @path should be the location that the row previously was at. It may not be a valid location anymore.
Nodes that are deleted are not unreffed, this means that any outstanding references on the deleted node should not be released.
path
a TreePath
pointing to the previous location of
the deleted row
sourcefn row_has_child_toggled(&self, path: &TreePath, iter: &TreeIter)
fn row_has_child_toggled(&self, path: &TreePath, iter: &TreeIter)
sourcefn row_inserted(&self, path: &TreePath, iter: &TreeIter)
fn row_inserted(&self, path: &TreePath, iter: &TreeIter)
sourcefn connect_row_changed<F: Fn(&Self, &TreePath, &TreeIter) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_row_changed<F: Fn(&Self, &TreePath, &TreeIter) + 'static>( &self, f: F ) -> SignalHandlerId
sourcefn connect_row_deleted<F: Fn(&Self, &TreePath) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_row_deleted<F: Fn(&Self, &TreePath) + 'static>( &self, f: F ) -> SignalHandlerId
This signal is emitted when a row has been deleted.
Note that no iterator is passed to the signal handler, since the row is already deleted.
This should be called by models after a row has been removed. The location pointed to by @path should be the location that the row previously was at. It may not be a valid location anymore.
path
a TreePath
identifying the row
sourcefn connect_row_has_child_toggled<F: Fn(&Self, &TreePath, &TreeIter) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_row_has_child_toggled<F: Fn(&Self, &TreePath, &TreeIter) + 'static>( &self, f: F ) -> SignalHandlerId
sourcefn connect_row_inserted<F: Fn(&Self, &TreePath, &TreeIter) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_row_inserted<F: Fn(&Self, &TreePath, &TreeIter) + 'static>( &self, f: F ) -> SignalHandlerId
This signal is emitted when a new row has been inserted in the model.
Note that the row may still be empty at this point, since it is a common pattern to first insert an empty row, and then fill it with the desired values.
path
a TreePath
identifying the new row
iter
a valid TreeIter
pointing to the new row