2002-11-27 Not Zed <NotZed@Ximian.com>
* main.c (show_development_warning): changed to use a gtkdialog
instead of a gnome one.
(warning_dialog_response_callback): clicked->response.
* e-shell-folder-selection-dialog.c: Include gtk/gtkstock.h
* e-shell-folder-creation-dialog.c: include gnome-dialog.h
(dialog_response_cb): gtk_entry_get_text now returns const. Dont
free result.
* e-setup.c: include gnome-messagebox.h
* *.c: (re)run fix.sh over all, for e_notice changes & pick up
some deprecated functions.
* e-shell-shared-folder-picker-dialog.c
(shared_folder_discovery_callback): reformat e_notice call for
script.
* e-shell-offline-sync.c
(impl_SyncFolderProgressListener_reportFailure): Fix e_notice
call, we weren't passing type in.
* e-shell-folder-commands.c (xfer_result_callback): changed around
slightly to save some processing & allow a script to run.
(e_shell_command_rename_folder): reformat e_notice call to help script.
Include gnome-messagebox.h
svn path=/trunk/; revision=18977
* main.c (upgrade_from_1_0_if_needed): Disabled for now.
* e-shell-startup-wizard.c: Removed member config_listener from
struct SWData.
(e_shell_startup_wizard_create): Updated accordingly, just use
GConf, checking the /apps/evolution/mail/account-list key.
(finish_func): Use GConf.
* e-shell-config-default-folders.c: Removed member config_listener
in struct EvolutionDefaultFolderConfig.
(e_shell_config_default_folders_create_widget): Do not initialize
here. GConfified the paths.
(config_control_destroy_notify): No unref of the config_listener
anymore.
(config_control_apply_cb): Use GConf.
(setup_folder_selector): Likewise.
* e-shell-config-autocompletion.c: Removed member config_listener
from EvolutionAutocompletionConfig.
(config_control_destroy_notify): Do not unref.
(config_control_apply_callback): Use a GConfClient.
* e-folder-list.c (e_folder_list_init): Add missing cast.
* main.c (show_development_warning): Use GConf.
* e-setup.c (e_setup_check_config): Removed arg @listener.
GConfified.
* e-shell-view.c (e_shell_view_save_defaults): New.
(e_shell_view_save_settings): Removed.
(e_shell_view_load_settings): Removed.
(setup_defaults): New helper function.
(e_shell_view_construct): New arg @uri.
(e_shell_view_new): New arg @uri.
* e-shell.c: Removed member config_listener in struct
EShellPrivate.
(impl_dispose): Do not unref.
(init): Do not initialize.
(get_config_start_offline): New helper function.
(e_shell_construct): Use this to get the startup mode in case
E_SHELL_STARTUP_LINE_MODE_CONFIG.
(save_misc_settings): Changed to use GConfClient instead of
EConfigListener.
(e_shell_create_view_from_settings): Removed.
(e_shell_restore_from_settings): Removed.
(e_shell_get_config_listener): Removed.
(e_shell_disconnect_db): Removed.
(parse_default_uri): Use GConf.
* main.c (idle_cb): Simplified the logic here. Always assume that
the view will be created with the default folder open by just
using e_shell_create_view().
svn path=/trunk/; revision=18844
* e-shell-view.c (init): Ref/sink the GtkTooltips.
* e-uri-schema-registry.c (schema_handler_free): g_object_unref()
on the component instead of bonobo_object_unref().
svn path=/trunk/; revision=18765
* *.c, *.h: Changed all gtk_object_refs()/gtk_object_unrefs() into
g_object_refs()/g_object_unrefs() and all gtk_signal_connect_*()
into g_signal_connect_*(). [Except for some case where we have
gtk_signal_connect_full() or gtk_signal_connect_while_alive()
calls that cannot be trivially ported to use the g_signal_*
functions, we'll have to fix those later.]
* e-splash.c (impl_finalize): Finalize implementation, copied over
from impl_destroy.
(impl_destroy): Removed.
(class_init): Override finalize, not destroy.
* e-activity-handler.c: Ported from GtkObject to GObject.
* evolution-storage.c: Likewise.
* e-corba-shortcuts.c: Likewise.
* evolution-session.h: Likewise.
* evolution-config-control.c: Likewise.
* evolution-shell-component-dnd.c: Likewise.
* evolution-shell-component.c: Likewise.
* evolution-shell-view.c: Likewise.
* evolution-storage-set-view.c: Likewise.
* evolution-wizard.c: Likewise.
svn path=/trunk/; revision=18513
* GNOME_Evolution_Shell.server.in: Renamed from
GNOME_Evolution_Shell.oaf.in.
* Makefile.am: Port from OAF to bonobo-activation.
(INCLUDES): Define SYSCONFDIR, DATADIR, LIBDIR.
* main.c (main): Use gnome_program_init().
* e-corba-storage-registry.c (e_corba_storage_registry_new):
g_object_new(), not gtk_type_new().
(impl_finalize): New, ported over from destroy.
(destroy): Removed.
(class_init): Install finalize handler, not destroy handler, since
we are not a GtkObject anymore.
* e-corba-storage.c (e_corba_storage_new): g_object_new(), not
gtk_type_new().
* e-shell.c (class_init): Override finalize, not destroy.
(impl_finalize): Finalize implementation, basically the old
destroy renamed.
(e_shell_new): g_object_new(), not gtk_type_new().
(class_init): Use e_shell_marshal_NONE__INT for
line_status_changed instead of using an ENUM.
(e_shell_construct): Use g_signal_connect_object() instead of
gtk_signal_connect_while_alive().
* e-setup.c (e_setup): Do not unref local_folder if NULL.
* e-folder.c (init): Make not floating.
(e_folder_construct): No need to make it floating here anymore.
* e-shell.c (impl_Shell_selectUserFolder): For now don't set
dialog parent from xid.
* main.c (no_views_left_cb): Add missing GTK_SIGNAL_FUNC() cast.
(new_view_created_callback): Likewise.
(warning_dialog_clicked_callback): Update to use the
EConfigListener from the shell instead of bonobo-conf.
(show_development_warning): Likewise.
(upgrade_from_1_0_if_needed): BONOBO_EX_ID -> BONOBO_EX_REPOID.
(idle_cb): Use bonobo-activation and BONOBO_EX_REPOID().
(main): Cleaned up the various things that are unneeded in GNOME
2.
(upgrade_from_1_0_if_needed): Use EConfigListener.
* evolution-storage-set-view.h, evolution-storage-set-view.c:
BonoboXObjectified.
* e-storage.c (class_init): GLIB2-ified and made to use
e-shell-marshal.h.
(ES_CLASS): Use GTK_OBJECT_GET_CLASS().
(e_storage_new_folder): Added missing GTK_SIGNAL_FUNC() prototype.
* e-storage-set.c (class_init): GLIB2-ified and made to use
e-shell-marshal.h.
* e-storage-set-view.c (popup_folder_menu): For now, do not add
the pop-up since we lack bonobo_ui_container_get_win() and I am
not sure how to work around it.
(popup_folder_menu): Pass self as the for_widget arg to
gnome_popup_menu_do_popup_modal().
(class_init): GLIB2-ified, and got to use e-shell-marshal.h.
(marshal_NONE__GDKDRAGCONTEXT_STRING_STRING_STRING): Removed.
(impl_tree_drag_data_get): Don't set the selection for now -- we
have to fix the CORBA target stuff to match GTK 2.
(e_storage_set_view_construct): Pass NULL as the opt_ev arg to
bonobo_ui_component_set_container().
* e-splash.c: #include <libgnomecanvas/gnome-canvas-pixbuf.h>
instead of <gdk-pixbuf/gnome-canvas-pixbuf.h>.
(e_splash_new): Pass NULL as the error arg to
gdk_pixbuf_new_from_file().
* e-shortcuts.c (class_init): GLIB2-ified. Also use the
e-shell-marshal marshallers.
(e_shortcuts_new_view): Add missing GTK_SIGNAL_FUNC() cast.
* e-shortcuts-view.c: Use GTK_STOCK_* stuff instead of
GNOME_STOCK_* stuff.
(pop_up_right_click_menu_for_group): Pass self as the for_widget
arg to gnome_popup_menu_do_popup_modal().
(pop_up_right_click_menu_for_shortcut): Likewise.
(class_init): GLIB2-ified.
* e-shell.c: Do not #include <gal/util/e-unicode-i18n.h> or
#include <libgnome/gnome-defs.h>.
(set_interactive): Use BONOBO_EX_REPOID().
(setup_local_storage): Use _() not U_().
(destroy): Use gtk_widget_destroy() instead of
gtk_object_destroy() on priv->settings_dialog.
(class_init): GLIB2-ized.
(init): Initialize config_listener member.
(get_icon_path_for_component_info): Port to bonobo-activation from
OAF.
(setup_components): Likewise.
(destroy): Likewise.
(e_shell_construct): Use e_setup_check_config(), not
e_setup_check_db (). Use the e_config_listener instead of
bonobo-conf.
(save_settings_for_views): Likewise.
(save_misc_settings): Likewise.
(e_shell_restore_from_settings): Likewise.
(parse_default_uri): Likewise.
(e_shell_component_maybe_crashed): Pass NULL for opt_ev arg to
bonobo_unkown_ping()
(e_shell_component_maybe_crashed): Use
bonobo_engine_deregister_dead_components() instead of
bonobo_window_deregister_component_by_ref() which is no more.
(e_shell_send_receive): BONOBO_EX_REPOID() instead of
BONOBO_EX_ID().
(e_shell_get_config_listener): Return the config_listener.
* e-shell-view.c (find_inbox_in_storage): Use _() instead of U_().
(load_images): Pass NULL as the error arg to
gdk_pixbuf_new_from_file().
(load_images): Likewise.
(find_inbox_in_storage): Work around the lack of
g_utf8_strcasecmp() in glib-2.0.
(class_init): GLIB2-ified. Also, use the marshallers in
e-shell-marshal.h.
(pop_up_folder_bar): Use gtk_window_move()/gtk_widget_show()
instead gtk_widget_popup().
(unmerge_on_error): Work around the death of
bonobo_ui_component_get_win() and
bonobo_window_deregister_component_by_ref().
(e_shell_view_construct): Pass NULL as the uic arg to
bonobo_window_construct(). Add missing GTK_SIGNAL_FUNC() cast.
Match the new BonoboWindow behavior wrt the UIContainer and the
new opt_ev args.
(display_uri): Use bonobo_ui_engine_freeze() and
bonobo_ui_engine_thaw() since bonobo_window_freeze() and
bonobo_window_thaw() got axed [sigh].
(e_shell_view_save_settings): Use EConfigListener.
(e_shell_view_load_settings): Likewise.
(get_view_for_uri): Use bonobo_widget_new_control_from_objref()
instead of e_bonobo_widget_new_control_from_objref().
* e-shell-view-menu.c (command_help_faq): Pass NULL for the error
arg to gnome_url_show().
(command_about_box): Use GtkDialog instead of a GtkWindow of a
type GTK_WINDOW_DIALOG [which does not exist anymore].
(command_xml_dump): Removed.
(menu_do_misc): Do not add the corresponding verb.
* e-shell-user-creatable-items-handler.c (execute_verb): Use
BONOBO_EX_REPOID().
* e-shell-startup-wizard.c: Remove id member from SWData. Replace
member db with config_listener.
(e_shell_startup_wizard_create): Initialize config_listener.
(make_mail_dialog_pages): Do not set the listener id here.
(druid_event_notify_cb): Pass FALSE as the help_sensitive arg to
gnome_druid_set_buttons_sensitive().
(e_shell_startup_wizard_create): Likewise.
(make_mail_dialog_pages): Use bonobo-activation instead of OAF.
(get_intelligent_importers): Likewise.
(prepare_importer_page): Likewise.
(start_importers): Do nothing here for now.
(finish_func): Constify local variable displayname.
(finish_func): Updated to use the config_listener instead of the
bono-conf db.
(prepare_importer_page): Do not actually run the importer yet.
(e_shell_startup_wizard_create): Pass NULL as the domain arg to
glade_xml_new(). Use the config_listener.
* e-shell-shared-folder-picker-dialog.c (user_clicked):
BONOBO_EX_REPOID() instead of BONOBO_EX_ID().
(setup_name_selector): Likewise.
(setup_name_selector): Use bonobo-activation.
(show_dialog): Pass NULL as the domain arg to glade_xml_new().
(setup_name_selector): Add a missing GTK_SIGNAL_FUNC() cast.
* e-shell-settings-dialog.c: #include
<bonobo-activation/bonobo-activation.h>. Use
Bonobo_ActivationProperty instead of OAF_Property.
(set_dialog_size): Use gtk_style_get_font() to get the font from
the widget->style.
(load_pages): Converted to use bonobo-activation instead of OAF.
Pass NULL as the error arg to gdk_pixbuf_new_from_file().
* e-shell-offline-sync.c (sync_folder): BONOBO_EX_REPOID(), not
BONOBO_EX_ID().
(e_shell_offline_sync_all_folders): For now, avoid doing anything
[see changes to e-shell-config-offline.c below].
(setup_progress_listener): #if 0 for now.
(setup_dialog): Likewise.
(sync_folder): Likewise.
(cleanup): Likewise.
(progress_listener_servant_free): Likewise.
(progress_listener_servant_new): Likewise.
(impl_SyncFolderProgressListener_updateProgress): Likewise.
(impl_SyncFolderProgressListener_reportSuccess): Likewise.
(impl_SyncFolderProgressListener_reportFailure): Likewise.
(progress_dialog_close_callback): Likewise.
(progress_dialog_clicked_callback): Likewise.
* e-shell-offline-handler.c (prepare_for_offline): Use
BONOBO_EX_REPOID().
(pop_up_confirmation_dialog): Pass NULL as the domain arg to
glade_xml_new().
(class_init): GLIB2-ified.
* Makefile.am: Do not compile e-shell-importer.c,
e-shell-importer.h for now.
* e-shell-folder-title-bar.c (get_max_clipped_label_width): Use
gtk_style_get_font() to retrieve the font.
(class_init): GLIB2-ified.
(e_shell_folder_title_bar_construct): Get {x,y}thickness from
widget->style, not from widget->style->klass.
* e-shell-folder-selection-dialog.c: #include <string.h>,
<gtk/gtklabel.h> and <gtk/gtksignal.h>.
(class_init): GLIB2-ified.
* e-shell-folder-creation-dialog.c: No <libgnome/gnome-defs.h>,
add some GTK includes.
(e_shell_show_folder_creation_dialog): Pass NULL as the domain arg
to glade_xml_new(). Added missing GTK_SIGNAL_FUNC() cast.
* e-shell-folder-commands.c: Do not #include
<libgnomeui/gnome-stock.h> and #include
<bonobo-conf/Bonobo_Config.h>.
* e-shell-config-default-folders.c: Replace member db in
EvolutionDefaultFolderConfig with config_listener.
(e_shell_config_default_folders_create_widget): Init here.
(config_control_destroy_cb): Unref here.
(config_control_apply_cb): Use EConfigListener instead of
BonoboConf.
(setup_folder_selector): Likewise.
(e_shell_config_default_folders_create_widget): Pass NULL as the
domain arg to glade_xml_new().
* e-shell-config-offline.c (config_control_apply_callback): For
now, do not change the configuration. [Needs to be ported to
EConfigListener or something, but we were storing a sequence using
typecodes here and there is no trivial way to do that right now.]
(init_storage_set_view_status_from_config): Likewise, do not
retrieve the configuration here.
svn path=/trunk/; revision=18510
* e-shell-view (storage_set_view_box_button_release_event_cb): Pop
down the popup folder bar if it's a toplevel node.
(folder_bar_popup_map_callback): Connect to the "folder_opened"
signal on the storage_set_view.
[#32032]
* e-folder-list.c (create_display_string): Don't turn the string
from UTF-8 to GTK.
svn path=/trunk/; revision=18437
* e-shell.c (setup_local_storage): Set the is_stock flag to TRUE
for the summary folder.
* e-shell-view.c (setup_verb_sensitivity_for_folder): Don't allow
folder operations on pseudo-folders that have a NULL physical_uri.
* e-corba-storage.c (async_remove_folder): Make sure the folder
has a physical URI. [#30950]
* e-shell-shared-folder-picker-dialog.c
(setup_server_option_menu): Use
e_utf8_gtk_menu_item_new_with_label() to create the option menu
items from the storage's UTF-8 name. [#31564]
svn path=/trunk/; revision=18419
current_folder_type is NULL, just return NULL instead of passing
it to e_folder_type_registry_get_handler_for_type() [and generate
a warning]. [#21122]
svn path=/trunk/; revision=17974
* e-shell.c (create_view): Pass TRUE as @queue to
e_shell_view_display_uri().
* e-shell-view-menu.c (command_activate_view): Pass TRUE as @queue
to e_shell_view_display_uri().
(goto_folder_dialog_folder_selected_cb): Likewise.
* e-shell-shared-folder-picker-dialog.c
(shared_folder_discovery_listener_callback): Pass TRUE as @queue
to e_shell_view_display_uri().
* e-shell-view.c
(display_uri): New arg @queue. If true, it allows the
delayed_selection mechanism to happen transparently (returning
TRUE, while before it used to return FALSE). Otherwise, refuse to
queue the URI and return FALSE.
(e_shell_view_display_uri): New arg @queue; pass it to
display_uri().
(handle_current_folder_removed): Pass TRUE as @queue to
e_shell_view_display_uri().
(set_folder_timeout): Likewise.
(switch_on_folder_tree_click): Likewise.
(activate_shortcut_cb): Likewise.
(corba_interface_change_current_view_cb): Likewise.
(socket_destroy_cb): Likewise.
(socket_destroy_cb): Likewise.
(e_shell_view_load_settings): Here, try displaying the old URI
with @queue set to FALSE; if this fails, display the default URI
and then invoke display again using @queue = TRUE so it gets
queued up. This should fix#27721.
svn path=/trunk/; revision=17972
* evolution-test-component.c
(storage_show_folder_properties_callback): New callback for the
show_folder_properties signal.
(setup_custom_storage): Add two property items, and connect the
callback to the signal.
* e-storage-set-view.c: Renamed private member container into
ui_container; new member ui_component.
(init): Initialize ui_component to NULL.
(impl_destroy): Unref if not NULL.
(e_storage_set_view_construct): If @ui_container is not NULL,
weakref it and create a new ui_component that uses it as its
container.
(ui_container_destroy_notify): New, weakref destroy callback for
priv->ui_container.
(remove_property_items): New helper function.
(setup_folder_properties_items_if_corba_storage_clicked): New
helper function.
(folder_property_item_verb_callback): New callback for the verbs
associated to the folder property items.
(popup_folder_menu): Set up the per-storage folder property items
using setup_folder_properties_items_if_corba_storage_clicked() and
remove them with remove_property_items() after the menu has been
popped down. Don't invoke populate_folder_context_menu if there
is no handler for this node [this avoids a spurious warning].
* e-corba-storage.c (e_corba_storage_show_folder_properties): New.
(e_corba_storage_get_folder_property_items): New.
(e_corba_storage_free_property_items_list): New.
* evolution-storage.c: New private member folder_property_items.
(init): Init to NULL.
(destroy): Free.
(impl_showFolderProperties): New, implementation for the
Storage::showFolderProperties CORBA method.
(class_init): Set up the "show_folder_properties" signal here.
(impl_Storage__get_propertyItems): New, getter for the
Storage::propertyItems property.
(corba_class_init): Install the new methods.
(evolution_storage_add_property_item): New function to add
property items to the storage.
* evolution-storage.h: New signal show_folder_properties.
* e-storage-set.c (e_storage_set_create_new_view): Renamed from
e_storage_set_new_view().
* Evolution-Storage.idl: Added attribute folderPropertyItems and
method ::showFolderProperties.
svn path=/trunk/; revision=17714
* e-shortcuts-view-model.c (get_icon_for_item): Get the
EStorageSet from the shortcut's shell since there is no
e_shortcuts_get_storage_set() anymore.
* e-shortcuts-view.c (get_shortcut_info): Likewise.
(impl_shortcut_drag_motion): Likewise.
(impl_shortcut_drag_data_received): Likewise.
* e-shell.c (e_shell_construct): e_shortcuts_new_from_file(), not
e_shortcuts_new() here.
* e-shortcuts.c: Removed members storage_set and
folder_type_registy in EShortcutsPrivate. New member shell.
(init): Init to NULL.
(e_shortcuts_construct): Removed arg @storage_set and
@folder_type_registry, new arg @shell.
(e_shortcuts_new): Removed.
(e_shortcuts_new_from_file): New.
(impl_destroy): Renamed from destroy().
(e_shortcuts_get_storage_set): Removed.
(e_shortcuts_get_shell): New.
(load_shortcuts): Accept any URI that can be parsed (by
e_shell_parse_uri).
* e-shell.c (e_shell_parse_uri): New.
* e-shell-view.c (evolution_uri_for_default_uri): New.
(display_uri): Use it to determine the evolution: uri given a
default: uri.
* e-shell.c (impl_Shell_handleURI): Pass it over to
e_shell_create_view_from_uri_and_settings() even if it's an
E_SHELL_DEFAULTURI_PREFIX.
(handle_default_uri): Removed.
svn path=/trunk/; revision=17497
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_set_icon):
Allow a NULL icon [remove the precondition].
* e-shell-view.c (update_folder_title_bar): Only unref the
folder_icon if not NULL.
svn path=/trunk/; revision=17426
* e-shell-folder-title-bar.c: Remove some `#if 0'ed broken code.
New members title_icon and title_button_icon in struct
EShellFolderTitleBarPrivate. Remove member icon_widget. New
static global variable empty_pixbuf.
(init): Initialize these new members to NULL. Don't initialize
icon_widget anymore since it's gone.
(e_shell_folder_title_bar_construct): Create the title_button_icon
and pack it into the title_button_hbox. Also, create the
title_icon and pack that one as well. Retouched some of the
hardcoded padding values.
(size_allocate_icon): Rewritten to use the title_icon and return
the allocated space like size_allocate_navigation_buttons.
(e_shell_folder_title_bar_set_icon): Remove bogus const from the
@icon arg. Ref the pixbuf, and update the two pixmap widgets from
it. If @icon is NULL, use the empty_pixbuf.
(impl_destroy): Renamed from destroy().
(realize): Removed.
(unrealize): Removed.
(impl_size_allocate): Renamed from size_allocate().
(class_init): Call it.
(add_icon_widget): Removed.
(new_empty_pixbuf): New.
(new_empty_pixmap_widget): New.
(size_allocate_navigation_buttons_and_title_icon): Renamed from
size_allocate_navigation_buttons; set up the title_icon too.
* e-shell-view.c (update_folder_title_bar): Unref the folder_icon
after using it.
* e-icon-factory.c (e_icon_factory_get_icon): Ref the returned pixbuf.
svn path=/trunk/; revision=17419
* e-shortcuts-view.c (toggle_large_icons_cb): Change the group
icon size using e_shortcuts_set_group_uses_small_icons() instead
of changing it on the widget directly.
(toggle_small_icons_cb): Likewise.
(group_change_icon_size_callback): New, callback for the
"group_change_icon_size" signal on the EShortcuts object.
(e_shortcuts_view_construct): Connect. Also, initialize the icon
sizes in the icon bars from the EShortcuts object.
* e-shell-view.c (e_shell_view_load_settings): Don't set the
shortcut group icon modes here anymore.
* e-shortcuts.c: New member use_small_icons in struct
ShortcutGroup.
(shortcut_group_new): Init to FALSE.
(e_shortcuts_set_group_uses_small_icons): New.
(e_shortcuts_get_group_uses_small_icons): New.
(class_init): Install "group_change_icon_size" signal.
(save_shortcuts): Save the icon size per-group
here, i.e. <group title="foo" icon_size="small">.
(load_shortcuts): Set the icon size from the group's definition
here.
* e-shortcuts.h: New signal "group_change_icon_size" in
EShortcutsClass.
svn path=/trunk/; revision=17386
* e-shell.c (e_shell_prepare_for_quit): Remove debugging message.
* e-shell-view.c (setup_verb_sensitivity_for_folder): Set
sensitivity of /commands/AddFolderToShortcutBar,
/commands/OpenFolder and /commands/OpenFolderInNewWindow too,
depending on whether the node that was right-clicked can be opened
as a folder.
* e-storage-set-view.c (popup_folder_menu): Pop up the right-click
menu even if we are not clicking on a folder with a proper
handler.
svn path=/trunk/; revision=17337
2002-04-18 JP Rosevear <jpr@ximian.com>
* evolution-shell-view.c (impl_ShellView_show_settings): emit
show_settings signal
(corba_class_init): assign epv method
(class_init): add signal
* evolution-shell-view.h: new signal
* e-shell.c (init): init settings_dialog private member
(settings_dialog_destroy_cb): reset dialog pointer
(e_shell_show_settings): show the settings dialog, bring it to the
front if one already exists for this shell
* e-shell.h: new proto
* e-shell-view.c (corba_interface_show_settings): implement
showSettings method
(setup_corba_interface): listen for show_settings signal
(e_shell_view_show_settings): show the settings dialog
* e-shell-view.h: new proto
* e-shell-view-menu.c (command_settings): call
e_shell_view_show_settings instead
* Evolution-ShellView.idl: add showSettings method
svn path=/trunk/; revision=16510
* e-setup.c (e_setup_check_db): New. Check that things that need
to be in the config db are. Right now it sets up the default
folders.
* e-shell.c (e_shell_construct): Call e_setup_check_db after
getting the config db.
* e-shell-constants.h: Add E_SUMMARY_URI, E_LOCAL_INBOX_URI, etc.
* e-shortcuts.c (e_shortcuts_add_default_group): Use
E_LOCAL_INBOX_URI, etc.
* e-shell-view.c: #define FALLBACK_URI to E_SUMMARY_URI
svn path=/trunk/; revision=16405
* Evolution-ShellComponent.idl (createView): Add a "view_info"
argument.
* e-shell-view.c (get_view_for_uri): if the URI contains a '#',
split it into a URI and a "view_info" at that point. (Otherwise,
pass "" for the view_info to ShellComponent_createView.) This can
be used for things like specifying day/month/week view to the
calendar.
* e-shell.c (create_view): Ignore e_shell_view_display_uri's
return code: it's possible/likely that the requested URL is remote
and hasn't been filled in yet.
(impl_Shell_handleURI): Don't use Shell_createNewView directly,
call e_shell_create_view_from_uri_and_settings. (For the above fix
and some others.)
* evolution-shell-component.c (impl_createView): Add view_info.
* evolution-shell-component-client.c
(evolution_shell_component_client_create_view): Add view_info.
* evolution-test-component.c (create_view_fn): add view_data.
* e-corba-storage-registry.c
(impl_StorageRegistry_getFolderByUri): kill a warning
svn path=/trunk/; revision=16397
prefs.
* e-shell.c (impl_Shell_createNewView): Use
e_shell_create_view_from_uri_and_settings to create the new view
based on saved view 0 instead of always using the initial
evolution defaults.
(e_shell_create_view_from_uri_and_settings): Renamed and
simplified; the template_view argument was useless and
settings_found would always be set to TRUE in the context it was
being used it.
(e_shell_restore_from_settings): Simplify for
e_shell_create_view_from_uri_and_settings changes.
* e-shell-view.c (e_shell_view_load_settings): Only load the
DisplayedURI if the view isn't already displaying a URI. Also,
pass an &ev to the first bonobo_config_get_long so we can tell if
it failed and bail out.
* e-shell-view.h: Remove a prototype for a non-existent function
(e_shell_view_remove_control_for_uri).
* main.c (idle_cb): Add some comments here and remove some dead
code.
svn path=/trunk/; revision=16389
* e-shell.c (e_shell_construct): Register a "working" folder type
with the hourglass icon. (Would eventually like an animated gif,
when ETable supports that.)
* e-storage.c (e_storage_has_subfolders): Use "working" rather
than "noselect" as the folder type.
* e-shell-view.c (get_view_for_uri): Simplify a bit.
svn path=/trunk/; revision=16244
* e-storage-set-view.[ch]: Note that e_storage_set_view_new
shouldn't be used directly.
* e-shell-view.c (setup_storage_set_subwindow): Use
e_storage_set_new_view instead of e_storage_set_view_new.
* evolution-storage-set-view-factory.c
(evolution_storage_set_view_factory_new_view): Likewise.
svn path=/trunk/; revision=15993
* e-folder-tree.c (e_folder_tree_add): Allow the caller to "add" a
root folder, if the existing root folder has no children.
(e_folder_tree_new): Use e_folder_tree_add to create the root
folder, since it can do that now.
* e-storage.c: (e_storage_construct): Replace toplevel_node_uri
and toplevel_node_type args with root_folder.
(e_storage_new): Likewise.
(*): Remove toplevel uri/type stuff everywhere. Also remove
display_name since now we will use the name of the root folder for
that.
* evolution-storage.c: Remove toplevel uri/type stuff everywhere.
* e-local-storage.c (construct): Pass root_folder to
e_storage_construct instead of toplevel uri/type.
Also, evolution_storage_new no longer takes toplevel uri/type.
* e-corba-storage.c (e_corba_storage_construct): Out with toplevel
uri/type, in with root_folder.
(e_corba_storage_new): Remove toplevel uri/type.
* e-shell.c (setup_local_storage): Create a top-level folder of
type "summary" for the Summary storage.
* e-storage-set-view.c (set_e_shortcut_selection): Remove
special-case for storages.
(etree_icon_at): Remove special case for figuring out storage
icons (but leave the code that makes the icon disappear once the
storage is opened).
(etree_value_at): Remove special case for storage names. (But
still make storages always bold.) Remove unused special-case code
for Summary.
* e-shortcuts.c (load_shortcuts): Remove special case for
storages, reorganize a bit.
* e-shortcuts-view.c (get_shortcut_info): Remove special case for
storages.
* e-shell-view.c (update_for_current_uri): Remove special case for
storages.
(socket_destroy_cb): Likewise.
(get_type_for_storage): No longer needed.
(get_view_for_uri): No longer needs to special-case storages (but
add a special case for folders of type "noselect", to make them
unselectable like storages-without-toplevel-views used to be).
* e-storage-set.c (get_storage_for_path): If passed "/foo", return
"/" as subpath_return so e_storage_set_get_folder will DTRT in the
NWO.
* Evolution-Storage.idl (addStorage): Remove the toplevel_node_uri
and toplevel_node_type arguments.
* e-corba-storage-registry.c (impl_StorageRegistry_addStorage):
Likewise.
svn path=/trunk/; revision=15965
2002-03-04 Ettore Perazzoli <ettore@ximian.com>
[Fix#20234, Deleting Folder gratuitiously causes /local to open.]
* e-shell-view.c (find_inbox_in_storage): New helper function to
heuristically find an Inbox folder.
(handle_current_folder_removed): New function to handle the
removal of the currently displayed folder in a slightly smarter
way than before. It tries to display the parent folder of the
folder that got deleted and, if not possible, the Inbox in the
same storage. If neither of this is possible, it displays the
default local Inbox. [It still doesn't handle the case where you
have no Inbox gracefully, but that can come later.]
(storage_set_removed_folder_callback): Call
`handle_current_folder_removed'.
2002-03-04 Ettore Perazzoli <ettore@ximian.com>
[Fix#20237, Shell silently drops xfer_folder errors.]
* e-shell-folder-commands.c (xfer_result_callback): Display an
error message if the operation failed.
svn path=/trunk/; revision=15898
on exit. What happened is that the signal would be disconnected
twice, once by cleanup_delayed_selection() and once by the
while_alive handler.]
* e-shell-view.c (destroy): Call cleanup_delayed_selection() here.
(e_shell_view_display_uri): Use gtk_signal_connect_full(), not
e_gtk_signal_connect_full_while_alive().
svn path=/trunk/; revision=15848
* e-shell-view.c (remove_uri_from_history): New helper function to
remove all the matching URIs from the history.
(history_uri_matching_func): Compare function for using
e_history_remove_matching.
(storage_set_removed_folder_callback): Call
`remove_uri_from_history()'.
* e-history.c (e_history_remove_matching): New.
svn path=/trunk/; revision=15803
* e-shell-view.c (update_navigation_buttons): New.
(display_uri): Call it before returning so the navigation buttons
always have the right sensitivity.
* e-shell-folder-title-bar.c
(e_shell_folder_title_bar_update_navigation_buttons): New.
(add_navigation_buttons): Remove the "Back" label.
svn path=/trunk/; revision=15799
* e-shell-view.c: New member `history' in `EShellViewPrivate'.
(init): Initialize.
(destroy): Unref.
(e_shell_view_display_uri): Make it a no-op if the URI is the same
as the current one. Also, moved code into `display_uri' and use
it.
(back_clicked_callback): New, callback for the back button on the
folder title bar.
(forward_clicked_callback): Likewise for the forward button.
* e-history.c: New.
* e-history.h: New.
svn path=/trunk/; revision=15798
* e-shell-view.c (e_shell_view_show_folder_bar):
`e_shell_folder_title_bar_set_title_clickable()', not
`e_shell_folder_title_bar_set_clickable()'.
* e-shell-folder-title-bar.c: Rename `button', `button_label' and
`button_arrow' to `title_button', `title_button_label' and
`title_button_arrow'. Renamed `label' to `title_label'. Renamed
`arrow_xpm' to `down_arrow_xpm'. Added `left_arrow.xpm' and
`right_arrow.xpm'.
(class_init): Add the "back_clicked" and "forward_clicked"
signals.
(add_navigation_buttons): New function to add the navigation
buttons to the title bar.
(back_button_clicked_callback): Callback for the back button,
emits "back_clicked".
(forward_button_clicked_callback): Callback for the forward
button, emits "forward_clicked".
(e_shell_folder_title_bar_construct): Call
`add_navigation_buttons()'.
(forward_button_clicked_callback):
(create_arrow_pixmap): Removed.
(create_pixmap_widget_from_xpm): New.
(title_button_box_realize_cb): Removed.
(e_shell_folder_title_bar_construct): Don't connect. Just add the
icon normally using the new `create_pixmap_widget_from_xpm()'.
(e_shell_folder_title_bar_set_title_clickable): Renamed from
`e_shell_folder_title_bar_set_clickable'.
(size_allocate_navigation_buttons): New.
(size_allocate_title_button): Get an @offset.
(size_allocate_label): Get an @offset.
(size_allocate): Allocate the navigation buttons and offset
everything else accordingly.
* e-shell-folder-title-bar.h: New signals "back_clicked",
"forward_clicked".
svn path=/trunk/; revision=15797
* e-shell-view-menu.c (command_open_folder_in_new_window): Don't
show the folder bar and the shortcut bar in the new window.
* e-shell-view.c (activate_shortcut_cb): Don't show the folder bar
and the shortcut bar in the new window.
* e-shell-view.c (e_shell_create_view): Don't flush the GTK events
here.
* e-shell.c (e_shell_construct): New arg @start_online. If true,
invoke `e_shell_go_online()' before returning.
(e_shell_new): New arg @start_online. Pass it to
e_shell_construct().
(init): Default ->line_status to E_SHELL_LINE_STATUS_OFFLINE.
* main.c (main): Add "--offline" and "--online" options.
svn path=/trunk/; revision=15776
done but it needs pretty icons so I am leaving it disabled for now.]
* e-combo-button.c: Remove member `separator' from
`EComboButtonPrivate'. New members `icon', `label'.
(init): There shall be no separator no more. Init `icon' and
`label' to %NULL.
(e_combo_button_construct): Set no relief.
(e_combo_button_new): Don't get a @menu arg anymore.
(e_combo_button_construct): Likewise.
(e_combo_button_set_icon): New.
(e_combo_button_set_label): New.
(e_combo_button_set_menu): New.
(impl_clicked): New, overriding the "clicked" method for
GtkButton.
(class_init): Install.
(impl_button_release_event): Removed.
(class_init): No need to override ::release_event with this
anymore.
(impl_released): New, override for the GtkButton::released method.
(class_init): Install.
* e-shell-user-creatable-items-handler.c: New member `id' in
struct `Component'. New member `icon' in struct `MenuItem'.
(component_free): Free ->id.
(component_new): Renamed from `component_new_from_client'. Get an
@id arg and set ->id accordingly.
(e_shell_user_creatable_items_handler_add_component): New arg @id.
Pass it to `component_new'.
(e_shell_user_creatable_items_handler_setup_menus): New arg
@current_component_id.
(e_shell_user_creatable_items_handler_update_menus): New.
(set_current_component): New helper function.
(get_component_by_id): New helper function.
(add_verbs): Renamed from `add_verbs_to_ui_component()'. Get a
@shell_view instead of a @ui_component. Set the SHELL_VIEW_KEY on
the ui_component of the shell_view to point to the shell_view
itself.
(ensure_menu_items): Set item->icon to NULL.
(free_menu_items): Unref item->icon.
(ensure_menu_xml): Set the icon as well.
(get_default_action_for_view): New helper function.
(find_menu_item_for_verb): New helper function.
(shell_view_view_changed_callback): New callback, set up the label
on the "New" button depending on the current component.
(e_shell_user_creatable_items_handler_attach_menus): New. For
now, do not display the toolbar button yet.
(execute_verb): New helper function, splitting out code from
`verb_fn'.
(verb_fn): Use `execute_verb'.
(combo_button_activate_default_callback): Callback for the
"activate_default" signal on the EComboButton.
(setup_toolbar_button): Connect.
* evolution-shell-component.c: New member `icon' in
`UserCreatableItemType'.
(impl__get_userCreatableItemTypes): Put the ->icon in the
corba_type as well.
(user_creatable_item_type_new): Get a new @icon argument.
(evolution_shell_component_add_user_creatable_item): New arg
@icon.
* Evolution-ShellComponent.idl: New member `icon' in struct
`UserCreatableItemType'.
* evolution-test-component.c (register_component): Pass a NULL
@icon to `evolution_shell_component_add_user_creatable_item()'.
* e-shell-view.c (class_init): Add the signal to the class.
(e_shell_view_display_uri): Emit "view_changed".
(e_shell_view_get_current_component_id): New.
* evolution-shell-component-client.c: New member `id' in
EvolutionShellComponentClientPrivate.
(init): Init to NULL.
(impl_destroy): Free.
(evolution_shell_component_client_new_for_objref): Removed.
(evolution_shell_component_client_construct): New arg @id.
Initialize ->id from it.
(evolution_shell_component_client_get_id): New.
* e-shell-view.h: New signal "view_changed".
* evolution-activity-client.c (create_icon_from_pixbuf): Removed.
(create_corba_animated_icon_from_pixbuf_array): Removed.
(evolution_activity_client_construct): Use
`e_new_corba_animated_icon_from_pixbuf_array()' instead.
svn path=/trunk/; revision=15438
* e-shell-view.c (folder_bar_popup_map_callback): And grab the
keyboard as well.
(popdown_transient_folder_bar): Ungrab the keyboard as well.
(switch_on_folder_tree_click): Likewise.
[Fix#16507, Right Click -> View does nothing.]
* e-shell-view-menu.c: New verb "ActivateView".
(command_activate_view): New, callback for the "ActivateView"
verb.
svn path=/trunk/; revision=14897
2001-10-30 Iain Holmes <iain@ximian.com>
* e-shell-view.c (e_shell_view_load_settings): If the display uri is
NULL, set the view to the default.
svn path=/trunk/; revision=14489
* e-shell-view.c (e_shell_view_construct): Connect to the
"removed_folder" signal with gtk_signal_connect_while_alive() so
we don't crash if the view gets destroyed. Fixes#13285.
svn path=/trunk/; revision=14478
* e-shell-view.c (e_shell_view_construct): Ref the shell.
(destroy): Unref the shell.
(destroy): Free the delayed_selection. No need to call
`cleanup_delayed_selection()' as the signal handler will have
already be disconnected at this point [as we are using
connect_while_alive()'].
svn path=/trunk/; revision=14325