Commit ec0c7395 authored by Javier Jardón's avatar Javier Jardón

gtktreemodelfilter: Move documentation to inline comments

parent 8d3b36d5
......@@ -50,6 +50,7 @@ gtktoolbar.sgml
gtktoolitem.sgml
gtktooltip.sgml
gtktreednd.sgml
gtktreemodelfilter.sgml
gtktreeselection.sgml
gtktreesortable.sgml
gtktreestore.sgml
......
<!-- ##### SECTION Title ##### -->
GtkTreeModelFilter
<!-- ##### SECTION Short_Description ##### -->
A GtkTreeModel which hides parts of an underlying tree model
<!-- ##### SECTION Long_Description ##### -->
<para>
A #GtkTreeModelFilter is a tree model which wraps another tree model,
and can do the following things:
<itemizedlist>
<listitem><para>
Filter specific rows, based on data from a "visible column", a column
storing booleans indicating whether the row should be filtered or not,
or based on the return value of a "visible function", which gets a
model, iter and user_data and returns a boolean indicating whether the
row should be filtered or not.
</para></listitem>
<listitem><para>
Modify the "appearance" of the model, using a modify function.
This is extremely powerful and allows for just changing
some values and also for creating a completely different model based on
the given child model.
</para></listitem>
<listitem><para>
Set a different root node, also known as a "virtual root". You can pass in
a #GtkTreePath indicating the root node for the filter at construction time.
</para></listitem>
</itemizedlist>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
#GtkTreeModelSort
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GtkTreeModelFilter ##### -->
<para>
The GtkTreeModelFilter struct contains only private fields.
</para>
<!-- ##### ARG GtkTreeModelFilter:child-model ##### -->
<para>
</para>
<!-- ##### ARG GtkTreeModelFilter:virtual-root ##### -->
<para>
</para>
<!-- ##### USER_FUNCTION GtkTreeModelFilterVisibleFunc ##### -->
<para>
A function which decides whether the row indicated by @iter is visible.
</para>
@model: the child model of the #GtkTreeModelFilter
@iter: a #GtkTreeIter pointing to the row in @model whose visibility
is determined
@data: user data given to gtk_tree_model_filter_set_visible_func()
@Returns: Whether the row indicated by @iter is visible.
<!-- ##### USER_FUNCTION GtkTreeModelFilterModifyFunc ##### -->
<para>
A function which calculates display values from raw values in the model.
It must fill @value with the display value for the column @column in the
row indicated by @iter.
</para>
<para>
Since this function is called for each data access, it's not a
particularly efficient operation.
</para>
@model: the #GtkTreeModelFilter
@iter: a #GtkTreeIter pointing to the row whose display values are determined
@value: A #GValue which is already initialized for with the correct type for
the column @column.
@column: the column whose display value is determined
@data: user data given to gtk_tree_model_filter_set_modify_func()
<!-- ##### FUNCTION gtk_tree_model_filter_new ##### -->
<para>
</para>
@child_model:
@root:
@Returns:
<!-- ##### FUNCTION gtk_tree_model_filter_set_visible_func ##### -->
<para>
</para>
@filter:
@func:
@data:
@destroy:
<!-- ##### FUNCTION gtk_tree_model_filter_set_modify_func ##### -->
<para>
</para>
@filter:
@n_columns:
@types:
@func:
@data:
@destroy:
<!-- ##### FUNCTION gtk_tree_model_filter_set_visible_column ##### -->
<para>
</para>
@filter:
@column:
<!-- ##### FUNCTION gtk_tree_model_filter_get_model ##### -->
<para>
</para>
@filter:
@Returns:
<!-- ##### FUNCTION gtk_tree_model_filter_convert_child_iter_to_iter ##### -->
<para>
</para>
@filter:
@filter_iter:
@child_iter:
@Returns:
<!-- ##### FUNCTION gtk_tree_model_filter_convert_iter_to_child_iter ##### -->
<para>
</para>
@filter:
@child_iter:
@filter_iter:
<!-- ##### FUNCTION gtk_tree_model_filter_convert_child_path_to_path ##### -->
<para>
</para>
@filter:
@child_path:
@Returns:
<!-- ##### FUNCTION gtk_tree_model_filter_convert_path_to_child_path ##### -->
<para>
</para>
@filter:
@filter_path:
@Returns:
<!-- ##### FUNCTION gtk_tree_model_filter_refilter ##### -->
<para>
</para>
@filter:
<!-- ##### FUNCTION gtk_tree_model_filter_clear_cache ##### -->
<para>
</para>
@filter:
......@@ -25,6 +25,37 @@
#include "gtkprivate.h"
#include <string.h>
/**
* SECTION:gtktreemodelfilter
* @Short_description: A GtkTreeModel which hides parts of an underlying tree model
* @Title: GtkTreeModelFilter
* @See_also:#GtkTreeModelSort
*
* A #GtkTreeModelFilter is a tree model which wraps another tree model,
* and can do the following things:
* <itemizedlist>
* <listitem><para>
* Filter specific rows, based on data from a "visible column", a column
* storing booleans indicating whether the row should be filtered or not,
* or based on the return value of a "visible function", which gets a
* model, iter and user_data and returns a boolean indicating whether the
* row should be filtered or not.
* </para></listitem>
* <listitem><para>
* Modify the "appearance" of the model, using a modify function.
* This is extremely powerful and allows for just changing
* some values and also for creating a completely different model based on
* the given child model.
* </para></listitem>
* <listitem><para>
* Set a different root node, also known as a "virtual root". You can pass in
* a #GtkTreePath indicating the root node for the filter at construction time.
* </para></listitem>
* </itemizedlist>
*/
/* ITER FORMAT:
*
* iter->stamp = filter->priv->stamp
......
......@@ -37,9 +37,38 @@ G_BEGIN_DECLS
#define GTK_IS_TREE_MODEL_FILTER_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), GTK_TYPE_TREE_MODEL_FILTER))
#define GTK_TREE_MODEL_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TREE_MODEL_FILTER, GtkTreeModelFilterClass))
/**
* GtkTreeModelFilterVisibleFunc:
* @model: the child model of the #GtkTreeModelFilter
* @iter: a #GtkTreeIter pointing to the row in @model whose visibility
* is determined
* @data: user data given to gtk_tree_model_filter_set_visible_func()
*
* A function which decides whether the row indicated by @iter is visible.
*
* Returns: Whether the row indicated by @iter is visible.
*/
typedef gboolean (* GtkTreeModelFilterVisibleFunc) (GtkTreeModel *model,
GtkTreeIter *iter,
gpointer data);
/**
* GtkTreeModelFilterModifyFunc:
* @model: the #GtkTreeModelFilter
* @iter: a #GtkTreeIter pointing to the row whose display values are determined
* @value: A #GValue which is already initialized for with the correct type for
* the column @column.
* @column: the column whose display value is determined
* @data: user data given to gtk_tree_model_filter_set_modify_func()
*
* A function which calculates display values from raw values in the model.
* It must fill @value with the display value for the column @column in the
* row indicated by @iter.
*
* Since this function is called for each data access, it's not a
* particularly efficient operation.
*/
typedef void (* GtkTreeModelFilterModifyFunc) (GtkTreeModel *model,
GtkTreeIter *iter,
GValue *value,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment