X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-window.h;h=0e57b4d78de57965160e67a9802a758649983691;hb=refs%2Fbuilds%2F20140207030506%2Fpspp;hp=67440ccd1232bcbd3e0ac9e4ad42b5e29a48e553;hpb=1f9780e0184a3115d87783fdcfa39f89877a775e;p=pspp diff --git a/src/ui/gui/psppire-window.h b/src/ui/gui/psppire-window.h index 67440ccd12..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,25 +58,30 @@ 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; guint insert_handler; guint remove_handler; - gboolean unsaved; + + gboolean added_separator; + gboolean dirty; + GTimeVal savetime; }; struct _PsppireWindowClass { - GtkWindowClass parent_class; + PsppireWindowBaseClass parent_class; }; @@ -87,6 +90,9 @@ struct _PsppireWindowIface GTypeInterface g_iface; void (*save) (PsppireWindow *w); + void (*pick_filename) (PsppireWindow *); + gboolean (*load) (PsppireWindow *w, const gchar *filename, + const gchar *encoding, gpointer hint); }; @@ -99,17 +105,21 @@ void psppire_window_set_filename (PsppireWindow *w, const gchar *filename); void psppire_window_minimise_all (void); -void psppire_window_set_unsaved (PsppireWindow *, gboolean ); +void psppire_window_set_unsaved (PsppireWindow *); gboolean psppire_window_get_unsaved (PsppireWindow *); gint psppire_window_query_save (PsppireWindow *); void psppire_window_save (PsppireWindow *w); - -void add_most_recent (const char *file_name, GtkRecentManager *rm); -void delete_recent (const char *file_name, GtkRecentManager *rm); - +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