aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2010-01-22 22:07:03 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2010-01-22 22:07:03 +0000
commit68bb7c9621bc02451f968a3d389a2f6ff2daddfb (patch)
tree8dfba6ba7b131b0c93756bbe3ef2af89edacbdee
parentae5f1ffdb2490ec942346fd9509744292f6de21a (diff)
downloadqmmp-68bb7c9621bc02451f968a3d389a2f6ff2daddfb.tar.gz
qmmp-68bb7c9621bc02451f968a3d389a2f6ff2daddfb.tar.bz2
qmmp-68bb7c9621bc02451f968a3d389a2f6ff2daddfb.zip
added special class for settings
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1523 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/General/lyrics/lyricswindow.cpp14
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_cs.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_de.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_it.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_lt.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_pl.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_ru.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_tr.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_uk_UA.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_zh_CN.ts18
-rw-r--r--src/plugins/General/lyrics/translations/lyrics_plugin_zh_TW.ts18
-rw-r--r--src/plugins/General/scrobbler/scrobbler.cpp12
-rw-r--r--src/plugins/Transports/http/downloader.cpp17
-rw-r--r--src/qmmp/CMakeLists.txt25
-rw-r--r--src/qmmp/abstractengine.cpp5
-rw-r--r--src/qmmp/abstractengine.h4
-rw-r--r--src/qmmp/audiosettings.cpp62
-rw-r--r--src/qmmp/audiosettings.h61
-rw-r--r--src/qmmp/metadatamanager.cpp34
-rw-r--r--src/qmmp/metadatamanager.h22
-rw-r--r--src/qmmp/qmmp.cpp38
-rw-r--r--src/qmmp/qmmp.h30
-rw-r--r--src/qmmp/qmmp.pro4
-rw-r--r--src/qmmp/qmmpaudioengine.cpp21
-rw-r--r--src/qmmp/qmmpaudioengine.h6
-rw-r--r--src/qmmp/qmmpsettings.cpp185
-rw-r--r--src/qmmp/qmmpsettings.h121
-rw-r--r--src/qmmp/replaygain.cpp33
-rw-r--r--src/qmmp/replaygain.h10
-rw-r--r--src/qmmp/soundcore.cpp47
-rw-r--r--src/qmmp/soundcore.h12
-rw-r--r--src/qmmp/volumecontrol.cpp13
-rw-r--r--src/qmmp/volumecontrol.h5
-rw-r--r--src/ui/addurldialog.cpp12
-rw-r--r--src/ui/configdialog.cpp76
-rw-r--r--src/ui/translations/qmmp_cs.ts66
-rw-r--r--src/ui/translations/qmmp_de.ts66
-rw-r--r--src/ui/translations/qmmp_it.ts66
-rw-r--r--src/ui/translations/qmmp_lt.ts66
-rw-r--r--src/ui/translations/qmmp_pl_PL.ts66
-rw-r--r--src/ui/translations/qmmp_pt_BR.ts66
-rw-r--r--src/ui/translations/qmmp_ru.ts66
-rw-r--r--src/ui/translations/qmmp_tr.ts66
-rw-r--r--src/ui/translations/qmmp_uk_UA.ts66
-rw-r--r--src/ui/translations/qmmp_zh_CN.ts66
-rw-r--r--src/ui/translations/qmmp_zh_TW.ts66
46 files changed, 906 insertions, 869 deletions
diff --git a/src/plugins/General/lyrics/lyricswindow.cpp b/src/plugins/General/lyrics/lyricswindow.cpp
index a3c9262bd..22b81b1b9 100644
--- a/src/plugins/General/lyrics/lyricswindow.cpp
+++ b/src/plugins/General/lyrics/lyricswindow.cpp
@@ -21,6 +21,7 @@
#include <QHttp>
#include <QUrl>
#include <QRegExp>
+#include <qmmp/qmmpsettings.h>
#include <qmmp/qmmp.h>
#include "lyricswindow.h"
@@ -35,12 +36,13 @@ LyricsWindow::LyricsWindow(const QString &artist, const QString &title, QWidget
ui.artistLineEdit->setText(artist);
ui.titleLineEdit->setText(title);
m_http = new QHttp(this);
- //load global proxy settings
- if (Qmmp::useProxy())
- m_http->setProxy(Qmmp::proxy().host(),
- Qmmp::proxy().port(),
- Qmmp::useProxyAuth() ? Qmmp::proxy().userName() : QString(),
- Qmmp::useProxyAuth() ? Qmmp::proxy().password() : QString());
+ //load global proxy settings
+ QmmpSettings *gs = QmmpSettings::instance();
+ if (gs->isProxyEnabled())
+ m_http->setProxy(gs->proxy().host(),
+ gs->proxy().port(),
+ gs->useProxyAuth() ? gs->proxy().userName() : QString(),
+ gs->useProxyAuth() ? gs->proxy().password() : QString());
connect(m_http, SIGNAL(done(bool)), SLOT(showText(bool)));
connect(m_http, SIGNAL(stateChanged(int)), SLOT(showState (int)));
on_searchPushButton_clicked();
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_cs.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_cs.ts
index 9b34d1a6f..fcdbd173b 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_cs.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_cs.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Text: %1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Nespojeno</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation>Nenalezeno</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Vyhledávám hostitele...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Připojuji se...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Zasílám požadavek...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Příjímám</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Připojeno</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Zavírám spojení...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_de.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_de.ts
index 1d92d840e..4468195c3 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_de.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_de.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Liedtext: %1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Keine Verbindung</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation>Es kann kein Liedtext für dieses Stück gefunden werden.</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Verbindung wird hergestellt ...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Anfrage wird gesendet ...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Daten werden empfangen</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Verbunden</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Verbindung wird beendet ...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_it.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_it.ts
index 6b33254dc..96d95caf7 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_it.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_it.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Testo: %1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Nessuna connessione</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation>Non trovato</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Ricerca host</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Connessione...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Invio richiesta...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Ricezione</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Connesso</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Chiusura connessione...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_lt.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_lt.ts
index 3d4679e70..2852b4c50 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_lt.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_lt.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Dainos tekstas: %1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Nėra ryšio</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation>Nerasta</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Ieškau serverio...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Susijungiu...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Siunčiu užklausą...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Gaunu</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Susijungiau</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Atsijungiu...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_pl.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_pl.ts
index 172c2ad77..ed895ea69 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_pl.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_pl.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation>Nie znaleziono</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Nie połączony</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Szukanie hosta...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Łączenie...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Wysyłanie żądania...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Odbieranie</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Połączony</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Zamykanie połączenia...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Teksty: %1 - %2</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_ru.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_ru.ts
index 22ed6ba07..1b74bc398 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_ru.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_ru.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Текст песни: %1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Нет соединения</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Поиск сервера...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Соединение...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Отправка запроса...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Получение</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Соединено</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Завершение соединения...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_tr.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_tr.ts
index c650efd79..43666207f 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_tr.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_tr.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Bağlantı yok</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Sunucu aranıyor...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>Bağlanıyor...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>İstek gönderiliyor...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Alınıyor</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>Bağlandı</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Bağlantı kapatılıyor...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Şarkı Sözü: %1 - %2</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_uk_UA.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_uk_UA.ts
index 95fee4347..c779dee83 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_uk_UA.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_uk_UA.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>Тексти: %1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>Немає з&apos;єднання</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation>Не знайдено</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>Пошук хоста...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>З&apos;єднання...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>Відсилання запиту...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>Отримання</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>З&apos;єднано</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>Закриття з&apos;єднання...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_zh_CN.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_zh_CN.ts
index e3c947fbc..f80d1053d 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_zh_CN.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_zh_CN.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>歌词:%1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>无连接</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>查找主机...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>连接...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>发送请求...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>接受</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>已连接</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>关闭连接...</translation>
</message>
diff --git a/src/plugins/General/lyrics/translations/lyrics_plugin_zh_TW.ts b/src/plugins/General/lyrics/translations/lyrics_plugin_zh_TW.ts
index 0772fc458..b89a1f1c9 100644
--- a/src/plugins/General/lyrics/translations/lyrics_plugin_zh_TW.ts
+++ b/src/plugins/General/lyrics/translations/lyrics_plugin_zh_TW.ts
@@ -45,48 +45,48 @@
<context>
<name>LyricsWindow</name>
<message>
- <location filename="../lyricswindow.cpp" line="113"/>
+ <location filename="../lyricswindow.cpp" line="115"/>
<source>Lyrics: %1 - %2</source>
<translation>歌詞:%1 - %2</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="88"/>
+ <location filename="../lyricswindow.cpp" line="90"/>
<location filename="../lyricswindow.ui" line="67"/>
<source>No connection</source>
<translation>無連接</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="75"/>
+ <location filename="../lyricswindow.cpp" line="77"/>
<source>Not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="91"/>
+ <location filename="../lyricswindow.cpp" line="93"/>
<source>Looking up host...</source>
<translation>找尋主機...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="94"/>
+ <location filename="../lyricswindow.cpp" line="96"/>
<source>Connecting...</source>
<translation>連接...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="97"/>
+ <location filename="../lyricswindow.cpp" line="99"/>
<source>Sending request...</source>
<translation>發送請求...</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="100"/>
+ <location filename="../lyricswindow.cpp" line="102"/>
<source>Receiving</source>
<translation>接受</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="103"/>
+ <location filename="../lyricswindow.cpp" line="105"/>
<source>Connected</source>
<translation>已連接</translation>
</message>
<message>
- <location filename="../lyricswindow.cpp" line="106"/>
+ <location filename="../lyricswindow.cpp" line="108"/>
<source>Closing connection...</source>
<translation>關閉連接...</translation>
</message>
diff --git a/src/plugins/General/scrobbler/scrobbler.cpp b/src/plugins/General/scrobbler/scrobbler.cpp
index c263ba8b9..5d6b38f76 100644
--- a/src/plugins/General/scrobbler/scrobbler.cpp
+++ b/src/plugins/General/scrobbler/scrobbler.cpp
@@ -27,6 +27,7 @@
#include <QDateTime>
#include <QDir>
#include <qmmp/soundcore.h>
+#include <qmmp/qmmpsettings.h>
#include <qmmp/qmmp.h>
#include "scrobbler.h"
@@ -51,11 +52,12 @@ Scrobbler::Scrobbler(const QString &url,
m_server = url;
m_name = name;
//load global proxy settings
- if (Qmmp::useProxy())
- m_http->setProxy(Qmmp::proxy().host(),
- Qmmp::proxy().port(),
- Qmmp::useProxyAuth() ? Qmmp::proxy().userName() : QString(),
- Qmmp::useProxyAuth() ? Qmmp::proxy().password() : QString());
+ QmmpSettings *gs = QmmpSettings::instance(); //TODO use QmmpSettings::networkSettingsChanged()
+ if (gs->isProxyEnabled())
+ m_http->setProxy(gs->proxy().host(),
+ gs->proxy().port(),
+ gs->useProxyAuth() ? gs->proxy().userName() : QString(),
+ gs->useProxyAuth() ? gs->proxy().password() : QString());
m_disabled = m_login.isEmpty() || m_passw.isEmpty();
m_passw = QString(QCryptographicHash::hash(m_passw.toAscii(), QCryptographicHash::Md5).toHex());
diff --git a/src/plugins/Transports/http/downloader.cpp b/src/plugins/Transports/http/downloader.cpp
index 76f7c31ac..37e9c3061 100644
--- a/src/plugins/Transports/http/downloader.cpp
+++ b/src/plugins/Transports/http/downloader.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2006-2009 by Ilya Kotov *
+ * Copyright (C) 2006-2010 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -20,11 +20,11 @@
#include <QApplication>
#include <QStringList>
-#include <QSettings>
#include <QDir>
#include <QMap>
#include <stdint.h>
#include <stdlib.h>
+#include <qmmp/qmmpsettings.h>
#include <qmmp/qmmp.h>
#include <qmmp/statehandler.h>
#include "downloader.h"
@@ -215,17 +215,16 @@ void Downloader::run()
qDebug("Downloader: starting download thread");
m_handle = curl_easy_init();
//proxy
- QSettings settings ( Qmmp::configFile(), QSettings::IniFormat );
- if (Qmmp::useProxy())
+ if (QmmpSettings::instance()->isProxyEnabled())
curl_easy_setopt(m_handle, CURLOPT_PROXY,
- strdup((Qmmp::proxy().host() + ":" +
- QString("%1").arg(Qmmp::proxy().port())).
+ strdup((QmmpSettings::instance()->proxy().host() + ":" +
+ QString("%1").arg(QmmpSettings::instance()->proxy().port())).
toLatin1 ().constData ()));
- if (Qmmp::useProxyAuth())
+ if (QmmpSettings::instance()->useProxyAuth())
curl_easy_setopt(m_handle, CURLOPT_PROXYUSERPWD,
- strdup((Qmmp::proxy().userName() + ":" +
- Qmmp::proxy().password()).
+ strdup((QmmpSettings::instance()->proxy().userName() + ":" +
+ QmmpSettings::instance()->proxy().password()).
toLatin1 ().constData ()));
// Set url to download
diff --git a/src/qmmp/CMakeLists.txt b/src/qmmp/CMakeLists.txt
index 3383293c4..f9c6e5fd9 100644
--- a/src/qmmp/CMakeLists.txt
+++ b/src/qmmp/CMakeLists.txt
@@ -54,7 +54,7 @@ SET(libqmmp_SRCS
emptyinputsource.cpp
metadatamanager.cpp
replaygain.cpp
- audiosettings.cpp
+ qmmpsettings.cpp
audioconverter.cpp
)
@@ -87,28 +87,33 @@ SET(libqmmp_MOC_HDRS
enginefactory.h
metadatamanager.h
replaygain.h
- audiosettings.h
+ qmmpsettings.h
audioconverter.h
)
SET(libqmmp_DEVEL_HDRS
+ visual.h
buffer.h
- decoderfactory.h
decoder.h
- effectfactory.h
- effect.h
+ output.h
fileinfo.h
outputfactory.h
- output.h
- qmmp.h
- recycler.h
+ decoderfactory.h
soundcore.h
+ effectfactory.h
+ effect.h
+ qmmp.h
statehandler.h
- visualfactory.h
- visual.h
volumecontrol.h
metadatamodel.h
tagmodel.h
+ qmmpaudioengine.h
+ abstractengine.h
+ audioparameters.h
+ inputsource.h
+ enginefactory.h
+ metadatamanager.h
+ qmmpsettings.h
)
QT4_WRAP_CPP(libqmmp_MOC_SRCS ${libqmmp_MOC_HDRS})
diff --git a/src/qmmp/abstractengine.cpp b/src/qmmp/abstractengine.cpp
index 3cbdc24bc..be7c0c4e3 100644
--- a/src/qmmp/abstractengine.cpp
+++ b/src/qmmp/abstractengine.cpp
@@ -40,11 +40,6 @@ QWaitCondition *AbstractEngine::cond()
return &m_waitCondition;
}
-void AbstractEngine::setAudioSettings(const AudioSettings &settings)
-{
- Q_UNUSED(settings);
-}
-
// static methods
QList<EngineFactory*> *AbstractEngine::m_factories = 0;
QStringList AbstractEngine::m_files;
diff --git a/src/qmmp/abstractengine.h b/src/qmmp/abstractengine.h
index abcbb4489..120971c8b 100644
--- a/src/qmmp/abstractengine.h
+++ b/src/qmmp/abstractengine.h
@@ -26,7 +26,7 @@
#include <QThread>
#include <QStringList>
#include "enginefactory.h"
-#include "audiosettings.h"
+#include "qmmpsettings.h"
class QIODevice;
class InputSource;
@@ -86,8 +86,6 @@ public:
* Subclass with own equalizer should reimplement this function.
*/
virtual void setEQEnabled(bool on) = 0;
-
- virtual void setAudioSettings(const AudioSettings &settings);
/*!
* Returns a list of decoder factories.
*/
diff --git a/src/qmmp/audiosettings.cpp b/src/qmmp/audiosettings.cpp
deleted file mode 100644
index f11befacc..000000000
--- a/src/qmmp/audiosettings.cpp
+++ /dev/null
@@ -1,62 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2010 by Ilya Kotov *
- * forkotov02@hotmail.ru *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-
-#include "audiosettings.h"
-
-AudioSettings::AudioSettings()
-{
- m_settings[REPLAYGAIN_MODE] = REPLAYGAIN_DISABLED;
- m_settings[REPLAYGAIN_PREAMP] = 0.0;
- m_settings[REPLAYGAIN_DEFAULT_GAIN] = 0.0;
- m_settings[REPLAYGAIN_PREVENT_CLIPPING] = FALSE;
- m_settings[SOFTWARE_VOLUME] = FALSE;
- m_settings[OUTPUT_16BIT] = FALSE;
-}
-
-AudioSettings::AudioSettings(const AudioSettings &settings)
-{
- m_settings = settings.m_settings;
-}
-
-void AudioSettings::operator=(const AudioSettings &settings)
-{
- m_settings = settings.m_settings;
-}
-
-bool AudioSettings::operator==(const AudioSettings &settings) const
-{
- return m_settings == settings.m_settings;
-}
-
-bool AudioSettings::operator!=(const AudioSettings &settings) const
-{
- return !operator==(settings);
-}
-
-void AudioSettings::setValue(Key key, QVariant value)
-{
- m_settings[key] = value;
-}
-
-QVariant AudioSettings::value(Key key) const
-{
- return m_settings[key];
-}
-
diff --git a/src/qmmp/audiosettings.h b/src/qmmp/audiosettings.h
deleted file mode 100644
index dcc2238d6..000000000
--- a/src/qmmp/audiosettings.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2010 by Ilya Kotov *
- * forkotov02@hotmail.ru *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-
-#ifndef AUDIOSETTINGS_H
-#define AUDIOSETTINGS_H
-
-#include <QVariant>
-#include <QMap>
-
-/*!
- * @author Ilya Kotov <forkotov02@hotmail.ru>
- */
-class AudioSettings
-{
-public:
- AudioSettings();
- AudioSettings(const AudioSettings &settings);
-
- enum ReplayGainMode
- {
- REPLAYGAIN_TRACK = 0,
- REPLAYGAIN_ALBUM,
- REPLAYGAIN_DISABLED
- };
- enum Key
- {
- REPLAYGAIN_MODE = 0,
- REPLAYGAIN_PREAMP,
- REPLAYGAIN_DEFAULT_GAIN,
- REPLAYGAIN_PREVENT_CLIPPING,
- SOFTWARE_VOLUME,
- OUTPUT_16BIT,
- };
- void operator=(const AudioSettings &settings);
- bool operator==(const AudioSettings &settings) const;
- bool operator!=(const AudioSettings &settings) const;
- void setValue(Key key, QVariant value);
- QVariant value(Key key) const;
-
-private:
- QMap <Key, QVariant> m_settings;
-};
-
-#endif // AUDIOSETTINGS_H
diff --git a/src/qmmp/metadatamanager.cpp b/src/qmmp/metadatamanager.cpp
index c1189736f..f4e2c993c 100644
--- a/src/qmmp/metadatamanager.cpp
+++ b/src/qmmp/metadatamanager.cpp
@@ -20,11 +20,11 @@
#include <QFile>
#include <QFileInfo>
-#include <QSettings>
#include "decoder.h"
#include "decoderfactory.h"
#include "abstractengine.h"
#include "inputsource.h"
+#include "qmmpsettings.h"
#include "metadatamanager.h"
MetaDataManager* MetaDataManager::m_instance = 0;
@@ -37,10 +37,7 @@ MetaDataManager::MetaDataManager()
m_decoderFactories = Decoder::factories();
m_engineFactories = AbstractEngine::factories();
m_inputSourceFactories = InputSource::factories();
- QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
- m_includeList = settings.value("Cover/include", (QStringList() << "*.jpg" << "*.png")).toStringList();
- m_excludeList = settings.value("Cover/exclude", (QStringList() << "*back*")).toStringList();
- m_depth = settings.value("Cover/depth", 0).toInt();
+ m_settings = QmmpSettings::instance();
}
MetaDataManager::~MetaDataManager()
@@ -216,41 +213,20 @@ QString MetaDataManager::getCoverPath(const QString &url) const
else //local file
{
QString p = QFileInfo(url).absolutePath();
- QFileInfoList l = findCoverFiles(p, m_depth);
+ QFileInfoList l = findCoverFiles(p, m_settings->coverSearchDepth());
return l.isEmpty() ? QString() : l.at(0).filePath();
}
return QString();
}
-QStringList MetaDataManager::coverNameFilters(bool include) const
-{
- return include ? m_includeList : m_excludeList;
-}
-
-int MetaDataManager::MetaDataManager::coverSearchDepth() const
-{
- return m_depth;
-}
-
-void MetaDataManager::setCoverSearchSettings(const QStringList &inc, const QStringList &exc, int depth)
-{
- m_includeList = inc;
- m_excludeList = exc;
- m_depth = depth;
- QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
- settings.setValue("Cover/include", m_includeList);
- settings.setValue("Cover/exclude", m_excludeList);
- settings.setValue("Cover/depth", m_depth);
-}
-
QFileInfoList MetaDataManager::findCoverFiles(QDir dir, int depth) const
{
dir.setFilter(QDir::Files | QDir::Hidden | QDir::NoSymLinks);
dir.setSorting(QDir::Name);
- QFileInfoList file_list = dir.entryInfoList(m_includeList);
+ QFileInfoList file_list = dir.entryInfoList(m_settings->coverNameFilters());
foreach(QFileInfo i, file_list)
{
- foreach(QString pattern, m_excludeList)
+ foreach(QString pattern, m_settings->coverNameFilters(FALSE))
{
if(QRegExp (pattern, Qt::CaseInsensitive, QRegExp::Wildcard).exactMatch(i.fileName()))
{
diff --git a/src/qmmp/metadatamanager.h b/src/qmmp/metadatamanager.h
index a91ef4cdc..30570d28b 100644
--- a/src/qmmp/metadatamanager.h
+++ b/src/qmmp/metadatamanager.h
@@ -31,6 +31,7 @@
class DecoderFactory;
class EngineFactory;
class InputSourceFactory;
+class QmmpSettings;
/*!
* @author Ilya Kotov <forkotov02@hotmail.ru>
*/
@@ -81,23 +82,6 @@ public:
*/
QString getCoverPath(const QString &fileName) const;
/*!
- * If \b include is \b true, this function returns include cover file name filters,
- * otherwise returns exclude filters.
- */
- QStringList coverNameFilters(bool include = TRUE) const;
- /*!
- * Returns a depth of recursive cover file search.
- */
- int coverSearchDepth() const;
- /*!
- * Sets cover search options.
- * @param inc Include cover name filters
- * @param exc Exclude cover name filters
- * @param depth Depth of recursive cover file search.
- * Recursive cover file search can be disabled by setting \b depth to \b 0.
- */
- void setCoverSearchSettings(const QStringList &inc, const QStringList &exc, int depth);
- /*!
* Returns a pointer to the MetaDataManager instance.
*/
static MetaDataManager* instance();
@@ -108,9 +92,7 @@ private:
QList <DecoderFactory *> *m_decoderFactories;
QList <EngineFactory *> *m_engineFactories;
QList <InputSourceFactory *> *m_inputSourceFactories;
- QStringList m_includeList;
- QStringList m_excludeList;
- int m_depth;
+ QmmpSettings *m_settings;
static MetaDataManager* m_instance;
};
diff --git a/src/qmmp/qmmp.cpp b/src/qmmp/qmmp.cpp
index 5be4dbe1e..01228d5e5 100644
--- a/src/qmmp/qmmp.cpp
+++ b/src/qmmp/qmmp.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008-2009 by Ilya Kotov *
+ * Copyright (C) 2008-2010 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -55,42 +55,6 @@ const QString Qmmp::strVersion()
#endif
}
-bool Qmmp::useProxy()
-{
- QSettings settings(configFile(), QSettings::IniFormat);
- return settings.value("Proxy/use_proxy", FALSE).toBool();
-}
-
-bool Qmmp::useProxyAuth()
-{
- QSettings settings(configFile(), QSettings::IniFormat);
- return settings.value("Proxy/authentication", FALSE).toBool();
-}
-
-const QUrl Qmmp::proxy()
-{
- QSettings settings(configFile(), QSettings::IniFormat);
- return settings.value("Proxy/url").toUrl();
-}
-
-void Qmmp::setProxyEnabled(bool yes)
-{
- QSettings settings(configFile(), QSettings::IniFormat);
- settings.setValue("Proxy/use_proxy", yes);
-}
-
-void Qmmp::setProxyAuthEnabled(bool yes)
-{
- QSettings settings(configFile(), QSettings::IniFormat);
- settings.setValue("Proxy/authentication", yes);
-}
-
-void Qmmp::setProxy (const QUrl &proxy)
-{
- QSettings settings(configFile(), QSettings::IniFormat);
- settings.setValue("Proxy/url", proxy);
-}
-
const QString Qmmp::pluginsPath()
{
QByteArray path = qgetenv("QMMP_PLUGINS");
diff --git a/src/qmmp/qmmp.h b/src/qmmp/qmmp.h
index 62cf446bf..2f30d0c6d 100644
--- a/src/qmmp/qmmp.h
+++ b/src/qmmp/qmmp.h
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008-2009 by Ilya Kotov *
+ * Copyright (C) 2008-2010 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -72,7 +72,7 @@ public:
PCM_S8 = 0, /*!< Signed 8 bit */
PCM_S16LE, /*!< Signed 16 bit Little Endian */
PCM_S24LE, /*!< Signed 24 bit Little Endian using low three bytes in 32-bit word */
- PCM_S32LE /*!< Signed 32 bit Little Endian */
+ PCM_S32LE /*!< Signed 32 bit Little Endian */
};
/*!
* Returns configuration file path.
@@ -87,32 +87,6 @@ public:
*/
static const QString strVersion();
/*!
- * Returns \b true if global proxy is enabled, otherwise returns \b false
- */
- static bool useProxy();
- /*!
- * Returns \b true if global proxy authentication is enabled, otherwise returns \b false
- */
- static bool useProxyAuth();
- /*!
- * Returns global proxy url.
- */
- static const QUrl proxy();
- /*!
- * Enables or disables global proxy.
- * @param yes Proxy enable state (\b true - enabled, \b false - disabled)
- */
- static void setProxyEnabled(bool yes);
- /*!
- * Enables or disables global proxy authentication.
- * @param yes Proxy authentication enable state (\b true - enabled, \b false - disabled)
- */
- static void setProxyAuthEnabled(bool yes);
- /*!
- * Sets global proxy url to \b proxy
- */
- static void setProxy (const QUrl &proxy);
- /*!
* Returns the location of the installed Qmmp plugins.
*/
static const QString pluginsPath();
diff --git a/src/qmmp/qmmp.pro b/src/qmmp/qmmp.pro
index cfd6194d9..316a969c2 100644
--- a/src/qmmp/qmmp.pro
+++ b/src/qmmp/qmmp.pro
@@ -31,7 +31,7 @@ HEADERS += recycler.h \
metadatamanager.h \
replaygain.h \
audioconverter.h \
- audiosettings.h
+ qmmpsettings.h
SOURCES += recycler.cpp \
decoder.cpp \
output.cpp \
@@ -56,7 +56,7 @@ SOURCES += recycler.cpp \
metadatamanager.cpp \
replaygain.cpp \
audioconverter.cpp \
- audiosettings.cpp
+ qmmpsettings.cpp
FORMS +=
unix:TARGET = ../../lib/qmmp
win32:TARGET = ../../../bin/qmmp
diff --git a/src/qmmp/qmmpaudioengine.cpp b/src/qmmp/qmmpaudioengine.cpp
index 0ff726b36..618589ce9 100644
--- a/src/qmmp/qmmpaudioengine.cpp
+++ b/src/qmmp/qmmpaudioengine.cpp
@@ -51,6 +51,9 @@ QmmpAudioEngine::QmmpAudioEngine(QObject *parent)
m_decoder = 0;
m_output = 0;
m_replayGain = new ReplayGain;
+ m_settings = QmmpSettings::instance();
+ connect(m_settings,SIGNAL(replayGainSettingsChanged()), SLOT(updateReplayGainSettings()));
+ updateReplayGainSettings();
reset();
m_instance = this;
}
@@ -166,12 +169,6 @@ void QmmpAudioEngine::setEQEnabled(bool on)
mutex()->unlock();
}
-void QmmpAudioEngine::setAudioSettings(const AudioSettings &settings)
-{
- m_as = settings;
- m_replayGain->setAudioSettings(settings);
-}
-
void QmmpAudioEngine::addEffect(EffectFactory *factory)
{
if(m_output && m_output->isRunning())
@@ -343,6 +340,16 @@ void QmmpAudioEngine::finish()
emit playbackFinished();
}
+void QmmpAudioEngine::updateReplayGainSettings()
+{
+ mutex()->lock();
+ m_replayGain->updateSettings(m_settings->replayGainMode(),
+ m_settings->replayGainPreamp(),
+ m_settings->replayGainDefaultGain(),
+ m_settings->replayGainPreventClipping());
+ mutex()->unlock();
+}
+
void QmmpAudioEngine::run()
{
Q_ASSERT(m_chan == 0);
@@ -567,7 +574,7 @@ Output *QmmpAudioEngine::createOutput(Decoder *d)
}
m_useEq = m_eqEnabled && ap.format() == Qmmp::PCM_S16LE;
- if(m_as.value(AudioSettings::OUTPUT_16BIT).toBool())
+ if(m_settings->use16BitOutput())
m_effects.prepend (new AudioConverter());
foreach(Effect *effect, m_effects)
diff --git a/src/qmmp/qmmpaudioengine.h b/src/qmmp/qmmpaudioengine.h
index 5428dbba7..019088d93 100644
--- a/src/qmmp/qmmpaudioengine.h
+++ b/src/qmmp/qmmpaudioengine.h
@@ -35,6 +35,7 @@ class Decoder;
class InputSource;
class EffectFactory;
class ReplayGain;
+class QmmpSettings;
class QmmpAudioEngine : public AbstractEngine
{
@@ -51,7 +52,6 @@ public:
void pause();
void setEQ(double bands[10], double preamp);
void setEQEnabled(bool on);
- void setAudioSettings(const AudioSettings &settings);
void addEffect(EffectFactory *factory);
void removeEffect(EffectFactory *factory);
@@ -59,6 +59,7 @@ public:
private slots:
void finish();
+ void updateReplayGainSettings();
private:
void run();
@@ -89,8 +90,7 @@ private:
bool m_next;
static QmmpAudioEngine *m_instance;
ReplayGain *m_replayGain;
- AudioSettings m_as;
-
+ QmmpSettings *m_settings;
};
#endif // QMMPAUDIOENGINE_H
diff --git a/src/qmmp/qmmpsettings.cpp b/src/qmmp/qmmpsettings.cpp
new file mode 100644
index 000000000..5a92bbe06
--- /dev/null
+++ b/src/qmmp/qmmpsettings.cpp
@@ -0,0 +1,185 @@
+/***************************************************************************
+ * Copyright (C) 2010 by Ilya Kotov *
+ * forkotov02@hotmail.ru *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+
+#include <QSettings>
+#include <QApplication>
+#include "qmmp.h"
+#include "qmmpsettings.h"
+
+QmmpSettings *QmmpSettings::m_instance = 0;
+
+QmmpSettings::QmmpSettings(QObject *parent) : QObject(parent)
+{
+ m_instance = this;
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ //replaygain settings
+ settings.beginGroup("ReplayGain");
+ m_rg_mode = (ReplayGainMode) settings.value("mode", REPLAYGAIN_DISABLED).toInt();
+ m_rg_preamp = settings.value("preamp", 0.0).toDouble();
+ m_rg_defaut_gain = settings.value("default_gain", 0.0).toDouble();
+ m_rg_prevent_clipping = settings.value("prevent_clipping", FALSE).toBool();
+ settings.endGroup();
+ //audio settings
+ m_aud_software_volume = settings.value("Output/software_volume", FALSE).toBool();
+ m_aud_16bit = settings.value("Output/use_16bit", FALSE).toBool();
+ //cover settings
+ settings.beginGroup("Cover");
+ m_cover_inc = settings.value("include", (QStringList() << "*.jpg" << "*.png")).toStringList();
+ m_cover_exclude = settings.value("exclude", (QStringList() << "*back*")).toStringList();
+ m_cover_depth = settings.value("depth", 0).toInt();
+ m_cover_use_files = settings.value("use_files", TRUE).toBool();
+ settings.endGroup();
+ //network settings
+ m_proxy_enabled = settings.value("Proxy/use_proxy", FALSE).toBool();
+ m_proxy_auth = settings.value("Proxy/authentication", FALSE).toBool();
+ m_proxy_url = settings.value("Proxy/url").toUrl();
+}
+
+QmmpSettings::~QmmpSettings()
+{
+ sync();
+ m_instance = 0;
+}
+
+QmmpSettings::ReplayGainMode QmmpSettings::replayGainMode() const
+{
+ return m_rg_mode;
+}
+
+double QmmpSettings::replayGainPreamp() const
+{
+ return m_rg_preamp;
+}
+
+double QmmpSettings::replayGainDefaultGain() const
+{
+ return m_rg_defaut_gain;
+}
+
+bool QmmpSettings::replayGainPreventClipping() const
+{
+ return m_rg_prevent_clipping;
+}
+
+void QmmpSettings::setReplayGainSettings(ReplayGainMode mode, double preamp, double def_gain, bool clip)
+{
+ m_rg_mode = mode;
+ m_rg_preamp = preamp;
+ m_rg_defaut_gain = def_gain;
+ m_rg_prevent_clipping = clip;
+ emit replayGainSettingsChanged();
+}
+
+bool QmmpSettings::useSoftVolume() const
+{
+ return m_aud_software_volume;
+}
+
+bool QmmpSettings::use16BitOutput() const
+{
+ return m_aud_16bit;
+}
+
+void QmmpSettings::setAudioSettings(bool soft_volume, bool use_16bit)
+{
+ m_aud_software_volume = soft_volume;
+ m_aud_16bit = use_16bit;
+ emit audioSettingsChanged();
+}
+
+QStringList QmmpSettings::coverNameFilters(bool include) const
+{
+ return include ? m_cover_inc : m_cover_exclude;
+}
+
+int QmmpSettings::coverSearchDepth() const
+{
+ return m_cover_depth;
+}
+
+bool QmmpSettings::useCoverFiles() const
+{
+ return m_cover_use_files;
+}
+
+void QmmpSettings::setCoverSettings(QStringList inc, QStringList exc, int depth, bool use_files)
+{
+ m_cover_inc = inc;
+ m_cover_exclude = exc;
+ m_cover_depth = depth;
+ m_cover_use_files = use_files;
+ emit coverSettingsChanged();
+}
+
+bool QmmpSettings::isProxyEnabled() const
+{
+ return m_proxy_enabled;
+}
+
+bool QmmpSettings::useProxyAuth() const
+{
+ return m_proxy_auth;
+}
+
+QUrl QmmpSettings::proxy() const
+{
+ return m_proxy_url;
+}
+
+void QmmpSettings::setNetworkSettings(bool use_proxy, bool auth, const QUrl &proxy)
+{
+ m_proxy_enabled = use_proxy;
+ m_proxy_auth = auth;
+ m_proxy_url = proxy;
+ emit networkSettingsChanged();
+}
+
+void QmmpSettings::sync()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ //replaygain settings
+ settings.beginGroup("ReplayGain");
+ settings.setValue("mode", m_rg_mode);
+ settings.setValue("preamp", m_rg_preamp);
+ settings.setValue("default_gain", m_rg_defaut_gain);
+ settings.setValue("prevent_clipping", m_rg_prevent_clipping);
+ settings.endGroup();
+ //audio settings
+ settings.setValue("Output/software_volume", m_aud_software_volume);
+ settings.setValue("Output/use_16bit", m_aud_16bit);
+ //cover settings
+ settings.beginGroup("Cover");
+ settings.setValue("include", m_cover_inc);
+ settings.setValue("exclude", m_cover_exclude);
+ settings.setValue("depth", m_cover_depth);
+ settings.setValue("use_files", m_cover_use_files);
+ settings.endGroup();
+ //network settings
+ settings.setValue("Proxy/use_proxy", m_proxy_enabled);
+ settings.setValue("Proxy/authentication", m_proxy_auth);
+ settings.setValue("Proxy/url", m_proxy_url);
+}
+
+QmmpSettings* QmmpSettings::instance()
+{
+ if(!m_instance)
+ return new QmmpSettings(qApp);
+ return m_instance;
+}
diff --git a/src/qmmp/qmmpsettings.h b/src/qmmp/qmmpsettings.h
new file mode 100644
index 000000000..0bb68ff45
--- /dev/null
+++ b/src/qmmp/qmmpsettings.h
@@ -0,0 +1,121 @@
+/***************************************************************************
+ * Copyright (C) 2010 by Ilya Kotov *
+ * forkotov02@hotmail.ru *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+
+#ifndef QMMPSETTINGS_H
+#define QMMPSETTINGS_H
+
+#include <QObject>
+#include <QUrl>
+#include <QStringList>
+
+/*!
+ * @author Ilya Kotov <forkotov02@hotmail.ru>
+ */
+class QmmpSettings : public QObject
+{
+Q_OBJECT
+public:
+ QmmpSettings(QObject *parent = 0);
+ ~QmmpSettings();
+
+ enum ReplayGainMode
+ {
+ REPLAYGAIN_TRACK = 0,
+ REPLAYGAIN_ALBUM,
+ REPLAYGAIN_DISABLED
+ };
+
+ QmmpSettings::ReplayGainMode replayGainMode() const;
+ double replayGainPreamp() const;
+ double replayGainDefaultGain() const;
+ bool replayGainPreventClipping() const;
+ void setReplayGainSettings(ReplayGainMode mode, double preamp, double default_gain, bool clip);
+
+ bool useSoftVolume() const;
+ bool use16BitOutput() const;
+ void setAudioSettings(bool soft_volume, bool use_16bit);
+ /*!
+ * If \b include is \b true, this function returns include cover file name filters,
+ * otherwise returns exclude filters.
+ */
+ QStringList coverNameFilters(bool include = TRUE) const;
+ /*!
+ * Returns a depth of recursive cover file search.
+ */
+ int coverSearchDepth() const;
+ bool useCoverFiles() const;
+ /*!
+ * Sets cover search options.
+ * @param inc Include cover name filters
+ * @param exc Exclude cover name filters
+ * @param depth Depth of recursive cover file search.
+ * Recursive cover file search can be disabled by setting \b depth to \b 0.
+ */
+ void setCoverSettings(QStringList inc, QStringList exc, int depth, bool use_files);
+ /*!
+ * Returns \b true if global proxy is enabled, otherwise returns \b false
+ */
+ bool isProxyEnabled() const;
+ /*!
+ * Returns \b true if global proxy authentication is enabled, otherwise returns \b false
+ */
+ bool useProxyAuth() const;
+ /*!
+ * Returns global proxy url.
+ */
+ QUrl proxy() const;
+ void setNetworkSettings(bool use_proxy, bool auth, const QUrl &proxy);
+
+
+ static QmmpSettings* instance();
+
+signals:
+ void replayGainSettingsChanged();
+ void audioSettingsChanged();
+ void coverSettingsChanged();
+ void networkSettingsChanged();
+
+private slots:
+ void sync();
+
+private:
+ //replaygain settings
+ QmmpSettings::ReplayGainMode m_rg_mode;
+ double m_rg_preamp;
+ double m_rg_defaut_gain;
+ bool m_rg_prevent_clipping;
+ //audio settings
+ bool m_aud_software_volume;
+ bool m_aud_16bit;
+ //cover settings
+ QStringList m_cover_inc;
+ QStringList m_cover_exclude;
+ int m_cover_depth;
+ bool m_cover_use_files;
+ //network settings
+ bool m_proxy_enabled;
+ bool m_proxy_auth;
+ QUrl m_proxy_url;
+
+ static QmmpSettings* m_instance;
+
+};
+
+#endif // QMMPSETTINGS_H
diff --git a/src/qmmp/replaygain.cpp b/src/qmmp/replaygain.cpp
index ce1013b47..79cad22d3 100644
--- a/src/qmmp/replaygain.cpp
+++ b/src/qmmp/replaygain.cpp
@@ -25,6 +25,10 @@ ReplayGain::ReplayGain()
{
m_sampleSize = 2;
m_scale = 1.0;
+ m_mode = QmmpSettings::REPLAYGAIN_DISABLED;
+ m_preamp = 0.0;
+ m_default_gain = 0.0;
+ m_prevent_clipping = FALSE;
}
void ReplayGain::setSampleSize(int size)
@@ -37,7 +41,7 @@ void ReplayGain::setReplayGainInfo(const QMap<Qmmp::ReplayGainKey, double> &info
{
m_info = info;
updateScale();
- if(m_settings.value(AudioSettings::REPLAYGAIN_MODE).toInt() != AudioSettings::REPLAYGAIN_DISABLED)
+ if(m_mode != QmmpSettings::REPLAYGAIN_DISABLED)
{
qDebug("ReplayGain: track: gain=%f dB, peak=%f; album: gain=%f dB, peak=%f",
m_info[Qmmp::REPLAYGAIN_TRACK_GAIN],
@@ -50,16 +54,19 @@ void ReplayGain::setReplayGainInfo(const QMap<Qmmp::ReplayGainKey, double> &info
qDebug("ReplayGain: disabled");
}
-void ReplayGain::setAudioSettings(const AudioSettings &settings)
+void ReplayGain::updateSettings(QmmpSettings::ReplayGainMode mode, double preamp,
+ double default_gain, bool clip)
{
- m_settings = settings;
+ m_mode = mode;
+ m_preamp = preamp;
+ m_default_gain = default_gain;
+ m_prevent_clipping = clip;
setReplayGainInfo(m_info);
}
void ReplayGain::applyReplayGain(char *data, qint64 size)
{
- if( m_scale == 1.0 ||
- m_settings.value(AudioSettings::REPLAYGAIN_MODE).toInt() == AudioSettings::REPLAYGAIN_DISABLED)
+ if(m_mode == QmmpSettings::REPLAYGAIN_DISABLED || m_scale == 1.0)
return;
size = size/m_sampleSize;
if(m_sampleSize == 2)
@@ -84,25 +91,25 @@ void ReplayGain::updateScale()
{
double peak = 0.0;
m_scale = 1.0;
- switch(m_settings.value(AudioSettings::REPLAYGAIN_MODE).toInt())
+ switch(m_mode)
{
- case AudioSettings::REPLAYGAIN_TRACK:
+ case QmmpSettings::REPLAYGAIN_TRACK:
m_scale = pow(10.0, m_info[Qmmp::REPLAYGAIN_TRACK_GAIN]/20);
peak = m_info[Qmmp::REPLAYGAIN_TRACK_PEAK];
break;
- case AudioSettings::REPLAYGAIN_ALBUM:
+ case QmmpSettings::REPLAYGAIN_ALBUM:
m_scale = pow(10.0, m_info[Qmmp::REPLAYGAIN_ALBUM_GAIN]/20);
peak = m_info[Qmmp::REPLAYGAIN_ALBUM_PEAK];
break;
- case AudioSettings::REPLAYGAIN_DISABLED:
+ case QmmpSettings::REPLAYGAIN_DISABLED:
m_scale = 1.0;
return;
}
if(m_scale == 1.0)
- m_scale = pow(10.0, m_settings.value(AudioSettings::REPLAYGAIN_DEFAULT_GAIN).toDouble()/20);
- m_scale *= pow(10.0, m_settings.value(AudioSettings::REPLAYGAIN_PREAMP).toDouble()/20);
- if(peak > 0.0 && m_settings.value(AudioSettings::REPLAYGAIN_PREVENT_CLIPPING).toBool())
+ m_scale = pow(10.0, m_default_gain/20);
+ m_scale *= pow(10.0, m_preamp/20);
+ if(peak > 0.0 && m_prevent_clipping)
m_scale = m_scale*peak > 1.0 ? 1.0 / peak : m_scale;
m_scale = qMin(m_scale, 5.6234); // +15 dB
- m_scale = qMax(m_scale, 0.1778); // -15 dB
+ m_scale = qMax(m_scale, 0.1778); // -15 dB*/
}
diff --git a/src/qmmp/replaygain.h b/src/qmmp/replaygain.h
index 6ce5f42ac..56bc0c7a3 100644
--- a/src/qmmp/replaygain.h
+++ b/src/qmmp/replaygain.h
@@ -23,8 +23,8 @@
#include <QtGlobal>
#include <QMap>
+#include "qmmpsettings.h"
#include "qmmp.h"
-#include "audiosettings.h"
/*!
* @author Ilya Kotov <forkotov02@hotmail.ru>
@@ -35,7 +35,8 @@ public:
ReplayGain();
void setSampleSize(int size);
- void setAudioSettings(const AudioSettings &settings);
+ void updateSettings(QmmpSettings::ReplayGainMode mode, double preamp,
+ double default_gain, bool clip);
void setReplayGainInfo(const QMap<Qmmp::ReplayGainKey, double> &info);
void applyReplayGain(char *data, qint64 size);
@@ -43,8 +44,11 @@ private:
void updateScale();
int m_sampleSize;
QMap<Qmmp::ReplayGainKey, double> m_info;
- AudioSettings m_settings;
double m_scale;
+ QmmpSettings::ReplayGainMode m_mode;
+ double m_preamp;
+ double m_default_gain;
+ bool m_prevent_clipping;
};
#endif // REPLAYGAIN_H
diff --git a/src/qmmp/soundcore.cpp b/src/qmmp/soundcore.cpp
index 3f9b21634..35654581f 100644
--- a/src/qmmp/soundcore.cpp
+++ b/src/qmmp/soundcore.cpp
@@ -31,6 +31,7 @@
#include "volumecontrol.h"
#include "enginefactory.h"
#include "metadatamanager.h"
+#include "qmmpsettings.h"
#include "soundcore.h"
SoundCore *SoundCore::m_instance = 0;
@@ -64,21 +65,7 @@ SoundCore::SoundCore(QObject *parent)
connect(m_handler, SIGNAL(bufferingProgress(int)), SIGNAL(bufferingProgress(int)));
m_volumeControl = VolumeControl::create(this);
connect(m_volumeControl, SIGNAL(volumeChanged(int, int)), SIGNAL(volumeChanged(int, int)));
- QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
- //replaygain settings
- settings.beginGroup("ReplayGain");
- m_as.setValue(AudioSettings::REPLAYGAIN_MODE,
- settings.value("mode", AudioSettings::REPLAYGAIN_DISABLED));
- m_as.setValue(AudioSettings::REPLAYGAIN_PREAMP,
- settings.value("preamp", 0.0));
- m_as.setValue(AudioSettings::REPLAYGAIN_DEFAULT_GAIN,
- settings.value("default_gain", 0.0));
- m_as.setValue(AudioSettings::REPLAYGAIN_PREVENT_CLIPPING,
- settings.value("prevent_clipping", FALSE));
- settings.endGroup();
- //other settings
- m_as.setValue(AudioSettings::SOFTWARE_VOLUME, settings.value("Output/software_volume", FALSE));
- m_as.setValue(AudioSettings::OUTPUT_16BIT, settings.value("Output/use_16bit", FALSE));
+ connect(QmmpSettings::instance(), SIGNAL(audioSettingsChanged()), SLOT(updateVolume()));
}
@@ -189,9 +176,8 @@ int SoundCore::rightVolume()
return m_volumeControl->right();
}
-void SoundCore::setSoftwareVolume(bool b)
+void SoundCore::updateVolume()
{
- SoftwareVolume::setEnabled(b); //TODO move to engine settings
if (m_engine)
m_engine->mutex()->lock();
delete m_volumeControl;
@@ -257,7 +243,6 @@ bool SoundCore::enqueue(InputSource *s)
setEQ(m_bands, m_preamp);
setEQEnabled(m_useEQ);
- setAudioSettings(m_as);
if(m_engine->enqueue(s))
{
m_source = s->url();
@@ -296,7 +281,6 @@ bool SoundCore::enqueue(InputSource *s)
connect(engine, SIGNAL(playbackFinished()), SIGNAL(finished()));
engine->setEQ(m_bands, m_preamp);
engine->setEQEnabled(m_useEQ);
- engine->setAudioSettings(m_as);
if (m_handler->state() == Qmmp::Playing || m_handler->state() == Qmmp::Paused)
{
if(m_pendingEngine)
@@ -326,31 +310,6 @@ void SoundCore::startPendingEngine()
}
}
-AudioSettings SoundCore::audioSettings() const
-{
- return m_as;
-}
-
-void SoundCore::setAudioSettings(const AudioSettings &as)
-{
- m_as = as;
- QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
- //replaygain settings
- settings.beginGroup("ReplayGain");
- settings.setValue("mode", m_as.value(AudioSettings::REPLAYGAIN_MODE));
- settings.setValue("preamp", m_as.value(AudioSettings::REPLAYGAIN_PREAMP));
- settings.setValue("default_gain", m_as.value(AudioSettings::REPLAYGAIN_DEFAULT_GAIN));
- settings.setValue("prevent_clipping", m_as.value(AudioSettings::REPLAYGAIN_PREVENT_CLIPPING));
- settings.endGroup();
- //other settings
- settings.setValue("Output/software_volume", m_as.value(AudioSettings::SOFTWARE_VOLUME));
- settings.setValue("Output/use_16bit", m_as.value(AudioSettings::OUTPUT_16BIT));
- setSoftwareVolume(m_as.value(AudioSettings::SOFTWARE_VOLUME).toBool());
- //apply replaygain settings
- if(m_engine)
- m_engine->setAudioSettings(m_as);
-}
-
SoundCore* SoundCore::instance()
{
return m_instance;
diff --git a/src/qmmp/soundcore.h b/src/qmmp/soundcore.h
index fbe7edb71..aaf32a8fa 100644
--- a/src/qmmp/soundcore.h
+++ b/src/qmmp/soundcore.h
@@ -26,7 +26,7 @@
#include "output.h"
#include "visual.h"
#include "qmmp.h"
-#include "audiosettings.h"
+#include "qmmpsettings.h"
class QIODevice;
class VolumeControl;
@@ -106,9 +106,6 @@ public:
* Returns the metdata string associated with the given \b key.
*/
QString metaData(Qmmp::MetaData key);
-
- AudioSettings audioSettings() const;
- void setAudioSettings(const AudioSettings &as);
/*!
* Returns a pointer to the SoundCore instance.
*/
@@ -117,11 +114,6 @@ public:
public slots:
/*!
- * This funtion allows to force software volume for all output plugins.
- * @param yes Software volume enable state (\b true - enable, \b false - disable)
- */
- void setSoftwareVolume(bool yes);
- /*!
* Sets volume.
* @param left - volume of the left channel \b [0..100].
* @param right - volume of the right channel \b [0..100].
@@ -207,6 +199,7 @@ signals:
private slots:
bool enqueue(InputSource *);
void startPendingEngine();
+ void updateVolume();
private:
Decoder* m_decoder;
@@ -227,7 +220,6 @@ private:
AbstractEngine *m_engine;
AbstractEngine *m_pendingEngine;
QList<InputSource *> m_pendingSources;
- AudioSettings m_as; //audio settings
};
#endif
diff --git a/src/qmmp/volumecontrol.cpp b/src/qmmp/volumecontrol.cpp
index 500b1f5da..f75f9effb 100644
--- a/src/qmmp/volumecontrol.cpp
+++ b/src/qmmp/volumecontrol.cpp
@@ -19,11 +19,10 @@
***************************************************************************/
#include <QTimer>
-#include <QSettings>
#include <QDir>
-
+#include <QSettings>
+#include "qmmpsettings.h"
#include "output.h"
-
#include "volumecontrol.h"
VolumeControl::VolumeControl(QObject *parent)
@@ -40,8 +39,7 @@ VolumeControl::~VolumeControl()
VolumeControl *VolumeControl::create(QObject *parent)
{
- QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
- if (settings.value("Volume/software_volume", FALSE).toBool())
+ if(QmmpSettings::instance()->useSoftVolume())
return new SoftwareVolume(parent);
VolumeControl *control = 0;
if (Output::currentFactory())
@@ -187,8 +185,3 @@ SoftwareVolume *SoftwareVolume::instance()
return m_instance;
}
-void SoftwareVolume::setEnabled(bool b)
-{
- QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
- settings.setValue("Volume/software_volume", b);
-}
diff --git a/src/qmmp/volumecontrol.h b/src/qmmp/volumecontrol.h
index 54a10846a..37e59ddd4 100644
--- a/src/qmmp/volumecontrol.h
+++ b/src/qmmp/volumecontrol.h
@@ -122,11 +122,6 @@ public:
* Returns software volume object instance.
*/
static SoftwareVolume *instance();
- /*!
- * This funtion allows to force software volume for all output plugins.
- * @param b Software volume enable state (\b true - enable, \b false - disable)
- */
- static void setEnabled(bool b);
protected:
/*! @internal
diff --git a/src/ui/addurldialog.cpp b/src/ui/addurldialog.cpp
index 542044f66..3cdada075 100644
--- a/src/ui/addurldialog.cpp
+++ b/src/ui/addurldialog.cpp
@@ -27,6 +27,7 @@
#include <qmmpui/playlistparser.h>
#include <qmmpui/playlistformat.h>
#include <qmmpui/playlistmodel.h>
+#include <qmmp/qmmpsettings.h>
#include <qmmp/qmmp.h>
#define HISTORY_SIZE 10
@@ -41,11 +42,12 @@ AddUrlDialog::AddUrlDialog( QWidget * parent, Qt::WindowFlags f) : QDialog(paren
urlComboBox->addItems(m_history);
m_http = new QHttp(this);
//load global proxy settings
- if (Qmmp::useProxy())
- m_http->setProxy(Qmmp::proxy().host(),
- Qmmp::proxy().port(),
- Qmmp::useProxyAuth() ? Qmmp::proxy().userName() : QString(),
- Qmmp::useProxyAuth() ? Qmmp::proxy().password() : QString());
+ QmmpSettings *gs = QmmpSettings::instance();
+ if (gs->isProxyEnabled())
+ m_http->setProxy(gs->proxy().host(),
+ gs->proxy().port(),
+ gs->useProxyAuth() ? gs->proxy().userName() : QString(),
+ gs->useProxyAuth() ? gs->proxy().password() : QString());
}
AddUrlDialog::~AddUrlDialog()
diff --git a/src/ui/configdialog.cpp b/src/ui/configdialog.cpp
index a3a569a6a..3bd39bdc1 100644
--- a/src/ui/configdialog.cpp
+++ b/src/ui/configdialog.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2007-2009 by Ilya Kotov *
+ * Copyright (C) 2007-2010 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -36,7 +36,7 @@
#include <qmmp/soundcore.h>
#include <qmmp/enginefactory.h>
#include <qmmp/abstractengine.h>
-#include <qmmp/metadatamanager.h>
+#include <qmmp/qmmpsettings.h>
#include <qmmpui/generalfactory.h>
#include <qmmpui/general.h>
#include <qmmpui/generalhandler.h>
@@ -78,9 +78,9 @@ ConfigDialog::ConfigDialog (QWidget *parent)
connect (ui.listWidget, SIGNAL (itemClicked (QListWidgetItem *)), this, SLOT (changeSkin()));
ui.listWidget->setIconSize (QSize (105,34));
m_skin = Skin::instance();
- ui.replayGainModeComboBox->addItem (tr("Track"), AudioSettings::REPLAYGAIN_TRACK);
- ui.replayGainModeComboBox->addItem (tr("Album"), AudioSettings::REPLAYGAIN_ALBUM);
- ui.replayGainModeComboBox->addItem (tr("Disabled"), AudioSettings::REPLAYGAIN_DISABLED);
+ ui.replayGainModeComboBox->addItem (tr("Track"), QmmpSettings::REPLAYGAIN_TRACK);
+ ui.replayGainModeComboBox->addItem (tr("Album"), QmmpSettings::REPLAYGAIN_ALBUM);
+ ui.replayGainModeComboBox->addItem (tr("Disabled"), QmmpSettings::REPLAYGAIN_DISABLED);
readSettings();
m_reader = new SkinReader(this);
loadSkins();
@@ -117,14 +117,15 @@ void ConfigDialog::readSettings()
ui.numbersCheckBox->setChecked(settings.value ("PlayList/show_numbers", TRUE).toBool());
ui.playlistsCheckBox->setChecked(settings.value("PlayList/show_plalists", FALSE).toBool());
ui.popupCheckBox->setChecked(settings.value("PlayList/show_popup", FALSE).toBool());
+ QmmpSettings *gs = QmmpSettings::instance();
//proxy settings
- ui.enableProxyCheckBox->setChecked(Qmmp::useProxy());
- ui.authProxyCheckBox->setChecked(Qmmp::useProxyAuth());
- ui.hostLineEdit->setText(Qmmp::proxy().host());
- if (Qmmp::proxy().port(0))
- ui.portLineEdit->setText(QString::number(Qmmp::proxy().port(0)));
- ui.proxyUserLineEdit->setText(Qmmp::proxy().userName());
- ui.proxyPasswLineEdit->setText(Qmmp::proxy().password());
+ ui.enableProxyCheckBox->setChecked(gs->isProxyEnabled());
+ ui.authProxyCheckBox->setChecked(gs->useProxyAuth());
+ ui.hostLineEdit->setText(gs->proxy().host());
+ if (gs->proxy().port(0))
+ ui.portLineEdit->setText(QString::number(gs->proxy().port(0)));
+ ui.proxyUserLineEdit->setText(gs->proxy().userName());
+ ui.proxyPasswLineEdit->setText(gs->proxy().password());
ui.hostLineEdit->setEnabled(ui.enableProxyCheckBox->isChecked());
ui.portLineEdit->setEnabled(ui.enableProxyCheckBox->isChecked());
@@ -144,19 +145,17 @@ void ConfigDialog::readSettings()
ui.skinCursorsCheckBox->setChecked(settings.value("General/skin_cursors", FALSE).toBool());
ui.doubleSizeCheckBox->setChecked(settings.value("General/double_size", FALSE).toBool());
//cover options
- ui.coverIncludeLineEdit->setText(MetaDataManager::instance()->coverNameFilters(TRUE).join(","));
- ui.coverExcludeLineEdit->setText(MetaDataManager::instance()->coverNameFilters(FALSE).join(","));
- ui.coverDepthSpinBox->setValue(MetaDataManager::instance()->coverSearchDepth());
+ ui.coverIncludeLineEdit->setText(gs->coverNameFilters(TRUE).join(","));
+ ui.coverExcludeLineEdit->setText(gs->coverNameFilters(FALSE).join(","));
+ ui.coverDepthSpinBox->setValue(gs->coverSearchDepth());
//replay gain
- AudioSettings as = SoundCore::instance()->audioSettings();
- ui.clippingCheckBox->setChecked(as.value(AudioSettings::REPLAYGAIN_PREVENT_CLIPPING).toBool());
- AudioSettings::ReplayGainMode mode = (AudioSettings::ReplayGainMode)as.value(AudioSettings::REPLAYGAIN_MODE).toInt();
- ui.replayGainModeComboBox->setCurrentIndex(ui.replayGainModeComboBox->findData(mode));
- ui.preampDoubleSpinBox->setValue(as.value(AudioSettings::REPLAYGAIN_PREAMP).toDouble());
- ui.defaultGainDoubleSpinBox->setValue(as.value(AudioSettings::REPLAYGAIN_DEFAULT_GAIN).toDouble());
+ ui.clippingCheckBox->setChecked(gs->replayGainPreventClipping());
+ ui.replayGainModeComboBox->setCurrentIndex(ui.replayGainModeComboBox->findData(gs->replayGainMode()));
+ ui.preampDoubleSpinBox->setValue(gs->replayGainPreamp());
+ ui.defaultGainDoubleSpinBox->setValue(gs->replayGainDefaultGain());
//audio
- ui.softVolumeCheckBox->setChecked(as.value(AudioSettings::SOFTWARE_VOLUME).toBool());
- ui.use16BitCheckBox->setChecked(as.value(AudioSettings::OUTPUT_16BIT).toBool());
+ ui.softVolumeCheckBox->setChecked(gs->useSoftVolume());
+ ui.use16BitCheckBox->setChecked(gs->use16BitOutput());
}
void ConfigDialog::changePage (QListWidgetItem *current, QListWidgetItem *previous)
@@ -635,15 +634,17 @@ void ConfigDialog::saveSettings()
settings.setValue ("PlayList/show_plalists", ui.playlistsCheckBox->isChecked());
settings.setValue ("PlayList/show_popup", ui.popupCheckBox->isChecked());
FileDialog::setEnabled(FileDialog::registeredFactories().at(ui.fileDialogComboBox->currentIndex()));
-
- Qmmp::setProxyEnabled(ui.enableProxyCheckBox->isChecked());
- Qmmp::setProxyAuthEnabled(ui.authProxyCheckBox->isChecked());
+ QmmpSettings *gs = QmmpSettings::instance();
+ //proxy
QUrl proxyUrl;
proxyUrl.setHost(ui.hostLineEdit->text());
proxyUrl.setPort(ui.portLineEdit->text().toUInt());
proxyUrl.setUserName(ui.proxyUserLineEdit->text());
proxyUrl.setPassword(ui.proxyPasswLineEdit->text());
- Qmmp::setProxy(proxyUrl);
+ gs->setNetworkSettings(ui.enableProxyCheckBox->isChecked(),
+ ui.authProxyCheckBox->isChecked(),
+ proxyUrl);
+
settings.setValue ("MainWindow/start_hidden", ui.hiddenCheckBox->isChecked());
settings.setValue ("MainWindow/hide_on_close", ui.hideOnCloseCheckBox->isChecked());
settings.setValue ("MainWindow/opacity", 1.0 - (double)ui.mwTransparencySlider->value()/100);
@@ -654,19 +655,16 @@ void ConfigDialog::saveSettings()
settings.setValue ("MainWindow/bitmap_font", ui.useBitmapCheckBox->isChecked());
settings.setValue ("General/skin_cursors", ui.skinCursorsCheckBox->isChecked());
settings.setValue ("General/double_size", ui.doubleSizeCheckBox->isChecked());
- MetaDataManager::instance()->setCoverSearchSettings(ui.coverIncludeLineEdit->text().split(","),
- ui.coverExcludeLineEdit->text().split(","),
- ui.coverDepthSpinBox->value());
+ gs->setCoverSettings(ui.coverIncludeLineEdit->text().split(","),
+ ui.coverExcludeLineEdit->text().split(","),
+ ui.coverDepthSpinBox->value(), TRUE);
int i = ui.replayGainModeComboBox->currentIndex();
- //audio
- AudioSettings as = SoundCore::instance()->audioSettings();
- as.setValue(AudioSettings::REPLAYGAIN_MODE, ui.replayGainModeComboBox->itemData(i).toInt());
- as.setValue(AudioSettings::REPLAYGAIN_PREAMP, ui.preampDoubleSpinBox->value());
- as.setValue(AudioSettings::REPLAYGAIN_DEFAULT_GAIN, ui.defaultGainDoubleSpinBox->value());
- as.setValue(AudioSettings::REPLAYGAIN_PREVENT_CLIPPING, ui.clippingCheckBox->isChecked());
- as.setValue(AudioSettings::SOFTWARE_VOLUME, ui.softVolumeCheckBox->isChecked());
- as.setValue(AudioSettings::OUTPUT_16BIT, ui.use16BitCheckBox->isChecked());
- SoundCore::instance()->setAudioSettings(as);
+ gs->setReplayGainSettings((QmmpSettings::ReplayGainMode)
+ ui.replayGainModeComboBox->itemData(i).toInt(),
+ ui.preampDoubleSpinBox->value(),
+ ui.defaultGainDoubleSpinBox->value(),
+ ui.clippingCheckBox->isChecked());
+ gs->setAudioSettings(ui.softVolumeCheckBox->isChecked(), ui.use16BitCheckBox->isChecked());
}
void ConfigDialog::updateButtons()
diff --git a/src/ui/translations/qmmp_cs.ts b/src/ui/translations/qmmp_cs.ts
index 9900d5091..ada1aca00 100644
--- a/src/ui/translations/qmmp_cs.ts
+++ b/src/ui/translations/qmmp_cs.ts
@@ -97,7 +97,7 @@
<translation>Přidat URL</translation>
</message>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Chyba</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Povoleno</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Popis</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Soubor</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Umělec</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Album</translation>
</message>
@@ -221,57 +221,57 @@
<translation>Vypnuto</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Název</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Číslo stopy</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>Dvoumístné číslo stopy</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>Číslo disku</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation>Stav</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Skladatel</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Název souboru</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Cesta k souboru</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Žánr</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Rok</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Poznámka</translation>
</message>
@@ -542,12 +542,12 @@
<translation>Heslo:</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Sbalené téma</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Rozbalené téma</translation>
</message>
@@ -603,12 +603,12 @@
<translation>Převést %20 na mezery</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Vybrat soubory s tématy</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Soubory s tématy</translation>
</message>
diff --git a/src/ui/translations/qmmp_de.ts b/src/ui/translations/qmmp_de.ts
index 866ae5e95..d3d485f81 100644
--- a/src/ui/translations/qmmp_de.ts
+++ b/src/ui/translations/qmmp_de.ts
@@ -97,7 +97,7 @@
<translation>Hinzuzufügende URL eingeben</translation>
</message>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Fehler</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Aktiviert</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Beschreibung</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Dateiname</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Interpret</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Album</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Titel</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Stücknummer</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>Zweistellige Stücknummer</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>CD-Nummer</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Genre</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Komponist</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Dateiname</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Dateipfad</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Jahr</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Kommentar</translation>
</message>
@@ -542,12 +542,12 @@
<translation>Passwort:</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Archiviertes Design</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Nicht archiviertes Design</translation>
</message>
@@ -603,12 +603,12 @@
<translation>%20 in Leerzeichen umwandeln</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Design-Dateien auswählen</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Design-Dateien</translation>
</message>
diff --git a/src/ui/translations/qmmp_it.ts b/src/ui/translations/qmmp_it.ts
index 02dbf29ca..623f1482f 100644
--- a/src/ui/translations/qmmp_it.ts
+++ b/src/ui/translations/qmmp_it.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Errore</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Attivo</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Descrizione</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>File</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Interprete</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Album</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Titolo</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Traccia n°</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>Traccia n° a due cifre</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>Disco n°</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation>Condizione</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Genere</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Compositore</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Nome file</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Percorso file</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Anno</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Commento</translation>
</message>
@@ -386,12 +386,12 @@
<translation>Chiudi</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Tema archiviato</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Tema non archiviato</translation>
</message>
@@ -603,12 +603,12 @@
<translation>Converti il carattere « %20 » in spazi</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Seleziona aspetto</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Aspetto</translation>
</message>
diff --git a/src/ui/translations/qmmp_lt.ts b/src/ui/translations/qmmp_lt.ts
index 827aa63a2..6a036d882 100644
--- a/src/ui/translations/qmmp_lt.ts
+++ b/src/ui/translations/qmmp_lt.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Klaida</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Įjungtas</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Aprašymas</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Bylos pavadinimas</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Atlikėjas</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Albumas</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Pavadinimas</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Takelio numeris</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>Dviejų skaičių takelio numeris</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>Disko numeris</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation>Būklė</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Autorius</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Bylos pavadinimas</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Bylos kelias</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Žanras</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Metai</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Komentaras</translation>
</message>
@@ -386,12 +386,12 @@
<translation>Užverti</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Suspausta tema</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Išskleista tema</translation>
</message>
@@ -604,12 +604,12 @@
<translation>Paversti %20 į tarpus</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Pasirinkti temų bylas</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Temų bylos</translation>
</message>
diff --git a/src/ui/translations/qmmp_pl_PL.ts b/src/ui/translations/qmmp_pl_PL.ts
index 011c27ad9..69af6cb05 100644
--- a/src/ui/translations/qmmp_pl_PL.ts
+++ b/src/ui/translations/qmmp_pl_PL.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Błąd</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Włączone</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Opis</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Nazwa pliku</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Artysta</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Album</translation>
</message>
@@ -221,57 +221,57 @@
<translation>Wyłączone</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Tytuł</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Numer utworu</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>Dwuznakowy numer utworu</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>Numer albumu</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation>Warunek</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Gatunek</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Kompozytor</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Nazwa pliku</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Lokalizacja</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Rok</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Komentarz</translation>
</message>
@@ -386,12 +386,12 @@
<translation>Zamknij</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Skompresowana skórka</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Niekompresowana skórka</translation>
</message>
@@ -603,12 +603,12 @@
<translation>Konwertuj sekwencje %20 na spacje</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Wybierz skórę</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Pliki skór</translation>
</message>
diff --git a/src/ui/translations/qmmp_pt_BR.ts b/src/ui/translations/qmmp_pt_BR.ts
index 7f5647b5b..11e42937f 100644
--- a/src/ui/translations/qmmp_pt_BR.ts
+++ b/src/ui/translations/qmmp_pt_BR.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation type="unfinished">Ligado</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation type="unfinished">Descrição</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation type="unfinished">Nome do Arquivo</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation type="unfinished">Artista</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation type="unfinished">Álbum</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation type="unfinished">Título</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation type="unfinished">Gênero</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation type="unfinished">Ano</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation type="unfinished">Comentário</translation>
</message>
@@ -386,12 +386,12 @@
<translation type="unfinished">Fechar</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation type="unfinished"></translation>
</message>
@@ -603,12 +603,12 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/ui/translations/qmmp_ru.ts b/src/ui/translations/qmmp_ru.ts
index bdbaff32a..ab6fd19f0 100644
--- a/src/ui/translations/qmmp_ru.ts
+++ b/src/ui/translations/qmmp_ru.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Ошибка</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Включён</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Описание</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Имя файла</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Исполнитель</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Альбом</translation>
</message>
@@ -221,57 +221,57 @@
<translation>Отключено</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Название</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Номер трека</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>2-x разрядный номер трека</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>Номер диска</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation>Условие</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Жанр</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Композитор</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Имя файла</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Путь к файлу</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Год</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Комментарий</translation>
</message>
@@ -386,12 +386,12 @@
<translation>Закрыть</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Упакованная тема</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Распакованная тема</translation>
</message>
@@ -603,12 +603,12 @@
<translation>Преобразовывать %20 в пробел</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Выберите файлы обложек</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Файлы обложек</translation>
</message>
diff --git a/src/ui/translations/qmmp_tr.ts b/src/ui/translations/qmmp_tr.ts
index 51058f7ec..cb847e67e 100644
--- a/src/ui/translations/qmmp_tr.ts
+++ b/src/ui/translations/qmmp_tr.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Hata</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Etkinleştirildi</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Açıklama</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Dosya adı</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Sanatçı</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Albüm</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Başlık</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Tarz</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Yıl</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Yorum</translation>
</message>
@@ -386,12 +386,12 @@
<translation>Kapat</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Arşivlenmiş kabuk</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Arşivlenmemiş kabuk</translation>
</message>
@@ -603,12 +603,12 @@
<translation>%20 yi boşluğa çevir</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Kabuk Dosyası Seç</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Kabuk dosyaları</translation>
</message>
diff --git a/src/ui/translations/qmmp_uk_UA.ts b/src/ui/translations/qmmp_uk_UA.ts
index 3ba0131e9..f451f130d 100644
--- a/src/ui/translations/qmmp_uk_UA.ts
+++ b/src/ui/translations/qmmp_uk_UA.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>Помилка</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>Увімкнено</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>Пояснення</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>Ім&apos;я файлу</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>Виконавець</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>Альбом</translation>
</message>
@@ -221,57 +221,57 @@
<translation>Вимкнено</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>Назва</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation>Номер треку</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation>2- розрядний номер трека</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation>Номер диску</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation>Умова</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>Жанр</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation>Композитор</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation>Ім&apos;я файлу</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation>Шлях файлу</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>Рік</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>Коментар</translation>
</message>
@@ -386,12 +386,12 @@
<translation>Закрити</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>Упакована тема</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>Розпакована тема</translation>
</message>
@@ -603,12 +603,12 @@
<translation>Конвертувати %20 в пробіл</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>Вибрати файли скінів</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>Файли скінів</translation>
</message>
diff --git a/src/ui/translations/qmmp_zh_CN.ts b/src/ui/translations/qmmp_zh_CN.ts
index b2e0f87f5..c52d3310a 100644
--- a/src/ui/translations/qmmp_zh_CN.ts
+++ b/src/ui/translations/qmmp_zh_CN.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>错误</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>启用</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>描述</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>文件名</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>艺术家</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>专辑</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>标题</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>流派</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>年代</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>备注</translation>
</message>
@@ -386,12 +386,12 @@
<translation>关闭</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>压缩皮肤</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>未压缩皮肤</translation>
</message>
@@ -603,12 +603,12 @@
<translation>转换 %20 为空格</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>选择皮肤文件</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>皮肤文件</translation>
</message>
diff --git a/src/ui/translations/qmmp_zh_TW.ts b/src/ui/translations/qmmp_zh_TW.ts
index d21402452..d08ac82fb 100644
--- a/src/ui/translations/qmmp_zh_TW.ts
+++ b/src/ui/translations/qmmp_zh_TW.ts
@@ -92,7 +92,7 @@
<context>
<name>AddUrlDialog</name>
<message>
- <location filename="../addurldialog.cpp" line="107"/>
+ <location filename="../addurldialog.cpp" line="109"/>
<source>Error</source>
<translation>錯誤</translation>
</message>
@@ -173,40 +173,40 @@
<context>
<name>ConfigDialog</name>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Enabled</source>
<translation>啟用</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Description</source>
<translation>說明</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="246"/>
- <location filename="../configdialog.cpp" line="299"/>
- <location filename="../configdialog.cpp" line="331"/>
- <location filename="../configdialog.cpp" line="364"/>
- <location filename="../configdialog.cpp" line="397"/>
+ <location filename="../configdialog.cpp" line="245"/>
+ <location filename="../configdialog.cpp" line="298"/>
+ <location filename="../configdialog.cpp" line="330"/>
+ <location filename="../configdialog.cpp" line="363"/>
+ <location filename="../configdialog.cpp" line="396"/>
<source>Filename</source>
<translation>檔名</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="596"/>
+ <location filename="../configdialog.cpp" line="595"/>
<source>Artist</source>
<translation>藝術家</translation>
</message>
<message>
<location filename="../configdialog.cpp" line="82"/>
- <location filename="../configdialog.cpp" line="597"/>
+ <location filename="../configdialog.cpp" line="596"/>
<source>Album</source>
<translation>專輯</translation>
</message>
@@ -221,57 +221,57 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="598"/>
+ <location filename="../configdialog.cpp" line="597"/>
<source>Title</source>
<translation>標題</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="599"/>
+ <location filename="../configdialog.cpp" line="598"/>
<source>Track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="600"/>
+ <location filename="../configdialog.cpp" line="599"/>
<source>Two-digit track number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="604"/>
+ <location filename="../configdialog.cpp" line="603"/>
<source>Disc number</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="608"/>
+ <location filename="../configdialog.cpp" line="607"/>
<source>Condition</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="601"/>
+ <location filename="../configdialog.cpp" line="600"/>
<source>Genre</source>
<translation>流派</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="603"/>
+ <location filename="../configdialog.cpp" line="602"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="605"/>
+ <location filename="../configdialog.cpp" line="604"/>
<source>File name</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="606"/>
+ <location filename="../configdialog.cpp" line="605"/>
<source>File path</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="607"/>
+ <location filename="../configdialog.cpp" line="606"/>
<source>Year</source>
<translation>年代</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="602"/>
+ <location filename="../configdialog.cpp" line="601"/>
<source>Comment</source>
<translation>備註</translation>
</message>
@@ -386,12 +386,12 @@
<translation>關閉</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="208"/>
+ <location filename="../configdialog.cpp" line="207"/>
<source>Archived skin</source>
<translation>封包皮膚</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="228"/>
+ <location filename="../configdialog.cpp" line="227"/>
<source>Unarchived skin</source>
<translation>未封包皮膚</translation>
</message>
@@ -603,12 +603,12 @@
<translation>轉換 %20 為空格</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="757"/>
+ <location filename="../configdialog.cpp" line="755"/>
<source>Select Skin Files</source>
<translation>選取皮膚檔案</translation>
</message>
<message>
- <location filename="../configdialog.cpp" line="758"/>
+ <location filename="../configdialog.cpp" line="756"/>
<source>Skin files</source>
<translation>皮膚檔案</translation>
</message>