diff --git a/gui/ocarina.c b/gui/ocarina.c index 28b4cc84..2ae6ea91 100644 --- a/gui/ocarina.c +++ b/gui/ocarina.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include @@ -24,7 +23,7 @@ const static gchar *OCARINA_NAME = "org.gtk.ocarina-debug"; struct core_init_data init_data = { &playlist_ops, - &tempq_ops, + NULL, &audio_ops, }; diff --git a/gui/queue.c b/gui/queue.c index 9dbc1718..405b919d 100644 --- a/gui/queue.c +++ b/gui/queue.c @@ -56,13 +56,6 @@ void __queue_repeat(GtkToggleButton *button, gpointer data) Q_REPEAT); } -void __queue_disabled(GtkSwitch *enabled, GParamSpec *pspec, gpointer data) -{ - __queue_toggle_flag(gtk_switch_get_active(enabled), - gui_builder_widget("o_treeview"), - Q_ENABLED); -} - static gboolean __queue_visible_func(GtkTreeModel *model, GtkTreeIter *iter, gpointer data) { @@ -169,31 +162,26 @@ void gui_queue_free(struct queue *queue) void gui_queue_show(struct gui_queue *queue) { - GtkTreeView *view = GTK_TREE_VIEW(gui_builder_widget("o_treeview")); GtkButton *random = GTK_BUTTON(gui_builder_widget("o_random")); GtkButton *repeat = GTK_BUTTON(gui_builder_widget("o_repeat")); - GtkSwitch *enabled = GTK_SWITCH(gui_builder_widget("o_enable")); GtkEntry *search = GTK_ENTRY(gui_builder_widget("o_search")); - bool has_random = false, has_repeat = false, is_enabled = false;; + bool has_random = false, has_repeat = false; gchar *text; gq_queue = queue; gtk_widget_set_sensitive(GTK_WIDGET(random), gui_queue_can_random(queue)); gtk_widget_set_sensitive(GTK_WIDGET(repeat), gui_queue_can_repeat(queue)); - gtk_widget_set_sensitive(GTK_WIDGET(enabled), gui_queue_can_disable(queue)); if (queue) { has_random = queue_has_flag(queue->gq_queue, Q_RANDOM); has_repeat = queue_has_flag(queue->gq_queue, Q_REPEAT); - is_enabled = queue_has_flag(queue->gq_queue, Q_ENABLED); gui_view_set_queue(queue->gq_queue); } else gui_view_set_queue(NULL); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(random), has_random); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(repeat), has_repeat); - gtk_switch_set_active(GTK_SWITCH(enabled), is_enabled); /* * Some GTK themes have trouble with toggle buttons, @@ -201,7 +189,6 @@ void gui_queue_show(struct gui_queue *queue) */ gtk_widget_set_sensitive(gtk_button_get_image(random), has_random); gtk_widget_set_sensitive(gtk_button_get_image(repeat), has_repeat); - gtk_widget_set_sensitive(GTK_WIDGET(view), is_enabled); gtk_widget_set_sensitive(GTK_WIDGET(search), queue != NULL); diff --git a/gui/tempq.c b/gui/tempq.c deleted file mode 100644 index 424e7312..00000000 --- a/gui/tempq.c +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2016 (c) Anna Schumaker. - */ -#include -#include -#include - -#define TEMPQ_FLAGS (GQ_CAN_RANDOM | GQ_CAN_REPEAT | GQ_CAN_DISABLE) - -static void *__tempq_init(struct queue *queue, void *data) -{ - return gui_queue_alloc(NULL, queue, "Queued Tracks", TEMPQ_FLAGS); -} - -static void __tempq_deinit(struct queue *queue) -{ - gui_queue_free(queue); -} - -static void __tempq_added(struct queue *queue, unsigned int pos) -{ - gui_queue_model_add(queue, pos); - tempq_save(queue, Q_ENABLED); -} - -static bool __tempq_erase(struct queue *queue, struct track *track) -{ - return true; -} - -static void __tempq_removed(struct queue *queue, unsigned int pos) -{ - gui_queue_model_remove(queue, pos); - tempq_save(queue, Q_ENABLED); -} - -static void __tempq_cleared(struct queue *queue, unsigned int n) -{ - gui_queue_model_clear(queue, n); -} - -struct queue_ops tempq_ops = { - .qop_init = __tempq_init, - .qop_deinit = __tempq_deinit, - .qop_added = __tempq_added, - .qop_erase = __tempq_erase, - .qop_removed = __tempq_removed, - .qop_cleared = __tempq_cleared, - .qop_save = tempq_save, - .qop_updated = gui_queue_model_update, -}; diff --git a/gui/view.c b/gui/view.c index 2b472aad..1245d613 100644 --- a/gui/view.c +++ b/gui/view.c @@ -4,7 +4,6 @@ #include #include #include -#include #include #include #include @@ -175,12 +174,6 @@ void __view_column_clicked(GtkTreeViewColumn *col, gpointer data) g_timeout_add_seconds(3, __view_dec_sort, NULL); } -static void __view_add_to_queue(GtkTreeModel *model, GtkTreePath *path, - GtkTreeIter *iter, gpointer data) -{ - queue_add(data, __view_filter_get_track(path)); -} - static void __view_add_to_playlist(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { @@ -204,17 +197,8 @@ static void __view_delete_selection(GtkTreeSelection *selection) static void __view_process_selection(GtkTreeView *treeview, unsigned int keyval) { GtkTreeSelection *selection = gtk_tree_view_get_selection(treeview); - struct queue *queue; switch (keyval) { - case GDK_KEY_KP_0 ... GDK_KEY_KP_9: - keyval = (keyval - GDK_KEY_KP_0) + GDK_KEY_0; - case GDK_KEY_0 ... GDK_KEY_9: - queue = tempq_get(keyval - GDK_KEY_0); - if (queue) - gtk_tree_selection_selected_foreach(selection, - __view_add_to_queue, queue); - break; case GDK_KEY_f: gtk_tree_selection_selected_foreach(selection, __view_add_to_playlist, @@ -279,9 +263,7 @@ bool __view_button_press(GtkTreeView *treeview, GdkEventButton *event, { GtkTreeSelection *selection = gtk_tree_view_get_selection(treeview); GtkMenu *menu = GTK_MENU(gui_builder_widget("o_menu")); - unsigned int i, size = tempq_count(); GtkTreePath *path; - gchar *name; if (event->button != 3) return false; @@ -295,14 +277,6 @@ bool __view_button_press(GtkTreeView *treeview, GdkEventButton *event, } /* Determine which menu items can be shown */ - gtk_widget_set_visible(gui_builder_widget("o_new_queue"), size < 10); - gtk_widget_set_visible(gui_builder_widget("o_add_to_queue"), size > 0); - for (i = 0; i < 10; i++) { - name = g_strdup_printf("o_queue_%d", i); - gtk_widget_set_visible(gui_builder_widget(name), i < size); - g_free(name); - } - gtk_menu_popup(menu, NULL, NULL, NULL, NULL, event->button, event->time); return true; } diff --git a/include/gui/tempq.h b/include/gui/tempq.h deleted file mode 100644 index 6675e11d..00000000 --- a/include/gui/tempq.h +++ /dev/null @@ -1,10 +0,0 @@ -/* - * Copyright 2016 (c) Anna Schumaker. - */ -#ifndef OCARINA_GUI_TEMPQ_H -#define OCARINA_GUI_TEMPQ_H - -/* Temporary queue operations passed to core_init() */ -extern struct queue_ops tempq_ops; - -#endif /* OCARINA_GUI_TEMPQ_H */ diff --git a/share/ocarina/ocarina6.glade b/share/ocarina/ocarina6.glade index 49c42d18..71b97edc 100644 --- a/share/ocarina/ocarina6.glade +++ b/share/ocarina/ocarina6.glade @@ -9,18 +9,6 @@ 10 media-playlist-repeat - - True - False - document-new - 1 - - - True - False - list-add - 1 - True False @@ -42,121 +30,6 @@ True False - - - New Queue - True - False - image12 - False - - - - - - Add to Queue - True - False - image13 - False - - - True - False - - - True - False - Queue 0 - True - - - - - - True - False - Queue 1 - True - - - - - - True - False - Queue 2 - True - - - - - - True - False - Queue 3 - True - - - - - - True - False - Queue 4 - True - - - - - - True - False - Queue 5 - True - - - - - - True - False - Queue 6 - True - - - - - - True - False - Queue 7 - True - - - - - - True - False - Queue 8 - True - - - - - - True - False - Queue 9 - True - - - - - - - Add to Playlist @@ -961,21 +834,6 @@ 1 - - - True - True - center - 8 - True - - - - False - True - 2 - - 0 @@ -1233,10 +1091,9 @@ + - - @@ -1245,7 +1102,6 @@ - diff --git a/tests/gui/queue.c b/tests/gui/queue.c index edd0953b..99441b45 100644 --- a/tests/gui/queue.c +++ b/tests/gui/queue.c @@ -35,22 +35,18 @@ static void test_queue() { GtkToggleButton *random, *repeat; GtkWidget *random_img, *repeat_img; - GtkTreeView *treeview; struct gui_queue *gq; - GtkSwitch *enable; GtkEntry *search; struct queue q; search = GTK_ENTRY(gui_builder_widget("o_search")); - enable = GTK_SWITCH(gui_builder_widget("o_enable")); random = GTK_TOGGLE_BUTTON(gui_builder_widget("o_random")); repeat = GTK_TOGGLE_BUTTON(gui_builder_widget("o_repeat")); random_img = gtk_button_get_image(GTK_BUTTON(random)); repeat_img = gtk_button_get_image(GTK_BUTTON(repeat)); - treeview = GTK_TREE_VIEW(gui_builder_widget("o_treeview")); /* Test initialization */ - queue_init(&q, 0, &test_ops, NULL); + queue_init(&q, Q_ENABLED, &test_ops, NULL); gq = gui_queue(&q); g_assert_true(gui_queue_can_random(gq)); @@ -64,15 +60,12 @@ static void test_queue() gtk_entry_set_text(search, "Test text"); - /* Show a queue where random, repeat, and switch are disabled */ + /* Show a queue where random and repeat are disabled */ gui_queue_show(gq); g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(random))); g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(repeat))); - g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(enable))); - g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(treeview))); g_assert_false(gtk_toggle_button_get_active(random)); g_assert_false(gtk_toggle_button_get_active(repeat)); - g_assert_false(gtk_switch_get_active(enable)); g_assert_false(gtk_widget_get_sensitive(random_img)); g_assert_false(gtk_widget_get_sensitive(repeat_img)); g_assert_cmpstr(gtk_entry_get_text(search), ==, ""); @@ -95,26 +88,14 @@ static void test_queue() g_assert_false(gtk_widget_get_sensitive(repeat_img)); g_assert_false(queue_has_flag(&q, Q_REPEAT)); - /* Test clicking enabled switch. */ - gtk_switch_set_active(enable, true); - g_assert_true(gtk_widget_get_sensitive(GTK_WIDGET(treeview))); - g_assert_true(queue_has_flag(&q, Q_ENABLED)); - - gtk_switch_set_active(enable, false); - g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(treeview))); - g_assert_false(queue_has_flag(&q, Q_ENABLED)); - - /* Show a queue where random, repeat, and switch are enabled */ + /* Show a queue where random and repeat are enabled */ gq->gq_flags = GQ_CAN_RANDOM | GQ_CAN_REPEAT | GQ_CAN_DISABLE; q.q_flags = Q_RANDOM | Q_REPEAT | Q_ENABLED; gui_queue_show(gq); g_assert_true(gtk_widget_get_sensitive(GTK_WIDGET(random))); g_assert_true(gtk_widget_get_sensitive(GTK_WIDGET(repeat))); - g_assert_true(gtk_widget_get_sensitive(GTK_WIDGET(enable))); - g_assert_true(gtk_widget_get_sensitive(GTK_WIDGET(treeview))); g_assert_true(gtk_toggle_button_get_active(random)); g_assert_true(gtk_toggle_button_get_active(repeat)); - g_assert_true(gtk_switch_get_active(enable)); g_assert_true(gtk_widget_get_sensitive(random_img)); g_assert_true(gtk_widget_get_sensitive(repeat_img)); @@ -123,11 +104,8 @@ static void test_queue() g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(search))); g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(random))); g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(repeat))); - g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(enable))); - g_assert_false(gtk_widget_get_sensitive(GTK_WIDGET(treeview))); g_assert_false(gtk_toggle_button_get_active(random)); g_assert_false(gtk_toggle_button_get_active(repeat)); - g_assert_false(gtk_switch_get_active(enable)); g_assert_false(gtk_widget_get_sensitive(random_img)); g_assert_false(gtk_widget_get_sensitive(repeat_img));