diff options
author | Hans de Goede <hdegoede@redhat.com> | 2013-03-20 12:17:00 +0100 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2013-03-20 15:26:47 +0100 |
commit | 62e0d000ce7785bc22af2dfead9b0ff0aa753129 (patch) | |
tree | a865ed68fb74d9bc02b360b5ecb73abf1b90fe10 /src/virt-viewer-display.c | |
parent | 1a74444bb7df2a9904c83f547570cf06a53cca14 (diff) | |
download | virt-viewer-62e0d000ce7785bc22af2dfead9b0ff0aa753129.tar.gz virt-viewer-62e0d000ce7785bc22af2dfead9b0ff0aa753129.tar.xz virt-viewer-62e0d000ce7785bc22af2dfead9b0ff0aa753129.zip |
virt-viewer-display: Add monitor property
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'src/virt-viewer-display.c')
-rw-r--r-- | src/virt-viewer-display.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/virt-viewer-display.c b/src/virt-viewer-display.c index 099ac76..dda9f77 100644 --- a/src/virt-viewer-display.c +++ b/src/virt-viewer-display.c @@ -41,6 +41,7 @@ struct _VirtViewerDisplayPrivate guint zoom_level; gboolean zoom; gint nth_display; + gint monitor; guint show_hint; VirtViewerSession *session; gboolean auto_resize; @@ -81,6 +82,7 @@ enum { PROP_SHOW_HINT, PROP_SESSION, PROP_SELECTABLE, + PROP_MONITOR, }; static void @@ -176,6 +178,17 @@ virt_viewer_display_class_init(VirtViewerDisplayClass *class) FALSE, G_PARAM_READABLE)); + g_object_class_install_property(object_class, + PROP_MONITOR, + g_param_spec_int("monitor", + "Monitor", + "Display Monitor", + -1, + G_MAXINT32, + -1, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT)); + g_signal_new("display-pointer-grab", G_OBJECT_CLASS_TYPE(object_class), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_HOOKS, @@ -278,6 +291,9 @@ virt_viewer_display_set_property(GObject *object, g_warn_if_fail(priv->session == NULL); priv->session = g_value_get_object(value); break; + case PROP_MONITOR: + priv->monitor = g_value_get_int(value); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -313,6 +329,9 @@ virt_viewer_display_get_property(GObject *object, case PROP_SELECTABLE: g_value_set_boolean(value, virt_viewer_display_get_selectable(display)); break; + case PROP_MONITOR: + g_value_set_int(value, priv->monitor); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -601,6 +620,21 @@ gboolean virt_viewer_display_get_auto_resize(VirtViewerDisplay *self) return self->priv->auto_resize; } +void virt_viewer_display_set_monitor(VirtViewerDisplay *self, gint monitor) +{ + g_return_if_fail(VIRT_VIEWER_IS_DISPLAY(self)); + + self->priv->monitor = monitor; + g_object_notify(G_OBJECT(self), "monitor"); +} + +gint virt_viewer_display_get_monitor(VirtViewerDisplay *self) +{ + g_return_val_if_fail(VIRT_VIEWER_IS_DISPLAY(self), -1); + + return self->priv->monitor; +} + void virt_viewer_display_release_cursor(VirtViewerDisplay *self) { VirtViewerDisplayClass *klass; |