Mercurial > audlegacy
diff src/audacious/ui_preferences.c @ 3442:b0f4ab42dd3b trunk
Rework configuration and about calls.
- ui_preferences.c: use plugin->about() and plugin->configure() directly.
- discovery.[ch], effect.[ch], general.[ch], input.[ch], visualization.[ch]: remove _configure() and _about() functions.
author | William Pitcock <nenolod@atheme.org> |
---|---|
date | Fri, 07 Sep 2007 07:23:00 -0500 |
parents | bd1a68dc9ebb |
children | f8880f2e0501 e235357029ba |
line wrap: on
line diff
--- a/src/audacious/ui_preferences.c Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/ui_preferences.c Fri Sep 07 07:23:00 2007 -0500 @@ -875,27 +875,16 @@ GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; - gint id; + Plugin *plugin = NULL; selection = gtk_tree_view_get_selection(treeview); if (!gtk_tree_selection_get_selected(selection, &model, &iter)) return; - gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_ID, &id, -1); + gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); - switch(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(treeview), "plugin_type"))) { - case PLUGIN_VIEW_TYPE_INPUT: - input_configure(id); - break; - case PLUGIN_VIEW_TYPE_GENERAL: - general_configure(id); - break; - case PLUGIN_VIEW_TYPE_VIS: - vis_configure(id); - break; - case PLUGIN_VIEW_TYPE_EFFECT: - effect_configure(id); - break; - } + g_return_if_fail(plugin != NULL); + + plugin->configure(); } static void @@ -904,27 +893,16 @@ GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; - gint id; + Plugin *plugin = NULL; selection = gtk_tree_view_get_selection(treeview); if (!gtk_tree_selection_get_selected(selection, &model, &iter)) return; - gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_ID, &id, -1); + gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); - switch(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(treeview), "plugin_type"))) { - case PLUGIN_VIEW_TYPE_INPUT: - input_about(id); - break; - case PLUGIN_VIEW_TYPE_GENERAL: - general_about(id); - break; - case PLUGIN_VIEW_TYPE_VIS: - vis_about(id); - break; - case PLUGIN_VIEW_TYPE_EFFECT: - effect_about(id); - break; - } + g_return_if_fail(plugin != NULL); + + plugin->about(); } static void @@ -933,36 +911,17 @@ GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; - - GList *plist; - gint id; + Plugin *plugin = NULL; selection = gtk_tree_view_get_selection(treeview); if (!gtk_tree_selection_get_selected(selection, &model, &iter)) return; - gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_ID, &id, -1); + gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); - switch(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(treeview), "plugin_type"))) { - case PLUGIN_VIEW_TYPE_INPUT: - plist = get_input_list(); - break; - case PLUGIN_VIEW_TYPE_GENERAL: - plist = get_general_list(); - break; - case PLUGIN_VIEW_TYPE_VIS: - plist = get_vis_list(); - break; - case PLUGIN_VIEW_TYPE_EFFECT: - plist = get_effect_list(); - break; - default: - return; - } - plist = g_list_nth(plist, id); + g_return_if_fail(plugin != NULL); - gtk_widget_set_sensitive(GTK_WIDGET(button), - INPUT_PLUGIN(plist->data)->configure != NULL); + gtk_widget_set_sensitive(GTK_WIDGET(button), plugin->configure != NULL); } static void @@ -971,35 +930,17 @@ GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; - GList *plist; - gint id; + Plugin *plugin = NULL; selection = gtk_tree_view_get_selection(treeview); if (!gtk_tree_selection_get_selected(selection, &model, &iter)) return; - gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_ID, &id, -1); + gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); - switch(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(treeview), "plugin_type"))) { - case PLUGIN_VIEW_TYPE_INPUT: - plist = get_input_list(); - break; - case PLUGIN_VIEW_TYPE_GENERAL: - plist = get_general_list(); - break; - case PLUGIN_VIEW_TYPE_VIS: - plist = get_vis_list(); - break; - case PLUGIN_VIEW_TYPE_EFFECT: - plist = get_effect_list(); - break; - default: - return; - } - plist = g_list_nth(plist, id); + g_return_if_fail(plugin != NULL); - gtk_widget_set_sensitive(GTK_WIDGET(button), - INPUT_PLUGIN(plist->data)->about != NULL); + gtk_widget_set_sensitive(GTK_WIDGET(button), plugin->about != NULL); }