X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-dict.h;h=798749328101be104f8f704030716cb87814280c;hb=ac5fc2c85d86f1a14cdea0a215666ab39b44a1dc;hp=b36ccf9e6156297ade8b892e74ef3ef798f4ae47;hpb=dcf9b154cbcaa35c3d8459a201b77eec8bcb30bd;p=pspp
diff --git a/src/ui/gui/psppire-dict.h b/src/ui/gui/psppire-dict.h
index b36ccf9e61..7987493281 100644
--- a/src/ui/gui/psppire-dict.h
+++ b/src/ui/gui/psppire-dict.h
@@ -1,22 +1,18 @@
-/*
- PSPPIRE --- A Graphical User Interface for PSPP
- Copyright (C) 2004 Free Software Foundation
- Written by John Darrington
+/* PSPPIRE - a graphical user interface for PSPP.
+ Copyright (C) 2004, 2009 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
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
+ 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
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- 02110-1301, USA. */
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see . */
#ifndef __PSPPIRE_DICT_H__
@@ -26,85 +22,97 @@
#include
#include
-#include
-#include
+#include
+#include
G_BEGIN_DECLS
/* --- type macros --- */
-#define G_TYPE_PSPPIRE_DICT (psppire_dict_get_type ())
-#define PSPPIRE_DICT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_PSPPIRE_DICT, PsppireDict))
-#define PSPPIRE_DICT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), G_TYPE_PSPPIRE_DICT, PsppireDictClass))
-#define G_IS_PSPPIRE_DICT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), G_TYPE_PSPPIRE_DICT))
-#define G_IS_PSPPIRE_DICT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), G_TYPE_PSPPIRE_DICT))
-#define PSPPIRE_DICT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), G_TYPE_PSPPIRE_DICT, PsppireDictClass))
-
+#define PSPPIRE_TYPE_DICT (psppire_dict_get_type ())
+#define PSPPIRE_DICT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PSPPIRE_TYPE_DICT, PsppireDict))
+#define PSPPIRE_DICT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PSPPIRE_TYPE_DICT, PsppireDictClass))
+#define PSPPIRE_IS_DICT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PSPPIRE_TYPE_DICT))
+#define PSPPIRE_IS_DICT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PSPPIRE_TYPE_DICT))
+#define PSPPIRE_DICT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PSPPIRE_TYPE_DICT, PsppireDictClass))
/* --- typedefs & structures --- */
typedef struct _PsppireDict PsppireDict;
typedef struct _PsppireDictClass PsppireDictClass;
+enum {DICT_TVM_COL_NAME=0, DICT_TVM_COL_VAR, DICT_TVM_COL_LABEL, n_DICT_COLS} ;
+
struct _PsppireDict
{
GObject parent;
struct dictionary *dict;
- /* Cache of variables */
- struct PsppireVariable **variables;
-
- gint cache_size;
+ gboolean disable_insert_signal;
+ /* For GtkTreeModelIface */
+ gint stamp;
};
struct _PsppireDictClass
{
GObjectClass parent_class;
-
};
/* -- PsppireDict --- */
GType psppire_dict_get_type (void);
-PsppireDict* psppire_dict_new (void);
-PsppireDict* psppire_dict_new_from_dict (struct dictionary *d);
-void psppire_dict_set_name (PsppireDict* s, gint idx, const gchar *name);
+PsppireDict* psppire_dict_new_from_dict (struct dictionary *d);
+gboolean psppire_dict_set_name (PsppireDict* s, gint idx, const gchar *name);
void psppire_dict_delete_var (PsppireDict *s, gint idx);
-/* Return the variable indexed by IDX.
- returns NULL if IDX is not valid.
-*/
-struct variable *psppire_dict_get_var(PsppireDict *d, gint idx);
-
/* Return the number of variables in the dictionary */
-gint psppire_dict_get_var_cnt(const PsppireDict *d);
+gint psppire_dict_get_var_cnt (const PsppireDict *d);
+
+/* Return the number of `union value's in the dictionary */
+size_t psppire_dict_get_value_cnt (const PsppireDict *d);
+
+/* Returns the prototype for the cases that match the dictionary */
+const struct caseproto *psppire_dict_get_proto (const PsppireDict *d);
/* Return a variable by name.
Return NULL if it doesn't exist
*/
struct variable * psppire_dict_lookup_var (const PsppireDict *d, const gchar *name);
-/* Tell the dictionary that one of its variable has changed */
-void psppire_dict_var_changed(PsppireDict *d, gint idx);
-
-
/* Clears the contents of D */
-void psppire_dict_clear(PsppireDict *d);
+void psppire_dict_clear (PsppireDict *d);
/* Return the IDXth variable */
-
-struct PsppireVariable * psppire_dict_get_variable(PsppireDict *d, gint idx);
+struct variable * psppire_dict_get_variable (const PsppireDict *d, gint idx);
/* Delete N variables beginning at FIRST */
-void psppire_dict_delete_variables(PsppireDict *d, gint first, gint n);
+void psppire_dict_delete_variables (PsppireDict *d, gint first, gint n);
/* Insert a new variable at posn IDX */
-void psppire_dict_insert_variable(PsppireDict *d, gint idx, const gchar *name);
+void psppire_dict_insert_variable (PsppireDict *d, gint idx, const gchar *name);
-gboolean psppire_dict_check_name(const PsppireDict *dict,
+void psppire_dict_resize_variable (PsppireDict *,
+ const struct variable *,
+ gint, gint );
+
+gboolean psppire_dict_check_name (const PsppireDict *dict,
const gchar *name, gboolean report);
+gint psppire_dict_get_next_value_idx (const PsppireDict *dict);
+
+gboolean psppire_dict_rename_var (PsppireDict *dict, struct variable *v,
+ const gchar *text);
+
+void psppire_dict_replace_dictionary (PsppireDict *, struct dictionary *);
+
+struct variable * psppire_dict_get_weight_variable (const PsppireDict *);
+
+#if DEBUGGING
+void psppire_dict_dump (const PsppireDict *);
+#endif
+
+const gchar *psppire_dict_encoding (const PsppireDict *);
G_END_DECLS