Reconnect field in virt-viewer.c changed to property. This will be used in virt-viewer-window for binding a "Reconnect" check button to it. --- Changes since v2: - Reverted back to version 1 - Removed object_notify Changes since v1: - Moved the reconnect property from virt-viewer.c into virt-viewer-app.c, so it can be moved into preferences - Added a getter function for reconnect to access it from virt-viewer.c - Changed g_object_notify to g_object_notify_by_pspec for reconnect in virt_viewer_app_set_property --- src/virt-viewer.c | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/src/virt-viewer.c b/src/virt-viewer.c index 9c3ccc9..10bb129 100644 --- a/src/virt-viewer.c +++ b/src/virt-viewer.c @@ -66,6 +66,11 @@ G_DEFINE_TYPE (VirtViewer, virt_viewer, VIRT_VIEWER_TYPE_APP) #define GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), VIRT_VIEWER_TYPE, VirtViewerPrivate)) +enum { + PROP_0, + PROP_RECONNECT, +}; + static gboolean virt_viewer_initial_connect(VirtViewerApp *self, GError **error); static gboolean virt_viewer_open_connection(VirtViewerApp *self, int *fd); static void virt_viewer_deactivated(VirtViewerApp *self, gboolean connect_error); @@ -76,7 +81,14 @@ static void virt_viewer_get_property (GObject *object, guint property_id, GValue *value G_GNUC_UNUSED, GParamSpec *pspec) { + g_return_if_fail(VIRT_VIEWER_IS(object)); + VirtViewer *self = VIRT_VIEWER(object); + VirtViewerPrivate *priv = self->priv; + switch (property_id) { + case PROP_RECONNECT: + g_value_set_boolean(value, priv->reconnect); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); } @@ -86,7 +98,15 @@ static void virt_viewer_set_property (GObject *object, guint property_id, const GValue *value G_GNUC_UNUSED, GParamSpec *pspec) { + g_return_if_fail(VIRT_VIEWER_IS(object)); + VirtViewer *self = VIRT_VIEWER(object); + VirtViewerPrivate *priv = self->priv; + switch (property_id) { + case PROP_RECONNECT: + priv->reconnect = g_value_get_boolean(value); + g_object_notify_by_pspec(G_OBJECT(self), pspec); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); } @@ -108,6 +128,15 @@ virt_viewer_class_init (VirtViewerClass *klass) app_class->deactivated = virt_viewer_deactivated; app_class->open_connection = virt_viewer_open_connection; app_class->start = virt_viewer_start; + + g_object_class_install_property(object_class, + PROP_RECONNECT, + g_param_spec_boolean("reconnect", + "Reconnect", + "Reconnect", + FALSE, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS)); } static void @@ -990,6 +1019,7 @@ virt_viewer_new(const char *uri, self = g_object_new(VIRT_VIEWER_TYPE, "guest-name", name, + "reconnect", reconnect, NULL); app = VIRT_VIEWER_APP(self); priv = self->priv; @@ -1001,7 +1031,6 @@ virt_viewer_new(const char *uri, priv->uri = g_strdup(uri); priv->domkey = g_strdup(name); priv->waitvm = waitvm; - priv->reconnect = reconnect; return self; } -- 2.4.0 _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list