diff options
Diffstat (limited to 'src/qmmpui/playlistmodel.cpp')
| -rw-r--r-- | src/qmmpui/playlistmodel.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp index e325484f1..4cddd236e 100644 --- a/src/qmmpui/playlistmodel.cpp +++ b/src/qmmpui/playlistmodel.cpp @@ -56,8 +56,7 @@ PlayListModel::PlayListModel(const QString &name, QObject *parent) m_stop_track = 0; m_play_state = new NormalPlayState(this); m_loader = new FileLoader(this); - m_container = new GroupedContainer; - //m_container = new NormalContainer; + m_container = new NormalContainer; connect(m_loader, SIGNAL(newPlayListTrack(PlayListTrack*)), SLOT(add(PlayListTrack*)), Qt::QueuedConnection); connect(m_loader, SIGNAL(finished()), SLOT(preparePlayState())); @@ -869,6 +868,21 @@ void PlayListModel::prepareForRepeatablePlaying(bool val) m_is_repeatable_list = val; } +void PlayListModel::prepareGroups(bool enabled) +{ + PlayListContainer *container = 0; + if(enabled) + container = new GroupedContainer; + else + container = new NormalContainer; + container->addTracks(m_container->takeAllTracks()); + delete m_container; + m_container = container; + if(!m_container->isEmpty()) + m_current = m_container->indexOf(m_current_track); + emit listChanged(); +} + void PlayListModel::doCurrentVisibleRequest() { emit currentChanged(); |
