diff options
Diffstat (limited to 'backends/pulse/pulse-port-switch.c')
-rw-r--r-- | backends/pulse/pulse-port-switch.c | 85 |
1 files changed, 4 insertions, 81 deletions
diff --git a/backends/pulse/pulse-port-switch.c b/backends/pulse/pulse-port-switch.c index 71e0709..1f4ce67 100644 --- a/backends/pulse/pulse-port-switch.c +++ b/backends/pulse/pulse-port-switch.c @@ -29,33 +29,14 @@ struct _PulsePortSwitchPrivate { - GList *ports; - PulseStream *stream; + GList *ports; }; -enum { - PROP_0, - PROP_STREAM, - N_PROPERTIES -}; - -static GParamSpec *properties[N_PROPERTIES] = { NULL, }; - static void pulse_port_switch_class_init (PulsePortSwitchClass *klass); - -static void pulse_port_switch_get_property (GObject *object, - guint param_id, - GValue *value, - GParamSpec *pspec); -static void pulse_port_switch_set_property (GObject *object, - guint param_id, - const GValue *value, - GParamSpec *pspec); - static void pulse_port_switch_init (PulsePortSwitch *swtch); static void pulse_port_switch_dispose (GObject *object); -G_DEFINE_ABSTRACT_TYPE (PulsePortSwitch, pulse_port_switch, MATE_MIXER_TYPE_SWITCH) +G_DEFINE_ABSTRACT_TYPE (PulsePortSwitch, pulse_port_switch, MATE_MIXER_TYPE_STREAM_SWITCH) static gboolean pulse_port_switch_set_active_option (MateMixerSwitch *mms, MateMixerSwitchOption *mmso); @@ -74,74 +55,16 @@ pulse_port_switch_class_init (PulsePortSwitchClass *klass) MateMixerSwitchClass *switch_class; object_class = G_OBJECT_CLASS (klass); - object_class->dispose = pulse_port_switch_dispose; - object_class->get_property = pulse_port_switch_get_property; - object_class->set_property = pulse_port_switch_set_property; + object_class->dispose = pulse_port_switch_dispose; switch_class = MATE_MIXER_SWITCH_CLASS (klass); switch_class->set_active_option = pulse_port_switch_set_active_option; switch_class->list_options = pulse_port_switch_list_options; - properties[PROP_STREAM] = - g_param_spec_object ("stream", - "Stream", - "PulseAudio stream", - PULSE_TYPE_STREAM, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_STRINGS); - - g_object_class_install_properties (object_class, N_PROPERTIES, properties); - g_type_class_add_private (G_OBJECT_CLASS (klass), sizeof (PulsePortSwitchPrivate)); } static void -pulse_port_switch_get_property (GObject *object, - guint param_id, - GValue *value, - GParamSpec *pspec) -{ - PulsePortSwitch *swtch; - - swtch = PULSE_PORT_SWITCH (object); - - switch (param_id) { - case PROP_STREAM: - g_value_set_object (value, swtch->priv->stream); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); - break; - } -} - -static void -pulse_port_switch_set_property (GObject *object, - guint param_id, - const GValue *value, - GParamSpec *pspec) -{ - PulsePortSwitch *swtch; - - swtch = PULSE_PORT_SWITCH (object); - - switch (param_id) { - case PROP_STREAM: - /* Construct-only object */ - swtch->priv->stream = g_value_get_object (value); - - if (swtch->priv->stream != NULL) - g_object_add_weak_pointer (G_OBJECT (swtch->priv->stream), - (gpointer *) &swtch->priv->stream); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); - break; - } -} - -static void pulse_port_switch_init (PulsePortSwitch *swtch) { swtch->priv = G_TYPE_INSTANCE_GET_PRIVATE (swtch, @@ -168,7 +91,7 @@ pulse_port_switch_get_stream (PulsePortSwitch *swtch) { g_return_val_if_fail (PULSE_IS_PORT_SWITCH (swtch), NULL); - return swtch->priv->stream; + return PULSE_STREAM (mate_mixer_stream_switch_get_stream (MATE_MIXER_STREAM_SWITCH (swtch))); } void |