# HG changeset patch # User William Pitcock # Date 1189167780 18000 # Node ID b0f4ab42dd3b806f24d60396841f5bf83e520ef5 # Parent bd1a68dc9ebbaf764cbd15624d49633fbf90fd1a 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. diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/discovery.c --- a/src/audacious/discovery.c Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/discovery.c Fri Sep 07 07:23:00 2007 -0500 @@ -53,29 +53,6 @@ return DISCOVERY_PLUGIN(node->data); } - -void -discovery_about(gint i) -{ - DiscoveryPlugin *plugin = get_discovery_plugin(i); - - if (!plugin || !plugin->about) - return; - - plugin->about(); -} - -void -discovery_configure(gint i) -{ - DiscoveryPlugin *plugin = get_discovery_plugin(i); - - if (!plugin || !plugin->configure) - return; - - plugin->configure(); -} - void enable_discovery_plugin(gint i, gboolean enable) { diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/discovery.h --- a/src/audacious/discovery.h Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/discovery.h Fri Sep 07 07:23:00 2007 -0500 @@ -44,8 +44,6 @@ GList *get_discovery_list(void); GList *get_discovery_enabled_list(void); void enable_discovery_plugin(gint i, gboolean enable); -void discovery_about(gint i); -void discovery_configure(gint i); gboolean discovery_enabled(gint i); gchar *discovery_stringify_enabled_list(void); void discovery_enable_from_stringified_list(const gchar * list); diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/effect.c --- a/src/audacious/effect.c Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/effect.c Fri Sep 07 07:23:00 2007 -0500 @@ -105,31 +105,6 @@ } void -effect_about(int i) -{ - EffectPlugin *effect; - GList *node = g_list_nth(ep_data.effect_list, i); - if (node) { - effect = node->data; - if (effect && effect->about) - effect->about(); - } -} - -void -effect_configure(int i) -{ - GList *node = g_list_nth(ep_data.effect_list, i); - EffectPlugin *effect; - if (node) { - effect = node->data; - if (effect && effect->configure) - effect->configure(); - } -} - - -void enable_effect_plugin(int i, gboolean enable) { GList *node = g_list_nth(ep_data.effect_list, i); diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/effect.h --- a/src/audacious/effect.h Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/effect.h Fri Sep 07 07:23:00 2007 -0500 @@ -36,8 +36,6 @@ }; GList *get_effect_list(void); -void effect_about(gint i); -void effect_configure(gint i); GList *get_effect_enabled_list(void); void enable_effect_plugin(gint i, gboolean enable); gboolean effect_enabled(gint i); diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/general.c --- a/src/audacious/general.c Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/general.c Fri Sep 07 07:23:00 2007 -0500 @@ -53,29 +53,6 @@ return GENERAL_PLUGIN(node->data); } - -void -general_about(gint i) -{ - GeneralPlugin *plugin = get_general_plugin(i); - - if (!plugin || !plugin->about) - return; - - plugin->about(); -} - -void -general_configure(gint i) -{ - GeneralPlugin *plugin = get_general_plugin(i); - - if (!plugin || !plugin->configure) - return; - - plugin->configure(); -} - void enable_general_plugin(gint i, gboolean enable) { diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/general.h --- a/src/audacious/general.h Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/general.h Fri Sep 07 07:23:00 2007 -0500 @@ -35,8 +35,6 @@ GList *get_general_list(void); GList *get_general_enabled_list(void); void enable_general_plugin(gint i, gboolean enable); -void general_about(gint i); -void general_configure(gint i); gboolean general_enabled(gint i); gchar *general_stringify_enabled_list(void); void general_enable_from_stringified_list(const gchar * list); diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/input.c --- a/src/audacious/input.c Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/input.c Fri Sep 07 07:23:00 2007 -0500 @@ -861,23 +861,3 @@ ui_skinned_playstatus_set_buffering(mainwin_playstatus, ip_data.buffering); } - -void -input_about(gint index) -{ - InputPlugin *ip; - - ip = g_list_nth(ip_data.input_list, index)->data; - if (ip && ip->about) - ip->about(); -} - -void -input_configure(gint index) -{ - InputPlugin *ip; - - ip = g_list_nth(ip_data.input_list, index)->data; - if (ip && ip->configure) - ip->configure(); -} diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/input.h --- a/src/audacious/input.h Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/input.h Fri Sep 07 07:23:00 2007 -0500 @@ -65,9 +65,6 @@ guchar *input_get_vis(gint time); void input_update_vis_plugin(gint time); -void input_about(gint index); -void input_configure(gint index); - void input_add_vis_pcm(gint time, AFormat fmt, gint nch, gint length, gpointer ptr); InputVisType input_get_vis_type(); diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/ui_preferences.c --- 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); } diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/visualization.c --- a/src/audacious/visualization.c Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/visualization.c Fri Sep 07 07:23:00 2007 -0500 @@ -63,24 +63,6 @@ } void -vis_about(gint i) -{ - GList *node = g_list_nth(vp_data.vis_list, i); - - if (node && node->data && VIS_PLUGIN(node->data)->about) - VIS_PLUGIN(node->data)->about(); -} - -void -vis_configure(gint i) -{ - GList *node = g_list_nth(vp_data.vis_list, i); - - if (node && node->data && VIS_PLUGIN(node->data)->configure) - VIS_PLUGIN(node->data)->configure(); -} - -void vis_playback_start(void) { GList *node; diff -r bd1a68dc9ebb -r b0f4ab42dd3b src/audacious/visualization.h --- a/src/audacious/visualization.h Fri Sep 07 07:12:28 2007 -0500 +++ b/src/audacious/visualization.h Fri Sep 07 07:23:00 2007 -0500 @@ -41,8 +41,6 @@ GList *get_vis_enabled_list(void); void enable_vis_plugin(gint i, gboolean enable); void vis_disable_plugin(VisPlugin * vp); -void vis_about(gint i); -void vis_configure(gint i); void vis_playback_start(void); void vis_playback_stop(void); gboolean vis_enabled(gint i);