X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fwindow-manager.c;h=cea00fed1c0ff3c56f786cd3b33478676e79686d;hb=d52355bcda20563736bd83aed3ab58e534672cb5;hp=a4f5064d1801122bb714696d202e529fb1e8e3bc;hpb=8f157150f5fe225224e407161fb7f899d34b8b18;p=pspp-builds.git diff --git a/src/ui/gui/window-manager.c b/src/ui/gui/window-manager.c index a4f5064d..cea00fed 100644 --- a/src/ui/gui/window-manager.c +++ b/src/ui/gui/window-manager.c @@ -1,23 +1,24 @@ -/* - 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 . */ +#include + +#include "relocatable.h" + #include #include "syntax-editor.h" #include "data-editor.h" @@ -98,7 +99,7 @@ window_create (enum window_type type, const gchar *name) 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); @@ -110,6 +111,11 @@ window_create (enum window_type type, const gchar *name) return e; } +void +default_window_name (struct editor_window *w) +{ + set_window_name (w, NULL); +} static void set_window_name (struct editor_window *e, @@ -118,11 +124,12 @@ 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 ) @@ -145,16 +152,19 @@ set_window_name (struct editor_window *e, } +/* 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); @@ -170,6 +180,7 @@ window_set_name_from_filename (struct editor_window *e, gtk_window_set_title (GTK_WINDOW (e->window), title); g_free (title); + g_free (filename); } const gchar *