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> 2006-02-17 Derek Atkins <derek@ihtfp.com>
* intl-scm/Makefile.am: * intl-scm/Makefile.am:

View File

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

View File

@ -563,10 +563,12 @@ stays:
char *tmp = go_format_as_XL (gfs->format.spec, TRUE); char *tmp = go_format_as_XL (gfs->format.spec, TRUE);
format_entry_set_text (gfs, tmp); format_entry_set_text (gfs, tmp);
g_free (tmp); g_free (tmp);
} else if (select.stamp == 0) } else if (select.stamp == 0) {
gtk_tree_model_get_iter_first ( if (!gtk_tree_model_get_iter_first (
GTK_TREE_MODEL (gfs->format.formats.model), GTK_TREE_MODEL (gfs->format.formats.model),
&select); &select))
select.stamp = 0;
}
if (select.stamp != 0) { if (select.stamp != 0) {
GtkTreePath *path = gtk_tree_model_get_path ( 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); bgt = gw_wcp_get_ptr(value);
cb = GTK_COMBO_BOX(widget); cb = GTK_COMBO_BOX(widget);
tm = gtk_combo_box_get_model(cb); tm = gtk_combo_box_get_model(cb);
gnc_tree_model_budget_get_iter_for_budget(tm, &iter, bgt); if (gnc_tree_model_budget_get_iter_for_budget(tm, &iter, bgt))
gtk_combo_box_set_active_iter(cb, &iter); 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) { if (priv->toplevel != NULL) {
path = gtk_tree_path_new_first (); path = gtk_tree_path_new_first ();
gtk_tree_model_get_iter (GTK_TREE_MODEL (model), &iter, path); 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_model_row_inserted (GTK_TREE_MODEL (model), path, &iter);
gtk_tree_path_free (path); gtk_tree_path_free (path);
} }

View File

@ -119,7 +119,7 @@ gnc_tree_model_budget_get_budget(GtkTreeModel *tm, GtkTreeIter *iter)
return bgt; return bgt;
} }
void gboolean
gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm, GtkTreeIter *iter, gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm, GtkTreeIter *iter,
GncBudget *bgt) GncBudget *bgt)
{ {
@ -127,20 +127,23 @@ gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm, GtkTreeIter *iter,
const GUID *guid1; const GUID *guid1;
GUID *guid2; GUID *guid2;
g_return_if_fail(GNC_BUDGET(bgt)); g_return_val_if_fail(GNC_BUDGET(bgt), FALSE);
guid1 = gnc_budget_get_guid(bgt); guid1 = gnc_budget_get_guid(bgt);
for (gtk_tree_model_get_iter_first(tm, iter); if (!gtk_tree_model_get_iter_first(tm, iter))
gtk_list_store_iter_is_valid(GTK_LIST_STORE(tm), iter); return FALSE;
gtk_tree_model_iter_next(tm, iter)) { while (gtk_list_store_iter_is_valid(GTK_LIST_STORE(tm), iter)) {
gtk_tree_model_get_value(tm, iter, BUDGET_GUID_COLUMN, &gv); gtk_tree_model_get_value(tm, iter, BUDGET_GUID_COLUMN, &gv);
guid2 = (GUID *) g_value_get_pointer(&gv); guid2 = (GUID *) g_value_get_pointer(&gv);
g_value_unset(&gv); g_value_unset(&gv);
if (guid_equal(guid1, guid2)) 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, GncBudget *gnc_tree_model_budget_get_budget(GtkTreeModel *tm,
GtkTreeIter *iter); GtkTreeIter *iter);
void gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm, gboolean gnc_tree_model_budget_get_iter_for_budget(GtkTreeModel *tm,
GtkTreeIter *iter, GtkTreeIter *iter,
GncBudget *bgt); GncBudget *bgt);
/** @} */ /** @} */
#endif // __GNC_TREE_MODEL_BUDGET_H__ #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 /* It seems sufficient to tell the model that the parent row
* changed. This appears to force a reload of all its child rows, * changed. This appears to force a reload of all its child rows,
* which handles removing the now gone commodity. */ * which handles removing the now gone commodity. */
gtk_tree_path_up (path); if (gtk_tree_path_up (path)) {
gnc_tree_model_commodity_get_iter (GTK_TREE_MODEL(model), &iter, path); gnc_tree_model_commodity_get_iter (GTK_TREE_MODEL(model), &iter, path);
debug_path(DEBUG, path); debug_path(DEBUG, path);
DEBUG("iter %s", iter_to_string(&iter)); DEBUG("iter %s", iter_to_string(&iter));
gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter); gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter);
namespace = gnc_tree_model_commodity_get_namespace (model, &iter); namespace = gnc_tree_model_commodity_get_namespace (model, &iter);
if (namespace) { if (namespace) {
list = gnc_commodity_namespace_get_commodity_list(namespace); list = gnc_commodity_namespace_get_commodity_list(namespace);
if (g_list_length(list) == 0) { if (g_list_length(list) == 0) {
gtk_tree_model_row_has_child_toggled(GTK_TREE_MODEL(model), path, &iter); 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; GtkTreeIter iter;
debug_path(ENTER, path); debug_path(ENTER, path);
do { while (gtk_tree_path_up(path) && (gtk_tree_path_get_depth(path) > 0)) {
gtk_tree_path_up (path);
debug_path(DEBUG, path); debug_path(DEBUG, path);
gtk_tree_model_get_iter (GTK_TREE_MODEL(model), &iter, path); if (gtk_tree_model_get_iter (GTK_TREE_MODEL(model), &iter, path)) {
DEBUG("iter %s", iter_to_string(model, &iter)); DEBUG("iter %s", iter_to_string(model, &iter));
gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter); gtk_tree_model_row_changed (GTK_TREE_MODEL(model), path, &iter);
} while (gtk_tree_path_get_depth(path) > 1); }
}
do { do {
model->stamp++; 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); gtk_tree_view_expand_row (GTK_TREE_VIEW(view), sp_account, TRUE);
/* compute start/end paths */ /* compute start/end paths */
gtk_tree_model_iter_nth_child (s_model, &si_start, &si_account, 0); 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); 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_start = gtk_tree_model_get_path (s_model, &si_start);
sp_end = gtk_tree_model_get_path (s_model, &si_end); sp_end = gtk_tree_model_get_path (s_model, &si_end);
/* select everything between */ /* select everything between */
selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(view)); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(view));
gtk_tree_selection_select_range (selection, sp_start, sp_end); gtk_tree_selection_select_range (selection, sp_start, sp_end);
/* clean up */ /* clean up */
gtk_tree_path_free(sp_start); gtk_tree_path_free(sp_start);
gtk_tree_path_free(sp_end); gtk_tree_path_free(sp_end);
}
gtk_tree_path_free(sp_account); gtk_tree_path_free(sp_account);
LEAVE(" "); LEAVE(" ");
return; return;

View File

@ -217,6 +217,7 @@ gnc_item_list_button_event(GtkWidget *widget, GdkEventButton *event,
GtkTreePath *path; GtkTreePath *path;
GtkTreeModel *model; GtkTreeModel *model;
gchar *string; gchar *string;
gboolean success;
g_return_val_if_fail(IS_GNC_ITEM_LIST (data), FALSE); 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); gtk_tree_view_set_cursor (item_list->tree_view, path, NULL, FALSE);
model = GTK_TREE_MODEL (item_list->list_store); 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_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), g_signal_emit (G_OBJECT (item_list),
gnc_item_list_signals[ACTIVATE_ITEM], 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)) { if (gtk_tree_row_reference_valid (ssi->row_ref)) {
StyleSheetDialog * ss = gnc_style_sheet_dialog; StyleSheetDialog * ss = gnc_style_sheet_dialog;
gtk_tree_model_get_iter (GTK_TREE_MODEL(ss->list_store), &iter, if (gtk_tree_model_get_iter (GTK_TREE_MODEL(ss->list_store), &iter,
gtk_tree_row_reference_get_path (ssi->row_ref)); gtk_tree_row_reference_get_path (ssi->row_ref)))
gtk_list_store_set (ss->list_store, &iter, gtk_list_store_set (ss->list_store, &iter,
COLUMN_DIALOG, NULL, COLUMN_DIALOG, NULL,
-1); -1);
} }
gtk_tree_row_reference_free (ssi->row_ref); gtk_tree_row_reference_free (ssi->row_ref);