Actually implement the new procedure code and adapt all of its clients
[pspp] / src / ui / gui / psppire-case-file.h
index fbfa7d750154ab50717261f9f2655ccfdb973525..b3fdfcdaa787c2ffea5afd0318fc5f73470cca04 100644 (file)
@@ -1,7 +1,6 @@
-/* 
+/*
     PSPPIRE --- A Graphical User Interface for PSPP
     Copyright (C) 2006  Free Software Foundation
-    Written by John Darrington
 
     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
@@ -26,6 +25,9 @@
 #include <glib-object.h>
 #include <glib.h>
 
+#include <libpspp/str.h>
+#include <data/case.h>
+
 
 
 G_BEGIN_DECLS
@@ -47,13 +49,14 @@ typedef struct _PsppireCaseFile        PsppireCaseFile;
 typedef struct _PsppireCaseFileClass PsppireCaseFileClass;
 
 struct ccase;
-struct casefilefile;
+struct flexifile;
+struct casefile;
 
 struct _PsppireCaseFile
 {
   GObject             parent;
 
-  struct casefile *flexifile;
+  struct datasheet *datasheet;
 };
 
 
@@ -66,41 +69,43 @@ struct _PsppireCaseFileClass
 /* -- PsppireCaseFile --- */
 GType          psppire_case_file_get_type (void);
 
-PsppireCaseFile *psppire_case_file_new (gint var_cnt);
+PsppireCaseFile *psppire_case_file_new (void);
 
-gboolean psppire_case_file_append_case(PsppireCaseFile *cf, 
-                                            struct ccase *c);
+gboolean psppire_case_file_insert_case (PsppireCaseFile *cf, struct ccase *c, gint row);
 
-gint psppire_case_file_get_case_count(const PsppireCaseFile *cf);
+gint psppire_case_file_get_case_count (const PsppireCaseFile *cf);
 
 
-const union value * psppire_case_file_get_value(const PsppireCaseFile *cf, 
-                                             gint c, gint idx);
+union value * psppire_case_file_get_value (const PsppireCaseFile *cf,
+                                           casenumber, size_t idx,
+                                           union value *, int width);
 
-struct data_in;
+struct fmt_spec;
 
-gboolean psppire_case_file_data_in(PsppireCaseFile *cf, gint c, gint idx,
-                                struct data_in *d_in);
+gboolean psppire_case_file_data_in (PsppireCaseFile *cf, gint c, gint idx,
+                                   struct substring input,
+                                   const struct fmt_spec *);
 
-gboolean psppire_case_file_set_value(PsppireCaseFile *cf, gint casenum, 
+gboolean psppire_case_file_set_value (PsppireCaseFile *cf, gint casenum,
                                     gint idx, union value *v, gint width);
 
-void psppire_case_file_clear(PsppireCaseFile *cf);
+void psppire_case_file_clear (PsppireCaseFile *cf);
 
 
-gboolean psppire_case_file_delete_cases(PsppireCaseFile *cf, gint n_rows, 
+gboolean psppire_case_file_delete_cases (PsppireCaseFile *cf, gint n_rows,
                                        gint first);
 
-gboolean psppire_case_file_insert_case(PsppireCaseFile *cf, gint row);
+gboolean psppire_case_file_insert_values (PsppireCaseFile *cf, gint n_values, gint before);
 
+struct case_ordering;
+void psppire_case_file_sort (PsppireCaseFile *cf, struct case_ordering *);
 
-gboolean psppire_case_file_insert_values(PsppireCaseFile *cf, gint n_values, gint before);
+gboolean psppire_case_file_get_case (const PsppireCaseFile *cf, gint casenum,
+                                   struct ccase *c);
 
-struct sort_criteria;
-void psppire_case_file_sort(PsppireCaseFile *cf, const struct sort_criteria *);
+void psppire_case_file_replace_datasheet (PsppireCaseFile *,
+                                          struct datasheet *);
 
-gboolean psppire_case_file_get_case(const PsppireCaseFile *cf, gint casenum, 
-                                   struct ccase *c);
 
 
 G_END_DECLS