static void
update_offline_menu_item (EShellWindow *shell_window,
                          EShellLineStatus line_status)
{
    BonoboUIComponent *ui_component;

    ui_component = e_shell_window_peek_bonobo_ui_component (shell_window);

    switch (line_status) {
    case E_SHELL_LINE_STATUS_OFFLINE:
    case E_SHELL_LINE_STATUS_FORCED_OFFLINE:
        bonobo_ui_component_set_prop (ui_component,
                                      "/menu/File/ToggleOffline",
                                      "label", _("_Work Online"), NULL);
        bonobo_ui_component_set_prop (ui_component,
                                      "/menu/File/ToggleOffline",
                                      "verb", "WorkOnline", NULL);
        bonobo_ui_component_set_prop (ui_component,
                                      "/commands/ToggleOffline",
                                      "sensitive", "1", NULL);
        e_pixmaps_update (ui_component, online_pixmaps);
        break;

    case E_SHELL_LINE_STATUS_ONLINE:
        bonobo_ui_component_set_prop (ui_component,
                                      "/menu/File/ToggleOffline",
                                      "label", _("_Work Offline"), NULL);
        bonobo_ui_component_set_prop (ui_component,
                                      "/menu/File/ToggleOffline",
                                      "verb", "WorkOffline", NULL);
        bonobo_ui_component_set_prop (ui_component,
                                      "/commands/ToggleOffline",
                                      "sensitive", "1", NULL);
        e_pixmaps_update (ui_component, offline_pixmaps);
        break;

    case E_SHELL_LINE_STATUS_GOING_OFFLINE:
        bonobo_ui_component_set_prop (ui_component,
                                      "/menu/File/ToggleOffline",
                                      "label", _("Work Offline"), NULL);
        bonobo_ui_component_set_prop (ui_component,
                                      "/menu/File/ToggleOffline",
                                      "verb", "WorkOffline", NULL);
        bonobo_ui_component_set_prop (ui_component,
                                      "/commands/ToggleOffline",
                                      "sensitive", "0", NULL);
        e_pixmaps_update (ui_component, offline_pixmaps);
        break;

    default:
        g_return_if_reached();
    }
}
Ejemplo n.º 2
0
static void
control_activate (BonoboControl *control,
		  BonoboUIComponent *ui_component,
		  EYank *yank)
{
	Bonobo_UIContainer container;
	gchar *filename;

	container = bonobo_control_get_remote_ui_container (control);
	bonobo_ui_component_set_container (ui_component, container);
	bonobo_object_release_unref (container, NULL);

	bonobo_ui_component_add_verb_list_with_data (ui_component, verbs, yank);
	bonobo_ui_component_freeze (ui_component, NULL);

	bonobo_ui_util_set_ui (ui_component, EVOLUTION_DATADIR,
			       "evolution-yank.xml", "evolution-yank");
   	e_pixmaps_update (ui_component, pixmaps);  

	bonobo_ui_component_thaw (ui_component, NULL);
  filename = g_concat_dir_and_file (yank->priv->uri + 7, YANK_FILENAME);
	sp = &(yank->priv->sp);
	printf("control_activate : sp %x\n", sp);
	load_file(filename);
	g_free(filename);

}
Ejemplo n.º 3
0
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);

	e_pixmaps_update (uic, pixmaps);

	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
e_shell_window_commands_setup (EShellWindow *shell_window)
{
    BonoboUIComponent *uic;
    EShell *shell;

    g_return_if_fail (shell_window != NULL);
    g_return_if_fail (E_IS_SHELL_WINDOW (shell_window));

    uic = e_shell_window_peek_bonobo_ui_component (shell_window);
    shell = e_shell_window_peek_shell (shell_window);

    bonobo_ui_component_add_verb_list_with_data (uic, file_verbs, shell_window);
    bonobo_ui_component_add_verb_list_with_data (uic, new_verbs, shell_window);
    bonobo_ui_component_add_verb_list_with_data (uic, actions_verbs, shell_window);
    bonobo_ui_component_add_verb_list_with_data (uic, tools_verbs, shell_window);
    bonobo_ui_component_add_verb_list_with_data (uic, help_verbs, shell_window);
    bonobo_ui_component_add_listener (uic, "ViewButtonsIconText",
                                      (BonoboUIListenerFn)view_buttons_icontext_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewButtonsIcon",
                                      (BonoboUIListenerFn)view_buttons_icon_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewButtonsText",
                                      (BonoboUIListenerFn)view_buttons_text_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewButtonsToolbar",
                                      (BonoboUIListenerFn)view_buttons_toolbar_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewButtonsHide",
                                      (BonoboUIListenerFn)view_buttons_hide_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewToolbar",
                                      (BonoboUIListenerFn)view_toolbar_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewStatusBar",
                                      (BonoboUIListenerFn)view_statusbar_item_toggled_handler,
                                      (gpointer)shell_window);
    bonobo_ui_component_add_listener (uic, "ViewSideBar",
                                      (BonoboUIListenerFn)view_sidebar_item_toggled_handler,
                                      (gpointer)shell_window);

    e_pixmaps_update (uic, pixmaps);

    /* Set up the work online / work offline menu item.  */
    g_signal_connect_object (shell, "line_status_changed",
                             G_CALLBACK (shell_line_status_changed_cb), shell_window, 0);
    update_offline_menu_item (shell_window, e_shell_get_line_status (shell));
}