audrey/src/ui/play_queue.blp

48 lines
1 KiB
Text
Raw Normal View History

2024-10-10 10:12:43 +00:00
using Gtk 4.0;
2024-10-25 09:05:01 +00:00
using Adw 1;
using Gio 2.0;
2024-10-10 10:12:43 +00:00
2024-10-20 13:30:22 +00:00
template $UiPlayQueue: Box {
2024-10-20 14:15:22 +00:00
name: "play-queue";
2024-10-25 09:05:01 +00:00
Stack {
visible-child-name: bind $visible_child_name (template.playbin as <$Playbin>.play_queue as <Gio.ListStore>.n-items) as <string>;
2024-10-10 10:12:43 +00:00
2024-10-25 09:05:01 +00:00
StackPage {
name: "empty";
2024-10-19 11:29:39 +00:00
2024-10-25 09:05:01 +00:00
child: Adw.StatusPage {
icon-name: "list-remove-all";
title: "No songs queued";
};
}
2024-10-20 14:15:22 +00:00
2024-10-25 09:05:01 +00:00
StackPage {
name: "not-empty";
2024-10-19 11:29:39 +00:00
2024-10-25 09:05:01 +00:00
child: ScrolledWindow {
hexpand: true;
vscrollbar-policy: always;
hscrollbar-policy: never;
ListView view {
show-separators: true;
single-click-activate: true;
activate => $on_row_activated ();
model: NoSelection {
model: bind template.playbin as <$Playbin>.play_queue;
};
2024-10-25 09:05:01 +00:00
factory: SignalListItemFactory {
setup => $on_song_list_setup ();
bind => $on_song_list_bind ();
unbind => $on_song_list_unbind ();
};
}
2024-10-20 13:30:22 +00:00
};
2024-10-10 10:12:43 +00:00
}
}
}