GValue *asettings = NULL;
const GValue *audio_list;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
ts = gtk_tree_view_get_selection (tv);
if (gtk_tree_selection_get_selected(ts, &tm, &ti))
{
const GValue *audio_list;
g_debug("ghb_audio_list_refresh_selected ()");
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
ts = gtk_tree_view_get_selection (tv);
if (gtk_tree_selection_get_selected(ts, &tm, &ti))
{
GtkTreeModel *tm;
GtkTreeIter ti;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
tm = gtk_tree_view_get_model(tv);
tm_count = gtk_tree_model_iter_n_children(tm, NULL);
GtkTreeSelection *tsel;
g_debug("clear_audio_list_ui ()");
- tv = GTK_TREE_VIEW(GHB_WIDGET(builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(builder, "audio_list_view"));
ts = GTK_TREE_STORE(gtk_tree_view_get_model(tv));
// Clear tree selection so that updates are not triggered
// that cause a recursive attempt to clear the tree selection (crasher)
if (asettings == NULL)
return;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
ts = gtk_tree_view_get_selection (tv);
tm = gtk_tree_view_get_model(tv);
GtkTreeSelection *ts;
GtkTreeIter ti;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
ts = gtk_tree_view_get_selection(tv);
tm = gtk_tree_view_get_model(tv);
tp = gtk_tree_path_new_from_string (path);
gint *indices;
GValue *audio_list;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
ts = gtk_tree_view_get_selection(tv);
tm = gtk_tree_view_get_model(tv);
tp = gtk_tree_path_new_from_string (path);
</object>
</child>
<child>
- <object class="GtkMenuItem" id="destination">
+ <object class="GtkMenuItem" id="destination_menu_item">
<property name="label" translatable="yes">_Destination</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <object class="GtkTreeView" id="audio_list">
+ <object class="GtkTreeView" id="audio_list_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <object class="GtkTreeView" id="subtitle_list">
+ <object class="GtkTreeView" id="subtitle_list_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
</object>
</child>
<child>
- <object class="GtkMenuItem" id="destination">
+ <object class="GtkMenuItem" id="destination_menu_item">
<property name="label" translatable="yes">_Destination</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <object class="GtkTreeView" id="audio_list">
+ <object class="GtkTreeView" id="audio_list_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <object class="GtkTreeView" id="subtitle_list">
+ <object class="GtkTreeView" id="subtitle_list_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
</object>
</child>
<child>
- <object class="GtkMenuItem" id="destination">
+ <object class="GtkMenuItem" id="destination_menu_item">
<property name="label" translatable="yes">_Destination</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <object class="GtkTreeView" id="audio_list">
+ <object class="GtkTreeView" id="audio_list_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<child>
- <object class="GtkTreeView" id="subtitle_list">
+ <object class="GtkTreeView" id="subtitle_list_view">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
GtkTreeSelection *selection;
g_debug("bind_audio_tree_model()\n");
- treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list"));
+ treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "audio_list_view"));
selection = gtk_tree_view_get_selection(treeview);
treestore = gtk_tree_store_new(6, G_TYPE_STRING, G_TYPE_STRING,
G_TYPE_STRING, G_TYPE_STRING,
GtkTreeSelection *selection;
g_debug("bind_subtitle_tree_model()\n");
- treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
selection = gtk_tree_view_get_selection(treeview);
treestore = gtk_tree_store_new(6, G_TYPE_STRING, G_TYPE_STRING,
G_TYPE_STRING, G_TYPE_STRING,
type = G_OBJECT_TYPE(widget);
name = ghb_get_setting_key(widget);
- g_debug("ghb_widget_value widget (%s)\n", name);
if (type == GTK_TYPE_ENTRY)
{
const gchar *str = gtk_entry_get_text(GTK_ENTRY(widget));
}
else if (type == GTK_TYPE_RADIO_BUTTON)
{
- g_debug("\tradio_button");
gboolean bval;
bval = gtk_toggle_button_get_inconsistent(GTK_TOGGLE_BUTTON(widget));
if (bval)
}
else if (type == GTK_TYPE_CHECK_BUTTON)
{
- g_debug("\tcheck_button");
gboolean bval;
bval = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
value = ghb_boolean_value_new(bval);
}
else if (type == GTK_TYPE_TOGGLE_TOOL_BUTTON)
{
- g_debug("\ttoggle_tool_button");
gboolean bval;
bval = gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget));
value = ghb_boolean_value_new(bval);
}
else if (type == GTK_TYPE_TOGGLE_BUTTON)
{
- g_debug("\ttoggle_button");
gboolean bval;
bval = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
value = ghb_boolean_value_new(bval);
}
else if (type == GTK_TYPE_CHECK_MENU_ITEM)
{
- g_debug("\tcheck_menu_item");
gboolean bval;
bval = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget));
value = ghb_boolean_value_new(bval);
}
else if (type == GTK_TYPE_COMBO_BOX)
{
- g_debug("\tcombo_box");
GtkTreeModel *store;
GtkTreeIter iter;
gchar *shortOpt;
}
else
{
- g_debug("Attempt to set unknown widget type: %s\n", name);
+ g_warning("Attempt to set unknown widget type: %s\n", name);
g_free(value);
value = NULL;
}
ghb_update_widget(GtkWidget *widget, const GValue *value)
{
GType type;
- gchar *str;
+ gchar *str, *tmp;
gint ival;
gdouble dval;
- g_debug("ghb_update_widget");
+ char *name = ghb_get_setting_key(widget);
type = G_VALUE_TYPE(value);
if (type == ghb_array_get_type() || type == ghb_dict_get_type())
return;
if (value == NULL) return;
- str = ghb_value_string(value);
+ str = tmp = ghb_value_string(value);
ival = ghb_value_int(value);
dval = ghb_value_double(value);
type = G_OBJECT_TYPE(widget);
+ if (str == NULL)
+ str = "";
+
if (type == GTK_TYPE_ENTRY)
{
- g_debug("entry");
gtk_entry_set_text((GtkEntry*)widget, str);
}
else if (type == GTK_TYPE_RADIO_BUTTON)
{
- g_debug("radio button");
if (ival)
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), !!ival);
}
else if (type == GTK_TYPE_CHECK_BUTTON)
{
- g_debug("check button");
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), ival);
}
else if (type == GTK_TYPE_TOGGLE_TOOL_BUTTON)
{
- g_debug("toggle button");
gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(widget), ival);
}
else if (type == GTK_TYPE_TOGGLE_BUTTON)
{
- g_debug("toggle button");
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), ival);
}
else if (type == GTK_TYPE_CHECK_MENU_ITEM)
{
- g_debug("check menu item");
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), ival);
}
else if (type == GTK_TYPE_COMBO_BOX)
gdouble ivalue;
gboolean foundit = FALSE;
- g_debug("combo (%s)", str);
store = gtk_combo_box_get_model(GTK_COMBO_BOX(widget));
if (gtk_tree_model_get_iter_first (store, &iter))
{
}
else if (type == GTK_TYPE_SPIN_BUTTON)
{
- g_debug("spin (%s)", str);
gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget), dval);
}
else if (type == GTK_TYPE_SCALE)
{
- 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);
GtkTextBuffer *buffer = gtk_text_view_get_buffer(
GTK_TEXT_VIEW(widget));
gtk_text_buffer_set_text (buffer, str, -1);
}
else
{
- g_debug("Attempt to set unknown widget type");
+ g_warning("Attempt to set unknown widget type %s", name);
}
- g_free(str);
+ g_free(tmp);
}
int
GtkTreeModel *tm;
GtkTreeIter ti;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
tm = gtk_tree_view_get_model(tv);
tm_count = gtk_tree_model_iter_n_children(tm, NULL);
gint row = -1;
g_debug("ghb_selected_subtitle_row ()");
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
ts = gtk_tree_view_get_selection(tv);
if (gtk_tree_selection_get_selected(ts, &tm, &iter))
{
const GValue *subtitle_list;
g_debug("get_selected_settings ()");
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
ts = gtk_tree_view_get_selection(tv);
if (gtk_tree_selection_get_selected(ts, &tm, &iter))
{
const GValue *subtitle_list;
g_debug("subtitle_list_refresh_selected()");
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
ts = gtk_tree_view_get_selection(tv);
if (gtk_tree_selection_get_selected(ts, &tm, &ti))
{
GtkTreeStore *ts;
GtkTreeSelection *tsel;
- tv = GTK_TREE_VIEW(GHB_WIDGET(builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(builder, "subtitle_list_view"));
ts = GTK_TREE_STORE(gtk_tree_view_get_model(tv));
// Clear tree selection so that updates are not triggered
// that cause a recursive attempt to clear the tree selection (crasher)
GtkTreeModel *tm;
GtkTreeSelection *ts;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
ts = gtk_tree_view_get_selection(tv);
tm = gtk_tree_view_get_model(tv);
GtkTreeSelection *ts;
GtkTreeIter ti;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
ts = gtk_tree_view_get_selection(tv);
tm = gtk_tree_view_get_model(tv);
tp = gtk_tree_path_new_from_string (path);
gint *indices;
GValue *subtitle_list;
- tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list"));
+ tv = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "subtitle_list_view"));
ts = gtk_tree_view_get_selection(tv);
tm = gtk_tree_view_get_model(tv);
tp = gtk_tree_path_new_from_string (path);
static GValue gval = {0,};
if (!G_IS_VALUE(&gval))
g_value_init(&gval, G_TYPE_STRING);
- if (str == NULL)
- {
- g_value_set_string(&gval, "");
- }
- else
- {
- g_value_set_string(&gval, str);
- }
+ g_value_set_string(&gval, str);
return &gval;
}
GValue*
ghb_string_value_new(const gchar *str)
{
- if (str == NULL) str = "";
GValue *gval = ghb_value_new(G_TYPE_STRING);
g_value_set_string(gval, str);
return gval;
gchar *end;
const gchar *str = g_value_get_string(sval);
- gint val = g_strtod(str, &end);
- if (*end)
- val = (guint)(~0)>>1;
+ gint val = 0;
+ if (str != NULL)
+ {
+ val = g_strtod(str, &end);
+ if (*end)
+ val = (guint)(~0)>>1;
+ }
g_value_set_int(ival, val);
}
{
gchar *end;
const gchar *str = g_value_get_string(sval);
- gint64 val = g_strtod(str, &end);
- if (*end)
- val = (guint64)(~0L)>>1;
+ gint64 val = 0;
+ if (str != NULL)
+ {
+ val = g_strtod(str, &end);
+ if (*end)
+ val = (guint64)(~0L)>>1;
+ }
g_value_set_int64(ival, val);
}
xform_string_double(const GValue *sval, GValue *dval)
{
const gchar *str = g_value_get_string(sval);
- double val = g_strtod(str, NULL);
+ double val = 0.0;
+ if (str != NULL)
+ val = g_strtod(str, NULL);
g_value_set_double(dval, val);
}