From c1c197acb5923696518c6690056b01ca980122b1 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Thu, 25 Aug 2016 07:50:16 -0400 Subject: [PATCH] gui/sidebar: Add a function for getting the sidebar filter model And rename the model from "o_playlist_filter" to "sidebar_filter" Signed-off-by: Anna Schumaker --- gui/playlist.c | 13 ++++++------- include/gui/sidebar.h | 6 ++++++ share/ocarina/ocarina.ui | 4 ++-- tests/gui/playlist.c | 4 +--- tests/gui/sidebar.c | 3 +++ 5 files changed, 18 insertions(+), 12 deletions(-) diff --git a/gui/playlist.c b/gui/playlist.c index 8ddda531..d95a1f6b 100644 --- a/gui/playlist.c +++ b/gui/playlist.c @@ -24,9 +24,8 @@ static void __playlist_update_sizes(struct queue *); static inline void __playlist_filter_get_iter(GtkTreeIter *iter, GtkTreeIter *child) { - gtk_tree_model_filter_convert_iter_to_child_iter( - GTK_TREE_MODEL_FILTER(gui_builder_object("o_playlist_filter")), - child, iter); + gtk_tree_model_filter_convert_iter_to_child_iter(gui_sidebar_filter(), + child, iter); } static inline enum playlist_type_t __playlist_type(GtkTreeIter *iter) { @@ -167,7 +166,7 @@ void __playlist_row_activated(GtkTreeView *treeview, GtkTreePath *path, type = settings_get("core.playlist.cur.type"); id = settings_get("core.playlist.cur.id"); - model = GTK_TREE_MODEL(gui_builder_object("o_playlist_filter")); + model = GTK_TREE_MODEL(gui_sidebar_filter()); gtk_tree_model_get_iter(model, &iter, path); __playlist_filter_get_iter(&iter, &child); @@ -234,7 +233,7 @@ static void __playlist_update_sizes(struct queue *queue) } while (gtk_tree_model_iter_next(gui_sidebar_model(), &parent)); out: - filter = GTK_TREE_MODEL_FILTER(gui_builder_object("o_playlist_filter")); + filter = gui_sidebar_filter(); gtk_tree_model_filter_refilter(filter); } @@ -314,7 +313,7 @@ bool __gui_playlist_init_idle() GtkTreeModel *filter; GtkTreeIter iter; - filter = GTK_TREE_MODEL(gui_builder_object("o_playlist_filter")); + filter = GTK_TREE_MODEL(gui_sidebar_filter()); treeview = GTK_TREE_VIEW(gui_builder_widget("o_playlist_view")); selection = gtk_tree_view_get_selection(treeview); gtk_tree_model_get_iter_first(filter, &iter); @@ -339,7 +338,7 @@ void gui_playlist_init() GtkTreeView *treeview; GtkTreeIter parent; - filter = GTK_TREE_MODEL_FILTER(gui_builder_object("o_playlist_filter")); + filter = gui_sidebar_filter(); treeview = GTK_TREE_VIEW(gui_builder_widget("o_playlist_view")); gtk_tree_model_filter_set_visible_func(filter, __playlist_visible_func, diff --git a/include/gui/sidebar.h b/include/gui/sidebar.h index 0dbcaa71..93937885 100644 --- a/include/gui/sidebar.h +++ b/include/gui/sidebar.h @@ -26,4 +26,10 @@ static inline GtkTreeModel *gui_sidebar_model() return GTK_TREE_MODEL(gui_builder_object("sidebar_store")); } +/* Called to get the sidebar filter model. */ +static inline GtkTreeModelFilter *gui_sidebar_filter() +{ + return GTK_TREE_MODEL_FILTER(gui_builder_object("sidebar_filter")); +} + #endif /* OCARINA_GUI_SIDEBAR_H */ diff --git a/share/ocarina/ocarina.ui b/share/ocarina/ocarina.ui index 8fb3af55..a7316157 100644 --- a/share/ocarina/ocarina.ui +++ b/share/ocarina/ocarina.ui @@ -93,7 +93,7 @@ - + sidebar_store @@ -743,7 +743,7 @@ audio-volume-medium True True - o_playlist_filter + sidebar_filter False 1 True diff --git a/tests/gui/playlist.c b/tests/gui/playlist.c index 4490ef31..0e321fe4 100644 --- a/tests/gui/playlist.c +++ b/tests/gui/playlist.c @@ -20,7 +20,6 @@ struct core_init_data init_data = { static void test_playlist_sidebar() { GtkTreeSelection *selection; - GtkTreeModelFilter *filter; GtkTreeView *treeview; GtkTreeModel *model; GtkTreePath *path; @@ -30,7 +29,6 @@ static void test_playlist_sidebar() treeview = GTK_TREE_VIEW(gui_builder_widget("o_playlist_view")); selection = gtk_tree_view_get_selection(treeview); - filter = GTK_TREE_MODEL_FILTER(gui_builder_object("o_playlist_filter")); model = gui_sidebar_model(); playlist_add(PL_SYSTEM, "Queued Tracks", track_get(0)); @@ -40,7 +38,7 @@ static void test_playlist_sidebar() playlist_new(PL_USER, "Test"); playlist_add(PL_USER, "Test", track_get(0)); - gtk_tree_model_filter_refilter(filter); + gtk_tree_model_filter_refilter(gui_sidebar_filter()); gtk_tree_view_expand_all(treeview); g_assert_true(gtk_tree_model_get_iter_first(model, &iter)); diff --git a/tests/gui/sidebar.c b/tests/gui/sidebar.c index fdef139c..7a2f0738 100644 --- a/tests/gui/sidebar.c +++ b/tests/gui/sidebar.c @@ -12,6 +12,9 @@ static void test_sidebar() g_assert_nonnull(gui_sidebar_model()); g_assert_true(GTK_IS_TREE_MODEL(gui_sidebar_model())); + + g_assert_nonnull(gui_sidebar_filter()); + g_assert_true(GTK_IS_TREE_MODEL_FILTER(gui_sidebar_filter())); } static void test_sidebar_pos()