From 1e995757fdfde4d05b95d4dc1404888faae249b1 Mon Sep 17 00:00:00 2001 From: Qball Cow Date: Tue, 18 Oct 2011 23:11:52 +0200 Subject: [PATCH] Move sidebar state to sidebar code. --- src/playlist3.c | 13 ++----------- src/vala/gmpc-sidebar-plugins.vala | 12 ++++++++++++ 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/playlist3.c b/src/playlist3.c index 73b44b12..05672f67 100644 --- a/src/playlist3.c +++ b/src/playlist3.c @@ -343,15 +343,6 @@ void pl3_sidebar_plugins_init(void) } } } -static void pl3_sidebar_plugins_set_state(GmpcPluginSidebarState state) -{ - int i; - for (i = 0; i < num_plugins; i++) - { - gmpc_plugin_sidebar_set_state(plugins[i],state); - } - -} /********************************************************** * MISC @@ -1485,7 +1476,7 @@ static void playlist_zoom_level_changed(void) /* restore pane position */ g_object_set(sidebar_text, "show_text", TRUE, NULL); gtk_widget_set_size_request(GTK_WIDGET(gtk_builder_get_object(pl3_xml,"sidebar")), 150,-1); - pl3_sidebar_plugins_set_state(GMPC_PLUGIN_SIDEBAR_STATE_FULL); + gmpc_sidebar_plugins_update_state(GMPC_PLUGIN_SIDEBAR_STATE_FULL); } /* Now start hiding */ @@ -1518,7 +1509,7 @@ static void playlist_zoom_level_changed(void) if(st_shown) { g_object_set(sidebar_text, "show_text", FALSE, NULL); gtk_widget_set_size_request(GTK_WIDGET(gtk_builder_get_object(pl3_xml,"sidebar")), 32,-1); - pl3_sidebar_plugins_set_state(GMPC_PLUGIN_SIDEBAR_STATE_COLLAPSED); + gmpc_sidebar_plugins_update_state(GMPC_PLUGIN_SIDEBAR_STATE_COLLAPSED); } gtk_widget_grab_focus(pl3_win); default: diff --git a/src/vala/gmpc-sidebar-plugins.vala b/src/vala/gmpc-sidebar-plugins.vala index b2017ce9..5b420a4c 100644 --- a/src/vala/gmpc-sidebar-plugins.vala +++ b/src/vala/gmpc-sidebar-plugins.vala @@ -164,6 +164,18 @@ public class Gmpc.Sidebar.Plugins { store.set(iter, 0, false, -1); destroy(iter); } + public static void update_state(Gmpc.Plugin.SidebarState state) + { + TreeIter iter; + if(store.get_iter_first(out iter)) + { + do{ + SidebarIface pl; + store.get(iter, 3, out pl, -1); + pl.sidebar_set_state(state); + }while(store.iter_next(ref iter)); + } + } public static void init(SidebarIface plugin) { -- 2.11.4.GIT