* 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
2002-05-13 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (etree_set_value_at): Added a signal when
the value of the checkboxes changes.
svn path=/trunk/; revision=16776
* e-shell-shared-folder-picker-dialog.c: Add members `parent' and
`shell' in DiscoveryData.
(shell_view_destroy_callback): Callback for destruction of
->parent; set ->parent to NULL.
(shell_destroy_callback): Callback for the desctruction of the
shell; clean up everything.
(discover_folder): Initialize ->parent and shell, and add the
corresponding destruction handlers.
(shared_folder_discovery_listener_callback): Open the discovered
folder.
(setup_progress_dialog): Renamed from `show_progress_dialog'. Set
up a timeout for displaying the dialog instead of displaying it
right away.
(progress_dialog_show_timeout_callback): Callback for showing the
dialog after the callback.
svn path=/trunk/; revision=16754
* e-shell-shared-folder-picker-dialog.c
(shared_folder_discovery_listener_callback): Updated for
FolderResult instead of DiscoverSharedFolderResult.
* Evolution-Storage.idl: Remove struct DiscoverSharedFolderResult;
we want to just use FolderResult for asyncDiscoverSharedFolder.
svn path=/trunk/; revision=16751
* evolution-test-component.c: Added some tests for the custom
storage.
* evolution-storage.c: New signal DISCOVER_SHARED_FOLDER.
(impl_Storage_asyncXferFolder): Renamed from
impl_Storage_async_xfer_folder.
(impl_Storage_asyncRemoveFolder): Renamed from
impl_Storage_async_remove_folder.
(impl_Storage_asyncCreateFolder): Renamed from
impl_Storage_async_create_folder.
(impl_Storage_asyncOpenFolder): Renamed from
impl_storage_async_open_folder.
(impl_Storage_addListener): Renamed from
impl_Storage_add_listener.
(impl_Storage_removeListener): Renamed from
impl_Storage_remove_listener.
(impl_Storage_asyncDiscoverSharedFolder): New, implementation for
::asyncDiscoverSharedFolder.
(evolution_storage_get_epv): Install the CORBA method here.
(class_init): Set up the "discover_shared_folder" signal here.
(e_marshal_NONE__POINTER_POINTER): Yet Another Marshaller. Die
die die.
* Evolution-Storage.idl (Storage::asyncDiscoverSharedFolder): New
method.
(StorageListener::notifySharedFolderDiscovered): New method.
* e-shell-view-menu.c (command_open_other_users_folder): New,
implementation for the FileOpenOtherUsersFolder verb.
* Makefile.am: Generate stubs and skels for
Evolution::Addressbook::SelectNames as well.
* glade/e-shell-shared-folder-picker-dialog.glade: New.
svn path=/trunk/; revision=16746
* e-local-storage.c (construct): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
* evolution-storage.c: New member has_shared_folders in
EvolutionStoragePrivate.
(init): Initialize to FALSE.
(evolution_storage_new): New arg @has_shared_folders.
(evolution_storage_construct): Likewise.
(impl_Storage__get_folderList): Renamed from
impl_Storage__get_folder_list.
(impl_Storage__get_hasSharedFolders): New, implementation for
::hasSharedFolders.
(evolution_storage_get_epv): Install the CORBA method
implementation.
* Evolution-Storage.idl: Make Storage::name a readonly attribute. New attribute Storage::
* component-factory.c (add_storage): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
* gui/component/addressbook-storage.c
(addressbook_get_other_contact_storage): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
svn path=/trunk/; revision=16733
* Evolution-Offline.idl: Rename NotPrepared to notPrepared and
NotSyncing to notSyncing.
* evolution-storage.c (impl_Storage__get_folder_list): Renamed
from impl_Storage_get_folder_list().
* Evolution-Storage.idl: Don't typedef FolderList here. Replace
`getFolderList' method with a readonly attribute.
* gui/e-itip-control.c (get_servers): use
GNOME_Evolution_Storage__get_folderList instead of
GNOME_Evolution_Storage_getFolderList since I have now changed
that to be an attribute instead of a method.
svn path=/trunk/; revision=16732
* evolution-test-component.c (create_new_folder_selector): Use the
new evolution_shell_client_create_storage_set_view() call.
* evolution-shell-client.c
(evolution_shell_client_create_storage_set_view): New.
svn path=/trunk/; revision=16707
* evolution-storage-set-view-factory.c
(evolution_storage_set_view_factory_new_view): Put the
EStorageSetView in an EScrollFrame.
* e-shell.c (impl_Shell_createStorageSetView):
CORBA_Object_duplicate the object before returning.
* evolution-test-component.c
(create_new_folder_selector): New function to create a simple test
environment for the new checkbox-enabled StorageSetView.
(register_component): Add user-creatable type FolderSelector.
(user_create_new_item_callback): Handle FolderSelector.
(dialog_clicked_callback): Print out the checked items in the
folder selector.
(main): Print out a message before going into bonobo_main().
* evolution-storage-set-view.c
(impl_StorageSetView__get_showFolders): Renamed from
impl_StorageSetView__get_show_folders.
(impl_StorageSetView__set_showFolders): Renamed from
impl_StorageSetView__set_show_folders.
(impl_StorageSetView__set_showCheckboxes): New, write the
showCheckboxes CORBA attribute.
(impl_StorageSetView__get_showCheckboxes): New, read the
showCheckboxes CORBA attribute.
(impl_StorageSetView__get_checkedFolders): New, read the
checkedFolders CORBA attribute.
(corba_class_init): Install the new CORBA methods methods.
* e-storage-set-view.c (essv_add_to_list): strdup() the path.
(e_storage_set_view_get_storage_set): New.
* e-folder.c (e_folder_to_corba): New.
* Evolution-StorageSetView.idl: Add showCheckboxes and
checkedFolders attributes.
* Evolution-common.idl: Add typedef for FolderList.
svn path=/trunk/; revision=16704
2002-05-03 Christopher James Lahey <clahey@ximian.com>
* e-folder-list.c: Use bonobo_object_client_(un)?ref instead of
gtk_object_(un)?ref.
(add_clicked): Don't pass NULL to
evolution_shell_client_user_select_folder.
* glade/Makefile.am: Added e-folder-list.glade
* glade/e-folder-list.glade: The glade file for e-folder-list.
svn path=/trunk/; revision=16678
2002-05-03 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (eshellinclude_HEADERS): Added e-folder-list.h.
(libeshell_la_SOURCES): Added e-folder-list.c.
* e-folder-list.c, e-folder-list.h: New widget for editing a list
of folder uris.
svn path=/trunk/; revision=16677
2002-04-29 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (e_storage_set_view_set_checkboxes_list,
e_storage_set_view_get_checkboxes_list): Added these functions.
Implemented checkboxes in the ETreeModel here.
svn path=/trunk/; revision=16637
2002-04-19 Anna Marie Dirks <anna@ximian.com>
* glade/e-shell-config-default-folders.glade: Minor label tweaks;
changed "Default folders" to "Default Folders", and added accelerators.
svn path=/trunk/; revision=16535
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
2002-04-17 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped required gal version number to 0.19.99.11.
From addressbook/ChangeLog:
2002-04-17 Christopher James Lahey <clahey@ximian.com>
* gui/component/select-names/e-select-names.c
(e_select_names_create_categories): Changed this to use
ECategoriesMasterListOptionMenu.
* gui/component/select-names/e-select-names.c
(section_right_click_cb),
gui/widgets/e-addressbook-reflow-adapter.c,
gui/widgets/e-addressbook-view.c: Updated these to match the new
EPopupMenu.
From calendar/ChangeLog:
2002-04-17 Christopher James Lahey <clahey@ximian.com>
* gui/e-calendar-table.c, gui/e-day-view.c, gui/e-week-view.c,
gui/dialogs/meeting-page.c: Updated these to match the new
EPopupMenu.
From mail/ChangeLog:
2002-04-17 Christopher James Lahey <clahey@ximian.com>
* folder-browser.c, mail-display.c: Updated these to match the new
EPopupMenu.
From shell/ChangeLog:
2002-04-17 Christopher James Lahey <clahey@ximian.com>
* e-activity-handler.c: Updated this to match the new EPopupMenu.
svn path=/trunk/; revision=16498
* e-shell-config.c: Shell config page routines. Right now
handles the default folders page.
* glade/e-shell-config-default-folders.glade: New.
* GNOME_Evolution_Shell.oaf.in: Add info for the default folders
config page.
* main.c (idle_cb): If we successfully registered the shell,
register the config factory.
* evolution-shell-client.c (evolution_shell_client_new): Note the
fact that it frees the corba_shell when it is destroyed.
* evolution-folder-selector-button.c
(evolution_folder_selector_button_construct, destroy): Use
bonobo_object_ref/unref on the shell client, not gtk.
* e-shell.c (e_shell_construct): Pass local_directory to
e_setup_check_db.
(handle_default_uri): Fix the config db paths here to match the
other routines.
* e-setup.c (e_setup_check_db): Make this take the evolution
directory path as well so we can properly set up file: URIs for
the default folders.
svn path=/trunk/; revision=16423
* main.c (idle_cb): Change the logic for displaying a default
window, so we don't end up with two windows all the time.
svn path=/trunk/; revision=16416
* 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
into my last commit.
* main.c (idle_cb): Check for "default:" URIs and treat them the
same way as "evolution:" URIs.
* e-shell.c (impl_Shell_handleURI): Handle "default:" URIs by
looking up the default folders in the config db.
svn path=/trunk/; revision=16403
* 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
2002-04-06 JP Rosevear <jpr@ximian.com>
* e-shell-settings-dialog.c (page_new): set type
(load_pages): get the oaf property for type and track the page
number of the highest priority for each type
(destroy_type_entry): destroy hash func
(impl_destroy): destroy the hash table
(init): create private struct and hash table
(e_shell_settings_dialog_show_type): show the page of the given
type
* e-shell-view-menu.c (command_settings): show the page for the
current folder type by default
* e-shell-settings-dialog.h: new proto
svn path=/trunk/; revision=16376