diff options
Diffstat (limited to 'shell/Evolution-Offline.idl')
-rw-r--r-- | shell/Evolution-Offline.idl | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/shell/Evolution-Offline.idl b/shell/Evolution-Offline.idl new file mode 100644 index 0000000000..54bee91023 --- /dev/null +++ b/shell/Evolution-Offline.idl @@ -0,0 +1,48 @@ +/* -*- Mode: IDL; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Interface to allow components to switch between on-line and off-line mode. + * + * Authors: + * Ettore Perazzoli <ettore@ximian.com> + * + * Copyright (C) 2001 Ximian, Inc. + */ + +#include <Bonobo.h> + +module GNOME { +module Evolution { + +struct Connection { + string hostName; + short portNumber; +}; +typedef sequence<Connection> ConnectionList; + +interface OfflineProgressListener : Bonobo::Unknown { + /* Update the shell about the progress of going off-line. The + operation is considered completed when the ConnectionList is empty. */ + void updateProgress (in ConnectionList current_active_connections); +}; + +interface Offline : Bonobo::Unknown { + /* Whether the component is currently off-line. */ + attribute boolean isOffline; + + /* 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). */ + void prepareForOffline (out ConnectionList active_connection_list); + + /* Ask the component to go into off-line mode. This always comes after + a `::prepareForOffline' only. */ + void goOffline (in OfflineProgressListener listener); + + /* Tell the component to go into on-line mode. */ + void goOnline (); +}; + +}; +}; |