code: func ScaleButtonNew(size IconSize, min, max, step float64, icons []string) (*ScaleButton, error) {
  	cicons := make([]*C.gchar, len(icons))
  	for i, icon := range icons {
  		cicons[i] = (*C.gchar)(C.CString(icon))
  		defer C.free(unsafe.Pointer(cicons[i]))
  	}
  	cicons = append(cicons, nil)
  
  	c := C.gtk_scale_button_new(C.GtkIconSize(size),
  		C.gdouble(min),
  		C.gdouble(max),
  		C.gdouble(step),
  		&cicons[0])
  	if c == nil {
  		return nil, nilPtrErr
  	}
  	return wrapScaleButton(glib.Take(unsafe.Pointer(c))), nil
  }
docs: // ScaleButtonNew() is a wrapper around gtk_scale_button_new().