diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-04-03 05:22:58 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-04-03 05:22:58 +0800 |
commit | 167b482c9e39a093dcfecc5ef430261c0504e370 (patch) | |
tree | f9f4e9c0fbe5c6282f158015bd373a3cd5e68abf /calendar/gui/calendar-commands.c.dead | |
parent | fabb6b035c40673e7c263040db323d6b7607606e (diff) | |
download | gsoc2013-evolution-167b482c9e39a093dcfecc5ef430261c0504e370.tar.gz gsoc2013-evolution-167b482c9e39a093dcfecc5ef430261c0504e370.tar.zst gsoc2013-evolution-167b482c9e39a093dcfecc5ef430261c0504e370.zip |
Remove dead Bonobo-era source files.
Diffstat (limited to 'calendar/gui/calendar-commands.c.dead')
-rw-r--r-- | calendar/gui/calendar-commands.c.dead | 380 |
1 files changed, 0 insertions, 380 deletions
diff --git a/calendar/gui/calendar-commands.c.dead b/calendar/gui/calendar-commands.c.dead deleted file mode 100644 index 6368857ead..0000000000 --- a/calendar/gui/calendar-commands.c.dead +++ /dev/null @@ -1,380 +0,0 @@ -/* - * Evolution calendar - Commands for the calendar GUI control - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * Miguel de Icaza <miguel@ximian.com> - * Federico Mena-Quintero <federico@ximian.com> - * Seth Alves <alves@hungry.com> - * Rodrigo Moya <rodrigo@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <unistd.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <string.h> -#include <ctype.h> -#include <errno.h> - -#include <gtk/gtk.h> -#include <glib/gi18n.h> -#include <bonobo/bonobo-ui-util.h> -#include <bonobo/bonobo-exception.h> -#include <libecal/e-cal-time-util.h> -#include "shell/Evolution.h" -#include "calendar-commands.h" -#include "calendar-component.h" -#include "calendar-config.h" -#include "e-day-view.h" -#include "e-week-view.h" -#include "gnome-cal.h" -#include "goto.h" -#include "print.h" -#include "dialogs/cal-prefs-dialog.h" -#include "itip-utils.h" -#include "e-cal-list-view.h" -#include "evolution-shell-component-utils.h" -#include "e-util/e-icon-factory.h" -#include "e-util/e-util-private.h" -#include "e-cal-menu.h" - -/* Focusing information for the calendar view. We have to keep track of this - * ourselves because with Bonobo controls, we may get unpaired focus_out events. - */ -typedef struct { - guint calendar_focused : 1; - guint taskpad_focused : 1; -} FocusData; - -/* Sets a clock cursor for the specified calendar window */ -static void -set_clock_cursor (GnomeCalendar *gcal) -{ - GdkCursor *cursor; - - cursor = gdk_cursor_new (GDK_WATCH); - gdk_window_set_cursor (GTK_WIDGET (gcal)->window, cursor); - gdk_cursor_unref (cursor); - gdk_flush (); -} - -/* Resets the normal cursor for the specified calendar window */ -static void -set_normal_cursor (GnomeCalendar *gcal) -{ - gdk_window_set_cursor (GTK_WIDGET (gcal)->window, NULL); - gdk_flush (); -} - -static void -show_day_view_clicked (BonoboUIComponent *uic, gpointer data, const gchar *path) -{ - GnomeCalendar *gcal; - - gcal = GNOME_CALENDAR (data); - - gnome_calendar_set_view (gcal, GNOME_CAL_DAY_VIEW); -} - -static void -show_work_week_view_clicked (BonoboUIComponent *uic, gpointer data, const gchar *path) -{ - GnomeCalendar *gcal; - - gcal = GNOME_CALENDAR (data); - - gnome_calendar_set_view (gcal, GNOME_CAL_WORK_WEEK_VIEW); -} - -static void -show_week_view_clicked (BonoboUIComponent *uic, gpointer data, const gchar *path) -{ - GnomeCalendar *gcal; - - gcal = GNOME_CALENDAR (data); - - gnome_calendar_set_view (gcal, GNOME_CAL_WEEK_VIEW); -} - -static void -show_month_view_clicked (BonoboUIComponent *uic, gpointer data, const gchar *path) -{ - GnomeCalendar *gcal; - - gcal = GNOME_CALENDAR (data); - - gnome_calendar_set_view (gcal, GNOME_CAL_MONTH_VIEW); -} - -static void -show_list_view_clicked (BonoboUIComponent *uic, gpointer data, const gchar *path) -{ - GnomeCalendar *gcal; - - gcal = GNOME_CALENDAR (data); - - gnome_calendar_set_view (gcal, GNOME_CAL_LIST_VIEW); -} - -struct _sensitize_item { - const gchar *command; - guint32 enable; -}; - -static void -sensitize_items(BonoboUIComponent *uic, struct _sensitize_item *items, guint32 mask) -{ - while (items->command) { - gchar command[32]; - - if (strlen(items->command)>=21) { - g_warning ("items->command >= 21: %s\n", items->command); - continue; - } - sprintf(command, "/commands/%s", items->command); - - bonobo_ui_component_set_prop (uic, command, "sensitive", - (items->enable & mask) == 0 ? "1" : "0", - NULL); - items++; - } -} - -static struct _sensitize_item taskpad_sensitize_table[] = { - { "Cut", E_CAL_MENU_SELECT_EDITABLE | E_CAL_MENU_SELECT_ANY }, - { "Copy", E_CAL_MENU_SELECT_ANY }, - { "Paste", E_CAL_MENU_SELECT_EDITABLE }, - { "Delete", E_CAL_MENU_SELECT_EDITABLE }, - { NULL } -}; - -/* Sensitizes the UI Component menu/toolbar tasks commands based on the number - * of selected tasks. If enable is FALSE, all will be disabled. Otherwise, the - * currently-selected number of tasks will be used. - */ -static void -sensitize_taskpad_commands (GnomeCalendar *gcal, BonoboControl *control, gboolean enable) -{ - BonoboUIComponent *uic; - ECalendarTable *task_pad; - ECalModel *model; - GSList *selected, *l; - ECalMenu *menu; - GPtrArray *events; - ECalMenuTargetSelect *t; - - uic = bonobo_control_get_ui_component (control); - g_return_if_fail (uic != NULL); - - menu = gnome_calendar_get_calendar_menu (gcal); - task_pad = gnome_calendar_get_task_pad(gcal); - model = e_calendar_table_get_model (task_pad); - selected = e_calendar_table_get_selected(task_pad); - events = g_ptr_array_new(); - for (l=selected;l;l=g_slist_next(l)) - g_ptr_array_add(events, e_cal_model_copy_component_data((ECalModelComponent *)l->data)); - g_slist_free(selected); - - t = e_cal_menu_target_new_select(menu, model, events); - if (!enable) - t->target.mask = ~((~t->target.mask) & E_CAL_MENU_SELECT_EDITABLE); - - sensitize_items(uic, taskpad_sensitize_table, t->target.mask); -} - -/* Callback used when the selection in the calendar views changes */ -static void -gcal_calendar_selection_changed_cb (GnomeCalendar *gcal, gpointer data) -{ - BonoboControl *control; - - control = BONOBO_CONTROL (data); - - calendar_control_sensitize_calendar_commands (control, gcal, TRUE); -} - -/* Callback used when the selection in the taskpad changes */ -static void -gcal_taskpad_selection_changed_cb (GnomeCalendar *gcal, gpointer data) -{ - BonoboControl *control; - - control = BONOBO_CONTROL (data); - - sensitize_taskpad_commands (gcal, control, TRUE); -} - -/* Callback used when the focus changes for a calendar view */ -static void -gcal_calendar_focus_change_cb (GnomeCalendar *gcal, gboolean in, gpointer data) -{ - BonoboControl *control; - FocusData *focus; - - control = BONOBO_CONTROL (data); - - focus = g_object_get_data (G_OBJECT (control), "focus_data"); - g_return_if_fail (focus != NULL); - - if (in) { - g_signal_connect (gcal, "calendar_selection_changed", - G_CALLBACK (gcal_calendar_selection_changed_cb), control); - calendar_control_sensitize_calendar_commands (control, gcal, TRUE); - focus->calendar_focused = TRUE; - } else if (focus->calendar_focused) { - g_signal_handlers_disconnect_by_func ( - gcal, G_CALLBACK (gcal_calendar_selection_changed_cb), control); - calendar_control_sensitize_calendar_commands (control, gcal, FALSE); - focus->calendar_focused = FALSE; - } -} - -/* Callback used when the taskpad focus changes */ -static void -gcal_taskpad_focus_change_cb (GnomeCalendar *gcal, gboolean in, gpointer data) -{ - BonoboControl *control; - FocusData *focus; - - control = BONOBO_CONTROL (data); - - focus = g_object_get_data (G_OBJECT (control), "focus_data"); - g_return_if_fail (focus != NULL); - - if (in) { - g_signal_connect (gcal, "taskpad_selection_changed", - G_CALLBACK (gcal_taskpad_selection_changed_cb), control); - sensitize_taskpad_commands (gcal, control, TRUE); - focus->taskpad_focused = TRUE; - } else if (focus->taskpad_focused) { - /* With Bonobo controls, we may get unpaired focus_out events. - * That is why we have to keep track of this ourselves instead - * of blindly assumming that we are getting this event because - * the taskpad was in fact focused. - */ - g_signal_handlers_disconnect_by_func ( - gcal, G_CALLBACK (gcal_taskpad_selection_changed_cb), control); - sensitize_taskpad_commands (gcal, control, FALSE); - focus->taskpad_focused = FALSE; - } - -} - -static void -help_debug (BonoboUIComponent *uid, gpointer data, const gchar *path) -{ - calendar_component_show_logger ((GtkWidget *) data); -} - -static BonoboUIVerb verbs [] = { - - BONOBO_UI_VERB ("ShowDayView", show_day_view_clicked), - BONOBO_UI_VERB ("ShowWorkWeekView", show_work_week_view_clicked), - BONOBO_UI_VERB ("ShowWeekView", show_week_view_clicked), - BONOBO_UI_VERB ("ShowMonthView", show_month_view_clicked), - BONOBO_UI_VERB ("ShowListView", show_list_view_clicked), - - BONOBO_UI_VERB ("HelpDebug", help_debug), - BONOBO_UI_VERB_END -}; - -void -calendar_control_activate (BonoboControl *control, - GnomeCalendar *gcal) -{ - Bonobo_UIContainer remote_uih; - BonoboUIComponent *uic; - FocusData *focus; - gchar *xmlfile; - - uic = bonobo_control_get_ui_component (control); - g_return_if_fail (uic != NULL); - - remote_uih = bonobo_control_get_remote_ui_container (control, NULL); - bonobo_ui_component_set_container (uic, remote_uih, NULL); - bonobo_object_release_unref (remote_uih, NULL); - - gnome_calendar_set_ui_component (gcal, uic); - - bonobo_ui_component_add_verb_list_with_data (uic, verbs, gcal); - - bonobo_ui_component_freeze (uic, NULL); - - xmlfile = g_build_filename (EVOLUTION_UIDIR, - "evolution-calendar.xml", - NULL); - bonobo_ui_util_set_ui (uic, PREFIX, - xmlfile, - "evolution-calendar", - NULL); - g_free (xmlfile); - - gnome_calendar_setup_view_menus (gcal, uic); - - g_signal_connect (gcal, "calendar_focus_change", - G_CALLBACK (gcal_calendar_focus_change_cb), control); - g_signal_connect (gcal, "taskpad_focus_change", - G_CALLBACK (gcal_taskpad_focus_change_cb), control); - - e_menu_activate((EMenu *)gnome_calendar_get_calendar_menu (gcal), uic, 1); - e_menu_activate((EMenu *)gnome_calendar_get_taskpad_menu (gcal), uic, 1); - - calendar_control_sensitize_calendar_commands (control, gcal, TRUE); - sensitize_taskpad_commands (gcal, control, TRUE); - - bonobo_ui_component_thaw (uic, NULL); - - focus = g_new (FocusData, 1); - focus->calendar_focused = FALSE; - focus->taskpad_focused = FALSE; - - g_object_set_data (G_OBJECT (control), "focus_data", focus); -} - -void -calendar_control_deactivate (BonoboControl *control, GnomeCalendar *gcal) -{ - FocusData *focus; - BonoboUIComponent *uic; - - uic = bonobo_control_get_ui_component (control); - g_return_if_fail (uic != NULL); - - e_menu_activate((EMenu *)gnome_calendar_get_calendar_menu (gcal), uic, 0); - e_menu_activate((EMenu *)gnome_calendar_get_taskpad_menu (gcal), uic, 0); - - gnome_calendar_set_ui_component (gcal, NULL); - - focus = g_object_get_data (G_OBJECT (control), "focus_data"); - g_return_if_fail (focus != NULL); - - g_object_set_data (G_OBJECT (control), "focus_data", NULL); - g_free (focus); - - gnome_calendar_discard_view_menus (gcal); - - g_signal_handlers_disconnect_matched (gcal, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, control); - - bonobo_ui_component_rm (uic, "/", NULL); - bonobo_ui_component_unset_container (uic, NULL); -} |