From 4f582cebe81de9b3b2d6e196e2ac0dcfb1f69904 Mon Sep 17 00:00:00 2001 From: QC Date: Sun, 24 Mar 2013 11:05:53 +0100 Subject: [PATCH] Use new DataView in now-playing for testing. --- src/Widgets/gmpc-data-view.vala | 63 ++++++++++++++++++++++---------------- src/browsers/gmpc-nowplaying2.vala | 26 +++++----------- 2 files changed, 45 insertions(+), 44 deletions(-) diff --git a/src/Widgets/gmpc-data-view.vala b/src/Widgets/gmpc-data-view.vala index 771aca6d..64042914 100644 --- a/src/Widgets/gmpc-data-view.vala +++ b/src/Widgets/gmpc-data-view.vala @@ -304,6 +304,36 @@ public class Gmpc.DataView : Gtk.TreeView /** * Handle keyboard input. */ + private bool __key_release_event_callback_play_queue(Gdk.EventKey event) + { + if (event.keyval == Gdk.Key_Q) + { + // remove priority. + return selected_songs_remove_priority(); + } + else if (event.keyval == Gdk.Key_q) + { + // Raise priority. + return selected_songs_raise_priority(); + } + else if (event.keyval == Gdk.Key_d) + { + if(!selected_songs_remove()) + { + // Detach model (for some reason keeping it attached + // Makes thing break, work-around for now) + // TODO: fixme + var model = get_model(); + this.model = null; + // Clear + MPD.PlayQueue.clear(server); + // Re-add model + this.model = model; + return true; + } + } + return false; + } private bool __key_release_event_callback(Gdk.EventKey event) { if(event.keyval == Gdk.Key_y) @@ -327,36 +357,17 @@ public class Gmpc.DataView : Gtk.TreeView { } + else if (event.keyval == Gdk.Key_m) + { + // Configure columns + column_show_selection_menu(); + return true; + } // Commands specific to play_queue if(is_play_queue) { - if (event.keyval == Gdk.Key_Q) - { - // remove priority. - return selected_songs_remove_priority(); - } - else if (event.keyval == Gdk.Key_q) - { - // Raise priority. - return selected_songs_raise_priority(); - } - else if (event.keyval == Gdk.Key_d) - { - if(!selected_songs_remove()) - { - // Detach model (for some reason keeping it attached - // Makes thing break, work-around for now) - // TODO: fixme - var model = get_model(); - this.model = null; - // Clear - MPD.PlayQueue.clear(server); - // Re-add model - this.model = model; - return true; - } - } + if(__key_release_event_callback_play_queue(event)) return true; } else { diff --git a/src/browsers/gmpc-nowplaying2.vala b/src/browsers/gmpc-nowplaying2.vala index 4877adfa..62cafe09 100644 --- a/src/browsers/gmpc-nowplaying2.vala +++ b/src/browsers/gmpc-nowplaying2.vala @@ -900,22 +900,10 @@ namespace Gmpc hboxje.pack_start(button, false, false, 0); hboxje.pack_start(label, true, true, 0); var j = i; - var sl = new Gmpc.Widgets.Songlist(); + var sl = new Gmpc.DataView("now-playing-song-from-album"); + var sl_model = new Gmpc.MpdData.Model(); + sl.set_model(sl_model); - sl.song_clicked.connect((source, song) => - { - if(song.file != null) - { - Gmpc.MpdInteraction.play_path(song.file); - } - }); - sl.play_song_clicked.connect((source, song) => - { - if(song.file != null) - { - Gmpc.MpdInteraction.play_path(song.file); - } - }); alib.add(sl); button.clicked.connect((source) => { @@ -941,8 +929,9 @@ namespace Gmpc MPD.Database.search_add_constraint(server, MPD.Tag.Type.ALBUM, song.album); var data = MPD.Database.search_commit(server); data.sort_album_disc_track(); - sl.set_from_data((owned)data, true); - this.change_color_style(sl); + sl_model.set_mpd_data((owned)data); +// sl.set_from_data((owned)data, true); + // this.change_color_style(sl); } else { @@ -962,7 +951,8 @@ namespace Gmpc MPD.Database.search_add_constraint(server, MPD.Tag.Type.ALBUM, song.album); var data = MPD.Database.search_commit(server); data.sort_album_disc_track(); - sl.set_from_data((owned)data, true); + sl_model.set_mpd_data((owned)data); + //sl.set_from_data((owned)data, true); } else { -- 2.11.4.GIT