X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-window.h;h=0e57b4d78de57965160e67a9802a758649983691;hb=9021515cfa1489f9cd37e7440807bdd1d40de37a;hp=441e12af3f2454eaa7c3aae16e5fba181e9343b7;hpb=3bbb4370239deb29ebbf813d258aef6249e2a431;p=pspp diff --git a/src/ui/gui/psppire-window.h b/src/ui/gui/psppire-window.h index 441e12af3f..0e57b4d78d 100644 --- a/src/ui/gui/psppire-window.h +++ b/src/ui/gui/psppire-window.h @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2008, 2009 Free Software Foundation + Copyright (C) 2008, 2009, 2010, 2011, 2013, 2014 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 @@ -21,10 +21,8 @@ #include #include -#include -#include -#include -#include +#include +#include "psppire-window-base.h" G_BEGIN_DECLS @@ -60,12 +58,14 @@ typedef struct _PsppireWindowIface PsppireWindowIface; struct _PsppireWindow { - GtkWindow parent; + PsppireWindowBase parent; /* */ - gchar *name; - gchar *description; - gchar *basename; + gchar *filename; /* File name, in file name encoding, or NULL. */ + gchar *basename; /* Last component of filename, in UTF-8 */ + gchar *id; /* Dataset name, or NULL. */ + gchar *description; /* e.g. "Data Editor" */ + gchar *list_name; /* Name for "Windows" menu list. */ GHashTable *menuitem_table; GtkMenuShell *menu; @@ -73,6 +73,7 @@ struct _PsppireWindow guint insert_handler; guint remove_handler; + gboolean added_separator; gboolean dirty; GTimeVal savetime; }; @@ -80,7 +81,7 @@ struct _PsppireWindow struct _PsppireWindowClass { - GtkWindowClass parent_class; + PsppireWindowBaseClass parent_class; }; @@ -89,7 +90,9 @@ struct _PsppireWindowIface GTypeInterface g_iface; void (*save) (PsppireWindow *w); - gboolean (*load) (PsppireWindow *w, const gchar *); + void (*pick_filename) (PsppireWindow *); + gboolean (*load) (PsppireWindow *w, const gchar *filename, + const gchar *encoding, gpointer hint); }; @@ -109,8 +112,14 @@ gboolean psppire_window_get_unsaved (PsppireWindow *); gint psppire_window_query_save (PsppireWindow *); void psppire_window_save (PsppireWindow *w); -gboolean psppire_window_load (PsppireWindow *w, const gchar *file); - +void psppire_window_save_as (PsppireWindow *w); +gboolean psppire_window_load (PsppireWindow *w, const gchar *file, + const gchar *encoding, gpointer hint); +void psppire_window_open (PsppireWindow *de); +GtkWidget *psppire_window_file_chooser_dialog (PsppireWindow *toplevel); + +void add_most_recent (const char *file_name, const char *mime_type, + const char *encoding); G_END_DECLS