Added menuitem to display the PSPP reference manual.
[pspp-builds.git] / src / ui / gui / message-dialog.c
index 9afbee5bd433486dd82bb729570de612e153739c..ffdd491ee2d780bdb8ebdbe3e9edc4fa48e44816 100644 (file)
@@ -98,6 +98,7 @@ void
 popup_message (const struct msg *m)
 {
   GtkWidget *dialog;
+  gchar *location = NULL;
 
   gint message_type;
   const char *msg;
@@ -137,16 +138,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);
 }