From 048c2d9b9c4a5837203cb7a7dfb20799c054802e Mon Sep 17 00:00:00 2001 From: asiviero Date: Tue, 14 Jan 2014 03:30:52 -0200 Subject: [PATCH] Modified queue to store tracks to skip --- src/playlist/playlist.cpp | 5 +++-- src/playlist/queue.cpp | 31 +++++++++++++++++++++++++++++++ src/playlist/queue.h | 4 ++++ 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/src/playlist/playlist.cpp b/src/playlist/playlist.cpp index ea07cca42..461baf11b 100644 --- a/src/playlist/playlist.cpp +++ b/src/playlist/playlist.cpp @@ -442,8 +442,9 @@ int Playlist::NextVirtualIndex(int i, bool ignore_repeat_track) const { ++i; // Advance i until we find any track that is in the filter - while (i < virtual_items_.count() && !FilterContainsVirtualIndex(i)) - ++i; + while ((i < virtual_items_.count() && !FilterContainsVirtualIndex(i)) || queue_->SkipSourceRow(i)) { + ++i; + } return i; } diff --git a/src/playlist/queue.cpp b/src/playlist/queue.cpp index 691402dd2..5b160e34b 100644 --- a/src/playlist/queue.cpp +++ b/src/playlist/queue.cpp @@ -48,6 +48,17 @@ bool Queue::ContainsSourceRow(int source_row) const { return false; } +bool Queue::SkipSourceRow(int source_row) const { + qDebug() << "Entrou aqui"; + qDebug() << source_row; + for (int i=0 ; i& proxy_rows, int pos); void MoveUp(int row); @@ -69,6 +71,8 @@ private slots: private: QList source_indexes_; + QList skipped_indexes_; + }; #endif // QUEUE_H