projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Rewrite Import Dialog.
[pspp]
/
src
/
ui
/
gui
/
val-labs-dialog.c
diff --git
a/src/ui/gui/val-labs-dialog.c
b/src/ui/gui/val-labs-dialog.c
index 0d1c757e82535598a5be177e2d3c7e5bbbe5a5dd..56399aa271f3b3b6ee4739c33b3640a008c6472b 100644
(file)
--- a/
src/ui/gui/val-labs-dialog.c
+++ b/
src/ui/gui/val-labs-dialog.c
@@
-278,7
+278,7
@@
on_value_entry_change (GtkEntry *entry, gpointer data)
/* Return the value-label pair currently selected in the dialog box */
/* Return the value-label pair currently selected in the dialog box */
-static
void
+static
gboolean
get_selected_tuple (PsppireValLabsDialog *dialog,
union value *valuep, const char **label)
{
get_selected_tuple (PsppireValLabsDialog *dialog,
union value *valuep, const char **label)
{
@@
-292,7
+292,8
@@
get_selected_tuple (PsppireValLabsDialog *dialog,
GtkTreeModel * model = gtk_tree_view_get_model (treeview);
GtkTreeModel * model = gtk_tree_view_get_model (treeview);
- gtk_tree_selection_get_selected (sel, &model, &iter);
+ if (! gtk_tree_selection_get_selected (sel, &model, &iter))
+ return FALSE;
gtk_tree_model_get_value (model, &iter, 1, &the_value);
gtk_tree_model_get_value (model, &iter, 1, &the_value);
@@
-307,6
+308,8
@@
get_selected_tuple (PsppireValLabsDialog *dialog,
if (vl != NULL)
*label = val_lab_get_escaped_label (vl);
}
if (vl != NULL)
*label = val_lab_get_escaped_label (vl);
}
+
+ return TRUE;
}
}
@@
-369,7
+372,9
@@
on_remove (GtkWidget *w, gpointer data)
union value value;
struct val_lab *vl;
union value value;
struct val_lab *vl;
- get_selected_tuple (dialog, &value, NULL);
+ if (! get_selected_tuple (dialog, &value, NULL))
+ return;
+
vl = val_labs_lookup (dialog->labs, &value);
if (vl != NULL)
val_labs_remove (dialog->labs, vl);
vl = val_labs_lookup (dialog->labs, &value);
if (vl != NULL)
val_labs_remove (dialog->labs, vl);
@@
-394,7
+399,9
@@
on_select_row (GtkTreeView *treeview, gpointer data)
gchar *text;
gchar *text;
- get_selected_tuple (dialog, &value, &label);
+ if (! get_selected_tuple (dialog, &value, &label))
+ return;
+
text = value_to_text__ (value, &dialog->format, dialog->encoding);
g_signal_handler_block (GTK_ENTRY (dialog->value_entry),
text = value_to_text__ (value, &dialog->format, dialog->encoding);
g_signal_handler_block (GTK_ENTRY (dialog->value_entry),