Prepare for gtk change that will issue warnings if the return value of

the gtk_tree_model iter functions are not used.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13287 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
David Hampton 2006-02-18 03:02:32 +00:00
parent d13a38cf25
commit 0ea6ebe253
12 changed files with 89 additions and 57 deletions

View File

@ -1,3 +1,18 @@
2006-02-17 David Hampton <hampton@employees.org>
* src/register/register-gnome/gnucash-item-list.c:
* src/report/report-gnome/dialog-style-sheet.c:
* src/gnome-utils/gnc-tree-model-commodity.c:
* src/gnome-utils/gnc-tree-model-budget.[ch]:
* src/gnome-utils/gnc-tree-model-account.c:
* src/gnome-utils/gnc-tree-model-price.c:
* src/gnome-utils/gnc-tree-view-account.c:
* src/gnome-utils/dialog-options.c:
* lib/goffice-0.0.4/goffice/graph/gog-guru.c:
* lib/goffice-0.0.4/goffice/gtk/go-format-sel.c: Prepare for gtk
change that will issue warnings if the return value of the
gtk_tree_model iter functions are not used.
2006-02-17 Derek Atkins <derek@ihtfp.com>
* intl-scm/Makefile.am:

View File

@ -539,14 +539,17 @@ cb_graph_guru_delete_item (GraphGuruState *s)
if (s->prop_object != NULL) {
GtkTreeIter iter;
GogObject *obj = s->prop_object;
gboolean have_iter;
/* store parent iter */
gtk_tree_model_iter_parent (GTK_TREE_MODEL (s->prop_model),
&iter, &s->prop_iter);
have_iter =
gtk_tree_model_iter_parent (GTK_TREE_MODEL (s->prop_model),
&iter, &s->prop_iter);
gog_object_clear_parent (obj);
g_object_unref (obj);
/* then select the parent after we delete */
gtk_tree_selection_select_iter (s->prop_selection, &iter);
if (have_iter)
gtk_tree_selection_select_iter (s->prop_selection, &iter);
}
}
@ -955,10 +958,13 @@ populate_graph_item_list (GogObject *obj, GogObject *select, GraphGuruState *s,
gint i = g_slist_index (gparent->children, obj);
if (i > 0) {
GtkTreeIter sibling;
gtk_tree_model_iter_nth_child (GTK_TREE_MODEL (s->prop_model),
&sibling, parent, i-1);
gtk_tree_store_insert_after (s->prop_model, &iter,
if (gtk_tree_model_iter_nth_child (GTK_TREE_MODEL (s->prop_model),
&sibling, parent, i-1)) {
gtk_tree_store_insert_after (s->prop_model, &iter,
parent, &sibling);
} else {
gtk_tree_store_append (s->prop_model, &iter, parent);
}
} else
gtk_tree_store_prepend (s->prop_model, &iter, parent);
} else

View File

@ -563,10 +563,12 @@ stays:
char *tmp = go_format_as_XL (gfs->format.spec, TRUE);
format_entry_set_text (gfs, tmp);
g_free (tmp);
} else if (select.stamp == 0)
gtk_tree_model_get_iter_first (
GTK_TREE_MODEL (gfs->format.formats.model),
&select);
} else if (select.stamp == 0) {
if (!gtk_tree_model_get_iter_first (
GTK_TREE_MODEL (gfs->format.formats.model),
&select))
select.stamp = 0;
}
if (select.stamp != 0) {
GtkTreePath *path = gtk_tree_model_get_path (

View File

@ -2383,8 +2383,8 @@ static gboolean gnc_option_set_ui_value_budget(
bgt = gw_wcp_get_ptr(value);
cb = GTK_COMBO_BOX(widget);
tm = gtk_combo_box_get_model(cb);
gnc_tree_model_budget_get_iter_for_budget(tm, &iter, bgt);
gtk_combo_box_set_active_iter(cb, &iter);
if (gnc_tree_model_budget_get_iter_for_budget(tm, &iter, bgt))
gtk_combo_box_set_active_iter(cb, &iter);
}

View File

@ -1247,8 +1247,8 @@ gnc_tree_model_account_set_toplevel (GncTreeModelAccount *model,
if (priv->toplevel != NULL) {
path = gtk_tree_path_new_first ();
gtk_tree_model_get_iter (GTK_TREE_MODEL (model), &iter, path);
gtk_tree_model_row_inserted (GTK_TREE_MODEL (model), path, &iter);
if (gtk_tree_model_get_iter (GTK_TREE_MODEL (model), &iter, path))
gtk_tree_model_row_inserted (GTK_TREE_MODEL (model), path, &iter);
gtk_tree_path_free (path);
}

View File

@ -119,7 +119,7 @@ gnc_tree_model_budget_get_budget(GtkTreeModel *tm, GtkTreeIter *iter)
return bgt;
}
void
gboolean
gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm, GtkTreeIter *iter,
GncBudget *bgt)
{
@ -127,20 +127,23 @@ gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm, GtkTreeIter *iter,
const GUID *guid1;
GUID *guid2;
g_return_if_fail(GNC_BUDGET(bgt));
g_return_val_if_fail(GNC_BUDGET(bgt), FALSE);
guid1 = gnc_budget_get_guid(bgt);
for (gtk_tree_model_get_iter_first(tm, iter);
gtk_list_store_iter_is_valid(GTK_LIST_STORE(tm), iter);
gtk_tree_model_iter_next(tm, iter)) {
if (!gtk_tree_model_get_iter_first(tm, iter))
return FALSE;
while (gtk_list_store_iter_is_valid(GTK_LIST_STORE(tm), iter)) {
gtk_tree_model_get_value(tm, iter, BUDGET_GUID_COLUMN, &gv);
guid2 = (GUID *) g_value_get_pointer(&gv);
g_value_unset(&gv);
if (guid_equal(guid1, guid2))
return;
return TRUE;
if (!gtk_tree_model_iter_next(tm, iter))
return FALSE;
}
return FALSE;
}
/** @} */

View File

@ -49,8 +49,8 @@ void gnc_tree_view_budget_set_model(GtkTreeView *tv, GtkTreeModel *tm);
GncBudget *gnc_tree_model_budget_get_budget(GtkTreeModel *tm,
GtkTreeIter *iter);
void gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm,
GtkTreeIter *iter,
GncBudget *bgt);
gboolean gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm,
GtkTreeIter *iter,
GncBudget *bgt);
/** @} */
#endif // __GNC_TREE_MODEL_BUDGET_H__

View File

@ -1107,16 +1107,17 @@ gnc_tree_model_commodity_path_deleted (GncTreeModelCommodity *model,
/* It seems sufficient to tell the model that the parent row
* changed. This appears to force a reload of all its child rows,
* which handles removing the now gone commodity. */
gtk_tree_path_up (path);
gnc_tree_model_commodity_get_iter (GTK_TREE_MODEL(model), &iter, path);
debug_path(DEBUG, path);
DEBUG("iter %s", iter_to_string(&iter));
gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter);
namespace = gnc_tree_model_commodity_get_namespace (model, &iter);
if (namespace) {
list = gnc_commodity_namespace_get_commodity_list(namespace);
if (g_list_length(list) == 0) {
gtk_tree_model_row_has_child_toggled(GTK_TREE_MODEL(model), path, &iter);
if (gtk_tree_path_up (path)) {
gnc_tree_model_commodity_get_iter (GTK_TREE_MODEL(model), &iter, path);
debug_path(DEBUG, path);
DEBUG("iter %s", iter_to_string(&iter));
gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter);
namespace = gnc_tree_model_commodity_get_namespace (model, &iter);
if (namespace) {
list = gnc_commodity_namespace_get_commodity_list(namespace);
if (g_list_length(list) == 0) {
gtk_tree_model_row_has_child_toggled(GTK_TREE_MODEL(model), path, &iter);
}
}
}
}

View File

@ -1362,13 +1362,13 @@ gnc_tree_model_price_path_deleted (GncTreeModelPrice *model,
GtkTreeIter iter;
debug_path(ENTER, path);
do {
gtk_tree_path_up (path);
while (gtk_tree_path_up(path) && (gtk_tree_path_get_depth(path) > 0)) {
debug_path(DEBUG, path);
gtk_tree_model_get_iter (GTK_TREE_MODEL(model), &iter, path);
DEBUG("iter %s", iter_to_string(model, &iter));
gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter);
} while (gtk_tree_path_get_depth(path) > 1);
if (gtk_tree_model_get_iter (GTK_TREE_MODEL(model), &iter, path)) {
DEBUG("iter %s", iter_to_string(model, &iter));
gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter);
}
}
do {
model->stamp++;

View File

@ -1215,18 +1215,19 @@ gnc_tree_view_account_select_subaccounts (GncTreeViewAccount *view,
gtk_tree_view_expand_row (GTK_TREE_VIEW(view), sp_account, TRUE);
/* compute start/end paths */
gtk_tree_model_iter_nth_child (s_model, &si_start, &si_account, 0);
gtk_tree_model_iter_nth_child (s_model, &si_end, &si_account, num_children - 1);
sp_start = gtk_tree_model_get_path (s_model, &si_start);
sp_end = gtk_tree_model_get_path (s_model, &si_end);
if (gtk_tree_model_iter_nth_child(s_model, &si_start, &si_account, 0) &&
gtk_tree_model_iter_nth_child(s_model, &si_end, &si_account, num_children - 1)) {
sp_start = gtk_tree_model_get_path (s_model, &si_start);
sp_end = gtk_tree_model_get_path (s_model, &si_end);
/* select everything between */
selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(view));
gtk_tree_selection_select_range (selection, sp_start, sp_end);
/* select everything between */
selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(view));
gtk_tree_selection_select_range (selection, sp_start, sp_end);
/* clean up */
gtk_tree_path_free(sp_start);
gtk_tree_path_free(sp_end);
/* clean up */
gtk_tree_path_free(sp_start);
gtk_tree_path_free(sp_end);
}
gtk_tree_path_free(sp_account);
LEAVE(" ");
return;

View File

@ -217,6 +217,7 @@ gnc_item_list_button_event(GtkWidget *widget, GdkEventButton *event,
GtkTreePath *path;
GtkTreeModel *model;
gchar *string;
gboolean success;
g_return_val_if_fail(IS_GNC_ITEM_LIST (data), FALSE);
@ -239,11 +240,14 @@ gnc_item_list_button_event(GtkWidget *widget, GdkEventButton *event,
gtk_tree_view_set_cursor (item_list->tree_view, path, NULL, FALSE);
model = GTK_TREE_MODEL (item_list->list_store);
gtk_tree_model_get_iter (model, &iter, path);
success = gtk_tree_model_get_iter (model, &iter, path);
gtk_tree_path_free (path);
gtk_tree_model_get (model, &iter, 0, &string, -1);
if (!success)
return FALSE;
gtk_tree_model_get (model, &iter, 0, &string, -1);
g_signal_emit (G_OBJECT (item_list),
gnc_item_list_signals[ACTIVATE_ITEM],

View File

@ -107,11 +107,11 @@ gnc_style_sheet_options_close_cb(GNCOptionWin * propertybox,
if (gtk_tree_row_reference_valid (ssi->row_ref)) {
StyleSheetDialog * ss = gnc_style_sheet_dialog;
gtk_tree_model_get_iter (GTK_TREE_MODEL(ss->list_store), &iter,
gtk_tree_row_reference_get_path (ssi->row_ref));
gtk_list_store_set (ss->list_store, &iter,
COLUMN_DIALOG, NULL,
-1);
if (gtk_tree_model_get_iter (GTK_TREE_MODEL(ss->list_store), &iter,
gtk_tree_row_reference_get_path (ssi->row_ref)))
gtk_list_store_set (ss->list_store, &iter,
COLUMN_DIALOG, NULL,
-1);
}
gtk_tree_row_reference_free (ssi->row_ref);