OSDN Git Service

LinGui: fix a collection of duplicate widget ids in the gtkbuilder xml
[handbrake-jp/handbrake-jp-git.git] / gtk / src / settings.c
index c665770..f392bc2 100644 (file)
@@ -170,6 +170,12 @@ ghb_settings_combo_option(const GValue *settings, const gchar *key)
        return ghb_lookup_combo_option(key, ghb_settings_get_value(settings, key));
 }
 
+const gchar*
+ghb_settings_combo_string(const GValue *settings, const gchar *key)
+{
+       return ghb_lookup_combo_string(key, ghb_settings_get_value(settings, key));
+}
+
 // Map widget names to setting keys
 // Widgets that map to settings have names
 // of this format: s_<setting key>
@@ -316,6 +322,13 @@ ghb_widget_value(GtkWidget *widget)
                        value = ghb_int_value_new(dval);
                }
        }
+       else if (type == GTK_TYPE_SCALE_BUTTON)
+       {
+               gdouble dval;
+
+               dval = gtk_scale_button_get_value(GTK_SCALE_BUTTON(widget));
+               value = ghb_double_value_new(dval);
+       }
        else if (type == GTK_TYPE_TEXT_VIEW)
        {
                GtkTextBuffer *buffer;
@@ -582,6 +595,11 @@ update_widget(GtkWidget *widget, const GValue *value)
                g_debug("hscale");
                gtk_range_set_value(GTK_RANGE(widget), dval);
        }
+       else if (type == GTK_TYPE_SCALE_BUTTON)
+       {
+               g_debug("scale_button");
+               gtk_scale_button_set_value(GTK_SCALE_BUTTON(widget), dval);
+       }
        else if (type == GTK_TYPE_TEXT_VIEW)
        {
                g_debug("textview (%s)", str);