forked from AuroraMiddleware/gtk
docs
Wed Mar 6 14:12:34 2002 Jonathan Blandford <jrb@redhat.com> * gtk/tmpl/gtktreeselection.sgml: docs * gtk/tree_widget.sgml: clean up docs
This commit is contained in:
parent
cc83c500e4
commit
ba60ad9a94
@ -1,3 +1,9 @@
|
||||
Wed Mar 6 14:12:34 2002 Jonathan Blandford <jrb@redhat.com>
|
||||
|
||||
* gtk/tmpl/gtktreeselection.sgml: docs
|
||||
|
||||
* gtk/tree_widget.sgml: clean up docs
|
||||
|
||||
2002-03-05 Matthias Clasen <maclas@gmx.de>
|
||||
|
||||
* gtk/gtk-sections.txt: Remove gtk_win32_get_installation_directory.
|
||||
|
@ -2,16 +2,42 @@
|
||||
GtkTreeSelection
|
||||
|
||||
<!-- ##### SECTION Short_Description ##### -->
|
||||
|
||||
The selection object for #GtkTreeView
|
||||
|
||||
<!-- ##### SECTION Long_Description ##### -->
|
||||
<para>
|
||||
The #GtkTreeSelection object is a helper object to manage the selection
|
||||
for a #GtkTreeView widget. The #GtkTreeSelection object is
|
||||
automatically created when a new #GtkTreeView widget is created, and
|
||||
cannot exist independentally of this widget. The primary reason the
|
||||
#GtkTreeSelection 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 #GtkTreeView widget instead of a separate function.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The #GtkTreeSelection object is gotten from a #GtkTreeView by calling
|
||||
gtk_tree_view_get_selection(). 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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
One of the important things to remember when monitoring the selection of
|
||||
a view is that the "changed" signal 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" signal when nothing has happened
|
||||
(mostly as a result of programmers calling select_row on an already
|
||||
selected row).
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
#GtkTreeView, #GtkTreeViewColumn, #GtkTreeDnd, #GtkTreeMode, #GtkTreeSortable, #GtkTreeModelSort, #GtkListStore, #GtkTreeStore, #GtkCellRenderer, #GtkCellEditable, #GtkCellRendererPixbuf, #GtkCellRendererText, #GtkCellRendererToggle
|
||||
</para>
|
||||
|
||||
<!-- ##### STRUCT GtkTreeSelection ##### -->
|
||||
@ -22,26 +48,30 @@ GtkTreeSelection
|
||||
|
||||
<!-- ##### USER_FUNCTION GtkTreeSelectionFunc ##### -->
|
||||
<para>
|
||||
|
||||
A function used by gtk_tree_selection_set_select_function() to filter
|
||||
whether or not a row may be selected. It is called whenever a row's
|
||||
state might change. A return value of %TRUE indicates to @selection
|
||||
that it is okay to change the selection.
|
||||
</para>
|
||||
|
||||
@selection:
|
||||
@model:
|
||||
@path:
|
||||
@path_currently_selected:
|
||||
@data:
|
||||
@Returns:
|
||||
@selection: A #GtkTreeSelection
|
||||
@model: A #GtkTreeModel being viewed
|
||||
@path: The #GtkTreePath of the row in question
|
||||
@path_currently_selected: %TRUE, if the path is currently selected
|
||||
@data: user data
|
||||
@Returns: %TRUE, if the selection state of the row can be toggled
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GtkTreeSelectionForeachFunc ##### -->
|
||||
<para>
|
||||
|
||||
A function used by gtk_tree_selection_selected_foreach() to map all
|
||||
selected rows. It will be called on every selected row in the view.
|
||||
</para>
|
||||
|
||||
@model:
|
||||
@path:
|
||||
@iter:
|
||||
@data:
|
||||
@model: The #GtkTreeModel being viewed
|
||||
@path: The #GtkTreePath of a selected row
|
||||
@iter: A #GtkTreeIter pointing to a selected row
|
||||
@data: user data
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_tree_selection_set_mode ##### -->
|
||||
@ -196,7 +226,8 @@ GtkTreeSelection
|
||||
|
||||
<!-- ##### SIGNAL GtkTreeSelection::changed ##### -->
|
||||
<para>
|
||||
|
||||
Emitted whenever the selection has (possibly) changed. Please note that
|
||||
this signal is
|
||||
</para>
|
||||
|
||||
@treeselection: the object which received the signal.
|
||||
|
@ -50,6 +50,12 @@
|
||||
information can be found on this in the <link
|
||||
linkend="GtkTreeStore">GtkTreeModel</link> section.
|
||||
<informalexample><programlisting><![CDATA[
|
||||
enum
|
||||
{
|
||||
COLUMN_ONE,
|
||||
N_COLUMNS
|
||||
};
|
||||
|
||||
{
|
||||
GtkTreeStore *model;
|
||||
GtkWidget *view;
|
||||
@ -58,7 +64,9 @@
|
||||
|
||||
/* Create a model. We are using the store model for now, though we
|
||||
* could use any other GtkTreeModel */
|
||||
model = gtk_tree_store_new_with_values (1, G_TYPE_STRING);
|
||||
model = gtk_tree_store_new_with_values (N_COLUMNS, G_TYPE_STRING);
|
||||
|
||||
/* custom function to fill the model with data */
|
||||
populate_tree_model (model);
|
||||
|
||||
/* Create a view */
|
||||
@ -68,8 +76,8 @@
|
||||
* reference */
|
||||
g_object_unref (G_OBJECT (model));
|
||||
|
||||
/* Create a cell render and arbitrarily make it red for demonstartion
|
||||
*purposes */
|
||||
/* Create a cell render and arbitrarily make it red for demonstration
|
||||
* purposes */
|
||||
cell_renderer = gtk_cell_renderer_text_new ();
|
||||
g_object_set (G_OBJECT (cell_renderer), "foreground", "red", NULL);
|
||||
|
||||
@ -77,11 +85,14 @@
|
||||
* cell_renderer to the first column of the model */
|
||||
column = gtk_tree_view_column_new_with_attributes ("title",
|
||||
cell_renderer,
|
||||
"text", 0,
|
||||
"text", COLUMN_ONE,
|
||||
NULL);
|
||||
|
||||
/* Add the column to the view. */
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (view), column);
|
||||
|
||||
/* Now we can manipulate the view just like any other GTK widget */
|
||||
...
|
||||
}
|
||||
]]>
|
||||
</programlisting></informalexample>
|
||||
|
Loading…
Reference in New Issue
Block a user