static void set_font_recursively (GtkWidget *w, gpointer data);
-gchar *myconvfunc (GtkTreeModel *m, gint col, gint row, const GValue *v);
-void myreversefunc (GtkTreeModel *model, gint col, gint row, const gchar *in, GValue *out);
+void myreversefunc (GtkTreeModel *model, gint col, gint row, const gchar *in,
+ GValue *out);
enum sort_order
de->data_sheet_cases_row_popup = create_data_row_header_popup_menu (de);
de->var_sheet_row_popup = create_var_row_header_popup_menu (de);
- g_object_set (de->data_sheet, "export-function", myconvfunc, NULL);
-
g_signal_connect (de->data_sheet, "row-header-pressed",
G_CALLBACK (show_cases_row_popup), de);
g_signal_connect (de->data_sheet, "selection-changed",
G_CALLBACK (set_menu_items_sensitivity), de);
+ /* FIXME: The following two statements do basically the same thing.
+ Do we need both? */
+ g_object_set (de->data_sheet, "export-function",
+ psppire_data_store_value_to_string, NULL);
+
jmd_sheet_set_conversion_func (JMD_SHEET (de->data_sheet),
- myconvfunc, myreversefunc);
+ psppire_data_store_value_to_string, myreversefunc);
GtkWidget *data_button = jmd_sheet_get_button (JMD_SHEET (de->data_sheet));
gtk_button_set_label (GTK_BUTTON (data_button), _("Case"));
}
gchar *
-myconvfunc (GtkTreeModel *model, gint col, gint row, const GValue *v)
+psppire_data_store_value_to_string (PsppireDataStore *store, gint col, gint row, const GValue *v)
{
- PsppireDataStore *store = PSPPIRE_DATA_STORE (model);
-
const struct variable *variable = psppire_dict_get_variable (store->dict, col);
g_return_val_if_fail (variable, g_strdup ("???"));
glong row, const struct variable *,
bool use_value_label);
+gchar * psppire_data_store_value_to_string (PsppireDataStore *store,
+ gint col, gint row,
+ const GValue *v);
+
gboolean psppire_data_store_get_value (PsppireDataStore *store,
glong row, const struct variable *var,