From 43bf74b188eec00b88435e68567da94e14cb3f5e Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Mon, 27 Jul 2009 13:24:37 +0000 Subject: added 'remove invalid files' action' git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1084 90c681e8-e032-0410-971d-27865f9a5e38 --- src/qmmpui/playlistmodel.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/qmmpui/playlistmodel.cpp') diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp index 9049759a5..e0fc19ea3 100644 --- a/src/qmmpui/playlistmodel.cpp +++ b/src/qmmpui/playlistmodel.cpp @@ -286,6 +286,12 @@ void PlayListModel::removeAt (int i) } } +void PlayListModel::removeItem (PlayListItem *item) +{ + if(m_items.contains(item)) + removeAt (m_items.indexOf(item)); +} + void PlayListModel::removeSelection(bool inverted) { int i = 0; @@ -1004,3 +1010,13 @@ void PlayListModel::setFormat(const QString &format) PlaylistSettings::instance()->setFormat(format); emit settingsChanged(); } + +void PlayListModel::clearInvalidItems() +{ + foreach(PlayListItem *item, m_items) + { + if(!item->url().contains("://") && + !(QFile::exists(item->url()) && Decoder::supports(item->url()))) + removeItem(item); + } +} -- cgit v1.2.3-13-gbd6f