aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2010-10-16 17:42:06 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2010-10-16 17:42:06 +0000
commit6d121794491610ca09441715bd1fa15d88c31890 (patch)
treef2b5c8d2778621ad3b7fd5dd11601a248fda7154 /src
parent8abc1d73303c4841ff8bbf22d4d6f7994d4ac190 (diff)
downloadqmmp-6d121794491610ca09441715bd1fa15d88c31890.tar.gz
qmmp-6d121794491610ca09441715bd1fa15d88c31890.tar.bz2
qmmp-6d121794491610ca09441715bd1fa15d88c31890.zip
some main menu reorganization
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1941 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src')
-rw-r--r--src/qmmpui/mediaplayer.cpp84
-rw-r--r--src/qmmpui/mediaplayer.h21
-rw-r--r--src/qmmpui/playlistmanager.cpp10
-rw-r--r--src/qmmpui/playlistmanager.h8
-rw-r--r--src/qmmpui/playlistmodel.cpp59
-rw-r--r--src/qmmpui/playlistmodel.h27
-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_es.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_it.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_ja.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_lt.ts2
-rw-r--r--src/qmmpui/translations/libqmmpui_nl.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
-rw-r--r--src/ui/listwidget.cpp25
-rw-r--r--src/ui/mainwindow.cpp34
-rw-r--r--src/ui/translations/qmmp_cs.ts75
-rw-r--r--src/ui/translations/qmmp_de.ts75
-rw-r--r--src/ui/translations/qmmp_es.ts75
-rw-r--r--src/ui/translations/qmmp_hu.ts75
-rw-r--r--src/ui/translations/qmmp_it.ts75
-rw-r--r--src/ui/translations/qmmp_ja.ts75
-rw-r--r--src/ui/translations/qmmp_lt.ts75
-rw-r--r--src/ui/translations/qmmp_nl.ts75
-rw-r--r--src/ui/translations/qmmp_pl_PL.ts75
-rw-r--r--src/ui/translations/qmmp_pt_BR.ts75
-rw-r--r--src/ui/translations/qmmp_ru.ts75
-rw-r--r--src/ui/translations/qmmp_tr.ts75
-rw-r--r--src/ui/translations/qmmp_uk_UA.ts75
-rw-r--r--src/ui/translations/qmmp_zh_CN.ts75
-rw-r--r--src/ui/translations/qmmp_zh_TW.ts75
37 files changed, 934 insertions, 487 deletions
diff --git a/src/qmmpui/mediaplayer.cpp b/src/qmmpui/mediaplayer.cpp
index cf8a41d46..69a3bbd56 100644
--- a/src/qmmpui/mediaplayer.cpp
+++ b/src/qmmpui/mediaplayer.cpp
@@ -37,7 +37,7 @@ MediaPlayer::MediaPlayer(QObject *parent)
m_core = 0;
m_skips = 0;
m_repeat = false;
- m_autoStop = false;
+ m_noPlaylistAdvance = false;
QTranslator *translator = new QTranslator(parent);
QString locale = Qmmp::systemLanguageID();
translator->load(QString(":/libqmmpui_") + locale);
@@ -59,7 +59,7 @@ void MediaPlayer::initialize(SoundCore *core, PlayListManager *pl_manager)
m_core = core;
m_pl_manager = pl_manager;
m_repeat = false;
- m_autoStop = false;
+ m_noPlaylistAdvance = false;
connect(m_core, SIGNAL(nextTrackRequest()), SLOT(updateNextUrl()));
connect(m_core, SIGNAL(finished()), SLOT(playNext()));
}
@@ -74,9 +74,9 @@ bool MediaPlayer::isRepeatable() const
return m_repeat;
}
-bool MediaPlayer::isAutoStopping() const
+bool MediaPlayer::isNoPlaylistAdvance() const
{
- return m_autoStop;
+ return m_noPlaylistAdvance;
}
void MediaPlayer::play(qint64 offset)
@@ -181,82 +181,68 @@ void MediaPlayer::previous()
void MediaPlayer::setRepeatable(bool r)
{
- if (!isAutoStopping())
+ if (r != m_repeat)
{
- if (r != m_repeat && !r)
- {
- disconnect(m_core, SIGNAL(finished()), this, SLOT(play()));
- connect(m_core, SIGNAL(finished()), SLOT(playNext()));
- }
- else if (r != m_repeat && r)
+ if(r)
{
disconnect(m_core, SIGNAL(finished()), this, SLOT(playNext()));
connect(m_core, SIGNAL(finished()), SLOT(play()));
}
+ else
+ {
+ disconnect(m_core, SIGNAL(finished()), this, SLOT(play()));
+ connect(m_core, SIGNAL(finished()), SLOT(playNext()));
+ }
+ m_repeat = r;
+ emit repeatableChanged(r);
}
- m_repeat = r;
- emit repeatableChanged(r);
}
void MediaPlayer::playNext()
{
- if (!m_pl_manager->currentPlayList()->next())
+ if(m_noPlaylistAdvance)
{
stop();
return;
}
- play();
-}
-
-void MediaPlayer::setAutoStop(bool enable)
-{
- if (enable != m_autoStop)
+ if (!m_pl_manager->currentPlayList()->next())
{
- if(enable)
- {
- if (m_repeat)
- disconnect(m_core, SIGNAL(finished()), this, SLOT(play()));
- else
- disconnect(m_core, SIGNAL(finished()), this, SLOT(playNext()));
- connect(m_core, SIGNAL(finished()), SLOT(autoStop()));
- }
- else
- {
- disconnect(m_core, SIGNAL(finished()), this, SLOT(autoStop()));
- if (m_repeat)
- connect(m_core, SIGNAL(finished()), SLOT(play()));
- else
- connect(m_core, SIGNAL(finished()), SLOT(playNext()));
- }
- m_autoStop = enable;
- emit autoStopChanged(enable);
+ stop();
+ return;
}
+ play();
}
-void MediaPlayer::autoStop()
+void MediaPlayer::setNoPlaylistAdvance(bool enabled)
{
- if (!m_repeat && !m_pl_manager->currentPlayList()->isEmptyQueue())
+ if (enabled != m_noPlaylistAdvance)
{
- playNext();
- return;
+ m_noPlaylistAdvance = enabled;
+ emit noPlaylistAdvanceChanged(enabled);
}
- setAutoStop(false);
- stop();
}
void MediaPlayer::updateNextUrl()
{
m_nextUrl.clear();
- if(m_pl_manager->currentPlayList()->nextItem() && !isRepeatable())
+ PlayListItem *item = 0;
+ if(isRepeatable())
+ item = m_pl_manager->currentPlayList()->currentItem();
+ else if(!m_noPlaylistAdvance)
+ item = m_pl_manager->currentPlayList()->nextItem();
+
+ if(item)
{
- qDebug("MediaPlayer: sending next url");
- bool ok = m_core->play(m_pl_manager->currentPlayList()->nextItem()->url(), true);
+ bool ok = m_core->play(item->url(), true);
if(ok)
{
m_nextUrl = m_pl_manager->currentPlayList()->nextItem()->url();
- qDebug("MediaPlayer: sending next url - done");
+ qDebug("MediaPlayer: next track state: received");
}
else
- qDebug("MediaPlayer: sending next url - failed");
+ qDebug("MediaPlayer: next track state: error");
}
+ else
+ qDebug("MediaPlayer: next track state: unknown");
+
}
diff --git a/src/qmmpui/mediaplayer.h b/src/qmmpui/mediaplayer.h
index 3809cdb3c..06c80ec30 100644
--- a/src/qmmpui/mediaplayer.h
+++ b/src/qmmpui/mediaplayer.h
@@ -60,9 +60,9 @@ public:
*/
bool isRepeatable() const;
/*!
- * Returns \b true if "Auto Stop" option is enabled, otherwise returns \b false
+ * Returns \b true if "No playlist advance" option is enabled, otherwise returns \b false
*/
- bool isAutoStopping() const;
+ bool isNoPlaylistAdvance() const;
public slots:
/*!
@@ -87,10 +87,11 @@ public slots:
*/
void setRepeatable(bool enable);
/*!
- * Toggles the AutoStop feature.
- * @param enable the AutoStop state (\b true - automatic stop, \b false - normal play)
+ * When finished playing a song, don't automatically advance to the next
+ * @param enable State of the 'No playlist advance' option
+ * (\b true - enabled, \b false - normal playback)
*/
- void setAutoStop(bool enable);
+ void setNoPlaylistAdvance(bool enable);
signals:
/*!
@@ -98,11 +99,15 @@ signals:
* @param enabled New repeate state of the current track (\b true - enabled, \b false - disabled)
*/
void repeatableChanged(bool enabled);
- void autoStopChanged(bool enabled);
+ /*!
+ * Emitted when state of the "No playlist advance" option changes.
+ * @param enabled New state of this option (\b true - no playlist advance,
+ * \b false - normal playlist behaviour)
+ */
+ void noPlaylistAdvanceChanged(bool enabled);
private slots:
void playNext();
- void autoStop();
void updateNextUrl();
private:
@@ -110,7 +115,7 @@ private:
SoundCore *m_core;
static MediaPlayer* m_instance;
bool m_repeat;
- bool m_autoStop;
+ bool m_noPlaylistAdvance;
int m_skips;
QString m_nextUrl;
};
diff --git a/src/qmmpui/playlistmanager.cpp b/src/qmmpui/playlistmanager.cpp
index 784536b6c..1db91cde0 100644
--- a/src/qmmpui/playlistmanager.cpp
+++ b/src/qmmpui/playlistmanager.cpp
@@ -493,3 +493,13 @@ void PlayListManager::removeDuplicates()
{
m_selected->removeDuplicates();
}
+
+void PlayListManager::clearQueue()
+{
+ m_selected->clearQueue();
+}
+
+void PlayListManager::stopAfterSelected()
+{
+ m_selected->stopAfterSelected();
+}
diff --git a/src/qmmpui/playlistmanager.h b/src/qmmpui/playlistmanager.h
index c1adb2378..de9108055 100644
--- a/src/qmmpui/playlistmanager.h
+++ b/src/qmmpui/playlistmanager.h
@@ -288,6 +288,14 @@ public slots:
* This is a convenience function and is the same as calling \b selectedPlayList()->removeDuplicates()
*/
void removeDuplicates();
+ /*!
+ * This is a convenience function and is the same as calling \b selectedPlayList()->clearQueue()
+ */
+ void clearQueue();
+ /*!
+ * This is a convenience function and is the same as calling \b selectedPlayList()->stopAfterSelected()
+ */
+ void stopAfterSelected();
private:
diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp
index 189bcf984..a710073b4 100644
--- a/src/qmmpui/playlistmodel.cpp
+++ b/src/qmmpui/playlistmodel.cpp
@@ -74,6 +74,7 @@ PlayListModel::PlayListModel(const QString &name, QObject *parent)
m_current = 0;
is_repeatable_list = false;
m_play_state = new NormalPlayState(this);
+ m_stop_item = 0;
}
PlayListModel::~PlayListModel()
@@ -146,9 +147,11 @@ PlayListItem* PlayListModel::currentItem()
}
PlayListItem* PlayListModel::nextItem()
-{
+{
if(m_items.isEmpty() || !m_play_state)
return 0;
+ if(m_stop_item && m_stop_item == currentItem())
+ return 0;
if(!isEmptyQueue())
return m_queued_songs.at(0);
int index = m_play_state->nextIndex();
@@ -180,6 +183,12 @@ bool PlayListModel::setCurrent(int c)
bool PlayListModel::next()
{
+ if(m_stop_item == currentItem())
+ {
+ m_stop_item = 0;
+ emit listChanged();
+ return false;
+ }
if (!isEmptyQueue())
{
setCurrentToQueued();
@@ -212,6 +221,7 @@ void PlayListModel::clear()
m_running_loaders.clear();
m_current = 0;
+ m_stop_item = 0;
while (!m_items.isEmpty())
{
PlayListItem* mf = m_items.takeFirst();
@@ -305,6 +315,8 @@ void PlayListModel::removeAt (int i)
if ((i < count()) && (i >= 0))
{
PlayListItem* f = m_items.takeAt(i);
+ if(m_stop_item == f)
+ m_stop_item = 0;
m_total_length -= f->length();
if (m_total_length < 0)
m_total_length = qMin(0, m_total_length);
@@ -345,6 +357,8 @@ void PlayListModel::removeSelection(bool inverted)
if (m_items.at(i)->isSelected() ^ inverted)
{
PlayListItem* f = m_items.takeAt(i);
+ if(f == m_stop_item)
+ m_stop_item = 0;
m_total_length -= f->length();
if (m_total_length < 0)
m_total_length = 0;
@@ -644,6 +658,21 @@ bool PlayListModel::isEmptyQueue() const
return m_queued_songs.isEmpty();
}
+int PlayListModel::queuedIndex(PlayListItem* item) const
+{
+ return m_queued_songs.indexOf(item);
+}
+
+int PlayListModel::queueSize() const
+{
+ return m_queued_songs.size();
+}
+
+bool PlayListModel::isStopAfter(PlayListItem* item) const
+{
+ return m_stop_item == item;
+}
+
void PlayListModel::randomizeList()
{
for (int i = 0;i < m_items.size();i++)
@@ -943,3 +972,31 @@ void PlayListModel::removeDuplicates()
}
}
}
+
+void PlayListModel::clearQueue()
+{
+ m_queued_songs.clear();
+ m_stop_item = 0;
+ emit listChanged();
+}
+
+void PlayListModel::stopAfterSelected()
+{
+ QList<PlayListItem*> selected_items = getSelectedItems();
+ if(!m_queued_songs.isEmpty())
+ {
+ m_stop_item = m_stop_item != m_queued_songs.last() ? m_queued_songs.last() : 0;
+ }
+ else if(selected_items.count() == 1)
+ {
+ m_stop_item = m_stop_item != selected_items.at(0) ? selected_items.at(0) : 0;
+ }
+ else if(selected_items.count() > 1)
+ {
+ addToQueue();
+ m_stop_item = m_queued_songs.last();
+ }
+ else
+ return;
+ emit listChanged();
+}
diff --git a/src/qmmpui/playlistmodel.h b/src/qmmpui/playlistmodel.h
index d6eb3c4f4..ac5668ffa 100644
--- a/src/qmmpui/playlistmodel.h
+++ b/src/qmmpui/playlistmodel.h
@@ -184,11 +184,11 @@ public:
*/
QStringList getTimes(int first,int last);
/*!
- * Moves the item at index position \b from to index position \b to
+ * Moves the item at index position \b from to index position \b to.
*/
void moveItems(int from, int to);
/*!
- * Returns \b true if \b f file is in play queue, else returns \b false
+ * Returns \b true if \b f file is in play queue, otherwise returns \b false.
*/
bool isQueued(PlayListItem* item) const;
/*!
@@ -202,17 +202,15 @@ public:
/*!
* Returns index of \b f file in queue.e
*/
- int queuedIndex(PlayListItem* item) const
- {
- return m_queued_songs.indexOf(item);
- }
+ int queuedIndex(PlayListItem* item) const;
/*!
* Returns the number of items in the queue
*/
- int queueSize() const
- {
- return m_queued_songs.size();
- }
+ int queueSize() const;
+ /*!
+ * Returns \b true if playback stops after \b item, otherwise returns \b false.
+ */
+ bool isStopAfter(PlayListItem* item) const;
/*!
* Returns current selection(playlist can contain a lot of selections,
* this method returns selection which \b row belongs to)
@@ -413,6 +411,14 @@ public slots:
* Removes duplicate items by URL.
*/
void removeDuplicates();
+ /*!
+ * Removes all items from queue.
+ */
+ void clearQueue();
+ /*!
+ * Toggles 'stop after selected' feature.
+ */
+ void stopAfterSelected();
private:
/*!
@@ -448,6 +454,7 @@ private:
QList <PlayListItem*> m_items;
QList <PlayListItem*> m_editing_items;
PlayListItem* m_currentItem;
+ PlayListItem* m_stop_item;
int m_current;
/*!
* This flyweight object represents current selection.
diff --git a/src/qmmpui/translations/libqmmpui_cs.ts b/src/qmmpui/translations/libqmmpui_cs.ts
index 07fd33f2c..9e82d56c7 100644
--- a/src/qmmpui/translations/libqmmpui_cs.ts
+++ b/src/qmmpui/translations/libqmmpui_cs.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Souborový dialog Qt</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_de.ts b/src/qmmpui/translations/libqmmpui_de.ts
index bf5d9274a..5de695ebc 100644
--- a/src/qmmpui/translations/libqmmpui_de.ts
+++ b/src/qmmpui/translations/libqmmpui_de.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qt Datei-Dialog</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_es.ts b/src/qmmpui/translations/libqmmpui_es.ts
index 8541c3baf..c9aeebbea 100644
--- a/src/qmmpui/translations/libqmmpui_es.ts
+++ b/src/qmmpui/translations/libqmmpui_es.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Diálogo de archivos Qt</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_it.ts b/src/qmmpui/translations/libqmmpui_it.ts
index be3f22bc7..c4c709c9b 100644
--- a/src/qmmpui/translations/libqmmpui_it.ts
+++ b/src/qmmpui/translations/libqmmpui_it.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Menu brani Qt</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_ja.ts b/src/qmmpui/translations/libqmmpui_ja.ts
index 41b76f1f4..1dfe56557 100644
--- a/src/qmmpui/translations/libqmmpui_ja.ts
+++ b/src/qmmpui/translations/libqmmpui_ja.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qtファイルダイアログ</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_lt.ts b/src/qmmpui/translations/libqmmpui_lt.ts
index 4080bf130..e720b714e 100644
--- a/src/qmmpui/translations/libqmmpui_lt.ts
+++ b/src/qmmpui/translations/libqmmpui_lt.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qt bylų langas</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_nl.ts b/src/qmmpui/translations/libqmmpui_nl.ts
index 3f0604c04..6beed7e84 100644
--- a/src/qmmpui/translations/libqmmpui_nl.ts
+++ b/src/qmmpui/translations/libqmmpui_nl.ts
@@ -84,7 +84,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qt Bestandsdialoog</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_pl.ts b/src/qmmpui/translations/libqmmpui_pl.ts
index 56e5f3d21..2c6513f8a 100644
--- a/src/qmmpui/translations/libqmmpui_pl.ts
+++ b/src/qmmpui/translations/libqmmpui_pl.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Okno dialogowe QT</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_pt_BR.ts b/src/qmmpui/translations/libqmmpui_pt_BR.ts
index 7e28cc10f..4a9786cdc 100644
--- a/src/qmmpui/translations/libqmmpui_pt_BR.ts
+++ b/src/qmmpui/translations/libqmmpui_pt_BR.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_ru.ts b/src/qmmpui/translations/libqmmpui_ru.ts
index 57048a403..90caa8f44 100644
--- a/src/qmmpui/translations/libqmmpui_ru.ts
+++ b/src/qmmpui/translations/libqmmpui_ru.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Файловый диалог Qt</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_tr.ts b/src/qmmpui/translations/libqmmpui_tr.ts
index 191cb0dca..fbb11ef3d 100644
--- a/src/qmmpui/translations/libqmmpui_tr.ts
+++ b/src/qmmpui/translations/libqmmpui_tr.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qt Dosya Diyaloğu</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_uk_UA.ts b/src/qmmpui/translations/libqmmpui_uk_UA.ts
index 6ed7602f4..1bcc2efee 100644
--- a/src/qmmpui/translations/libqmmpui_uk_UA.ts
+++ b/src/qmmpui/translations/libqmmpui_uk_UA.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Файловий діалог Qt</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_zh_CN.ts b/src/qmmpui/translations/libqmmpui_zh_CN.ts
index e48f6ca01..bce778f00 100644
--- a/src/qmmpui/translations/libqmmpui_zh_CN.ts
+++ b/src/qmmpui/translations/libqmmpui_zh_CN.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qmmp 文件会话</translation>
</message>
diff --git a/src/qmmpui/translations/libqmmpui_zh_TW.ts b/src/qmmpui/translations/libqmmpui_zh_TW.ts
index 34f27399f..52cf309c5 100644
--- a/src/qmmpui/translations/libqmmpui_zh_TW.ts
+++ b/src/qmmpui/translations/libqmmpui_zh_TW.ts
@@ -80,7 +80,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>QtFileDialogFactory</name>
<message>
- <location filename="../qtfiledialog.cpp" line="33"/>
+ <location filename="../qtfiledialog.cpp" line="34"/>
<source>Qt File Dialog</source>
<translation>Qmmp 檔案會話</translation>
</message>
diff --git a/src/ui/listwidget.cpp b/src/ui/listwidget.cpp
index 45ec308b0..9c1a94306 100644
--- a/src/ui/listwidget.cpp
+++ b/src/ui/listwidget.cpp
@@ -51,7 +51,6 @@ ListWidget::ListWidget(QWidget *parent)
m_anchor_row = INVALID_ROW;
m_player = MediaPlayer::instance();
connect (m_player, SIGNAL(repeatableChanged(bool)), SLOT(updateList()));
- connect (m_player, SIGNAL(autoStopChanged(bool)), SLOT(updateList()));
m_first = 0;
m_rows = 0;
m_scroll = false;
@@ -131,12 +130,9 @@ void ListWidget::paintEvent(QPaintEvent *)
m_painter.drawText(10,14+i*m_metrics->height(),m_titles.at(i));
- if (m_model->isQueued(m_model->item(i + m_first)) ||
- (m_player->isRepeatable() && (m_model->currentRow() == m_first + i)) ||
- m_show_protocol || m_player->isAutoStopping())
+ QString extra_string = getExtraString(m_first + i);
+ if(!extra_string.isEmpty())
{
- QString extra_string = getExtraString(m_first + i);
-
int old_size = m_font.pointSize();
m_font.setPointSize(old_size - 1 );
m_painter.setFont(m_font);
@@ -151,7 +147,6 @@ void ListWidget::paintEvent(QPaintEvent *)
m_painter.drawText(width() - 7 - m_metrics->width(m_times.at(i)),
14+i*m_metrics->height (), m_times.at(i));
}
-
}
void ListWidget::mouseDoubleClickEvent (QMouseEvent *e)
@@ -408,21 +403,17 @@ const QString ListWidget::getExtraString(int i)
if (m_show_protocol && m_model->item(i)->url().contains("://"))
extra_string = "[" + m_model->item(i)->url().split("://").at(0) + "]";
- if ((m_model->currentRow() == i))
- {
- if (m_player->isRepeatable() )
- extra_string += "|R|";
- if (m_player->isAutoStopping() && (m_player->isRepeatable() || m_model->isEmptyQueue()))
- extra_string += "|S|";
- }
-
if (m_model->isQueued(m_model->item(i)))
{
int index = m_model->queuedIndex(m_model->item(i));
- if (m_player->isAutoStopping() && !m_player->isRepeatable() && index + 1== m_model->queueSize())
- extra_string += "|S|";
extra_string += "|"+QString::number(index + 1)+"|";
}
+
+ if(m_model->currentRow() == i && m_player->isRepeatable())
+ extra_string += "|R|";
+ else if(m_model->isStopAfter(m_model->item(i)))
+ extra_string += "|S|";
+
extra_string = extra_string.trimmed(); //remove white space
if(!extra_string.isEmpty())
extra_string.prepend(" ");
diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp
index 5b5af9b2f..07e021c4b 100644
--- a/src/ui/mainwindow.cpp
+++ b/src/ui/mainwindow.cpp
@@ -426,31 +426,39 @@ void MainWindow::createActions()
this, SLOT(next()), tr("B"));
m_mainMenu->addAction(tr("&Play/Pause"),this, SLOT(playPause()), tr("Space"));
m_mainMenu->addSeparator();
- QAction *repeateAllAction = m_mainMenu->addAction(tr("&Repeat Playlist"));
- QAction *shuffleAction = m_mainMenu->addAction(tr("&Shuffle"));
- QAction *autoStopAction = m_mainMenu->addAction(tr("&Stop After Track"));
- QAction *repeateTrackAction = m_mainMenu->addAction(tr("&Repeat Track"));
+ m_mainMenu->addAction(QIcon::fromTheme("go-up"), tr("&Jump To File"),
+ this, SLOT(jumpToFile()), tr("J"));
+ m_mainMenu->addSeparator();
+ m_mainMenu->addMenu(new ViewMenu(this));
+
+ QMenu *plMenu = m_mainMenu->addMenu(tr("Playlist"));
+ QAction *repeateAllAction = plMenu->addAction(tr("&Repeat Playlist"));
+ QAction *repeateTrackAction = plMenu->addAction(tr("&Repeat Track"));
+ QAction *shuffleAction = plMenu->addAction(tr("&Shuffle"));
+ QAction *noPlAdvanceAction = plMenu->addAction(tr("&No Playlist Advance"));
+ QAction *stopAfterSelectedAction = plMenu->addAction(tr("&Stop After Selected Song"));
+ QAction *clearQueueAction = plMenu->addAction(tr("&Clear Queue"));
repeateAllAction->setCheckable (true);
repeateTrackAction->setCheckable (true);
- autoStopAction->setCheckable (true);
+ noPlAdvanceAction->setCheckable (true);
shuffleAction->setCheckable (true);
repeateAllAction->setShortcut(tr("R")) ;
repeateTrackAction->setShortcut(tr("Ctrl+R")) ;
- autoStopAction->setShortcut(tr("Ctrl+S")) ;
+ noPlAdvanceAction->setShortcut(tr("Ctrl+N")) ;
+ stopAfterSelectedAction->setShortcut(tr("Ctrl+S"));
+ clearQueueAction->setShortcut(tr("Alt+Q"));
shuffleAction->setShortcut(tr("S")) ;
connect(repeateAllAction, SIGNAL(triggered (bool)), m_pl_manager, SLOT(setRepeatableList(bool)));
connect(repeateTrackAction, SIGNAL(triggered (bool)), m_player, SLOT(setRepeatable(bool)));
- connect(autoStopAction, SIGNAL(triggered (bool)), m_player, SLOT(setAutoStop(bool)));
+ connect(noPlAdvanceAction, SIGNAL(triggered (bool)), m_player, SLOT(setNoPlaylistAdvance(bool)));
connect(shuffleAction, SIGNAL(triggered (bool)), m_pl_manager, SLOT(setShuffle(bool)));
+ connect(stopAfterSelectedAction, SIGNAL(triggered (bool)), m_pl_manager, SLOT(stopAfterSelected()));
+ connect(clearQueueAction, SIGNAL(triggered()), m_pl_manager, SLOT(clearQueue()));
connect(m_pl_manager, SIGNAL(repeatableListChanged(bool)), repeateAllAction, SLOT(setChecked(bool)));
connect(m_player, SIGNAL (repeatableChanged(bool)), repeateTrackAction, SLOT(setChecked(bool)));
- connect(m_player, SIGNAL (autoStopChanged(bool)), autoStopAction, SLOT(setChecked(bool)));
+ connect(m_player, SIGNAL (noPlaylistAdvanceChanged(bool)), noPlAdvanceAction, SLOT(setChecked(bool)));
connect(m_pl_manager, SIGNAL(shuffleChanged(bool)), shuffleAction, SLOT(setChecked(bool)));
- m_mainMenu->addSeparator();
- m_mainMenu->addAction(QIcon::fromTheme("go-up"), tr("&Jump To File"),
- this, SLOT(jumpToFile()), tr("J"));
- m_mainMenu->addSeparator();
- m_mainMenu->addMenu(new ViewMenu(this));
+
m_visMenu = new VisualMenu(this);
m_mainMenu->addMenu(m_visMenu);
m_mainMenu->addMenu(m_generalHandler->createMenu(GeneralHandler::TOOLS_MENU, tr("Tools"), this));
diff --git a/src/ui/translations/qmmp_cs.ts b/src/ui/translations/qmmp_cs.ts
index a9c22be73..ebd6cf9f0 100644
--- a/src/ui/translations/qmmp_cs.ts
+++ b/src/ui/translations/qmmp_cs.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>Přeskočit na soubo&amp;r</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Nastavení</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>O &amp;aplikaci</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>U&amp;končit</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Seznamy skladeb</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Načíst seznam skladeb</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Uložit seznam skladeb</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>Mezerník</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>O knihovně &amp;Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Všechny podporované formáty</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Opakovat stopu</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>Za&amp;míchat</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>O</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>M</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Opakovat seznam skladeb</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Nástroje</translation>
</message>
diff --git a/src/ui/translations/qmmp_de.ts b/src/ui/translations/qmmp_de.ts
index fe97d1b77..08c28e57a 100644
--- a/src/ui/translations/qmmp_de.ts
+++ b/src/ui/translations/qmmp_de.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation>Nach diesem &amp;Stück stoppen</translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation>Strg+S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>Springe zu &amp;Titel</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Wiedergabeliste</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Einstellungen</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Strg+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>Ü&amp;ber</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>Be&amp;enden</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Strg+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Wiedergabelisten</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Wiedergabeliste öffnen</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Wiedergabeliste speichern</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>Leertaste</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>Übe&amp;r Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Alle unterstützten Formate</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>Tite&amp;l wiederholen</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Zufallswiedergabe</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Strg+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>W&amp;iedergabeliste wiederholen</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Werkzeuge</translation>
</message>
diff --git a/src/ui/translations/qmmp_es.ts b/src/ui/translations/qmmp_es.ts
index 05afe1213..58b570049 100644
--- a/src/ui/translations/qmmp_es.ts
+++ b/src/ui/translations/qmmp_es.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Saltar a archivo</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista de reproducción</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Configuración</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Salir</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Abrir la lista de reproducción</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Guardar la lista de reproducción</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Acerca de</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Archivos a reproducir</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>Space</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;Acerca de Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Todos los flujos soportados</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Repetir pista</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Revolver</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Repetir la lista</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Herramientas</translation>
</message>
diff --git a/src/ui/translations/qmmp_hu.ts b/src/ui/translations/qmmp_hu.ts
index f1cc8ae54..b81b519d1 100644
--- a/src/ui/translations/qmmp_hu.ts
+++ b/src/ui/translations/qmmp_hu.ts
@@ -1024,103 +1024,128 @@
<translation>Szóköz</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
- <source>&amp;Repeat Playlist</source>
- <translation>Lista &amp;ismétlése</translation>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lejátszási lista</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
+ <location filename="../mainwindow.cpp" line="435"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>Lista &amp;ismétlése</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>Számok i&amp;smétlése</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Véletlenszerű</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Crtl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Ugrás fájlra</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Eszközök</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Beállítások</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Névjegy</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>N&amp;évjegy: Qt</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Kilépés</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Lejátszási lista fájl</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Lista megnyitása</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Lista mentése</translation>
</message>
diff --git a/src/ui/translations/qmmp_it.ts b/src/ui/translations/qmmp_it.ts
index e38190314..d3fef9411 100644
--- a/src/ui/translations/qmmp_it.ts
+++ b/src/ui/translations/qmmp_it.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Vai al brano</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Configurazione</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Esci</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Apri lista di brani</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Salva lista di brani</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Informazioni</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Brani della lista</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>Spazio</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;Informazioni su Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Elenco di tutti i tipi di flusso accettati</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Ripeti brano</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Ordine casuale</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Ripeti lista brani</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Strumenti</translation>
</message>
diff --git a/src/ui/translations/qmmp_ja.ts b/src/ui/translations/qmmp_ja.ts
index 2c1875bb0..04029938a 100644
--- a/src/ui/translations/qmmp_ja.ts
+++ b/src/ui/translations/qmmp_ja.ts
@@ -1024,103 +1024,128 @@
<translation>Space</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
- <source>&amp;Repeat Playlist</source>
- <translation>プレイリストを繰り返す(&amp;L)</translation>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">プレイリスト</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation>曲が終わると再生停止(&amp;S)</translation>
+ <location filename="../mainwindow.cpp" line="435"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>プレイリストを繰り返す(&amp;L)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>トラックを繰り返す(&amp;T)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>シャッフル(&amp;F)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation>Ctrl+S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>ファイルを指定して即刻再生(&amp;J)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>ツール</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>設定(&amp;S)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>QMMPについて(&amp;A)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>Qtについて(&amp;Q)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>終了(&amp;X)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>プレイリストファイル</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>プレイリストを開く</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>プレイリストを保存</translation>
</message>
diff --git a/src/ui/translations/qmmp_lt.ts b/src/ui/translations/qmmp_lt.ts
index c2c6d97bc..b03ee2b19 100644
--- a/src/ui/translations/qmmp_lt.ts
+++ b/src/ui/translations/qmmp_lt.ts
@@ -1010,63 +1010,88 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Pereiti prie bylos</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Grojaraštis</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Nustatymai</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Išeiti</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Atverti grojaraštį</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Išsaugoti grojaraštį</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Apie</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Grojaraščio bylos</translation>
</message>
@@ -1076,7 +1101,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;Apie Qt</translation>
</message>
@@ -1091,37 +1116,37 @@
<translation>Palaikomi bylų tipai</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Kartoti takelį</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Atsitiktine tvarka</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Kartoti grojaraštį</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Įrankiai</translation>
</message>
diff --git a/src/ui/translations/qmmp_nl.ts b/src/ui/translations/qmmp_nl.ts
index 9daa73d36..d5ccbe94d 100644
--- a/src/ui/translations/qmmp_nl.ts
+++ b/src/ui/translations/qmmp_nl.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Spring Naar Bestand</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Instellingen</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Over</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Sluit</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Afspeellijst Bestanden</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Open Afspeellijst</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Bewaar Afspeellijst</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>Spatie</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;Over Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Alle Ondersteunde Bitstromen</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Herhaal Nummer</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Willekeurig</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Herhaal Afspeellijst</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Gereedschappen</translation>
</message>
diff --git a/src/ui/translations/qmmp_pl_PL.ts b/src/ui/translations/qmmp_pl_PL.ts
index 18e0c369a..fa18e2020 100644
--- a/src/ui/translations/qmmp_pl_PL.ts
+++ b/src/ui/translations/qmmp_pl_PL.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation>Zatrzymaj po tym utworze (&amp;S)</translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Skocz do pliku</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Ustawienia</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Wyjście</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Otwórz listę odtwarzania</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Zapisz listę odtwarzania</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;O programie</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Pliki listy odtwarzania</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;O Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Wszystkie wspierane formaty</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Powtórz utwór</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Losowo</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>Powtó&amp;rz listę odtwarzania</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Narzędzia</translation>
</message>
diff --git a/src/ui/translations/qmmp_pt_BR.ts b/src/ui/translations/qmmp_pt_BR.ts
index 96d98f2c5..1cb8b1403 100644
--- a/src/ui/translations/qmmp_pt_BR.ts
+++ b/src/ui/translations/qmmp_pt_BR.ts
@@ -1009,63 +1009,88 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation type="unfinished">Pular para arquivo</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista de músicas</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation type="unfinished">Configurações</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation type="unfinished">Sair</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation type="unfinished">Abrir Playlist</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation type="unfinished">Salvar Playlist</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation type="unfinished">&amp;Sobre</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation type="unfinished">ФArquivos de lista de músicas</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation type="unfinished"></translation>
</message>
@@ -1090,37 +1115,37 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/ui/translations/qmmp_ru.ts b/src/ui/translations/qmmp_ru.ts
index 4c8faf672..d9f0f4080 100644
--- a/src/ui/translations/qmmp_ru.ts
+++ b/src/ui/translations/qmmp_ru.ts
@@ -1009,63 +1009,88 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation>&amp;Остановить после трека</translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Перейти к файлу</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Список</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Настройки</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Выход</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Открыть список</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Сохранить список</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;О программе</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Файлы списков</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;О библиотеке Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Все форматы</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Повторять трек</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;В случайном порядке</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Повторять список</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Сервис</translation>
</message>
diff --git a/src/ui/translations/qmmp_tr.ts b/src/ui/translations/qmmp_tr.ts
index f42a919f9..7822380e8 100644
--- a/src/ui/translations/qmmp_tr.ts
+++ b/src/ui/translations/qmmp_tr.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Parçaya Git</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Çalma Listesi</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Ayarlar</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Çıkış</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Çalma Listesini Aç</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Çalma Listesini Kaydet</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Hakkında</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Çalma Listesi Dosyaları</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>Boşluk</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;Qt Hakkında</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Tüm Desteklenen Bitstreamler</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Parçayı Yinele</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Rastgele</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Çalma Listesini Yinele</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Araçlar</translation>
</message>
diff --git a/src/ui/translations/qmmp_uk_UA.ts b/src/ui/translations/qmmp_uk_UA.ts
index 7e7427a3f..c535470ff 100644
--- a/src/ui/translations/qmmp_uk_UA.ts
+++ b/src/ui/translations/qmmp_uk_UA.ts
@@ -1009,63 +1009,88 @@
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation>&amp;Зупинити після треку</translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>&amp;Перейти до файлу</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Список</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>&amp;Налаштування</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>&amp;Вихід</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>Відкрити список</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>Зберегти список</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>&amp;Про програму</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>Файли списків</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>&amp;Про Qt</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>Усі формати</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>&amp;Повторити трек</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>&amp;Перемішати</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>&amp;Повторити список</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>Утиліти</translation>
</message>
diff --git a/src/ui/translations/qmmp_zh_CN.ts b/src/ui/translations/qmmp_zh_CN.ts
index 2d489c58c..2d2c4ca20 100644
--- a/src/ui/translations/qmmp_zh_CN.ts
+++ b/src/ui/translations/qmmp_zh_CN.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>跳到文件(&amp;J)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">播放列表</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>设置(&amp;S)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>退出(&amp;E)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>打开播放列表</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>保存播放列表</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>关于(&amp;A)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>播放列表文件</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>空格</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>关于 Qt (&amp;A)</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>支持的全部文件</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>重复音轨(&amp;R)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>乱序(&amp;S)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>重复播放列表(&amp;R)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>工具</translation>
</message>
diff --git a/src/ui/translations/qmmp_zh_TW.ts b/src/ui/translations/qmmp_zh_TW.ts
index 86973f32c..b5e118409 100644
--- a/src/ui/translations/qmmp_zh_TW.ts
+++ b/src/ui/translations/qmmp_zh_TW.ts
@@ -1009,63 +1009,88 @@
<translation>B</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="431"/>
- <source>&amp;Stop After Track</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location filename="../mainwindow.cpp" line="439"/>
+ <location filename="../mainwindow.cpp" line="448"/>
<source>Ctrl+S</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="450"/>
+ <location filename="../mainwindow.cpp" line="429"/>
<source>&amp;Jump To File</source>
<translation>跳到檔案(&amp;J)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="451"/>
+ <location filename="../mainwindow.cpp" line="430"/>
<source>J</source>
<translation>J</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="458"/>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>Playlist</source>
+ <translation type="unfinished">播放清單</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="438"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="439"/>
+ <source>&amp;Stop After Selected Song</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="440"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="447"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="449"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="466"/>
<source>&amp;Settings</source>
<translation>設定(&amp;S)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="459"/>
+ <location filename="../mainwindow.cpp" line="467"/>
<source>Ctrl+P</source>
<translation>Ctrl+P</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="465"/>
+ <location filename="../mainwindow.cpp" line="473"/>
<source>&amp;Exit</source>
<translation>結束(&amp;E)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="466"/>
+ <location filename="../mainwindow.cpp" line="474"/>
<source>Ctrl+Q</source>
<translation>Ctrl+Q</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="512"/>
+ <location filename="../mainwindow.cpp" line="520"/>
<source>Open Playlist</source>
<translation>開啟播放清單</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="537"/>
+ <location filename="../mainwindow.cpp" line="545"/>
<source>Save Playlist</source>
<translation>儲存播放清單</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="461"/>
+ <location filename="../mainwindow.cpp" line="469"/>
<source>&amp;About</source>
<translation>關於(&amp;A)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="510"/>
- <location filename="../mainwindow.cpp" line="536"/>
+ <location filename="../mainwindow.cpp" line="518"/>
+ <location filename="../mainwindow.cpp" line="544"/>
<source>Playlist Files</source>
<translation>播放清單檔案</translation>
</message>
@@ -1075,7 +1100,7 @@
<translation>空格</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="462"/>
+ <location filename="../mainwindow.cpp" line="470"/>
<source>&amp;About Qt</source>
<translation>關於 Qt (&amp;A)</translation>
</message>
@@ -1090,37 +1115,37 @@
<translation>支援的全部檔案</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="432"/>
+ <location filename="../mainwindow.cpp" line="436"/>
<source>&amp;Repeat Track</source>
<translation>重復音軌(&amp;R)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="430"/>
+ <location filename="../mainwindow.cpp" line="437"/>
<source>&amp;Shuffle</source>
<translation>亂序(&amp;S)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="437"/>
+ <location filename="../mainwindow.cpp" line="445"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="438"/>
+ <location filename="../mainwindow.cpp" line="446"/>
<source>Ctrl+R</source>
<translation>Ctrl+R</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="440"/>
+ <location filename="../mainwindow.cpp" line="450"/>
<source>S</source>
<translation>S</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="429"/>
+ <location filename="../mainwindow.cpp" line="435"/>
<source>&amp;Repeat Playlist</source>
<translation>重復播放清單(&amp;R)</translation>
</message>
<message>
- <location filename="../mainwindow.cpp" line="456"/>
+ <location filename="../mainwindow.cpp" line="464"/>
<source>Tools</source>
<translation>工具</translation>
</message>