1 /* 2 * $Id$ 3 */ 4 /* vim:et:ts=4:sw=4:et:sts=4:ai:set list listchars=tab\:��,trail\:�: */ 5 6 /* 7 * Claws-contacts is a proposed new design for the address book feature 8 * in Claws Mail. The goal for this new design was to create a 9 * solution more suitable for the term lightweight and to be more 10 * maintainable than the present implementation. 11 * 12 * More lightweight is achieved by design, in that sence that the whole 13 * structure is based on a plugable design. 14 * 15 * Claws Mail is Copyright (C) 1999-2012 by the Claws Mail Team and 16 * Claws-contacts is Copyright (C) 2011 by Michael Rasmussen. 17 * 18 * This program is free software; you can redistribute it and/or modify 19 * it under the terms of the GNU General Public License as published by 20 * the Free Software Foundation; either version 3 of the License, or 21 * (at your option) any later version. 22 * 23 * This program is distributed in the hope that it will be useful, 24 * but WITHOUT ANY WARRANTY; without even the implied warranty of 25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 26 * GNU General Public License for more details. 27 * 28 * You should have received a copy of the GNU General Public License 29 * along with this program. If not, see <http://www.gnu.org/licenses/>. 30 * 31 */ 32 33 #ifndef __ADDRESSBOOK_DBUS_H__ 34 #define __ADDRESSBOOK_DBUS_H__ 35 36 #include <glib.h> 37 38 G_BEGIN_DECLS 39 40 #include <gtk/gtk.h> 41 #include "folder.h" 42 #include "compose.h" 43 44 typedef struct { 45 gchar* cn; 46 gchar* email; 47 gchar* remarks; 48 gchar* name; 49 gchar* book; 50 GdkPixbuf* picture; 51 } ContactData; 52 53 gboolean addressbook_start_service(GError** error); 54 void addressbook_install_hooks(GError** error); 55 int addressbook_dbus_add_contact(ContactData* contact, GError** error); 56 gboolean addrindex_dbus_load_completion(gint (*callBackFunc) 57 (const gchar* name, 58 const gchar* address, 59 const gchar* nick, 60 const gchar* alias, 61 GList* grp_emails), 62 GError** error); 63 void addressbook_dbus_open(gboolean compose, GError** error); 64 GSList* addressbook_dbus_get_books(GError** error); 65 void contact_data_free(ContactData** data); 66 void addressbook_harvest(FolderItem *folderItem, 67 gboolean sourceInd, 68 GList *msgList ); 69 void addressbook_connect_signals(Compose* compose); 70 gchar* addressbook_get_vcard(const gchar* account, GError** error); 71 gboolean addressbook_add_vcard(const gchar* abook, const gchar* vcard, GError** error); 72 73 G_END_DECLS 74 75 #endif 76