static void st_scroll_bar_set_property (GObject *gobject, guint prop_id, const GValue *value, GParamSpec *pspec) { StScrollBar *bar = ST_SCROLL_BAR (gobject); switch (prop_id) { case PROP_ADJUSTMENT: st_scroll_bar_set_adjustment (bar, g_value_get_object (value)); break; case PROP_VERTICAL: bar->priv->vertical = g_value_get_boolean (value); if (bar->priv->vertical) clutter_actor_set_name (CLUTTER_ACTOR (bar->priv->handle), "vhandle"); else clutter_actor_set_name (CLUTTER_ACTOR (bar->priv->handle), "hhandle"); clutter_actor_queue_relayout ((ClutterActor*) gobject); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); break; } }
static void st_scroll_bar_dispose (GObject *gobject) { StScrollBar *bar = ST_SCROLL_BAR (gobject); StScrollBarPrivate *priv = bar->priv; if (priv->adjustment) st_scroll_bar_set_adjustment (bar, NULL); if (priv->handle) { g_signal_handlers_disconnect_by_func (priv->handle, G_CALLBACK (handle_button_press_event_cb), bar); clutter_actor_unparent (priv->handle); priv->handle = NULL; } if (priv->bw_stepper) { clutter_actor_unparent (priv->bw_stepper); priv->bw_stepper = NULL; } if (priv->fw_stepper) { clutter_actor_unparent (priv->fw_stepper); priv->fw_stepper = NULL; } if (priv->trough) { clutter_actor_unparent (priv->trough); priv->trough = NULL; } G_OBJECT_CLASS (st_scroll_bar_parent_class)->dispose (gobject); }
static void st_scroll_bar_dispose (GObject *gobject) { StScrollBar *bar = ST_SCROLL_BAR (gobject); StScrollBarPrivate *priv = bar->priv; if (priv->adjustment) st_scroll_bar_set_adjustment (bar, NULL); if (priv->handle) { clutter_actor_destroy (priv->handle); priv->handle = NULL; } if (priv->trough) { clutter_actor_destroy (priv->trough); priv->trough = NULL; } G_OBJECT_CLASS (st_scroll_bar_parent_class)->dispose (gobject); }