The TreeSelection object is a helper object to manage the selection for a
TreeView
widget. The TreeSelection object is automatically created
when a newTreeView widget is created, and cannot exist independentally of
this widget. The primary reason the TreeSelection objects exists is for
cleanliness of code and API. That is, there is no conceptual reason all
these functions could not be methods on the TreeView widget instead of a
separate function.
The TreeSelection object is gotten from a TreeView by calling
TreeView.getSelection()
. It can be manipulated to check the
selection status of the tree, as well as select and deselect individual
rows. Selection is done completely view side. As a result, multiple views
of the same model can have completely different selections. Additionally,
you cannot change the selection of a row on the model that is not currently
displayed by the view without expanding its parents first.
One of the important things to remember when monitoring the selection
of a view is that the "changed" event is mostly a hint. That is, it may only
emit one signal when a range of rows is selected. Additionally, it may on
occasion emit a "changed" event when nothing has happened (mostly as a
result of programmers calling selectRow on an already selected row).
countRows
public int countRows()
Returns the number of rows that have been selected.
- 2.2
forEachSelected
public void forEachSelected(TreeSelectionForEach implementor)
Calls the forEach method of the specified class for every selected value.
getEventListenerClass
public Class getEventListenerClass(String signal)
- getEventListenerClass in interface GObject
getEventType
public EventType getEventType(String signal)
- getEventType in interface GObject
getSelected
public boolean getSelected(TreeIter iter)
Returns TRUE if the row pointed to by iter is currently selected.
iter
- The iter to test the selection of
- true if the iter is selected.
getSelected
public boolean getSelected(TreePath path)
Returns TRUE if the row pointed to by path is currently selected. If
path does not point to a valid location, FALSE is returned
path
- A patch to check the selection on
- True if the path is selected.
getSelectedRows
public TreePath[] getSelectedRows()
Returns an array of rows which are currently selected
- 2.2
getTreeView
public TreeView getTreeView()
Returns the
TreeView
associated with the selection.
- Associated widget
getType
public static Type getType()
Retrieve the runtime type used by the GLib library.
gtk_tree_selection_count_selected_rows
protected static final int gtk_tree_selection_count_selected_rows(Handle selection)
gtk_tree_selection_get_mode
protected static final int gtk_tree_selection_get_mode(Handle selection)
gtk_tree_selection_get_selected_rows
protected static final Handle[] gtk_tree_selection_get_selected_rows(Handle selection)
gtk_tree_selection_get_tree_view
protected static final Handle gtk_tree_selection_get_tree_view(Handle selection)
gtk_tree_selection_get_type
protected static final int gtk_tree_selection_get_type()
gtk_tree_selection_iter_is_selected
protected static final boolean gtk_tree_selection_iter_is_selected(Handle selection,
Handle iter)
gtk_tree_selection_path_is_selected
protected static final boolean gtk_tree_selection_path_is_selected(Handle selection,
Handle path)
gtk_tree_selection_select_all
protected static final void gtk_tree_selection_select_all(Handle selection)
gtk_tree_selection_select_iter
protected static final void gtk_tree_selection_select_iter(Handle selection,
Handle iter)
gtk_tree_selection_select_path
protected static final void gtk_tree_selection_select_path(Handle selection,
Handle path)
gtk_tree_selection_select_range
protected static final void gtk_tree_selection_select_range(Handle selection,
Handle startPath,
Handle endPath)
gtk_tree_selection_set_mode
protected static final void gtk_tree_selection_set_mode(Handle selection,
int type)
gtk_tree_selection_unselect_all
protected static final void gtk_tree_selection_unselect_all(Handle selection)
gtk_tree_selection_unselect_iter
protected static final void gtk_tree_selection_unselect_iter(Handle selection,
Handle iter)
gtk_tree_selection_unselect_path
protected static final void gtk_tree_selection_unselect_path(Handle selection,
Handle path)
gtk_tree_selection_unselect_range
protected static final void gtk_tree_selection_unselect_range(Handle selection,
Handle startPath,
Handle endPath)
select
public void select(TreeIter iter)
Selects the specified iterator.
iter
- The TreeIter
to be selected.
select
public void select(TreePath path)
Select the row at path.
path
- The path to be selected.
select
public void select(TreePath startPath,
TreePath endPath)
Selects a range of nodes, determined by startPath and endPath inclusive.
startPath
- The initial node of the range.endPath
- The final node of the range.
selectAll
public void selectAll()
Selects all the nodes. Mode must be set to SelectionMode.MULTIPLE
setMode
public void setMode(SelectionMode mode)
Sets the selection mode of the selection. If the previous type was
SelectionMode.MULTIPLE, then the anchor is kept selected, if it was
previously selected.
mode
- The selection mode to use.
unselect
public void unselect(TreeIter iter)
Unselects the specified iterator.
iter
- The TreeIter
to be unselected.
unselect
public void unselect(TreePath path)
Unselects the row at path.
path
- The path to be deselected
unselectAll
public void unselectAll()
Unselects all the nodes.