-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */
-
/*
- * (GLABELS) Label and Business Card Creation program for GNOME
- *
- * ui-commands.c: GLabels UI commands module
+ * ui-commands.c
+ * Copyright (C) 2001-2009 Jim Evins <evins@snaught.com>.
*
- * Copyright (C) 2001-2003 Jim Evins <evins@snaught.com>.
+ * This file is part of gLabels.
*
- * This program is free software; you can redistribute it and/or modify
+ * gLabels 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,
+ * gLabels 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * along with gLabels. If not, see <http://www.gnu.org/licenses/>.
*/
#include <config.h>
#include "ui-commands.h"
#include <glib/gi18n.h>
-#include <gtk/gtkwindow.h>
-#include <gtk/gtkaboutdialog.h>
-#include <libgnome/gnome-help.h>
+#include <gtk/gtk.h>
+#include "ui.h"
#include "view.h"
#include "file.h"
#include "template-designer.h"
-#include "print-op.h"
+#include "print-op-dialog.h"
#include "prefs.h"
#include "prefs-dialog.h"
#include "recent.h"
#include "debug.h"
-\f
/****************************************************************************/
/** File/New command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Properties command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Template-Designer command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Open command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Open-Recent command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Save command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Save-as command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Print command. */
/****************************************************************************/
gl_ui_cmd_file_print (GtkAction *action,
glWindow *window)
{
- glPrintOp *op;
+ glPrintOpDialog *op;
GtkPrintOperationResult result;
gl_debug (DEBUG_COMMANDS, "START");
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- op = gl_print_op_new (GL_VIEW(window->view)->label);
+ op = gl_print_op_dialog_new (GL_VIEW(window->view)->label);
if (window->print_settings)
{
- gl_print_op_set_settings (op, window->print_settings);
+ gl_print_op_set_settings (GL_PRINT_OP (op), window->print_settings);
}
result = gtk_print_operation_run (GTK_PRINT_OPERATION (op),
if ( result == GTK_PRINT_OPERATION_RESULT_APPLY )
{
gl_print_op_free_settings (window->print_settings);
- window->print_settings = gl_print_op_get_settings (op);
+ window->print_settings = gl_print_op_get_settings (GL_PRINT_OP (op));
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Close command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** File/Quit command. */
/****************************************************************************/
}
+/****************************************************************************/
+/** Edit/Undo command. */
+/****************************************************************************/
+void
+gl_ui_cmd_edit_undo (GtkAction *action,
+ glWindow *window)
+{
+ gl_debug (DEBUG_COMMANDS, "START");
+
+ g_return_if_fail (action && GTK_IS_ACTION(action));
+ g_return_if_fail (window && GL_IS_WINDOW(window));
+
+ gl_label_undo (GL_LABEL (GL_VIEW (window->view)->label));
+
+ gl_debug (DEBUG_COMMANDS, "END");
+}
+
+
+/****************************************************************************/
+/** Edit/Redo command. */
+/****************************************************************************/
+void
+gl_ui_cmd_edit_redo (GtkAction *action,
+ glWindow *window)
+{
+ gl_debug (DEBUG_COMMANDS, "START");
+
+ g_return_if_fail (action && GTK_IS_ACTION(action));
+ g_return_if_fail (window && GL_IS_WINDOW(window));
+
+ gl_label_redo (GL_LABEL (GL_VIEW (window->view)->label));
+
+ gl_debug (DEBUG_COMMANDS, "END");
+}
+
+
/****************************************************************************/
/** Edit/Cut command. */
/****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gl_view_cut (GL_VIEW(window->view));
+ gl_label_cut_selection (window->label);
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** Edit/Copy command. */
/****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gl_view_copy (GL_VIEW(window->view));
+ gl_label_copy_selection (window->label);
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** Edit/Paste command. */
/****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gl_view_paste (GL_VIEW(window->view));
+ gl_label_paste (window->label);
gl_debug (DEBUG_COMMANDS, "END");
}
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gl_view_delete_selection (GL_VIEW(window->view));
+ gl_label_delete_selection (GL_VIEW(window->view)->label);
gl_debug (DEBUG_COMMANDS, "END");
}
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gl_view_select_all (GL_VIEW(window->view));
+ gl_label_select_all (GL_VIEW(window->view)->label);
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** Edit/Unselect-all command. */
/****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gl_view_unselect_all (GL_VIEW(window->view));
+ gl_label_unselect_all (GL_VIEW(window->view)->label);
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** Edit/Preferences command. */
/****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** View/Property-bar-toggle command. */
/*****************************************************************************/
state = gtk_toggle_action_get_active (action);
- gl_prefs->property_toolbar_visible = state;
+ gl_prefs_model_set_property_toolbar_visible (gl_prefs, state);
if (state) {
gtk_widget_show (GTK_WIDGET (window->property_bar));
} else {
gtk_widget_hide (GTK_WIDGET (window->property_bar));
}
- gl_prefs_model_save_settings (gl_prefs);
gl_debug (DEBUG_COMMANDS, "END");
}
-/*****************************************************************************/
-/** View/Property-bar-tooltips-toggle command. */
-/*****************************************************************************/
-void
-gl_ui_cmd_view_property_bar_tips_toggle (GtkToggleAction *action,
- glWindow *window)
-{
- gboolean state;
-
- gl_debug (DEBUG_COMMANDS, "START");
-
- g_return_if_fail (action && GTK_IS_TOGGLE_ACTION(action));
- g_return_if_fail (window && GL_IS_WINDOW(window));
-
- state = gtk_toggle_action_get_active (action);
-
- gl_prefs->property_toolbar_view_tooltips = state;
- gl_ui_property_bar_set_tooltips (window->property_bar, state);
- gl_prefs_model_save_settings (gl_prefs);
-
- gl_debug (DEBUG_COMMANDS, "END");
-}
/*****************************************************************************/
/** View/Grid-toggle command. */
}
}
- gl_prefs->grid_visible = state;
- gl_prefs_model_save_settings (gl_prefs);
+ gl_prefs_model_set_grid_visible (gl_prefs, state);
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** View/Markup-toggle command. */
/*****************************************************************************/
}
}
- gl_prefs->markup_visible = state;
- gl_prefs_model_save_settings (gl_prefs);
+ gl_prefs_model_set_markup_visible (gl_prefs, state);
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** View/Zoom-in command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** View/Zoom-out command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** View/Zoom-1:1 command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** View/Zoom-to-fit command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Arrow-mode command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Create-text object command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Create-box object command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Create-line object command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Create-ellipse object command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Create-image object command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Create-barcode object command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Raise command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_raise_selection (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_raise_selection_to_top (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Lower command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_lower_selection (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_lower_selection_to_bottom (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Rotate-left-90-degrees command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_rotate_selection_left (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_rotate_selection_left (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Rotate-right-90-degrees command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_rotate_selection_right (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_rotate_selection_right (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Flip-horizontally command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_flip_selection_horiz (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_flip_selection_horiz (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Flip-vertically command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_flip_selection_vert (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_flip_selection_vert (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Align-left command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_align_selection_left (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_align_selection_left (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Align-right command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_align_selection_right (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_align_selection_right (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Align-horizontal-center command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_align_selection_hcenter (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_align_selection_hcenter (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Align-top command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_align_selection_top (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_align_selection_top (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Align-bottom command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_align_selection_bottom (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_align_selection_bottom (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Align-vertical center command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_align_selection_vcenter (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_align_selection_vcenter (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Center-horizontally command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_center_selection_horiz (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_center_selection_horiz (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Center-vertically command. */
/*****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- if (window->view != NULL) {
- gl_view_center_selection_vert (GL_VIEW(window->view));
+ if (window->label != NULL) {
+ gl_label_center_selection_vert (window->label);
}
gl_debug (DEBUG_COMMANDS, "END");
}
+
/*****************************************************************************/
/** Objects/Edit- merge-properties command. */
/*****************************************************************************/
gl_debug (DEBUG_COMMANDS, "END");
}
+
/****************************************************************************/
/** Help/Contents command. */
/****************************************************************************/
g_return_if_fail (action && GTK_IS_ACTION(action));
g_return_if_fail (window && GL_IS_WINDOW(window));
- gnome_help_display_with_doc_id (NULL, NULL, "glabels.xml", NULL, &error);
+ gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (window)),
+ "ghelp:glabels-3.0",
+ gtk_get_current_event_time(),
+ &error);
if (error != NULL)
{
{
static GtkWidget *about = NULL;
+ gchar *pixbuf_filename;
GdkPixbuf *pixbuf = NULL;
const gchar *authors[] = {
"Jim Evins",
" ",
_("Glabels includes contributions from:"),
+ "Mario Blättermann",
+ "Robin Stuart",
+ "Samuel Lown",
"Frederic Ruaudel",
"Wayne Schuller",
"Emmanuel Pacaud",
"Austin Henry",
" ",
_("See the file AUTHORS for additional credits,"),
- _("or visit http://glabels.sourceforge.net/"),
+ _("or visit http://glabels.org/"),
+ NULL
+ };
+
+ const gchar *documenters[] = {
+ "Jim Evins",
+ "Mario Blättermann",
NULL
};
const gchar *artists[] = {
- "Nestor Di",
"Jim Evins",
NULL
};
-
- const gchar *copy_text = "Copyright \xc2\xa9 2001-2009 Jim Evins";
+
+ const gchar *copy_text = "Copyright \xc2\xa9 2001-2010 Jim Evins";
const gchar *about_text = _("A label and business card creation program.\n");
- const gchar *url = "http://glabels.sourceforge.net";
+ const gchar *url = "http://glabels.org";
const gchar *translator_credits = _("translator-credits");
const gchar *license = _(
- "Glabels is free software; you can redistribute it and/or modify it\n"
- "under the terms of the GNU General Public License as published by\n"
- "the Free Software Foundation; either version 2 of the License, or\n"
- "(at your option) any later version.\n" "\n"
- "This program is distributed in the hope that it will be useful, but\n"
- "WITHOUT ANY WARRANTY; without even the implied warranty of\n"
- "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See\n"
- "the GNU General Public License for more details.\n");
+ "gLabels is free software: you can redistribute it and/or modify\n"
+ "it under the terms of the GNU General Public License as published by\n"
+ "the Free Software Foundation, either version 3 of the License, or\n"
+ "(at your option) any later version.\n"
+ "\n"
+ "gLabels is distributed in the hope that it will be useful,\n"
+ "but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
+ "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
+ "GNU General Public License for more details.\n");
gl_debug (DEBUG_COMMANDS, "START");
} else {
- pixbuf = gdk_pixbuf_new_from_file (GLABELS_PIXMAP_DIR "glabels-splash.png", NULL);
+ pixbuf_filename = g_build_filename (GLABELS_DATA_DIR, "pixmaps", "glabels-logo.png", NULL);
+ pixbuf = gdk_pixbuf_new_from_file (pixbuf_filename, NULL);
+ g_free (pixbuf_filename);
about = gtk_about_dialog_new ();
- gtk_about_dialog_set_name (GTK_ABOUT_DIALOG(about), _("glabels"));
- gtk_about_dialog_set_version (GTK_ABOUT_DIALOG(about), VERSION);
- gtk_about_dialog_set_copyright (GTK_ABOUT_DIALOG(about), copy_text);
- gtk_about_dialog_set_comments (GTK_ABOUT_DIALOG(about), about_text);
- gtk_about_dialog_set_website (GTK_ABOUT_DIALOG(about), url);
- gtk_about_dialog_set_logo (GTK_ABOUT_DIALOG(about), pixbuf);
-
- gtk_about_dialog_set_authors (GTK_ABOUT_DIALOG(about), authors);
- gtk_about_dialog_set_artists (GTK_ABOUT_DIALOG(about), artists);
- gtk_about_dialog_set_translator_credits (GTK_ABOUT_DIALOG(about),
- translator_credits);
- gtk_about_dialog_set_license (GTK_ABOUT_DIALOG(about), license);
+ gtk_window_set_title (GTK_WINDOW(about), _("About glabels"));
+ gtk_about_dialog_set_program_name (GTK_ABOUT_DIALOG(about), "glabels");
+ gtk_about_dialog_set_version (GTK_ABOUT_DIALOG(about), VERSION);
+ gtk_about_dialog_set_copyright (GTK_ABOUT_DIALOG(about), copy_text);
+ gtk_about_dialog_set_comments (GTK_ABOUT_DIALOG(about), about_text);
+ gtk_about_dialog_set_website (GTK_ABOUT_DIALOG(about), url);
+ gtk_about_dialog_set_logo (GTK_ABOUT_DIALOG(about), pixbuf);
+
+ gtk_about_dialog_set_authors (GTK_ABOUT_DIALOG(about), authors);
+ gtk_about_dialog_set_documenters (GTK_ABOUT_DIALOG(about), documenters);
+ gtk_about_dialog_set_artists (GTK_ABOUT_DIALOG(about), artists);
+ gtk_about_dialog_set_translator_credits (GTK_ABOUT_DIALOG(about), translator_credits);
+ gtk_about_dialog_set_license (GTK_ABOUT_DIALOG(about), license);
gtk_window_set_destroy_with_parent (GTK_WINDOW (about), TRUE);
gl_debug (DEBUG_COMMANDS, "END");
}
+
+
+/*
+ * Local Variables: -- emacs
+ * mode: C -- emacs
+ * c-basic-offset: 8 -- emacs
+ * tab-width: 8 -- emacs
+ * indent-tabs-mode: nil -- emacs
+ * End: -- emacs
+ */