static void mx_adjustment_constructed (GObject *object) { GObjectClass *g_class; MxAdjustment *self = MX_ADJUSTMENT (object); g_class = G_OBJECT_CLASS (mx_adjustment_parent_class); /* The docs say we're suppose to chain up, but would crash without * some extra care. */ if (g_class && g_class->constructed && g_class->constructed != mx_adjustment_constructed) { g_class->constructed (object); } MX_ADJUSTMENT (self)->priv->is_constructing = FALSE; mx_adjustment_clamp_page (self, self->priv->lower, self->priv->upper); }
static void mx_adjustment_dispose (GObject *object) { MxAdjustmentPrivate *priv = MX_ADJUSTMENT (object)->priv; stop_interpolation (MX_ADJUSTMENT (object)); /* Remove idle handlers */ mx_adjustment_remove_idle (&priv->value_source); mx_adjustment_remove_idle (&priv->lower_source); mx_adjustment_remove_idle (&priv->upper_source); mx_adjustment_remove_idle (&priv->page_inc_source); mx_adjustment_remove_idle (&priv->step_inc_source); mx_adjustment_remove_idle (&priv->page_size_source); mx_adjustment_remove_idle (&priv->changed_source); G_OBJECT_CLASS (mx_adjustment_parent_class)->dispose (object); }
static void mx_adjustment_set_property (GObject *gobject, guint prop_id, const GValue *value, GParamSpec *pspec) { MxAdjustment *adj = MX_ADJUSTMENT (gobject); switch (prop_id) { case PROP_LOWER: mx_adjustment_set_lower (adj, g_value_get_double (value)); break; case PROP_UPPER: mx_adjustment_set_upper (adj, g_value_get_double (value)); break; case PROP_VALUE: mx_adjustment_set_value (adj, g_value_get_double (value)); break; case PROP_STEP_INC: mx_adjustment_set_step_increment (adj, g_value_get_double (value)); break; case PROP_PAGE_INC: mx_adjustment_set_page_increment (adj, g_value_get_double (value)); break; case PROP_PAGE_SIZE: mx_adjustment_set_page_size (adj, g_value_get_double (value)); break; case PROP_ELASTIC: mx_adjustment_set_elastic (adj, g_value_get_boolean (value)); break; case PROP_CLAMP_VALUE: mx_adjustment_set_clamp_value (adj, g_value_get_boolean (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); break; } }
static void mx_adjustment_get_property (GObject *gobject, guint prop_id, GValue *value, GParamSpec *pspec) { MxAdjustmentPrivate *priv = MX_ADJUSTMENT (gobject)->priv; switch (prop_id) { case PROP_LOWER: g_value_set_double (value, priv->lower); break; case PROP_UPPER: g_value_set_double (value, priv->upper); break; case PROP_VALUE: g_value_set_double (value, priv->value); break; case PROP_STEP_INC: g_value_set_double (value, priv->step_increment); break; case PROP_PAGE_INC: g_value_set_double (value, priv->page_increment); break; case PROP_PAGE_SIZE: g_value_set_double (value, priv->page_size); break; case PROP_ELASTIC: g_value_set_boolean (value, priv->elastic); break; case PROP_CLAMP_VALUE: g_value_set_boolean (value, priv->clamp_value); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec); break; } }