diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2002-05-15 05:34:59 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2002-05-15 05:34:59 +0800 |
commit | 4c65eab5b1429f35b7dcd17c417cc4206989786a (patch) | |
tree | 9d53477a3faa4a16e52cb7f0ccf80c7e9bc596ca /shell/Evolution-Offline.idl | |
parent | f8cc61843c45d07d11872e767c1cee0f16d48409 (diff) | |
download | gsoc2013-evolution-4c65eab5b1429f35b7dcd17c417cc4206989786a.tar.gz gsoc2013-evolution-4c65eab5b1429f35b7dcd17c417cc4206989786a.tar.zst gsoc2013-evolution-4c65eab5b1429f35b7dcd17c417cc4206989786a.zip |
Call e_shell_offline_sync_all_folders() if no connection is reported here.
* 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
Diffstat (limited to 'shell/Evolution-Offline.idl')
-rw-r--r-- | shell/Evolution-Offline.idl | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/shell/Evolution-Offline.idl b/shell/Evolution-Offline.idl index 24973df174..97bfd0cc84 100644 --- a/shell/Evolution-Offline.idl +++ b/shell/Evolution-Offline.idl @@ -26,8 +26,12 @@ interface OfflineProgressListener { }; interface SyncFolderProgressListener { - /* Report that syncing is progressed @percent %. */ - void updateProgress (in float percent); + /* Report that syncing has progressed. @progress has to be between 0.0 + and 1.0. */ + void updateProgress (in float progress); + + /* Report that the operation has finished. */ + void reportSuccess (); /* Report an error. */ void reportFailure (in string message); @@ -42,25 +46,29 @@ interface Offline : Bonobo::Unknown { /* Ask the component to prepare to go into off-line mode. The component must return a list of the current active connections. - After this call, the shell is expected to either invoke - `::goOffline()' (actually complete the operation and go off-line) or - `::goOnline()' (operation cancelled). */ + After this call, the shell is expected to: (in order) + + 1. Invoke ::syncFolder for each of the component's folders that + need to be synchronized to disk for offline usage. + + 2. Either invoke ::goOffline (actually complete the operation + and go off-line) or ::goOnline (operation cancelled). + */ void prepareForOffline (out ConnectionList active_connection_list); /* Request the component to sync the specified folder. This has to happen after ::prepareForOffline. */ - void syncFolder (in Folder folder, - in SyncFolderProgressListener listener) + oneway void syncFolder (in Folder folder, + in SyncFolderProgressListener listener) raises (notPrepared); /* Request the component to stop syncing the specified folder. This has to happen after ::syncFolder. */ - void cancelSyncFolder (in string evolution_uri, - in string physical_uri) + oneway void cancelSyncFolder (in Folder folder) raises (notSyncing); /* Ask the component to go into off-line mode. This always comes after - a `::prepareForOffline'. */ + a ::prepareForOffline. */ void goOffline (in OfflineProgressListener listener) raises (notPrepared); |