/* PSPPIRE - a graphical user interface for PSPP.
- Copyright (C) 2009 Free Software Foundation
+ Copyright (C) 2009, 2010 Free Software Foundation
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include <glib.h>
#include <glib-object.h>
-#include <gtk/gtktreeview.h>
+#include <gtk/gtk.h>
G_BEGIN_DECLS
struct variable;
+struct vvstate
+{
+ /* An array of GtkListStores */
+ GtkListStore **list;
+
+ /* The size of the above array */
+ gint n_lists;
+
+ /* The currently selected item in the array */
+ gint l_idx;
+};
+
struct _PsppireVarView
{
GtkTreeView parent;
- GtkListStore *list;
+ /* Private */
+ struct vvstate *state;
+ GType *cols;
gint *nums;
-
+ gint n_cols;
};
struct _PsppireVarViewClass
GType psppire_var_view_get_type (void);
-gboolean psppire_var_view_contains_var (PsppireVarView *vv, const GValue *v);
-
gint psppire_var_view_append_names (PsppireVarView *vv, gint column, GString *string);
+struct string;
+gint psppire_var_view_append_names_str (PsppireVarView *vv, gint column, struct string *);
gboolean psppire_var_view_get_iter_first (PsppireVarView *vv, GtkTreeIter *iter);
const struct variable * psppire_var_view_get_variable (PsppireVarView *vv, gint column, GtkTreeIter *iter);
+void psppire_var_view_push_model (PsppireVarView *vv);
+
+gboolean psppire_var_view_set_current_model (PsppireVarView *vv, gint n);
+GtkTreeModel *psppire_var_view_get_current_model (PsppireVarView *vv);
+
+void psppire_var_view_clear (PsppireVarView *vv);
+GtkWidget* psppire_var_view_new (void);
G_END_DECLS