ocarina: Improve right click menu
I can now create new playlists at either the front or back of the playlist deck. Signed-off-by: Bryan Schumaker <bjschuma@gmail.com>
This commit is contained in:
parent
97427af922
commit
900cac7e45
|
@ -28,12 +28,22 @@ static void new_playlist(ocarina::Playlist *plist, PlaylistType type, bool front
|
|||
plist->on_show();
|
||||
}
|
||||
|
||||
static void new_queue(GtkMenuItem *menu, gpointer data)
|
||||
static void new_queue_front(GtkMenuItem *menu, gpointer data)
|
||||
{
|
||||
new_playlist((ocarina::Playlist *)data, PLIST_QUEUE, true);
|
||||
}
|
||||
|
||||
static void new_queue_back(GtkMenuItem *menu, gpointer data)
|
||||
{
|
||||
new_playlist((ocarina::Playlist *)data, PLIST_QUEUE, false);
|
||||
}
|
||||
|
||||
static void new_set(GtkMenuItem *menu, gpointer data)
|
||||
static void new_set_front(GtkMenuItem *menu, gpointer data)
|
||||
{
|
||||
new_playlist((ocarina::Playlist *)data, PLIST_SET, true);
|
||||
}
|
||||
|
||||
static void new_set_back(GtkMenuItem *menu, gpointer data)
|
||||
{
|
||||
new_playlist((ocarina::Playlist *)data, PLIST_SET, false);
|
||||
}
|
||||
|
@ -102,12 +112,18 @@ namespace ocarina
|
|||
|
||||
void Playlist::right_click(guint button, guint64 time)
|
||||
{
|
||||
GtkWidget *menu = gtk_menu_new();
|
||||
GtkWidget *queue = menu_item("Add to new queue", new_queue, this);
|
||||
GtkWidget *set = menu_item("Add to new set", new_set, this);
|
||||
GtkWidget *menu = gtk_menu_new();
|
||||
GtkWidget *queue1 = menu_item("New queue (front)", new_queue_front, this);
|
||||
GtkWidget *set1 = menu_item("New set (front)", new_set_front, this);
|
||||
GtkWidget *sep = gtk_separator_menu_item_new();
|
||||
GtkWidget *queue2 = menu_item("New queue (back)", new_queue_back, this);
|
||||
GtkWidget *set2 = menu_item("New set (back)", new_set_back, this);
|
||||
|
||||
gtk_menu_append(GTK_MENU(menu), queue);
|
||||
gtk_menu_append(GTK_MENU(menu), set);
|
||||
gtk_menu_append(GTK_MENU(menu), queue1);
|
||||
gtk_menu_append(GTK_MENU(menu), set1);
|
||||
gtk_menu_append(GTK_MENU(menu), sep);
|
||||
gtk_menu_append(GTK_MENU(menu), queue2);
|
||||
gtk_menu_append(GTK_MENU(menu), set2);
|
||||
|
||||
gtk_widget_show_all(menu);
|
||||
gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, button, time);
|
||||
|
|
Loading…
Reference in New Issue