if playlist is filtered, clear function should delete only visible items

This commit is contained in:
Andrzej Rybczak
2009-02-18 22:13:29 +01:00
parent ee809e7580
commit f16fb6f93d

View File

@@ -1405,9 +1405,20 @@ int main(int argc, char *argv[])
} }
else if (Keypressed(input, Key.Clear)) else if (Keypressed(input, Key.Clear))
{ {
ShowMessage("Clearing playlist..."); if (myPlaylist->Main()->isFiltered())
Mpd->ClearPlaylist(); {
ShowMessage("Cleared playlist!"); ShowMessage("Deleting filtered items...");
for (int i = myPlaylist->Main()->Size()-1; i >= 0; i--)
Mpd->QueueDeleteSong((*myPlaylist->Main())[i].GetPosition());
Mpd->CommitQueue();
ShowMessage("Filtered items deleted!");
}
else
{
ShowMessage("Clearing playlist...");
Mpd->ClearPlaylist();
ShowMessage("Cleared playlist!");
}
} }
else if (Keypressed(input, Key.SortPlaylist) && myScreen == myPlaylist) else if (Keypressed(input, Key.SortPlaylist) && myScreen == myPlaylist)
{ {