diff options
Diffstat (limited to 'shell/Evolution-Offline.idl')
-rw-r--r-- | shell/Evolution-Offline.idl | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/shell/Evolution-Offline.idl b/shell/Evolution-Offline.idl index 377132daa3..282b9fdf17 100644 --- a/shell/Evolution-Offline.idl +++ b/shell/Evolution-Offline.idl @@ -25,7 +25,18 @@ interface OfflineProgressListener { void updateProgress (in ConnectionList current_active_connections); }; +interface SyncFolderProgressListener { + /* Report that syncing is progressed @percent %. */ + void updateProgress (in float percent); + + /* Report an error. */ + void reportFailure (in string message); +}; + interface Offline : Bonobo::Unknown { + exception NotPrepared {}; + exception NotSyncing {}; + /* Whether the component is currently off-line. */ attribute boolean isOffline; @@ -36,9 +47,22 @@ interface Offline : Bonobo::Unknown { `::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) + 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) + raises (notSyncing); + /* Ask the component to go into off-line mode. This always comes after - a `::prepareForOffline' only. */ - void goOffline (in OfflineProgressListener listener); + a `::prepareForOffline'. */ + void goOffline (in OfflineProgressListener listener) + raises (notPrepared); /* Tell the component to go into on-line mode. */ void goOnline (); |