Added psppire-dialog and psppire-buttonbox widgets.
[pspp-builds.git] / src / ui / gui / about.c
1 /*
2     PSPPIRE --- A Graphical User Interface for PSPP
3     Copyright (C) 2006, 2007  Free Software Foundation
4
5     This program is free software; you can redistribute it and/or modify
6     it under the terms of the GNU General Public License as published by
7     the Free Software Foundation; either version 2 of the License, or
8     (at your option) any later version.
9
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14
15     You should have received a copy of the GNU General Public License
16     along with this program; if not, write to the Free Software
17     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18     02110-1301, USA. */
19
20
21 #include <gtk/gtk.h>
22 #include <glade/glade.h>
23
24 #include <libpspp/version.h>
25 #include "about.h"
26 #include "helper.h"
27
28 void
29 about_new (GtkMenuItem *m, GtkWindow *parent)
30 {
31   GladeXML *xml = glade_xml_new (PKGDATADIR "/psppire.glade", NULL, NULL);
32
33   GtkWidget *about =  get_widget_assert (xml, "aboutdialog1");
34
35   GdkPixbuf *pb =
36     gdk_pixbuf_new_from_file_at_size (PKGDATADIR "/pspplogo.png", 64, 64, 0);
37
38   gtk_about_dialog_set_logo (GTK_ABOUT_DIALOG (about), pb);
39
40
41   gtk_window_set_icon_from_file (GTK_WINDOW (about),
42                                  PKGDATADIR "/psppicon.png", 0);
43
44   gtk_about_dialog_set_website (GTK_ABOUT_DIALOG (about),
45                                 "http://www.gnu.org/software/pspp");
46
47   gtk_about_dialog_set_version (GTK_ABOUT_DIALOG (about),
48                                 bare_version);
49
50   gtk_about_dialog_set_authors (GTK_ABOUT_DIALOG (about),
51                                 (const gchar **) authors);
52
53   gtk_window_set_transient_for (GTK_WINDOW (about), parent);
54
55   gtk_window_set_modal (GTK_WINDOW (about), TRUE);
56
57   gtk_window_set_keep_above (GTK_WINDOW (about), TRUE);
58
59   gtk_dialog_run (GTK_DIALOG (about));
60
61   gtk_widget_hide (about);
62 }
63