Implement DATASET commands.
[pspp-builds.git] / src / ui / gui / psppire-data-window.h
index 0100254386adf3dd9085a0d9954555bbfe51fa76..64fe076dc7417a8a1dc78dda66085e7ffff3fd32 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPPIRE - a graphical user interface for PSPP.
-   Copyright (C) 2008, 2010  Free Software Foundation
+   Copyright (C) 2008, 2010, 2011  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-object.h>
 #include <gtk/gtk.h>
 
+#include "libpspp/ll.h"
 #include "ui/gui/psppire-window.h"
 #include "ui/gui/psppire-data-editor.h"
 
-struct dataset;
-
 G_BEGIN_DECLS
 
 #define PSPPIRE_DATA_WINDOW_TYPE            (psppire_data_window_get_type ())
@@ -65,6 +64,10 @@ struct _PsppireDataWindow
 
 
   gboolean save_as_portable;
+
+  struct ll ll;                 /* In global 'all_data_windows' list. */
+  unsigned long int lazy_serial;
+  unsigned int dataset_seqno;
 };
 
 struct _PsppireDataWindowClass
@@ -72,9 +75,20 @@ struct _PsppireDataWindowClass
   PsppireWindowClass parent_class;
 };
 
+extern struct session *the_session;
+extern struct ll_list all_data_windows;
+
 GType      psppire_data_window_get_type        (void);
 GtkWidget* psppire_data_window_new             (struct dataset *);
+
 PsppireDataWindow *psppire_default_data_window (void);
+void psppire_data_window_set_default (PsppireDataWindow *);
+void psppire_data_window_undefault (PsppireDataWindow *);
+
+PsppireDataWindow *psppire_data_window_for_dataset (struct dataset *);
+
+bool psppire_data_window_is_empty (PsppireDataWindow *);
+void create_data_window (void);
 
 G_END_DECLS