aboutsummaryrefslogtreecommitdiffstats
path: root/shell/Evolution-Offline.idl
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2001-05-03 09:10:46 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2001-05-03 09:10:46 +0800
commit483ebae5399d6aa7d63e471ea6000021a4be94fb (patch)
tree8de0a4611e800febfffa59c25d3b9d806d380757 /shell/Evolution-Offline.idl
parent0ac06ee5b0cf27803e037b8bb5f3998898200bd1 (diff)
downloadgsoc2013-evolution-483ebae5399d6aa7d63e471ea6000021a4be94fb.tar.gz
gsoc2013-evolution-483ebae5399d6aa7d63e471ea6000021a4be94fb.tar.zst
gsoc2013-evolution-483ebae5399d6aa7d63e471ea6000021a4be94fb.zip
Add interfaces to the shell to handle off-line operation, as well as a
first (unfinished/untested) implementation for them. svn path=/trunk/; revision=9653
Diffstat (limited to 'shell/Evolution-Offline.idl')
-rw-r--r--shell/Evolution-Offline.idl48
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 ();
+};
+
+};
+};