mirror of
https://github.com/brl/mutter.git
synced 2024-12-23 03:22:04 +00:00
2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-model-default.c: (clutter_model_default_iter_next), (clutter_model_default_iter_prev): Do not instantiate a new iterator, and update the passed one instead, as we say we do in the documentation. This avoid leaking tons of iterators. * clutter/clutter-model.[ch]: Update the documentation. * tests/test-model.c: Prettify some output.
This commit is contained in:
parent
6193beb8be
commit
afaa4fe26f
12
ChangeLog
12
ChangeLog
@ -1,3 +1,15 @@
|
||||
2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
|
||||
|
||||
* clutter/clutter-model-default.c:
|
||||
(clutter_model_default_iter_next),
|
||||
(clutter_model_default_iter_prev): Do not instantiate a new
|
||||
iterator, and update the passed one instead, as we say we do
|
||||
in the documentation. This avoid leaking tons of iterators.
|
||||
|
||||
* clutter/clutter-model.[ch]: Update the documentation.
|
||||
|
||||
* tests/test-model.c: Prettify some output.
|
||||
|
||||
2007-12-14 Emmanuele Bassi <ebassi@openedhand.com>
|
||||
|
||||
* clutter/clutter-behaviour.c:
|
||||
|
@ -26,7 +26,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:clutter-model-default:
|
||||
* SECTION:clutter-model-default
|
||||
* @short_description: Default model implementation
|
||||
*
|
||||
* #ClutterModelDefault is a #ClutterModel implementation provided by
|
||||
@ -313,7 +313,6 @@ static ClutterModelIter *
|
||||
clutter_model_default_iter_next (ClutterModelIter *iter)
|
||||
{
|
||||
ClutterModelDefaultIter *iter_default;
|
||||
ClutterModelDefaultIter *retval;
|
||||
ClutterModelIter *temp_iter;
|
||||
ClutterModel *model = NULL;
|
||||
GSequenceIter *filter_next;
|
||||
@ -352,20 +351,17 @@ clutter_model_default_iter_next (ClutterModelIter *iter)
|
||||
if (filter_next == iter_default->seq_iter)
|
||||
filter_next = g_sequence_iter_next (filter_next);
|
||||
|
||||
retval = g_object_new (CLUTTER_TYPE_MODEL_DEFAULT_ITER,
|
||||
"model", model,
|
||||
"row", row,
|
||||
NULL);
|
||||
retval->seq_iter = filter_next;
|
||||
/* update the iterator and return it */
|
||||
g_object_set (G_OBJECT (iter_default), "model", model, "row", row, NULL);
|
||||
iter_default->seq_iter = filter_next;
|
||||
|
||||
return CLUTTER_MODEL_ITER (retval);
|
||||
return CLUTTER_MODEL_ITER (iter_default);
|
||||
}
|
||||
|
||||
static ClutterModelIter *
|
||||
clutter_model_default_iter_prev (ClutterModelIter *iter)
|
||||
{
|
||||
ClutterModelDefaultIter *iter_default;
|
||||
ClutterModelDefaultIter *retval;
|
||||
ClutterModelIter *temp_iter;
|
||||
ClutterModel *model;
|
||||
GSequenceIter *filter_prev;
|
||||
@ -404,13 +400,11 @@ clutter_model_default_iter_prev (ClutterModelIter *iter)
|
||||
if (filter_prev == iter_default->seq_iter)
|
||||
filter_prev = g_sequence_iter_prev (filter_prev);
|
||||
|
||||
retval = g_object_new (CLUTTER_TYPE_MODEL_DEFAULT_ITER,
|
||||
"model", model,
|
||||
"row", row,
|
||||
NULL);
|
||||
retval->seq_iter = filter_prev;
|
||||
/* update the iterator and return it */
|
||||
g_object_set (G_OBJECT (iter_default), "model", model, "row", row, NULL);
|
||||
iter_default->seq_iter = filter_prev;
|
||||
|
||||
return CLUTTER_MODEL_ITER (retval);
|
||||
return CLUTTER_MODEL_ITER (iter_default);
|
||||
}
|
||||
static void
|
||||
clutter_model_default_iter_class_init (ClutterModelDefaultIterClass *klass)
|
||||
|
@ -245,9 +245,9 @@ clutter_model_class_init (ClutterModelClass *klass)
|
||||
* @model: the #ClutterModel on which the signal is emitted
|
||||
* @iter: a #ClutterModelIter pointing to the new row
|
||||
*
|
||||
* The ::row-added signal is emitted when a new row has been added
|
||||
* The ::row-added signal is emitted when a new row has been added.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
model_signals[ROW_ADDED] =
|
||||
g_signal_new ("row-added",
|
||||
@ -263,9 +263,10 @@ clutter_model_class_init (ClutterModelClass *klass)
|
||||
* @model: the #ClutterModel on which the signal is emitted
|
||||
* @iter: a #ClutterModelIter pointing to the removed row
|
||||
*
|
||||
* The ::row-removed signal is emitted when a row has been removed
|
||||
* The ::row-removed signal is emitted when a row has been removed.
|
||||
* The data on the row pointed by the passed iterator is still valid.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
model_signals[ROW_REMOVED] =
|
||||
g_signal_new ("row-removed",
|
||||
@ -283,7 +284,7 @@ clutter_model_class_init (ClutterModelClass *klass)
|
||||
*
|
||||
* The ::row-removed signal is emitted when a row has been changed
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
model_signals[ROW_CHANGED] =
|
||||
g_signal_new ("row-changed",
|
||||
@ -300,7 +301,7 @@ clutter_model_class_init (ClutterModelClass *klass)
|
||||
*
|
||||
* The ::sort-changed signal is emitted after the model has been sorted
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
model_signals[SORT_CHANGED] =
|
||||
g_signal_new ("sort-changed",
|
||||
@ -316,7 +317,7 @@ clutter_model_class_init (ClutterModelClass *klass)
|
||||
*
|
||||
* The ::filter-changed signal is emitted when a new filter has been applied
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
model_signals[FILTER_CHANGED] =
|
||||
g_signal_new ("filter-changed",
|
||||
@ -536,8 +537,9 @@ clutter_model_set_column_name (ClutterModel *model,
|
||||
|
||||
/* we implement the constructors of the default model here because
|
||||
* we need the private accessors to the column names and types
|
||||
* vectors inside ClutterModelPrivate; the ClutterModelDefault ctors
|
||||
* are declared inside clutter-model-default.h
|
||||
* vectors inside ClutterModelPrivate, to avoid having them inside
|
||||
* a private header; the ClutterModelDefault ctors are declared inside
|
||||
* clutter-model-default.h
|
||||
*/
|
||||
|
||||
/**
|
||||
@ -560,9 +562,13 @@ clutter_model_set_column_name (ClutterModel *model,
|
||||
* will create a new #ClutterModel with three columns of type int,
|
||||
* string and #GdkPixbuf respectively.
|
||||
*
|
||||
* Return value: a new #ClutterModel
|
||||
* Note that the name of the column can be set to %NULL, in which case
|
||||
* the canonical name of the type held by the column will be used as
|
||||
* the title.
|
||||
*
|
||||
* Since 0.6
|
||||
* Return value: a new default #ClutterModel
|
||||
*
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModel *
|
||||
clutter_model_default_new (guint n_columns,
|
||||
@ -606,11 +612,12 @@ clutter_model_default_new (guint n_columns,
|
||||
* @types: an array of #GType types for the columns, from first to last
|
||||
* @names: an array of names for the columns, from first to last
|
||||
*
|
||||
* Non-vararg creation function. Useful primarily by language bindings.
|
||||
* Non-vararg version of clutter_model_default_new(). This function is
|
||||
* useful for language bindings.
|
||||
*
|
||||
* Return value: a new #ClutterModel
|
||||
* Return value: a new default #ClutterModel
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModel *
|
||||
clutter_model_default_newv (guint n_columns,
|
||||
@ -653,12 +660,12 @@ clutter_model_default_newv (guint n_columns,
|
||||
* #ClutterModel, and should only be used when contructing a #ClutterModel.
|
||||
* It will not work after the initial creation of the #ClutterModel.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_set_types (ClutterModel *model,
|
||||
guint n_columns,
|
||||
GType *types)
|
||||
GType *types)
|
||||
{
|
||||
ClutterModelPrivate *priv;
|
||||
gint i;
|
||||
@ -748,7 +755,7 @@ clutter_model_get_n_columns (ClutterModel *model)
|
||||
* Creates and appends a new row to the #ClutterModel, setting the row
|
||||
* value for the given @column upon creation.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_append_value (ClutterModel *model,
|
||||
@ -787,12 +794,12 @@ clutter_model_append_value (ClutterModel *model,
|
||||
* <informalexample><programlisting>
|
||||
* ClutterModel *model;
|
||||
* model = clutter_model_default_new (2,
|
||||
* G_TYPE_INT, "My integers",
|
||||
* G_TYPE_STRING, "My strings");
|
||||
* clutter_model_append (model, 0, 42, 1, "string", -1);
|
||||
* G_TYPE_INT, "Score",
|
||||
* G_TYPE_STRING, "Team");
|
||||
* clutter_model_append (model, 0, 42, 1, "Team #1", -1);
|
||||
* </programlisting></informalexample>
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_append (ClutterModel *model,
|
||||
@ -826,7 +833,7 @@ clutter_model_append (ClutterModel *model,
|
||||
* Creates and prepends a new row to the #ClutterModel, setting the row
|
||||
* value for the given @column upon creation.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_prepend_value (ClutterModel *model,
|
||||
@ -865,12 +872,12 @@ clutter_model_prepend_value (ClutterModel *model,
|
||||
* <informalexample><programlisting>
|
||||
* ClutterModel *model;
|
||||
* model = clutter_model_default_new (2,
|
||||
* G_TYPE_INT, "My integers",
|
||||
* G_TYPE_STRING, "My strings");
|
||||
* clutter_model_prepend (model, 0, 42, 1, "string", -1);
|
||||
* G_TYPE_INT, "Score",
|
||||
* G_TYPE_STRING, "Team");
|
||||
* clutter_model_prepend (model, 0, 42, 1, "Team #1", -1);
|
||||
* </programlisting></informalexample>
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_prepend (ClutterModel *model,
|
||||
@ -908,12 +915,12 @@ clutter_model_prepend (ClutterModel *model,
|
||||
* <informalexample><programlisting>
|
||||
* ClutterModel *model;
|
||||
* model = clutter_model_default_new (2,
|
||||
* G_TYPE_INT, "My integers",
|
||||
* G_TYPE_STRING, "My strings");
|
||||
* clutter_model_insert (model, 100, 0, 42, 1, "string", -1);
|
||||
* G_TYPE_INT, "Score",
|
||||
* G_TYPE_STRING, "Team");
|
||||
* clutter_model_insert (model, 3, 0, 42, 1, "Team #1", -1);
|
||||
* </programlisting></informalexample>
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_insert (ClutterModel *model,
|
||||
@ -951,7 +958,7 @@ clutter_model_insert (ClutterModel *model,
|
||||
* @value must be convertable to the type of the column. If the row does
|
||||
* not exist then it is created.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_insert_value (ClutterModel *model,
|
||||
@ -996,7 +1003,7 @@ clutter_model_insert_value (ClutterModel *model,
|
||||
*
|
||||
* Removes the row at the given position from the model.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_remove (ClutterModel *model,
|
||||
@ -1085,12 +1092,14 @@ clutter_model_get_column_type (ClutterModel *model,
|
||||
* @model: a #ClutterModel
|
||||
* @row: position of the row to retrieve
|
||||
*
|
||||
* Retrieves a #ClutterModelIter representing the row at the given position.
|
||||
* Retrieves a #ClutterModelIter representing the row at the given index.
|
||||
*
|
||||
* Return value: A new #ClutterModelIter, or %NULL if @row was out-of-bounds
|
||||
* Return value: A new #ClutterModelIter, or %NULL if @row was out of bounds.
|
||||
* When done using the iterator object, call g_object_unref() to deallocate
|
||||
* its resources
|
||||
*
|
||||
* Since 0.6
|
||||
**/
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModelIter *
|
||||
clutter_model_get_iter_at_row (ClutterModel *model,
|
||||
guint row)
|
||||
@ -1113,10 +1122,11 @@ clutter_model_get_iter_at_row (ClutterModel *model,
|
||||
*
|
||||
* Retrieves a #ClutterModelIter representing the first row in @model.
|
||||
*
|
||||
* Return value: A new #ClutterModelIter
|
||||
* Return value: A new #ClutterModelIter. Call g_object_unref() when
|
||||
* done using it
|
||||
*
|
||||
* Since 0.6
|
||||
**/
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModelIter *
|
||||
clutter_model_get_first_iter (ClutterModel *model)
|
||||
{
|
||||
@ -1131,10 +1141,11 @@ clutter_model_get_first_iter (ClutterModel *model)
|
||||
*
|
||||
* Retrieves a #ClutterModelIter representing the last row in @model.
|
||||
*
|
||||
* Return value: A new #ClutterModelIter
|
||||
* Return value: A new #ClutterModelIter. Call g_object_unref() when
|
||||
* done using it
|
||||
*
|
||||
* Since 0.6
|
||||
**/
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModelIter *
|
||||
clutter_model_get_last_iter (ClutterModel *model)
|
||||
{
|
||||
@ -1156,7 +1167,7 @@ clutter_model_get_last_iter (ClutterModel *model)
|
||||
* Return value: The length of the @model. If there is a filter set, then
|
||||
* the length of the filtered @model is returned.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
guint
|
||||
clutter_model_get_n_rows (ClutterModel *model)
|
||||
@ -1200,7 +1211,7 @@ clutter_model_get_n_rows (ClutterModel *model)
|
||||
* Sets the model to sort by @column. If @column is a negative value
|
||||
* the sorting column will be unset.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_set_sorting_column (ClutterModel *model,
|
||||
@ -1233,7 +1244,7 @@ clutter_model_set_sorting_column (ClutterModel *model,
|
||||
*
|
||||
* Return value: a column number, or -1 if the model is not sorted
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
gint
|
||||
clutter_model_get_sorting_column (ClutterModel *model)
|
||||
@ -1251,7 +1262,7 @@ clutter_model_get_sorting_column (ClutterModel *model)
|
||||
*
|
||||
* Calls @func for each row in the model.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_foreach (ClutterModel *model,
|
||||
@ -1288,9 +1299,9 @@ clutter_model_foreach (ClutterModel *model,
|
||||
* @user_data: user data to pass to @func, or #NULL
|
||||
* @notify: destroy notifier of @user_data, or #NULL
|
||||
*
|
||||
* Sorts the @model using @func.
|
||||
* Sorts @model using the given sorting function.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_set_sort (ClutterModel *model,
|
||||
@ -1322,9 +1333,9 @@ clutter_model_set_sort (ClutterModel *model,
|
||||
* @user_data: user data to pass to @func, or #NULL
|
||||
* @notify: destroy notifier of @user_data, or #NULL
|
||||
*
|
||||
* Filters the @model using @func.
|
||||
* Filters the @model using the given filtering function.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_set_filter (ClutterModel *model,
|
||||
@ -1589,28 +1600,26 @@ clutter_model_iter_init (ClutterModelIter *self)
|
||||
* @iter: a #ClutterModelIter
|
||||
* @args: va_list of column/value pairs, terminiated by -1
|
||||
*
|
||||
* See #clutter_model_iter_set; this version takes a va_list for language
|
||||
* See clutter_model_iter_set(); this version takes a va_list for language
|
||||
* bindings.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_iter_set_valist (ClutterModelIter *iter,
|
||||
va_list args)
|
||||
{
|
||||
ClutterModel *model;
|
||||
ClutterModelPrivate *model_priv;
|
||||
ClutterModelIterPrivate *priv;
|
||||
guint column = 0;
|
||||
gboolean sort = FALSE;
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_MODEL_ITER (iter));
|
||||
|
||||
priv = iter->priv;
|
||||
model = priv->model;
|
||||
g_assert (CLUTTER_IS_MODEL (model));
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_MODEL (model));
|
||||
model_priv = model->priv;
|
||||
|
||||
column = va_arg (args, gint);
|
||||
|
||||
/* Don't want to sort while setting lots of fields, leave that till the end
|
||||
@ -1621,14 +1630,14 @@ clutter_model_iter_set_valist (ClutterModelIter *iter,
|
||||
GValue value = { 0, };
|
||||
gchar *error = NULL;
|
||||
|
||||
if (column < 0 || column >= model_priv->n_columns)
|
||||
if (column < 0 || column >= clutter_model_get_n_columns (model))
|
||||
{
|
||||
g_warning ("%s: Invalid column number %d added to iter "
|
||||
"(remember to end you list of columns with a -1)",
|
||||
G_STRLOC, column);
|
||||
break;
|
||||
}
|
||||
g_value_init (&value, model_priv->column_types[column]);
|
||||
g_value_init (&value, clutter_model_get_column_type (model, column));
|
||||
|
||||
G_VALUE_COLLECT (&value, args, 0, &error);
|
||||
if (error)
|
||||
@ -1644,7 +1653,7 @@ clutter_model_iter_set_valist (ClutterModelIter *iter,
|
||||
|
||||
g_value_unset (&value);
|
||||
|
||||
if (column == model_priv->sort_column)
|
||||
if (column == clutter_model_get_sorting_column (model))
|
||||
sort = TRUE;
|
||||
|
||||
column = va_arg (args, gint);
|
||||
@ -1660,18 +1669,22 @@ clutter_model_iter_set_valist (ClutterModelIter *iter,
|
||||
/**
|
||||
* clutter_model_iter_get:
|
||||
* @iter: a #ClutterModelIter
|
||||
* @Varargs: va_list of column/return location pairs, terminiated by -1
|
||||
* @Varargs: a list of column/return location pairs, terminated by -1
|
||||
*
|
||||
* Gets the value of one or more cells in the row referenced by @iter. The
|
||||
* variable argument list should contain integer column numbers, each column
|
||||
* column number followed by a place to store the value being retrieved. The
|
||||
* list is terminated by a -1. For example, to get a value from column 0
|
||||
* with type G_TYPE_STRING, you would write: <literal>clutter_model_iter_get
|
||||
* (iter, 0, &place_string_here, -1);</literal>, where place_string_here is
|
||||
* a gchar* to be filled with the string. If appropriate, the returned values
|
||||
* have to be freed or unreferenced.
|
||||
* list is terminated by a -1.
|
||||
*
|
||||
* Since 0.6
|
||||
* For example, to get a value from column 0 with type %G_TYPE_STRING use:
|
||||
* <informalexample><programlisting>
|
||||
* clutter_model_iter_get (iter, 0, &place_string_here, -1);
|
||||
* </programlisting></informalexample>
|
||||
*
|
||||
* where place_string_here is a gchar* to be filled with the string. If
|
||||
* appropriate, the returned values have to be freed or unreferenced.
|
||||
*
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_iter_get (ClutterModelIter *iter,
|
||||
@ -1693,9 +1706,9 @@ clutter_model_iter_get (ClutterModelIter *iter,
|
||||
* @value: an empty #GValue to set
|
||||
*
|
||||
* Sets an initializes @value to that at @column. When done with @value,
|
||||
* #g_value_unset() needs to be called to free any allocated memory.
|
||||
* g_value_unset() needs to be called to free any allocated memory.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_iter_get_value (ClutterModelIter *iter,
|
||||
@ -1719,29 +1732,27 @@ clutter_model_iter_get_value (ClutterModelIter *iter,
|
||||
/**
|
||||
* clutter_model_iter_get_valist:
|
||||
* @iter: a #ClutterModelIter
|
||||
* @args: va_list of column/return location pairs, terminiated by -1
|
||||
* @args: a list of column/return location pairs, terminated by -1
|
||||
*
|
||||
* See #clutter_model_iter_get; this version takes a va_list for language
|
||||
* See clutter_model_iter_get(). This version takes a va_list for language
|
||||
* bindings.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_iter_get_valist (ClutterModelIter *iter,
|
||||
va_list args)
|
||||
{
|
||||
ClutterModel *model;
|
||||
ClutterModelPrivate *model_priv;
|
||||
ClutterModelIterPrivate *priv;
|
||||
ClutterModel *model;
|
||||
guint column = 0;
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_MODEL_ITER (iter));
|
||||
|
||||
priv = iter->priv;
|
||||
model = priv->model;
|
||||
g_assert (CLUTTER_IS_MODEL (model));
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_MODEL (model));
|
||||
model_priv = model->priv;
|
||||
|
||||
column = va_arg (args, gint);
|
||||
|
||||
while (column != -1)
|
||||
@ -1749,7 +1760,7 @@ clutter_model_iter_get_valist (ClutterModelIter *iter,
|
||||
GValue value = { 0, };
|
||||
gchar *error = NULL;
|
||||
|
||||
if (column < 0 || column >= model_priv->n_columns)
|
||||
if (column < 0 || column >= clutter_model_get_n_columns (model))
|
||||
{
|
||||
g_warning ("%s: Invalid column number %d added to iter "
|
||||
"(remember to end you list of columns with a -1)",
|
||||
@ -1781,15 +1792,19 @@ clutter_model_iter_get_valist (ClutterModelIter *iter,
|
||||
/**
|
||||
* clutter_model_iter_set:
|
||||
* @iter: a #ClutterModelIter
|
||||
* @Varargs: va_list of column/return location pairs, terminiated by -1
|
||||
* @Varargs: a list of column/return location pairs, terminated by -1
|
||||
*
|
||||
* Sets the value of one or more cells in the row referenced by @iter. The
|
||||
* variable argument list should contain integer column numbers, each column
|
||||
* column number followed by the value to be set. The list is terminated by a
|
||||
* -1. For example, to set column 0 with type G_TYPE_STRING, you would write:
|
||||
* <literal>clutter_model_iter_set (iter, 0, "foo", -1);</literal>.
|
||||
* -1.
|
||||
*
|
||||
* Since 0.6
|
||||
* For example, to set column 0 with type %G_TYPE_STRING, use:
|
||||
* <informalexample><programlisting>
|
||||
* clutter_model_iter_set (iter, 0, "foo", -1);
|
||||
* </programlisting></informalexample>
|
||||
*
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_iter_set (ClutterModelIter *iter,
|
||||
@ -1811,10 +1826,10 @@ clutter_model_iter_set (ClutterModelIter *iter,
|
||||
* @column: column number to retrieve the value from
|
||||
* @value: new value for the cell
|
||||
*
|
||||
* Sets the data in the cell specified by @iter and @column. The type of @value
|
||||
* must be convertable to the type of the column.
|
||||
* Sets the data in the cell specified by @iter and @column. The type of
|
||||
* @value must be convertable to the type of the column.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
void
|
||||
clutter_model_iter_set_value (ClutterModelIter *iter,
|
||||
@ -1839,7 +1854,7 @@ clutter_model_iter_set_value (ClutterModelIter *iter,
|
||||
*
|
||||
* Return value: #TRUE if @iter is the first iter in the filtered model
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
gboolean
|
||||
clutter_model_iter_is_first (ClutterModelIter *iter)
|
||||
@ -1864,7 +1879,7 @@ clutter_model_iter_is_first (ClutterModelIter *iter)
|
||||
*
|
||||
* Return value: #TRUE if @iter is the last iter in the filtered model.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
gboolean
|
||||
clutter_model_iter_is_last (ClutterModelIter *iter)
|
||||
@ -1884,11 +1899,14 @@ clutter_model_iter_is_last (ClutterModelIter *iter)
|
||||
* clutter_model_iter_next:
|
||||
* @iter: a #ClutterModelIter
|
||||
*
|
||||
* Sets the @iter to point at the next position in the model after @iter.
|
||||
* Updates the @iter to point at the next position in the model.
|
||||
* The model implementation should take into account the presence of
|
||||
* a filter function.
|
||||
*
|
||||
* Return value: @iter, pointing at the next position.
|
||||
* Return value: The passed iterator, updated to point at the next
|
||||
* row in the model.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModelIter *
|
||||
clutter_model_iter_next (ClutterModelIter *iter)
|
||||
@ -1908,11 +1926,14 @@ clutter_model_iter_next (ClutterModelIter *iter)
|
||||
* clutter_model_iter_prev:
|
||||
* @iter: a #ClutterModelIter
|
||||
*
|
||||
* Sets the @iter to point at the previous position in the model after @iter.
|
||||
* Sets the @iter to point at the previous position in the model.
|
||||
* The model implementation should take into account the presence of
|
||||
* a filter function.
|
||||
*
|
||||
* Return value: @iter, pointing at the previous position.
|
||||
* Return value: The passed iterator, updated to point at the previous
|
||||
* row in the model.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModelIter *
|
||||
clutter_model_iter_prev (ClutterModelIter *iter)
|
||||
@ -1932,11 +1953,11 @@ clutter_model_iter_prev (ClutterModelIter *iter)
|
||||
* clutter_model_iter_get_model:
|
||||
* @iter: a #ClutterModelIter
|
||||
*
|
||||
* Returns a pointer to the #ClutterModel that this iter is part of.
|
||||
* Retrieves a pointer to the #ClutterModel that this iter is part of.
|
||||
*
|
||||
* Return value: a pointer to a #ClutterModel.
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
ClutterModel *
|
||||
clutter_model_iter_get_model (ClutterModelIter *iter)
|
||||
@ -1956,11 +1977,11 @@ clutter_model_iter_get_model (ClutterModelIter *iter)
|
||||
* clutter_model_iter_get_row:
|
||||
* @iter: a #ClutterModelIter
|
||||
*
|
||||
* Returns the position of the row that the @iter points to.
|
||||
* Retrieves the position of the row that the @iter points to.
|
||||
*
|
||||
* Return value: the position of the @iter in the model.
|
||||
* Return value: the position of the @iter in the model
|
||||
*
|
||||
* Since 0.6
|
||||
* Since: 0.6
|
||||
*/
|
||||
guint
|
||||
clutter_model_iter_get_row (ClutterModelIter *iter)
|
||||
|
@ -344,9 +344,6 @@ void clutter_model_iter_set_value (ClutterModelIter *iter,
|
||||
|
||||
gboolean clutter_model_iter_is_first (ClutterModelIter *iter);
|
||||
gboolean clutter_model_iter_is_last (ClutterModelIter *iter);
|
||||
gboolean clutter_model_iter_has_next (ClutterModelIter *iter);
|
||||
gboolean clutter_model_iter_has_prev (ClutterModelIter *iter);
|
||||
|
||||
ClutterModelIter *clutter_model_iter_next (ClutterModelIter *iter);
|
||||
ClutterModelIter *clutter_model_iter_prev (ClutterModelIter *iter);
|
||||
|
||||
|
@ -1,3 +1,7 @@
|
||||
2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
|
||||
|
||||
* clutter-sections.txt: Added all the unused symbols.
|
||||
|
||||
2007-12-14 Emmanuele Bassi <ebassi@openedhand.com>
|
||||
|
||||
* Makefile.am:
|
||||
|
@ -350,6 +350,7 @@ clutter_actor_set_scale
|
||||
clutter_actor_get_scale
|
||||
clutter_actor_get_abs_size
|
||||
clutter_actor_apply_transform_to_point
|
||||
clutter_actor_transform_stage_point
|
||||
|
||||
<SUBSECTION>
|
||||
ClutterVertex
|
||||
@ -363,6 +364,8 @@ clutter_actor_set_anchor_point_from_gravity
|
||||
<SUBSECTION>
|
||||
clutter_actor_set_reactive
|
||||
clutter_actor_get_reactive
|
||||
clutter_actor_apply_shader
|
||||
clutter_actor_set_shader_param
|
||||
|
||||
<SUBSECTION>
|
||||
clutter_actor_set_depthu
|
||||
@ -376,7 +379,9 @@ clutter_actor_get_xu
|
||||
clutter_actor_set_yu
|
||||
clutter_actor_get_yu
|
||||
clutter_actor_set_positionu
|
||||
clutter_actor_get_positionu
|
||||
clutter_actor_set_sizeu
|
||||
clutter_actor_get_sizeu
|
||||
clutter_actor_set_anchor_pointu
|
||||
clutter_actor_get_anchor_pointu
|
||||
|
||||
@ -1140,11 +1145,14 @@ clutter_scriptable_get_type
|
||||
<TITLE>ClutterModel</TITLE>
|
||||
ClutterModel
|
||||
ClutterModelClass
|
||||
ClutterModelFilterFunc
|
||||
ClutterModelSortFunc
|
||||
ClutterModelForeachFunc
|
||||
clutter_model_set_names
|
||||
clutter_model_set_types
|
||||
clutter_model_get_column_name
|
||||
clutter_model_get_column_type
|
||||
clutter_model_get_n_columns
|
||||
clutter_model_get_n_rows
|
||||
|
||||
<SUBSECTION>
|
||||
clutter_model_append
|
||||
clutter_model_append_value
|
||||
clutter_model_prepend
|
||||
@ -1152,18 +1160,25 @@ clutter_model_prepend_value
|
||||
clutter_model_insert
|
||||
clutter_model_insert_value
|
||||
clutter_model_remove
|
||||
clutter_model_get_column_name
|
||||
clutter_model_get_column_type
|
||||
clutter_model_get_n_columns
|
||||
clutter_model_get_n_rows
|
||||
|
||||
<SUBSECTION>
|
||||
ClutterModelForeachFunc
|
||||
clutter_model_foreach
|
||||
clutter_model_set_sorting_column
|
||||
clutter_model_get_sorting_column
|
||||
ClutterModelSortFunc
|
||||
clutter_model_set_sort
|
||||
clutter_model_resort
|
||||
ClutterModelFilterFunc
|
||||
clutter_model_set_filter
|
||||
clutter_model_filter_iter
|
||||
clutter_model_filter_row
|
||||
|
||||
<SUBSECTION>
|
||||
clutter_model_get_first_iter
|
||||
clutter_model_get_last_iter
|
||||
clutter_model_get_iter_at_row
|
||||
clutter_model_set_sorting_column
|
||||
clutter_model_get_sorting_column
|
||||
clutter_model_foreach
|
||||
clutter_model_set_sort
|
||||
clutter_model_set_filter
|
||||
|
||||
<SUBSECTION Standard>
|
||||
CLUTTER_TYPE_MODEL
|
||||
CLUTTER_MODEL
|
||||
@ -1187,12 +1202,17 @@ clutter_model_iter_get_value
|
||||
clutter_model_iter_set
|
||||
clutter_model_iter_set_valist
|
||||
clutter_model_iter_set_value
|
||||
|
||||
<SUBSECTION>
|
||||
clutter_model_iter_is_first
|
||||
clutter_model_iter_is_last
|
||||
clutter_model_iter_next
|
||||
clutter_model_iter_prev
|
||||
|
||||
<SUBSECTION>
|
||||
clutter_model_iter_get_model
|
||||
clutter_model_iter_get_row
|
||||
|
||||
<SUBSECTION Standard>
|
||||
CLUTTER_TYPE_MODEL_ITER
|
||||
CLUTTER_MODEL_ITER
|
||||
@ -1260,3 +1280,36 @@ CLUTTER_TYPE_SCORE
|
||||
ClutterScorePrivate
|
||||
clutter_score_get_type
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>clutter-shader</FILE>
|
||||
<TITLE>ClutterShader</TITLE>
|
||||
ClutterShaderError
|
||||
ClutterShader
|
||||
ClutterShaderClass
|
||||
clutter_shader_new
|
||||
clutter_shader_set_vertex_source
|
||||
clutter_shader_get_vertex_source
|
||||
clutter_shader_set_fragment_source
|
||||
clutter_shader_get_fragment_source
|
||||
clutter_shader_bind
|
||||
clutter_shader_release
|
||||
clutter_shader_is_bound
|
||||
clutter_shader_set_is_enabled
|
||||
clutter_shader_get_is_enabled
|
||||
clutter_shader_set_uniform_1f
|
||||
|
||||
<SUBSECTION Standard>
|
||||
CLUTTER_IS_SHADER
|
||||
CLUTTER_IS_SHADER_CLASS
|
||||
CLUTTER_SHADER
|
||||
CLUTTER_SHADER_CLASS
|
||||
CLUTTER_SHADER_ERROR
|
||||
CLUTTER_SHADER_GET_CLASS
|
||||
CLUTTER_TYPE_SHADER
|
||||
<SUBSECTION Private>
|
||||
ClutterShaderPrivate
|
||||
clutter_shader_get_type
|
||||
clutter_shader_error_quark
|
||||
clutter_shader_release_all
|
||||
</SECTION>
|
||||
|
@ -82,7 +82,7 @@ filter_model (ClutterModel *model)
|
||||
{
|
||||
ClutterModelIter *iter;
|
||||
|
||||
g_print ("* Filter function: even rows\n");
|
||||
g_print ("\n* Filter function: even rows\n");
|
||||
clutter_model_set_filter (model, filter_func, NULL, NULL);
|
||||
|
||||
iter = clutter_model_get_first_iter (model);
|
||||
@ -94,7 +94,7 @@ filter_model (ClutterModel *model)
|
||||
}
|
||||
g_object_unref (iter);
|
||||
|
||||
g_print ("* Sorting function: reverse alpha\n");
|
||||
g_print ("\n* Sorting function: reverse alpha\n");
|
||||
clutter_model_set_sort (model, COLUMN_BAR, sort_func, NULL, NULL);
|
||||
|
||||
g_signal_connect (model, "row-changed", G_CALLBACK (on_row_changed), NULL);
|
||||
@ -107,7 +107,7 @@ filter_model (ClutterModel *model)
|
||||
|
||||
clutter_model_foreach (model, foreach_func, NULL);
|
||||
|
||||
g_print ("* Unset filter\n");
|
||||
g_print ("\n* Unset filter\n");
|
||||
clutter_model_set_filter (model, NULL, NULL, NULL);
|
||||
|
||||
while (clutter_model_get_n_rows (model))
|
||||
@ -195,14 +195,14 @@ on_row_removed (ClutterModel *model,
|
||||
static void
|
||||
on_sort_changed (ClutterModel *model)
|
||||
{
|
||||
g_print ("\n*** Sort Changed ***\n\n");
|
||||
g_print ("*** Sort Changed ***\n\n");
|
||||
clutter_model_foreach (model, foreach_func, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
on_filter_changed (ClutterModel *model)
|
||||
{
|
||||
g_print ("\n*** Filter Changed ***\n\n");
|
||||
g_print ("*** Filter Changed ***\n\n");
|
||||
}
|
||||
|
||||
int
|
||||
|
Loading…
Reference in New Issue
Block a user