rem: gdouble climb_rate, guint digits,
add: gdouble climb_rate, gint digits,
context: GtkWidget * new_spin_button ( gdouble * value, 			      gdouble lower, gdouble upper, 			      gdouble step_increment, gdouble page_increment, 			      gdouble page_size, 			      gdouble climb_rate, guint digits,			      GCallback hook ){    GtkWidget * spin;    GtkAdjustment * adjustment;    gdouble initial = 0;    if ( value )  /* Sanity check */	initial = *value;    adjustment = GTK_ADJUSTMENT( gtk_adjustment_new ( initial, lower, upper, 						      step_increment, page_increment,						      page_size ));    spin = gtk_spin_button_new ( adjustment, climb_rate, digits );    gtk_spin_button_set_numeric ( GTK_SPIN_BUTTON (spin), TRUE );    g_object_set_data ( G_OBJECT (spin), "pointer", value);    g_object_set_data ( G_OBJECT (spin), "adj", adjustment);    g_object_set_data ( G_OBJECT (spin), "value-changed",			(gpointer) g_signal_connect_swapped ( GTK_OBJECT (adjustment),							      "value-changed", 							      (GCallback) set_double_from_spin, 							      spin));    if ( hook )    {	g_object_set_data ( G_OBJECT (spin), "hook",			    (gpointer) g_signal_connect_swapped ( GTK_OBJECT (adjustment), 								  "value-changed", 								  (GCallback) hook, spin ));    }    return spin;}