[evolution-ews] Bug #715165 - Show connection status icons



commit faa47b7c994e123c0712db49535691386a56305f
Author: Fabiano Fidêncio <fidencio redhat com>
Date:   Thu Dec 12 21:43:27 2013 +0100

    Bug #715165 - Show connection status icons

 src/camel/camel-ews-store.c |   35 ++++++++++++++++++++++++++++++++++-
 1 files changed, 34 insertions(+), 1 deletions(-)
---
diff --git a/src/camel/camel-ews-store.c b/src/camel/camel-ews-store.c
index a4ff009..8f34b3b 100644
--- a/src/camel/camel-ews-store.c
+++ b/src/camel/camel-ews-store.c
@@ -103,7 +103,9 @@ static CamelFolderInfo *folder_info_from_store_summary (CamelEwsStore *store,
 enum {
        PROP_0,
        PROP_HAS_OOO_SET,
-       PROP_OOO_ALERT_STATE
+       PROP_OOO_ALERT_STATE,
+       PROP_CONNECTABLE,
+       PROP_HOST_REACHABLE
 };
 
 G_DEFINE_TYPE_WITH_CODE (
@@ -111,6 +113,8 @@ G_DEFINE_TYPE_WITH_CODE (
        G_IMPLEMENT_INTERFACE (
                G_TYPE_INITABLE, camel_ews_store_initable_init)
        G_IMPLEMENT_INTERFACE (
+               CAMEL_TYPE_NETWORK_SERVICE, NULL)
+       G_IMPLEMENT_INTERFACE (
                CAMEL_TYPE_SUBSCRIBABLE, camel_ews_subscribable_init))
 
 static void
@@ -130,6 +134,11 @@ ews_store_set_property (GObject *object,
                                CAMEL_EWS_STORE (object),
                                g_value_get_enum (value));
                        return;
+               case PROP_CONNECTABLE:
+                       camel_network_service_set_connectable (
+                               CAMEL_NETWORK_SERVICE (object),
+                               g_value_get_object (value));
+                       return;
        }
 
        G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -154,6 +163,18 @@ ews_store_get_property (GObject *object,
                                camel_ews_store_get_ooo_alert_state (
                                CAMEL_EWS_STORE (object)));
                        return;
+               case PROP_CONNECTABLE:
+                       g_value_take_object (
+                               value,
+                               camel_network_service_ref_connectable (
+                                       CAMEL_NETWORK_SERVICE (object)));
+                       return;
+               case PROP_HOST_REACHABLE:
+                       g_value_set_boolean (
+                               value,
+                               camel_network_service_get_host_reachable (
+                                       CAMEL_NETWORK_SERVICE (object)));
+                       return;
        }
 
        G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -3555,6 +3576,18 @@ camel_ews_store_class_init (CamelEwsStoreClass *class)
                        G_PARAM_CONSTRUCT |
                        G_PARAM_STATIC_STRINGS));
 
+       /* Inherited from CamelNetworkService */
+       g_object_class_override_property (
+               object_class,
+               PROP_CONNECTABLE,
+               "connectable");
+
+       /* Inherited from CamelNetworkService */
+       g_object_class_override_property (
+               object_class,
+               PROP_HOST_REACHABLE,
+               "host-reachable");
+
        service_class = CAMEL_SERVICE_CLASS (class);
        service_class->settings_type = CAMEL_TYPE_EWS_SETTINGS;
        service_class->query_auth_types_sync = ews_store_query_auth_types_sync;


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