[evolution-data-server] ebook: make EContactGeo usable in Vala



commit ec5e354e97f41aae496d91e11cf5fbefb3472bba
Author: Patrick Ohly <patrick ohly intel com>
Date:   Thu Feb 14 17:33:56 2013 +0100

    ebook: make EContactGeo usable in Vala
    
    "new E.ContactGeo()" in Vala fails because the struct has no
    constructor. Introducing e_contact_geo_new() fixes that problem.
    
    This extends the API instead of changing it. It is still valid
    to allocated EContactGeo instances via some other means.

 addressbook/libebook-contacts/e-contact.c |   19 +++++++++++++++++++
 addressbook/libebook-contacts/e-contact.h |    1 +
 2 files changed, 20 insertions(+), 0 deletions(-)
---
diff --git a/addressbook/libebook-contacts/e-contact.c b/addressbook/libebook-contacts/e-contact.c
index ed6a011..3239f5c 100644
--- a/addressbook/libebook-contacts/e-contact.c
+++ b/addressbook/libebook-contacts/e-contact.c
@@ -2479,6 +2479,25 @@ e_contact_inline_local_photos (EContact *contact,
 E_CONTACT_DEFINE_BOXED_TYPE (e_contact_photo, "EContactPhoto")
 
 /**
+ * e_contact_geo_new:
+ *
+ * Creates an #EContactGeo struct with all coordinates set to 0.
+ *
+ * Returns: (transfer full): A new #EContactGeo struct.
+ *
+ * Since: 3.8
+ **/
+EContactGeo *
+e_contact_geo_new (void)
+{
+       EContactGeo *geo;
+       geo = g_new0 (EContactGeo, 1);
+       geo->latitude = 0;
+       geo->longitude = 0;
+       return geo;
+}
+
+/**
  * e_contact_geo_free:
  * @geo: an #EContactGeo
  *
diff --git a/addressbook/libebook-contacts/e-contact.h b/addressbook/libebook-contacts/e-contact.h
index 1593424..46483ff 100644
--- a/addressbook/libebook-contacts/e-contact.h
+++ b/addressbook/libebook-contacts/e-contact.h
@@ -382,6 +382,7 @@ void                e_contact_photo_set_uri         (EContactPhoto *photo,
 gboolean       e_contact_inline_local_photos   (EContact *contact,
                                                 GError **error);
 
+EContactGeo *  e_contact_geo_new               (void);
 GType          e_contact_geo_get_type          (void);
 void           e_contact_geo_free              (EContactGeo *geo);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]