X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fmessage-dialog.c;h=708d397e066cd8332dd72cb00ef86c489fd1d5fb;hb=aac99fa281936102aea8d22dd77e197cdd878180;hp=9afbee5bd433486dd82bb729570de612e153739c;hpb=e10bd21c92f8d6a82ed06bec7af9ee40bf5eb727;p=pspp diff --git a/src/ui/gui/message-dialog.c b/src/ui/gui/message-dialog.c index 9afbee5bd4..708d397e06 100644 --- a/src/ui/gui/message-dialog.c +++ b/src/ui/gui/message-dialog.c @@ -1,10 +1,9 @@ -/* - PSPPIRE --- A Graphical User Interface for PSPP - Copyright (C) 2004,2005 Free Software Foundation +/* PSPPIRE - a graphical user interface for PSPP. + Copyright (C) 2004, 2005 Free Software Foundation, Inc. - This program is free software; you can redistribute it and/or modify + 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 + 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, @@ -13,10 +12,7 @@ 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. -*/ + along with this program. If not, see . */ #include @@ -98,6 +94,7 @@ void popup_message (const struct msg *m) { GtkWidget *dialog; + gchar *location = NULL; gint message_type; const char *msg; @@ -106,29 +103,58 @@ popup_message (const struct msg *m) { case MSG_ERROR: message_type = GTK_MESSAGE_ERROR; + switch (m->category) + { + case MSG_SYNTAX: + msg = _("Syntax Error"); + break; + + case MSG_DATA: + msg = _("Data File Error"); + break; + + case MSG_GENERAL: + default: + msg = _("PSPP Error"); + break; + }; break; case MSG_WARNING: message_type = GTK_MESSAGE_WARNING; + switch (m->category) + { + case MSG_SYNTAX: + msg = _("Syntax Warning"); break; - case MSG_NOTE: + + case MSG_DATA: + msg = _("Data File Warning"); + break; + + case MSG_GENERAL: default: - message_type = GTK_MESSAGE_INFO; + msg = _("PSPP Warning"); break; }; - + break; + case MSG_NOTE: + default: + message_type = GTK_MESSAGE_INFO; switch (m->category) { case MSG_SYNTAX: - msg = _("Script Error"); + msg = _("Syntax Information"); break; case MSG_DATA: - msg = _("Data File Error"); + msg = _("Data File Information"); break; case MSG_GENERAL: default: - msg = _("PSPP Error"); + msg = _("PSPP Information"); + break; + }; break; }; @@ -137,16 +163,26 @@ popup_message (const struct msg *m) message_type, GTK_BUTTONS_CLOSE, msg); + if ( m->where.line_number != -1) + { + location = g_strdup_printf (_("%s (line %d)"), + m->where.file_name ? m->where.file_name : "", + m->where.line_number); + } + else + { + location = g_strdup_printf (_("%s"), + m->where.file_name ? m->where.file_name : ""); } - gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG(dialog), - _("%s (line %d) %s"), - m->where.file_name, - m->where.line_number, - m->text); + gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), + _("%s %s"), + location, + m->text); + g_free (location); - gtk_window_set_keep_above (GTK_WINDOW(dialog), TRUE); + gtk_window_set_keep_above (GTK_WINDOW (dialog), TRUE); - gtk_dialog_run (GTK_DIALOG(dialog)); + gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); }