aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui
diff options
context:
space:
mode:
Diffstat (limited to 'src/qmmpui')
-rw-r--r--src/qmmpui/playlistmanager.cpp30
-rw-r--r--src/qmmpui/playlistmanager.h3
-rw-r--r--src/qmmpui/translations/libqmmpui_cs.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_de.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_it.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_lt.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_pl.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_pt_BR.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_ru.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_tr.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_uk_UA.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_zh_CN.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_zh_TW.ts2
13 files changed, 42 insertions, 13 deletions
diff --git a/src/qmmpui/playlistmanager.cpp b/src/qmmpui/playlistmanager.cpp
index f49d72749..bb4f10ebe 100644
--- a/src/qmmpui/playlistmanager.cpp
+++ b/src/qmmpui/playlistmanager.cpp
@@ -72,6 +72,7 @@ void PlayListManager::selectPlayList(PlayListModel *model)
PlayListModel *prev = m_selected;
m_selected = model;
emit selectedPlayListChanged(model, prev);
+ emit playListsChanged();
}
}
@@ -82,6 +83,22 @@ void PlayListManager::selectPlayList(int i)
selectPlayList(playListAt(i));
}
+void PlayListManager::selectNextPlayList()
+{
+ int i = m_models.indexOf(m_selected);
+ i++;
+ if( i >= 0 && i < m_models.size())
+ selectPlayList(i);
+}
+
+void PlayListManager::selectPreviousPlayList()
+{
+ int i = m_models.indexOf(m_selected);
+ i--;
+ if( i >= 0 && i < m_models.size())
+ selectPlayList(i);
+}
+
void PlayListManager::activatePlayList(PlayListModel *model)
{
if(model != m_current && m_models.contains(model))
@@ -89,6 +106,7 @@ void PlayListManager::activatePlayList(PlayListModel *model)
PlayListModel *prev = m_current;
m_current = model;
emit currentPlayListChanged(model, prev);
+ emit playListsChanged();
}
}
@@ -100,6 +118,7 @@ PlayListModel *PlayListManager::createPlayList(const QString &name)
model->prepareForRepeatablePlaying(m_repeatable);
model->prepareForShufflePlaying(m_shuffle);
emit playListAdded(i);
+ emit playListsChanged();
return model;
}
@@ -111,12 +130,19 @@ void PlayListManager::removePlayList(PlayListModel *model)
int i = m_models.indexOf(model);
if(m_current == model)
- activatePlayList(m_models.at(i + (i > 0) ? -1 : 1));
+ {
+ m_current = m_models.at((i > 0) ? (i - 1) : (i + 1));
+ emit currentPlayListChanged(m_current, model);
+ }
if(m_selected == model)
- selectPlayList(m_models.at(i + (i > 0) ? -1 : 1));
+ {
+ m_selected = m_models.at((i > 0) ? (i - 1) : (i + 1));
+ emit selectedPlayListChanged(m_selected, model);
+ }
m_models.removeAt(i);
model->deleteLater();
emit playListRemoved(i);
+ emit playListsChanged();
}
void PlayListManager::setRepeatableList(bool r)
diff --git a/src/qmmpui/playlistmanager.h b/src/qmmpui/playlistmanager.h
index d6550e063..630ce5fa7 100644
--- a/src/qmmpui/playlistmanager.h
+++ b/src/qmmpui/playlistmanager.h
@@ -92,6 +92,7 @@ signals:
void selectedPlayListChanged (PlayListModel *selected, PlayListModel *previous);
void playListAdded(int index);
void playListRemoved(int index);
+ void playListsChanged();
/*!
* Emitted when state of the "Repeat All" option has changed.
* @param state New state of the "Repeat All" option (\b true - enabled, \b false disabled)
@@ -110,6 +111,8 @@ signals:
public slots:
void selectPlayList(PlayListModel *model);
void selectPlayList(int index);
+ void selectNextPlayList();
+ void selectPreviousPlayList();
void activatePlayList(PlayListModel *model);
PlayListModel *createPlayList(const QString &name = QString());
void removePlayList(PlayListModel *model);
diff --git a/src/qmmpui/translations/libqmmpui_cs.ts b/src/qmmpui/translations/libqmmpui_cs.ts
index 5ba850bf1..35fdebaf9 100644
--- a/src/qmmpui/translations/libqmmpui_cs.ts
+++ b/src/qmmpui/translations/libqmmpui_cs.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_de.ts b/src/qmmpui/translations/libqmmpui_de.ts
index 3fba815bb..e3fb22267 100644
--- a/src/qmmpui/translations/libqmmpui_de.ts
+++ b/src/qmmpui/translations/libqmmpui_de.ts
@@ -75,7 +75,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_it.ts b/src/qmmpui/translations/libqmmpui_it.ts
index 4fd497a3f..46c21b016 100644
--- a/src/qmmpui/translations/libqmmpui_it.ts
+++ b/src/qmmpui/translations/libqmmpui_it.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_lt.ts b/src/qmmpui/translations/libqmmpui_lt.ts
index 106a1e353..5a75affb9 100644
--- a/src/qmmpui/translations/libqmmpui_lt.ts
+++ b/src/qmmpui/translations/libqmmpui_lt.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_pl.ts b/src/qmmpui/translations/libqmmpui_pl.ts
index 6e1b6ccb9..6add3e673 100644
--- a/src/qmmpui/translations/libqmmpui_pl.ts
+++ b/src/qmmpui/translations/libqmmpui_pl.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_pt_BR.ts b/src/qmmpui/translations/libqmmpui_pt_BR.ts
index 160f36849..f3c2ede85 100644
--- a/src/qmmpui/translations/libqmmpui_pt_BR.ts
+++ b/src/qmmpui/translations/libqmmpui_pt_BR.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_ru.ts b/src/qmmpui/translations/libqmmpui_ru.ts
index ad4b32096..c242ba4e5 100644
--- a/src/qmmpui/translations/libqmmpui_ru.ts
+++ b/src/qmmpui/translations/libqmmpui_ru.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_tr.ts b/src/qmmpui/translations/libqmmpui_tr.ts
index 167aad31b..944c7944e 100644
--- a/src/qmmpui/translations/libqmmpui_tr.ts
+++ b/src/qmmpui/translations/libqmmpui_tr.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_uk_UA.ts b/src/qmmpui/translations/libqmmpui_uk_UA.ts
index 57771a6fb..700fcf2c3 100644
--- a/src/qmmpui/translations/libqmmpui_uk_UA.ts
+++ b/src/qmmpui/translations/libqmmpui_uk_UA.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_zh_CN.ts b/src/qmmpui/translations/libqmmpui_zh_CN.ts
index 3ef670ebf..1919b9a60 100644
--- a/src/qmmpui/translations/libqmmpui_zh_CN.ts
+++ b/src/qmmpui/translations/libqmmpui_zh_CN.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_zh_TW.ts b/src/qmmpui/translations/libqmmpui_zh_TW.ts
index 8b3b6a60a..9b63f1f85 100644
--- a/src/qmmpui/translations/libqmmpui_zh_TW.ts
+++ b/src/qmmpui/translations/libqmmpui_zh_TW.ts
@@ -71,7 +71,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>PlayListManager</name>
<message>
- <location filename="../playlistmanager.cpp" line="97"/>
+ <location filename="../playlistmanager.cpp" line="115"/>
<source>Playlist</source>
<translation type="unfinished"></translation>
</message>