diff options
Diffstat (limited to 'addressbook/backend/idl')
-rw-r--r-- | addressbook/backend/idl/Makefile.am | 6 | ||||
-rw-r--r-- | addressbook/backend/idl/addressbook.idl | 71 |
2 files changed, 77 insertions, 0 deletions
diff --git a/addressbook/backend/idl/Makefile.am b/addressbook/backend/idl/Makefile.am new file mode 100644 index 0000000000..db61d2c30c --- /dev/null +++ b/addressbook/backend/idl/Makefile.am @@ -0,0 +1,6 @@ +idldir = $(datadir)/idl + +idl_DATA = \ + addressbook.idl + +EXTRA_DIST = $(idl_DATA) diff --git a/addressbook/backend/idl/addressbook.idl b/addressbook/backend/idl/addressbook.idl new file mode 100644 index 0000000000..a8f6a89f59 --- /dev/null +++ b/addressbook/backend/idl/addressbook.idl @@ -0,0 +1,71 @@ +/* + * + * Author: + * Nat Friedman (nat@helixcode.com) + * + * Copyright 2000, Helix Code, Inc. + */ + +#include <gnome-unknown.idl> + +module Evolution { + + typedef string CardId; + + interface CardCursor { + }; + + interface Book : GNOME::Unknown { + + /* + * Fetching cards in the addresbook. + */ + string get_vcard (in CardId id); + + /* + * Adding and deleting cards in the book. + */ + void create_card (in string vcard); + void remove_card (in CardId Id); + + /* + * Modifying cards in the addressbook. + */ + void modify_card (in CardId id, in string vcard); + }; + + interface BookListener : GNOME::Unknown { + + enum CallStatus { + RepositoryOffline, + PermissionDenied, + CardNotFound, + ProtocolNotSupported + }; + + void respond_create_card (in CallStatus status); + + void respond_remove_card (in CallStatus status); + + void respond_modify_card (in CallStatus status); + + void report_open_book_progress (in string status_message, in short percent); + + void respond_open_book (in CallStatus status, in Book book); + + /** + * report_connection_status: + * + * Used to report changes in the connection to the + * contact repository. This is often a response to a + * call to check_connection() on the Book, but wombat + * is free to report the connection status without + * being asked. + */ + void report_connection_status (in boolean connected); + }; + + interface BookFactory : GNOME::Unknown { + void open_book (in string uri, in BookListener listener); + }; +}; |