[virt-tools-list] [PATCH v2 15/16] app: add "vm-running" property

Victor Toso victortoso at redhat.com
Fri Dec 21 12:08:54 UTC 2018


Hi,

On Wed, Sep 26, 2018 at 07:26:38PM +0400, marcandre.lureau at redhat.com wrote:
> From: Marc-André Lureau <marcandre.lureau at redhat.com>
> 
> Add "vm-running" property and modify "menu-vm-pause" check button
> state when the running state changes.
> 
> Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
Seems fine,
Acked-by: Victor Toso <victortoso at redhat.com>
> ---
>  src/virt-viewer-app.c    | 19 +++++++++++++++++++
>  src/virt-viewer-window.c | 16 ++++++++++++++++
>  2 files changed, 35 insertions(+)
> 
> diff --git a/src/virt-viewer-app.c b/src/virt-viewer-app.c
> index 402c80b..452395b 100644
> --- a/src/virt-viewer-app.c
> +++ b/src/virt-viewer-app.c
> @@ -128,6 +128,7 @@ struct _VirtViewerAppPrivate {
>      gboolean quitting;
>      gboolean kiosk;
>      gboolean vm_ui;
> +    gboolean vm_running;
>  
>      VirtViewerSession *session;
>      gboolean active;
> @@ -176,6 +177,7 @@ enum {
>      PROP_QUIT_ON_DISCONNECT,
>      PROP_UUID,
>      PROP_VM_UI,
> +    PROP_VM_RUNNING,
>  };
>  
>  void
> @@ -1584,6 +1586,10 @@ virt_viewer_app_get_property (GObject *object, guint property_id,
>          g_value_set_boolean(value, priv->vm_ui);
>          break;
>  
> +    case PROP_VM_RUNNING:
> +        g_value_set_boolean(value, priv->vm_running);
> +        break;
> +
>      default:
>          G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
>      }
> @@ -1642,6 +1648,10 @@ virt_viewer_app_set_property (GObject *object, guint property_id,
>          priv->vm_ui = g_value_get_boolean(value);
>          break;
>  
> +    case PROP_VM_RUNNING:
> +        priv->vm_running = g_value_get_boolean(value);
> +        break;
> +
>      default:
>          G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
>      }
> @@ -2042,6 +2052,15 @@ virt_viewer_app_class_init (VirtViewerAppClass *klass)
>                                                           FALSE,
>                                                           G_PARAM_READWRITE |
>                                                           G_PARAM_STATIC_STRINGS));
> +
> +    g_object_class_install_property(object_class,
> +                                    PROP_VM_RUNNING,
> +                                    g_param_spec_boolean("vm-running",
> +                                                         "VM running",
> +                                                         "VM running",
> +                                                         FALSE,
> +                                                         G_PARAM_READWRITE |
> +                                                         G_PARAM_STATIC_STRINGS));
>  }
>  
>  void
> diff --git a/src/virt-viewer-window.c b/src/virt-viewer-window.c
> index 514a410..d90aa7c 100644
> --- a/src/virt-viewer-window.c
> +++ b/src/virt-viewer-window.c
> @@ -237,6 +237,20 @@ vm_ui_changed(GObject    *gobject G_GNUC_UNUSED,
>      gtk_widget_set_visible(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-machine")), vm_ui);
>  }
>  
> +static void
> +vm_running_changed(GObject    *gobject G_GNUC_UNUSED,
> +                   GParamSpec *pspec G_GNUC_UNUSED,
> +                   gpointer    user_data)
> +{
> +    VirtViewerWindow *self = user_data;
> +    GtkCheckMenuItem *check = GTK_CHECK_MENU_ITEM(gtk_builder_get_object(self->priv->builder, "menu-vm-pause"));
> +    gboolean running;
> +
> +    g_object_get(G_OBJECT(self->priv->app), "vm-running", &running, NULL);
> +
> +    gtk_check_menu_item_set_active(check, !running);
> +}
> +
>  static void
>  virt_viewer_window_constructed(GObject *object)
>  {
> @@ -249,6 +263,8 @@ virt_viewer_window_constructed(GObject *object)
>                       G_CALLBACK(rebuild_combo_menu), object);
>      g_signal_connect(priv->app, "notify::vm-ui",
>                       G_CALLBACK(vm_ui_changed), object);
> +    g_signal_connect(priv->app, "notify::vm-running",
> +                     G_CALLBACK(vm_running_changed), object);
>      rebuild_combo_menu(NULL, NULL, object);
>  }
>  
> -- 
> 2.19.0.271.gfe8321ec05
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/virt-tools-list/attachments/20181221/b5d84e8c/attachment.sig>


More information about the virt-tools-list mailing list