+ if (!adjustment)
+ adjustment = gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
+ else
+ g_return_if_fail (GTK_IS_ADJUSTMENT (adjustment));
+
+ if (button->priv->adjustment != adjustment)
+ {
+ if (button->priv->adjustment)
+ g_object_unref (button->priv->adjustment);
+ button->priv->adjustment = g_object_ref_sink (adjustment);
+
+ if (button->priv->scale)
+ gtk_range_set_adjustment (GTK_RANGE (button->priv->scale), adjustment);
+
+ g_object_notify (G_OBJECT (button), "adjustment");
+ }
+}
+
+/**
+ * gtk_scale_button_get_plus_button:
+ * @button: a #GtkScaleButton
+ *
+ * Retrieves the plus button of the #GtkScaleButton.
+ *
+ * Returns: (transfer none): the plus button of the #GtkScaleButton
+ *
+ * Since: 2.14
+ */
+GtkWidget *
+gtk_scale_button_get_plus_button (GtkScaleButton *button)
+{
+ g_return_val_if_fail (GTK_IS_SCALE_BUTTON (button), NULL);
+
+ return button->priv->plus_button;
+}
+
+/**
+ * gtk_scale_button_get_minus_button:
+ * @button: a #GtkScaleButton
+ *
+ * Retrieves the minus button of the #GtkScaleButton.
+ *
+ * Returns: (transfer none): the minus button of the #GtkScaleButton
+ *
+ * Since: 2.14
+ */
+GtkWidget *
+gtk_scale_button_get_minus_button (GtkScaleButton *button)
+{
+ g_return_val_if_fail (GTK_IS_SCALE_BUTTON (button), NULL);
+
+ return button->priv->minus_button;
+}
+
+/**
+ * gtk_scale_button_get_popup:
+ * @button: a #GtkScaleButton
+ *
+ * Retrieves the popup of the #GtkScaleButton.
+ *
+ * Returns: (transfer none): the popup of the #GtkScaleButton
+ *
+ * Since: 2.14
+ */
+GtkWidget *
+gtk_scale_button_get_popup (GtkScaleButton *button)
+{
+ g_return_val_if_fail (GTK_IS_SCALE_BUTTON (button), NULL);