diff options
Diffstat (limited to 'src/qmmpui/playlistmodel.cpp')
| -rw-r--r-- | src/qmmpui/playlistmodel.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
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); + } +} |
