Make adjustment setters behave
This commit is contained in:
@@ -376,7 +376,7 @@ gtk_range_class_init (GtkRangeClass *class)
|
||||
properties[PROP_ADJUSTMENT] =
|
||||
g_param_spec_object ("adjustment", NULL, NULL,
|
||||
GTK_TYPE_ADJUSTMENT,
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT);
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT|G_PARAM_EXPLICIT_NOTIFY);
|
||||
|
||||
/**
|
||||
* GtkRange:inverted: (attributes org.gtk.Property.get=gtk_range_get_inverted org.gtk.Property.set=gtk_range_set_inverted)
|
||||
|
||||
@@ -229,7 +229,7 @@ gtk_scale_button_class_init (GtkScaleButtonClass *klass)
|
||||
PROP_ADJUSTMENT,
|
||||
g_param_spec_object ("adjustment", NULL, NULL,
|
||||
GTK_TYPE_ADJUSTMENT,
|
||||
GTK_PARAM_READWRITE));
|
||||
GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));
|
||||
|
||||
/**
|
||||
* GtkScaleButton:icons: (attributes org.gtk.Property.set=gtk_scale_button_set_icons)
|
||||
|
||||
@@ -218,7 +218,7 @@ gtk_scrollbar_class_init (GtkScrollbarClass *class)
|
||||
props[PROP_ADJUSTMENT] =
|
||||
g_param_spec_object ("adjustment", NULL, NULL,
|
||||
GTK_TYPE_ADJUSTMENT,
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT);
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT|G_PARAM_EXPLICIT_NOTIFY);
|
||||
|
||||
g_object_class_install_properties (object_class, LAST_PROP, props);
|
||||
|
||||
@@ -310,6 +310,9 @@ gtk_scrollbar_set_adjustment (GtkScrollbar *self,
|
||||
g_return_if_fail (adjustment == NULL || GTK_IS_ADJUSTMENT (adjustment));
|
||||
|
||||
adj = gtk_range_get_adjustment (GTK_RANGE (priv->range));
|
||||
if (adj == adjustment)
|
||||
return;
|
||||
|
||||
if (adj)
|
||||
{
|
||||
g_signal_handlers_disconnect_by_func (adj, gtk_scrollbar_adjustment_changed, self);
|
||||
|
||||
@@ -587,7 +587,7 @@ gtk_scrolled_window_class_init (GtkScrolledWindowClass *class)
|
||||
properties[PROP_HADJUSTMENT] =
|
||||
g_param_spec_object ("hadjustment", NULL, NULL,
|
||||
GTK_TYPE_ADJUSTMENT,
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT);
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT|G_PARAM_EXPLICIT_NOTIFY);
|
||||
|
||||
/**
|
||||
* GtkScrolleWindow:vadjustment: (attributes org.gtk.Property.get=gtk_scrolled_window_get_vadjustment org.gtk.Property.set=gtk_scrolled_window_set_vadjustment)
|
||||
@@ -597,7 +597,7 @@ gtk_scrolled_window_class_init (GtkScrolledWindowClass *class)
|
||||
properties[PROP_VADJUSTMENT] =
|
||||
g_param_spec_object ("vadjustment", NULL, NULL,
|
||||
GTK_TYPE_ADJUSTMENT,
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT);
|
||||
GTK_PARAM_READWRITE|G_PARAM_CONSTRUCT|G_PARAM_EXPLICIT_NOTIFY);
|
||||
|
||||
/**
|
||||
* GtkScrolledWindow:hscrollbar-policy:
|
||||
|
||||
@@ -374,7 +374,7 @@ gtk_spin_button_class_init (GtkSpinButtonClass *class)
|
||||
spinbutton_props[PROP_ADJUSTMENT] =
|
||||
g_param_spec_object ("adjustment", NULL, NULL,
|
||||
GTK_TYPE_ADJUSTMENT,
|
||||
GTK_PARAM_READWRITE);
|
||||
GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY);
|
||||
|
||||
/**
|
||||
* GtkSpinButton:climb-rate: (attributes org.gtk.Property.get=gtk_spin_button_get_climb_rate org.gtk.Property.set=gtk_spin_button_set_climb_rate)
|
||||
@@ -1860,6 +1860,8 @@ gtk_spin_button_set_adjustment (GtkSpinButton *spin_button,
|
||||
|
||||
if (!adjustment)
|
||||
adjustment = gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
|
||||
else if (spin_button->adjustment == adjustment)
|
||||
return;
|
||||
|
||||
gtk_spin_button_configure (spin_button,
|
||||
adjustment,
|
||||
|
||||
Reference in New Issue
Block a user