+++ /dev/null
-/* PSPPIRE - a graphical user interface for PSPP.
- Copyright (C) 2006, 2007, 2010 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 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.
-
- 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 <gtk/gtk.h>
-
-#include <libpspp/copyleft.h>
-#include <libpspp/version.h>
-#include "about.h"
-#include "helper.h"
-
-#include "gl/configmake.h"
-
-#include <gettext.h>
-#define _(msgid) gettext (msgid)
-#define N_(msgid) msgid
-
-
-static const gchar *artists[] = { "Patrick Brunier", "Dondi Bogusky", NULL};
-
-void
-about_new (GtkMenuItem *m, GtkWindow *parent)
-{
- GtkWidget *about = gtk_about_dialog_new ();
-
- GdkPixbuf *pb =
- gdk_pixbuf_new_from_file_at_size (relocate (PKGDATADIR "/pspplogo.png"),
- 64, 64, 0);
-
- gtk_about_dialog_set_logo (GTK_ABOUT_DIALOG (about), pb);
-
-
- gtk_window_set_icon_name (GTK_WINDOW (about), "psppicon");
-
- gtk_about_dialog_set_website (GTK_ABOUT_DIALOG (about),
- "http://www.gnu.org/software/pspp");
-
- gtk_about_dialog_set_version (GTK_ABOUT_DIALOG (about),
- bare_version);
-
- gtk_about_dialog_set_authors (GTK_ABOUT_DIALOG (about),
- (const gchar **) authors);
-
- gtk_about_dialog_set_artists (GTK_ABOUT_DIALOG (about),
- artists);
-
- gtk_about_dialog_set_license (GTK_ABOUT_DIALOG (about),
- copyleft);
-
- gtk_about_dialog_set_comments (GTK_ABOUT_DIALOG (about),
- _("A program for the analysis of sampled data"));
-
- gtk_about_dialog_set_copyright (GTK_ABOUT_DIALOG (about),
- "Free Software Foundation");
-
- gtk_about_dialog_set_translator_credits
- (
- GTK_ABOUT_DIALOG (about),
- /* TRANSLATORS: Use this string to list the people who have helped with
- translation to your language. */
- _("translator-credits")
- );
-
- gtk_window_set_transient_for (GTK_WINDOW (about), parent);
-
- gtk_window_set_modal (GTK_WINDOW (about), TRUE);
-
- gtk_dialog_run (GTK_DIALOG (about));
-
- gtk_widget_hide (about);
-}
-
+++ /dev/null
-/* PSPPIRE - a graphical user interface for PSPP.
- Copyright (C) 2007, 2010 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 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.
-
- 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 <gtk/gtk.h>
-
-
-void about_new (GtkMenuItem *m, GtkWindow *parent);
src/ui/gui/psppire-hbuttonbox.c \
src/ui/gui/psppire-vbuttonbox.c \
src/ui/gui/psppire-acr.c \
- src/ui/gui/about.c \
- src/ui/gui/about.h \
src/ui/gui/checkbox-treeview.c \
src/ui/gui/checkbox-treeview.h \
src/ui/gui/comments-dialog.c \
src/ui/gui/goto-case-dialog.c \
src/ui/gui/goto-case-dialog.h \
src/ui/gui/helper.c \
+ src/ui/gui/help-menu.c \
+ src/ui/gui/help-menu.h \
src/ui/gui/helper.h \
src/ui/gui/main.c \
src/ui/gui/missing-val-dialog.c \
<property name="label" translatable="yes">_Split</property>
</object>
</child>
- <child>
- <object class="GtkAction" id="help">
- <property name="name">help</property>
- <property name="label" translatable="yes">_Help</property>
- </object>
- </child>
- <child>
- <object class="GtkAction" id="help_reference">
- <property name="name">help_reference</property>
- <property name="label" translatable="yes">_Reference Manual</property>
- </object>
- </child>
- <child>
- <object class="GtkAction" id="help_about">
- <property name="stock-id">gtk-about</property>
- <property name="name">help_about</property>
- </object>
- </child>
</object>
</child>
<ui>
<menuitem action="windows_minimise_all"/>
<menuitem action="windows_split"/>
</menu>
- <menu action="help">
- <menuitem action="help_reference"/>
- <menuitem action="help_about"/>
- </menu>
</menubar>
<toolbar action="toolbar">
<placeholder name="tool-items">
--- /dev/null
+/* PSPPIRE - a graphical user interface for PSPP.
+ Copyright (C) 2006, 2007, 2010 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 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.
+
+ 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 <gtk/gtk.h>
+
+#include <libpspp/copyleft.h>
+#include <libpspp/version.h>
+#include "help-menu.h"
+#include <libpspp/message.h>
+
+#include "gl/configmake.h"
+#include "gl/relocatable.h"
+
+#include <gettext.h>
+#define _(msgid) gettext (msgid)
+#define N_(msgid) msgid
+
+
+static const gchar *artists[] = { "Patrick Brunier", "Dondi Bogusky", NULL};
+
+static void
+about_new (GtkMenuItem *m, GtkWindow *parent)
+{
+ GtkWidget *about = gtk_about_dialog_new ();
+
+ GdkPixbuf *pb =
+ gdk_pixbuf_new_from_file_at_size (relocate (PKGDATADIR "/pspplogo.png"),
+ 64, 64, 0);
+
+ gtk_about_dialog_set_logo (GTK_ABOUT_DIALOG (about), pb);
+
+
+ gtk_window_set_icon_name (GTK_WINDOW (about), "psppicon");
+
+ gtk_about_dialog_set_website (GTK_ABOUT_DIALOG (about),
+ "http://www.gnu.org/software/pspp");
+
+ gtk_about_dialog_set_version (GTK_ABOUT_DIALOG (about),
+ bare_version);
+
+ gtk_about_dialog_set_authors (GTK_ABOUT_DIALOG (about),
+ (const gchar **) authors);
+
+ gtk_about_dialog_set_artists (GTK_ABOUT_DIALOG (about),
+ artists);
+
+ gtk_about_dialog_set_license (GTK_ABOUT_DIALOG (about),
+ copyleft);
+
+ gtk_about_dialog_set_comments (GTK_ABOUT_DIALOG (about),
+ _("A program for the analysis of sampled data"));
+
+ gtk_about_dialog_set_copyright (GTK_ABOUT_DIALOG (about),
+ "Free Software Foundation");
+
+ gtk_about_dialog_set_translator_credits
+ (
+ GTK_ABOUT_DIALOG (about),
+ /* TRANSLATORS: Use this string to list the people who have helped with
+ translation to your language. */
+ _("translator-credits")
+ );
+
+ gtk_window_set_transient_for (GTK_WINDOW (about), parent);
+
+ gtk_window_set_modal (GTK_WINDOW (about), TRUE);
+
+ gtk_dialog_run (GTK_DIALOG (about));
+
+ gtk_widget_hide (about);
+}
+
+
+static void
+reference_manual (GtkMenuItem *menu, gpointer data)
+{
+ GError *err = NULL;
+ gchar *cmd = g_strdup_printf ("yelp file://%s", relocate (DOCDIR "/pspp.xml"));
+
+ if ( ! g_spawn_command_line_async (cmd, &err) )
+ {
+ msg (ME, _("Cannot open reference manual: %s. The PSPP user manual is "
+ "also available at "
+ "http://www.gnu.org/software/pspp/documentation.html"),
+ err->message);
+ }
+
+ g_free (cmd);
+ g_clear_error (&err);
+}
+
+void
+merge_help_menu (GtkUIManager *uim)
+{
+ GtkActionGroup *action_group = gtk_action_group_new ("help");
+
+ static const GtkActionEntry entries[] =
+ {
+ {
+ "help", NULL, /* name, stock id */
+ N_("_Help"), NULL, /* label, accelerator */
+ NULL,
+ NULL,
+ },
+
+ {
+ "help_reference", GTK_STOCK_HELP, /* name, stock id */
+ N_("_Reference Manual"), NULL, /* label, accelerator */
+ NULL, /* tooltip */
+ G_CALLBACK (reference_manual)
+ },
+
+ {
+ "help_about", GTK_STOCK_ABOUT,
+ NULL, NULL, NULL,
+ G_CALLBACK (about_new)
+ },
+ };
+
+ gtk_action_group_set_translation_domain (action_group, PACKAGE);
+
+ gtk_ui_manager_add_ui_from_string (uim, "\
+ <menubar name=\"menubar\">\
+ <menu action=\"help\">\
+ <menuitem action=\"help_reference\"/>\
+ <menuitem action=\"help_about\"/>\
+ </menu>\
+ </menubar>\
+ ", -1, 0);
+
+ gtk_action_group_add_actions (action_group, entries, G_N_ELEMENTS (entries), NULL);
+
+ gtk_ui_manager_insert_action_group (uim, action_group, 0);
+}
--- /dev/null
+/* PSPPIRE - a graphical user interface for PSPP.
+ Copyright (C) 2007, 2010 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 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.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#ifndef HELP_MENU_H
+#define HELP_MENU_H
+
+#include <gtk/gtk.h>
+
+
+void merge_help_menu (GtkUIManager *uim);
+
+#endif
}
-void
-reference_manual (GtkMenuItem *menu, gpointer data)
-{
- GError *err = NULL;
- gchar *cmd = g_strdup_printf ("yelp file://%s", relocate (DOCDIR "/pspp.xml"));
-
- if ( ! g_spawn_command_line_async (cmd, &err) )
- {
- msg (ME, _("Cannot open reference manual: %s. The PSPP user manual is "
- "also available at "
- "http://www.gnu.org/software/pspp/documentation.html"),
- err->message);
- }
-
- g_free (cmd);
- g_clear_error (&err);
-}
-
-
/* Create a deep copy of SRC */
GtkListStore *
clone_list_store (const GtkListStore *src)
void connect_help (GtkBuilder *);
-void reference_manual (GtkMenuItem *, gpointer);
-
#define builder_new(NAME) builder_new_real (relocate (PKGDATADIR "/" NAME))
GtkBuilder *builder_new_real (const gchar *name);
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <widget class="GtkMenuBar" id="menubar1">
+ <widget class="GtkMenuBar" id="menubar">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
</child>
</widget>
</child>
- <child>
- <widget class="GtkMenuItem" id="menuitem9">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Help</property>
- <property name="use_underline">True</property>
- <child>
- <widget class="GtkMenu" id="menuitem9_menu">
- <child>
- <widget class="GtkMenuItem" id="help_reference">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Reference Manual</property>
- <property name="use_underline">True</property>
- </widget>
- </child>
- <child>
- <widget class="GtkMenuItem" id="help_about">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_About</property>
- <property name="use_underline">True</property>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- </child>
</widget>
<packing>
<property name="expand">False</property>
#include "data/procedure.h"
#include "language/syntax-string-source.h"
#include "libpspp/message.h"
-#include "ui/gui/about.h"
+#include "ui/gui/help-menu.h"
#include "ui/gui/comments-dialog.h"
#include "ui/gui/compute-dialog.h"
#include "ui/gui/correlation-dialog.h"
}
- g_signal_connect (get_action_assert (de->builder,"file_new_syntax"),
- "activate",
- G_CALLBACK (create_syntax_window),
- NULL);
-
-
- {
- GtkAction *abt = get_action_assert (de->builder, "help_about");
-
- g_signal_connect (abt,
+ g_signal_connect (get_action_assert (de->builder,"file_new_syntax"),
"activate",
- G_CALLBACK (about_new),
- de);
- }
+ G_CALLBACK (create_syntax_window),
+ NULL);
- g_signal_connect (get_action_assert (de->builder,"help_reference"),
- "activate",
- G_CALLBACK (reference_manual),
- de);
-
g_signal_connect (de->data_editor,
"cases-selected",
{
GtkUIManager *uim = GTK_UI_MANAGER (get_object_assert (de->builder, "uimanager1", GTK_TYPE_UI_MANAGER));
+ merge_help_menu (uim);
+
PSPPIRE_WINDOW (de)->menu =
GTK_MENU_SHELL (gtk_ui_manager_get_widget (uim,"/ui/menubar/windows/windows_minimise_all")->parent);
}
#include <output/tab.h>
#include <stdlib.h>
-#include "about.h"
+#include "help-menu.h"
#include "psppire-output-window.h"
G_CALLBACK (cancel_urgency),
NULL);
- g_signal_connect (get_action_assert (xml,"help_about"),
- "activate",
- G_CALLBACK (about_new),
- window);
-
- g_signal_connect (get_action_assert (xml,"help_reference"),
- "activate",
- G_CALLBACK (reference_manual),
- NULL);
-
g_signal_connect (get_action_assert (xml,"windows_minimise-all"),
"activate",
G_CALLBACK (psppire_window_minimise_all),
{
GtkUIManager *uim = GTK_UI_MANAGER (get_object_assert (xml, "uimanager1", GTK_TYPE_UI_MANAGER));
+ merge_help_menu (uim);
PSPPIRE_WINDOW (window)->menu =
- GTK_MENU_SHELL (gtk_ui_manager_get_widget (uim,"/ui/menubar1/windows_menuitem/windows_minimise-all")->parent);
+ GTK_MENU_SHELL (gtk_ui_manager_get_widget (uim,"/ui/menubar/windows_menuitem/windows_minimise-all")->parent);
}
g_signal_connect_swapped (get_action_assert (xml, "file_export"), "activate",
#include "psppire-data-window.h"
#include "psppire-window-register.h"
#include "psppire.h"
-#include "about.h"
+#include "help-menu.h"
#include "psppire-syntax-window.h"
#include "syntax-editor-source.h"
#include <language/lexer/lexer.h>
GtkBuilder *xml = builder_new ("syntax-editor.ui");
GtkWidget *box = gtk_vbox_new (FALSE, 0);
- GtkWidget *menubar = get_widget_assert (xml, "menubar2");
+ GtkWidget *menubar = get_widget_assert (xml, "menubar");
GtkWidget *sw = get_widget_assert (xml, "scrolledwindow8");
window);
#endif
- {
- GtkAction *abt = get_action_assert (xml, "help_about");
- g_object_set (abt, "stock-id", "gtk-about", NULL);
-
- g_signal_connect (abt,
- "activate",
- G_CALLBACK (about_new),
- window);
- }
-
- g_signal_connect (get_action_assert (xml,"help_reference"),
- "activate",
- G_CALLBACK (reference_manual),
- NULL);
-
g_signal_connect_swapped (get_action_assert (xml, "file_save"),
"activate",
G_CALLBACK (syntax_save),
{
GtkUIManager *uim = GTK_UI_MANAGER (get_object_assert (xml, "uimanager1", GTK_TYPE_UI_MANAGER));
+ merge_help_menu (uim);
+
PSPPIRE_WINDOW (window)->menu =
- GTK_MENU_SHELL (gtk_ui_manager_get_widget (uim,"/ui/menubar2/windows/windows_minimise_all")->parent);
+ GTK_MENU_SHELL (gtk_ui_manager_get_widget (uim,"/ui/menubar/windows/windows_minimise_all")->parent);
}
g_object_unref (xml);
<glade-interface>
- <widget class="GtkMenuBar" id="menubar2">
+ <widget class="GtkMenuBar" id="menubar">
<property name="visible">True</property>
<property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
<property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
</child>
</widget>
</child>
- <child>
- <widget class="GtkMenuItem" id="menuitem9">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Help</property>
- <property name="use_underline">True</property>
-
- <child>
- <widget class="GtkMenu" id="menuitem9_menu">
- <child>
- <widget class="GtkMenuItem" id="help_reference">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_Reference Manual</property>
- <property name="use_underline">True</property>
- </widget>
- </child>
- <child>
- <widget class="GtkMenuItem" id="help_about">
- <property name="visible">True</property>
- <property name="label" translatable="yes">_About</property>
- <property name="use_underline">True</property>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- </child>
</widget>