AC_SUBST(MODEST_ABOOK_CFLAGS)
AC_SUBST(MODEST_ABOOK_LIBS)
- if test "x$have_abook" == "xtrue"; then
- PKG_CHECK_MODULES(MODEST_ABOOK_OLD, osso-addressbook-1.0 < 2.0, have_old_abook=true,have_old_abook=false)
- if test "x$have_old_abook" == "xtrue"; then
- AC_DEFINE_UNQUOTED(MODEST_HAVE_OLD_ABOOK, 1, ["whether we have an old osso-addressbook"])
- fi
- AC_DEFINE_UNQUOTED(MODEST_HAVE_ABOOK,1, ["whether we have osso-addressbook"])
+ if test "x$have_abook" == "xtrue"; then
+ abook_api=`$PKG_CONFIG --modversion osso-addressbook-1.0 | cut -d. -f1`
+ AC_DEFINE_UNQUOTED(OSSO_ABOOK_ENABLE_DEPRECATED, 1, ["use deprecated addressbook API"])
+ AC_DEFINE_UNQUOTED(MODEST_ABOOK_API, $abook_api, ["the API version of osso-addressbook"])
+ AC_DEFINE_UNQUOTED(MODEST_HAVE_ABOOK, 1, ["whether we have osso-addressbook"])
addressbook="osso-addressbook"
fi
fi
book_view = bookview;
if (contact_model)
+#if MODEST_ABOOK_API < 4
osso_abook_tree_model_set_book_view (OSSO_ABOOK_TREE_MODEL (contact_model),
book_view);
+#else /* MODEST_ABOOK_API < 4 */
+ osso_abook_list_store_set_book_view (OSSO_ABOOK_LIST_STORE (contact_model),
+ book_view);
+#endif /* MODEST_ABOOK_API < 4 */
e_book_view_start (book_view);
}
void
modest_address_book_select_addresses (ModestRecptEditor *recpt_editor)
{
+#if MODEST_ABOOK_API < 4
GtkWidget *contact_view = NULL;
- GList *contacts_list = NULL;
GtkWidget *contact_dialog;
+#else /* MODEST_ABOOK_API < 4 */
+ OssoABookContactChooser *contact_chooser = NULL;
+#endif /* MODEST_ABOOK_API < 4 */
+
+ GList *contacts_list = NULL;
GSList *email_addrs_per_contact = NULL;
gchar *econtact_id;
gboolean focus_recpt_editor = FALSE;
g_return_if_fail (MODEST_IS_RECPT_EDITOR (recpt_editor));
+#if MODEST_ABOOK_API < 4
if (!open_addressbook ()) {
if (contact_model) {
g_object_unref (contact_model);
osso_abook_contact_selector_get_extended_selection (OSSO_ABOOK_CONTACT_SELECTOR
(contact_view));
}
+#else /* MODEST_ABOOK_API < 4 */
+ /* TODO: figure out how to make the contact chooser modal */
+ contact_chooser = osso_abook_contact_chooser_new
+ ("title", _("mcen_ti_select_recipients"),
+ "help-topic", "",
+ "minimum-selection", 1, NULL);
+
+ if (osso_abook_contact_chooser_run (contact_chooser) == GTK_RESPONSE_OK)
+ contacts_list = osso_abook_contact_chooser_get_selection (contact_chooser);
+
+ g_object_unref (contact_chooser);
+#endif
if (contacts_list) {
GList *node;
g_list_free (contacts_list);
}
+#if MODEST_ABOOK_API < 4
if (contact_model) {
g_object_unref (contact_model);
contact_model = NULL;
}
gtk_widget_destroy (contact_dialog);
+#endif
if (focus_recpt_editor)
modest_recpt_editor_grab_focus (MODEST_RECPT_EDITOR (recpt_editor));
if (!contact || !book)
return;
-#ifdef MODEST_HAVE_OLD_ABOOK
+#if MODEST_ABOOK_API < 2
osso_abook_contact_commit(contact, is_new, book);
#else
osso_abook_contact_commit(contact, is_new, book, NULL);
-#endif /* MODEST_HILDON_VERSION_0 */
+#endif /* MODEST_ABOOK_API < 2 */
}
/**
if (book_view) {
GtkWidget *contact_view = NULL;
GtkWidget *contact_dialog = NULL;
+#if MODEST_ABOOK_API < 4
osso_abook_tree_model_set_book_view (OSSO_ABOOK_TREE_MODEL (contact_model), book_view);
+#else /* MODEST_ABOOK_API < 4 */
+ osso_abook_list_store_set_book_view (OSSO_ABOOK_LIST_STORE (contact_model), book_view);
+#endif /* MODEST_ABOOK_API < 4 */
e_book_view_start (book_view);
contact_view = osso_abook_contact_view_new_basic (contact_model);