-/*
- PSPPIRE --- A Graphical User Interface for PSPP
- Copyright (C) 2006, 2007 Free Software Foundation
+/* PSPPIRE - a graphical user interface for PSPP.
+ Copyright (C) 2006, 2007 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 <http://www.gnu.org/licenses/>. */
+#include <config.h>
+
+#include "relocatable.h"
+
#include <glib.h>
#include "syntax-editor.h"
#include "data-editor.h"
+#include "output-viewer.h"
#include <gettext.h>
#define _(msgid) gettext (msgid)
case WINDOW_DATA:
e = (struct editor_window *) new_data_editor ();
break;
+ case WINDOW_OUTPUT:
+ e = (struct editor_window *) new_output_viewer ();
+ break;
default:
g_assert_not_reached ();
};
gtk_window_set_icon_from_file (GTK_WINDOW (e->window),
- PKGDATADIR "/psppicon.png", 0);
+ relocate (PKGDATADIR "/psppicon.png"), 0);
g_signal_connect (e->window, "destroy",
G_CALLBACK (deregister_window), e);
register_window (e);
- gtk_widget_show (e->window);
+ gtk_widget_show (GTK_WIDGET (e->window));
return e;
}
+void
+default_window_name (struct editor_window *w)
+{
+ set_window_name (w, NULL);
+}
static void
set_window_name (struct editor_window *e,
gchar *title ;
g_free (e->name);
+ e->name = NULL;
if ( name )
{
- e->name = g_strdup (name);
- return ;
+ e->name = g_strdup (name);
+ return;
}
switch (e->type )
e->name = g_strdup_printf (_("Untitled%d"), next_window_id () );
title = g_strdup_printf (_("%s --- PSPP Data Editor"), e->name);
break;
+ case WINDOW_OUTPUT:
+ e->name = g_strdup_printf (_("Output%d"), next_window_id () );
+ title = g_strdup_printf (_("%s --- PSPP Output"), e->name);
+ break;
default:
g_assert_not_reached ();
}
}
+/* Set the name of this window based on FILENAME.
+ FILENAME is in "filename encoding" */
void
window_set_name_from_filename (struct editor_window *e,
- const gchar *filename)
+ const gchar *fn)
{
gchar *title;
+ gchar *filename = g_filename_to_utf8 (fn, -1, NULL, NULL, NULL);
gchar *basename = g_path_get_basename (filename);
set_window_name (e, filename);
- switch (e->type )
+ switch (e->type)
{
case WINDOW_SYNTAX:
title = g_strdup_printf (_("%s --- PSPP Syntax Editor"), basename);
gtk_window_set_title (GTK_WINDOW (e->window), title);
g_free (title);
+ g_free (filename);
}
const gchar *