* main.c (main): Call e_icon_factory_init().
* e-local-storage.c (setup_folder_as_stock): New arg @icon_name;
if not NULL, set up a custom icon for the folder.
(setup_stock_folders): Set up custom icons for inbox and outbox.
* e-storage-set-view.c (get_pixbuf_for_folder): If the folder has
a custom icon, return the custom icon.
* e-folder.c: New member custom_icon_name.
(init): Initialize to NULL.
(destroy): Free.
(e_folder_get_custom_icon): New.
(e_folder_set_custom_icon): New.
svn path=/trunk/; revision=17391
* 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-storage-set-view.c (impl_tree_drag_drop): Invoke
e_folder_dnd_bridge_drop().
* e-folder-dnd-bridge.c (find_matching_target_for_drag_context):
New arg @atom_return. Return the GdkAtom associated with the type
through it.
(e_folder_dnd_bridge_drop): New.
svn path=/trunk/; revision=17362
* gui/component/addressbook-component.c (add_creatable_item): New
arg @tooltip; pass it to
evolution_shell_component_add_user_creatable_item() [which now has
a @tooltip arg].
* gui/component-factory.c (add_creatable_item): New arg @tooltip.
Pass it to evolution_shell_component_add_user_creatable_item(),
which now has a @tooltip arg.
(create_object): Added tooltips.
* component-factory.c (create_component): Pass a tooltip to
evolution_shell_component_add_user_creatable_item.
* e-shell-user-creatable-items-handler.c: New member tooltip in
struct MenuItem.
(ensure_menu_items): Initialize the tooltip member.
(shell_view_view_changed_callback): Set the tooltip for the "New"
button.
(ensure_menu_xml): Set up the tooltip here as well.
* evolution-shell-component.c: Add tooltip member to struct
UserCreatableItemType.
(user_creatable_item_type_new): New arg @tooltip.
(evolution_shell_component_add_user_creatable_item): New arg
@tooltip.
(impl__get_userCreatableItemTypes): Put the tooltip in the struct
as well.
* e-shell-user-creatable-items-handler.c (setup_toolbar_button):
Create a GtkTooltips object and attach it to the combo_button
using gtk_object_set_data().
(shell_view_view_changed_callback): Set up a tooltip for the
button, according to the default.
* Evolution-ShellComponent.idl: Add a tooltip member to struct
UserCreatableItemType.
svn path=/trunk/; revision=17343
* 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
(init): Initialize to FALSE.
(e_shell_prepare_for_quit): Set preparing_to_quit to TRUE on
entering, and set it to FALSE on return.
(view_delete_event_cb): Don't call e_shell_prepare_for_quit() if
preparing_for_quit is TRUE.
svn path=/trunk/; revision=17336
* evolution-storage-set-view.c
(impl_StorageSetView__get_checkedFolders): Set release for the
CORBA path sequence to TRUE.
* evolution-shell-component.c
(fill_corba_sequence_from_null_terminated_string_array): Set
release for the CORBA sequence to TRUE so it gets freed properly.
(impl__get_externalUriSchemas): Likewise for the returned
uri_chema_list.
* e-shell-offline-handler.c (duplicate_connection_list): Set
release for the connection sequence to TRUE.
* e-shell-config-offline.c (config_control_apply_callback): Set
release for the path sequence to TRUE.
* e-corba-storage-registry.c
(impl_StorageRegistry_getStorageList): Set release for the storage
sequence to TRUE.
* evolution-storage.c (impl_Storage__get_folderList): Set release
for the folder sequence to TRUE.
svn path=/trunk/; revision=17062
* e-folder-list.c (e_folder_list_construct): Use
bonobo_object_ref() instead of bonobo_object_client_ref() as the
former only refs the CORBA object [Sigh].
* e-shell-config-autocompletion.c
(e_shell_config_autocompletion_create_widget): Don't unref the
shell_client here, as we need it. :-)
svn path=/trunk/; revision=17046
* e-shell-view-menu.c (command_about_box): Connect
about_box_event_callback() to the "key_press_event" signal as
well. This way the about box is closed when you press a key too.
[#25349]
svn path=/trunk/; revision=17044
2002-05-28 Chris Toshok <toshok@ximian.com>
* e-folder-list.c (e_folder_list_set_items): skip folders that
aren't valid uri's.
(e_folder_list_get_items): didn't update this to track the change
in model columns. bad toshok.
svn path=/trunk/; revision=17028
2002-05-24 Chris Toshok <toshok@ximian.com>
[ fixes 90% of #25047 ]
* e-folder-list.c (get_folder_for_uri): shamelessly lifted from
evolution-folder-selector-button.c.
(create_display_string): modeled again after
evolution-folder-selector-button.c, so we can give a little more
context (and make the table look like the folder selector
buttons.)
(SPEC): add a pixbuf column, also remove the sorting behavior.
(columns): add a pixbuf column and another string column (for the
display string).
(add_clicked): create the display string and get the proper
pixbuf, and insert both.
(edit_clicked): removed.
(update_buttons): remove edit button handling from here.
(e_folder_list_init): remove the hooking up of button-edit's
"clicked" signal.
(e_folder_list_construct): get a reference to the storage registry
so we can look up folders.
(e_folder_list_set_items): analogous change to add_clicked - get
the display string and pixbuf and insert them.
* glade/e-folder-list.glade: remove the edit button.
* glade/e-shell-config-default-folders.glade: remove the
frame/vbox, since we embed it in a notebook and the tab has the
title already.
* e-shell-config.c (config_control_factory_cb): the only config
control we deal with here now is the folder settings control.
* e-shell-config-default-folders.c
(e_shell_config_default_folders_create_widget): rename
e_shell_config_default_folders_create_control to this, return the
widget, and take the config control to use as an arg.
* e-shell-config-offline.c (e_shell_config_offline_create_widget):
make an analogous change here as with
default_folders_create_widget.
* e-shell-config-default-folders.h
(e_shell_config_default_folders_create_widget): track change to
prototype.
* e-shell-config-offline.h (e_shell_config_offline_create_widget): same.
* GNOME_Evolution_Shell.oaf.in: remove the DefaultFolders and
OfflineFolders controls and add a FolderSettings_Control.
* Makefile.am (evolution_SOURCES): add
e-shell-config-folder-settings.[ch] and
e-shell-config-autocompletion.[ch].
* e-shell-config-folder-settings.[ch]: new files, embed (after a
fashion) the default folder, offline, and autocompletion UI's in a
notebook.
* e-shell-config-autocompletion.[ch]: Basically copy over and
shell-ize the addressbook autocompletion config control so it can
be embedded more easily with the other folder settings.
svn path=/trunk/; revision=17000
* e-shortcuts-view.c (rename_group_cb): Set the view type from the
original group, thus preserving the small-icon/large-icon state.
Fixes#6732.
svn path=/trunk/; revision=16991
* main.c (show_development_warning): Add a toggle to avoid
displaying the dialog again. Don't display the dialog at all if
the /Shell/skip_warning_dialog_1_1 bonobo-conf key is set to
FALSE.
(warning_dialog_clicked_callback): Set
/Shell/skip_warning_dialog_1_1 according to the state of the check
button.
svn path=/trunk/; revision=16986
* e-shell.c (impl_Shell_selectUserFolder): No more @default_type
arg to e_shell_folder_selection_dialog_new().
* e-shell-view-menu.c (command_goto_folder): No more @default_type
arg to e_shell_folder_selection_dialog_new().
(command_new_shortcut): Likewise.
* e-shell-importer.c (import_druid_finish): No more @default_type
arg to e_shell_folder_selection_dialog_new().
* e-shell-folder-commands.c (e_shell_command_move_folder): No more
@default_type arg to e_shell_folder_selection_dialog_new().
(e_shell_command_copy_folder): Likewise.
* e-shell-folder-selection-dialog.c: Removed default_type member
in EShellFolderSelectionDialogPrivate.
(e_shell_folder_selection_dialog_new): Removed @default_type arg.
(e_shell_folder_selection_dialog_construct): Likewise.
(impl_clicked): Just pass the first of the allowed types to
e_shell_show_folder_creation_dialog() for the default type.
* evolution-shell-client.c (user_select_folder): No more
@default_type arg to the ::userSelectFolder CORBA method.
* Evolution-Shell.idl (selectUserFolder): Remove arg
@default_type.
svn path=/trunk/; revision=16983
* main.c (view_map_callback): New callback for when the first
created view in the shell gets mapped.
(new_view_created_callback): New callback for when the first view
of the shell gets created.
(show_development_warning): New function to display a warning
about the fact that Evolution is unstable.
(idle_cb): Call show_development_warning() here unless the
EVOLVE_ME_HARDER environment variable is set.
* e-shell.c (class_init): Add the "new_view_created" signal here.
(create_view): Emit the signal here.
* e-shell.h: New signal "new_view_created".
svn path=/trunk/; revision=16977
* e-shell-user-creatable-items-handler.c: New member
default_menu_item in EShellUserCreatableItemsHandlerPrivate.
(ensure_menu_items): Set ->default_menu_item.
(get_default_action_for_view): When no default item is specified,
just return ->default_menu_item.
svn path=/trunk/; revision=16976
* e-shell.c (e_shell_prepare_for_quit): Only refuse quitting if
the result is CANCEL. This way we allow quitting if one of the
components has crashed or something else otherwise goes wrong.
Fixes#25093.
* evolution-shell-component-client.c
(result_from_async_corba_result): Handle
GNOME_Evolution_ShellComponentListener_CANCEL.
svn path=/trunk/; revision=16974
2002-05-21 Christopher James Lahey <clahey@ximian.com>
* e-corba-storage.c (async_open_folder_idle): Do async_open_folder
in an idle callback.
* e-shell-shared-folder-picker-dialog.c (user_clicked),
glade/e-shell-shared-folder-picker-dialog.glade: Added a select
names button here.
svn path=/trunk/; revision=16964
2002-05-20 Chris Toshok <toshok@ximian.com>
* evolution-folder-selector-button.c (clicked): set the parent
window insensitive before popping up the dialog and sensitive
after it's popped down, to give us semi-modal behavior. Also,
emit a "popped_up" signal when popping up the dialog, and emit
"canceled" when the return folder is NULL (when the user canceled
the dialog).
(class_init): fix typo (?) - parent type isn't
bonobo_object_get_type(), it's PARENT_TYPE. Also, initialize the
POPPED_UP and CANCELED signals.
* evolution-folder-selector-button.h (struct
_EvolutionFolderSelectorButtonClass): add popped_up and canceled
signals.
svn path=/trunk/; revision=16959
* e-corba-storage.c (impl_StorageListener_notifyFolderCreated):
Set the can_sync_offline property on the EFolder based on the
canSyncOffline value on the CORBA folder.
* evolution-test-component.c (setup_custom_storage): Pass FALSE
for @sync_offline to evolution_storage_new_folder().
* e-local-storage.c (new_folder): Pass FALSE for @sync_offline to
evolution_storage_new_folder().
* evolution-storage.h (evolution_storage_new_folder): New arg
@can_sync_offline.
* subscribe-dialog.c (recursive_add_folder): Pass TRUE for
@sync_offline to evolution_storage_new_folder().
* mail-folder-cache.c (real_flush_updates): Pass TRUE for
@sync_offline to evolution_storage_new_folder().
* gui/component/addressbook-storage.c (load_source_data): Pass
FALSE for @sync_offline to evolution_storage_new_folder().
(addressbook_storage_add_source): Pass FALSE for @sync_offline to
evolution_storage_new_folder().
svn path=/trunk/; revision=16947
* Evolution-Offline.idl (syncFolder): Remove exception.
(cancelSyncFolder): Remove exception.
* e-shell-config-offline.c (storage_set_view_has_checkbox_func):
New.
(e_shell_config_offline_create_control): Pass it as the
@has_checkbox_func.
* e-folder.c: New member can_sync_offline in EFolderPrivate.
(init): Init to FALSE.
(e_folder_get_can_sync_offline): New.
(e_folder_to_corba): Set canSyncOffline in the returned CORBA
folder.
(e_folder_set_physical_uri): Protect from when @physical_uri and
->physical_uri are the same thing.
(e_folder_set_description): Same here with description.
(e_folder_set_type_string): And type.
* Evolution-common.idl: New member canSyncOffline in struct
Folder.
svn path=/trunk/; revision=16946
* e-shell-config-offline.c
(e_shell_config_offline_create_control): Pass NULL for
@has_checkbox_func and @has_checkbox_func_data.
* evolution-storage-set-view.c
(impl_StorageSetView__set_showCheckboxes): Pass NULL for
@has_checkbox_func and @has_checkbox_func_data.
* e-storage-set-view.c: New member has_checkbox_func and
has_checkbox_func_data in EStorageSetViewPrivate.
(init): Init to NULL.
(e_storage_set_view_set_show_checkboxes): New args
@has_checkbox_func and @func_data.
(has_checkbox): Always return FALSE for the toplevels. For the
other ones return TRUE unless ->has_checkbox_func is not-NULL; in
which case, we use that function to determine whether the folder
is actually checkable.
* Evolution-ShellComponent.idl (requestQuit): Remove exception.
svn path=/trunk/; revision=16945
* e-shell.c (view_delete_event_cb): Ask e_shell_prepare_for_quit()
before destroying the view if it's the last one.
* e-shell-view-menu.c (command_close): Synthesize a delete_event
on the view instead of directly destroying it.
svn path=/trunk/; revision=16931
* e-shell-offline-handler.c
(e_shell_offline_handler_put_components_offline): Call
e_shell_offline_sync_all_folders() if no connection is reported
here.
(dialog_handle_ok): Sync all the folders here through
e_shell_offline_sync_all_folders().
* e-shell-offline-sync.c: New.
* e-shell-offline-sync.h: New.
* Evolution-Offline.idl (syncFolder): Make oneway.
(cancelSyncFolder): Likewise.
(SyncFolderProgressListener::reportSuccess): New method.
svn path=/trunk/; revision=16792
2002-05-14 Christopher James Lahey <clahey@ximian.com>
* Makefile.am: Added check-empty.xpm, check-filled.xpm, and
check-missing.xpm.
* check-empty.xpm, check-filled.xpm, check-missing.xpm: New xpms.
Copied from gal. check-missing.xpm is simply a transparent xpm of
the correct size.
* e-storage-set-view.c (etree_value_at): When getting, check if
the path doesn't have a check box and return 2 in that case.
(etree_set_value_at): Check if the path doesn't have a check box
and don't change it in that case. Also, just invert the value
here instead of paying attention to the set value passed in.
(class_init): Initialize the checks GdkPixbufs.
(e_storage_set_view_construct): Create the "optional_checkbox"
cell.
* e-storage-set-view.etspec: Changed the cell for the checkbox
column to "optional_checkbox".
svn path=/trunk/; revision=16791
2002-05-14 Christopher James Lahey <clahey@ximian.com>
* evolution-storage.c (evolution_storage_new_folder): Compute the
evolutionUri here and pass it in.
svn path=/trunk/; revision=16782
* e-shell-config-offline.c
(init_storage_set_view_status_from_config): Add a missing
CORBA_free in the case in which the typecode of the
/OfflineFolders/Paths key in the ConfigDatabase doesn't match the
expected type.
svn path=/trunk/; revision=16780
* e-shell.c (e_shell_go_offline): Pass self to
e_shell_offline_handler_new() instead of the component registry.
* e-shell-offline-handler.c: Replace member `component_registry'
in EShellOfflineHandlerPrivate with a `shell' member. Updated all
the code to retrieve the component registry from the shell instead
of directly.
(e_shell_offline_handler_construct): Get a @shell instead of a
@component_registry.
svn path=/trunk/; revision=16779
2002-05-13 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (e_storage_set_view_get_checkboxes_list):
Changed this to just walk the hash table to get the list of
checked checkboxes instead of walking the tree. (Makes it so that
checked paths will remain checked, even if they're not shown in
the tree when the list is gotten.)
svn path=/trunk/; revision=16778