aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-08-11 09:08:12 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-08-11 09:08:12 +0000
commit017d2d27bfbcd97ada407212e925b280ff3482b5 (patch)
tree2a832873a52ee7c8546b6262be58f41d1bdd480e
parent22cf3c55368be9361b43eb002e7a2fb7f2868ac2 (diff)
downloadqmmp-017d2d27bfbcd97ada407212e925b280ff3482b5.tar.gz
qmmp-017d2d27bfbcd97ada407212e925b280ff3482b5.tar.bz2
qmmp-017d2d27bfbcd97ada407212e925b280ff3482b5.zip
added qsui plugin
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@5367 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/Ui/qsui/CMakeLists.txt98
-rw-r--r--src/plugins/Ui/qsui/aboutqsuidialog.cpp80
-rw-r--r--src/plugins/Ui/qsui/aboutqsuidialog.h43
-rw-r--r--src/plugins/Ui/qsui/actionmanager.cpp231
-rw-r--r--src/plugins/Ui/qsui/actionmanager.h128
-rw-r--r--src/plugins/Ui/qsui/colorwidget.cpp53
-rw-r--r--src/plugins/Ui/qsui/colorwidget.h49
-rw-r--r--src/plugins/Ui/qsui/coverwidget.cpp71
-rw-r--r--src/plugins/Ui/qsui/coverwidget.h50
-rw-r--r--src/plugins/Ui/qsui/elidinglabel.cpp86
-rw-r--r--src/plugins/Ui/qsui/elidinglabel.h59
-rw-r--r--src/plugins/Ui/qsui/eqpreset.cpp55
-rw-r--r--src/plugins/Ui/qsui/eqpreset.h45
-rw-r--r--src/plugins/Ui/qsui/equalizer.cpp280
-rw-r--r--src/plugins/Ui/qsui/equalizer.h67
-rw-r--r--src/plugins/Ui/qsui/fft.c296
-rw-r--r--src/plugins/Ui/qsui/fft.h45
-rw-r--r--src/plugins/Ui/qsui/filesystembrowser.cpp149
-rw-r--r--src/plugins/Ui/qsui/filesystembrowser.h61
-rw-r--r--src/plugins/Ui/qsui/forms/aboutqsuidialog.ui104
-rw-r--r--src/plugins/Ui/qsui/forms/hotkeyeditor.ui68
-rw-r--r--src/plugins/Ui/qsui/forms/mainwindow.ui323
-rw-r--r--src/plugins/Ui/qsui/forms/popupsettings.ui251
-rw-r--r--src/plugins/Ui/qsui/forms/qsuisettings.ui1038
-rw-r--r--src/plugins/Ui/qsui/forms/shortcutdialog.ui132
-rw-r--r--src/plugins/Ui/qsui/forms/toolbareditor.ui228
-rw-r--r--src/plugins/Ui/qsui/hotkeyeditor.cpp100
-rw-r--r--src/plugins/Ui/qsui/hotkeyeditor.h50
-rw-r--r--src/plugins/Ui/qsui/inlines.h57
-rw-r--r--src/plugins/Ui/qsui/keyboardmanager.cpp315
-rw-r--r--src/plugins/Ui/qsui/keyboardmanager.h65
-rw-r--r--src/plugins/Ui/qsui/listwidget.cpp686
-rw-r--r--src/plugins/Ui/qsui/listwidget.h139
-rw-r--r--src/plugins/Ui/qsui/listwidgetdrawer.cpp429
-rw-r--r--src/plugins/Ui/qsui/listwidgetdrawer.h108
-rw-r--r--src/plugins/Ui/qsui/logo.cpp284
-rw-r--r--src/plugins/Ui/qsui/logo.h65
-rw-r--r--src/plugins/Ui/qsui/mainwindow.cpp924
-rw-r--r--src/plugins/Ui/qsui/mainwindow.h123
-rw-r--r--src/plugins/Ui/qsui/playlistbrowser.cpp156
-rw-r--r--src/plugins/Ui/qsui/playlistbrowser.h59
-rw-r--r--src/plugins/Ui/qsui/playlistheader.cpp768
-rw-r--r--src/plugins/Ui/qsui/playlistheader.h129
-rw-r--r--src/plugins/Ui/qsui/popupsettings.cpp89
-rw-r--r--src/plugins/Ui/qsui/popupsettings.h52
-rw-r--r--src/plugins/Ui/qsui/popupwidget.cpp132
-rw-r--r--src/plugins/Ui/qsui/popupwidget.h68
-rw-r--r--src/plugins/Ui/qsui/positionslider.cpp67
-rw-r--r--src/plugins/Ui/qsui/positionslider.h47
-rw-r--r--src/plugins/Ui/qsui/qsui.pro117
-rw-r--r--src/plugins/Ui/qsui/qsuianalyzer.cpp404
-rw-r--r--src/plugins/Ui/qsui/qsuianalyzer.h97
-rw-r--r--src/plugins/Ui/qsui/qsuifactory.cpp57
-rw-r--r--src/plugins/Ui/qsui/qsuifactory.h41
-rw-r--r--src/plugins/Ui/qsui/qsuisettings.cpp245
-rw-r--r--src/plugins/Ui/qsui/qsuisettings.h59
-rw-r--r--src/plugins/Ui/qsui/qsuitabbar.cpp39
-rw-r--r--src/plugins/Ui/qsui/qsuitabbar.h40
-rw-r--r--src/plugins/Ui/qsui/qsuitabwidget.cpp148
-rw-r--r--src/plugins/Ui/qsui/qsuitabwidget.h65
-rw-r--r--src/plugins/Ui/qsui/resources/audio-volume-high.pngbin0 -> 309 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/audio-volume-low.pngbin0 -> 322 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/audio-volume-medium.pngbin0 -> 318 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/audio-volume-muted.pngbin0 -> 431 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/eq16.preset324
-rw-r--r--src/plugins/Ui/qsui/resources/media-eject.pngbin0 -> 296 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/media-playback-pause.pngbin0 -> 247 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/media-playback-start.pngbin0 -> 300 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/media-playback-stop.pngbin0 -> 241 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/media-skip-backward.pngbin0 -> 282 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/media-skip-forward.pngbin0 -> 306 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/qsui_resources.qrc19
-rw-r--r--src/plugins/Ui/qsui/resources/qsui_settings.pngbin0 -> 599 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/qsui_shortcuts.pngbin0 -> 603 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/terminus.pngbin0 -> 550 bytes
-rw-r--r--src/plugins/Ui/qsui/resources/ui_no_cover.pngbin0 -> 4170 bytes
-rw-r--r--src/plugins/Ui/qsui/shortcutdialog.cpp67
-rw-r--r--src/plugins/Ui/qsui/shortcutdialog.h49
-rw-r--r--src/plugins/Ui/qsui/shortcutitem.cpp39
-rw-r--r--src/plugins/Ui/qsui/shortcutitem.h44
-rw-r--r--src/plugins/Ui/qsui/toolbareditor.cpp185
-rw-r--r--src/plugins/Ui/qsui/toolbareditor.h59
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_bg.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_cs.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_de.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_el.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_en.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_es.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_fr.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_gl_ES.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_he.ts1559
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_hu.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_it.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_ja.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_kk.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_lt.ts1560
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_nl.ts1560
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_pl_PL.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_pt.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_pt_BR.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_ru.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_sk.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_sr_BA.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_sr_RS.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_tr.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_uk_UA.ts1560
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_zh_CN.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/qsui_plugin_zh_TW.ts1558
-rw-r--r--src/plugins/Ui/qsui/translations/translations.qrc30
-rw-r--r--src/plugins/Ui/qsui/txt/ascii_logo.txt18
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors.txt63
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_cs.txt57
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_de.txt63
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_he.txt54
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_ja.txt58
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_lt_LT.txt54
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_nl.txt54
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_pl_PL.txt60
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_pt.txt63
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_ru.txt71
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_sr_BA.txt60
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_sr_RS.txt60
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_authors_uk_UA.txt62
-rw-r--r--src/plugins/Ui/qsui/txt/qsui_txt.qrc19
-rw-r--r--src/plugins/Ui/qsui/visualmenu.cpp61
-rw-r--r--src/plugins/Ui/qsui/visualmenu.h57
126 files changed, 52579 insertions, 0 deletions
diff --git a/src/plugins/Ui/qsui/CMakeLists.txt b/src/plugins/Ui/qsui/CMakeLists.txt
new file mode 100644
index 000000000..df4241a36
--- /dev/null
+++ b/src/plugins/Ui/qsui/CMakeLists.txt
@@ -0,0 +1,98 @@
+project(libqsui)
+
+cmake_minimum_required(VERSION 2.4.7)
+
+if(COMMAND cmake_policy)
+ cmake_policy(SET CMP0003 OLD)
+ cmake_policy(SET CMP0005 OLD)
+endif(COMMAND cmake_policy)
+
+# qt plugin
+ADD_DEFINITIONS( -Wall )
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+ADD_DEFINITIONS(-DQT_PLUGIN)
+ADD_DEFINITIONS(-DQT_NO_DEBUG)
+ADD_DEFINITIONS(-DQT_SHARED)
+ADD_DEFINITIONS(-DQT_THREAD)
+
+IF(SVN_VERSION)
+ADD_DEFINITIONS(-DQMMP_PLUGIN_PACK_VERSION=\\\"${QMMP_PLUGIN_PACK_VERSION}-dev\\\")
+ELSE(SVN_VERSION)
+ADD_DEFINITIONS(-DQMMP_PLUGIN_PACK_VERSION=\\\"${QMMP_PLUGIN_PACK_VERSION}\\\")
+ENDIF(SVN_VERSION)
+
+include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+# libqmmp
+include_directories(${QMMP_INCLUDE_DIRS})
+link_directories( ${QMMP_LIBRARY_DIRS})
+
+# libqmmpui
+include_directories(${QMMPUI_INCLUDE_DIRS})
+link_directories( ${QMMPUI_LIBRARY_DIRS})
+
+
+SET(libqsui_SRCS
+ actionmanager.cpp
+ listwidget.cpp
+ mainwindow.cpp
+ popupsettings.cpp
+ popupwidget.cpp
+ positionslider.cpp
+ shortcutdialog.cpp
+ shortcutitem.cpp
+ qsuifactory.cpp
+ qsuisettings.cpp
+ visualmenu.cpp
+ equalizer.cpp
+ logo.cpp
+ aboutqsuidialog.cpp
+ keyboardmanager.cpp
+ qsuianalyzer.cpp
+ fft.c
+ colorwidget.cpp
+ qsuitabwidget.cpp
+ qsuitabbar.cpp
+ eqpreset.cpp
+ filesystembrowser.cpp
+ elidinglabel.cpp
+ coverwidget.cpp
+ playlistbrowser.cpp
+ toolbareditor.cpp
+ listwidgetdrawer.cpp
+ playlistheader.cpp
+ hotkeyeditor.cpp
+)
+
+SET(libqsui_HDRS
+ shortcutitem.h
+ inlines.h
+ fft.h
+ eqpreset.h
+ listwidgetdrawer.h
+)
+
+SET(libqsui_RCCS translations/translations.qrc txt/qsui_txt.qrc resources/qsui_resources.qrc)
+
+QT4_ADD_RESOURCES(libqsui_RCC_SRCS ${libqsui_RCCS})
+
+# user interface
+
+SET(libqsui_UIS
+ forms/mainwindow.ui
+ forms/popupsettings.ui
+ forms/shortcutdialog.ui
+ forms/qsuisettings.ui
+ forms/aboutqsuidialog.ui
+ forms/toolbareditor.ui
+ forms/hotkeyeditor.ui
+)
+
+QT4_WRAP_UI(libqsui_UIS_H ${libqsui_UIS})
+# Don't forget to include output directory, otherwise
+# the UI file won't be wrapped!
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+ADD_LIBRARY(qsui MODULE ${libqsui_SRCS} ${libqsui_UIS_H} ${libqsui_RCC_SRCS} ${libqsui_HDRS})
+target_link_libraries(qsui ${QT_LIBRARIES} ${QMMP_LDFLAGS} ${QMMPUI_LDFLAGS})
+install(TARGETS qsui DESTINATION ${LIB_DIR}/qmmp/Ui)
diff --git a/src/plugins/Ui/qsui/aboutqsuidialog.cpp b/src/plugins/Ui/qsui/aboutqsuidialog.cpp
new file mode 100644
index 000000000..b873c3fbb
--- /dev/null
+++ b/src/plugins/Ui/qsui/aboutqsuidialog.cpp
@@ -0,0 +1,80 @@
+/***************************************************************************
+ * Copyright (C) 2011-2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QFile>
+#include <QTextStream>
+#include <qmmp/qmmp.h>
+#include "aboutqsuidialog.h"
+
+AboutQSUIDialog::AboutQSUIDialog(QWidget *parent) :
+ QDialog(parent)
+{
+ m_ui.setupUi(this);
+ m_ui.aboutTextEdit->setHtml(loadAbout());
+}
+
+AboutQSUIDialog::~AboutQSUIDialog(){}
+
+QString AboutQSUIDialog::loadAbout()
+{
+ QString text;
+ text.append("<head>");
+ text.append("<META content=\"text/html; charset=UTF-8\">");
+ text.append("</head>");
+ text.append("<h3>"+tr("Qmmp Simple User Interface (QSUI)")+"</h3>");
+ text.append(tr("Qmmp version: <b>%1</b>").arg(Qmmp::strVersion()));
+ text.append("<br>");
+ text.append(tr("QSUI version: <b>%1</b>").arg(QMMP_PLUGIN_PACK_VERSION));
+ text.append("<p>");
+ text.append(tr("Simple user interface based on standard widgets set."));
+ text.append("</p>");
+ text.append("<p>");
+ text.append(getStringFromResource(":qsui_authors").replace("<", "&lt;")
+ .replace(">", "&gt;").replace("\n", "<br>"));
+ text.append("</p>");
+ return text;
+}
+
+QString AboutQSUIDialog::getStringFromResource(const QString& res_file)
+{
+ QString ret_string;
+ QStringList paths;
+ paths << res_file + "_" + Qmmp::systemLanguageID() + ".txt";
+ if(Qmmp::systemLanguageID().contains("."))
+ paths << res_file + "_" + Qmmp::systemLanguageID().split(".").at(0) + ".txt";
+ if(Qmmp::systemLanguageID().contains("_"))
+ paths << res_file + "_" + Qmmp::systemLanguageID().split("_").at(0) + ".txt";
+ paths << res_file + ".txt";
+ paths << res_file;
+
+ foreach(QString path, paths)
+ {
+ QFile file(path);
+ if (file.open(QIODevice::ReadOnly))
+ {
+ QTextStream ts(&file);
+ ts.setCodec("UTF-8");
+ ret_string = ts.readAll();
+ file.close();
+ return ret_string;
+ }
+ }
+ return ret_string;
+}
diff --git a/src/plugins/Ui/qsui/aboutqsuidialog.h b/src/plugins/Ui/qsui/aboutqsuidialog.h
new file mode 100644
index 000000000..308aaa9d6
--- /dev/null
+++ b/src/plugins/Ui/qsui/aboutqsuidialog.h
@@ -0,0 +1,43 @@
+/***************************************************************************
+ * Copyright (C) 2011-2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef ABOUTQSUIDIALOG_H
+#define ABOUTQSUIDIALOG_H
+
+#include <QDialog>
+#include "ui_aboutqsuidialog.h"
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class AboutQSUIDialog : public QDialog
+{
+ Q_OBJECT
+public:
+ explicit AboutQSUIDialog(QWidget *parent = 0);
+ virtual ~AboutQSUIDialog();
+
+private:
+ Ui::AboutQSUIDialog m_ui;
+ QString loadAbout();
+ QString getStringFromResource(const QString& res_file);
+};
+
+#endif // ABOUTQSUIDIALOG_H
diff --git a/src/plugins/Ui/qsui/actionmanager.cpp b/src/plugins/Ui/qsui/actionmanager.cpp
new file mode 100644
index 000000000..97d153206
--- /dev/null
+++ b/src/plugins/Ui/qsui/actionmanager.cpp
@@ -0,0 +1,231 @@
+/***************************************************************************
+ * Copyright (C) 2010-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QSettings>
+#include <QAction>
+#include <QIcon>
+#include <QFile>
+#include <QApplication>
+#include <qmmp/qmmp.h>
+#include "actionmanager.h"
+
+ActionManager *ActionManager::m_instance = 0;
+
+ActionManager::ActionManager(QObject *parent) :
+ QObject(parent)
+{
+ m_instance = this;
+ m_settings = new QSettings(Qmmp::configFile(), QSettings::IniFormat);
+ m_settings->beginGroup("SimpleUiShortcuts");
+ //playback
+ m_actions[PLAY] = createAction(tr("&Play"), "play", tr("X"), "media-playback-start");
+ m_actions[PAUSE] = createAction(tr("&Pause"), "pause", tr("C"), "media-playback-pause");
+ m_actions[STOP] = createAction(tr("&Stop"), "stop", tr("V"), "media-playback-stop");
+ m_actions[PREVIOUS] = createAction(tr("&Previous"), "previous", tr("Z"), "media-skip-backward");
+ m_actions[NEXT] = createAction(tr("&Next"), "next", tr("B"), "media-skip-forward");
+ m_actions[PLAY_PAUSE] = createAction(tr("&Play/Pause"), "play_pause", tr("Space"));
+ m_actions[JUMP] = createAction(tr("&Jump to Track"), "jump", tr("J"), "go-up");
+ m_actions[EJECT] = createAction(tr("&Play Files"), "eject", tr("E"), "media-eject");
+
+ m_actions[REPEAT_ALL] = createAction2(tr("&Repeat Playlist"), "repeate_playlist", tr("R"),
+ "media-playlist-repeat");
+ m_actions[REPEAT_TRACK] = createAction2(tr("&Repeat Track"), "repeate_track", tr("Ctrl+R"));
+ m_actions[SHUFFLE] = createAction2(tr("&Shuffle"), "shuffle", tr("S"), "media-playlist-shuffle");
+ m_actions[NO_PL_ADVANCE] = createAction2(tr("&No Playlist Advance"), "no_playlist_advance",
+ tr("Ctrl+N"));
+ m_actions[STOP_AFTER_SELECTED] = createAction(tr("&Stop After Selected"), "stop_after_selected",
+ tr("Ctrl+S"));
+ m_actions[CLEAR_QUEUE] = createAction(tr("&Clear Queue"), "clear_queue", tr("Alt+Q"));
+ //view
+ m_actions[WM_ALLWAYS_ON_TOP] = createAction2(tr("Always on Top"), "always_on_top", "");
+ m_actions[WM_STICKY] = createAction2(tr("Put on All Workspaces"), "sticky", "");
+ m_actions[UI_ANALYZER] = 0; //external action
+ m_actions[UI_FILEBROWSER] = 0; //external action
+ m_actions[UI_COVER] = 0; //external action
+ m_actions[UI_PLAYLISTBROWSER] = 0; //external action
+ m_actions[UI_SHOW_TABS] = createAction2(tr("Show Tabs"), "show_tabs", "");
+ m_actions[UI_SHOW_TITLEBARS] = createAction2(tr("Show Title Bars"), "show_titlebars", "");
+ m_actions[UI_BLOCK_TOOLBARS] = createAction2(tr("Block Toolbars"), "block_toolbars", "");
+ //volume
+ m_actions[VOL_ENC] = createAction(tr("Volume &+"), "vol_enc", tr("0"));
+ m_actions[VOL_DEC] = createAction(tr("Volume &-"), "vol_dec", tr("9"));
+ m_actions[VOL_MUTE] = createAction2(tr("&Mute"), "vol_mute", tr("M"));
+ //playlist
+ m_actions[PL_ADD_FILE] = createAction(tr("&Add File"), "add_file", tr("F"), "audio-x-generic");
+ m_actions[PL_ADD_DIRECTORY] = createAction(tr("&Add Directory"), "add_dir", tr("D"), "folder");
+ m_actions[PL_ADD_URL] = createAction(tr("&Add Url"), "add_url", tr("U"), "network-server");
+ m_actions[PL_REMOVE_SELECTED] = createAction(tr("&Remove Selected"), "remove_selected",
+ tr("Del"), "edit-delete");
+ m_actions[PL_REMOVE_ALL] = createAction(tr("&Remove All"), "remove_all", "", "edit-clear");
+ m_actions[PL_REMOVE_UNSELECTED] = createAction(tr("&Remove Unselected"), "remove_unselected",
+ "", "edit-delete");
+ m_actions[PL_REMOVE_INVALID] = createAction(tr("Remove unavailable files"), "remove_invalid",
+ "", "dialog-error");
+ m_actions[PL_REMOVE_DUPLICATES] = createAction(tr("Remove duplicates"), "remove_duplicates", "");
+ m_actions[PL_ENQUEUE] = createAction(tr("&Queue Toggle"), "enqueue", tr("Q"));
+ m_actions[PL_INVERT_SELECTION] = createAction(tr("Invert Selection"), "invert_selection", "");
+ m_actions[PL_CLEAR_SELECTION] = createAction(tr("&Select None"), "clear_selection", "");
+ m_actions[PL_SELECT_ALL] = createAction(tr("&Select All"), "select_all",
+ tr("Ctrl+A"), "edit-select-all");
+ m_actions[PL_SHOW_INFO] = createAction(tr("&View Track Details"), "show_info", tr("Alt+I"),
+ "dialog-information");
+ m_actions[PL_NEW] = createAction(tr("&New List"), "new_pl", tr("Ctrl+T"), "document-new");
+ m_actions[PL_CLOSE] = createAction(tr("&Delete List"), "close_pl", tr("Ctrl+W"), "window-close");
+ m_actions[PL_LOAD] = createAction(tr("&Load List"), "load_pl", tr("O"), "document-open");
+ m_actions[PL_SAVE] = createAction(tr("&Save List"), "save_pl", tr("Shift+S"), "document-save-as");
+ m_actions[PL_RENAME] = createAction(tr("&Rename List"), "pl_rename", tr("F2"));
+
+ m_actions[PL_SELECT_NEXT] = createAction(tr("&Select Next Playlist"), "next_pl",
+ tr("Ctrl+PgDown"), "go-next");
+ m_actions[PL_SELECT_PREVIOUS] = createAction(tr("&Select Previous Playlist"), "prev_pl",
+ tr("Ctrl+PgUp"), "go-previous");
+ m_actions[PL_GROUP_TRACKS] = createAction2(tr("&Group Tracks"), "group_tracks", tr("Ctrl+G"));
+ m_actions[PL_SHOW_HEADER] = createAction2(tr("&Show Column Headers"), "show_header", tr("Ctrl+H"));
+ //other
+ m_actions[EQUALIZER] = createAction(tr("&Equalizer"), "equalizer", tr("Ctrl+E"));
+ m_actions[SETTINGS] = createAction(tr("&Settings"), "show_settings", tr("Ctrl+P"), "configure");
+ m_actions[ABOUT_UI] = createAction(tr("&About Ui"), "about_ui", "");
+ m_actions[ABOUT] = createAction(tr("&About"), "about", "");
+ m_actions[ABOUT_QT] = createAction(tr("&About Qt"), "about_qt", "");
+ m_actions[QUIT] = createAction(tr("&Exit"), "exit", tr("Ctrl+Q"), "application-exit");
+ m_settings->endGroup();
+ readStates();
+ delete m_settings;
+ m_settings = 0;
+ m_actions[ABOUT]->setIcon(qApp->windowIcon());
+}
+
+ActionManager::~ActionManager()
+{
+ saveStates();
+ m_instance = 0;
+}
+
+QAction *ActionManager::action(int type)
+{
+ return m_actions[type];
+}
+
+QAction *ActionManager::use(int type, const QObject *receiver, const char *member)
+{
+ QAction *act = m_actions[type];
+ connect(act,SIGNAL(triggered(bool)), receiver, member);
+ return act;
+}
+
+QList<QAction *> ActionManager::actions()
+{
+ return m_actions.values();
+}
+
+ActionManager* ActionManager::instance()
+{
+ return m_instance;
+}
+
+QAction *ActionManager::createAction(QString name, QString confKey, QString key, QString iconName)
+{
+ QAction *action = new QAction(name, this);
+ action->setShortcut(m_settings->value(confKey, key).toString());
+ action->setObjectName(confKey);
+ action->setProperty("defaultShortcut", key);
+ if(iconName.isEmpty())
+ return action;
+ if(QFile::exists(iconName))
+ action->setIcon(QIcon(iconName));
+ else if(QIcon::hasThemeIcon(iconName))
+ action->setIcon(QIcon::fromTheme(iconName));
+ else if(QFile::exists(QString(":/qsui/")+iconName+".png"))
+ action->setIcon(QIcon(QString(":/qsui/")+iconName+".png"));
+ return action;
+}
+
+QAction *ActionManager::createAction2(QString name, QString confKey, QString key, QString iconName)
+{
+ QAction *action = createAction(name, confKey, key);
+ action->setCheckable(true);
+ action->setIconVisibleInMenu(false);
+ if(iconName.isEmpty())
+ return action;
+ if(QFile::exists(iconName))
+ action->setIcon(QIcon(iconName));
+ else if(QIcon::hasThemeIcon(iconName))
+ action->setIcon(QIcon::fromTheme(iconName));
+ else if(QFile::exists(QString(":/qsui/")+iconName+".png"))
+ action->setIcon(QIcon(QString(":/qsui/")+iconName+".png"));
+ return action;
+}
+
+void ActionManager::readStates()
+{
+ m_settings->beginGroup("Simple");
+ m_actions[PL_SHOW_HEADER]->setChecked(m_settings->value("pl_show_header", true).toBool());
+ m_settings->endGroup();
+}
+
+void ActionManager::saveStates()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ settings.setValue("pl_show_header", m_actions[PL_SHOW_HEADER]->isChecked());
+ settings.endGroup();
+}
+
+void ActionManager::saveActions()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ foreach(QAction *action, m_actions.values())
+ {
+ settings.setValue(QString("SimpleUiShortcuts/")+action->objectName(), action->shortcut());
+ }
+}
+
+void ActionManager::resetShortcuts()
+{
+ foreach (QAction *action, m_actions.values())
+ {
+ action->setShortcut(action->property("defaultShortcut").toString());
+ }
+}
+
+void ActionManager::registerAction(int id, QAction *action, QString confKey, QString key)
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("SimpleUiShortcuts");
+ action->setShortcut(settings.value(confKey, key).toString());
+ action->setProperty("defaultShortcut", key);
+ action->setObjectName(confKey);
+ if(m_actions.value(id))
+ qFatal("ActionManager: invalid action id");
+ m_actions[id] = action;
+ settings.endGroup();
+}
+
+QStringList ActionManager::toolBarActionNames() const
+{
+ QList <Type> idList;
+ idList << PL_ADD_FILE << PL_ADD_DIRECTORY << PREVIOUS << PLAY << PAUSE << STOP << NEXT << EJECT;
+ QStringList names;
+ foreach (Type id, idList)
+ {
+ names << m_actions.value(id)->objectName();
+ }
+ return names;
+}
diff --git a/src/plugins/Ui/qsui/actionmanager.h b/src/plugins/Ui/qsui/actionmanager.h
new file mode 100644
index 000000000..e863c5788
--- /dev/null
+++ b/src/plugins/Ui/qsui/actionmanager.h
@@ -0,0 +1,128 @@
+/***************************************************************************
+ * Copyright (C) 2010-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef ACTIONMANAGER_H
+#define ACTIONMANAGER_H
+
+#include <QObject>
+#include <QString>
+#include <QHash>
+
+class QAction;
+class QSettings;
+
+#define SET_ACTION(type, receiver, member) ActionManager::instance()->use(type, receiver, member)
+#define ACTION(type) ActionManager::instance()->action(type)
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class ActionManager : public QObject
+{
+ Q_OBJECT
+public:
+ explicit ActionManager(QObject *parent = 0);
+ ~ActionManager();
+
+ enum Type
+ {
+ PLAY = 0,
+ PAUSE,
+ STOP,
+ PREVIOUS,
+ NEXT,
+ PLAY_PAUSE,
+ JUMP,
+ EJECT,
+
+ REPEAT_ALL,
+ REPEAT_TRACK,
+ SHUFFLE,
+ NO_PL_ADVANCE,
+ STOP_AFTER_SELECTED,
+ CLEAR_QUEUE,
+
+ WM_ALLWAYS_ON_TOP,
+ WM_STICKY,
+ UI_ANALYZER,
+ UI_FILEBROWSER,
+ UI_COVER,
+ UI_PLAYLISTBROWSER,
+ UI_SHOW_TABS,
+ UI_SHOW_TITLEBARS,
+ UI_BLOCK_TOOLBARS,
+
+ VOL_ENC,
+ VOL_DEC,
+ VOL_MUTE,
+
+ PL_ADD_FILE,
+ PL_ADD_DIRECTORY,
+ PL_ADD_URL,
+ PL_REMOVE_SELECTED,
+ PL_REMOVE_ALL,
+ PL_REMOVE_UNSELECTED,
+ PL_REMOVE_INVALID,
+ PL_REMOVE_DUPLICATES,
+ PL_ENQUEUE,
+ PL_INVERT_SELECTION,
+ PL_CLEAR_SELECTION,
+ PL_SELECT_ALL,
+ PL_SHOW_INFO,
+ PL_NEW,
+ PL_CLOSE,
+ PL_LOAD,
+ PL_SAVE,
+ PL_RENAME,
+ PL_SELECT_NEXT,
+ PL_SELECT_PREVIOUS,
+ PL_GROUP_TRACKS,
+ PL_SHOW_HEADER,
+
+ EQUALIZER,
+ SETTINGS,
+ ABOUT_UI,
+ ABOUT,
+ ABOUT_QT,
+ QUIT
+ };
+
+ QAction *action(int type);
+ QAction *use(int type, const QObject *receiver, const char *member);
+ QList<QAction *> actions();
+ void saveActions();
+ void resetShortcuts();
+ void registerAction(int id, QAction *action, QString confKey, QString key);
+ QStringList toolBarActionNames() const;
+ static ActionManager* instance();
+
+private:
+ QAction *createAction(QString name, QString confKey, QString key, QString iconName = QString());
+ QAction *createAction2(QString name, QString confKey, QString key, QString iconName = QString());
+ void readStates();
+ void saveStates();
+
+ QSettings *m_settings;
+ QHash <int, QAction *> m_actions;
+ static ActionManager *m_instance;
+
+};
+
+#endif // ACTIONMANAGER_H
diff --git a/src/plugins/Ui/qsui/colorwidget.cpp b/src/plugins/Ui/qsui/colorwidget.cpp
new file mode 100644
index 000000000..2cb9f14a6
--- /dev/null
+++ b/src/plugins/Ui/qsui/colorwidget.cpp
@@ -0,0 +1,53 @@
+/***************************************************************************
+ * Copyright (C) 2005-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QColorDialog>
+#include <QPalette>
+#include "colorwidget.h"
+
+ColorWidget::ColorWidget(QWidget *parent) : QFrame(parent)
+{
+ setFrameShape(QFrame::Box);
+ setAutoFillBackground(true);
+}
+
+ColorWidget::~ColorWidget()
+{}
+
+void ColorWidget::mousePressEvent(QMouseEvent *)
+{
+ QColor color = QColorDialog::getColor(palette().color(backgroundRole()), parentWidget(),
+ tr("Select Color"));
+ if (color.isValid())
+ {
+ setColor(color.name());
+ }
+}
+
+void ColorWidget::setColor(QString c)
+{
+ m_colorName = c;
+ setStyleSheet(QString("QFrame { background: %1 }").arg(m_colorName));
+}
+
+const QString ColorWidget::colorName() const
+{
+ return m_colorName;
+}
diff --git a/src/plugins/Ui/qsui/colorwidget.h b/src/plugins/Ui/qsui/colorwidget.h
new file mode 100644
index 000000000..abbf867ff
--- /dev/null
+++ b/src/plugins/Ui/qsui/colorwidget.h
@@ -0,0 +1,49 @@
+/***************************************************************************
+ * Copyright (C) 2005-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef COLORWIDGET_H
+#define COLORWIDGET_H
+
+#include <QFrame>
+#include <QPaintEvent>
+
+/**
+@author Ilya Kotov
+*/
+class ColorWidget : public QFrame
+{
+ Q_OBJECT
+public:
+ ColorWidget(QWidget *parent = 0);
+
+ ~ColorWidget();
+
+ const QString colorName() const;
+
+public slots:
+ void setColor (QString);
+
+private:
+ void mousePressEvent(QMouseEvent *);
+ QString m_colorName;
+
+
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/coverwidget.cpp b/src/plugins/Ui/qsui/coverwidget.cpp
new file mode 100644
index 000000000..9fdd1440f
--- /dev/null
+++ b/src/plugins/Ui/qsui/coverwidget.cpp
@@ -0,0 +1,71 @@
+/***************************************************************************
+ * Copyright (C) 2013-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QPainter>
+#include <QPaintEvent>
+#include <QAction>
+#include <qmmp/qmmp.h>
+#include <qmmpui/filedialog.h>
+#include "coverwidget.h"
+
+CoverWidget::CoverWidget(QWidget *parent)
+ : QWidget(parent)
+{
+ setContextMenuPolicy(Qt::ActionsContextMenu);
+ QAction *saveAsAction = new QAction(tr("&Save As..."), this);
+ connect(saveAsAction, SIGNAL(triggered()), SLOT(saveAs()));
+ addAction(saveAsAction);
+ m_pixmap = QPixmap(":/qsui/ui_no_cover.png");
+}
+
+CoverWidget::~CoverWidget()
+{}
+
+void CoverWidget::setCover(const QPixmap &pixmap)
+{
+ m_pixmap = pixmap.isNull() ? QPixmap(":/qsui/ui_no_cover.png") : pixmap;
+ update();
+}
+
+void CoverWidget::clearCover()
+{
+ setCover(QPixmap());
+ update();
+}
+
+void CoverWidget::paintEvent(QPaintEvent *p)
+{
+ QPainter paint(this);
+ if(!m_pixmap.isNull())
+ {
+ int w = qMin(p->rect().width(), p->rect().height());
+ paint.drawPixmap(0,0, m_pixmap.scaled(w,w,Qt::IgnoreAspectRatio, Qt::SmoothTransformation));
+ }
+}
+
+void CoverWidget::saveAs()
+{
+ QString path = FileDialog::getSaveFileName(this, tr("Save Cover As"),
+ QDir::homePath() + "/cover.jpg",
+ tr("Images") +" (*.png *.jpg)");
+
+ if (!path.isEmpty())
+ m_pixmap.save(path);
+}
diff --git a/src/plugins/Ui/qsui/coverwidget.h b/src/plugins/Ui/qsui/coverwidget.h
new file mode 100644
index 000000000..ab064dfc5
--- /dev/null
+++ b/src/plugins/Ui/qsui/coverwidget.h
@@ -0,0 +1,50 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef PIXMAPWIDGET_H
+#define PIXMAPWIDGET_H
+
+#include <QWidget>
+#include <QPixmap>
+
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+
+class CoverWidget : public QWidget
+{
+Q_OBJECT
+public:
+ CoverWidget(QWidget *parent = 0);
+
+ ~CoverWidget();
+
+ void setCover(const QPixmap&);
+ void clearCover();
+
+private slots:
+ void saveAs();
+
+private:
+ void paintEvent (QPaintEvent *event);
+ QPixmap m_pixmap;
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/elidinglabel.cpp b/src/plugins/Ui/qsui/elidinglabel.cpp
new file mode 100644
index 000000000..7fda25390
--- /dev/null
+++ b/src/plugins/Ui/qsui/elidinglabel.cpp
@@ -0,0 +1,86 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+#include "elidinglabel.h"
+#include <QFontMetrics>
+#include <QPainter>
+#include <QStyle>
+
+/*!
+ \class Utils::ElidingLabel
+
+ \brief The ElidingLabel class is a label suitable for displaying elided
+ text.
+*/
+
+namespace Utils {
+
+ElidingLabel::ElidingLabel(QWidget *parent)
+ : QLabel(parent), m_elideMode(Qt::ElideRight)
+{
+ setSizePolicy(QSizePolicy(QSizePolicy::Ignored, QSizePolicy::Preferred, QSizePolicy::Label));
+}
+
+ElidingLabel::ElidingLabel(const QString &text, QWidget *parent)
+ : QLabel(text, parent), m_elideMode(Qt::ElideRight)
+{
+ setSizePolicy(QSizePolicy(QSizePolicy::Ignored, QSizePolicy::Preferred, QSizePolicy::Label));
+}
+
+Qt::TextElideMode ElidingLabel::elideMode() const
+{
+ return m_elideMode;
+}
+
+void ElidingLabel::setElideMode(const Qt::TextElideMode &elideMode)
+{
+ m_elideMode = elideMode;
+ update();
+}
+
+void ElidingLabel::paintEvent(QPaintEvent *)
+{
+ const int m = margin();
+ QRect contents = contentsRect().adjusted(m, m, -m, -m);
+ QFontMetrics fm = fontMetrics();
+ QString txt = text();
+ if (txt.length() > 4 && fm.width(txt) > contents.width()) {
+ setToolTip(txt);
+ txt = fm.elidedText(txt, m_elideMode, contents.width());
+ } else {
+ setToolTip(QString());
+ }
+ int flags = QStyle::visualAlignment(layoutDirection(), alignment()) | Qt::TextSingleLine;
+
+ QPainter painter(this);
+ drawFrame(&painter);
+ painter.drawText(contents, flags, txt);
+}
+
+} // namespace Utils
diff --git a/src/plugins/Ui/qsui/elidinglabel.h b/src/plugins/Ui/qsui/elidinglabel.h
new file mode 100644
index 000000000..70e35fd2f
--- /dev/null
+++ b/src/plugins/Ui/qsui/elidinglabel.h
@@ -0,0 +1,59 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+#ifndef ELIDINGLABEL_H
+#define ELIDINGLABEL_H
+
+//#include "utils_global.h"
+#include <QLabel>
+
+namespace Utils {
+
+class /*QTCREATOR_UTILS_EXPORT*/ ElidingLabel : public QLabel
+{
+ Q_OBJECT
+ Q_PROPERTY(Qt::TextElideMode elideMode READ elideMode WRITE setElideMode DESIGNABLE true)
+
+public:
+ explicit ElidingLabel(QWidget *parent = 0);
+ explicit ElidingLabel(const QString &text, QWidget *parent = 0);
+
+ Qt::TextElideMode elideMode() const;
+ void setElideMode(const Qt::TextElideMode &elideMode);
+
+protected:
+ void paintEvent(QPaintEvent *event);
+
+private:
+ Qt::TextElideMode m_elideMode;
+};
+
+} // namespace Utils
+
+#endif // ELIDINGLABEL_H
diff --git a/src/plugins/Ui/qsui/eqpreset.cpp b/src/plugins/Ui/qsui/eqpreset.cpp
new file mode 100644
index 000000000..a1ab77f11
--- /dev/null
+++ b/src/plugins/Ui/qsui/eqpreset.cpp
@@ -0,0 +1,55 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#include "eqpreset.h"
+
+EQPreset::EQPreset()
+{
+ m_preamp = 0;
+ for(int i = 0; i < 10; ++i)
+ m_bands[i] = 0;
+}
+
+
+EQPreset::~EQPreset()
+{}
+
+void EQPreset::setGain(int n, double value)
+{
+ if(n > 14 || n < 0)
+ return;
+ m_bands[n] = value;
+}
+
+void EQPreset::setPreamp(double preamp)
+{
+ m_preamp = preamp;
+}
+
+double EQPreset::gain(int n)
+{
+ if(n > 14 || n < 0)
+ return 0;
+ return m_bands[n];
+}
+
+double EQPreset::preamp()
+{
+ return m_preamp;
+}
diff --git a/src/plugins/Ui/qsui/eqpreset.h b/src/plugins/Ui/qsui/eqpreset.h
new file mode 100644
index 000000000..46a835585
--- /dev/null
+++ b/src/plugins/Ui/qsui/eqpreset.h
@@ -0,0 +1,45 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef EQPRESET_H
+#define EQPRESET_H
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class EQPreset
+{
+public:
+ EQPreset();
+
+ ~EQPreset();
+
+ void setGain(int n, double value);
+ void setPreamp(double);
+
+ double gain(int n);
+ double preamp();
+
+private:
+ double m_bands[15];
+ double m_preamp;
+
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/equalizer.cpp b/src/plugins/Ui/qsui/equalizer.cpp
new file mode 100644
index 000000000..df986828e
--- /dev/null
+++ b/src/plugins/Ui/qsui/equalizer.cpp
@@ -0,0 +1,280 @@
+/***************************************************************************
+ * Copyright (C) 2011-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QGridLayout>
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QSlider>
+#include <QCheckBox>
+#include <QPushButton>
+#include <QComboBox>
+#include <QLabel>
+#include <QPainter>
+#include <QDialogButtonBox>
+#include <QSettings>
+#include <QMessageBox>
+#include <QDir>
+#include <qmmp/qmmpsettings.h>
+#include "equalizer.h"
+
+Equalizer::Equalizer(QWidget *parent) : QDialog(parent)
+{
+ setWindowTitle(tr("Equalizer"));
+
+ m_layout = new QVBoxLayout(this);
+ setLayout(m_layout);
+ m_layout->setSpacing(5);
+ m_layout->setMargin(5);
+
+ QHBoxLayout *buttonsLayout = new QHBoxLayout;
+ buttonsLayout->setSpacing(5);
+ m_enabled = new QCheckBox(tr("Enable equalizer"), this);
+ buttonsLayout->addWidget(m_enabled);
+
+ buttonsLayout->addSpacerItem(new QSpacerItem(30, 0, QSizePolicy::Fixed, QSizePolicy::Fixed));
+
+ QLabel *label = new QLabel(this);
+ label->setText(tr("Preset:"));
+ buttonsLayout->addWidget(label);
+
+ m_presetComboBox = new QComboBox(this);
+ m_presetComboBox->setEditable(true);
+ connect(m_presetComboBox, SIGNAL(activated(int)), SLOT(loadPreset(int)));
+ buttonsLayout->addWidget(m_presetComboBox);
+
+ QPushButton *saveButton = new QPushButton(tr("Save"), this);
+ connect(saveButton, SIGNAL(pressed()), SLOT(savePreset()));
+ buttonsLayout->addWidget(saveButton);
+
+ QPushButton *deleteButton = new QPushButton(tr("Delete"), this);
+ connect(deleteButton, SIGNAL(pressed()), SLOT(deletePreset()));
+ buttonsLayout->addWidget(deleteButton);
+
+ QPushButton *reset = new QPushButton(tr("Reset"), this);
+ connect(reset, SIGNAL(clicked()), SLOT(resetSettings()));
+ buttonsLayout->addWidget(reset);
+
+ QDialogButtonBox *dialogButtons = new QDialogButtonBox(QDialogButtonBox::Close, Qt::Horizontal, this);
+ dialogButtons->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
+ connect(dialogButtons, SIGNAL(rejected()), SLOT(reject()));
+ buttonsLayout->addWidget(dialogButtons);
+
+ QGridLayout *slidersLayout = new QGridLayout;
+ slidersLayout->setSpacing(5);
+
+ QStringList names;
+ names << tr("Preamp") << "25" << "40" << "63" << "100" << "160" << "250"
+ << "400" << "630" << "1k" << "1,6k" << "2,5k"
+ << "4k" << "6,3k" << "10k" << "16k";
+
+ for(int i = 0; i < 16; ++i)
+ {
+ QSlider *slider = new QSlider(this);
+ slider->setRange(-20, 20);
+ slider->setTickPosition(QSlider::TicksLeft);
+ slider->setTickInterval(10);
+ QLabel *label = new QLabel(this);
+ label->setFrameShape(QFrame::Box);
+ label->setText(names.at(i));
+ slidersLayout->addWidget(slider, 1, i, Qt::AlignHCenter);
+ slidersLayout->addWidget(label, 2, i, Qt::AlignHCenter);
+
+ QLabel *label2 = new QLabel(this);
+ label2->setText(tr("%1dB").arg(0));
+ label2->setFrameShape(QFrame::Box);
+ label2->setMinimumWidth(fontMetrics().width(tr("+%1dB").arg(20) + 5));
+ label2->setAlignment(Qt::AlignCenter);
+ slidersLayout->addWidget(label2, 0, i, Qt::AlignHCenter);
+ connect(slider, SIGNAL(valueChanged(int)), SLOT(updateLabel()));
+ m_sliders << slider;
+ m_labels << label2;
+ }
+ m_layout->addItem(slidersLayout);
+ m_layout->addItem(buttonsLayout);
+ setMinimumHeight(300);
+ foreach(QSlider *slider, m_sliders)
+ {
+ connect(slider, SIGNAL(sliderMoved(int)), SLOT(applySettings()));
+ }
+ connect(m_enabled, SIGNAL(clicked()), SLOT(applySettings()));
+ readSettigs();
+ loadPresets();
+}
+
+Equalizer::~Equalizer()
+{
+ savePresets();
+ qDeleteAll(m_presets);
+ m_presets.clear();
+}
+
+void Equalizer::readSettigs()
+{
+ EqSettings settings = QmmpSettings::instance()->eqSettings();
+ m_enabled->setChecked(settings.isEnabled());
+ m_sliders.at(0)->setValue(settings.preamp());
+ for(int i = 0; i < EqSettings::EQ_BANDS_15; ++i)
+ {
+ m_sliders.at(i+1)->setValue(settings.gain(i));
+ }
+}
+
+void Equalizer::loadPresets()
+{
+ m_presetComboBox->clear();
+ //equalizer presets
+ QString preset_path = QDir::homePath() +"/.qmmp/eq16.preset";
+ if(!QFile::exists(preset_path))
+ preset_path = ":/qsui/eq16.preset";
+ QSettings eq_preset (preset_path, QSettings::IniFormat);
+ int i = 0;
+ forever
+ {
+ i++;
+ if (eq_preset.contains("Presets/Preset"+QString("%1").arg(i)))
+ {
+ QString name = eq_preset.value(QString("Presets/Preset%1").arg(i), tr("preset")).toString();
+ EQPreset *preset = new EQPreset();
+ //preset->setText(name);
+ eq_preset.beginGroup(name);
+ for (int j = 0; j < EqSettings::EQ_BANDS_15; ++j)
+ {
+ preset->setGain(j,eq_preset.value(QString("Band%1").arg(j), 0).toDouble());
+ }
+ preset->setPreamp(eq_preset.value("Preamp",0).toDouble());
+ m_presets.append(preset);
+ m_presetComboBox->addItem(name);
+ eq_preset.endGroup();
+ }
+ else
+ break;
+ }
+ m_presetComboBox->clearEditText();
+}
+
+void Equalizer::applySettings()
+{
+ EqSettings settings(EqSettings::EQ_BANDS_15);
+ settings.setPreamp(m_sliders.at(0)->value());
+ settings.setEnabled(m_enabled->isChecked());
+ for(int i = 0; i < EqSettings::EQ_BANDS_15; ++i)
+ {
+ settings.setGain(i, m_sliders.at(i+1)->value());
+ }
+ QmmpSettings::instance()->setEqSettings(settings);
+}
+
+void Equalizer::resetSettings()
+{
+ foreach(QSlider *slider, m_sliders)
+ {
+ slider->setValue(0);
+ }
+ applySettings();
+ m_presetComboBox->setCurrentIndex(-1);
+}
+
+void Equalizer::updateLabel()
+{
+ QSlider *slider = qobject_cast<QSlider *>(sender());
+ int index = m_sliders.indexOf(slider);
+ if(index < 0)
+ return;
+ if(slider->value() > 0)
+ m_labels[index]->setText(tr("+%1dB").arg(slider->value()));
+ else
+ m_labels[index]->setText(tr("%1dB").arg(slider->value()));
+}
+
+void Equalizer::loadPreset(int index)
+{
+ EQPreset *preset = m_presets.at(index);
+ m_sliders.at(0)->setValue(preset->preamp());
+ for(int i = 0; i < EqSettings::EQ_BANDS_15; ++i)
+ {
+ m_sliders.at(i+1)->setValue(preset->gain(i));
+ }
+ applySettings();
+}
+
+void Equalizer::savePreset()
+{
+ QString name = m_presetComboBox->currentText();
+ if(name.isEmpty())
+ return;
+
+ int index = m_presetComboBox->findText(name);
+ if(index != -1)
+ {
+ if(QMessageBox::question(this, tr("Overwrite Request"),
+ tr("Preset '%1' already exists. Overwrite?").arg(name),
+ QMessageBox::Yes | QMessageBox::No) == QMessageBox::No)
+ return;
+ m_presets[index]->setPreamp(m_sliders.at(0)->value());
+ for(int i = 0; i < EqSettings::EQ_BANDS_15; ++i)
+ {
+ m_presets[index]->setGain(i, m_sliders.at(i+1)->value());
+ }
+ }
+ else
+ {
+ m_presetComboBox->addItem(name);
+ EQPreset *preset = new EQPreset();
+ preset->setPreamp(m_sliders.at(0)->value());
+ for(int i = 0; i < EqSettings::EQ_BANDS_15; ++i)
+ {
+ preset->setGain(i, m_sliders.at(i+1)->value());
+ }
+ m_presets.append(preset);
+ }
+ m_presetComboBox->clearEditText();
+}
+
+void Equalizer::savePresets()
+{
+ QSettings eq_preset (QDir::homePath() +"/.qmmp/eq16.preset", QSettings::IniFormat);
+ eq_preset.clear ();
+ for (int i = 0; i < m_presets.size(); ++i)
+ {
+ eq_preset.setValue(QString("Presets/Preset%1").arg(i+1), m_presetComboBox->itemText(i));
+ eq_preset.beginGroup(m_presetComboBox->itemText(i));
+ for (int j = 0; j < EqSettings::EQ_BANDS_15; ++j)
+ {
+ eq_preset.setValue(QString("Band%1").arg(j),m_presets.at(i)->gain(j));
+ }
+ eq_preset.setValue("Preamp",m_presets.at(i)->preamp());
+ eq_preset.endGroup();
+ }
+}
+
+void Equalizer::deletePreset()
+{
+ QString name = m_presetComboBox->currentText();
+ if(name.isEmpty())
+ return;
+
+ int index = m_presetComboBox->findText(name);
+ if(index != -1)
+ {
+ m_presetComboBox->removeItem(index);
+ delete m_presets.takeAt(index);
+ }
+ m_presetComboBox->clearEditText();
+}
diff --git a/src/plugins/Ui/qsui/equalizer.h b/src/plugins/Ui/qsui/equalizer.h
new file mode 100644
index 000000000..2c50298de
--- /dev/null
+++ b/src/plugins/Ui/qsui/equalizer.h
@@ -0,0 +1,67 @@
+/***************************************************************************
+ * Copyright (C) 2011-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef EQUALIZER_H
+#define EQUALIZER_H
+
+#include <QDialog>
+#include <QList>
+#include "eqpreset.h"
+
+class QVBoxLayout;
+class QCheckBox;
+class QSlider;
+class QLabel;
+class QComboBox;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class Equalizer : public QDialog
+{
+ Q_OBJECT
+public:
+ explicit Equalizer(QWidget *parent = 0);
+ ~Equalizer();
+
+
+private slots:
+ void applySettings();
+ void resetSettings();
+ void updateLabel();
+ void loadPreset(int index);
+ void savePreset();
+ void savePresets();
+ void deletePreset();
+
+private:
+ void readSettigs();
+ void loadPresets();
+
+ QVBoxLayout *m_layout;
+ QCheckBox *m_enabled;
+ QComboBox *m_presetComboBox;
+ QList<QSlider *> m_sliders;
+ QList<QLabel *> m_labels;
+ QList<EQPreset *> m_presets;
+
+};
+
+#endif // EQUALIZER_H
diff --git a/src/plugins/Ui/qsui/fft.c b/src/plugins/Ui/qsui/fft.c
new file mode 100644
index 000000000..0ea89eae6
--- /dev/null
+++ b/src/plugins/Ui/qsui/fft.c
@@ -0,0 +1,296 @@
+/* fft.c: Iterative implementation of a FFT
+ * Copyright (C) 1999 Richard Boulton <richard@tartarus.org>
+ * Convolution stuff by Ralph Loader <suckfish@ihug.co.nz>
+ *
+ * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/*
+ * TODO
+ * Remove compiling in of FFT_BUFFER_SIZE? (Might slow things down, but would
+ * be nice to be able to change size at runtime.)
+ * Finish making / checking thread-safety.
+ * More optimisations.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include "fft.h"
+
+//#include <glib.h>
+#include <stdlib.h>
+#include <math.h>
+#ifndef PI
+#ifdef M_PI
+#define PI M_PI
+#else
+#define PI 3.14159265358979323846 /* pi */
+#endif
+#endif
+
+/* ########### */
+/* # Structs # */
+/* ########### */
+
+struct _struct_fft_state {
+ /* Temporary data stores to perform FFT in. */
+ float real[FFT_BUFFER_SIZE];
+ float imag[FFT_BUFFER_SIZE];
+};
+
+/* ############################# */
+/* # Local function prototypes # */
+/* ############################# */
+
+static void fft_prepare(const sound_sample * input, float *re, float *im);
+static void fft_calculate(float *re, float *im);
+static void fft_output(const float *re, const float *im, float *output);
+static int reverseBits(unsigned int initial);
+
+/* #################### */
+/* # Global variables # */
+/* #################### */
+
+/* Table to speed up bit reverse copy */
+static unsigned int bitReverse[FFT_BUFFER_SIZE];
+
+/* The next two tables could be made to use less space in memory, since they
+ * overlap hugely, but hey. */
+static float sintable[FFT_BUFFER_SIZE / 2];
+static float costable[FFT_BUFFER_SIZE / 2];
+
+/* ############################## */
+/* # Externally called routines # */
+/* ############################## */
+
+/* --------- */
+/* FFT stuff */
+/* --------- */
+
+/*
+ * Initialisation routine - sets up tables and space to work in.
+ * Returns a pointer to internal state, to be used when performing calls.
+ * On error, returns NULL.
+ * The pointer should be freed when it is finished with, by fft_close().
+ */
+fft_state *
+fft_init(void)
+{
+ fft_state *state;
+ unsigned int i;
+
+ state = (fft_state *) malloc(sizeof(fft_state));
+ if (!state)
+ return NULL;
+
+ for (i = 0; i < FFT_BUFFER_SIZE; i++) {
+ bitReverse[i] = reverseBits(i);
+ }
+ for (i = 0; i < FFT_BUFFER_SIZE / 2; i++) {
+ float j = 2 * PI * i / FFT_BUFFER_SIZE;
+ costable[i] = cos(j);
+ sintable[i] = sin(j);
+ }
+
+ return state;
+}
+
+/*
+ * Do all the steps of the FFT, taking as input sound data (as described in
+ * sound.h) and returning the intensities of each frequency as floats in the
+ * range 0 to ((FFT_BUFFER_SIZE / 2) * 32768) ^ 2
+ *
+ * FIXME - the above range assumes no frequencies present have an amplitude
+ * larger than that of the sample variation. But this is false: we could have
+ * a wave such that its maximums are always between samples, and it's just
+ * inside the representable range at the places samples get taken.
+ * Question: what _is_ the maximum value possible. Twice that value? Root
+ * two times that value? Hmmm. Think it depends on the frequency, too.
+ *
+ * The input array is assumed to have FFT_BUFFER_SIZE elements,
+ * and the output array is assumed to have (FFT_BUFFER_SIZE / 2 + 1) elements.
+ * state is a (non-NULL) pointer returned by fft_init.
+ */
+void
+fft_perform(const sound_sample * input, float *output, fft_state * state)
+{
+ /* Convert data from sound format to be ready for FFT */
+ fft_prepare(input, state->real, state->imag);
+
+ /* Do the actual FFT */
+ fft_calculate(state->real, state->imag);
+
+ /* Convert the FFT output into intensities */
+ fft_output(state->real, state->imag, output);
+}
+
+/*
+ * Free the state.
+ */
+void
+fft_close(fft_state * state)
+{
+ if (state)
+ free(state);
+}
+
+/* ########################### */
+/* # Locally called routines # */
+/* ########################### */
+
+/*
+ * Prepare data to perform an FFT on
+ */
+static void
+fft_prepare(const sound_sample * input, float *re, float *im)
+{
+ unsigned int i;
+ float *realptr = re;
+ float *imagptr = im;
+
+ /* Get input, in reverse bit order */
+ for (i = 0; i < FFT_BUFFER_SIZE; i++) {
+ *realptr++ = input[bitReverse[i]];
+ *imagptr++ = 0;
+ }
+}
+
+/*
+ * Take result of an FFT and calculate the intensities of each frequency
+ * Note: only produces half as many data points as the input had.
+ * This is roughly a consequence of the Nyquist sampling theorm thingy.
+ * (FIXME - make this comment better, and helpful.)
+ *
+ * The two divisions by 4 are also a consequence of this: the contributions
+ * returned for each frequency are split into two parts, one at i in the
+ * table, and the other at FFT_BUFFER_SIZE - i, except for i = 0 and
+ * FFT_BUFFER_SIZE which would otherwise get float (and then 4* when squared)
+ * the contributions.
+ */
+static void
+fft_output(const float *re, const float *im, float *output)
+{
+ float *outputptr = output;
+ const float *realptr = re;
+ const float *imagptr = im;
+ float *endptr = output + FFT_BUFFER_SIZE / 2;
+
+#ifdef DEBUG
+ unsigned int i, j;
+#endif
+
+ while (outputptr <= endptr) {
+ *outputptr = (*realptr * *realptr) + (*imagptr * *imagptr);
+ outputptr++;
+ realptr++;
+ imagptr++;
+ }
+ /* Do divisions to keep the constant and highest frequency terms in scale
+ * with the other terms. */
+ *output /= 4;
+ *endptr /= 4;
+
+#ifdef DEBUG
+ printf("Recalculated input:\n");
+ for (i = 0; i < FFT_BUFFER_SIZE; i++) {
+ float val_real = 0;
+ float val_imag = 0;
+ for (j = 0; j < FFT_BUFFER_SIZE; j++) {
+ float fact_real = cos(-2 * j * i * PI / FFT_BUFFER_SIZE);
+ float fact_imag = sin(-2 * j * i * PI / FFT_BUFFER_SIZE);
+ val_real += fact_real * re[j] - fact_imag * im[j];
+ val_imag += fact_real * im[j] + fact_imag * re[j];
+ }
+ printf("%5d = %8f + i * %8f\n", i,
+ val_real / FFT_BUFFER_SIZE, val_imag / FFT_BUFFER_SIZE);
+ }
+ printf("\n");
+#endif
+}
+
+/*
+ * Actually perform the FFT
+ */
+static void
+fft_calculate(float *re, float *im)
+{
+ unsigned int i, j, k;
+ unsigned int exchanges;
+ float fact_real, fact_imag;
+ float tmp_real, tmp_imag;
+ unsigned int factfact;
+
+ /* Set up some variables to reduce calculation in the loops */
+ exchanges = 1;
+ factfact = FFT_BUFFER_SIZE / 2;
+
+ /* Loop through the divide and conquer steps */
+ for (i = FFT_BUFFER_SIZE_LOG; i != 0; i--) {
+ /* In this step, we have 2 ^ (i - 1) exchange groups, each with
+ * 2 ^ (FFT_BUFFER_SIZE_LOG - i) exchanges
+ */
+ /* Loop through the exchanges in a group */
+ for (j = 0; j != exchanges; j++) {
+ /* Work out factor for this exchange
+ * factor ^ (exchanges) = -1
+ * So, real = cos(j * PI / exchanges),
+ * imag = sin(j * PI / exchanges)
+ */
+ fact_real = costable[j * factfact];
+ fact_imag = sintable[j * factfact];
+
+ /* Loop through all the exchange groups */
+ for (k = j; k < FFT_BUFFER_SIZE; k += exchanges << 1) {
+ int k1 = k + exchanges;
+ /* newval[k] := val[k] + factor * val[k1]
+ * newval[k1] := val[k] - factor * val[k1]
+ **/
+#ifdef DEBUG
+ printf("%d %d %d\n", i, j, k);
+ printf("Exchange %d with %d\n", k, k1);
+ printf("Factor %9f + i * %8f\n", fact_real, fact_imag);
+#endif
+ /* FIXME - potential scope for more optimization here? */
+ tmp_real = fact_real * re[k1] - fact_imag * im[k1];
+ tmp_imag = fact_real * im[k1] + fact_imag * re[k1];
+ re[k1] = re[k] - tmp_real;
+ im[k1] = im[k] - tmp_imag;
+ re[k] += tmp_real;
+ im[k] += tmp_imag;
+#ifdef DEBUG
+ for (k1 = 0; k1 < FFT_BUFFER_SIZE; k1++) {
+ printf("%5d = %8f + i * %8f\n", k1, real[k1], imag[k1]);
+ }
+#endif
+ }
+ }
+ exchanges <<= 1;
+ factfact >>= 1;
+ }
+}
+
+static int
+reverseBits(unsigned int initial)
+{
+ unsigned int reversed = 0, loop;
+ for (loop = 0; loop < FFT_BUFFER_SIZE_LOG; loop++) {
+ reversed <<= 1;
+ reversed += (initial & 1);
+ initial >>= 1;
+ }
+ return reversed;
+}
diff --git a/src/plugins/Ui/qsui/fft.h b/src/plugins/Ui/qsui/fft.h
new file mode 100644
index 000000000..915bccaf6
--- /dev/null
+++ b/src/plugins/Ui/qsui/fft.h
@@ -0,0 +1,45 @@
+/* fft.h: Header for iterative implementation of a FFT
+ * Copyright (C) 1999 Richard Boulton <richard@tartarus.org>
+ *
+ * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef _FFT_H_
+#define _FFT_H_
+
+#define FFT_BUFFER_SIZE_LOG 9
+
+#define FFT_BUFFER_SIZE (1 << FFT_BUFFER_SIZE_LOG)
+
+/* sound sample - should be an signed 16 bit value */
+typedef short int sound_sample;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* FFT library */
+ typedef struct _struct_fft_state fft_state;
+ fft_state *fft_init(void);
+ void fft_perform(const sound_sample * input, float *output,
+ fft_state * state);
+ void fft_close(fft_state * state);
+
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* _FFT_H_ */
diff --git a/src/plugins/Ui/qsui/filesystembrowser.cpp b/src/plugins/Ui/qsui/filesystembrowser.cpp
new file mode 100644
index 000000000..72c2f6b0f
--- /dev/null
+++ b/src/plugins/Ui/qsui/filesystembrowser.cpp
@@ -0,0 +1,149 @@
+/***************************************************************************
+ * Copyright (C) 2013-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QFileSystemModel>
+#include <QListView>
+#include <QVBoxLayout>
+#include <QSettings>
+#include <QAction>
+#include <QApplication>
+#include <qmmp/metadatamanager.h>
+#include <qmmpui/playlistmanager.h>
+#include <qmmpui/filedialog.h>
+#include <qmmpui/playlistmanager.h>
+#include <qmmp/qmmp.h>
+#include "elidinglabel.h"
+#include "filesystembrowser.h"
+
+FileSystemBrowser::FileSystemBrowser(QWidget *parent) :
+ QWidget(parent)
+{
+ m_update = false;
+
+ m_listView = new QListView(this);
+ m_listView->setFrameStyle(QFrame::NoFrame);
+ m_listView->setDragEnabled(true);
+ m_listView->setSelectionMode(QAbstractItemView::ExtendedSelection);
+ connect(m_listView, SIGNAL(activated(QModelIndex)), SLOT(onListViewActivated(QModelIndex)));
+
+ m_label = new Utils::ElidingLabel(this);
+ m_label->setContentsMargins(5,5,5,0);
+ m_label->setMargin(0);
+
+ QVBoxLayout *layout = new QVBoxLayout();
+ layout->setContentsMargins(0,0,0,0);
+ layout->addWidget(m_label);
+ layout->addWidget(m_listView);
+ setLayout(layout);
+
+ m_model = new QFileSystemModel(this);
+ m_model->setReadOnly(true);
+ m_model->setNameFilterDisables(false);
+ m_model->setFilter(QDir::AllDirs | QDir::Files | QDir::NoDot);
+ m_listView->setModel(m_model);
+
+ setContextMenuPolicy(Qt::ActionsContextMenu);
+ QAction *addToPlaylistAction = new QAction(tr("Add to Playlist"), this);
+ connect(addToPlaylistAction, SIGNAL(triggered()), SLOT(addToPlayList()));
+ addAction(addToPlaylistAction);
+ QAction *selectDirAction = new QAction(tr("Change Directory"), this);
+ connect(selectDirAction, SIGNAL(triggered()), SLOT(selectDirectory()));
+ addAction(selectDirAction);
+
+ readSettings();
+}
+
+FileSystemBrowser::~FileSystemBrowser()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ settings.setValue("fsbrowser_current_dir", m_model->rootPath());
+ settings.endGroup();
+}
+
+void FileSystemBrowser::readSettings()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ if(!m_update)
+ {
+ m_update = true;
+ setCurrentDirectory(settings.value("fsbrowser_current_dir",
+ QDir::homePath()).toString());
+ }
+ settings.endGroup();
+ m_model->setNameFilters(MetaDataManager::instance()->nameFilters());
+}
+
+void FileSystemBrowser::onListViewActivated(const QModelIndex &index)
+{
+ if (!index.isValid())
+ return;
+
+ QString name = m_model->fileName(index);
+
+ if(name == "..")
+ {
+ setCurrentDirectory(m_model->fileInfo(index).absoluteFilePath());
+ }
+ else if(m_model->isDir(index))
+ {
+ QFileInfo info = m_model->fileInfo(index);
+ if(info.isExecutable() && info.isReadable())
+ setCurrentDirectory(m_model->filePath(index));
+ }
+}
+
+void FileSystemBrowser::addToPlayList()
+{
+ foreach (QModelIndex index, m_listView->selectionModel()->selectedIndexes())
+ {
+ if(!index.isValid())
+ continue;
+
+ QString name = m_model->fileName(index);
+ if(name == "..")
+ continue;
+ PlayListManager::instance()->selectedPlayList()->add(m_model->filePath(index));
+ }
+}
+
+void FileSystemBrowser::selectDirectory()
+{
+ QString dir = FileDialog::getExistingDirectory(qApp->activeWindow(),
+ tr("Select Directory"), m_model->rootPath());
+ if(!dir.isEmpty())
+ setCurrentDirectory(dir);
+}
+
+void FileSystemBrowser::setCurrentDirectory(const QString &path)
+{
+ if(path.isEmpty())
+ return;
+
+ QModelIndex index = m_model->setRootPath(QDir(path).exists() ? path : QDir::homePath());
+ if(index.isValid())
+ {
+ m_listView->setRootIndex(index);
+ m_label->setText(QDir(m_model->rootPath()).dirName());
+ }
+ else
+ m_label->clear();
+}
diff --git a/src/plugins/Ui/qsui/filesystembrowser.h b/src/plugins/Ui/qsui/filesystembrowser.h
new file mode 100644
index 000000000..debc02566
--- /dev/null
+++ b/src/plugins/Ui/qsui/filesystembrowser.h
@@ -0,0 +1,61 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef FILESYSTEMBROWSER_H
+#define FILESYSTEMBROWSER_H
+
+#include <QWidget>
+
+class QFileSystemModel;
+class QModelIndex;
+class QListView;
+
+namespace Utils {
+ class ElidingLabel;
+}
+
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class FileSystemBrowser : public QWidget
+{
+ Q_OBJECT
+public:
+ explicit FileSystemBrowser(QWidget *parent = 0);
+ ~FileSystemBrowser();
+
+ void readSettings();
+
+private slots:
+ void onListViewActivated(const QModelIndex &index);
+ void addToPlayList();
+ void selectDirectory();
+
+private:
+ void setCurrentDirectory(const QString &path);
+ bool m_update;
+ Utils::ElidingLabel *m_label;
+ QFileSystemModel *m_model;
+ QListView *m_listView;
+
+};
+
+#endif // FILESYSTEMBROWSER_H
diff --git a/src/plugins/Ui/qsui/forms/aboutqsuidialog.ui b/src/plugins/Ui/qsui/forms/aboutqsuidialog.ui
new file mode 100644
index 000000000..3e53e1f95
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/aboutqsuidialog.ui
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>AboutQSUIDialog</class>
+ <widget class="QDialog" name="AboutQSUIDialog">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>454</width>
+ <height>494</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>About QSUI</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <property name="leftMargin">
+ <number>6</number>
+ </property>
+ <property name="rightMargin">
+ <number>6</number>
+ </property>
+ <property name="bottomMargin">
+ <number>6</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="Logo" name="widget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>93</horstretch>
+ <verstretch>93</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>250</width>
+ <height>300</height>
+ </size>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2">
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QTextEdit" name="aboutTextEdit">
+ <property name="readOnly">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>Logo</class>
+ <extends>QWidget</extends>
+ <header>logo.h</header>
+ <container>1</container>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>AboutQSUIDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>248</x>
+ <y>254</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>157</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>AboutQSUIDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>316</x>
+ <y>260</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>286</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/src/plugins/Ui/qsui/forms/hotkeyeditor.ui b/src/plugins/Ui/qsui/forms/hotkeyeditor.ui
new file mode 100644
index 000000000..f2d49bd0c
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/hotkeyeditor.ui
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>HotkeyEditor</class>
+ <widget class="QWidget" name="HotkeyEditor">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>406</width>
+ <height>365</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string notr="true">Shortcuts</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="1" column="1">
+ <spacer name="horizontalSpacer_7">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>262</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="1" column="0">
+ <widget class="QPushButton" name="changeShortcutButton">
+ <property name="text">
+ <string>Change shortcut...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2">
+ <widget class="QPushButton" name="resetShortcutsButton">
+ <property name="text">
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="3">
+ <widget class="QTreeWidget" name="shortcutTreeWidget">
+ <property name="alternatingRowColors">
+ <bool>true</bool>
+ </property>
+ <property name="animated">
+ <bool>true</bool>
+ </property>
+ <column>
+ <property name="text">
+ <string>Action</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>Shortcut</string>
+ </property>
+ </column>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/src/plugins/Ui/qsui/forms/mainwindow.ui b/src/plugins/Ui/qsui/forms/mainwindow.ui
new file mode 100644
index 000000000..5a9eb2797
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/mainwindow.ui
@@ -0,0 +1,323 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>614</width>
+ <height>474</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Qmmp</string>
+ </property>
+ <property name="dockOptions">
+ <set>QMainWindow::AllowTabbedDocks|QMainWindow::AnimatedDocks|QMainWindow::VerticalTabs</set>
+ </property>
+ <widget class="QWidget" name="centralwidget">
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <property name="margin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QSUiTabWidget" name="tabWidget">
+ <property name="focusPolicy">
+ <enum>Qt::StrongFocus</enum>
+ </property>
+ <property name="currentIndex">
+ <number>-1</number>
+ </property>
+ <property name="documentMode">
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QStatusBar" name="statusbar"/>
+ <widget class="QMenuBar" name="menuBar">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>614</width>
+ <height>25</height>
+ </rect>
+ </property>
+ <widget class="QMenu" name="menuFile">
+ <property name="title">
+ <string>&amp;File</string>
+ </property>
+ </widget>
+ <widget class="QMenu" name="menuTools">
+ <property name="title">
+ <string>&amp;Tools</string>
+ </property>
+ <addaction name="separator"/>
+ <addaction name="actionVisualization"/>
+ <addaction name="separator"/>
+ </widget>
+ <widget class="QMenu" name="menuHelp">
+ <property name="title">
+ <string>&amp;Help</string>
+ </property>
+ </widget>
+ <widget class="QMenu" name="menuEdit">
+ <property name="title">
+ <string>&amp;Edit</string>
+ </property>
+ </widget>
+ <widget class="QMenu" name="menuPlayback">
+ <property name="title">
+ <string>&amp;Playback</string>
+ </property>
+ </widget>
+ <widget class="QMenu" name="menuView">
+ <property name="title">
+ <string>&amp;View</string>
+ </property>
+ </widget>
+ <addaction name="menuFile"/>
+ <addaction name="menuEdit"/>
+ <addaction name="menuView"/>
+ <addaction name="menuPlayback"/>
+ <addaction name="menuTools"/>
+ <addaction name="menuHelp"/>
+ </widget>
+ <widget class="QToolBar" name="buttonsToolBar">
+ <property name="windowTitle">
+ <string>Playback</string>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>16</width>
+ <height>16</height>
+ </size>
+ </property>
+ <attribute name="toolBarArea">
+ <enum>TopToolBarArea</enum>
+ </attribute>
+ <attribute name="toolBarBreak">
+ <bool>false</bool>
+ </attribute>
+ </widget>
+ <widget class="QToolBar" name="progressToolBar">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="windowTitle">
+ <string>Progress</string>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>16</width>
+ <height>16</height>
+ </size>
+ </property>
+ <attribute name="toolBarArea">
+ <enum>TopToolBarArea</enum>
+ </attribute>
+ <attribute name="toolBarBreak">
+ <bool>false</bool>
+ </attribute>
+ </widget>
+ <widget class="QDockWidget" name="analyzerDockWidget">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>79</width>
+ <height>50</height>
+ </size>
+ </property>
+ <property name="windowTitle">
+ <string>Spectrum Analyzer</string>
+ </property>
+ <attribute name="dockWidgetArea">
+ <number>8</number>
+ </attribute>
+ <widget class="QWidget" name="dockWidgetContents"/>
+ </widget>
+ <widget class="QDockWidget" name="fileSystemDockWidget">
+ <property name="minimumSize">
+ <size>
+ <width>130</width>
+ <height>41</height>
+ </size>
+ </property>
+ <property name="windowTitle">
+ <string>Files</string>
+ </property>
+ <attribute name="dockWidgetArea">
+ <number>1</number>
+ </attribute>
+ <widget class="QWidget" name="dockWidgetContents_2"/>
+ </widget>
+ <widget class="QDockWidget" name="coverDockWidget">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="windowTitle">
+ <string>Cover</string>
+ </property>
+ <attribute name="dockWidgetArea">
+ <number>1</number>
+ </attribute>
+ <widget class="QWidget" name="dockWidgetContents_3"/>
+ </widget>
+ <widget class="QDockWidget" name="playlistsDockWidget">
+ <property name="windowTitle">
+ <string>Playlists</string>
+ </property>
+ <attribute name="dockWidgetArea">
+ <number>1</number>
+ </attribute>
+ <widget class="QWidget" name="dockWidgetContents_4"/>
+ </widget>
+ <action name="actionPrevious">
+ <property name="icon">
+ <iconset>
+ <normalon>:/images/previous.png</normalon>
+ </iconset>
+ </property>
+ <property name="text">
+ <string>Previous</string>
+ </property>
+ </action>
+ <action name="actionPlay">
+ <property name="icon">
+ <iconset>
+ <normalon>:/images/play.png</normalon>
+ </iconset>
+ </property>
+ <property name="text">
+ <string>Play</string>
+ </property>
+ </action>
+ <action name="actionPause">
+ <property name="icon">
+ <iconset>
+ <normalon>:/images/pause.png</normalon>
+ </iconset>
+ </property>
+ <property name="text">
+ <string>Pause</string>
+ </property>
+ </action>
+ <action name="actionNext">
+ <property name="icon">
+ <iconset>
+ <normalon>:/images/next.png</normalon>
+ </iconset>
+ </property>
+ <property name="text">
+ <string>Next</string>
+ </property>
+ </action>
+ <action name="actionStop">
+ <property name="icon">
+ <iconset>
+ <normalon>:/images/stop.png</normalon>
+ </iconset>
+ </property>
+ <property name="text">
+ <string>Stop</string>
+ </property>
+ </action>
+ <action name="actionAddFile">
+ <property name="text">
+ <string>&amp;Add File</string>
+ </property>
+ </action>
+ <action name="actionClearPlayList">
+ <property name="text">
+ <string>&amp;Remove All</string>
+ </property>
+ </action>
+ <action name="actionNewPlayList">
+ <property name="text">
+ <string>New Playlist</string>
+ </property>
+ </action>
+ <action name="actionClosePlayList">
+ <property name="text">
+ <string>Remove Playlist</string>
+ </property>
+ </action>
+ <action name="actionAddDirectory">
+ <property name="text">
+ <string>&amp;Add Directory</string>
+ </property>
+ </action>
+ <action name="actionExit">
+ <property name="text">
+ <string>&amp;Exit</string>
+ </property>
+ </action>
+ <action name="actionAbout">
+ <property name="text">
+ <string>About</string>
+ </property>
+ </action>
+ <action name="actionAboutQt">
+ <property name="text">
+ <string>About Qt</string>
+ </property>
+ </action>
+ <action name="actionSelectAll">
+ <property name="text">
+ <string>&amp;Select All</string>
+ </property>
+ </action>
+ <action name="actionRemoveSelected">
+ <property name="text">
+ <string>&amp;Remove Selected</string>
+ </property>
+ </action>
+ <action name="actionRemoveUnselected">
+ <property name="text">
+ <string>&amp;Remove Unselected</string>
+ </property>
+ </action>
+ <action name="actionVisualization">
+ <property name="text">
+ <string>Visualization</string>
+ </property>
+ </action>
+ <action name="actionSettings">
+ <property name="text">
+ <string>Settings</string>
+ </property>
+ </action>
+ <action name="actionRenamePlayList">
+ <property name="text">
+ <string>Rename Playlist</string>
+ </property>
+ </action>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>QSUiTabWidget</class>
+ <extends>QTabWidget</extends>
+ <header>qsuitabwidget.h</header>
+ <container>1</container>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/src/plugins/Ui/qsui/forms/popupsettings.ui b/src/plugins/Ui/qsui/forms/popupsettings.ui
new file mode 100644
index 000000000..c59db2b72
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/popupsettings.ui
@@ -0,0 +1,251 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>PopupSettings</class>
+ <widget class="QDialog" name="PopupSettings">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>277</width>
+ <height>335</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Popup Information Settings</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <property name="leftMargin">
+ <number>6</number>
+ </property>
+ <property name="rightMargin">
+ <number>6</number>
+ </property>
+ <property name="bottomMargin">
+ <number>6</number>
+ </property>
+ <item row="0" column="0" colspan="5">
+ <widget class="QGroupBox" name="groupBox_3">
+ <property name="title">
+ <string>Template</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_4">
+ <item row="0" column="0" colspan="3">
+ <widget class="QPlainTextEdit" name="textEdit">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <spacer name="horizontalSpacer_2">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>138</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="1" column="1">
+ <widget class="QPushButton" name="resetButton">
+ <property name="text">
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2">
+ <widget class="QPushButton" name="insertButton">
+ <property name="text">
+ <string>Insert</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="5">
+ <widget class="QCheckBox" name="coverCheckBox">
+ <property name="text">
+ <string>Show cover</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="4">
+ <widget class="QLabel" name="coverSizeLabel">
+ <property name="text">
+ <string notr="true">0</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="3">
+ <widget class="QLabel" name="label_5">
+ <property name="text">
+ <string>Cover size:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="3">
+ <widget class="QSlider" name="coverSizeSlider">
+ <property name="minimum">
+ <number>32</number>
+ </property>
+ <property name="maximum">
+ <number>128</number>
+ </property>
+ <property name="singleStep">
+ <number>1</number>
+ </property>
+ <property name="pageStep">
+ <number>16</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" colspan="3">
+ <widget class="QLabel" name="label_4">
+ <property name="text">
+ <string>Transparency:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="3">
+ <widget class="QSlider" name="transparencySlider">
+ <property name="maximum">
+ <number>90</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="4">
+ <widget class="QLabel" name="trasparencyLabel">
+ <property name="minimumSize">
+ <size>
+ <width>18</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text">
+ <string notr="true">0</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0" colspan="3">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Delay:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="3">
+ <widget class="QSpinBox" name="delaySpinBox">
+ <property name="minimum">
+ <number>20</number>
+ </property>
+ <property name="maximum">
+ <number>7000</number>
+ </property>
+ <property name="singleStep">
+ <number>500</number>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="0" colspan="5">
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="4">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>ms</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>PopupSettings</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>281</x>
+ <y>286</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>62</x>
+ <y>299</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>PopupSettings</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>281</x>
+ <y>286</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>95</x>
+ <y>299</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>transparencySlider</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>trasparencyLabel</receiver>
+ <slot>setNum(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>258</x>
+ <y>251</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>282</x>
+ <y>251</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>coverSizeSlider</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>coverSizeLabel</receiver>
+ <slot>setNum(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>258</x>
+ <y>223</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>282</x>
+ <y>223</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/src/plugins/Ui/qsui/forms/qsuisettings.ui b/src/plugins/Ui/qsui/forms/qsuisettings.ui
new file mode 100644
index 000000000..26b2790eb
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/qsuisettings.ui
@@ -0,0 +1,1038 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>QSUISettings</class>
+ <widget class="QWidget" name="QSUISettings">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>463</width>
+ <height>483</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string notr="true">Form</string>
+ </property>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QTabWidget" name="tabWidget">
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="tab">
+ <attribute name="title">
+ <string>View</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_5">
+ <item>
+ <widget class="QGroupBox" name="groupBox">
+ <property name="title">
+ <string>Main Window</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_3">
+ <item row="0" column="0">
+ <widget class="QCheckBox" name="hideOnCloseCheckBox">
+ <property name="text">
+ <string>Hide on close</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QCheckBox" name="hiddenCheckBox">
+ <property name="text">
+ <string>Start hidden</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="2">
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="QLabel" name="label_13">
+ <property name="text">
+ <string>Window title format:</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLineEdit" name="windowTitleLineEdit"/>
+ </item>
+ <item>
+ <widget class="QToolButton" name="windowTitleButton">
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QGroupBox" name="groupBox_2">
+ <property name="title">
+ <string>Song Display</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout_3">
+ <item>
+ <widget class="QCheckBox" name="protocolCheckBox">
+ <property name="text">
+ <string>Show protocol</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="anchorCheckBox">
+ <property name="text">
+ <string>Show anchor</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="popupCheckBox">
+ <property name="text">
+ <string>Show popup information</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <item>
+ <widget class="QPushButton" name="popupTemplateButton">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <property name="text">
+ <string>Edit template</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <spacer name="horizontalSpacer_2">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QGroupBox" name="groupBox_6">
+ <property name="title">
+ <string>Single Column Mode</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <widget class="QCheckBox" name="numbersCheckBox">
+ <property name="text">
+ <string>Show song numbers</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="lengthsCheckBox">
+ <property name="text">
+ <string>Show song lengths</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="alignCheckBox">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <property name="text">
+ <string>Align song numbers</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_5">
+ <attribute name="title">
+ <string>Colors</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_7">
+ <item>
+ <widget class="QGroupBox" name="groupBox_4">
+ <property name="title">
+ <string>Analyzer Colors</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_4">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Analyzer #1:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="ColorWidget" name="aColor1">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="3">
+ <widget class="QLabel" name="label_3">
+ <property name="text">
+ <string>Peaks:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="4">
+ <widget class="ColorWidget" name="peaksColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_4">
+ <property name="text">
+ <string>Analyzer #2:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="ColorWidget" name="aColor2">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="3">
+ <widget class="QLabel" name="label_5">
+ <property name="text">
+ <string>Background:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="4">
+ <widget class="ColorWidget" name="bgColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_6">
+ <property name="text">
+ <string>Analyzer #3:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="ColorWidget" name="aColor3">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="3" colspan="2">
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeType">
+ <enum>QSizePolicy::Preferred</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="5" rowspan="3">
+ <spacer name="horizontalSpacer_3">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>10</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="2" rowspan="3">
+ <spacer name="horizontalSpacer_4">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QGroupBox" name="groupBox_3">
+ <property name="title">
+ <string>Playlist Colors</string>
+ </property>
+ <layout class="QVBoxLayout" name="_2">
+ <item>
+ <widget class="QCheckBox" name="plSystemColorsCheckBox">
+ <property name="text">
+ <string>Use system colors</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QWidget" name="widget_2" native="true">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <property name="margin">
+ <number>0</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_7">
+ <property name="text">
+ <string>Background #1:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="ColorWidget" name="plBg1Color">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="3">
+ <widget class="QLabel" name="label_10">
+ <property name="text">
+ <string>Normal text:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="4">
+ <widget class="ColorWidget" name="plTextNormalColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_8">
+ <property name="text">
+ <string>Background #2:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="ColorWidget" name="plBg2Color">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="3">
+ <widget class="QLabel" name="label_11">
+ <property name="text">
+ <string>Current text:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="4">
+ <widget class="ColorWidget" name="plTextCurrentColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_9">
+ <property name="text">
+ <string>Highlighted background:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="ColorWidget" name="plHlColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="3">
+ <widget class="QLabel" name="label_12">
+ <property name="text">
+ <string>Hightlighted text:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="4">
+ <widget class="ColorWidget" name="plTextHlCurrentColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <widget class="QLabel" name="label_14">
+ <property name="text">
+ <string>Group background:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <widget class="ColorWidget" name="plGrBgColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="3">
+ <widget class="QLabel" name="label_15">
+ <property name="text">
+ <string>Group text:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="4">
+ <widget class="ColorWidget" name="plGrTextColor">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::Box</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="5" rowspan="4">
+ <spacer name="horizontalSpacer_6">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>66</width>
+ <height>68</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="2" rowspan="4">
+ <spacer name="horizontalSpacer_5">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>43</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <spacer name="verticalSpacer_4">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>129</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_3">
+ <attribute name="title">
+ <string>Fonts</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_6">
+ <item>
+ <widget class="QCheckBox" name="systemFontsCheckBox">
+ <property name="text">
+ <string>Use system fonts</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QWidget" name="widget" native="true">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="1" column="1">
+ <widget class="QLabel" name="columnFontLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Sunken</enum>
+ </property>
+ <property name="text">
+ <string>???</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="2">
+ <widget class="QToolButton" name="plFontButton">
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_2">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Playlist:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2">
+ <widget class="QToolButton" name="columnFontButton">
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_17">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Tab names:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QLabel" name="tabsFontLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Sunken</enum>
+ </property>
+ <property name="text">
+ <string>???</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QLabel" name="plFontLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Sunken</enum>
+ </property>
+ <property name="text">
+ <string>???</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="2">
+ <widget class="QToolButton" name="tabsFontButton">
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" colspan="3">
+ <layout class="QHBoxLayout" name="horizontalLayout_4">
+ <item>
+ <spacer name="horizontalSpacer_7">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>108</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QPushButton" name="resetFontsButton">
+ <property name="text">
+ <string>Reset fonts</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_16">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Column headers:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <spacer name="verticalSpacer_3">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>308</width>
+ <height>382</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_2">
+ <attribute name="title">
+ <string>Miscellaneous</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_4">
+ <item>
+ <widget class="QGroupBox" name="groupBox_5">
+ <property name="title">
+ <string>Tabs</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <widget class="QCheckBox" name="tabsClosableCheckBox">
+ <property name="text">
+ <string>Show close buttons</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="showTabListMenuCheckBox">
+ <property name="text">
+ <string>Show tab list menu</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="showNewPLCheckBox">
+ <property name="text">
+ <string>Show 'New Playlist' button</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <spacer name="verticalSpacer_2">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>267</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>ColorWidget</class>
+ <extends>QFrame</extends>
+ <header>colorwidget.h</header>
+ <container>1</container>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>numbersCheckBox</sender>
+ <signal>toggled(bool)</signal>
+ <receiver>alignCheckBox</receiver>
+ <slot>setEnabled(bool)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>154</x>
+ <y>220</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>184</x>
+ <y>276</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>popupCheckBox</sender>
+ <signal>toggled(bool)</signal>
+ <receiver>popupTemplateButton</receiver>
+ <slot>setEnabled(bool)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>152</x>
+ <y>332</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>144</x>
+ <y>368</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>systemFontsCheckBox</sender>
+ <signal>toggled(bool)</signal>
+ <receiver>widget</receiver>
+ <slot>setDisabled(bool)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>88</x>
+ <y>49</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>101</x>
+ <y>77</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>plSystemColorsCheckBox</sender>
+ <signal>toggled(bool)</signal>
+ <receiver>widget_2</receiver>
+ <slot>setDisabled(bool)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>107</x>
+ <y>196</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>189</x>
+ <y>237</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/src/plugins/Ui/qsui/forms/shortcutdialog.ui b/src/plugins/Ui/qsui/forms/shortcutdialog.ui
new file mode 100644
index 000000000..77ffded82
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/shortcutdialog.ui
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ShortcutDialog</class>
+ <widget class="QDialog" name="ShortcutDialog">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>310</width>
+ <height>99</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Change Shortcut</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_67">
+ <property name="leftMargin">
+ <number>6</number>
+ </property>
+ <property name="rightMargin">
+ <number>6</number>
+ </property>
+ <property name="bottomMargin">
+ <number>6</number>
+ </property>
+ <item row="0" column="0" colspan="3">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Press the key combination you want to assign</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="3">
+ <widget class="QLineEdit" name="keyLineEdit">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="readOnly">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QPushButton" name="clearButton">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="contextMenuPolicy">
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text">
+ <string>Clear</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>106</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="2" column="2">
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>ShortcutDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>212</x>
+ <y>70</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>192</x>
+ <y>269</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>ShortcutDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>212</x>
+ <y>70</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>246</x>
+ <y>214</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>clearButton</sender>
+ <signal>clicked()</signal>
+ <receiver>keyLineEdit</receiver>
+ <slot>clear()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>195</x>
+ <y>22</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>113</x>
+ <y>25</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/src/plugins/Ui/qsui/forms/toolbareditor.ui b/src/plugins/Ui/qsui/forms/toolbareditor.ui
new file mode 100644
index 000000000..b13af57d7
--- /dev/null
+++ b/src/plugins/Ui/qsui/forms/toolbareditor.ui
@@ -0,0 +1,228 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ToolBarEditor</class>
+ <widget class="QDialog" name="ToolBarEditor">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>524</width>
+ <height>419</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>ToolBar Editor</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <property name="leftMargin">
+ <number>6</number>
+ </property>
+ <property name="rightMargin">
+ <number>6</number>
+ </property>
+ <property name="bottomMargin">
+ <number>6</number>
+ </property>
+ <item row="0" column="0" rowspan="3">
+ <widget class="QListWidget" name="actionsListWidget">
+ <property name="editTriggers">
+ <set>QAbstractItemView::NoEditTriggers</set>
+ </property>
+ <property name="showDropIndicator" stdset="0">
+ <bool>false</bool>
+ </property>
+ <property name="dragEnabled">
+ <bool>true</bool>
+ </property>
+ <property name="dragDropMode">
+ <enum>QAbstractItemView::DragDrop</enum>
+ </property>
+ <property name="defaultDropAction">
+ <enum>Qt::MoveAction</enum>
+ </property>
+ <property name="alternatingRowColors">
+ <bool>true</bool>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>16</width>
+ <height>16</height>
+ </size>
+ </property>
+ <property name="movement">
+ <enum>QListView::Free</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>137</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="2" rowspan="3">
+ <widget class="QListWidget" name="activeActionsListWidget">
+ <property name="editTriggers">
+ <set>QAbstractItemView::NoEditTriggers</set>
+ </property>
+ <property name="dragEnabled">
+ <bool>true</bool>
+ </property>
+ <property name="dragDropOverwriteMode">
+ <bool>false</bool>
+ </property>
+ <property name="dragDropMode">
+ <enum>QAbstractItemView::DragDrop</enum>
+ </property>
+ <property name="defaultDropAction">
+ <enum>Qt::MoveAction</enum>
+ </property>
+ <property name="alternatingRowColors">
+ <bool>true</bool>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>16</width>
+ <height>16</height>
+ </size>
+ </property>
+ <property name="movement">
+ <enum>QListView::Free</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="0" column="0" colspan="2">
+ <widget class="QToolButton" name="upToolButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string notr="true">...</string>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QToolButton" name="removeToolButton">
+ <property name="text">
+ <string notr="true">...</string>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QToolButton" name="addToolButton">
+ <property name="text">
+ <string notr="true">...</string>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2">
+ <widget class="QToolButton" name="downToolButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string notr="true">...</string>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="2" column="1">
+ <spacer name="verticalSpacer_2">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>137</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="3" column="0" colspan="3">
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QPushButton" name="resetPushButton">
+ <property name="text">
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>ToolBarEditor</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>248</x>
+ <y>254</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>157</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>ToolBarEditor</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>316</x>
+ <y>260</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>286</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/src/plugins/Ui/qsui/hotkeyeditor.cpp b/src/plugins/Ui/qsui/hotkeyeditor.cpp
new file mode 100644
index 000000000..ea76dc57e
--- /dev/null
+++ b/src/plugins/Ui/qsui/hotkeyeditor.cpp
@@ -0,0 +1,100 @@
+/***************************************************************************
+ * Copyright (C) 2011-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QMessageBox>
+#include "actionmanager.h"
+#include "hotkeyeditor.h"
+#include "shortcutdialog.h"
+#include "shortcutitem.h"
+#include "ui_hotkeyeditor.h"
+
+HotkeyEditor::HotkeyEditor(QWidget *parent) : QWidget(parent), m_ui(new Ui::HotkeyEditor)
+{
+ m_ui->setupUi(this);
+ loadShortcuts();
+ m_ui->changeShortcutButton->setIcon(QIcon::fromTheme("configure"));
+}
+
+HotkeyEditor::~HotkeyEditor()
+{
+ delete m_ui;
+}
+
+void HotkeyEditor::on_changeShortcutButton_clicked()
+{
+ ShortcutItem *item = dynamic_cast<ShortcutItem *> (m_ui->shortcutTreeWidget->currentItem());
+ if(!item)
+ return;
+ ShortcutDialog editor(item->action()->shortcut().toString(), this);
+ if(editor.exec() == QDialog::Accepted)
+ {
+ item->action()->setShortcut(editor.key());
+ item->setText(1, item->action()->shortcut().toString());
+ }
+}
+
+void HotkeyEditor::on_resetShortcutsButton_clicked()
+{
+ if(QMessageBox::question(this, tr("Reset Shortcuts"),
+ tr("Do you want to restore default shortcuts?"),
+ QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes)
+ {
+ ActionManager::instance()->resetShortcuts();
+ loadShortcuts();
+ }
+}
+
+void HotkeyEditor::loadShortcuts()
+{
+ m_ui->shortcutTreeWidget->clear();
+ //playback
+ QTreeWidgetItem *item = new QTreeWidgetItem (m_ui->shortcutTreeWidget, QStringList() << tr("Playback"));
+ for(int i = ActionManager::PLAY; i <= ActionManager::CLEAR_QUEUE; ++i)
+ new ShortcutItem(item, i);
+ item->setExpanded(true);
+ m_ui->shortcutTreeWidget->addTopLevelItem(item);
+ //view
+ item = new QTreeWidgetItem (m_ui->shortcutTreeWidget, QStringList() << tr("View"));
+ for(int i = ActionManager::WM_ALLWAYS_ON_TOP; i <= ActionManager::UI_BLOCK_TOOLBARS; ++i)
+ new ShortcutItem(item, i);
+ item->setExpanded(true);
+ m_ui->shortcutTreeWidget->addTopLevelItem(item);
+ //volume
+ item = new QTreeWidgetItem (m_ui->shortcutTreeWidget, QStringList() << tr("Volume"));
+ for(int i = ActionManager::VOL_ENC; i <= ActionManager::VOL_MUTE; ++i)
+ new ShortcutItem(item, i);
+ item->setExpanded(true);
+ m_ui->shortcutTreeWidget->addTopLevelItem(item);
+ //playlist
+ item = new QTreeWidgetItem (m_ui->shortcutTreeWidget, QStringList() << tr("Playlist"));
+ for(int i = ActionManager::PL_ADD_FILE; i <= ActionManager::PL_SHOW_HEADER; ++i)
+ new ShortcutItem(item, i);
+ item->setExpanded(true);
+ m_ui->shortcutTreeWidget->addTopLevelItem(item);
+ //misc
+ item = new QTreeWidgetItem (m_ui->shortcutTreeWidget, QStringList() << tr("Misc"));
+ for(int i = ActionManager::EQUALIZER; i <= ActionManager::QUIT; ++i)
+ new ShortcutItem(item, i);
+ item->setExpanded(true);
+ m_ui->shortcutTreeWidget->addTopLevelItem(item);
+
+ m_ui->shortcutTreeWidget->resizeColumnToContents(0);
+ m_ui->shortcutTreeWidget->resizeColumnToContents(1);
+}
diff --git a/src/plugins/Ui/qsui/hotkeyeditor.h b/src/plugins/Ui/qsui/hotkeyeditor.h
new file mode 100644
index 000000000..21a21301d
--- /dev/null
+++ b/src/plugins/Ui/qsui/hotkeyeditor.h
@@ -0,0 +1,50 @@
+/***************************************************************************
+ * Copyright (C) 2011-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef HOTKEYEDITOR_H
+#define HOTKEYEDITOR_H
+
+#include <QWidget>
+
+namespace Ui {
+ class HotkeyEditor;
+}
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class HotkeyEditor : public QWidget
+{
+ Q_OBJECT
+
+public:
+ explicit HotkeyEditor(QWidget *parent = 0);
+ virtual ~HotkeyEditor();
+
+private slots:
+ void on_changeShortcutButton_clicked();
+ void on_resetShortcutsButton_clicked();
+
+private:
+ void loadShortcuts();
+ Ui::HotkeyEditor *m_ui;
+};
+
+#endif // HOTKEYEDITOR_H
diff --git a/src/plugins/Ui/qsui/inlines.h b/src/plugins/Ui/qsui/inlines.h
new file mode 100644
index 000000000..39b81bd57
--- /dev/null
+++ b/src/plugins/Ui/qsui/inlines.h
@@ -0,0 +1,57 @@
+// Copyright (c) 2000-2001 Brad Hughes <bhughes@trolltech.com>
+//
+// Use, modification and distribution is allowed without limitation,
+// warranty, or liability of any kind.
+//
+
+#ifndef INLINES_H
+#define INLINES_H
+
+#include "fft.h"
+
+// *fast* convenience functions
+static inline void calc_freq(short* dest, short *src)
+{
+ static fft_state *state = NULL;
+ float tmp_out[257];
+ int i;
+
+ if (!state)
+ state = fft_init();
+
+ fft_perform(src, tmp_out, state);
+
+ for (i = 0; i < 256; i++)
+ dest[i] = ((int) sqrt(tmp_out[i + 1])) >> 8;
+}
+
+static inline void stereo16_from_multichannel(register short *l,
+ register short *r,
+ register short *s,
+ long cnt, int chan)
+{
+ while (cnt > 0)
+ {
+ l[0] = s[0];
+ r[0] = s[1];
+ s += chan;
+ l++;
+ r++;
+ cnt--;
+ }
+}
+
+static inline void mono16_from_multichannel(register short *l,
+ register short *s,
+ long cnt, int chan)
+{
+ while (cnt > 0)
+ {
+ l[0] = s[0];
+ s += chan;
+ l++;
+ cnt--;
+ }
+}
+
+#endif // INLINES_H
diff --git a/src/plugins/Ui/qsui/keyboardmanager.cpp b/src/plugins/Ui/qsui/keyboardmanager.cpp
new file mode 100644
index 000000000..cc480c8c8
--- /dev/null
+++ b/src/plugins/Ui/qsui/keyboardmanager.cpp
@@ -0,0 +1,315 @@
+/***************************************************************************
+ * Copyright (C) 2011-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QAction>
+#include <QKeySequence>
+#include <qmmpui/playlistmanager.h>
+#include <qmmpui/playlistmodel.h>
+#include <qmmpui/mediaplayer.h>
+#include <qmmp/soundcore.h>
+#include "listwidget.h"
+#include "keyboardmanager.h"
+
+KeyboardManager::KeyboardManager(QObject *parent) :
+ QObject(parent)
+{
+ m_listWidget = 0;
+
+ addAction(Qt::Key_Up, SLOT(processUp()));
+ addAction(Qt::Key_Up + Qt::ShiftModifier, SLOT(processUp()));
+ addAction(Qt::Key_Up + Qt::AltModifier, SLOT(processUp()));
+ addAction(Qt::Key_Up + Qt::ControlModifier, SLOT(processUp()));
+
+ addAction(Qt::Key_Down, SLOT(processDown()));
+ addAction(Qt::Key_Down + Qt::ShiftModifier, SLOT(processDown()));
+ addAction(Qt::Key_Down + Qt::AltModifier, SLOT(processDown()));
+ addAction(Qt::Key_Down + Qt::ControlModifier, SLOT(processDown()));
+
+ addAction(Qt::Key_Return, SLOT(processEnter()));
+ addAction(Qt::Key_PageUp, SLOT(processPgUp()));
+ addAction(Qt::Key_PageUp + Qt::ShiftModifier, SLOT(processPgUp()));
+ addAction(Qt::Key_PageDown, SLOT(processPgDown()));
+ addAction(Qt::Key_PageDown + Qt::ShiftModifier, SLOT(processPgDown()));
+ addAction(Qt::Key_Home, SLOT(processHome()));
+ addAction(Qt::Key_Home + Qt::ShiftModifier, SLOT(processHome()));
+ addAction(Qt::Key_End, SLOT(processEnd()));
+ addAction(Qt::Key_End + Qt::ShiftModifier, SLOT(processEnd()));
+}
+
+QList<QAction *> KeyboardManager::actions()
+{
+ return m_actions;
+}
+
+void KeyboardManager::processUp()
+{
+ if(!m_listWidget)
+ return;
+
+ int keys = qobject_cast<QAction *>(sender())->shortcut()[0];
+
+ QList<int> rows = m_listWidget->model()->selectedIndexes();
+
+ if(rows.isEmpty())
+ {
+ m_listWidget->model()->setSelected(m_listWidget->firstVisibleIndex(), true);
+ m_listWidget->setAnchorIndex(m_listWidget->firstVisibleIndex());
+ return;
+ }
+
+ if (!(keys & Qt::ShiftModifier || keys & Qt::AltModifier || keys & Qt::ControlModifier))
+ {
+ m_listWidget->model()->clearSelection();
+ m_listWidget->setAnchorIndex(-1);
+ }
+
+ int first_visible = m_listWidget->firstVisibleIndex();
+ int last_visible = m_listWidget->visibleRows() + first_visible - 1;
+
+ int s = SELECT_NEXT;
+
+ if(rows.last() < first_visible)
+ s = SELECT_TOP;
+ else if(rows.first() > last_visible)
+ s = SELECT_BOTTOM;
+
+ if (keys & Qt::AltModifier)
+ {
+ if(rows.first() == 0)
+ return;
+ m_listWidget->model()->moveItems (rows.first(), rows.first() - 1);
+ m_listWidget->setAnchorIndex (rows.first() - 1);
+ }
+ else if(keys & Qt::ControlModifier)
+ {
+ m_listWidget->setAnchorIndex (qMax(m_listWidget->anchorIndex() - 1, 0));
+ }
+ else
+ {
+ if(s == SELECT_TOP)
+ {
+ m_listWidget->model()->setSelected (first_visible, true);
+ m_listWidget->setAnchorIndex(first_visible);
+ }
+ else if(s == SELECT_BOTTOM)
+ {
+ m_listWidget->model()->setSelected (last_visible, true);
+ m_listWidget->setAnchorIndex(last_visible);
+ }
+ else if(rows.first() == 0)
+ {
+ m_listWidget->model()->setSelected (rows.first(), true);
+ m_listWidget->setAnchorIndex(rows.first());
+ }
+ else if(rows.contains(m_listWidget->anchorIndex()) || m_listWidget->anchorIndex() < 0)
+ {
+ m_listWidget->model()->setSelected (rows.first() - 1, true);
+ m_listWidget->setAnchorIndex(rows.first() - 1);
+ }
+ else if(m_listWidget->anchorIndex() >= 0)
+ {
+ m_listWidget->model()->setSelected (m_listWidget->anchorIndex(), true);
+ }
+ }
+
+ if(m_listWidget->anchorIndex() < first_visible)
+ {
+ m_listWidget->scroll (m_listWidget->firstVisibleIndex() - 1);
+ }
+}
+
+void KeyboardManager::processDown()
+{
+ if(!m_listWidget)
+ return;
+
+ int keys = qobject_cast<QAction *>(sender())->shortcut()[0];
+
+ QList<int> rows = m_listWidget->model()->selectedIndexes();
+
+ if(rows.isEmpty())
+ {
+ m_listWidget->model()->setSelected(m_listWidget->firstVisibleIndex(), true);
+ m_listWidget->setAnchorIndex(m_listWidget->firstVisibleIndex());
+ return;
+ }
+
+ if (!(keys & Qt::ShiftModifier || keys & Qt::AltModifier || keys & Qt::ControlModifier))
+ {
+ m_listWidget->model()->clearSelection();
+ m_listWidget->setAnchorIndex(-1);
+ }
+
+ int first_visible = m_listWidget->firstVisibleIndex();
+ int last_visible = m_listWidget->visibleRows() + first_visible - 1;
+
+ int s = SELECT_NEXT;
+
+ if(rows.last() < first_visible)
+ s = SELECT_TOP;
+ else if(rows.first() > last_visible)
+ s = SELECT_BOTTOM;
+
+ if (keys & Qt::AltModifier)
+ {
+ if(rows.last() == m_listWidget->model()->count() - 1)
+ return;
+ m_listWidget->model()->moveItems (rows.last(), rows.last() + 1);
+ m_listWidget->setAnchorIndex (rows.last() + 1);
+ }
+ else if(keys & Qt::ControlModifier)
+ {
+ m_listWidget->setAnchorIndex (qMin(m_listWidget->anchorIndex() + 1,
+ m_listWidget->model()->count() - 1));
+ }
+ else
+ {
+ if(s == SELECT_TOP)
+ {
+ m_listWidget->model()->setSelected (first_visible, true);
+ m_listWidget->setAnchorIndex(first_visible);
+ }
+ else if(s == SELECT_BOTTOM)
+ {
+ m_listWidget->model()->setSelected (last_visible, true);
+ m_listWidget->setAnchorIndex(last_visible);
+ }
+ else if(rows.last() == m_listWidget->model()->count() - 1)
+ {
+ m_listWidget->model()->setSelected (rows.last(), true);
+ m_listWidget->setAnchorIndex(rows.last());
+ }
+ else if(rows.contains(m_listWidget->anchorIndex()) || m_listWidget->anchorIndex() < 0)
+ {
+ m_listWidget->model()->setSelected (rows.last() + 1, true);
+ m_listWidget->setAnchorIndex(rows.last() + 1);
+ }
+ else if(m_listWidget->anchorIndex() >= 0)
+ {
+ m_listWidget->model()->setSelected (m_listWidget->anchorIndex(), true);
+ }
+ }
+
+ if(m_listWidget->anchorIndex() > last_visible)
+ {
+ m_listWidget->scroll (m_listWidget->firstVisibleIndex() + 1);
+ }
+}
+
+void KeyboardManager::setListWidget(ListWidget *listWidget)
+{
+ m_listWidget = listWidget;
+}
+
+void KeyboardManager::processEnter()
+{
+ if(!m_listWidget)
+ return;
+ QList<int> rows = m_listWidget->model()->selectedIndexes();
+ if(rows.isEmpty())
+ return;
+ SoundCore::instance()->stop();
+ PlayListManager::instance()->activatePlayList(m_listWidget->model());
+ m_listWidget->model()->setCurrent (rows.first());
+ MediaPlayer::instance()->play();
+}
+
+void KeyboardManager::processPgUp()
+{
+ if(!m_listWidget)
+ return;
+
+ int first = m_listWidget->firstVisibleIndex();
+ int offset = qMax(m_listWidget->firstVisibleIndex() - m_listWidget->visibleRows(), 0);
+ m_listWidget->scroll (offset);
+
+ m_listWidget->model()->clearSelection();
+ if(m_listWidget->firstVisibleIndex() == first)
+ m_listWidget->setAnchorIndex(0);
+ else
+ m_listWidget->setAnchorIndex(m_listWidget->firstVisibleIndex() + m_listWidget->visibleRows()/2);
+ m_listWidget->model()->setSelected(m_listWidget->anchorIndex(), true);
+}
+
+void KeyboardManager::processPgDown()
+{
+ if(!m_listWidget)
+ return;
+
+ int first = m_listWidget->firstVisibleIndex();
+ int offset = qMin(first + m_listWidget->visibleRows(),
+ m_listWidget->model()->count() - 1);
+ m_listWidget->scroll (offset);
+
+ m_listWidget->model()->clearSelection();
+ if(m_listWidget->firstVisibleIndex() == first)
+ m_listWidget->setAnchorIndex(m_listWidget->model()->count() - 1);
+ else
+ m_listWidget->setAnchorIndex(m_listWidget->firstVisibleIndex() + m_listWidget->visibleRows()/2);
+ m_listWidget->model()->setSelected(m_listWidget->anchorIndex(), true);
+}
+
+void KeyboardManager::processHome()
+{
+ if(!m_listWidget)
+ return;
+ int keys = qobject_cast<QAction *>(sender())->shortcut()[0];
+ m_listWidget->scroll (0);
+ if(keys & Qt::ShiftModifier)
+ {
+ m_listWidget->model()->setSelected (0, m_listWidget->anchorIndex(), true);
+ }
+ else if(m_listWidget->model()->count() != 0)
+ {
+ m_listWidget->model()->clearSelection();
+ m_listWidget->setAnchorIndex(0);
+ m_listWidget->model()->setSelected(0, true);
+ }
+}
+
+void KeyboardManager::processEnd()
+{
+ if(!m_listWidget)
+ return;
+
+ int keys = qobject_cast<QAction *>(sender())->shortcut()[0];
+ int scroll_to = m_listWidget->model()->count() - m_listWidget->visibleRows();
+ if(scroll_to >= 0)
+ m_listWidget->scroll(scroll_to);
+
+ if(keys & Qt::ShiftModifier)
+ {
+ m_listWidget->model()->setSelected (m_listWidget->anchorIndex(), m_listWidget->model()->count() - 1, true);
+ }
+ else if(m_listWidget->model()->count() > 0)
+ {
+ m_listWidget->model()->clearSelection();
+ m_listWidget->setAnchorIndex(m_listWidget->model()->count() - 1);
+ m_listWidget->model()->setSelected(m_listWidget->anchorIndex(), true);
+ }
+}
+
+void KeyboardManager::addAction(int keys, const char *method)
+{
+ QAction *action = new QAction(this);
+ action->setShortcut(QKeySequence(keys));
+ connect(action, SIGNAL(triggered()), method);
+ m_actions << action;
+}
diff --git a/src/plugins/Ui/qsui/keyboardmanager.h b/src/plugins/Ui/qsui/keyboardmanager.h
new file mode 100644
index 000000000..d1c2a428c
--- /dev/null
+++ b/src/plugins/Ui/qsui/keyboardmanager.h
@@ -0,0 +1,65 @@
+/***************************************************************************
+ * Copyright (C) 2011-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef KEYBOARDMANAGER_H
+#define KEYBOARDMANAGER_H
+
+#include <QObject>
+#include <QList>
+
+class QAction;
+class ListWidget;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class KeyboardManager : public QObject
+{
+ Q_OBJECT
+public:
+ explicit KeyboardManager(QObject *parent = 0);
+
+ QList<QAction*> actions();
+ void setListWidget(ListWidget *listWidget);
+
+private slots:
+ void processUp();
+ void processDown();
+ void processEnter();
+ void processPgUp();
+ void processPgDown();
+ void processHome();
+ void processEnd();
+
+private:
+ QList<QAction*> m_actions;
+ ListWidget *m_listWidget;
+ void addAction(int keys, const char * method);
+
+ enum SelectMode
+ {
+ SELECT_TOP = 0,
+ SELECT_BOTTOM,
+ SELECT_NEXT
+ };
+
+};
+
+#endif // KEYBOARDMANAGER_H
diff --git a/src/plugins/Ui/qsui/listwidget.cpp b/src/plugins/Ui/qsui/listwidget.cpp
new file mode 100644
index 000000000..8f2c9bf97
--- /dev/null
+++ b/src/plugins/Ui/qsui/listwidget.cpp
@@ -0,0 +1,686 @@
+/***************************************************************************
+ * Copyright (C) 2006-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#include <QPixmap>
+#include <QResizeEvent>
+#include <QPainter>
+#include <QFont>
+#include <QFontMetrics>
+#include <QSettings>
+#include <QMenu>
+#include <QUrl>
+#include <QApplication>
+#include <QHelpEvent>
+#include <QTimer>
+#include <QScrollBar>
+#include <qmmpui/playlistitem.h>
+#include <qmmpui/playlistmodel.h>
+#include <qmmpui/qmmpuisettings.h>
+#include <qmmpui/mediaplayer.h>
+#include "listwidget.h"
+#include "playlistheader.h"
+#include "actionmanager.h"
+#include "popupwidget.h"
+
+#define INVALID_INDEX -1
+
+ListWidget::ListWidget(PlayListModel *model, QWidget *parent)
+ : QWidget(parent)
+{
+ setFocusPolicy(Qt::StrongFocus);
+ m_popupWidget = 0;
+ m_ui_settings = QmmpUiSettings::instance();
+ m_menu = 0;
+ m_model = model;
+ m_timer = new QTimer(this);
+ m_timer->setInterval(50);
+
+ m_header = new PlayListHeader(this);
+ m_scrollBar = new QScrollBar(Qt::Vertical, this);
+ m_hslider = new QScrollBar(Qt::Horizontal, this);
+ m_hslider->setPageStep(50);
+ m_update = false;
+ m_drop_index = INVALID_INDEX;
+ m_scroll_direction = NONE;
+ m_prev_y = 0;
+ m_anchor_index = INVALID_INDEX;
+ m_pressed_index = INVALID_INDEX;
+ m_first = 0;
+ m_row_count = 0;
+ m_select_on_release = false;
+
+ setAcceptDrops(true);
+ setMouseTracking(true);
+
+ readSettings();
+ connect(m_ui_settings, SIGNAL(repeatableTrackChanged(bool)), SLOT(updateRepeatIndicator()));
+ connect(m_timer, SIGNAL(timeout()), SLOT(autoscroll()));
+ connect(m_scrollBar, SIGNAL(valueChanged (int)), SLOT(scroll(int)));
+ connect(m_hslider, SIGNAL(valueChanged(int)), m_header, SLOT(scroll(int)));
+ connect(m_hslider, SIGNAL(valueChanged(int)), this, SLOT(update()));
+ connect(m_model, SIGNAL(currentVisibleRequest()), SLOT(scrollToCurrent()));
+ connect(m_model, SIGNAL(listChanged(int)), SLOT(updateList(int)));
+ connect(m_model, SIGNAL(sortingByColumnFinished(int,bool)), m_header, SLOT(showSortIndicator(int,bool)));
+ SET_ACTION(ActionManager::PL_SHOW_HEADER, this, SLOT(readSettings()));
+}
+
+ListWidget::~ListWidget()
+{
+ qDeleteAll(m_rows);
+ m_rows.clear();
+}
+
+void ListWidget::readSettings()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ m_show_protocol = settings.value ("pl_show_protocol", false).toBool();
+ bool show_popup = settings.value("pl_show_popup", false).toBool();
+
+ m_header->readSettings();
+ m_header->setVisible(ACTION(ActionManager::PL_SHOW_HEADER)->isChecked());
+ m_header->setGeometry(0,0,width(), m_header->requiredHeight());
+
+ if (m_update)
+ {
+ m_drawer.readSettings();
+ updateList(PlayListModel::STRUCTURE);
+ if(m_popupWidget)
+ {
+ m_popupWidget->deleteLater();
+ m_popupWidget = 0;
+ }
+ }
+ else
+ {
+ m_update = true;
+ }
+
+ if(show_popup)
+ m_popupWidget = new PlayListPopup::PopupWidget(this);
+}
+
+int ListWidget::visibleRows() const
+{
+ return m_row_count;
+}
+
+int ListWidget::firstVisibleIndex() const
+{
+ return m_first;
+}
+
+int ListWidget::anchorIndex() const
+{
+ return m_anchor_index;
+}
+
+void ListWidget::setAnchorIndex(int index)
+{
+ m_anchor_index = index;
+ updateList(PlayListModel::SELECTION);
+}
+
+QMenu *ListWidget::menu()
+{
+ return m_menu;
+}
+
+void ListWidget::setMenu(QMenu *menu)
+{
+ m_menu = menu;
+}
+
+PlayListModel *ListWidget::model()
+{
+ Q_ASSERT(m_model);
+ return m_model;
+}
+
+void ListWidget::paintEvent(QPaintEvent *)
+{
+ QPainter painter(this);
+ m_drawer.fillBackground(&painter, width(), height());
+#if QT_VERSION >= 0x040700
+ painter.setLayoutDirection(Qt::LayoutDirectionAuto);
+#endif
+ bool rtl = (layoutDirection() == Qt::RightToLeft);
+ int scroll_bar_width = m_scrollBar->isVisibleTo(this) ? m_scrollBar->sizeHint().width() : 0;
+
+ painter.setClipRect(5,0,width() - scroll_bar_width - 9, height());
+ painter.translate(rtl ? m_header->offset() : -m_header->offset(), 0);
+
+ for (int i = 0; i < m_rows.size(); ++i )
+ {
+ m_drawer.drawBackground(&painter, m_rows[i], i);
+
+ if(m_rows[i]->flags & ListWidgetRow::GROUP)
+ {
+ m_drawer.drawSeparator(&painter, m_rows[i], rtl);
+ continue;
+ }
+
+ m_drawer.drawTrack(&painter, m_rows[i], rtl);
+ }
+ //draw drop line
+ if(m_drop_index != INVALID_INDEX)
+ {
+ m_drawer.drawDropLine(&painter, m_drop_index - m_first, width(),
+ m_header->isVisible() ? m_header->height() : 0);
+ }
+}
+
+void ListWidget::mouseDoubleClickEvent (QMouseEvent *e)
+{
+ int y = e->y();
+ int index = indexAt(y);
+ if (INVALID_INDEX != index)
+ {
+ m_model->setCurrent(index);
+ MediaPlayer *player = MediaPlayer::instance();
+ player->playListManager()->selectPlayList(m_model);
+ player->playListManager()->activatePlayList(m_model);
+ player->stop();
+ player->play();
+ emit selectionChanged();
+ update();
+ }
+}
+
+void ListWidget::mousePressEvent(QMouseEvent *e)
+{
+ if(m_popupWidget)
+ m_popupWidget->hide();
+
+ int index = indexAt(e->y());
+
+ if (INVALID_INDEX != index && m_model->count() > index)
+ {
+ m_pressed_index = index;
+ if(e->button() == Qt::RightButton)
+ {
+ if(!m_model->isSelected(index))
+ {
+ m_anchor_index = m_pressed_index;
+ m_model->clearSelection();
+ m_model->setSelected(index, true);
+ }
+ if(m_model->isGroup(index) && m_model->selectedTracks().isEmpty())
+ {
+ m_anchor_index = m_pressed_index;
+ PlayListGroup *group = m_model->group(index);
+ m_model->setSelected(group->tracks());
+ }
+ QWidget::mousePressEvent(e);
+ return;
+ }
+
+ if (m_model->isSelected(index) && (e->modifiers() == Qt::NoModifier))
+ {
+ m_select_on_release = true;
+ QWidget::mousePressEvent(e);
+ return;
+ }
+
+ if ((Qt::ShiftModifier & e->modifiers()))
+ {
+ int prev_anchor_index = m_anchor_index;
+ m_anchor_index = m_pressed_index;
+ m_model->setSelected(m_pressed_index, prev_anchor_index, true);
+ }
+ else //ShiftModifier released
+ {
+ m_anchor_index = m_pressed_index;
+ if ((Qt::ControlModifier & e->modifiers()))
+ {
+ m_model->setSelected(index, !m_model->isSelected(index));
+ }
+ else //ControlModifier released
+ {
+ m_model->clearSelection();
+ m_model->setSelected(index, true);
+ }
+
+ }
+ update();
+ }
+ QWidget::mousePressEvent(e);
+}
+
+void ListWidget::resizeEvent(QResizeEvent *e)
+{
+ m_header->setGeometry(0,0,width(), m_header->requiredHeight());
+ if(e->oldSize().height() < 10)
+ updateList(PlayListModel::STRUCTURE | PlayListModel::CURRENT); //recenter to current on first resize
+ else
+ updateList(PlayListModel::STRUCTURE);
+ QWidget::resizeEvent(e);
+}
+
+void ListWidget::wheelEvent (QWheelEvent *e)
+{
+ if(m_hslider->underMouse())
+ return;
+
+ if (m_model->count() <= m_row_count)
+ return;
+ if ((m_first == 0 && e->delta() > 0) ||
+ ((m_first == m_model->count() - m_row_count) && e->delta() < 0))
+ return;
+ m_first -= e->delta()/40; //40*3 TODO: add step to config
+ if (m_first < 0)
+ m_first = 0;
+
+ if (m_first > m_model->count() - m_row_count)
+ m_first = m_model->count() - m_row_count;
+
+ updateList(PlayListModel::STRUCTURE);
+}
+
+void ListWidget::showEvent(QShowEvent *)
+{
+ if(!m_rows.isEmpty())
+ updateList(PlayListModel::METADATA);
+}
+
+bool ListWidget::event (QEvent *e)
+{
+ if(m_popupWidget)
+ {
+ if(e->type() == QEvent::ToolTip)
+ {
+ QHelpEvent *helpEvent = (QHelpEvent *) e;
+ int index = indexAt(helpEvent->y());
+ if(index < 0 || !m_model->isTrack(index))
+ {
+ m_popupWidget->deactivate();
+ return QWidget::event(e);
+ }
+ e->accept();
+ m_popupWidget->prepare(m_model->track(index), helpEvent->globalPos());
+ return true;
+ }
+ else if(e->type() == QEvent::Leave)
+ m_popupWidget->deactivate();
+ }
+ return QWidget::event(e);
+}
+
+void ListWidget::updateList(int flags)
+{
+ m_hslider->setVisible(m_header->maxScrollValue() > 0);
+ m_hslider->setRange(0, m_header->maxScrollValue());
+ m_hslider->setValue(m_header->offset());
+
+ if(updateRowCount())
+ flags |= PlayListModel::STRUCTURE;
+
+ if(flags & PlayListModel::CURRENT)
+ recenterCurrent();
+
+ QList<PlayListItem *> items;
+
+ if(flags & PlayListModel::STRUCTURE || flags & PlayListModel::CURRENT)
+ {
+ if(m_row_count >= m_model->count())
+ {
+ m_first = 0;
+ m_scrollBar->setMaximum(0);
+ m_scrollBar->setValue(0);
+ emit positionChanged(0,0);
+ }
+ else if(m_first + m_row_count >= m_model->count())
+ {
+ m_first = qMax(0, m_model->count() - m_row_count);
+ m_scrollBar->setMaximum(m_model->count() - m_row_count);
+ m_scrollBar->setValue(m_first);
+ emit positionChanged(m_first, m_first);
+ }
+ else
+ {
+ m_scrollBar->setMaximum(m_model->count() - m_row_count);
+ m_scrollBar->setValue(m_first);
+ emit positionChanged(m_first, m_model->count() - m_row_count);
+ }
+
+ items = m_model->mid(m_first, m_row_count);
+
+ while(m_rows.count() < qMin(m_row_count, items.count()))
+ m_rows << new ListWidgetRow;
+ while(m_rows.count() > qMin(m_row_count, items.count()))
+ delete m_rows.takeFirst();
+
+ m_scrollBar->setVisible(m_model->count() > m_row_count);
+ }
+ else
+ {
+ items = m_model->mid(m_first, m_row_count);
+ }
+
+ if(flags & PlayListModel::STRUCTURE)
+ m_header->hideSortIndicator();
+
+ if(flags & PlayListModel::STRUCTURE || flags & PlayListModel::METADATA)
+ {
+ //song numbers width
+ m_drawer.calculateNumberWidth(m_model->trackCount());
+ m_drawer.setSingleColumnMode(m_model->columnCount() == 1);
+ m_header->setNumberWidth(m_drawer.numberWidth());
+ }
+
+ updateScrollBars();
+
+ int scroll_bar_width = m_scrollBar->isVisibleTo(this) ? m_scrollBar->sizeHint().width() : 0;
+ int trackStateColumn = m_header->trackStateColumn();
+ int rowWidth = width() + m_header->maxScrollValue() - 10 - scroll_bar_width;
+ bool rtl = layoutDirection() == Qt::RightToLeft;
+ m_header->setScrollBarWidth(scroll_bar_width);
+
+ for(int i = 0; i < items.count(); ++i)
+ {
+ ListWidgetRow *row = m_rows[i];
+ row->autoResize = m_header->hasAutoResizeColumn();
+ row->trackStateColumn = trackStateColumn;
+ items[i]->isSelected() ? row->flags |= ListWidgetRow::SELECTED :
+ row->flags &= ~ListWidgetRow::SELECTED;
+
+ i == (m_anchor_index - m_first) ? row->flags |= ListWidgetRow::ANCHOR :
+ row->flags &= ~ListWidgetRow::ANCHOR;
+
+ if(flags == PlayListModel::SELECTION)
+ continue;
+
+ if(rtl)
+ {
+ row->rect = QRect(width() - 5 - rowWidth, (m_header->isVisibleTo(this) ? m_header->height() : 0) + i * m_drawer.rowHeight(),
+ rowWidth, m_drawer.rowHeight() - 1);
+ }
+ else
+ {
+ row->rect = QRect(5, (m_header->isVisibleTo(this) ? m_header->height() : 0) + i * m_drawer.rowHeight(),
+ rowWidth, m_drawer.rowHeight() - 1);
+ }
+
+ row->titles = items[i]->formattedTitles();
+ row->sizes = m_header->sizes();
+
+ (m_first + i) == m_model->currentIndex() ? row->flags |= ListWidgetRow::CURRENT :
+ row->flags &= ~ListWidgetRow::CURRENT;
+
+ if(items[i]->isGroup())
+ {
+ row->flags |= ListWidgetRow::GROUP;
+ row->number = -1;
+ row->length.clear();
+ }
+ else
+ {
+ row->flags &= ~ListWidgetRow::GROUP;
+ row->number = items.at(i)->trackIndex() + 1;
+ row->length = items[i]->formattedLength();
+ row->extraString = getExtraString(m_first + i);
+ }
+ m_drawer.prepareRow(row); //elide titles
+ }
+ update();
+}
+
+void ListWidget::autoscroll()
+{
+ SimpleSelection sel = m_model->getSelection(m_pressed_index);
+ if ((sel.m_top == 0 && m_scroll_direction == TOP && sel.count() > 1) ||
+ (sel.m_bottom == m_model->count() - 1 && m_scroll_direction == DOWN && sel.count() > 1))
+ return;
+
+ if(m_scroll_direction == DOWN)
+ {
+ int row = m_first + m_row_count;
+ (m_first + m_row_count < m_model->count()) ? m_first ++ : m_first;
+ m_model->moveItems(m_pressed_index,row);
+ m_pressed_index = row;
+ }
+ else if(m_scroll_direction == TOP && m_first > 0)
+ {
+ m_first--;
+ m_model->moveItems(m_pressed_index, m_first);
+ m_pressed_index = m_first;
+ }
+}
+
+void ListWidget::updateRepeatIndicator()
+{
+ updateList(PlayListModel::CURRENT | PlayListModel::STRUCTURE);
+}
+
+void ListWidget::scrollToCurrent()
+{
+ updateList(PlayListModel::CURRENT | PlayListModel::STRUCTURE);
+}
+
+void ListWidget::scroll(int sc)
+{
+ if (m_model->count() <= m_row_count)
+ return;
+ m_first = sc; //*(m_model->count() - m_rows)/99;
+ updateList(PlayListModel::STRUCTURE);
+}
+
+void ListWidget::updateSkin()
+{
+ m_drawer.loadSystemColors();
+ update();
+}
+
+void ListWidget::dragEnterEvent(QDragEnterEvent *event)
+{
+ if (event->mimeData()->hasFormat("text/uri-list"))
+ event->acceptProposedAction();
+}
+
+void ListWidget::dropEvent(QDropEvent *event)
+{
+ if (event->mimeData()->hasUrls())
+ {
+ QList<QUrl> list_urls = event->mimeData()->urls();
+ event->acceptProposedAction();
+ QApplication::restoreOverrideCursor();
+
+ int index = indexAt(event->pos().y());
+ if(index == INVALID_INDEX)
+ {
+ index = qMin(m_first + m_row_count, m_model->count());
+ }
+ m_model->insert(index, list_urls);
+ }
+ m_drop_index = INVALID_INDEX;
+}
+
+void ListWidget::dragLeaveEvent(QDragLeaveEvent *)
+{
+ m_drop_index = INVALID_INDEX;
+ update();
+}
+
+void ListWidget::dragMoveEvent(QDragMoveEvent *event)
+{
+ int index = indexAt(event->pos().y());
+ if(index == INVALID_INDEX)
+ index = qMin(m_first + m_row_count, m_model->count());
+ if(index != m_drop_index)
+ {
+ m_drop_index = index;
+ update();
+ }
+}
+
+const QString ListWidget::getExtraString(int i)
+{
+ QString extra_string;
+
+ PlayListTrack *track = m_model->track(i);
+ if(!track)
+ return extra_string;
+
+ if (m_show_protocol && track->url().contains("://"))
+ extra_string = "[" + track->url().split("://").at(0) + "]";
+
+ if (m_model->isQueued(track))
+ {
+ int index = m_model->queuedIndex(track);
+ extra_string += "|"+QString::number(index + 1)+"|";
+ }
+
+ if(m_model->currentIndex() == i && m_ui_settings->isRepeatableTrack())
+ extra_string += "|R|";
+ else if(m_model->isStopAfter(track))
+ extra_string += "|S|";
+
+ return extra_string.trimmed(); //remove white space
+}
+
+bool ListWidget::updateRowCount()
+{
+ int h = height();
+ if(m_header->isVisibleTo(this))
+ h -= m_header->requiredHeight();
+ if(m_hslider->isVisibleTo(this))
+ h -= m_hslider->height();
+ int row_count = qMax(0, h / m_drawer.rowHeight());
+ if(m_row_count != row_count)
+ {
+ m_row_count = row_count;
+ return true;
+ }
+ return false;
+}
+
+void ListWidget::updateScrollBars()
+{
+ bool rtl = layoutDirection() == Qt::RightToLeft;
+
+ int vslider_width = m_scrollBar->isVisibleTo(this) ? m_scrollBar->sizeHint().width() : 0;
+ int hslider_height = m_hslider->isVisibleTo(this) ? m_hslider->sizeHint().height() : 0;
+
+ if(rtl)
+ {
+ m_scrollBar->setGeometry(0, 0, m_scrollBar->sizeHint().width(), height() - hslider_height);
+ m_hslider->setGeometry(vslider_width, height() - m_hslider->sizeHint().height(),
+ width() - vslider_width, m_hslider->sizeHint().height());
+ }
+ else
+ {
+ m_scrollBar->setGeometry(width() - m_scrollBar->sizeHint().width(), 0,
+ m_scrollBar->sizeHint().width(), height() - hslider_height);
+ m_hslider->setGeometry(0, height() - m_hslider->sizeHint().height(), width() - vslider_width,
+ m_hslider->sizeHint().height());
+ }
+}
+
+void ListWidget::mouseMoveEvent(QMouseEvent *e)
+{
+ if(e->buttons() == Qt::LeftButton)
+ {
+ if (m_prev_y > e->y())
+ m_scroll_direction = TOP;
+ else if (m_prev_y < e->y())
+ m_scroll_direction = DOWN;
+ else
+ m_scroll_direction = NONE;
+
+ if(e->y() < 0 || e->y() > height())
+ {
+ if(!m_timer->isActive())
+ m_timer->start();
+ return;
+ }
+ m_timer->stop();
+
+ int index = indexAt(e->y());
+
+ if (INVALID_INDEX != index)
+ {
+ m_anchor_index = index;
+ SimpleSelection sel = m_model->getSelection(m_pressed_index);
+ if(sel.count() > 1 && m_scroll_direction == TOP)
+ {
+ if(sel.m_top == 0 || sel.m_top == m_first)
+ return;
+ }
+ else if(sel.count() > 1 && m_scroll_direction == DOWN)
+ {
+ if(sel.m_bottom == m_model->count() - 1 || sel.m_bottom == m_first + m_row_count)
+ return;
+ }
+ m_model->moveItems(m_pressed_index,index);
+
+ m_prev_y = e->y();
+ m_pressed_index = index;
+ }
+ }
+ else if(m_popupWidget)
+ {
+ int index = indexAt(e->y());
+ if(index < 0 || !m_model->isTrack(index) || m_popupWidget->url() != m_model->track(index)->url())
+ m_popupWidget->deactivate();
+ }
+}
+
+void ListWidget::mouseReleaseEvent(QMouseEvent *e)
+{
+ if (m_select_on_release)
+ {
+ m_model->clearSelection();
+ m_model->setSelected(m_pressed_index,true);
+ m_anchor_index = m_pressed_index;
+ m_select_on_release = false;
+ }
+ m_pressed_index = INVALID_INDEX;
+ m_scroll_direction = NONE;
+ m_timer->stop();
+ QWidget::mouseReleaseEvent(e);
+}
+
+int ListWidget::indexAt(int y) const
+{
+ y -= m_header->isVisible() ? m_header->height() : 0;
+ for (int i = 0; i < qMin(m_row_count, m_model->count() - m_first); ++i)
+ {
+ if ((y >= i * m_drawer.rowHeight()) && (y <= (i+1) * m_drawer.rowHeight()))
+ return m_first + i;
+ }
+ return INVALID_INDEX;
+}
+
+void ListWidget::contextMenuEvent(QContextMenuEvent * event)
+{
+ if (menu())
+ menu()->exec(event->globalPos());
+}
+
+void ListWidget::recenterCurrent()
+{
+ if (m_row_count)
+ {
+ if (m_first + m_row_count < m_model->currentIndex() + 1)
+ m_first = qMin(m_model->count() - m_row_count,
+ m_model->currentIndex() - m_row_count/2);
+ else if (m_first > m_model->currentIndex())
+ m_first = qMax (m_model->currentIndex() - m_row_count/2, 0);
+ }
+}
diff --git a/src/plugins/Ui/qsui/listwidget.h b/src/plugins/Ui/qsui/listwidget.h
new file mode 100644
index 000000000..2e8986764
--- /dev/null
+++ b/src/plugins/Ui/qsui/listwidget.h
@@ -0,0 +1,139 @@
+/***************************************************************************
+ * Copyright (C) 2006-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef LISTWIDGET_H
+#define LISTWIDGET_H
+
+#include <QWidget>
+#include <QDir>
+#include <QContextMenuEvent>
+#include <QPen>
+#include "listwidgetdrawer.h"
+
+class QFont;
+class QFontMetrics;
+class QMenu;
+class QAction;
+class QTimer;
+class QScrollBar;
+class PlayListModel;
+class PlayListItem;
+class QmmpUiSettings;
+class PlayListHeader;
+namespace PlayListPopup{
+class PopupWidget;
+}
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class ListWidget : public QWidget
+{
+ Q_OBJECT
+public:
+ ListWidget(PlayListModel *model, QWidget *parent = 0);
+
+ ~ListWidget();
+
+ /*!
+ * Returns count of currently visible rows.
+ */
+ int visibleRows() const;
+ /*!
+ * Returns index of the first visible item.
+ */
+ int firstVisibleIndex() const;
+
+ int anchorIndex() const;
+ void setAnchorIndex(int index);
+ QMenu *menu();
+ void setMenu(QMenu *menu);
+ PlayListModel *model();
+
+public slots:
+ void readSettings();
+ void updateList(int flags);
+ void scroll(int); //0-99
+ void recenterCurrent();
+
+signals:
+ void selectionChanged();
+ void positionChanged(int, int); //current position, maximum value
+
+protected:
+ void paintEvent(QPaintEvent *);
+ void mouseDoubleClickEvent(QMouseEvent *);
+ void mousePressEvent(QMouseEvent *);
+ void mouseMoveEvent(QMouseEvent *);
+ void mouseReleaseEvent(QMouseEvent *);
+ void resizeEvent(QResizeEvent *);
+ void wheelEvent(QWheelEvent *);
+ void showEvent(QShowEvent *);
+ int indexAt(int)const;
+ void dragEnterEvent(QDragEnterEvent *event);
+ void dropEvent(QDropEvent *event);
+ void dragLeaveEvent(QDragLeaveEvent *);
+ void dragMoveEvent(QDragMoveEvent *event);
+ void contextMenuEvent (QContextMenuEvent * event);
+ bool event (QEvent *e);
+
+private slots:
+ void updateSkin();
+ void autoscroll();
+ void updateRepeatIndicator();
+ void scrollToCurrent();
+
+private:
+ enum ScrollDirection
+ {
+ NONE = 0,TOP,DOWN
+ };
+ /*!
+ * Returns string with queue number or(and) repeate flag for the item number \b i.
+ */
+ const QString getExtraString(int i);
+
+ bool updateRowCount();
+ void updateScrollBars();
+
+ bool m_update;
+ int m_pressed_index;
+ QMenu *m_menu;
+ PlayListModel *m_model;
+ int m_row_count, m_first;
+ int m_anchor_index;
+ /*!
+ * Scroll direction that is preforming in current moment.
+ */
+ ScrollDirection m_scroll_direction;
+ int m_prev_y;
+ bool m_select_on_release;
+ bool m_show_protocol;
+ int m_drop_index;
+ QList<ListWidgetRow *> m_rows;
+ QmmpUiSettings *m_ui_settings;
+ PlayListPopup::PopupWidget *m_popupWidget;
+ QTimer *m_timer;
+ QScrollBar *m_scrollBar;
+ ListWidgetDrawer m_drawer;
+ PlayListHeader *m_header;
+ QScrollBar *m_hslider;
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/listwidgetdrawer.cpp b/src/plugins/Ui/qsui/listwidgetdrawer.cpp
new file mode 100644
index 000000000..701cae5cf
--- /dev/null
+++ b/src/plugins/Ui/qsui/listwidgetdrawer.cpp
@@ -0,0 +1,429 @@
+/***************************************************************************
+ * Copyright (C) 2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QSettings>
+#include <QPainter>
+#include <QApplication>
+#include <qmmp/qmmp.h>
+#include <qmmpui/playlistmanager.h>
+#include "listwidgetdrawer.h"
+
+// |= number=|=row1=|=row2=|=extra= duration=|
+
+ListWidgetDrawer::ListWidgetDrawer()
+{
+ m_header_model = PlayListManager::instance()->headerModel();
+ m_update = false;
+ m_show_anchor = false;
+ m_show_number = false;
+ m_align_numbres = false;
+ m_show_lengths = false;
+ m_use_system_colors = false;
+ m_single_column = true;
+ m_row_height = 0;
+ m_number_width = 0;
+ m_padding = 0;
+ m_metrics = 0;
+ m_extra_metrics = 0;
+ m_bold_metrics = 0;
+ readSettings();
+}
+
+ListWidgetDrawer::~ListWidgetDrawer()
+{
+ if(m_metrics)
+ delete m_metrics;
+ if(m_extra_metrics)
+ delete m_extra_metrics;
+ if(m_bold_metrics)
+ delete m_bold_metrics;
+}
+
+void ListWidgetDrawer::readSettings()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ m_show_anchor = settings.value("pl_show_anchor", false).toBool();
+ m_show_number = settings.value ("pl_show_numbers", true).toBool();
+ m_show_lengths = settings.value ("pl_show_lengths", true).toBool();
+ m_align_numbres = settings.value ("pl_align_numbers", false).toBool();
+ m_font = qApp->font("QAbstractItemView");
+
+ if(!settings.value("use_system_fonts", true).toBool())
+ m_font.fromString(settings.value("pl_font", m_font.toString()).toString());
+
+ m_extra_font = m_font;
+ m_extra_font.setPointSize(m_font.pointSize() - 1);
+ m_use_system_colors = settings.value("pl_system_colors", true).toBool();
+ loadSystemColors();
+
+ if(!m_use_system_colors)
+ {
+ m_normal_bg.setNamedColor(settings.value("pl_bg1_color", m_normal_bg.name()).toString());
+ m_alternate.setNamedColor(settings.value("pl_bg2_color", m_alternate.name()).toString());
+ m_selected_bg.setNamedColor(settings.value("pl_highlight_color", m_selected_bg.name()).toString());
+ m_normal.setNamedColor(settings.value("pl_normal_text_color", m_normal.name()).toString());
+ m_current.setNamedColor(settings.value("pl_current_text_color",m_current.name()).toString());
+ m_highlighted.setNamedColor(settings.value("pl_hl_text_color",m_highlighted.name()).toString());
+ m_group_bg.setNamedColor(settings.value("pl_group_bg", m_group_bg.name()).toString());
+ m_group_alt_bg = m_group_bg;
+ m_group_text.setNamedColor(settings.value("pl_group_text", m_group_text.name()).toString());
+ }
+
+ if (m_update)
+ {
+ delete m_metrics;
+ delete m_extra_metrics;
+ delete m_bold_metrics;
+ }
+ m_update = true;
+ m_metrics = new QFontMetrics(m_font);
+ m_extra_metrics = new QFontMetrics(m_extra_font);
+ m_font.setBold(true);
+ m_bold_metrics = new QFontMetrics(m_font);
+ m_font.setBold(false);
+ m_padding = m_metrics->width("9")/2;
+ m_row_height = m_metrics->lineSpacing() + 1;
+}
+
+void ListWidgetDrawer::loadSystemColors()
+{
+ m_normal = qApp->palette().color(QPalette::Text);
+ m_alternate = qApp->palette().color(QPalette::AlternateBase);
+ m_current = qApp->palette().color(QPalette::Text);
+ m_highlighted = qApp->palette().color(QPalette::HighlightedText);
+ m_normal_bg = qApp->palette().color(QPalette::Base);
+ m_selected_bg = qApp->palette().color(QPalette::Highlight);
+ m_group_bg = m_normal_bg;
+ m_group_alt_bg = m_alternate,
+ m_group_text = m_normal;
+}
+
+int ListWidgetDrawer::rowHeight() const
+{
+ return m_row_height;
+}
+
+int ListWidgetDrawer::numberWidth() const
+{
+ return m_number_width;
+}
+
+void ListWidgetDrawer::calculateNumberWidth(int count)
+{
+ //song numbers width
+ if(m_show_number && m_align_numbres && count)
+ m_number_width = m_bold_metrics->width("9") * QString::number(count).size();
+ else
+ m_number_width = 0;
+}
+
+void ListWidgetDrawer::setSingleColumnMode(int enabled)
+{
+ m_single_column = enabled;
+}
+
+void ListWidgetDrawer::prepareRow(ListWidgetRow *row)
+{
+ if(m_number_width && m_single_column)
+ row->numberColumnWidth = m_number_width + 2 * m_padding;
+ else
+ row->numberColumnWidth = 0;
+
+ if(row->flags & ListWidgetRow::GROUP)
+ {
+ row->titles[0] = m_metrics->elidedText (row->titles[0], Qt::ElideRight,
+ row->rect.width() - m_number_width - 12 - 70);
+ return;
+ }
+
+ QFontMetrics *metrics = (row->flags & ListWidgetRow::CURRENT) ? m_bold_metrics : m_metrics;
+
+ if(row->titles.count() == 1)
+ {
+ if(m_show_number && !m_align_numbres)
+ row->titles[0].prepend(QString("%1").arg(row->number)+". ");
+
+ if((m_show_lengths && !row->length.isEmpty()) || !row->extraString.isEmpty())
+ row->lengthColumnWidth = m_padding;
+ else
+ row->lengthColumnWidth = 0;
+
+ if(m_show_lengths && !row->length.isEmpty())
+ row->lengthColumnWidth += metrics->width(row->length) + m_padding;
+
+ if(!row->extraString.isEmpty())
+ row->lengthColumnWidth += m_extra_metrics->width(row->extraString) + m_padding;
+ }
+
+ //elide title
+ int visible_width = row->rect.width() - row->lengthColumnWidth - row->numberColumnWidth;
+
+ if(row->titles.count() == 1 && !row->lengthColumnWidth)
+ {
+ row->titles[0] = metrics->elidedText (row->titles[0], Qt::ElideRight, visible_width - 2 * m_padding);
+ return;
+ }
+ else if(row->titles.count() == 1)
+ {
+ row->titles[0] = metrics->elidedText (row->titles[0], Qt::ElideRight, visible_width - m_padding);
+ return;
+ }
+
+ for(int i = 0; i < row->titles.count(); ++i)
+ {
+ int size = row->sizes[i];
+ if(i == row->trackStateColumn && !row->extraString.isEmpty())
+ {
+ int text_size = qMax(0, size - 3 * m_padding - m_extra_metrics->width(row->extraString));
+ row->titles[i] = metrics->elidedText (row->titles[i], Qt::ElideRight, text_size);
+ row->extraString = m_extra_metrics->elidedText(row->extraString, Qt::ElideRight,
+ size - 3 * m_padding - metrics->width(row->titles[i]));
+ }
+ else
+ {
+ row->titles[i] = metrics->elidedText (row->titles[i], Qt::ElideRight, size - 2 * m_padding);
+ }
+ visible_width -= size;
+ }
+}
+
+void ListWidgetDrawer::fillBackground(QPainter *painter, int width, int height)
+{
+ painter->setBrush(m_normal_bg);
+ painter->setPen(m_normal_bg);
+ painter->drawRect(0,0,width,height);
+}
+
+void ListWidgetDrawer::drawBackground(QPainter *painter, ListWidgetRow *row, int index)
+{
+ if(row->flags & ListWidgetRow::SELECTED)
+ {
+ painter->setBrush(m_selected_bg);
+ }
+ else if(row->flags & ListWidgetRow::GROUP)
+ {
+ if(index % 2)
+ {
+ painter->setBrush(QBrush(m_group_alt_bg));
+ painter->setPen(m_group_alt_bg);
+ }
+ else
+ {
+ painter->setBrush(QBrush(m_group_bg));
+ painter->setPen(m_group_bg);
+ }
+ }
+ else
+ {
+ if(index % 2)
+ {
+ painter->setBrush(QBrush(m_alternate));
+ painter->setPen(m_alternate);
+ }
+ else
+ {
+ painter->setBrush(QBrush(m_normal_bg));
+ painter->setPen(m_normal_bg);
+ }
+ }
+
+ if(m_show_anchor && (row->flags & ListWidgetRow::ANCHOR))
+ {
+ painter->setPen(m_normal);
+ }
+ else if(row->flags & ListWidgetRow::SELECTED)
+ {
+ painter->setPen(m_selected_bg);
+ }
+ painter->drawRect(row->rect);
+}
+
+void ListWidgetDrawer::drawSeparator(QPainter *painter, ListWidgetRow *row, bool rtl)
+{
+ int sx = 50 + row->numberColumnWidth;
+ int sy = row->rect.y() + m_metrics->overlinePos() - 1;
+
+ painter->setFont(m_font);
+ painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_group_text);
+
+ if(rtl)
+ sx = row->rect.right() - sx - m_metrics->width(row->titles[0]);
+ else
+ sx += row->rect.x();
+
+ painter->drawText(sx, sy, row->titles[0]);
+
+ sy -= m_metrics->lineSpacing()/2 - 2;
+
+ if(rtl)
+ {
+ painter->drawLine(row->rect.x() + 5, sy, sx - 5, sy);
+ painter->drawLine(sx + m_metrics->width(row->titles[0]) + 5, sy,
+ row->rect.right() - row->numberColumnWidth - m_padding, sy);
+ if(row->numberColumnWidth)
+ {
+ painter->drawLine(row->rect.right() - row->numberColumnWidth, row->rect.top(),
+ row->rect.right() - row->numberColumnWidth, row->rect.bottom() + 1);
+ }
+ }
+ else
+ {
+ painter->drawLine(sx - 45, sy, sx - 5, sy);
+ painter->drawLine(sx + m_metrics->width(row->titles[0]) + 5, sy,
+ row->rect.width(), sy);
+ if(row->numberColumnWidth)
+ {
+ painter->drawLine(row->rect.left() + row->numberColumnWidth, row->rect.top(),
+ row->rect.left() + row->numberColumnWidth, row->rect.bottom() + 1);
+ }
+ }
+}
+
+void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl)
+{
+ int sy = row->rect.y() + m_metrics->overlinePos() - 1;
+ int sx = rtl ? row->rect.right() : row->rect.x();
+
+ painter->setFont(m_font);
+ painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_normal);
+ QFontMetrics *metrics = 0;
+ if(row->flags & ListWidgetRow::CURRENT)
+ {
+ m_font.setBold(true);
+ painter->setFont(m_font);
+ m_font.setBold(false);
+ metrics = m_bold_metrics;
+ }
+ else
+ metrics = m_metrics;
+
+ if(rtl)
+ {
+ //|=duration=extra=|= col1=|=number =|
+ if(row->titles.count() == 1)
+ {
+ if(row->numberColumnWidth)
+ {
+ sx -= row->numberColumnWidth;
+ QString number = QString("%1").arg(row->number);
+ painter->drawText(sx + m_padding, sy, number);
+ painter->drawLine(sx, row->rect.top(), sx, row->rect.bottom() + 1);
+ }
+
+ sx -= metrics->width(row->titles[0]);
+ painter->drawText(sx - m_padding, sy, row->titles[0]);
+ sx = row->rect.x() + m_padding;
+
+ if(m_show_lengths && !row->length.isEmpty())
+ {
+ painter->drawText(sx, sy, row->length);
+ sx += metrics->width(row->length);
+ sx += m_padding;
+ }
+
+ if(!row->extraString.isEmpty())
+ {
+ painter->setFont(m_extra_font);
+ painter->drawText(sx, sy, row->extraString);
+ }
+ }
+ else //|=extra col1=|= col2=|
+ {
+ for(int i = 0; i < row->sizes.count(); i++)
+ {
+ painter->drawText(sx - m_padding - metrics->width(row->titles[i]), sy, row->titles[i]);
+ sx -= row->sizes[i];
+
+ if(i == row->trackStateColumn && !row->extraString.isEmpty())
+ {
+ QFont prev_font = painter->font();
+ painter->setFont(m_extra_font);
+ painter->drawText(sx + m_padding, sy, row->extraString);
+ painter->setFont(prev_font);
+ }
+ if(!row->autoResize || i < row->sizes.count() - 1) //do not draw last vertical line
+ {
+ painter->drawLine(sx - 1, row->rect.top(), sx - 1, row->rect.bottom() + 1);
+ }
+ }
+ }
+ }
+ else
+ {
+ //|= number=|=col =|=extra=duration=|
+ if(row->titles.count() == 1)
+ {
+ if(row->numberColumnWidth)
+ {
+ sx += row->numberColumnWidth;
+ QString number = QString("%1").arg(row->number);
+ painter->drawText(sx - m_padding - m_metrics->width(number), sy, number);
+ painter->drawLine(sx, row->rect.top(), sx, row->rect.bottom() + 1);
+ }
+
+ painter->drawText(sx + m_padding, sy, row->titles[0]);
+ sx = row->rect.right() - m_padding;
+
+ if(m_show_lengths && !row->length.isEmpty())
+ {
+ sx -= metrics->width(row->length);
+ painter->drawText(sx, sy, row->length);
+ sx -= m_padding;
+ }
+
+ if(!row->extraString.isEmpty())
+ {
+ sx -= m_extra_metrics->width(row->extraString);
+ painter->setFont(m_extra_font);
+ painter->drawText(sx, sy, row->extraString);
+ }
+ }
+ else //|=col1 extra=|=col2 =|
+ {
+ for(int i = 0; i < row->sizes.count(); i++)
+ {
+ painter->drawText(sx + m_padding, sy, row->titles[i]);
+ sx += row->sizes[i];
+
+ if(i == row->trackStateColumn && !row->extraString.isEmpty())
+ {
+ QFont prev_font = painter->font();
+ painter->setFont(m_extra_font);
+ painter->drawText(sx - m_padding - m_extra_metrics->width(row->extraString),
+ sy, row->extraString);
+ painter->setFont(prev_font);
+ }
+
+ if(!row->autoResize || i < row->sizes.count() - 1) //do not draw last vertical line
+ {
+ painter->drawLine(sx - 1, row->rect.top(), sx - 1, row->rect.bottom() + 1);
+ }
+ }
+ }
+ }
+}
+
+void ListWidgetDrawer::drawDropLine(QPainter *painter, int row_number, int width, int header_height)
+{
+ painter->setPen(m_current);
+ painter->drawLine (5, header_height + row_number * m_row_height,
+ width - 5 , header_height + row_number * m_row_height);
+}
diff --git a/src/plugins/Ui/qsui/listwidgetdrawer.h b/src/plugins/Ui/qsui/listwidgetdrawer.h
new file mode 100644
index 000000000..72c987427
--- /dev/null
+++ b/src/plugins/Ui/qsui/listwidgetdrawer.h
@@ -0,0 +1,108 @@
+/***************************************************************************
+ * Copyright (C) 2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef LISTWIDGETDRAWER_H
+#define LISTWIDGETDRAWER_H
+
+#include <QString>
+#include <QStringList>
+#include <QColor>
+#include <QRect>
+#include <QFontMetrics>
+
+
+class QPainter;
+class PlayListHeaderModel;
+
+struct ListWidgetRow
+{
+ ListWidgetRow()
+ {
+ flags = NO_FLAGS;
+ numberColumnWidth = 0;
+ lengthColumnWidth = 0;
+ trackStateColumn = -1;
+ autoResize = false;
+ }
+ QStringList titles;
+ QList<int> sizes;
+ QString length;
+ QString extraString;
+ int number;
+ int numberColumnWidth;
+ int lengthColumnWidth;
+ int trackStateColumn;
+ enum
+ {
+ NO_FLAGS = 0x00,
+ GROUP = 0x01,
+ SELECTED = 0x02,
+ CURRENT = 0x04,
+ ANCHOR = 0x08
+ };
+
+ int flags;
+ QRect rect; //geometry
+ bool autoResize;
+};
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class ListWidgetDrawer
+{
+public:
+ ListWidgetDrawer();
+ ~ListWidgetDrawer();
+
+ void readSettings();
+ void loadSystemColors();
+ int rowHeight() const;
+ int numberWidth() const;
+ void calculateNumberWidth(int count);
+ void setSingleColumnMode(int enabled);
+ void prepareRow(ListWidgetRow *row);
+ void fillBackground(QPainter *painter, int width, int height);
+ void drawBackground(QPainter *painter, ListWidgetRow *row, int index);
+ void drawSeparator(QPainter *painter, ListWidgetRow *row, bool rtl);
+ void drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl);
+ void drawDropLine(QPainter *painter, int row_number, int width, int header_height);
+
+private:
+ QColor m_normal, m_current, m_normal_bg, m_selected_bg, m_alternate, m_highlighted;
+ QColor m_group_bg, m_group_alt_bg, m_group_text;
+ QFontMetrics *m_metrics;
+ QFontMetrics *m_extra_metrics;
+ QFontMetrics *m_bold_metrics;
+ PlayListHeaderModel *m_header_model;
+ QFont m_font, m_extra_font;
+ bool m_update;
+ bool m_show_number;
+ bool m_show_anchor;
+ bool m_align_numbres;
+ bool m_show_lengths;
+ bool m_use_system_colors;
+ bool m_single_column;
+ int m_padding;
+ int m_number_width;
+ int m_row_height;
+};
+
+#endif // LISTWIDGETDRAWER_H
diff --git a/src/plugins/Ui/qsui/logo.cpp b/src/plugins/Ui/qsui/logo.cpp
new file mode 100644
index 000000000..49ec2f275
--- /dev/null
+++ b/src/plugins/Ui/qsui/logo.cpp
@@ -0,0 +1,284 @@
+/***************************************************************************
+ * Copyright (C) 2011-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QPainter>
+#include <QFile>
+#include <QTimer>
+#include <stdlib.h>
+#include <qmmp/qmmp.h>
+#include "logo.h"
+
+#define VISUAL_NODE_SIZE 128 //samples
+#define VISUAL_BUFFER_SIZE (3*VISUAL_NODE_SIZE)
+
+Logo::Logo(QWidget *parent) : Visual(parent)
+{
+ QPixmap pixmap(":/qsui/terminus.png");
+ m_letters.insert('0', pixmap.copy(0, 0, 8, 14));
+ m_letters.insert('1', pixmap.copy(8, 0, 8, 14));
+ m_letters.insert('2', pixmap.copy(16, 0, 8, 14));
+ m_letters.insert('3', pixmap.copy(24, 0, 8, 14));
+ m_letters.insert('4', pixmap.copy(32, 0, 8, 14));
+ m_letters.insert('5', pixmap.copy(40, 0, 8, 14));
+ m_letters.insert('6', pixmap.copy(48, 0, 8, 14));
+ m_letters.insert('7', pixmap.copy(56, 0, 8, 14));
+ m_letters.insert('8', pixmap.copy(64, 0, 8, 14));
+ m_letters.insert('9', pixmap.copy(72, 0, 8, 14));
+ m_letters.insert('A', pixmap.copy(80, 0, 8, 14));
+ m_letters.insert('B', pixmap.copy(88, 0, 8, 14));
+ m_letters.insert('C', pixmap.copy(96, 0, 8, 14));
+ m_letters.insert('D', pixmap.copy(104, 0, 8, 14));
+ m_letters.insert('E', pixmap.copy(112, 0, 8, 14));
+ m_letters.insert('F', pixmap.copy(120, 0, 8, 14));
+ m_letters.insert('/', pixmap.copy(128, 0, 8, 14));
+ m_letters.insert('|', pixmap.copy(136, 0, 8, 14));
+ m_letters.insert('\\', pixmap.copy(144, 0, 8, 14));
+ m_letters.insert('_', pixmap.copy(152, 0, 8, 14));
+ m_letters.insert('-', pixmap.copy(160, 0, 8, 14));
+ m_letters.insert('X', pixmap.copy(168, 0, 8, 14));
+ m_letters.insert('.', pixmap.copy(176, 0, 8, 14));
+ m_letters.insert(' ', pixmap.copy(184, 0, 8, 14));
+
+ QFile file(":/ascii_logo.txt");
+ file.open(QIODevice::ReadOnly | QIODevice::Text);
+
+ while(!file.atEnd())
+ {
+ QString line = file.readLine();
+ m_source_lines.append(line);
+ }
+
+ QTimer *m_timer = new QTimer(this);
+ connect(m_timer, SIGNAL(timeout()), SLOT(updateLetters()));
+ m_timer->setInterval(50);
+ m_timer->start();
+
+ m_buffer_at = 0;
+ m_value = 0;
+ m_elapsed = 0;
+ m_buffer = new short[VISUAL_BUFFER_SIZE];
+
+ updateLetters();
+ Visual::add(this);
+}
+
+Logo::~Logo()
+{
+ Visual::remove(this);
+}
+
+void Logo::add(unsigned char *data, qint64 size, int chan)
+{
+ Q_UNUSED(chan);
+ if(VISUAL_BUFFER_SIZE == m_buffer_at)
+ {
+ m_buffer_at -= VISUAL_NODE_SIZE;
+ memmove(m_buffer, (short*) (m_buffer + VISUAL_NODE_SIZE), m_buffer_at * 2);
+ return;
+ }
+ int size_2 = qMin((int)size/2, VISUAL_BUFFER_SIZE - m_buffer_at);
+ memcpy((ushort*)(m_buffer + m_buffer_at), (short*) data, size_2 * 2);
+ m_buffer_at += size_2;
+}
+
+void Logo::clear()
+{
+ update();
+}
+
+void Logo::paintEvent(QPaintEvent *)
+{
+ QPainter painter(this);
+ painter.fillRect(rect(), "black");
+
+ for(int row = 0; row < m_lines.count(); ++row)
+ {
+ QString text = m_lines.at(row);
+ for(int i = 0; i < text.size(); ++i)
+ {
+ painter.drawPixmap(width() / 2 - 155 + i*8,row*14, m_letters.value(text[i]));
+ }
+ }
+}
+
+void Logo::mousePressEvent(QMouseEvent *)
+{
+ m_elapsed = 2000;
+ m_value = 0;
+}
+
+void Logo::updateLetters()
+{
+ if(m_elapsed < 2000)
+ {
+ m_value = m_elapsed / 100;
+ processPreset1();
+ }
+ else if (m_elapsed >= 2000 && m_elapsed < 6000)
+ {
+ m_value++;
+ processPreset2();
+ }
+ else if(m_elapsed >= 6000 && m_elapsed < 9000)
+ {
+ m_value++;
+ processPreset3();
+ }
+ else if(m_elapsed >= 9000 && m_elapsed < 12000)
+ {
+ processPreset4();
+ }
+ else if(m_elapsed >= 12000)
+ {
+ m_value = 0;
+ m_elapsed = 0;
+ }
+ m_elapsed += 50;
+}
+
+void Logo::processPreset1()
+{
+ m_lines.clear();
+ mutex()->lock();
+ QString line;
+ for(int i = 0; i < m_source_lines.count(); ++i)
+ {
+ line = m_source_lines[i];
+ line = line.replace("X", ".");
+ if(m_value == i)
+ {
+ line.remove(0,2);
+ line.append(" ");
+ }
+ else if(m_value == i - 1 || m_value == i + 1)
+ {
+ line.remove(0,1);
+ line.append(" ");
+ }
+ m_lines.append(line);
+ }
+ mutex()->unlock();
+ update();
+}
+
+void Logo::processPreset2()
+{
+ m_lines.clear();
+ mutex()->lock();
+ QString str = QString("..0000..");//.arg(Qmmp::strVersion().left(5));
+ int at = m_value % str.size();
+
+ foreach(QString line, m_source_lines)
+ {
+ while(line.contains("X"))
+ {
+ at++;
+ line.replace(line.indexOf("X"), 1, QString("%1").arg(str.at(at % str.size()),
+ 0, 16).toUpper());
+ }
+
+ m_lines.append(line);
+ }
+ mutex()->unlock();
+ update();
+}
+
+void Logo::processPreset3()
+{
+ m_lines.clear();
+ mutex()->lock();
+ QString str = QString("...%1...").arg(Qmmp::strVersion().left(5));
+ int at = m_value % str.size();
+
+ foreach(QString line, m_source_lines)
+ {
+ while(line.contains("X"))
+ {
+ at++;
+ line.replace(line.indexOf("X"), 1, QString("%1").arg(str.at(at % str.size()),
+ 0, 16).toUpper());
+ }
+
+ m_lines.append(line);
+ }
+ mutex()->unlock();
+ update();
+}
+
+void Logo::processPreset4()
+{
+ m_lines.clear();
+ mutex()->lock();
+
+ int max = 0;
+
+ if(m_buffer_at < VISUAL_NODE_SIZE)
+ {
+ m_value -= 512;
+ m_value = qMax(m_value, max);
+ }
+ else
+ {
+ for(int j = 0; j < VISUAL_NODE_SIZE; j+=8)
+ {
+ if(m_buffer[j] > max)
+ max = m_buffer[j];
+ }
+
+ m_buffer_at -= VISUAL_NODE_SIZE;
+ memmove(m_buffer, m_buffer + VISUAL_NODE_SIZE, m_buffer_at * 2);
+ m_value -= 512;
+ m_value = qMax(m_value, max);
+ }
+
+ int at = 0;
+
+ foreach(QString line, m_source_lines)
+ {
+
+ int count = line.count("X");
+ int k = 0;
+
+ while(k < m_value * count / 2048 / 16 / 2)
+ {
+ int value = abs(m_buffer[qMin(at++, m_buffer_at)] / 2048);
+ line.replace(line.indexOf("X"), 1, QString("%1").arg(value, 0, 16).toUpper());
+ k++;
+ }
+
+ k = 0;
+
+ while(k < m_value * count / 2048 / 16 / 2)
+ {
+ int value = abs(m_buffer[qMin(at++, m_buffer_at)] / 2048);
+ line.replace(line.lastIndexOf("X"), 1, QString("%1").arg(value, 0, 16).toUpper());
+ k++;
+ }
+
+ while(line.contains("X"))
+ {
+ line.replace(line.indexOf("X"), 1, ".");
+ }
+
+ m_lines.append(line);
+ }
+ mutex()->unlock();
+ update();
+}
diff --git a/src/plugins/Ui/qsui/logo.h b/src/plugins/Ui/qsui/logo.h
new file mode 100644
index 000000000..9b2c6284b
--- /dev/null
+++ b/src/plugins/Ui/qsui/logo.h
@@ -0,0 +1,65 @@
+/***************************************************************************
+ * Copyright (C) 2011-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef LOGO_H
+#define LOGO_H
+
+#include <QWidget>
+#include <QHash>
+#include <QChar>
+#include <QStringList>
+#include <QQueue>
+#include <QPixmap>
+#include <qmmp/visual.h>
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class Logo : public Visual
+{
+ Q_OBJECT
+public:
+ explicit Logo(QWidget *parent = 0);
+ virtual ~Logo();
+
+ void add(unsigned char *data, qint64 size, int chan);
+ void clear();
+
+private slots:
+ void updateLetters();
+
+private:
+ void paintEvent(QPaintEvent *);
+ void mousePressEvent(QMouseEvent *);
+ void processPreset1();
+ void processPreset2();
+ void processPreset3();
+ void processPreset4();
+ QHash <QChar, QPixmap> m_letters;
+ QStringList m_lines;
+ QStringList m_source_lines;
+ short *m_buffer;
+ int m_buffer_at;
+ int m_value;
+ qint64 m_elapsed;
+
+};
+
+#endif // LOGO_H
diff --git a/src/plugins/Ui/qsui/mainwindow.cpp b/src/plugins/Ui/qsui/mainwindow.cpp
new file mode 100644
index 000000000..399eff06a
--- /dev/null
+++ b/src/plugins/Ui/qsui/mainwindow.cpp
@@ -0,0 +1,924 @@
+/***************************************************************************
+ * Copyright (C) 2009-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#include <QPushButton>
+#include <QHBoxLayout>
+#include <QSlider>
+#include <QLabel>
+#include <QTreeView>
+#include <QMessageBox>
+#include <QSignalMapper>
+#include <QMenu>
+#include <QSettings>
+#include <QInputDialog>
+#include <qmmp/soundcore.h>
+#include <qmmp/decoder.h>
+#include <qmmp/metadatamanager.h>
+#include <qmmpui/general.h>
+#include <qmmpui/playlistparser.h>
+#include <qmmpui/playlistformat.h>
+#include <qmmpui/filedialog.h>
+#include <qmmpui/playlistmodel.h>
+#include <qmmpui/mediaplayer.h>
+#include <qmmpui/uihelper.h>
+#include <qmmpui/configdialog.h>
+#include <qmmpui/qmmpuisettings.h>
+#include "toolbareditor.h"
+#include "actionmanager.h"
+#include "qsuianalyzer.h"
+#include "visualmenu.h"
+#include "listwidget.h"
+#include "positionslider.h"
+#include "mainwindow.h"
+#include "qsuisettings.h"
+#include "hotkeyeditor.h"
+#include "filesystembrowser.h"
+#include "aboutqsuidialog.h"
+#include "keyboardmanager.h"
+#include "coverwidget.h"
+#include "playlistbrowser.h"
+#include "equalizer.h"
+
+#define KEY_OFFSET 10000
+
+MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
+{
+ m_ui.setupUi(this);
+ m_balance = 0;
+ m_update = false;
+ m_wasMaximized = false;
+ m_titleFormatter.setPattern("%if(%p,%p - %t,%t)");
+ //qmmp objects
+ m_player = MediaPlayer::instance();
+ m_core = SoundCore::instance();
+ m_pl_manager = PlayListManager::instance();
+ m_uiHelper = UiHelper::instance();
+ m_ui_settings = QmmpUiSettings::instance();
+ connect(m_uiHelper, SIGNAL(toggleVisibilityCalled()), SLOT(toggleVisibility()));
+ connect(m_uiHelper, SIGNAL(showMainWindowCalled()), SLOT(showAndRaise()));
+ m_visMenu = new VisualMenu(this); //visual menu
+ m_ui.actionVisualization->setMenu(m_visMenu);
+ m_pl_menu = new QMenu(this); //playlist menu
+ new ActionManager(this); //action manager
+ //status
+ connect(m_core, SIGNAL(elapsedChanged(qint64)), SLOT(updatePosition(qint64)));
+ connect(m_core, SIGNAL(stateChanged(Qmmp::State)), SLOT(showState(Qmmp::State)));
+ connect(m_core, SIGNAL(bitrateChanged(int)), SLOT(updateStatus()));
+ connect(m_core, SIGNAL(bufferingProgress(int)), SLOT(showBuffering(int)));
+ connect(m_core, SIGNAL(metaDataChanged()), SLOT(showMetaData()));
+ //keyboard manager
+ m_key_manager = new KeyboardManager(this);
+ //create tabs
+ foreach(PlayListModel *model, m_pl_manager->playLists())
+ {
+ ListWidget *list = new ListWidget(model, this);
+ list->setMenu(m_pl_menu);
+ if(m_pl_manager->currentPlayList() != model)
+ m_ui.tabWidget->addTab(list, model->name());
+ else
+ {
+ m_ui.tabWidget->addTab(list, "[" + model->name() + "]");
+ m_ui.tabWidget->setCurrentWidget(list);
+ }
+ if(model == m_pl_manager->selectedPlayList())
+ {
+ m_ui.tabWidget->setCurrentWidget(list);
+ m_key_manager->setListWidget(list);
+ }
+ connect(model, SIGNAL(nameChanged(QString)), SLOT(updateTabs()));
+ }
+ m_slider = new PositionSlider(this);
+ m_slider->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
+ m_ui.progressToolBar->addWidget(m_slider);
+ //prepare visualization
+ Visual::initialize(this, m_visMenu, SLOT(updateActions()));
+ //playlist manager
+ connect(m_slider, SIGNAL(sliderReleased()), SLOT(seek()));
+ connect(m_pl_manager, SIGNAL(currentPlayListChanged(PlayListModel*,PlayListModel*)),
+ SLOT(updateTabs()));
+ connect(m_pl_manager, SIGNAL(selectedPlayListChanged(PlayListModel*,PlayListModel*)),
+ SLOT(updateTabs()));
+ connect(m_pl_manager, SIGNAL(playListRemoved(int)), SLOT(removeTab(int)));
+ connect(m_pl_manager, SIGNAL(playListAdded(int)), SLOT(addTab(int)));
+ connect(m_ui.tabWidget,SIGNAL(currentChanged(int)), m_pl_manager, SLOT(selectPlayList(int)));
+ connect(m_ui.tabWidget, SIGNAL(tabCloseRequested(int)), m_pl_manager, SLOT(removePlayList(int)));
+ connect(m_ui.tabWidget, SIGNAL(tabMoved(int,int)), m_pl_manager, SLOT(move(int,int)));
+ connect(m_ui.tabWidget, SIGNAL(createPlayListRequested()), m_pl_manager, SLOT(createPlayList()));
+
+ m_ui.tabWidget->setContextMenuPolicy(Qt::CustomContextMenu);
+ connect(m_ui.tabWidget, SIGNAL(customContextMenuRequested(QPoint)), SLOT(showTabMenu(QPoint)));
+ m_tab_menu = new QMenu(m_ui.tabWidget);
+ //status bar
+ m_timeLabel = new QLabel(this);
+ m_statusLabel = new QLabel(this);
+ m_ui.statusbar->addPermanentWidget(m_statusLabel, 0);
+ m_ui.statusbar->addPermanentWidget(m_timeLabel, 1);
+ //volume
+ m_ui.progressToolBar->addSeparator();
+ m_volumeSlider = new QSlider(Qt::Horizontal, this);
+ m_volumeSlider->setFixedWidth(100);
+ m_volumeSlider->setRange(0,100);
+ QIcon volumeIcon = QIcon::fromTheme("audio-volume-high", QIcon(":/qsui/audio-volume-high.png"));
+ m_volumeAction = m_ui.progressToolBar->addAction(volumeIcon, tr("Volume"));
+ m_volumeAction->setCheckable(true);
+ connect(m_volumeAction, SIGNAL(triggered(bool)), m_core, SLOT(setMuted(bool)));
+ connect(m_volumeSlider, SIGNAL(valueChanged(int)), m_core, SLOT(setVolume(int)));
+ connect(m_core, SIGNAL(volumeChanged(int)), m_volumeSlider, SLOT(setValue(int)));
+ connect(m_core, SIGNAL(volumeChanged(int)), SLOT(updateVolumeIcon()));
+ connect(m_core, SIGNAL(mutedChanged(bool)), SLOT(updateVolumeIcon()));
+ connect(m_core, SIGNAL(mutedChanged(bool)), m_volumeAction, SLOT(setChecked(bool)));
+ m_volumeSlider->setValue(m_core->volume());
+ updateVolumeIcon();
+ m_ui.progressToolBar->addWidget(m_volumeSlider);
+ //visualization
+ m_analyzer = new QSUiAnalyzer(this);
+ m_ui.analyzerDockWidget->setWidget(m_analyzer);
+ Visual::add(m_analyzer);
+ //filesystem browser
+ m_ui.fileSystemDockWidget->setWidget(new FileSystemBrowser(this));
+ //cover
+ m_ui.coverDockWidget->setWidget(new CoverWidget(this));
+ //playlists
+ m_ui.playlistsDockWidget->setWidget(new PlayListBrowser(m_pl_manager, this));
+
+ createActions();
+ createButtons();
+ readSettings();
+ updateStatus();
+}
+
+MainWindow::~MainWindow()
+{
+}
+
+void MainWindow::addDir()
+{
+ m_uiHelper->addDirectory(this);
+}
+
+void MainWindow::addFiles()
+{
+ m_uiHelper->addFile(this);
+}
+
+void MainWindow::playFiles()
+{
+ m_uiHelper->playFiles(this);
+}
+
+void MainWindow::addUrl()
+{
+ m_uiHelper->addUrl(this);
+}
+
+void MainWindow::updatePosition(qint64 pos)
+{
+ m_slider->setMaximum(m_core->totalTime()/1000);
+ if(!m_slider->isSliderDown())
+ m_slider->setValue(pos/1000);
+
+ QString text = MetaDataFormatter::formatLength(pos/1000);
+ if(m_core->totalTime() > 0)
+ {
+ text.append("/");
+ text.append(MetaDataFormatter::formatLength(m_core->totalTime()/1000));
+ }
+ m_timeLabel->setText(text);
+}
+
+void MainWindow::seek()
+{
+ m_core->seek(m_slider->value()*1000);
+}
+
+void MainWindow::showState(Qmmp::State state)
+{
+ switch((int) state)
+ {
+ case Qmmp::Playing:
+ {
+ updateStatus();
+ m_analyzer->setCover(MetaDataManager::instance()->getCover(m_core->url()));
+ CoverWidget *cw = qobject_cast<CoverWidget *>(m_ui.coverDockWidget->widget());
+ cw->setCover(MetaDataManager::instance()->getCover(m_core->url()));
+ break;
+ }
+ case Qmmp::Paused:
+ updateStatus();
+ break;
+ case Qmmp::Stopped:
+ updateStatus();
+ m_timeLabel->clear();
+ m_slider->setValue(0);
+ m_analyzer->clearCover();
+ qobject_cast<CoverWidget *>(m_ui.coverDockWidget->widget())->clearCover();
+ setWindowTitle("Qmmp");
+ break;
+ default:
+ ;
+ }
+}
+
+void MainWindow::updateTabs()
+{
+ for(int i = 0; i < m_pl_manager->count(); ++i)
+ {
+ PlayListModel *model = m_pl_manager->playListAt(i);
+ if(model == m_pl_manager->currentPlayList())
+ m_ui.tabWidget->setTabText(i, "[" + model->name() + "]");
+ else
+ m_ui.tabWidget->setTabText(i, model->name());
+ //hack for displaying '&'
+ m_ui.tabWidget->setTabText(i, m_ui.tabWidget->tabText(i).replace("&", "&&"));
+ if(model == m_pl_manager->selectedPlayList())
+ {
+ m_ui.tabWidget->setCurrentIndex(i);
+ m_key_manager->setListWidget(qobject_cast<ListWidget *>(m_ui.tabWidget->widget(i)));
+ }
+ }
+}
+
+void MainWindow::removePlaylist()
+{
+ m_pl_manager->removePlayList(m_pl_manager->selectedPlayList());
+}
+
+void MainWindow::removePlaylistWithIndex(int index)
+{
+ m_pl_manager->removePlayList(m_pl_manager->playListAt(index));
+}
+
+void MainWindow::addTab(int index)
+{
+ ListWidget *list = new ListWidget(m_pl_manager->playListAt(index), this);
+ list->setMenu(m_pl_menu);
+ m_ui.tabWidget->insertTab(index, list, m_pl_manager->playListAt(index)->name());
+ connect(m_pl_manager->playListAt(index), SIGNAL(nameChanged(QString)), SLOT(updateTabs()));
+ updateTabs();
+}
+
+void MainWindow::removeTab(int index)
+{
+ m_ui.tabWidget->widget(index)->deleteLater();
+ m_ui.tabWidget->removeTab(index);
+ updateTabs();
+}
+
+void MainWindow::renameTab()
+{
+ bool ok = false;
+ QString name = QInputDialog::getText (this,
+ tr("Rename Playlist"), tr("Playlist name:"),
+ QLineEdit::Normal,
+ m_pl_manager->selectedPlayList()->name(), &ok);
+ if(ok)
+ m_pl_manager->selectedPlayList()->setName(name);
+}
+
+void MainWindow::aboutUi()
+{
+ AboutQSUIDialog dialog(this);
+ dialog.exec();
+}
+
+void MainWindow::about()
+{
+ m_uiHelper->about(this);
+}
+
+void MainWindow::toggleVisibility()
+{
+ if(isHidden() || isMinimized())
+ showAndRaise();
+ else
+ hide();
+}
+
+void MainWindow::showAndRaise()
+{
+ show();
+ if(m_wasMaximized)
+ showMaximized();
+ else
+ showNormal();
+ raise();
+ activateWindow();
+}
+
+void MainWindow::showSettings()
+{
+ ConfigDialog *confDialog = new ConfigDialog(this);
+ QSUISettings *simpleSettings = new QSUISettings(this);
+ confDialog->addPage(tr("Appearance"), simpleSettings, QIcon(":/qsui/qsui_settings.png"));
+ confDialog->addPage(tr("Shortcuts"), new HotkeyEditor(this), QIcon(":/qsui/qsui_shortcuts.png"));
+ confDialog->exec();
+ simpleSettings->writeSettings();
+ confDialog->deleteLater();
+ readSettings();
+ ActionManager::instance()->saveActions();
+ m_analyzer->readSettings();
+}
+
+void MainWindow::updateVolumeIcon()
+{
+ int maxVol = m_core->volume();
+
+ QString iconName = "audio-volume-high";
+ if(maxVol == 0 || m_core->isMuted())
+ iconName = "audio-volume-muted";
+ else if(maxVol < 30)
+ iconName = "audio-volume-low";
+ else if(maxVol >= 30 && maxVol < 60)
+ iconName = "audio-volume-medium";
+
+ m_volumeAction->setIcon(QIcon::fromTheme(iconName, QIcon(QString(":/qsui/") + iconName + ".png")));
+}
+
+void MainWindow::jumpTo()
+{
+ m_uiHelper->jumpToTrack(this);
+}
+
+void MainWindow::playPause()
+{
+ if (m_core->state() == Qmmp::Playing)
+ m_core->pause();
+ else
+ m_player->play();
+}
+
+void MainWindow::updateStatus()
+{
+ int tracks = m_pl_manager->currentPlayList()->trackCount();
+ int length = m_pl_manager->currentPlayList()->totalLength();
+
+ if(m_core->state() == Qmmp::Playing || m_core->state() == Qmmp::Paused)
+ {
+ m_statusLabel->setText(tr("<b>%1</b>|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|")
+ .arg(m_core->state() == Qmmp::Playing ? tr("Playing") : tr("Paused"))
+ .arg(m_core->sampleSize())
+ .arg(m_core->channels())
+ .arg(m_core->frequency())
+ .arg(tracks)
+ .arg(MetaDataFormatter::formatLength(length))
+ .arg(m_core->bitrate()));
+ }
+ else if(m_core->state() == Qmmp::Stopped)
+ {
+ m_statusLabel->setText(tr("<b>%1</b>|tracks: %2|total time: %3|")
+ .arg(tr("Stopped"))
+ .arg(tracks)
+ .arg(MetaDataFormatter::formatLength(length)));
+ }
+ else
+ m_statusLabel->clear();
+}
+
+void MainWindow::closeEvent(QCloseEvent *)
+{
+ if(!m_hideOnClose || !m_uiHelper->visibilityControl())
+ m_uiHelper->exit();
+
+}
+
+void MainWindow::hideEvent(QHideEvent *)
+{
+ writeSettings();
+ m_wasMaximized = isMaximized();
+}
+
+void MainWindow::createActions()
+{
+ //preprare cheackable actions
+ ACTION(ActionManager::REPEAT_ALL)->setChecked(m_ui_settings->isRepeatableList());
+ ACTION(ActionManager::REPEAT_TRACK)->setChecked(m_ui_settings->isRepeatableTrack());
+ ACTION(ActionManager::SHUFFLE)->setChecked(m_ui_settings->isShuffle());
+ ACTION(ActionManager::NO_PL_ADVANCE)->setChecked(m_ui_settings->isNoPlayListAdvance());
+
+ connect(m_ui_settings, SIGNAL(repeatableListChanged(bool)),
+ ACTION(ActionManager::REPEAT_ALL), SLOT(setChecked(bool)));
+ connect(m_ui_settings, SIGNAL (repeatableTrackChanged(bool)),
+ ACTION(ActionManager::REPEAT_TRACK), SLOT(setChecked(bool)));
+ connect(m_ui_settings, SIGNAL (noPlayListAdvanceChanged(bool)),
+ ACTION(ActionManager::NO_PL_ADVANCE), SLOT(setChecked(bool)));
+ connect(m_ui_settings, SIGNAL(shuffleChanged(bool)),
+ ACTION(ActionManager::SHUFFLE), SLOT(setChecked(bool)));
+ //register external actions
+ ActionManager::instance()->registerAction(ActionManager::UI_ANALYZER,
+ m_ui.analyzerDockWidget->toggleViewAction(),
+ "analyzer", "");
+ ActionManager::instance()->registerAction(ActionManager::UI_FILEBROWSER,
+ m_ui.fileSystemDockWidget->toggleViewAction(),
+ "file_browser", tr("Ctrl+0"));
+ ActionManager::instance()->registerAction(ActionManager::UI_COVER,
+ m_ui.coverDockWidget->toggleViewAction(),
+ "cover", "");
+ ActionManager::instance()->registerAction(ActionManager::UI_PLAYLISTBROWSER,
+ m_ui.playlistsDockWidget->toggleViewAction(),
+ "playlist_browser", tr("P"));
+ //playback
+ SET_ACTION(ActionManager::PREVIOUS, m_player, SLOT(previous()));
+ SET_ACTION(ActionManager::PLAY, m_player, SLOT(play()));
+ SET_ACTION(ActionManager::PAUSE, m_core, SLOT(pause()));
+ SET_ACTION(ActionManager::STOP, m_player, SLOT(stop()));
+ SET_ACTION(ActionManager::NEXT, m_player, SLOT(next()));
+ SET_ACTION(ActionManager::EJECT,this, SLOT(playFiles()));
+
+ //file menu
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_ADD_FILE, this, SLOT(addFiles())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_ADD_DIRECTORY, this, SLOT(addDir())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_ADD_URL, this, SLOT(addUrl())));
+ m_ui.menuFile->addSeparator();
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_NEW, m_pl_manager, SLOT(createPlayList())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_CLOSE, this, SLOT(removePlaylist())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_RENAME, this, SLOT(renameTab())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_SELECT_NEXT, m_pl_manager,
+ SLOT(selectNextPlayList())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_SELECT_PREVIOUS, m_pl_manager,
+ SLOT(selectPreviousPlayList())));
+ m_ui.menuFile->addSeparator();
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_LOAD, this, SLOT(loadPlayList())));
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::PL_SAVE, this, SLOT(savePlayList())));
+ m_ui.menuFile->addSeparator();
+ m_ui.menuFile->addAction(SET_ACTION(ActionManager::QUIT, m_uiHelper, SLOT(exit())));
+ //edit menu
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_SELECT_ALL, m_pl_manager, SLOT(selectAll())));
+ m_ui.menuEdit->addSeparator();
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_REMOVE_SELECTED, m_pl_manager,
+ SLOT(removeSelected())));
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_REMOVE_UNSELECTED, m_pl_manager,
+ SLOT(removeUnselected())));
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_REMOVE_ALL, m_pl_manager, SLOT(clear())));
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_REMOVE_INVALID, m_pl_manager,
+ SLOT(removeInvalidTracks())));
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_REMOVE_DUPLICATES, m_pl_manager,
+ SLOT(removeDuplicates())));
+ m_ui.menuEdit->addSeparator();
+ //view menu
+ m_ui.menuView->addAction(SET_ACTION(ActionManager::WM_ALLWAYS_ON_TOP, this, SLOT(readSettings())));
+ m_ui.menuView->addSeparator();
+ m_ui.menuView->addAction(m_ui.analyzerDockWidget->toggleViewAction());
+ m_ui.menuView->addAction(m_ui.fileSystemDockWidget->toggleViewAction());
+ m_ui.menuView->addAction(m_ui.coverDockWidget->toggleViewAction());
+ m_ui.menuView->addAction(m_ui.playlistsDockWidget->toggleViewAction());
+ m_ui.menuView->addSeparator();
+ m_ui.menuView->addAction(SET_ACTION(ActionManager::UI_SHOW_TABS, m_ui.tabWidget, SLOT(setTabsVisible(bool))));
+ m_ui.menuView->addAction(SET_ACTION(ActionManager::UI_SHOW_TITLEBARS, this, SLOT(setTitleBarsVisible(bool))));
+ m_ui.menuView->addAction(ACTION(ActionManager::PL_SHOW_HEADER));
+ m_ui.menuView->addSeparator();
+ m_ui.menuView->addAction(SET_ACTION(ActionManager::UI_BLOCK_TOOLBARS, this, SLOT(setToolBarsBlocked(bool))));
+ m_ui.menuView->addAction(tr("Edit Toolbar"), this, SLOT(editToolBar()));
+
+ QMenu* sort_mode_menu = new QMenu (tr("Sort List"), this);
+ sort_mode_menu->setIcon(QIcon::fromTheme("view-sort-ascending"));
+ QSignalMapper* signalMapper = new QSignalMapper (this);
+ QAction* titleAct = sort_mode_menu->addAction (tr ("By Title"));
+ connect (titleAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (titleAct, PlayListModel::TITLE);
+
+ QAction* albumAct = sort_mode_menu->addAction (tr ("By Album"));
+ connect (albumAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (albumAct, PlayListModel::ALBUM);
+
+ QAction* artistAct = sort_mode_menu->addAction (tr ("By Artist"));
+ connect (artistAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (artistAct, PlayListModel::ARTIST);
+
+ QAction* albumArtistAct = sort_mode_menu->addAction (tr ("By Album Artist"));
+ connect (albumArtistAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (albumArtistAct, PlayListModel::ALBUMARTIST);
+
+ QAction* nameAct = sort_mode_menu->addAction (tr ("By Filename"));
+ connect (nameAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (nameAct, PlayListModel::FILENAME);
+
+ QAction* pathnameAct = sort_mode_menu->addAction (tr ("By Path + Filename"));
+ connect (pathnameAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (pathnameAct, PlayListModel::PATH_AND_FILENAME);
+
+ QAction* dateAct = sort_mode_menu->addAction (tr ("By Date"));
+ connect (dateAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (dateAct, PlayListModel::DATE);
+
+ QAction* trackAct = sort_mode_menu->addAction (tr("By Track Number"));
+ connect (trackAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (trackAct, PlayListModel::TRACK);
+
+ QAction* discAct = sort_mode_menu->addAction (tr("By Disc Number"));
+ connect (discAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (discAct, PlayListModel::DISCNUMBER);
+
+ QAction* fileCreationDateAct = sort_mode_menu->addAction (tr("By File Creation Date"));
+ connect (fileCreationDateAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (fileCreationDateAct, PlayListModel::FILE_CREATION_DATE);
+
+ QAction* fileModificationDateAct = sort_mode_menu->addAction (tr("By File Modification Date"));
+ connect (fileModificationDateAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (fileModificationDateAct, PlayListModel::FILE_MODIFICATION_DATE);
+
+ QAction* groupAct = sort_mode_menu->addAction (tr("By Group"));
+ connect (groupAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (groupAct, PlayListModel::GROUP);
+
+ connect (signalMapper, SIGNAL (mapped (int)), m_pl_manager, SLOT (sort (int)));
+
+ m_ui.menuEdit->addMenu (sort_mode_menu);
+
+ sort_mode_menu = new QMenu (tr("Sort Selection"), this);
+ sort_mode_menu->setIcon(QIcon::fromTheme("view-sort-ascending"));
+ signalMapper = new QSignalMapper (this);
+ titleAct = sort_mode_menu->addAction (tr ("By Title"));
+ connect (titleAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (titleAct, PlayListModel::TITLE);
+
+ albumAct = sort_mode_menu->addAction (tr ("By Album"));
+ connect (albumAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (albumAct, PlayListModel::ALBUM);
+
+ artistAct = sort_mode_menu->addAction (tr ("By Artist"));
+ connect (artistAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (artistAct, PlayListModel::ARTIST);
+
+ albumArtistAct = sort_mode_menu->addAction (tr ("By Album Artist"));
+ connect (albumArtistAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (albumArtistAct, PlayListModel::ALBUMARTIST);
+
+ nameAct = sort_mode_menu->addAction (tr ("By Filename"));
+ connect (nameAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (nameAct, PlayListModel::FILENAME);
+
+ pathnameAct = sort_mode_menu->addAction (tr ("By Path + Filename"));
+ connect (pathnameAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (pathnameAct, PlayListModel::PATH_AND_FILENAME);
+
+ dateAct = sort_mode_menu->addAction (tr ("By Date"));
+ connect (dateAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (dateAct, PlayListModel::DATE);
+
+ trackAct = sort_mode_menu->addAction (tr ("By Track Number"));
+ connect (trackAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (trackAct, PlayListModel::TRACK);
+
+ discAct = sort_mode_menu->addAction (tr("By Disc Number"));
+ connect (discAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (discAct, PlayListModel::DISCNUMBER);
+
+ fileCreationDateAct = sort_mode_menu->addAction (tr("By File Creation Date"));
+ connect (fileCreationDateAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (fileCreationDateAct, PlayListModel::FILE_CREATION_DATE);
+
+ fileModificationDateAct = sort_mode_menu->addAction (tr("By File Modification Date"));
+ connect (fileModificationDateAct, SIGNAL (triggered (bool)), signalMapper, SLOT (map()));
+ signalMapper->setMapping (fileModificationDateAct, PlayListModel::FILE_MODIFICATION_DATE);
+
+ connect (signalMapper, SIGNAL (mapped (int)), m_pl_manager, SLOT (sortSelection (int)));
+ m_ui.menuEdit->addMenu (sort_mode_menu);
+ m_ui.menuEdit->addSeparator();
+ m_ui.menuEdit->addAction (QIcon::fromTheme("media-playlist-shuffle"), tr("Randomize List"),
+ m_pl_manager, SLOT(randomizeList()));
+ m_ui.menuEdit->addAction (QIcon::fromTheme("view-sort-descending"), tr("Reverse List"),
+ m_pl_manager, SLOT(reverseList()));
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::PL_GROUP_TRACKS, m_ui_settings, SLOT(setGroupsEnabled(bool))));
+ ACTION(ActionManager::PL_GROUP_TRACKS)->setChecked(m_ui_settings->isGroupsEnabled());
+ m_ui.menuEdit->addSeparator();
+ m_ui.menuEdit->addAction(SET_ACTION(ActionManager::SETTINGS, this, SLOT(showSettings())));
+ //tools
+ m_ui.menuTools->addMenu(m_uiHelper->createMenu(UiHelper::TOOLS_MENU, tr("Actions"), this));
+ //playback menu
+ m_ui.menuPlayback->addAction(ACTION(ActionManager::PLAY));
+ m_ui.menuPlayback->addAction(ACTION(ActionManager::STOP));
+ m_ui.menuPlayback->addAction(ACTION(ActionManager::PAUSE));
+ m_ui.menuPlayback->addAction(ACTION(ActionManager::NEXT));
+ m_ui.menuPlayback->addAction(ACTION(ActionManager::PREVIOUS));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::PLAY_PAUSE,this,SLOT(playPause())));
+ m_ui.menuPlayback->addSeparator();
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::JUMP, this, SLOT(jumpTo())));
+ m_ui.menuPlayback->addSeparator();
+ m_ui.menuPlayback->addAction(ACTION(ActionManager::PL_ENQUEUE));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::CLEAR_QUEUE, m_pl_manager, SLOT(clearQueue())));
+ m_ui.menuPlayback->addSeparator();
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::REPEAT_ALL, m_ui_settings,
+ SLOT(setRepeatableList(bool))));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::REPEAT_TRACK, m_ui_settings,
+ SLOT(setRepeatableTrack(bool))));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::SHUFFLE, m_ui_settings,
+ SLOT(setShuffle(bool))));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::NO_PL_ADVANCE, m_ui_settings,
+ SLOT(setNoPlayListAdvance(bool))));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::STOP_AFTER_SELECTED, m_pl_manager,
+ SLOT(stopAfterSelected())));
+ m_ui.menuPlayback->addSeparator();
+ signalMapper = new QSignalMapper(this);
+ signalMapper->setMapping(ACTION(ActionManager::VOL_ENC), 5);
+ signalMapper->setMapping(ACTION(ActionManager::VOL_DEC), -5);
+ connect(signalMapper, SIGNAL(mapped(int)), m_core, SLOT(changeVolume(int)));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::VOL_ENC, signalMapper, SLOT(map())));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::VOL_DEC, signalMapper, SLOT(map())));
+ m_ui.menuPlayback->addAction(SET_ACTION(ActionManager::VOL_MUTE, m_core, SLOT(setMuted(bool))));
+ connect(m_core, SIGNAL(mutedChanged(bool)), ACTION(ActionManager::VOL_MUTE), SLOT(setChecked(bool)));
+
+ //help menu
+ m_ui.menuHelp->addAction(SET_ACTION(ActionManager::ABOUT_UI, this, SLOT(aboutUi())));
+ m_ui.menuHelp->addAction(SET_ACTION(ActionManager::ABOUT, this, SLOT(about())));
+ m_ui.menuHelp->addAction(SET_ACTION(ActionManager::ABOUT_QT, qApp, SLOT(aboutQt())));
+ //playlist menu
+ m_pl_menu->addAction(SET_ACTION(ActionManager::PL_SHOW_INFO, m_pl_manager, SLOT(showDetails())));
+ m_pl_menu->addSeparator();
+ m_pl_menu->addAction(ACTION(ActionManager::PL_REMOVE_SELECTED));
+ m_pl_menu->addAction(ACTION(ActionManager::PL_REMOVE_ALL));
+ m_pl_menu->addAction(ACTION(ActionManager::PL_REMOVE_UNSELECTED));
+ m_pl_menu->addMenu(UiHelper::instance()->createMenu(UiHelper::PLAYLIST_MENU,
+ tr("Actions"), this));
+ m_pl_menu->addSeparator();
+ m_pl_menu->addAction(SET_ACTION(ActionManager::PL_ENQUEUE, m_pl_manager, SLOT(addToQueue())));
+ //tools menu
+ m_ui.menuTools->addAction(SET_ACTION(ActionManager::EQUALIZER, this, SLOT(showEqualizer())));
+
+ //tab menu
+ m_tab_menu->addAction(ACTION(ActionManager::PL_LOAD));
+ m_tab_menu->addAction(ACTION(ActionManager::PL_SAVE));
+ m_tab_menu->addSeparator();
+ m_tab_menu->addAction(ACTION(ActionManager::PL_RENAME));
+ m_tab_menu->addAction(ACTION(ActionManager::PL_CLOSE));
+ //seeking
+ QAction* forward = new QAction(this);
+ forward->setShortcut(QKeySequence(Qt::Key_Right));
+ connect(forward,SIGNAL(triggered(bool)),this,SLOT(forward()));
+ QAction* backward = new QAction(this);
+ backward->setShortcut(QKeySequence(Qt::Key_Left));
+ connect(backward,SIGNAL(triggered(bool)),this,SLOT(backward()));
+
+ addActions(QList<QAction*>() << forward << backward);
+ addActions(ActionManager::instance()->actions());
+ addActions(m_key_manager->actions());
+}
+
+void MainWindow::createButtons()
+{
+ //'new playlist' button
+ m_addListButton = new QToolButton(m_ui.tabWidget);
+ m_addListButton->setText("+");
+ m_addListButton->setToolButtonStyle(Qt::ToolButtonIconOnly);
+ m_addListButton->setAutoRaise(true);
+ m_addListButton->setIcon(QIcon::fromTheme("list-add"));
+ m_addListButton->setToolTip(tr("Add new playlist"));
+ connect(m_addListButton, SIGNAL(clicked()), m_pl_manager, SLOT(createPlayList()));
+ //playlist menu button
+ m_tabListMenuButton = new QToolButton(m_ui.tabWidget);
+ m_tabListMenuButton->setToolButtonStyle(Qt::ToolButtonIconOnly);
+ m_tabListMenuButton->setAutoRaise(true);
+ m_tabListMenuButton->setToolTip(tr("Show all tabs"));
+ m_tabListMenuButton->setArrowType(Qt::DownArrow);
+ m_tabListMenuButton->setStyleSheet("QToolButton::menu-indicator { image: none; }");
+ m_tabListMenuButton->setPopupMode(QToolButton::InstantPopup);
+ m_tabListMenuButton->setMenu(m_ui.tabWidget->menu());
+}
+
+void MainWindow::readSettings()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ m_titleFormatter.setPattern(settings.value("window_title_format","%if(%p,%p - %t,%t)").toString());
+ if(m_update)
+ {
+ for(int i = 0; i < m_ui.tabWidget->count(); ++i)
+ {
+ qobject_cast<ListWidget *>(m_ui.tabWidget->widget(i))->readSettings();
+ }
+ qobject_cast<FileSystemBrowser *> (m_ui.fileSystemDockWidget->widget())->readSettings();
+
+ if(ACTION(ActionManager::WM_ALLWAYS_ON_TOP)->isChecked())
+ setWindowFlags(windowFlags() | Qt::WindowStaysOnTopHint);
+ else
+ setWindowFlags(windowFlags() & ~Qt::WindowStaysOnTopHint);
+
+ if(m_core->state() == Qmmp::Playing || m_core->state() == Qmmp::Paused)
+ showMetaData();
+
+ m_ui.tabWidget->readSettings();
+
+ show();
+ }
+ else
+ {
+ restoreGeometry(settings.value("mw_geometry").toByteArray());
+ QByteArray wstate = settings.value("mw_state").toByteArray();
+ if(wstate.isEmpty())
+ {
+ m_ui.fileSystemDockWidget->hide();
+ m_ui.coverDockWidget->hide();
+ m_ui.playlistsDockWidget->hide();
+ }
+ else
+ restoreState(settings.value("mw_state").toByteArray());
+ if(settings.value("always_on_top", false).toBool())
+ {
+ ACTION(ActionManager::WM_ALLWAYS_ON_TOP)->setChecked(true);
+ setWindowFlags(windowFlags() | Qt::WindowStaysOnTopHint);
+ }
+ show();
+ qApp->processEvents();
+ if(settings.value("start_hidden").toBool())
+ hide();
+
+ bool state = settings.value("show_titlebars", true).toBool();
+ ACTION(ActionManager::UI_SHOW_TITLEBARS)->setChecked(state);
+ setTitleBarsVisible(state);
+
+ state = settings.value("show_tabs", true).toBool();
+ ACTION(ActionManager::UI_SHOW_TABS)->setChecked(state);
+ m_ui.tabWidget->setTabsVisible(state);
+
+ state = settings.value("block_toolbars", false).toBool();
+ ACTION(ActionManager::UI_BLOCK_TOOLBARS)->setChecked(state);
+ setToolBarsBlocked(state);
+
+ m_update = true;
+ }
+ //load toolbar actions
+ m_ui.buttonsToolBar->clear();
+ QStringList names = ActionManager::instance()->toolBarActionNames();
+ names = settings.value("toolbar_actions", names).toStringList();
+ foreach (QString name, names)
+ {
+ if(name == "separator")
+ {
+ m_ui.buttonsToolBar->addSeparator();
+ continue;
+ }
+ QAction *action = ActionManager::instance()->findChild<QAction *>(name);
+ if(action)
+ m_ui.buttonsToolBar->addAction(action);
+ }
+
+ m_hideOnClose = settings.value("hide_on_close", false).toBool();
+ m_ui.tabWidget->setTabsClosable(settings.value("pl_tabs_closable", false).toBool());
+
+ if(settings.value("pl_show_new_pl_button", false).toBool())
+ {
+ m_ui.tabWidget->setCornerWidget(m_addListButton, Qt::TopLeftCorner);
+ m_addListButton->setIconSize(QSize(16, 16));
+ m_addListButton->setVisible(true);
+ }
+ else
+ {
+ m_addListButton->setVisible(false);
+ m_ui.tabWidget->setCornerWidget(0, Qt::TopLeftCorner);
+ }
+ if(settings.value("pl_show_tab_list_menu", false).toBool())
+ {
+ m_ui.tabWidget->setCornerWidget(m_tabListMenuButton, Qt::TopRightCorner);
+ m_tabListMenuButton->setIconSize(QSize(16, 16));
+ m_tabListMenuButton->setVisible(true);
+ }
+ else
+ {
+ m_tabListMenuButton->setVisible(false);
+ m_ui.tabWidget->setCornerWidget(0, Qt::TopRightCorner);
+ }
+ settings.endGroup();
+ addActions(m_uiHelper->actions(UiHelper::TOOLS_MENU));
+ addActions(m_uiHelper->actions(UiHelper::PLAYLIST_MENU));
+}
+
+void MainWindow::showTabMenu(QPoint pos)
+{
+ QTabBar *tabBar = qobject_cast<QTabBar *> (m_ui.tabWidget->childAt(pos));
+ if(!tabBar)
+ return;
+
+ int index = tabBar->tabAt(pos);
+ if(index == -1)
+ return;
+
+ m_pl_manager->selectPlayList(index);
+ m_tab_menu->popup(m_ui.tabWidget->mapToGlobal(pos));
+}
+
+void MainWindow::writeSettings()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.setValue("Simple/mw_geometry", saveGeometry());
+ settings.setValue("Simple/mw_state", saveState());
+ settings.setValue("Simple/always_on_top", ACTION(ActionManager::WM_ALLWAYS_ON_TOP)->isChecked());
+ settings.setValue("Simple/show_analyzer", ACTION(ActionManager::UI_ANALYZER)->isChecked());
+ settings.setValue("Simple/show_tabs", ACTION(ActionManager::UI_SHOW_TABS)->isChecked());
+ settings.setValue("Simple/show_titlebars", ACTION(ActionManager::UI_SHOW_TITLEBARS)->isChecked());
+ settings.setValue("Simple/block_toolbars", ACTION(ActionManager::UI_BLOCK_TOOLBARS)->isChecked());
+}
+
+void MainWindow::savePlayList()
+{
+ m_uiHelper->savePlayList(this);
+}
+
+void MainWindow::loadPlayList()
+{
+ m_uiHelper->loadPlayList(this);
+}
+
+void MainWindow::showBuffering(int percent)
+{
+ if(m_core->state() == Qmmp::Buffering)
+ m_statusLabel->setText(tr("Buffering: %1%").arg(percent));
+}
+
+void MainWindow::showEqualizer()
+{
+ Equalizer equalizer(this);
+ equalizer.exec();
+}
+
+void MainWindow::forward()
+{
+ m_core->seek(m_core->elapsed() + KEY_OFFSET);
+}
+
+void MainWindow::backward()
+{
+ m_core->seek(qMax(qint64(0), m_core->elapsed() - KEY_OFFSET));
+}
+
+void MainWindow::showMetaData()
+{
+ PlayListModel *model = m_pl_manager->currentPlayList();
+ PlayListTrack *track = model->currentTrack();
+ if(track && track->url() == m_core->metaData().value(Qmmp::URL))
+ {
+ setWindowTitle(m_titleFormatter.format(track));
+ }
+}
+
+void MainWindow::setTitleBarsVisible(bool visible)
+{
+ if(visible)
+ {
+ QWidget *widget = 0;
+ if((widget = m_ui.analyzerDockWidget->titleBarWidget()))
+ {
+ m_ui.analyzerDockWidget->setTitleBarWidget(0);
+ delete widget;
+ }
+ if((widget = m_ui.fileSystemDockWidget->titleBarWidget()))
+ {
+ m_ui.fileSystemDockWidget->setTitleBarWidget(0);
+ delete widget;
+ }
+ if((widget = m_ui.coverDockWidget->titleBarWidget()))
+ {
+ m_ui.coverDockWidget->setTitleBarWidget(0);
+ delete widget;
+ }
+ if((widget = m_ui.playlistsDockWidget->titleBarWidget()))
+ {
+ m_ui.playlistsDockWidget->setTitleBarWidget(0);
+ delete widget;
+ }
+ }
+ else
+ {
+ if(!m_ui.analyzerDockWidget->titleBarWidget())
+ m_ui.analyzerDockWidget->setTitleBarWidget(new QWidget());
+
+ if(!m_ui.fileSystemDockWidget->titleBarWidget())
+ m_ui.fileSystemDockWidget->setTitleBarWidget(new QWidget());
+
+ if(!m_ui.coverDockWidget->titleBarWidget())
+ m_ui.coverDockWidget->setTitleBarWidget(new QWidget());
+
+ if(!m_ui.playlistsDockWidget->titleBarWidget())
+ m_ui.playlistsDockWidget->setTitleBarWidget(new QWidget());
+ }
+}
+
+void MainWindow::setToolBarsBlocked(bool blocked)
+{
+ m_ui.buttonsToolBar->setMovable(!blocked);
+ m_ui.progressToolBar->setMovable(!blocked);
+}
+
+void MainWindow::editToolBar()
+{
+ ToolBarEditor *e = new ToolBarEditor(this);
+ if(e->exec() == QDialog::Accepted)
+ {
+ readSettings();
+ }
+ e->deleteLater();
+}
diff --git a/src/plugins/Ui/qsui/mainwindow.h b/src/plugins/Ui/qsui/mainwindow.h
new file mode 100644
index 000000000..a151ec9c2
--- /dev/null
+++ b/src/plugins/Ui/qsui/mainwindow.h
@@ -0,0 +1,123 @@
+/***************************************************************************
+ * Copyright (C) 2009-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef MAINWINDOW_H
+#define MAINWINDOW_H
+
+#include <QMainWindow>
+#include <qmmp/qmmp.h>
+#include <qmmpui/mediaplayer.h>
+#include "ui_mainwindow.h"
+
+class QSlider;
+class QLabel;
+class QMenu;
+class QToolButton;
+class UiHelper;
+class PlayListModel;
+class MediaPlayer;
+class SoundCore;
+class QmmpUiSettings;
+class PlayListManager;
+class GeneralHandler;
+class VisualMenu;
+class PositionSlider;
+class KeyboardManager;
+class QSUiAnalyzer;
+
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class MainWindow : public QMainWindow
+{
+Q_OBJECT
+public:
+ MainWindow(QWidget *parent = 0);
+ ~MainWindow();
+
+private slots:
+ void addDir();
+ void addFiles();
+ void playFiles();
+ void addUrl();
+ void updatePosition(qint64 pos);
+ void seek();
+ void showState(Qmmp::State);
+ void updateStatus();
+ void updateTabs();
+ void removePlaylist();
+ void removePlaylistWithIndex(int);
+ void addTab(int);
+ void removeTab(int);
+ void renameTab();
+ void aboutUi();
+ void about();
+ void toggleVisibility();
+ void showAndRaise();
+ void showSettings();
+ void updateVolumeIcon();
+ void jumpTo();
+ void playPause();
+ void readSettings();
+ void showTabMenu(QPoint pos);
+ void savePlayList();
+ void loadPlayList();
+ void showBuffering(int percent);
+ void showEqualizer();
+ void forward();
+ void backward();
+ void showMetaData();
+ void setTitleBarsVisible(bool visible);
+ void setToolBarsBlocked(bool blocked);
+ void editToolBar();
+
+private:
+ void closeEvent(QCloseEvent *);
+ void hideEvent(QHideEvent *);
+ bool m_wasMaximized;
+ void createActions();
+ void createButtons();
+ void writeSettings();
+ QString m_lastDir;
+ PlayListManager *m_pl_manager;
+ Ui::MainWindow m_ui;
+ MediaPlayer *m_player;
+ QmmpUiSettings *m_ui_settings;
+ PositionSlider *m_slider;
+ QLabel *m_timeLabel;
+ SoundCore *m_core;
+ QLabel *m_statusLabel;
+ VisualMenu *m_visMenu;
+ UiHelper *m_uiHelper;
+ QMenu *m_pl_menu;
+ QMenu *m_tab_menu;
+ QSlider *m_volumeSlider;
+ QAction *m_volumeAction;
+ KeyboardManager *m_key_manager;
+ QSUiAnalyzer *m_analyzer;
+ QToolButton *m_addListButton, *m_tabListMenuButton;
+ MetaDataFormatter m_titleFormatter;
+ int m_balance;
+ bool m_update;
+ bool m_hideOnClose;
+
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/playlistbrowser.cpp b/src/plugins/Ui/qsui/playlistbrowser.cpp
new file mode 100644
index 000000000..447b723a9
--- /dev/null
+++ b/src/plugins/Ui/qsui/playlistbrowser.cpp
@@ -0,0 +1,156 @@
+/***************************************************************************
+ * Copyright (C) 2009-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QAction>
+#include <QApplication>
+#include <QStyle>
+#include <QKeyEvent>
+#include <QStandardItemModel>
+#include <QSortFilterProxyModel>
+#include <QListView>
+#include <QLineEdit>
+#include <QVBoxLayout>
+#include <qmmpui/playlistmanager.h>
+#include "actionmanager.h"
+#include "playlistbrowser.h"
+
+PlayListBrowser::PlayListBrowser(PlayListManager *manager, QWidget *parent) : QWidget(parent)
+{
+ m_lineEdit = new QLineEdit(this);
+ m_lineEdit->installEventFilter(this);
+ m_lineEdit->setContentsMargins(5,5,5,0);
+ m_listView = new QListView(this);
+ m_listView->setFrameStyle(QFrame::NoFrame);
+ m_listView->setEditTriggers(QAbstractItemView::NoEditTriggers);
+ m_listView->installEventFilter(this);
+
+ QVBoxLayout *layout = new QVBoxLayout();
+ layout->setContentsMargins(0,0,0,0);
+ layout->addWidget(m_lineEdit);
+ layout->addWidget(m_listView);
+ setLayout(layout);
+
+ m_pl_manager = manager;
+ connect(m_pl_manager, SIGNAL(playListsChanged()), SLOT(updateList()));
+ //actions
+ m_listView->setContextMenuPolicy(Qt::ActionsContextMenu);
+ m_listView->addAction(ACTION(ActionManager::PL_RENAME));
+ m_listView->addAction(ACTION(ActionManager::PL_CLOSE));
+
+ m_listModel = new QStandardItemModel(this);
+ m_proxyModel = new QSortFilterProxyModel(this);
+ m_proxyModel->setDynamicSortFilter(true);
+ m_proxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
+ m_proxyModel->setSourceModel(m_listModel);
+ m_listView->setModel(m_proxyModel);
+ connect(m_lineEdit, SIGNAL(textChanged(QString)), SLOT(onLineEditTextChanged(QString)));
+ connect(m_listView, SIGNAL(activated(QModelIndex)), SLOT(onListViewActivated(QModelIndex)));
+ connect(m_listView->selectionModel(), SIGNAL(currentRowChanged(QModelIndex,QModelIndex)),
+ SLOT(updateCurrentRow(QModelIndex,QModelIndex)));
+ updateList();
+}
+
+PlayListBrowser::~PlayListBrowser()
+{}
+
+void PlayListBrowser::updateList()
+{
+ m_listView->selectionModel()->blockSignals(true);
+ m_listModel->clear();
+ foreach(PlayListModel *model, m_pl_manager->playLists())
+ {
+ QStandardItem *item = new QStandardItem(model->name());
+ if(m_pl_manager->currentPlayList() == model)
+ {
+ QFont font = item->font();
+ font.setBold(true);
+ item->setFont(font);
+ }
+ m_listModel->appendRow(item);
+ if(m_pl_manager->selectedPlayList() == model)
+ {
+ m_listView->setCurrentIndex(m_proxyModel->mapFromSource(m_listModel->indexFromItem(item)));
+ }
+ }
+ m_listView->selectionModel()->blockSignals(false);
+}
+
+void PlayListBrowser::onLineEditTextChanged(const QString &str)
+{
+ m_listView->selectionModel()->blockSignals(true);
+ m_proxyModel->setFilterFixedString(str);
+ m_listView->selectionModel()->blockSignals(false);
+}
+
+void PlayListBrowser::onListViewActivated(const QModelIndex &index)
+{
+ int row = m_proxyModel->mapToSource(index).row();
+ if(row >= 0)
+ {
+ m_pl_manager->activatePlayList(row);
+ m_pl_manager->selectPlayList(row);
+ }
+}
+
+void PlayListBrowser::updateCurrentRow(QModelIndex index, QModelIndex)
+{
+ int row = m_proxyModel->mapToSource(index).row();
+ if(row >= 0)
+ m_pl_manager->selectPlayList(row);
+}
+
+bool PlayListBrowser::eventFilter(QObject *o, QEvent *e)
+{
+ if((o == m_lineEdit || o == m_listView) && e->type() == QEvent::ShortcutOverride)
+ {
+ e->accept();
+ return false;
+ }
+
+ if(o == m_lineEdit && e->type() == QEvent::KeyPress)
+ {
+ QKeyEvent *key_event = static_cast<QKeyEvent *>(e);
+ QModelIndex index = m_listView->currentIndex();
+ bool select_first = false;
+ if(!index.isValid() && m_proxyModel->rowCount())
+ {
+ select_first = true;
+ index = m_proxyModel->index(0,0);
+ }
+
+ if(key_event->key() == Qt::Key_Up)
+ {
+ if(!select_first)
+ index = m_proxyModel->index(index.row() - 1, index.column());
+ if(index.isValid())
+ m_listView->setCurrentIndex(index);
+ return true;
+ }
+ else if(key_event->key() == Qt::Key_Down)
+ {
+ if(!select_first)
+ index = m_proxyModel->index(index.row() + 1, index.column());
+ if(index.isValid())
+ m_listView->setCurrentIndex(index);
+ return true;
+ }
+ }
+ return QWidget::eventFilter(o, e);
+}
diff --git a/src/plugins/Ui/qsui/playlistbrowser.h b/src/plugins/Ui/qsui/playlistbrowser.h
new file mode 100644
index 000000000..0130fa506
--- /dev/null
+++ b/src/plugins/Ui/qsui/playlistbrowser.h
@@ -0,0 +1,59 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef PLAYLISTBROWSER_H
+#define PLAYLISTBROWSER_H
+
+#include <QWidget>
+#include <QModelIndex>
+
+class PlayListManager;
+class QStandardItemModel;
+class QSortFilterProxyModel;
+class QStandardItem;
+class QListView;
+class QLineEdit;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class PlayListBrowser : public QWidget
+{
+Q_OBJECT
+public:
+ PlayListBrowser(PlayListManager *manager, QWidget *parent = 0);
+ ~PlayListBrowser();
+
+private slots:
+ void updateList();
+ void onLineEditTextChanged(const QString &str);
+ void onListViewActivated(const QModelIndex &index);
+ void updateCurrentRow(QModelIndex index, QModelIndex);
+
+private:
+ bool eventFilter(QObject *o, QEvent *e);
+ QLineEdit *m_lineEdit;
+ QListView *m_listView;
+ PlayListManager *m_pl_manager;
+ QStandardItemModel* m_listModel;
+ QSortFilterProxyModel* m_proxyModel;
+};
+
+#endif // PLAYLISTBROWSER_H
diff --git a/src/plugins/Ui/qsui/playlistheader.cpp b/src/plugins/Ui/qsui/playlistheader.cpp
new file mode 100644
index 000000000..a2bd5a1e5
--- /dev/null
+++ b/src/plugins/Ui/qsui/playlistheader.cpp
@@ -0,0 +1,768 @@
+/***************************************************************************
+ * Copyright (C) 2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QPainter>
+#include <QBitmap>
+#include <QFont>
+#include <QFontMetrics>
+#include <QSettings>
+#include <QApplication>
+#include <QMouseEvent>
+#include <QContextMenuEvent>
+#include <QMenu>
+#include <QLineEdit>
+#include <QInputDialog>
+#include <QIcon>
+#include <QStyleOptionHeader>
+#include <qmmp/qmmp.h>
+#include <qmmpui/playlistmanager.h>
+#include <qmmpui/playlistheadermodel.h>
+#include <qmmpui/playlistmanager.h>
+#include "playlistheader.h"
+
+#define INITAL_SIZE 150
+#define MIN_SIZE 30
+#define MAX_COLUMNS 7
+
+PlayListHeader::PlayListHeader(QWidget *parent) :
+ QWidget(parent)
+{
+ setMouseTracking(true);
+
+ m_pl_padding = 0;
+ m_number_width = 0;
+ m_offset = 0;
+ m_sorting_column = -1;
+ m_scrollbar_width = 0;
+ m_reverted = false;
+ m_auto_resize = false;
+ m_metrics = 0;
+ m_task = NO_TASK;
+
+ m_model = PlayListManager::instance()->headerModel();
+ m_menu = new QMenu(this);
+ m_menu->addAction(QIcon::fromTheme("list-add"), tr("Add Column"), this, SLOT(addColumn()));
+ m_menu->addAction(QIcon::fromTheme("configure"), tr("Edit Column"), this, SLOT(editColumn()));
+ m_trackStateAction = m_menu->addAction(tr("Show Queue/Protocol"), this, SLOT(showTrackState(bool)));
+ m_trackStateAction->setCheckable(true);
+ m_autoResizeAction = m_menu->addAction(tr("Auto-resize"), this, SLOT(setAutoResize(bool)));
+ m_autoResizeAction->setCheckable(true);
+ m_menu->addSeparator();
+ m_menu->addAction(QIcon::fromTheme("list-remove"), tr("Remove Column"), this, SLOT(removeColumn()));
+
+ readSettings();
+
+ connect(m_model, SIGNAL(columnAdded(int)), SLOT(onColumnAdded(int)));
+ connect(m_model, SIGNAL(columnRemoved(int)), SLOT(onColumnRemoved()));
+ connect(m_model, SIGNAL(columnMoved(int,int)), SLOT(updateColumns()));
+ connect(m_model, SIGNAL(columnChanged(int)), SLOT(updateColumns()));
+}
+
+PlayListHeader::~PlayListHeader()
+{
+ if (m_metrics)
+ delete m_metrics;
+ m_metrics = 0;
+}
+
+void PlayListHeader::readSettings()
+{
+ if (m_metrics)
+ {
+ delete m_metrics;
+ m_metrics = 0;
+ }
+
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+
+ QFont header_font = qApp->font("QAbstractItemView");
+ if(!settings.value("use_system_fonts", true).toBool())
+ {
+ header_font.fromString(settings.value("pl_header_font", header_font.toString()).toString());
+ }
+ m_metrics = new QFontMetrics(header_font);
+ setFont(header_font);
+
+ QStyleOptionHeader opt;
+ opt.initFrom(this);
+ m_size_hint = style()->sizeFromContents(QStyle::CT_HeaderSection, &opt, QSize(), this);
+
+ QFont pl_font;
+ pl_font.fromString(settings.value("pl_font", qApp->font().toString()).toString());
+ m_pl_padding = QFontMetrics(pl_font).width("9")/2;
+
+ if(!m_model->isSettingsLoaded()) //do not load settings several times
+ {
+ m_model->restoreSettings(&settings);
+ QList<QVariant> sizes = settings.value("pl_column_sizes").toList();
+ int autoResizeColumn = settings.value("pl_autoresize_column", -1).toInt();
+ int trackStateColumn = settings.value("pl_track_state_column", -1).toInt();
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ m_model->setData(i, SIZE, INITAL_SIZE);
+
+ if(i < sizes.count())
+ m_model->setData(i, SIZE, sizes.at(i).toInt());
+ if(i == autoResizeColumn)
+ {
+ m_model->setData(i, AUTO_RESIZE, true);
+ m_auto_resize = true;
+ }
+ if(i == trackStateColumn)
+ m_model->setData(i,TRACK_STATE, true);
+ }
+ }
+ else
+ {
+ m_auto_resize = autoResizeColumn() >= 0;
+ }
+
+ if(isVisible())
+ updateColumns();
+
+ settings.endGroup();
+}
+
+void PlayListHeader::setNumberWidth(int width)
+{
+ if(width != m_number_width)
+ {
+ m_number_width = width;
+ if(m_model->count() == 1)
+ updateColumns();
+ }
+}
+
+void PlayListHeader::setScrollBarWidth(int width)
+{
+ if(!isVisible())
+ return;
+
+ if(m_scrollbar_width != width)
+ {
+ m_scrollbar_width = width;
+
+ if(m_model->count() == 1)
+ {
+ updateColumns();
+ return;
+ }
+
+ int index = autoResizeColumn();
+ if(index >= 0)
+ {
+ adjustColumn(index);
+ updateColumns();
+ return;
+ }
+ }
+}
+
+void PlayListHeader::updateColumns()
+{
+ if(!isVisible())
+ return;
+
+ bool rtl = (layoutDirection() == Qt::RightToLeft);
+
+ int sx = 5;
+
+ if(m_model->count() == 1)
+ {
+ if(m_number_width)
+ sx += m_number_width + 2 * m_pl_padding;
+ m_model->setData(0, RECT, rtl ? QRect(5 + m_scrollbar_width, 0, width() - sx - 5 - m_scrollbar_width, height()) :
+ QRect(sx, 0, width() - sx - 5 - m_scrollbar_width, height()));
+ m_model->setData(0, NAME, m_model->name(0));
+ update();
+ return;
+ }
+
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ int size = m_model->data(i, SIZE).toInt();
+
+ if(rtl)
+ m_model->setData(i, RECT, QRect(width() - sx - size, 0, size, height()));
+ else
+ m_model->setData(i, RECT, QRect(sx, 0, size, height()));
+ m_model->setData(i, NAME, m_model->name(i));
+ sx += size;
+ }
+ update();
+}
+
+int PlayListHeader::requiredHeight() const
+{
+ return m_size_hint.height();
+}
+
+QList<int> PlayListHeader::sizes() const
+{
+ QList<int> sizeList;
+ for(int i = 0; i < m_model->count(); ++i)
+ sizeList.append(m_model->data(i, SIZE).toInt());
+ return sizeList;
+}
+
+int PlayListHeader::trackStateColumn() const
+{
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ if(m_model->data(i, TRACK_STATE).toBool())
+ {
+ return i;
+ }
+ }
+ return -1;
+}
+
+int PlayListHeader::maxScrollValue() const
+{
+ if(m_model->count() == 1)
+ return 0;
+
+ int row_width = 0;
+ foreach (int size, sizes())
+ {
+ row_width += size;
+ }
+ return qMax(0, row_width - width() + m_scrollbar_width + 10);
+}
+
+int PlayListHeader::offset() const
+{
+ return m_offset;
+}
+
+bool PlayListHeader::hasAutoResizeColumn() const
+{
+ return m_auto_resize;
+}
+
+void PlayListHeader::scroll(int offset)
+{
+ m_offset = offset;
+ update();
+}
+
+void PlayListHeader::showSortIndicator(int column, bool reverted)
+{
+ if(m_sorting_column == column && m_reverted == reverted)
+ return;
+
+ m_sorting_column = column;
+ m_reverted = reverted;
+ updateColumns();
+}
+
+void PlayListHeader::hideSortIndicator()
+{
+ if(m_sorting_column != -1)
+ {
+ m_sorting_column = -1;
+ updateColumns();
+ }
+}
+
+void PlayListHeader::addColumn()
+{
+ int column = findColumn(m_pressed_pos);
+
+ if(column < 0)
+ {
+ QRect firstRect = m_model->data(0, RECT).toRect();
+ QRect lastRect = m_model->data(m_model->count() - 1, RECT).toRect();
+
+ if(m_pressed_pos.x() > lastRect.right())
+ column = m_model->count();
+ else if(m_pressed_pos.x() < firstRect.x())
+ column = 0;
+ }
+
+ if(column < 0)
+ return;
+
+ m_model->execInsert(column);
+}
+
+void PlayListHeader::editColumn()
+{
+ if(m_pressed_column < 0)
+ return;
+
+ m_model->execEdit(m_pressed_column);
+}
+
+void PlayListHeader::removeColumn()
+{
+ if(m_pressed_column < 0)
+ return;
+
+ m_model->remove(m_pressed_column);
+}
+
+void PlayListHeader::setAutoResize(bool on)
+{
+ if(m_pressed_column < 0)
+ return;
+
+ m_auto_resize = on;
+
+ if(on)
+ {
+ for(int i = 0; i < m_model->count(); ++i)
+ m_model->setData(i, AUTO_RESIZE, false);
+ }
+
+ m_model->setData(m_pressed_column, AUTO_RESIZE, on);
+
+ if(on)
+ {
+ m_offset = 0;
+ adjustColumn(m_pressed_column);
+ updateColumns();
+ }
+ PlayListManager::instance()->selectedPlayList()->updateMetaData();
+}
+
+void PlayListHeader::showTrackState(bool yes)
+{
+ if(m_pressed_column < 0)
+ return;
+
+ if(yes)
+ {
+ for(int i = 0; i < m_model->count(); ++i)
+ m_model->setData(i, TRACK_STATE, false);
+ }
+
+ m_model->setData(m_pressed_column, TRACK_STATE, yes);
+ PlayListManager::instance()->selectedPlayList()->updateMetaData();
+}
+
+void PlayListHeader::onColumnAdded(int index)
+{
+ m_model->setData(index, SIZE, INITAL_SIZE);
+ if(m_auto_resize && isVisible())
+ {
+ adjustColumn(autoResizeColumn());
+ }
+ updateColumns();
+}
+
+void PlayListHeader::onColumnRemoved()
+{
+ m_auto_resize = autoResizeColumn() >= 0;
+ if(m_auto_resize && isVisible())
+ {
+ adjustColumn(autoResizeColumn());
+ }
+ updateColumns();
+}
+
+void PlayListHeader::mousePressEvent(QMouseEvent *e)
+{
+ bool rtl = layoutDirection() == Qt::RightToLeft;
+
+ if(e->button() == Qt::LeftButton)
+ {
+ m_pressed_column = findColumn(e->pos());
+ if(m_pressed_column >= 0)
+ {
+ m_pressed_pos = e->pos();
+ m_mouse_pos = e->pos();
+ m_pressed_pos.rx() += m_offset;
+ m_mouse_pos.rx() += m_offset;
+
+ if(rtl)
+ {
+ if(e->pos().x() < m_model->data(m_pressed_column, RECT).toRect().x() + m_metrics->width("9"))
+ {
+ m_old_size = size(m_pressed_column);
+ m_task = RESIZE;
+ }
+ else
+ {
+ m_press_offset = e->pos().x() - m_model->data(m_pressed_column, RECT).toRect().x();
+ m_task = SORT;
+ }
+ }
+ else
+ {
+ if(e->pos().x() > m_model->data(m_pressed_column, RECT).toRect().right() - m_metrics->width("9"))
+ {
+ m_old_size = size(m_pressed_column);
+ m_task = RESIZE;
+ }
+ else
+ {
+ m_press_offset = e->pos().x() - m_model->data(m_pressed_column, RECT).toRect().x();
+ m_task = SORT;
+ }
+ }
+ }
+ else
+ {
+ m_task = NO_TASK;
+ update();
+ }
+ }
+}
+
+void PlayListHeader::mouseReleaseEvent(QMouseEvent *)
+{
+ if(m_task == SORT)
+ PlayListManager::instance()->selectedPlayList()->sortByColumn(m_pressed_column);
+
+ m_task = NO_TASK;
+ update();
+}
+
+void PlayListHeader::mouseMoveEvent(QMouseEvent *e)
+{
+ bool rtl = layoutDirection() == Qt::RightToLeft;
+
+ if(m_task == SORT)
+ {
+ m_task = MOVE;
+ }
+
+ int x = e->pos().x() + m_offset;
+
+ if(m_task == RESIZE && m_model->count() > 1)
+ {
+ int index = autoResizeColumn();
+
+ if(index == -1 || m_pressed_column < m_model->count() - 1)
+ {
+ if(rtl)
+ setSize(m_pressed_column, m_old_size - x + m_pressed_pos.x());
+ else
+ setSize(m_pressed_column, m_old_size + x - m_pressed_pos.x());
+ setSize(m_pressed_column, qMax(size(m_pressed_column), MIN_SIZE));
+ }
+
+ if(m_pressed_column < index)
+ {
+ adjustColumn(index);
+ }
+ else if(index != -1 && m_pressed_column < m_model->count() - 1)
+ {
+ adjustColumn(m_pressed_column + 1);
+ }
+ m_offset = qMin(m_offset, maxScrollValue());
+ updateColumns();
+ PlayListManager::instance()->selectedPlayList()->updateMetaData();
+ }
+ else if(m_task == MOVE)
+ {
+ m_mouse_pos = e->pos();
+ m_mouse_pos.rx() += m_offset;
+
+ int dest = -1;
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ QRect rect = m_model->data(i, RECT).toRect();
+ int x_delta = m_mouse_pos.x() - rect.x();
+ if(x_delta < 0 || x_delta > rect.width())
+ continue;
+
+ if(rtl)
+ {
+ if((x_delta > rect.width()/2 && m_pressed_column > i) ||
+ (x_delta < rect.width()/2 && m_pressed_column < i))
+ {
+ dest = i;
+ break;
+ }
+ }
+ else
+ {
+ if((x_delta > rect.width()/2 && m_pressed_column < i) ||
+ (x_delta < rect.width()/2 && m_pressed_column > i))
+ {
+ dest = i;
+ break;
+ }
+ }
+ }
+ if(dest == -1 || dest == m_pressed_column)
+ {
+ update();
+ QWidget::mouseMoveEvent(e);
+ return;
+ }
+ m_model->move(m_pressed_column, dest);
+ m_pressed_column = dest;
+ update();
+ }
+ else if(e->button() == Qt::NoButton && m_model->count() > 1)
+ {
+ int column = findColumn(e->pos());
+
+ if(!m_auto_resize || column < m_model->count() - 1)
+ {
+ if(rtl)
+ {
+ if(column >= 0 && x < m_model->data(column, RECT).toRect().x() + m_metrics->width("9"))
+ setCursor(Qt::SplitHCursor);
+ else
+ setCursor(Qt::ArrowCursor);
+ }
+ else
+ {
+ if(column >= 0 && x > m_model->data(column, RECT).toRect().right() - m_metrics->width("9"))
+ setCursor(Qt::SplitHCursor);
+ else
+ setCursor(Qt::ArrowCursor);
+ }
+ }
+ else
+ {
+ setCursor(Qt::ArrowCursor);
+ }
+ }
+}
+
+void PlayListHeader::resizeEvent(QResizeEvent *e)
+{
+ if(m_model->count() == 1)
+ {
+ updateColumns();
+ return;
+ }
+
+ if(!isVisible())
+ return;
+
+ if(m_auto_resize)
+ {
+ adjustColumn(autoResizeColumn());
+ m_offset = qMin(m_offset, maxScrollValue());
+ updateColumns();
+ return;
+ }
+
+ if(m_offset > maxScrollValue())
+ {
+ m_offset = maxScrollValue();
+ updateColumns();
+ return;
+ }
+
+
+ if(layoutDirection() == Qt::RightToLeft || e->oldSize().height() != e->size().height())
+ {
+ updateColumns();
+ return;
+ }
+}
+
+void PlayListHeader::contextMenuEvent(QContextMenuEvent *e)
+{
+ m_pressed_pos = e->pos();
+ m_pressed_column = findColumn(e->pos());
+ if(m_pressed_column >= 0)
+ {
+ m_trackStateAction->setChecked(m_model->data(m_pressed_column, TRACK_STATE).toBool());
+ m_autoResizeAction->setChecked(m_model->data(m_pressed_column, AUTO_RESIZE).toBool());
+
+ //hide unused actions
+ foreach (QAction *action, m_menu->actions())
+ {
+ if(m_menu->actions().at(0) == action)
+ action->setVisible(m_model->count() < MAX_COLUMNS);
+ else if(m_menu->actions().at(1) == action)
+ action->setVisible(true);
+ else
+ action->setVisible(m_model->count() != 1); //multicolumn mode
+ }
+
+ }
+ else
+ {
+ foreach (QAction *action, m_menu->actions())
+ {
+ if(action == m_menu->actions().first())
+ action->setVisible(m_model->count() < MAX_COLUMNS);
+ else
+ action->setVisible(false);
+ }
+ }
+ m_menu->exec(e->globalPos());
+}
+
+void PlayListHeader::paintEvent(QPaintEvent *)
+{
+ bool rtl = (layoutDirection() == Qt::RightToLeft);
+
+ QPainter painter(this);
+ painter.translate(rtl ? m_offset : -m_offset, 0);
+
+ {
+ QStyleOption opt;
+ opt.initFrom(this);
+ opt.state |= QStyle::State_Horizontal;
+ opt.rect = QRect(0,0,m_model->data(0, RECT).toRect().x(), height());
+ style()->drawControl(QStyle::CE_HeaderEmptyArea, &opt, &painter, this);
+ opt.rect = QRect(m_model->data(m_model->count() - 1, RECT).toRect().right(), 0,
+ width() - m_model->data(m_model->count() - 1, RECT).toRect().right(), height());
+ style()->drawControl(QStyle::CE_HeaderEmptyArea, &opt, &painter, this);
+ }
+
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ QStyleOptionHeader opt;
+ initStyleOption(&opt);
+ opt.rect = m_model->data(i, RECT).toRect();
+ opt.text = name(i);
+ opt.section = i;
+ opt.state |= QStyle::State_Active;
+ if(i == 0)
+ opt.position = QStyleOptionHeader::Beginning;
+ else if(i < m_model->count() - 1)
+ opt.position = QStyleOptionHeader::Middle;
+ else if(i == m_model->count() - 1)
+ opt.position = QStyleOptionHeader::End;
+
+ if(i == m_sorting_column)
+ opt.sortIndicator = m_reverted ? QStyleOptionHeader::SortUp : QStyleOptionHeader::SortDown;
+
+ style()->drawControl(QStyle::CE_Header, &opt, &painter, this);
+ }
+
+ if(m_model->count() == 1)
+ return;
+
+ if(m_task == MOVE)
+ {
+ QStyleOptionHeader opt;
+ initStyleOption(&opt);
+ opt.rect = m_model->data(m_pressed_column, RECT).toRect();
+ opt.text = name(m_pressed_column);
+ opt.section = m_pressed_column;
+ painter.setOpacity(0.75);
+ opt.rect.moveTo(m_mouse_pos.x() - m_press_offset, opt.rect.y());
+ style()->drawControl(QStyle::CE_Header, &opt, &painter, this);
+ }
+}
+
+int PlayListHeader::findColumn(QPoint pos)
+{
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ if(m_model->data(i,RECT).toRect().contains(pos))
+ return i;
+ }
+ return -1;
+}
+
+int PlayListHeader::size(int index) const
+{
+ return m_model->data(index, SIZE).toInt();
+}
+
+void PlayListHeader::setSize(int index, int size)
+{
+ m_model->setData(index, SIZE, size);
+}
+
+const QString PlayListHeader::name(int index) const
+{
+ return m_model->data(index, NAME).toString();
+}
+
+void PlayListHeader::adjustColumn(int index)
+{
+ int w = 0;
+
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ if(i != index)
+ w += size(i);
+ }
+
+ setSize(index, qMax(width() - 10 - m_scrollbar_width - w, MIN_SIZE));
+}
+
+int PlayListHeader::autoResizeColumn() const
+{
+ int index = -1;
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ if(m_model->data(i, AUTO_RESIZE).toBool())
+ {
+ index = i;
+ break;
+ }
+ }
+ return index;
+}
+
+void PlayListHeader::writeSettings()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ m_model->saveSettings(&settings);
+ QList<QVariant> sizes;
+ int autoResizeColumn = -1;
+ int trackStateColumn = -1;
+ for(int i = 0; i < m_model->count(); ++i)
+ {
+ sizes << m_model->data(i, SIZE).toInt();
+ if(m_model->data(i, AUTO_RESIZE).toBool())
+ autoResizeColumn = i;
+ if(m_model->data(i, TRACK_STATE).toBool())
+ trackStateColumn = i;
+ }
+ settings.setValue("pl_column_sizes", sizes);
+ settings.setValue("pl_autoresize_column", autoResizeColumn);
+ settings.setValue("pl_track_state_column", trackStateColumn);
+ settings.endGroup();
+}
+
+void PlayListHeader::showEvent(QShowEvent *)
+{
+ if(m_auto_resize)
+ {
+ adjustColumn(autoResizeColumn());
+ m_offset = qMin(m_offset, maxScrollValue());
+ updateColumns();
+ PlayListManager::instance()->selectedPlayList()->updateMetaData();
+ }
+ else
+ updateColumns();
+}
+
+void PlayListHeader::hideEvent(QHideEvent *)
+{
+ writeSettings();
+}
+
+void PlayListHeader::initStyleOption(QStyleOptionHeader *opt)
+{
+ opt->initFrom(this);
+ opt->state = QStyle::State_None | QStyle::State_Raised | QStyle::State_Horizontal | QStyle::State_Enabled;
+ opt->orientation = Qt::Horizontal;
+ opt->iconAlignment = Qt::AlignVCenter;
+ opt->textAlignment = Qt::AlignLeft | Qt::AlignVCenter;
+}
diff --git a/src/plugins/Ui/qsui/playlistheader.h b/src/plugins/Ui/qsui/playlistheader.h
new file mode 100644
index 000000000..d9836e7d8
--- /dev/null
+++ b/src/plugins/Ui/qsui/playlistheader.h
@@ -0,0 +1,129 @@
+/***************************************************************************
+ * Copyright (C) 2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef PLAYLISTHEADER_H
+#define PLAYLISTHEADER_H
+
+#include <QWidget>
+#include <QPixmap>
+
+class QFontMetrics;
+class QFont;
+class QMouseEvent;
+class QContextMenuEvent;
+class QMenu;
+class QAction;
+class QStyleOptionHeader;
+class PlayListHeaderModel;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class PlayListHeader : public QWidget
+{
+ Q_OBJECT
+public:
+ explicit PlayListHeader(QWidget *parent = 0);
+ ~PlayListHeader();
+
+ void readSettings();
+ void setNumberWidth(int width);
+ void setScrollBarWidth(int width);
+ int requiredHeight() const;
+ QList<int> sizes() const;
+ int trackStateColumn() const;
+ int maxScrollValue() const;
+ int offset() const;
+ bool hasAutoResizeColumn() const;
+
+public slots:
+ void scroll(int offset);
+ void updateColumns();
+ void showSortIndicator(int column, bool reverted);
+ void hideSortIndicator();
+
+private slots:
+ void addColumn();
+ void editColumn();
+ void removeColumn();
+ void setAutoResize(bool on);
+ void showTrackState(bool yes);
+ void onColumnAdded(int index);
+ void onColumnRemoved();
+
+private:
+ void mousePressEvent(QMouseEvent *e);
+ void mouseReleaseEvent(QMouseEvent *);
+ void mouseMoveEvent(QMouseEvent *e);
+ void resizeEvent(QResizeEvent *e);
+ void contextMenuEvent(QContextMenuEvent *e);
+ void paintEvent(QPaintEvent *);
+ int findColumn(QPoint pos);
+ void initStyleOption(QStyleOptionHeader *opt);
+ int size(int index) const;
+ void setSize(int index, int size);
+ const QString name(int index) const;
+ void adjustColumn(int index);
+ int autoResizeColumn() const;
+ void writeSettings();
+ void showEvent(QShowEvent *);
+ void hideEvent(QHideEvent *);
+
+ enum DataKey
+ {
+ NAME = 0,
+ SIZE,
+ RECT, //geometry
+ AUTO_RESIZE,
+ TRACK_STATE
+ };
+
+ QSize m_size_hint;
+ QFontMetrics *m_metrics;
+ QMenu *m_menu;
+ QPoint m_pressed_pos;
+ QPoint m_mouse_pos;
+ PlayListHeaderModel *m_model;
+ QAction *m_trackStateAction;
+ QAction *m_autoResizeAction;
+ bool m_reverted;
+ bool m_auto_resize;
+ int m_number_width;
+ int m_scrollbar_width;
+ int m_pressed_column;
+ int m_old_size;
+ int m_press_offset;
+ int m_pl_padding;
+ int m_sorting_column;
+
+ int m_offset;
+
+ enum
+ {
+ NO_TASK = -1,
+ RESIZE,
+ MOVE,
+ SORT
+ } m_task;
+
+
+};
+
+#endif // PLAYLISTHEADER_H
diff --git a/src/plugins/Ui/qsui/popupsettings.cpp b/src/plugins/Ui/qsui/popupsettings.cpp
new file mode 100644
index 000000000..3c57cc0ee
--- /dev/null
+++ b/src/plugins/Ui/qsui/popupsettings.cpp
@@ -0,0 +1,89 @@
+/***************************************************************************
+ * Copyright (C) 2009-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QSettings>
+#include <QMenu>
+#include <qmmp/qmmp.h>
+#include "popupwidget.h"
+#include "popupsettings.h"
+
+PopupSettings::PopupSettings(QWidget *parent)
+ : QDialog(parent)
+{
+ m_ui.setupUi(this);
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ m_ui.transparencySlider->setValue(100 - settings.value("popup_opacity", 1.0).toDouble()*100);
+ m_ui.coverSizeSlider->setValue(settings.value ("popup_cover_size", 48).toInt());
+ m_ui.textEdit->setPlainText(settings.value ("popup_template", DEFAULT_TEMPLATE).toString());
+ m_ui.delaySpinBox->setValue(settings.value("popup_delay", 2500).toInt());
+ m_ui.coverCheckBox->setChecked(settings.value("popup_show_cover",true).toBool());
+ settings.endGroup();
+ createMenu();
+}
+
+
+PopupSettings::~PopupSettings()
+{}
+
+void PopupSettings::accept()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ settings.setValue("popup_opacity", 1.0 - (double)m_ui.transparencySlider->value()/100);
+ settings.setValue("popup_cover_size", m_ui.coverSizeSlider->value());
+ settings.setValue("popup_template", m_ui.textEdit->toPlainText());
+ settings.setValue("popup_delay", m_ui.delaySpinBox->value());
+ settings.setValue("popup_show_cover", m_ui.coverCheckBox->isChecked());
+ settings.endGroup();
+ QDialog::accept();
+}
+
+void PopupSettings::createMenu()
+{
+ QMenu *menu = new QMenu(this);
+ menu->addAction(tr("Artist"))->setData("%p");
+ menu->addAction(tr("Album"))->setData("%a");
+ menu->addAction(tr("Album Artist"))->setData("%aa");
+ menu->addAction(tr("Title"))->setData("%t");
+ menu->addAction(tr("Track Number"))->setData("%n");
+ menu->addAction(tr("Two-digit Track Number"))->setData("%NN");
+ menu->addAction(tr("Genre"))->setData("%g");
+ menu->addAction(tr("Comment"))->setData("%c");
+ menu->addAction(tr("Composer"))->setData("%C");
+ menu->addAction(tr("Duration"))->setData("%l");
+ menu->addAction(tr("Disc Number"))->setData("%D");
+ menu->addAction(tr("File Name"))->setData("%f");
+ menu->addAction(tr("File Path"))->setData("%F");
+ menu->addAction(tr("Year"))->setData("%y");
+ menu->addAction(tr("Condition"))->setData("%if(%p&%t,%p - %t,%f)");
+ m_ui.insertButton->setMenu(menu);
+ connect(menu, SIGNAL(triggered (QAction *)), SLOT(insertExpression(QAction *)));
+}
+
+void PopupSettings::insertExpression(QAction *a)
+{
+ m_ui.textEdit->insertPlainText(a->data().toString());
+}
+
+void PopupSettings::on_resetButton_clicked()
+{
+ m_ui.textEdit->setPlainText(DEFAULT_TEMPLATE);
+}
diff --git a/src/plugins/Ui/qsui/popupsettings.h b/src/plugins/Ui/qsui/popupsettings.h
new file mode 100644
index 000000000..6c5b7f545
--- /dev/null
+++ b/src/plugins/Ui/qsui/popupsettings.h
@@ -0,0 +1,52 @@
+/***************************************************************************
+ * Copyright (C) 2009-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef SETTINGSDIALOG_H
+#define SETTINGSDIALOG_H
+
+#include <QDialog>
+#include "ui_popupsettings.h"
+
+class Action;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class PopupSettings : public QDialog
+{
+Q_OBJECT
+public:
+ PopupSettings(QWidget *parent = 0);
+ ~PopupSettings();
+
+
+public slots:
+ virtual void accept();
+
+private slots:
+ void insertExpression(QAction *);
+ void on_resetButton_clicked();
+
+private:
+ void createMenu();
+ Ui::PopupSettings m_ui;
+ QMap<uint, QPushButton*> m_buttons;
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/popupwidget.cpp b/src/plugins/Ui/qsui/popupwidget.cpp
new file mode 100644
index 000000000..357d6bbaa
--- /dev/null
+++ b/src/plugins/Ui/qsui/popupwidget.cpp
@@ -0,0 +1,132 @@
+/***************************************************************************
+ * Copyright (C) 2008-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QVBoxLayout>
+#include <QLabel>
+#include <QApplication>
+#include <QDesktopWidget>
+#include <QTimer>
+#include <QSettings>
+#include <QApplication>
+#include <qmmp/soundcore.h>
+#include <qmmp/metadatamanager.h>
+#include <qmmpui/playlistitem.h>
+
+#include "popupwidget.h"
+
+using namespace PlayListPopup;
+
+PopupWidget::PopupWidget(QWidget *parent)
+ : QWidget(parent)
+{
+ setWindowFlags(Qt::X11BypassWindowManagerHint | Qt::Dialog | Qt::FramelessWindowHint);
+ //setFrameStyle(QFrame::Box | QFrame::Plain);
+ setAttribute(Qt::WA_QuitOnClose, false);
+ QHBoxLayout *hlayout = new QHBoxLayout(this); //layout
+ m_pixlabel = new QLabel(this);
+ hlayout->addWidget(m_pixlabel);
+
+ m_label1 = new QLabel(this);
+ hlayout->addWidget (m_label1);
+
+ //settings
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ setWindowOpacity(settings.value("popup_opacity", 1.0).toDouble());
+ m_coverSize = settings.value("popup_cover_size", 48).toInt();
+ m_formatter.setPattern(settings.value("popup_template",DEFAULT_TEMPLATE).toString());
+ int delay = settings.value("popup_delay", 2500).toInt();
+ bool show_cover = settings.value("popup_show_cover",true).toBool();
+ settings.endGroup();
+ //timer
+ m_timer = new QTimer(this);
+ m_timer->setInterval(delay);
+ m_timer->setSingleShot (true);
+ connect(m_timer, SIGNAL(timeout ()), SLOT(show()));
+ if(show_cover)
+ connect(m_timer, SIGNAL(timeout ()), SLOT(loadCover()));
+ else
+ m_pixlabel->hide();
+ setMouseTracking(true);
+}
+
+PopupWidget::~PopupWidget()
+{}
+
+void PopupWidget::mousePressEvent (QMouseEvent *)
+{
+ hide();
+}
+
+void PopupWidget::mouseMoveEvent (QMouseEvent *)
+{
+ hide();
+}
+
+void PopupWidget::prepare(PlayListTrack *track, QPoint pos)
+{
+ pos += QPoint(15,10);
+
+ m_url = track->url();
+ hide();
+ if(!track)
+ {
+ m_timer->stop();
+ return;
+ }
+
+ m_label1->setText(m_formatter.format(track));
+ qApp->processEvents();
+ updateGeometry ();
+ resize(sizeHint());
+ qApp->processEvents();
+ m_timer->start();
+ QRect rect = QApplication::desktop()->availableGeometry(this);
+ if(pos.x() + width() > rect.x() + rect.width())
+ pos.rx() -= width();
+ move(pos);
+}
+
+void PopupWidget::deactivate()
+{
+ m_timer->stop();
+ m_url.clear();
+ hide();
+}
+
+const QString PopupWidget::url() const
+{
+ return m_url;
+}
+
+void PopupWidget::loadCover()
+{
+ if(m_url.isEmpty())
+ return;
+ QPixmap pix = MetaDataManager::instance()->getCover(m_url);
+ if(pix.isNull())
+ pix = QPixmap(":/qsui/ui_no_cover.png");
+ m_pixlabel->setFixedSize(m_coverSize,m_coverSize);
+ m_pixlabel->setPixmap(pix.scaled(m_coverSize,m_coverSize, Qt::IgnoreAspectRatio, Qt::SmoothTransformation));
+ qApp->processEvents();
+ updateGeometry ();
+ resize(sizeHint());
+ qApp->processEvents();
+}
diff --git a/src/plugins/Ui/qsui/popupwidget.h b/src/plugins/Ui/qsui/popupwidget.h
new file mode 100644
index 000000000..ef8c52480
--- /dev/null
+++ b/src/plugins/Ui/qsui/popupwidget.h
@@ -0,0 +1,68 @@
+/***************************************************************************
+ * Copyright (C) 2008-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef POPUPWIDGET_H
+#define POPUPWIDGET_H
+
+#include <QWidget>
+#include <qmmpui/metadataformatter.h>
+
+#define DEFAULT_TEMPLATE "<b>%if(%t,%t,%f)</b>\n%if(%p,<br>%p,)\n%if(%a,<br>%a,)"
+
+class QTimer;
+class QLabel;
+class PlayListTrack;
+
+namespace PlayListPopup {
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class PopupWidget : public QWidget
+{
+ Q_OBJECT
+public:
+ PopupWidget(QWidget *parent = 0);
+
+ ~PopupWidget();
+
+ void prepare(PlayListTrack *track, QPoint pos);
+ void deactivate();
+ const QString url() const;
+
+protected:
+ virtual void mousePressEvent (QMouseEvent *);
+ virtual void mouseMoveEvent (QMouseEvent *);
+
+private slots:
+ void loadCover();
+
+private:
+ QTimer *m_timer;
+ QLabel *m_label1;
+ QLabel *m_pixlabel;
+ QString m_template;
+ uint m_pos;
+ int m_coverSize;
+ QString m_url;
+ MetaDataFormatter m_formatter;
+
+};
+}
+
+#endif
diff --git a/src/plugins/Ui/qsui/positionslider.cpp b/src/plugins/Ui/qsui/positionslider.cpp
new file mode 100644
index 000000000..b2da16a2d
--- /dev/null
+++ b/src/plugins/Ui/qsui/positionslider.cpp
@@ -0,0 +1,67 @@
+/***************************************************************************
+ * Copyright (C) 2011-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QMouseEvent>
+#include <QWheelEvent>
+#include <QStyleOptionSlider>
+#include <QStyle>
+#include "positionslider.h"
+
+PositionSlider::PositionSlider(QWidget *parent) : QSlider(Qt::Horizontal, parent)
+{}
+
+void PositionSlider::mousePressEvent (QMouseEvent *event)
+{
+ QStyleOptionSlider opt;
+ initStyleOption(&opt);
+ QRect sr = style()->subControlRect(QStyle::CC_Slider, &opt, QStyle::SC_SliderHandle, this);
+
+ if (event->button() == Qt::LeftButton &&
+ sr.contains(event->pos()) == false)
+ {
+ int val;
+ if (orientation() == Qt::Vertical)
+ val = minimum() + ((maximum() - minimum()) * (height() - event->y())) / height();
+ else if(layoutDirection() == Qt::RightToLeft)
+ val = maximum() - ((maximum() - minimum()) * event->x()) / width();
+ else
+ val = minimum() + ((maximum() - minimum()) * event->x()) / width();
+
+ if (invertedAppearance() == true)
+ setValue(maximum() - val);
+ else
+ setValue(val);
+
+ setSliderDown (true);
+ event->accept();
+ }
+ QSlider::mousePressEvent(event);
+}
+
+void PositionSlider::mouseReleaseEvent (QMouseEvent *)
+{
+ setSliderDown (false);
+}
+
+void PositionSlider::wheelEvent(QWheelEvent *event)
+{
+ setValue(value() + event->delta() / 20);
+ sliderReleased();
+}
diff --git a/src/plugins/Ui/qsui/positionslider.h b/src/plugins/Ui/qsui/positionslider.h
new file mode 100644
index 000000000..00d66d7d3
--- /dev/null
+++ b/src/plugins/Ui/qsui/positionslider.h
@@ -0,0 +1,47 @@
+/***************************************************************************
+ * Copyright (C) 2011-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef POSITIONSLIDER_H
+#define POSITIONSLIDER_H
+
+#include <QSlider>
+
+class QWheelEvent;
+class QMouseEvent;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class PositionSlider : public QSlider
+{
+ Q_OBJECT
+public:
+ explicit PositionSlider(QWidget *parent = 0);
+ virtual ~PositionSlider(){}
+
+
+protected:
+ virtual void mousePressEvent (QMouseEvent *event);
+ virtual void mouseReleaseEvent (QMouseEvent *event);
+ virtual void wheelEvent(QWheelEvent *event);
+
+};
+
+#endif // POSITIONSLIDER_H
diff --git a/src/plugins/Ui/qsui/qsui.pro b/src/plugins/Ui/qsui/qsui.pro
new file mode 100644
index 000000000..457e11d8d
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsui.pro
@@ -0,0 +1,117 @@
+include(../../plugins.pri)
+
+TARGET = $$PLUGINS_PREFIX/Ui/qsui
+
+CONFIG += warn_on \
+ plugin \
+ link_pkgconfig
+
+TEMPLATE = lib
+
+QT += network
+
+SOURCES += \
+ mainwindow.cpp \
+ listwidget.cpp \
+ visualmenu.cpp \
+ positionslider.cpp \
+ actionmanager.cpp \
+ shortcutdialog.cpp \
+ shortcutitem.cpp \
+ popupsettings.cpp \
+ popupwidget.cpp \
+ equalizer.cpp \
+ logo.cpp \
+ keyboardmanager.cpp \
+ aboutqsuidialog.cpp \
+ qsuifactory.cpp \
+ qsuisettings.cpp \
+ qsuianalyzer.cpp \
+ fft.c \
+ colorwidget.cpp \
+ qsuitabwidget.cpp \
+ qsuitabbar.cpp \
+ eqpreset.cpp \
+ filesystembrowser.cpp \
+ elidinglabel.cpp \
+ coverwidget.cpp \
+ playlistbrowser.cpp \
+ toolbareditor.cpp \
+ listwidgetdrawer.cpp \
+ playlistheader.cpp \
+ hotkeyeditor.cpp
+HEADERS += mainwindow.h \
+ listwidget.h \
+ visualmenu.h \
+ positionslider.h \
+ actionmanager.h \
+ shortcutdialog.h \
+ shortcutitem.h \
+ popupsettings.h \
+ popupwidget.h \
+ equalizer.h \
+ logo.h \
+ keyboardmanager.h \
+ aboutqsuidialog.h \
+ qsuifactory.h \
+ qsuisettings.h \
+ qsuianalyzer.h \
+ fft.h \
+ inlines.h \
+ colorwidget.h \
+ qsuitabwidget.h \
+ qsuitabbar.h \
+ eqpreset.h \
+ filesystembrowser.h \
+ elidinglabel.h \
+ coverwidget.h \
+ playlistbrowser.h \
+ toolbareditor.h \
+ listwidgetdrawer.h \
+ playlistheader.h \
+ hotkeyeditor.h
+TEMPLATE = lib
+
+FORMS += forms/mainwindow.ui \
+ forms/shortcutdialog.ui \
+ forms/popupsettings.ui \
+ forms/aboutqsuidialog.ui \
+ forms/qsuisettings.ui \
+ forms/toolbareditor.ui \
+ forms/hotkeyeditor.ui
+RESOURCES += translations/translations.qrc resources/qsui_resources.qrc txt/qsui_txt.qrc
+
+contains(CONFIG, SVN_VERSION){
+ DEFINES += QMMP_PLUGIN_PACK_VERSION=\\\"$$QMMP_PLUGIN_PACK_VERSION-dev\\\"
+}
+else{
+ DEFINES += QMMP_PLUGIN_PACK_VERSION=\\\"$$QMMP_PLUGIN_PACK_VERSION\\\"
+}
+
+unix {
+ isEmpty(LIB_DIR):LIB_DIR = /lib
+ target.path = $$LIB_DIR/qmmp/Ui
+ INSTALLS += target
+
+ PKGCONFIG += qmmp qmmpui
+ QMAKE_CLEAN = $$PLUGINS_PREFIX/Ui/libqsui.so
+}
+
+win32 {
+ INCLUDEPATH += ../../ ./
+ QMAKE_LIBDIR += ../../../../bin
+ LIBS += -lqmmp0 -lqmmpui0
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/plugins/Ui/qsui/qsuianalyzer.cpp b/src/plugins/Ui/qsui/qsuianalyzer.cpp
new file mode 100644
index 000000000..3df0b7935
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuianalyzer.cpp
@@ -0,0 +1,404 @@
+/***************************************************************************
+ * Copyright (C) 2012-2014 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#include <QTimer>
+#include <QSettings>
+#include <QPainter>
+#include <QMenu>
+#include <QActionGroup>
+#include <QLabel>
+#include <qmmp/qmmp.h>
+#include <qmmp/buffer.h>
+#include <math.h>
+#include <stdlib.h>
+#include "fft.h"
+#include "inlines.h"
+#include "qsuianalyzer.h"
+
+#define VISUAL_NODE_SIZE 512 //samples
+#define VISUAL_BUFFER_SIZE (5*VISUAL_NODE_SIZE)
+
+QSUiAnalyzer::QSUiAnalyzer (QWidget *parent) : Visual (parent)
+{
+ m_intern_vis_data = 0;
+ m_peaks = 0;
+ m_x_scale = 0;
+ m_buffer_at = 0;
+ m_rows = 0;
+ m_cols = 0;
+ m_offset = 0;
+ m_update = false;
+ m_show_cover = false;
+ m_pixLabel = new QLabel(this);
+ createMenu();
+
+ m_timer = new QTimer (this);
+ connect(m_timer, SIGNAL (timeout()), this, SLOT (timeout()));
+ m_left_buffer = new short[VISUAL_BUFFER_SIZE];
+ m_right_buffer = new short[VISUAL_BUFFER_SIZE];
+
+ readSettings();
+ clear();
+}
+
+QSUiAnalyzer::~QSUiAnalyzer()
+{
+ delete [] m_left_buffer;
+ delete [] m_right_buffer;
+
+ if(m_peaks)
+ delete [] m_peaks;
+ if(m_intern_vis_data)
+ delete [] m_intern_vis_data;
+ if(m_x_scale)
+ delete [] m_x_scale;
+}
+
+void QSUiAnalyzer::clear()
+{
+ m_buffer_at = 0;
+ m_rows = 0;
+ m_cols = 0;
+ update();
+}
+
+void QSUiAnalyzer::clearCover()
+{
+ m_cover = QPixmap();
+ updateCover();
+ update();
+}
+
+QSize QSUiAnalyzer::sizeHint() const
+{
+ return QSize(200, 100);
+}
+
+void QSUiAnalyzer::add (unsigned char *data, qint64 size, int chan)
+{
+ if (!m_timer->isActive ())
+ return;
+
+ if(VISUAL_BUFFER_SIZE == m_buffer_at)
+ {
+ m_buffer_at -= VISUAL_NODE_SIZE;
+ memmove(m_left_buffer, m_left_buffer + VISUAL_NODE_SIZE, m_buffer_at << 1);
+ memmove(m_right_buffer, m_right_buffer + VISUAL_NODE_SIZE, m_buffer_at << 1);
+ return;
+ }
+
+ int frames = qMin((int)size/chan >> 1, VISUAL_BUFFER_SIZE - m_buffer_at);
+
+ if (chan >= 2)
+ {
+ stereo16_from_multichannel(m_left_buffer + m_buffer_at,
+ m_right_buffer + m_buffer_at,(short *) data, frames, chan);
+ }
+ else
+ {
+ memcpy(m_left_buffer + m_buffer_at, (short *) data, frames << 1);
+ memcpy(m_right_buffer + m_buffer_at, (short *) data, frames << 1);
+ }
+
+ m_buffer_at += frames;
+}
+
+void QSUiAnalyzer::setCover(const QPixmap &pixmap)
+{
+ m_cover = pixmap;
+ updateCover();
+}
+
+void QSUiAnalyzer::timeout()
+{
+ mutex()->lock();
+ if(m_buffer_at < VISUAL_NODE_SIZE)
+ {
+ mutex()->unlock ();
+ return;
+ }
+
+ process (m_left_buffer, m_right_buffer);
+ m_buffer_at -= VISUAL_NODE_SIZE;
+ memmove(m_left_buffer, m_left_buffer + VISUAL_NODE_SIZE, m_buffer_at << 1);
+ memmove(m_right_buffer, m_right_buffer + VISUAL_NODE_SIZE, m_buffer_at << 1);
+ mutex()->unlock ();
+ update();
+}
+
+void QSUiAnalyzer::paintEvent (QPaintEvent * e)
+{
+ QPainter painter (this);
+ painter.fillRect(e->rect(),m_bgColor);
+ draw(&painter);
+}
+
+void QSUiAnalyzer::hideEvent (QHideEvent *)
+{
+ m_timer->stop();
+}
+
+void QSUiAnalyzer::showEvent (QShowEvent *)
+{
+ m_timer->start();
+}
+
+void QSUiAnalyzer::resizeEvent(QResizeEvent *)
+{
+ updateCover();
+}
+
+void QSUiAnalyzer::process (short *left, short *right)
+{
+ int rows = qMax((height() - 2) / m_cell_size.height(),2);
+ int cols = qMax((width() - m_offset - 2) / m_cell_size.width(),1);
+
+ if(m_rows != rows || m_cols != cols)
+ {
+ m_rows = rows;
+ m_cols = cols;
+ if(m_peaks)
+ delete [] m_peaks;
+ if(m_intern_vis_data)
+ delete [] m_intern_vis_data;
+ if(m_x_scale)
+ delete [] m_x_scale;
+ m_peaks = new double[m_cols];
+ m_intern_vis_data = new double[m_cols];
+ m_x_scale = new int[m_cols + 1];
+
+ for(int i = 0; i < m_cols; ++i)
+ {
+ m_peaks[i] = 0;
+ m_intern_vis_data[i] = 0;
+ }
+ for(int i = 0; i < m_cols + 1; ++i)
+ m_x_scale[i] = pow(pow(255.0, 1.0 / m_cols), i);
+ }
+ short dest[256];
+ short y;
+ int k, magnitude;
+ short data[512];
+
+ for(int i = 0; i < VISUAL_NODE_SIZE; ++i)
+ {
+ data[i] = (left[i] >> 1) + (right[i] >> 1);
+ }
+ calc_freq (dest, data);
+
+ double y_scale = (double) 1.25 * m_rows / log(256);
+
+ for (int i = 0; i < m_cols; i++)
+ {
+ y = 0;
+ magnitude = 0;
+
+ if(m_x_scale[i] == m_x_scale[i + 1])
+ {
+ y = dest[i];
+ }
+ for (k = m_x_scale[i]; k < m_x_scale[i + 1]; k++)
+ {
+ y = qMax(dest[k], y);
+ }
+
+ y >>= 7; //256
+
+
+ if (y)
+ {
+ magnitude = int(log (y) * y_scale);
+ magnitude = qBound(0, magnitude, m_rows);
+ }
+
+
+ m_intern_vis_data[i] -= m_analyzer_falloff * m_rows / 15;
+ m_intern_vis_data[i] = magnitude > m_intern_vis_data[i] ? magnitude : m_intern_vis_data[i];
+
+ if (m_show_peaks)
+ {
+ m_peaks[i] -= m_peaks_falloff * m_rows / 15;
+ m_peaks[i] = magnitude > m_peaks[i] ? magnitude : m_peaks[i];
+ }
+ }
+}
+
+void QSUiAnalyzer::draw (QPainter *p)
+{
+ QBrush brush(Qt::SolidPattern);
+ int x = 0;
+
+ for (int j = 0; j < m_cols; ++j)
+ {
+ x = m_offset + j * m_cell_size.width() + 1;
+
+ for (int i = 0; i <= m_intern_vis_data[j]; ++i)
+ {
+ if (i <= m_rows/3)
+ brush.setColor(m_color1);
+ else if (i > m_rows/3 && i <= 2 * m_rows / 3)
+ brush.setColor(m_color2);
+ else
+ brush.setColor(m_color3);
+
+ p->fillRect (x, height() - i * m_cell_size.height(),
+ m_cell_size.width() - 1, m_cell_size.height() - 4, brush);
+ }
+
+ if (m_show_peaks)
+ {
+ p->fillRect (x, height() - int(m_peaks[j]) * m_cell_size.height(),
+ m_cell_size.width() - 1, m_cell_size.height() - 4, m_peakColor);
+ }
+ }
+}
+
+void QSUiAnalyzer::createMenu()
+{
+ m_menu = new QMenu (this);
+ connect(m_menu, SIGNAL(triggered (QAction *)),SLOT(writeSettings()));
+ connect(m_menu, SIGNAL(triggered (QAction *)),SLOT(readSettings()));
+
+ m_coverAction = m_menu->addAction(tr("Cover"));
+ m_coverAction->setCheckable(true);
+
+ m_peaksAction = m_menu->addAction(tr("Peaks"));
+ m_peaksAction->setCheckable(true);
+
+ QMenu *refreshRate = m_menu->addMenu(tr("Refresh Rate"));
+ m_fpsGroup = new QActionGroup(this);
+ m_fpsGroup->setExclusive(true);
+ m_fpsGroup->addAction(tr("50 fps"))->setData(50);
+ m_fpsGroup->addAction(tr("25 fps"))->setData(25);
+ m_fpsGroup->addAction(tr("10 fps"))->setData(10);
+ m_fpsGroup->addAction(tr("5 fps"))->setData(5);
+ foreach(QAction *act, m_fpsGroup->actions ())
+ {
+ act->setCheckable(true);
+ refreshRate->addAction(act);
+ }
+
+ QMenu *analyzerFalloff = m_menu->addMenu(tr("Analyzer Falloff"));
+ m_analyzerFalloffGroup = new QActionGroup(this);
+ m_analyzerFalloffGroup->setExclusive(true);
+ m_analyzerFalloffGroup->addAction(tr("Slowest"))->setData(1.2);
+ m_analyzerFalloffGroup->addAction(tr("Slow"))->setData(1.8);
+ m_analyzerFalloffGroup->addAction(tr("Medium"))->setData(2.2);
+ m_analyzerFalloffGroup->addAction(tr("Fast"))->setData(2.4);
+ m_analyzerFalloffGroup->addAction(tr("Fastest"))->setData(2.8);
+ foreach(QAction *act, m_analyzerFalloffGroup->actions ())
+ {
+ act->setCheckable(true);
+ analyzerFalloff->addAction(act);
+ }
+
+ QMenu *peaksFalloff = m_menu->addMenu(tr("Peaks Falloff"));
+ m_peaksFalloffGroup = new QActionGroup(this);
+ m_peaksFalloffGroup->setExclusive(true);
+ m_peaksFalloffGroup->addAction(tr("Slowest"))->setData(0.05);
+ m_peaksFalloffGroup->addAction(tr("Slow"))->setData(0.1);
+ m_peaksFalloffGroup->addAction(tr("Medium"))->setData(0.2);
+ m_peaksFalloffGroup->addAction(tr("Fast"))->setData(0.4);
+ m_peaksFalloffGroup->addAction(tr("Fastest"))->setData(0.8);
+ foreach(QAction *act, m_peaksFalloffGroup->actions ())
+ {
+ act->setCheckable(true);
+ peaksFalloff->addAction(act);
+ }
+ update();
+}
+
+void QSUiAnalyzer::updateCover()
+{
+ if(m_show_cover && !m_cover.isNull())
+ {
+ m_offset = height();
+ m_pixLabel->setGeometry(10,10, height() - 20, height() - 20);
+ m_pixLabel->setPixmap(m_cover.scaled(m_pixLabel->size(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation));
+ m_pixLabel->show();
+ }
+ else
+ {
+ m_offset = 0;
+ m_pixLabel->hide();
+ }
+}
+
+void QSUiAnalyzer::mousePressEvent (QMouseEvent *e)
+{
+ if (e->button() == Qt::RightButton)
+ m_menu->exec(e->globalPos());
+}
+
+void QSUiAnalyzer::readSettings()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ m_peaks_falloff = settings.value("vis_peaks_falloff", 0.2).toDouble();
+ m_analyzer_falloff = settings.value("vis_analyzer_falloff", 2.2).toDouble();
+ m_show_peaks = settings.value("vis_show_peaks", true).toBool();
+ m_show_cover = settings.value("vis_show_cover", true).toBool();
+ m_timer->setInterval(1000 / settings.value("vis_refresh_rate", 25).toInt());
+ m_color1.setNamedColor(settings.value("vis_color1", "#BECBFF").toString());
+ m_color2.setNamedColor(settings.value("vis_color2", "#BECBFF").toString());
+ m_color3.setNamedColor(settings.value("vis_color3", "#BECBFF").toString());
+ m_bgColor.setNamedColor(settings.value("vis_bg_color", "Black").toString());
+ m_peakColor.setNamedColor(settings.value("vis_peak_color", "#DDDDDD").toString());
+ m_cell_size = QSize(14, 8);
+ if(!m_update)
+ {
+ m_update = true;
+ m_coverAction->setChecked(m_show_cover);
+ m_peaksAction->setChecked(m_show_peaks);
+
+ foreach(QAction *act, m_fpsGroup->actions ())
+ {
+ if (m_timer->interval() == 1000 / act->data().toInt())
+ act->setChecked(true);
+ }
+ foreach(QAction *act, m_peaksFalloffGroup->actions ())
+ {
+ if (m_peaks_falloff == act->data().toDouble())
+ act->setChecked(true);
+ }
+ foreach(QAction *act, m_analyzerFalloffGroup->actions ())
+ {
+ if (m_analyzer_falloff == act->data().toDouble())
+ act->setChecked(true);
+ }
+ }
+ updateCover();
+ settings.endGroup();
+}
+
+void QSUiAnalyzer::writeSettings()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+
+ QAction *act = m_fpsGroup->checkedAction ();
+ settings.setValue("vis_refresh_rate", act ? act->data().toInt() : 25);
+ act = m_peaksFalloffGroup->checkedAction ();
+ settings.setValue("vis_peaks_falloff", act ? act->data().toDouble() : 0.2);
+ act = m_analyzerFalloffGroup->checkedAction ();
+ settings.setValue("vis_analyzer_falloff", act ? act->data().toDouble() : 2.2);
+ settings.setValue("vis_show_peaks", m_peaksAction->isChecked());
+ settings.setValue("vis_show_cover", m_coverAction->isChecked());
+ settings.endGroup();
+}
diff --git a/src/plugins/Ui/qsui/qsuianalyzer.h b/src/plugins/Ui/qsui/qsuianalyzer.h
new file mode 100644
index 000000000..c2032f402
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuianalyzer.h
@@ -0,0 +1,97 @@
+/***************************************************************************
+ * Copyright (C) 2012-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef QSUIANALYZER_H
+#define QSUIANALYZER_H
+
+#include <QWidget>
+#include <QResizeEvent>
+#include <qmmp/visual.h>
+
+class QTimer;
+class QMenu;
+class QActionGroup;
+class QLabel;
+
+
+class QSUiAnalyzer : public Visual
+{
+ Q_OBJECT
+public:
+ QSUiAnalyzer( QWidget *parent = 0);
+ virtual ~QSUiAnalyzer();
+
+ void add(unsigned char *data, qint64 size, int chan);
+ void setCover(const QPixmap &pixmap);
+ void clear();
+ void clearCover();
+ QSize sizeHint() const;
+
+public slots:
+ void readSettings();
+
+private slots:
+ void timeout();
+ void writeSettings();
+
+private:
+ void paintEvent(QPaintEvent *);
+ void mousePressEvent(QMouseEvent *);
+ void hideEvent(QHideEvent *);
+ void showEvent(QShowEvent *);
+ void resizeEvent(QResizeEvent *);
+ void process(short *l, short *r);
+ void draw(QPainter *p);
+ void createMenu();
+ void updateCover();
+
+ QPixmap m_bg;
+ QPixmap m_cover;
+ QTimer *m_timer;
+ double *m_intern_vis_data;
+ double *m_peaks;
+ int *m_x_scale;
+ double m_peaks_falloff;
+ double m_analyzer_falloff;
+ bool m_show_peaks;
+ bool m_show_cover;
+ short *m_left_buffer;
+ short *m_right_buffer;
+ int m_buffer_at;
+ int m_cols, m_rows;
+ int m_offset;
+ bool m_update;
+ QLabel *m_pixLabel;
+ //colors
+ QColor m_color1;
+ QColor m_color2;
+ QColor m_color3;
+ QColor m_bgColor;
+ QColor m_peakColor;
+ QSize m_cell_size;
+ QMenu *m_menu;
+ QAction *m_peaksAction;
+ QAction *m_coverAction;
+ QActionGroup *m_fpsGroup;
+ QActionGroup *m_analyzerFalloffGroup;
+ QActionGroup *m_peaksFalloffGroup;
+};
+
+
+#endif //QSUIANALYZER_H
diff --git a/src/plugins/Ui/qsui/qsuifactory.cpp b/src/plugins/Ui/qsui/qsuifactory.cpp
new file mode 100644
index 000000000..837c3f064
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuifactory.cpp
@@ -0,0 +1,57 @@
+/***************************************************************************
+ * Copyright (C) 2011-2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QtPlugin>
+#include <QMessageBox>
+#include <qmmp/qmmpsettings.h>
+#include "mainwindow.h"
+#include "aboutqsuidialog.h"
+#include "qsuifactory.h"
+
+const UiProperties QSUIFactory::properties() const
+{
+ UiProperties props;
+ props.hasAbout = true;
+ props.name = tr("Simple User Interface");
+ props.shortName = "qsui";
+ return props;
+}
+
+QObject *QSUIFactory::QSUIFactory::create()
+{
+ QmmpSettings::instance()->readEqSettings(EqSettings::EQ_BANDS_15);
+ return new MainWindow();
+}
+
+void QSUIFactory::showAbout(QWidget *parent)
+{
+ AboutQSUIDialog about(parent);
+ about.exec();
+}
+
+QTranslator *QSUIFactory::createTranslator(QObject *parent)
+{
+ QTranslator *translator = new QTranslator(parent);
+ QString locale = Qmmp::systemLanguageID();
+ translator->load(QString(":/qsui_plugin_") + locale);
+ return translator;
+}
+
+Q_EXPORT_PLUGIN2(qsui, QSUIFactory)
diff --git a/src/plugins/Ui/qsui/qsuifactory.h b/src/plugins/Ui/qsui/qsuifactory.h
new file mode 100644
index 000000000..bd56c35f6
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuifactory.h
@@ -0,0 +1,41 @@
+/***************************************************************************
+ * Copyright (C) 2011-2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef QSUIFACTORY_H
+#define QSUIFACTORY_H
+
+#include <QObject>
+#include <QTranslator>
+#include <qmmpui/uifactory.h>
+
+/*!
+ * @author Ilya Kotov <forkotov02@hotmail.ru>
+ */
+class QSUIFactory : public QObject, public UiFactory
+{
+ Q_OBJECT
+ Q_INTERFACES(UiFactory)
+public:
+ const UiProperties properties() const;
+ QObject *create();
+ void showAbout(QWidget *parent);
+ QTranslator *createTranslator(QObject *parent);
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/qsuisettings.cpp b/src/plugins/Ui/qsui/qsuisettings.cpp
new file mode 100644
index 000000000..d64443f24
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuisettings.cpp
@@ -0,0 +1,245 @@
+/***************************************************************************
+ * Copyright (C) 2011-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QSettings>
+#include <QDir>
+#include <QFontDialog>
+#include <QMenu>
+#include <qmmp/qmmp.h>
+#include <qmmpui/filedialog.h>
+#include <qmmpui/uihelper.h>
+#include "actionmanager.h"
+#include "shortcutitem.h"
+#include "shortcutdialog.h"
+#include "popupsettings.h"
+#include "qsuisettings.h"
+
+QSUISettings::QSUISettings(QWidget *parent) : QWidget(parent)
+{
+ m_ui.setupUi(this);
+ //setup icons
+ m_ui.popupTemplateButton->setIcon(QIcon::fromTheme("configure"));
+ //load settings
+ readSettings();
+ loadFonts();
+ createActions();
+}
+
+QSUISettings::~QSUISettings()
+{}
+
+void QSUISettings::on_plFontButton_clicked()
+{
+ bool ok = false;
+ QFont font = m_ui.plFontLabel->font();
+ font = QFontDialog::getFont (&ok, font, this);
+ if (ok)
+ {
+ m_ui.plFontLabel->setText(font.family () + " " + QString::number(font.pointSize ()));
+ m_ui.plFontLabel->setFont(font);
+ }
+}
+
+void QSUISettings::on_columnFontButton_clicked()
+{
+ bool ok = false;
+ QFont font = m_ui.columnFontLabel->font();
+ font = QFontDialog::getFont (&ok, font, this);
+ if (ok)
+ {
+ m_ui.columnFontLabel->setText(font.family () + " " + QString::number(font.pointSize ()));
+ m_ui.columnFontLabel->setFont(font);
+ }
+}
+
+void QSUISettings::on_tabsFontButton_clicked()
+{
+ bool ok = false;
+ QFont font = m_ui.tabsFontLabel->font();
+ font = QFontDialog::getFont (&ok, font, this);
+ if (ok)
+ {
+ m_ui.tabsFontLabel->setText(font.family () + " " + QString::number(font.pointSize ()));
+ m_ui.tabsFontLabel->setFont(font);
+ }
+}
+
+void QSUISettings::showEvent(QShowEvent *)
+{
+ m_ui.hiddenCheckBox->setEnabled(UiHelper::instance()->visibilityControl());
+ m_ui.hideOnCloseCheckBox->setEnabled(UiHelper::instance()->visibilityControl());
+}
+
+void QSUISettings::loadFonts()
+{
+ QString fontName;
+ QFont font;
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+
+ m_ui.systemFontsCheckBox->setChecked(settings.value("use_system_fonts", true).toBool());
+
+ fontName = settings.value ("pl_font", qApp->font("QAbstractItemView").toString()).toString();
+ font.fromString(fontName);
+ m_ui.plFontLabel->setText (font.family () + " " + QString::number(font.pointSize ()));
+ m_ui.plFontLabel->setFont(font);
+
+ fontName = settings.value ("pl_tabs_font", qApp->font("QTabWidget").toString()).toString();
+ font.fromString(fontName);
+ m_ui.tabsFontLabel->setText (font.family () + " " + QString::number(font.pointSize ()));
+ m_ui.tabsFontLabel->setFont(font);
+
+ fontName = settings.value ("pl_header_font", qApp->font("QAbstractItemView").toString()).toString();
+ font.fromString(fontName);
+ m_ui.columnFontLabel->setText (font.family () + " " + QString::number(font.pointSize ()));
+ m_ui.columnFontLabel->setFont(font);
+}
+
+void QSUISettings::createActions()
+{
+ QMenu *menu = new QMenu(this);
+ menu->addAction(tr("Artist"))->setData("%p");
+ menu->addAction(tr("Album"))->setData("%a");
+ menu->addAction(tr("Album Artist"))->setData("%aa");
+ menu->addAction(tr("Title"))->setData("%t");
+ menu->addAction(tr("Track Number"))->setData("%n");
+ menu->addAction(tr("Two-digit Track Number"))->setData("%NN");
+ menu->addAction(tr("Genre"))->setData("%g");
+ menu->addAction(tr("Comment"))->setData("%c");
+ menu->addAction(tr("Composer"))->setData("%C");
+ menu->addAction(tr("Duration"))->setData("%l");
+ menu->addAction(tr("Disc Number"))->setData("%D");
+ menu->addAction(tr("File Name"))->setData("%f");
+ menu->addAction(tr("File Path"))->setData("%F");
+ menu->addAction(tr("Year"))->setData("%y");
+ menu->addAction(tr("Condition"))->setData("%if(%p&%t,%p - %t,%f)");
+ menu->addAction(tr("Artist - Title"))->setData("%if(%p,%p - %t,%t)");
+
+ m_ui.windowTitleButton->setMenu(menu);
+ m_ui.windowTitleButton->setPopupMode(QToolButton::InstantPopup);
+ connect(menu, SIGNAL(triggered (QAction *)), SLOT(addWindowTitleString(QAction *)));
+}
+
+void QSUISettings::on_popupTemplateButton_clicked()
+{
+ PopupSettings *p = new PopupSettings(this);
+ p->exec();
+ p->deleteLater();
+}
+
+void QSUISettings::readSettings()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ //playlist
+ m_ui.protocolCheckBox->setChecked(settings.value("pl_show_protocol", false).toBool());
+ m_ui.numbersCheckBox->setChecked(settings.value("pl_show_numbers", true).toBool());
+ m_ui.lengthsCheckBox->setChecked(settings.value("pl_show_lengths", true).toBool());
+ m_ui.alignCheckBox->setChecked(settings.value("pl_align_numbers", false).toBool());
+ m_ui.anchorCheckBox->setChecked(settings.value("pl_show_anchor", false).toBool());
+ m_ui.popupCheckBox->setChecked(settings.value("pl_show_popup", false).toBool());
+ //tabs
+ m_ui.tabsClosableCheckBox->setChecked(settings.value("pl_tabs_closable", false).toBool());
+ m_ui.showNewPLCheckBox->setChecked(settings.value("pl_show_new_pl_button", false).toBool());
+ m_ui.showTabListMenuCheckBox->setChecked(settings.value("pl_show_tab_list_menu", false).toBool());
+ //view
+ m_ui.hiddenCheckBox->setChecked(settings.value("start_hidden", false).toBool());
+ m_ui.hideOnCloseCheckBox->setChecked(settings.value("hide_on_close", false).toBool());
+ m_ui.windowTitleLineEdit->setText(settings.value("window_title_format","%if(%p,%p - %t,%t)").toString());
+ //analyzer colors
+ m_ui.aColor1->setColor(settings.value("vis_color1", "#BECBFF").toString());
+ m_ui.aColor2->setColor(settings.value("vis_color2", "#BECBFF").toString());
+ m_ui.aColor3->setColor(settings.value("vis_color3", "#BECBFF").toString());
+ m_ui.peaksColor->setColor(settings.value("vis_peak_color", "#DDDDDD").toString());
+ m_ui.bgColor->setColor(settings.value("vis_bg_color", "Black").toString());
+ //playlist colors
+ QString normal_bg = palette().color(QPalette::Base).name();
+ QString alternate = palette().color(QPalette::AlternateBase).name();
+ QString selected_bg = palette().color(QPalette::Highlight).name();
+ QString normal = palette().color(QPalette::Text).name();
+ QString current = palette().color(QPalette::Text).name();
+ QString highlighted = palette().color(QPalette::HighlightedText).name();
+ QString group_bg = palette().color(QPalette::Base).name();
+ QString group_text = palette().color(QPalette::Text).name();
+ m_ui.plSystemColorsCheckBox->setChecked(settings.value("pl_system_colors", true).toBool());
+ m_ui.plBg1Color->setColor(settings.value("pl_bg1_color", normal_bg).toString());
+ m_ui.plBg2Color->setColor(settings.value("pl_bg2_color", alternate).toString());
+ m_ui.plHlColor->setColor(settings.value("pl_highlight_color", selected_bg).toString());
+ m_ui.plTextNormalColor->setColor(settings.value("pl_normal_text_color", normal).toString());
+ m_ui.plTextCurrentColor->setColor(settings.value("pl_current_text_color", current).toString());
+ m_ui.plTextHlCurrentColor->setColor(settings.value("pl_hl_text_color", highlighted).toString());
+ m_ui.plGrBgColor->setColor(settings.value("pl_group_bg", group_bg).toString());
+ m_ui.plGrTextColor->setColor(settings.value("pl_group_text", group_text).toString());
+ settings.endGroup();
+}
+
+void QSUISettings::writeSettings()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ settings.setValue("pl_show_protocol", m_ui.protocolCheckBox->isChecked());
+ settings.setValue("pl_show_numbers", m_ui.numbersCheckBox->isChecked());
+ settings.setValue("pl_show_lengths", m_ui.lengthsCheckBox->isChecked());
+ settings.setValue("pl_align_numbers", m_ui.alignCheckBox->isChecked());
+ settings.setValue("pl_show_anchor", m_ui.anchorCheckBox->isChecked());
+ settings.setValue("pl_show_popup", m_ui.popupCheckBox->isChecked());
+ settings.setValue("pl_tabs_closable", m_ui.tabsClosableCheckBox->isChecked());
+ settings.setValue("pl_show_new_pl_button", m_ui.showNewPLCheckBox->isChecked());
+ settings.setValue("pl_show_tab_list_menu", m_ui.showTabListMenuCheckBox->isChecked());
+ settings.setValue("start_hidden", m_ui.hiddenCheckBox->isChecked());
+ settings.setValue("hide_on_close", m_ui.hideOnCloseCheckBox->isChecked());
+ settings.setValue("window_title_format", m_ui.windowTitleLineEdit->text());
+ settings.setValue("vis_color1", m_ui.aColor1->colorName());
+ settings.setValue("vis_color2", m_ui.aColor2->colorName());
+ settings.setValue("vis_color3", m_ui.aColor3->colorName());
+ settings.setValue("vis_peak_color", m_ui.peaksColor->colorName());
+ settings.setValue("vis_bg_color", m_ui.bgColor->colorName());
+ settings.setValue("pl_system_colors", m_ui.plSystemColorsCheckBox->isChecked());
+ settings.setValue("pl_bg1_color", m_ui.plBg1Color->colorName());
+ settings.setValue("pl_bg2_color", m_ui.plBg2Color->colorName());
+ settings.setValue("pl_highlight_color", m_ui.plHlColor->colorName());
+ settings.setValue("pl_normal_text_color", m_ui.plTextNormalColor->colorName());
+ settings.setValue("pl_current_text_color", m_ui.plTextCurrentColor->colorName());
+ settings.setValue("pl_hl_text_color", m_ui.plTextHlCurrentColor->colorName());
+ settings.setValue("pl_group_bg", m_ui.plGrBgColor->colorName());
+ settings.setValue("pl_group_text", m_ui.plGrTextColor->colorName());
+ settings.setValue("pl_font", m_ui.plFontLabel->font().toString());
+ settings.setValue("pl_tabs_font", m_ui.tabsFontLabel->font().toString());
+ settings.setValue("pl_header_font", m_ui.columnFontLabel->font().toString());
+ settings.setValue("use_system_fonts", m_ui.systemFontsCheckBox->isChecked());
+ settings.endGroup();
+}
+
+void QSUISettings::on_resetFontsButton_clicked()
+{
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.remove("Simple/pl_font");
+ settings.remove("Simple/pl_tabs_font");
+ settings.remove("Simple/pl_header_font");
+ loadFonts();
+}
+
+void QSUISettings::addWindowTitleString(QAction *a)
+{
+ if (m_ui.windowTitleLineEdit->cursorPosition () < 1)
+ m_ui.windowTitleLineEdit->insert(a->data().toString());
+ else
+ m_ui.windowTitleLineEdit->insert(" - "+a->data().toString());
+}
diff --git a/src/plugins/Ui/qsui/qsuisettings.h b/src/plugins/Ui/qsui/qsuisettings.h
new file mode 100644
index 000000000..a6396a5c8
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuisettings.h
@@ -0,0 +1,59 @@
+/***************************************************************************
+ * Copyright (C) 2011-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef QSUISETTINGS_H
+#define QSUISETTINGS_H
+
+#include <QWidget>
+#include <QFileInfo>
+#include "ui_qsuisettings.h"
+
+class QAction;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class QSUISettings : public QWidget
+{
+ Q_OBJECT
+public:
+ explicit QSUISettings(QWidget *parent = 0);
+ virtual ~QSUISettings();
+ void writeSettings();
+
+
+private slots:
+ void on_plFontButton_clicked();
+ void on_columnFontButton_clicked();
+ void on_tabsFontButton_clicked();
+ void on_popupTemplateButton_clicked();
+ void on_resetFontsButton_clicked();
+ void addWindowTitleString(QAction *a);
+
+private:
+ void showEvent(QShowEvent *);
+ void loadFonts();
+ void createActions();
+ void readSettings();
+
+ Ui::QSUISettings m_ui;
+};
+
+#endif // QSUISETTINGS_H
diff --git a/src/plugins/Ui/qsui/qsuitabbar.cpp b/src/plugins/Ui/qsui/qsuitabbar.cpp
new file mode 100644
index 000000000..2909f6187
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuitabbar.cpp
@@ -0,0 +1,39 @@
+/***************************************************************************
+ * Copyright (C) 2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QMouseEvent>
+#include "qsuitabbar.h"
+
+QSUiTabBar::QSUiTabBar(QWidget *parent) : QTabBar(parent)
+{}
+
+void QSUiTabBar::mouseReleaseEvent(QMouseEvent *e)
+{
+ if(e->button() == Qt::MidButton)
+ {
+ int i = tabAt(e->pos());
+ if(i >= 0)
+ {
+ e->accept();
+ emit tabCloseRequested(i);
+ }
+ }
+ QTabBar::mouseReleaseEvent(e);
+}
diff --git a/src/plugins/Ui/qsui/qsuitabbar.h b/src/plugins/Ui/qsui/qsuitabbar.h
new file mode 100644
index 000000000..133ccb3f9
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuitabbar.h
@@ -0,0 +1,40 @@
+/***************************************************************************
+ * Copyright (C) 2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef QSUITABBAR_H
+#define QSUITABBAR_H
+
+#include <QTabBar>
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class QSUiTabBar : public QTabBar
+{
+ Q_OBJECT
+public:
+ explicit QSUiTabBar(QWidget *parent = 0);
+
+private:
+ void mouseReleaseEvent(QMouseEvent *e);
+
+};
+
+#endif // QSUITABBAR_H
diff --git a/src/plugins/Ui/qsui/qsuitabwidget.cpp b/src/plugins/Ui/qsui/qsuitabwidget.cpp
new file mode 100644
index 000000000..6dfad0433
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuitabwidget.cpp
@@ -0,0 +1,148 @@
+/***************************************************************************
+ * Copyright (C) 2012-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QMouseEvent>
+#include <QTabBar>
+#include <QSettings>
+#include <QApplication>
+#include <qmmp/qmmp.h>
+#include "qsuitabbar.h"
+#include "qsuitabwidget.h"
+
+QSUiTabWidget::QSUiTabWidget(QWidget *parent) : QTabWidget(parent)
+{
+ setTabBar(new QSUiTabBar(this));
+ setMovable(true);
+ m_menu = new QMenu(this);
+ m_group = new QActionGroup(this);
+ m_group->setExclusive(true);
+ connect(tabBar(), SIGNAL(tabMoved(int,int)), SIGNAL(tabMoved(int,int)));
+ connect(tabBar(), SIGNAL(tabMoved(int,int)), SLOT(updateActions()));
+ connect(tabBar(), SIGNAL(tabCloseRequested(int)), SLOT(onTabCloseRequest(int)));
+ connect(this, SIGNAL(currentChanged(int)), SLOT(onCurrentChanged(int)));
+ connect(m_menu, SIGNAL(triggered(QAction*)), SLOT(onActionTriggered(QAction*)));
+ readSettings();
+}
+
+QMenu *QSUiTabWidget::menu()
+{
+ return m_menu;
+}
+
+void QSUiTabWidget::onTabCloseRequest(int i)
+{
+ if(!tabsClosable())
+ emit tabCloseRequested(i);
+}
+
+void QSUiTabWidget::onCurrentChanged(int index)
+{
+ if(index >= m_menu->actions().count())
+ return;
+ m_menu->actions().at(index)->setChecked(true);
+}
+
+void QSUiTabWidget::onActionTriggered(QAction *action)
+{
+ setCurrentIndex(m_menu->actions().indexOf(action));
+}
+
+void QSUiTabWidget::updateActions()
+{
+ for(int i = 0; i < m_menu->actions().size(); ++i)
+ {
+ m_menu->actions().at(i)->setText(tabText(i));
+ }
+ m_menu->actions().at(currentIndex())->setChecked(true);
+}
+
+void QSUiTabWidget::tabInserted(int index)
+{
+ QAction *action = new QAction(m_menu);
+ action->setCheckable(true);
+ action->setActionGroup(m_group);
+ action->setText(tabText(index));
+
+ if(m_menu->actions().isEmpty() || index == m_menu->actions().count())
+ {
+ m_menu->addAction(action);
+ }
+ else
+ {
+ QAction *before = m_menu->actions().at(index);
+ m_menu->insertAction(before, action);
+ }
+ if(currentIndex() == index)
+ action->setChecked(true);
+ QTabWidget::tabInserted(index);
+}
+
+void QSUiTabWidget::tabRemoved(int index)
+{
+ QAction *a = m_menu->actions().at(index);
+ m_menu->removeAction(a);
+ delete a;
+ QTabWidget::tabRemoved(index);
+}
+
+void QSUiTabWidget::setTabText(int index, const QString &text)
+{
+ QTabWidget::setTabText(index, text);
+ m_menu->actions().at(index)->setText(text);
+}
+
+void QSUiTabWidget::readSettings()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ settings.beginGroup("Simple");
+ QFont tab_font = qApp->font(tabBar());
+ if(!settings.value("use_system_fonts", true).toBool())
+ {
+ tab_font.fromString(settings.value("pl_tabs_font", tab_font.toString()).toString());
+ }
+ tabBar()->setFont(tab_font);
+}
+
+void QSUiTabWidget::setTabsVisible(bool visible)
+{
+ tabBar()->setVisible(visible);
+}
+
+void QSUiTabWidget::mousePressEvent(QMouseEvent *e)
+{
+ if((e->button() == Qt::MidButton) &&
+ (childAt(e->pos()) == 0))
+ {
+ e->accept();
+ emit createPlayListRequested();
+ }
+ QTabWidget::mousePressEvent(e);
+}
+
+void QSUiTabWidget::mouseDoubleClickEvent(QMouseEvent *e)
+{
+ if((e->button() == Qt::LeftButton) &&
+ (childAt(e->pos()) == 0))
+ {
+ e->accept();
+ emit createPlayListRequested();
+ }
+ QTabWidget::mouseDoubleClickEvent(e);
+}
diff --git a/src/plugins/Ui/qsui/qsuitabwidget.h b/src/plugins/Ui/qsui/qsuitabwidget.h
new file mode 100644
index 000000000..8bf4f6968
--- /dev/null
+++ b/src/plugins/Ui/qsui/qsuitabwidget.h
@@ -0,0 +1,65 @@
+/***************************************************************************
+ * Copyright (C) 2012-2015 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef QSUITABWIDGET_H
+#define QSUITABWIDGET_H
+
+#include <QTabWidget>
+#include <QMenu>
+
+class QActionGroup;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class QSUiTabWidget : public QTabWidget
+{
+ Q_OBJECT
+public:
+ explicit QSUiTabWidget(QWidget *parent = 0);
+
+ QMenu *menu();
+ void setTabText(int index, const QString &text);
+ void readSettings();
+
+signals:
+ void tabMoved(int from, int to);
+ void createPlayListRequested();
+
+public slots:
+ void setTabsVisible(bool visible);
+
+private slots:
+ void onTabCloseRequest(int i);
+ void onCurrentChanged(int index);
+ void onActionTriggered(QAction *action);
+ void updateActions();
+
+private:
+ void tabInserted(int index);
+ void tabRemoved(int index);
+ void mousePressEvent(QMouseEvent *e);
+ void mouseDoubleClickEvent(QMouseEvent *e);
+ QMenu *m_menu;
+ QActionGroup *m_group;
+
+};
+
+#endif // QSUITABWIDGET_H
diff --git a/src/plugins/Ui/qsui/resources/audio-volume-high.png b/src/plugins/Ui/qsui/resources/audio-volume-high.png
new file mode 100644
index 000000000..e1b2563aa
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/audio-volume-high.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/audio-volume-low.png b/src/plugins/Ui/qsui/resources/audio-volume-low.png
new file mode 100644
index 000000000..bb3aeaff6
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/audio-volume-low.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/audio-volume-medium.png b/src/plugins/Ui/qsui/resources/audio-volume-medium.png
new file mode 100644
index 000000000..779fe1751
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/audio-volume-medium.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/audio-volume-muted.png b/src/plugins/Ui/qsui/resources/audio-volume-muted.png
new file mode 100644
index 000000000..76fd50781
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/audio-volume-muted.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/eq16.preset b/src/plugins/Ui/qsui/resources/eq16.preset
new file mode 100644
index 000000000..6ed69c2f5
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/eq16.preset
@@ -0,0 +1,324 @@
+[Presets]
+Preset1=Club
+Preset2=Dance
+Preset3=Full Bass
+Preset4=Full Treble
+Preset5=Full Bass + Treble
+Preset6=Headphones
+Preset7=Large Hall
+Preset8=Live
+Preset9=Party
+Preset10=Pop
+Preset11=Reggae
+Preset12=Rock
+Preset13=Soft
+Preset14=Ska
+Preset15=Soft Rock
+Preset16=Techno
+Preset17=Default
+
+[Club]
+Band0=0
+Band1=0
+Band2=0
+Band3=4
+Band4=5
+Band5=6
+Band6=6
+Band7=6
+Band8=6
+Band9=5
+Band10=5
+Band11=4
+Band12=0
+Band13=0
+Band14=0
+Preamp=0
+
+[Dance]
+Band0=10
+Band1=8
+Band2=7
+Band3=2
+Band4=1
+Band5=0
+Band6=0
+Band7=-3
+Band8=-6
+Band9=-8
+Band10=-8
+Band11=-8
+Band12=0
+Band13=0
+Band14=0
+Preamp=0
+
+[Full%20Bass]
+Band0=14
+Band1=14
+Band2=14
+Band3=14
+Band4=11
+Band5=8
+Band6=4
+Band7=0
+Band8=-4
+Band9=-9
+Band10=-9
+Band11=-10
+Band12=-11
+Band13=-11
+Band14=-11
+Preamp=0
+
+[Full%20Treble]
+Band0=-10
+Band1=-10
+Band2=-10
+Band3=-10
+Band4=-7
+Band5=-5
+Band6=3
+Band7=7
+Band8=11
+Band9=16
+Band10=16
+Band11=16
+Band12=16
+Band13=17
+Band14=17
+Preamp=0
+
+[Full%20Bass%20%2B%20Treble]
+Band0=7
+Band1=7
+Band2=6
+Band3=0
+Band4=-4
+Band5=-8
+Band6=-5
+Band7=-1
+Band8=2
+Band9=9
+Band10=10
+Band11=11
+Band12=12
+Band13=12
+Band14=12
+Preamp=0
+
+[Headphones]
+Band0=5
+Band1=7
+Band2=10
+Band3=5
+Band4=0
+Band5=-4
+Band6=0
+Band7=-3
+Band8=-6
+Band9=-8
+Band10=-8
+Band11=-8
+Band12=0
+Band13=0
+Band14=0
+Preamp=0
+
+[Large%20Hall]
+Band0=10
+Band1=10
+Band2=10
+Band3=6
+Band4=6
+Band5=6
+Band6=0
+Band7=-3
+Band8=-5
+Band9=-5
+Band10=-5
+Band11=-5
+Band12=0
+Band13=0
+Band14=0
+Preamp=0
+
+[Live]
+Band0=-5
+Band1=-2
+Band2=0
+Band3=2
+Band4=4
+Band5=5
+Band6=6
+Band7=6
+Band8=6
+Band9=4
+Band10=4
+Band11=3
+Band12=3
+Band13=2
+Band14=2
+Preamp=0
+
+[Party]
+Band0=7
+Band1=7
+Band2=7
+Band3=3
+Band4=0
+Band5=0
+Band6=0
+Band7=0
+Band8=0
+Band9=0
+Band10=0
+Band11=3
+Band12=7
+Band13=7
+Band14=7
+Preamp=0
+
+[Pop]
+Band0=-2
+Band1=1
+Band2=5
+Band3=7
+Band4=8
+Band5=8
+Band6=5
+Band7=2
+Band8=-1
+Band9=-3
+Band10=-3
+Band11=-3
+Band12=-2
+Band13=-2
+Band14=-2
+Preamp=0
+
+[Reggae]
+Band0=0
+Band1=0
+Band2=0
+Band3=-1
+Band4=-4
+Band5=-6
+Band6=0
+Band7=-4
+Band8=-7
+Band9=-7
+Band10=-4
+Band11=0
+Band12=0
+Band13=0
+Band14=0
+Preamp=0
+
+[Rock]
+Band0=8
+Band1=7
+Band2=5
+Band3=-6
+Band4=-7
+Band5=-8
+Band6=-4
+Band7=0
+Band8=4
+Band9=9
+Band10=10
+Band11=11
+Band12=11
+Band13=11
+Band14=11
+Preamp=0
+
+[Soft]
+Band0=5
+Band1=3
+Band2=2
+Band3=-1
+Band4=-2
+Band5=-3
+Band6=-1
+Band7=2
+Band8=4
+Band9=7
+Band10=9
+Band11=10
+Band12=11
+Band13=11
+Band14=12
+Preamp=0
+
+[Ska]
+Band0=-3
+Band1=-4
+Band2=-5
+Band3=-5
+Band4=-2
+Band5=-1
+Band6=4
+Band7=6
+Band8=6
+Band9=9
+Band10=9
+Band11=10
+Band12=11
+Band13=11
+Band14=10
+Preamp=0
+
+[Soft%20Rock]
+Band0=4
+Band1=4
+Band2=4
+Band3=2
+Band4=0
+Band5=-1
+Band6=-5
+Band7=-5
+Band8=-6
+Band9=-4
+Band10=-2
+Band11=-1
+Band12=3
+Band13=6
+Band14=9
+Preamp=0
+
+[Techno]
+Band0=8
+Band1=7
+Band2=6
+Band3=0
+Band4=-3
+Band5=-6
+Band6=-5
+Band7=-2
+Band8=0
+Band9=8
+Band10=9
+Band11=10
+Band12=10
+Band13=10
+Band14=9
+Preamp=0
+
+[Default]
+Band0=0
+Band1=0
+Band2=0
+Band3=0
+Band4=0
+Band5=0
+Band6=0
+Band7=0
+Band8=0
+Band9=0
+Band10=0
+Band11=0
+Band12=0
+Band13=0
+Band14=0
+Preamp=0
diff --git a/src/plugins/Ui/qsui/resources/media-eject.png b/src/plugins/Ui/qsui/resources/media-eject.png
new file mode 100644
index 000000000..a6367adc0
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/media-eject.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/media-playback-pause.png b/src/plugins/Ui/qsui/resources/media-playback-pause.png
new file mode 100644
index 000000000..17627c96b
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/media-playback-pause.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/media-playback-start.png b/src/plugins/Ui/qsui/resources/media-playback-start.png
new file mode 100644
index 000000000..c4ddd34f5
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/media-playback-start.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/media-playback-stop.png b/src/plugins/Ui/qsui/resources/media-playback-stop.png
new file mode 100644
index 000000000..f2f616c20
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/media-playback-stop.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/media-skip-backward.png b/src/plugins/Ui/qsui/resources/media-skip-backward.png
new file mode 100644
index 000000000..34a35c623
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/media-skip-backward.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/media-skip-forward.png b/src/plugins/Ui/qsui/resources/media-skip-forward.png
new file mode 100644
index 000000000..45edeb10e
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/media-skip-forward.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/qsui_resources.qrc b/src/plugins/Ui/qsui/resources/qsui_resources.qrc
new file mode 100644
index 000000000..732b18229
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/qsui_resources.qrc
@@ -0,0 +1,19 @@
+<RCC>
+ <qresource prefix="/qsui">
+ <file>terminus.png</file>
+ <file>qsui_settings.png</file>
+ <file>ui_no_cover.png</file>
+ <file>media-eject.png</file>
+ <file>media-playback-pause.png</file>
+ <file>media-playback-start.png</file>
+ <file>media-playback-stop.png</file>
+ <file>media-skip-backward.png</file>
+ <file>media-skip-forward.png</file>
+ <file>audio-volume-high.png</file>
+ <file>audio-volume-low.png</file>
+ <file>audio-volume-medium.png</file>
+ <file>audio-volume-muted.png</file>
+ <file>eq16.preset</file>
+ <file>qsui_shortcuts.png</file>
+ </qresource>
+</RCC>
diff --git a/src/plugins/Ui/qsui/resources/qsui_settings.png b/src/plugins/Ui/qsui/resources/qsui_settings.png
new file mode 100644
index 000000000..a6479df07
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/qsui_settings.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/qsui_shortcuts.png b/src/plugins/Ui/qsui/resources/qsui_shortcuts.png
new file mode 100644
index 000000000..45d917220
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/qsui_shortcuts.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/terminus.png b/src/plugins/Ui/qsui/resources/terminus.png
new file mode 100644
index 000000000..2da094f69
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/terminus.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/resources/ui_no_cover.png b/src/plugins/Ui/qsui/resources/ui_no_cover.png
new file mode 100644
index 000000000..ac8c587e3
--- /dev/null
+++ b/src/plugins/Ui/qsui/resources/ui_no_cover.png
Binary files differ
diff --git a/src/plugins/Ui/qsui/shortcutdialog.cpp b/src/plugins/Ui/qsui/shortcutdialog.cpp
new file mode 100644
index 000000000..e3df5d8ac
--- /dev/null
+++ b/src/plugins/Ui/qsui/shortcutdialog.cpp
@@ -0,0 +1,67 @@
+/***************************************************************************
+ * Copyright (C) 2010-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QKeyEvent>
+#include "shortcutdialog.h"
+
+ShortcutDialog::ShortcutDialog(const QString &key, QWidget *parent)
+ : QDialog(parent)
+{
+ m_ui.setupUi(this);
+ m_ui.keyLineEdit->setText(key);
+
+ //buttons should not catch keys
+ foreach(QAbstractButton *button, m_ui.buttonBox->buttons())
+ button->setFocusPolicy(Qt::NoFocus);
+}
+
+ShortcutDialog::~ShortcutDialog()
+{
+}
+
+void ShortcutDialog::keyPressEvent (QKeyEvent *event)
+{
+ int key = event->key();
+ switch (key)
+ {
+ case Qt::Key_Shift:
+ case Qt::Key_Control:
+ case Qt::Key_Meta:
+ case Qt::Key_Alt:
+ case Qt::Key_AltGr:
+ case Qt::Key_Super_L:
+ case Qt::Key_Super_R:
+ case Qt::Key_Menu:
+ case 0:
+ case Qt::Key_unknown:
+ key = 0;
+ m_ui.keyLineEdit->clear();
+ QWidget::keyPressEvent(event);
+ return;
+ }
+ QKeySequence seq(event->modifiers() + event->key());
+ m_ui.keyLineEdit->setText(seq.toString());
+ QWidget::keyPressEvent(event);
+}
+
+const QString ShortcutDialog::key()
+{
+ return m_ui.keyLineEdit->text();
+}
diff --git a/src/plugins/Ui/qsui/shortcutdialog.h b/src/plugins/Ui/qsui/shortcutdialog.h
new file mode 100644
index 000000000..e581f9c8a
--- /dev/null
+++ b/src/plugins/Ui/qsui/shortcutdialog.h
@@ -0,0 +1,49 @@
+/***************************************************************************
+ * Copyright (C) 2010-2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef SHORTCUTDIALOG_H
+#define SHORTCUTDIALOG_H
+
+#include <QDialog>
+#include "ui_shortcutdialog.h"
+
+class QKeyEvent;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class ShortcutDialog : public QDialog
+{
+ Q_OBJECT
+public:
+ ShortcutDialog(const QString &key, QWidget *parent = 0);
+
+ ~ShortcutDialog();
+
+ const QString key();
+
+protected:
+ virtual void keyPressEvent (QKeyEvent *event);
+
+private:
+ Ui::ShortcutDialog m_ui;
+
+};
+
+#endif
diff --git a/src/plugins/Ui/qsui/shortcutitem.cpp b/src/plugins/Ui/qsui/shortcutitem.cpp
new file mode 100644
index 000000000..058136391
--- /dev/null
+++ b/src/plugins/Ui/qsui/shortcutitem.cpp
@@ -0,0 +1,39 @@
+/***************************************************************************
+ * 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QAction>
+#include "actionmanager.h"
+#include "shortcutitem.h"
+
+ShortcutItem::ShortcutItem(QTreeWidgetItem *parent, int type) : QTreeWidgetItem(parent, QStringList()
+ << ActionManager::instance()->action(type)->text().remove("&")
+ << ActionManager::instance()->action(type)->shortcut())
+{
+ m_action = ActionManager::instance()->action(type);
+ setIcon(0, m_action->icon());
+}
+
+ShortcutItem::~ShortcutItem()
+{}
+
+QAction *ShortcutItem::action()
+{
+ return m_action;
+}
diff --git a/src/plugins/Ui/qsui/shortcutitem.h b/src/plugins/Ui/qsui/shortcutitem.h
new file mode 100644
index 000000000..d3474baec
--- /dev/null
+++ b/src/plugins/Ui/qsui/shortcutitem.h
@@ -0,0 +1,44 @@
+/***************************************************************************
+ * 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef SHORTCUTITEM_H
+#define SHORTCUTITEM_H
+
+#include <QTreeWidgetItem>
+
+class QWidget;
+class QAction;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class ShortcutItem : public QTreeWidgetItem
+{
+public:
+
+ ShortcutItem(QTreeWidgetItem *parent, int type);
+ ~ShortcutItem();
+ QAction *action();
+
+private:
+ QAction *m_action;
+
+};
+
+#endif //SHORTCUTITEM_H
diff --git a/src/plugins/Ui/qsui/toolbareditor.cpp b/src/plugins/Ui/qsui/toolbareditor.cpp
new file mode 100644
index 000000000..7abfc6710
--- /dev/null
+++ b/src/plugins/Ui/qsui/toolbareditor.cpp
@@ -0,0 +1,185 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QApplication>
+#include <QSettings>
+#include <qmmp/qmmp.h>
+#include "toolbareditor.h"
+#include "ui_toolbareditor.h"
+
+ToolBarEditor::ToolBarEditor(QWidget *parent) :
+ QDialog(parent),
+ m_ui(new Ui::ToolBarEditor)
+{
+ m_ui->setupUi(this);
+ m_ui->upToolButton->setIcon(qApp->style()->standardIcon(QStyle::SP_ArrowUp));
+ m_ui->downToolButton->setIcon(qApp->style()->standardIcon(QStyle::SP_ArrowDown));
+ m_ui->addToolButton->setIcon(qApp->style()->standardIcon(QStyle::SP_ArrowRight));
+ m_ui->removeToolButton->setIcon(qApp->style()->standardIcon(QStyle::SP_ArrowLeft));
+ connect(m_ui->actionsListWidget->model(), SIGNAL(rowsAboutToBeRemoved(const QModelIndex &,int,int)),
+ SLOT(onRowsAboutToBeRemoved(const QModelIndex &, int, int)));
+ connect(m_ui->activeActionsListWidget->model(), SIGNAL(rowsAboutToBeRemoved(const QModelIndex &,int,int)),
+ SLOT(onRowsAboutToBeRemoved(const QModelIndex &, int, int)));
+ populateActionList();
+}
+
+ToolBarEditor::~ToolBarEditor()
+{
+ delete m_ui;
+}
+
+void ToolBarEditor::accept()
+{
+ QStringList names;
+ for(int row = 0; row < m_ui->activeActionsListWidget->count(); ++row)
+ names.append(m_ui->activeActionsListWidget->item(row)->data(Qt::UserRole).toString());
+
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ settings.setValue("Simple/toolbar_actions", names);
+ QDialog::accept();
+}
+
+void ToolBarEditor::populateActionList(bool reset)
+{
+ QStringList names = ActionManager::instance()->toolBarActionNames();
+ if(!reset)
+ {
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
+ names = settings.value("Simple/toolbar_actions", names).toStringList();
+ }
+
+ for(int id = ActionManager::PLAY; id <= ActionManager::QUIT; ++id)
+ {
+ QAction *action = ACTION(id);
+ if(action->icon().isNull())
+ continue;
+ QListWidgetItem *item = new QListWidgetItem();
+ item->setIcon(action->icon());
+ item->setText(action->text().replace("&", ""));
+ item->setData(Qt::UserRole, action->objectName());
+ if(!names.contains(action->objectName()))
+ m_ui->actionsListWidget->addItem(item);
+ }
+
+ {
+ QListWidgetItem *item = new QListWidgetItem();
+ item->setText("-- " + tr("Separator") + " --");
+ item->setData(Qt::UserRole, "separator");
+ m_ui->actionsListWidget->addItem(item);
+ }
+
+ foreach (QString name, names)
+ {
+ QAction *action = ActionManager::instance()->findChild<QAction *>(name);
+ if(action)
+ {
+ QListWidgetItem *item = new QListWidgetItem();
+ item->setIcon(action->icon());
+ item->setText(action->text().replace("&", ""));
+ item->setData(Qt::UserRole, action->objectName());
+ m_ui->activeActionsListWidget->addItem(item);
+ }
+ else if(name == "separator")
+ {
+ QListWidgetItem *item = new QListWidgetItem();
+ item->setText("-- " + tr("Separator") + " --");
+ item->setData(Qt::UserRole, "separator");
+ m_ui->activeActionsListWidget->addItem(item);
+ }
+ }
+}
+
+void ToolBarEditor::on_addToolButton_clicked()
+{
+ int row = m_ui->actionsListWidget->currentRow();
+ if(row > -1)
+ {
+ QListWidgetItem *item = m_ui->actionsListWidget->takeItem(row);
+ m_ui->activeActionsListWidget->addItem(item);
+ }
+}
+
+void ToolBarEditor::on_removeToolButton_clicked()
+{
+ int row = m_ui->activeActionsListWidget->currentRow();
+ if(row > -1)
+ {
+ QListWidgetItem *item = m_ui->activeActionsListWidget->takeItem(row);
+ m_ui->actionsListWidget->addItem(item);
+ }
+}
+
+void ToolBarEditor::on_upToolButton_clicked()
+{
+ int row = m_ui->activeActionsListWidget->currentRow();
+ if(row > 0)
+ {
+ QListWidgetItem *item = m_ui->activeActionsListWidget->takeItem(row);
+ m_ui->activeActionsListWidget->insertItem(row - 1, item);
+ m_ui->activeActionsListWidget->setCurrentItem(item);
+ }
+}
+
+void ToolBarEditor::on_downToolButton_clicked()
+{
+ int row = m_ui->activeActionsListWidget->currentRow();
+ if(row > -1 && row < m_ui->activeActionsListWidget->count())
+ {
+ QListWidgetItem *item = m_ui->activeActionsListWidget->takeItem(row);
+ m_ui->activeActionsListWidget->insertItem(row + 1, item);
+ m_ui->activeActionsListWidget->setCurrentItem(item);
+ }
+}
+
+void ToolBarEditor::on_resetPushButton_clicked()
+{
+ m_ui->actionsListWidget->clear();
+ m_ui->activeActionsListWidget->clear();
+ populateActionList(true);
+}
+
+void ToolBarEditor::onRowsAboutToBeRemoved(const QModelIndex &, int start, int)
+{
+ if(sender() == m_ui->actionsListWidget->model())
+ {
+ //recreate separator
+ QListWidgetItem *item = m_ui->actionsListWidget->item(start);
+ if(item && item->data(Qt::UserRole).toString() == "separator")
+ m_ui->actionsListWidget->addItem(item->clone());
+ }
+ else if(sender() == m_ui->activeActionsListWidget->model())
+ {
+ //remove separator
+ QListWidgetItem *item = m_ui->activeActionsListWidget->item(start);
+ if(item && item->data(Qt::UserRole).toString() == "separator")
+ {
+ for(int i = 0; i < m_ui->actionsListWidget->count(); ++i)
+ {
+ if(m_ui->actionsListWidget->item(i)->data(Qt::UserRole).toString() == "separator")
+ {
+ m_ui->actionsListWidget->model()->blockSignals(true);
+ delete m_ui->actionsListWidget->takeItem(i);
+ m_ui->actionsListWidget->model()->blockSignals(false);
+ break;
+ }
+ }
+ }
+ }
+}
diff --git a/src/plugins/Ui/qsui/toolbareditor.h b/src/plugins/Ui/qsui/toolbareditor.h
new file mode 100644
index 000000000..ba9d34216
--- /dev/null
+++ b/src/plugins/Ui/qsui/toolbareditor.h
@@ -0,0 +1,59 @@
+/***************************************************************************
+ * Copyright (C) 2013 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#ifndef TOOLBAREDITOR_H
+#define TOOLBAREDITOR_H
+
+#include <QDialog>
+#include <QModelIndex>
+#include "actionmanager.h"
+
+namespace Ui {
+class ToolBarEditor;
+}
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class ToolBarEditor : public QDialog
+{
+ Q_OBJECT
+
+public:
+ explicit ToolBarEditor(QWidget *parent = 0);
+ ~ToolBarEditor();
+
+public slots:
+ void accept();
+
+private slots:
+ void on_addToolButton_clicked();
+ void on_removeToolButton_clicked();
+ void on_upToolButton_clicked();
+ void on_downToolButton_clicked();
+ void on_resetPushButton_clicked();
+ void onRowsAboutToBeRemoved(const QModelIndex &, int start, int);
+
+private:
+ void populateActionList(bool reset = false);
+ Ui::ToolBarEditor *m_ui;
+};
+
+#endif // TOOLBAREDITOR_H
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_bg.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_bg.ts
new file mode 100644
index 000000000..7ffeca259
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_bg.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="bg_BG">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_cs.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_cs.ts
new file mode 100644
index 000000000..01d2a8538
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_cs.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="cs">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>O QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Jednoduché uživatelské rozhraní pro Qmmp (QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Verze Qmmp: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Verze QSUI: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Jednoduché uživatelské rozhraní založené na standardní sadě prvků.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>Pře&amp;hrát</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>Pau&amp;za</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>Za&amp;stavit</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Předchozí</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Následující</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Přehrát/Pauza</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Mezerník</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Skok na stopu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Opakovat seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Opakovat stopu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>Za&amp;míchat</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Nepostupovat v seznamu skladeb</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>Za&amp;stavit po výběru</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Vyčistit frontu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Vždy na vrchu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Na všechny pracovní plochy</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>Přidat &amp;soubor</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>Přidat &amp;adresář</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>Přidat &amp;URL</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Odstranit vybrané</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>Odstranit &amp;vše</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Odstranit &amp;nevybrané</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Odstranit nedostupné soubory</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Odstranit duplicity</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>Do/z &amp;fronty</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Invertovat výběr</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Zrušit výběr</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Vybrat vše</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>Zobrazit &amp;informace o skladbě</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Nový seznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>O&amp;dstranit seznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>Načíst &amp;seznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Uložit seznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;Přejmenovat seznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>Vybrat další &amp;seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+PageDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>Vybrat předchozí &amp;seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+PageUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Ekvalizér</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Ctrl+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Nastavení</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;O modulu Ui</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>O &amp;aplikaci</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>O knihovně &amp;Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>U&amp;končit</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Vyberte barvu</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Ekvalizér</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Povolit ekvalizér</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Předvolba:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Uložit</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Smazat</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Obnovit</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Předzesílení</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1 dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1 dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>předvolba</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Žádost o přepsání</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Předvolba ‚%1‘ již existuje. Přepsat?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished">Obnovit</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">Přehrávání</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Zobrazení</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">Hlasitost</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Soubor</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>Nás&amp;troje</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Nápověda</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>Ú&amp;pravy</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Přehrávání</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>Po&amp;hled</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Přehrávání</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Postup</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished">Obal</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Předchozí</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Přehrát</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Pozastavit</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Další</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Zastavit</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>Přidat &amp;soubor</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>Odstranit &amp;vše</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Nový seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Odstranit seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>Přidat &amp;adresář</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>U&amp;končit</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>O programu</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>O Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Vybrat vše</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Odstranit vybrané</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Odstranit &amp;nevybrané</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Vizualizace</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Nastavení</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Přejmenovat seznam skladeb</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Hlasitost</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Pozastaveno</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Zastaveno</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Název seznamu skladeb:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Vzhled</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Přehrává se</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Seřadit seznam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>Podle názvu skladby</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>Podle alba</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>Podle umělce</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>Podle názvu souboru</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>Podle cesty a názvu souboru</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>Podle data</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>Podle čísla skladby</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>Podle čísla disku</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>Podle data vytvoření souboru</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Seřadit výběr</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Zamíchat seznam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Obrátit pořadí seznamu</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Činnosti</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Načítám: %1 %</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Nastavení vyskakovacích informací</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Šablona</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Obnovit</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Vložit</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Zobrazit obal</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Velikost obalu:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Průhlednost:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Prodleva:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ms</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Umělec</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>Album</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Název</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Žánr</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Poznámka</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Skladatel</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Délka</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Rok</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Stav</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Jednoduché uživatelské rozhraní</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Zobrazení</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Skrýt při zavření</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Spustit skryté</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Písma</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Zobrazení skladby</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Zobrazit protokol</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Zobrazit čísla skladeb</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Zarovnat čísla skladeb</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Zobrazit kotvu</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Zobrazit informace ve vyskakovacím okně</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Upravit šablonu</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Různé</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Barvy analyzéru</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Analyzér #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Špičky:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Analyzér #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Pozadí:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Analyzér #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Barvy seznamu skladeb</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Pozadí #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Normální text:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Pozadí #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Aktuální text:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Zvýrazněné pozadí:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Zvýrazněný text:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Použít systémové barvy</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">Umělec</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">Album</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">Název</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">Žánr</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">Poznámka</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">Skladatel</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">Délka</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">Rok</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">Stav</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Obal</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Špičky</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Obnovovací frekvence</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 s/s</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 s/s</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 s/s</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 s/s</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Pokles analyzéru</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Nejpomalejší</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Pomalý</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Střední</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Rychlý</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Nejrychlejší</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Pokles špiček</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Změnit zkratku</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Stlačte kombinaci kláves, kterou chcete přiřadit</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Vymazat</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished">Obnovit</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Vizualizace</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_de.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_de.ts
new file mode 100644
index 000000000..26e964e61
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_de.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="de">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>Über QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Qmmp Einfache Benutzeroberfläche (QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Qmmp-Version: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>QSUI-Version: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Einfache Benutzeroberfläche basiert auf einem Standard-Steuerelementsatz.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Wiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Pause</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Stopp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Vorheriger Titel</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Nächster Titel</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>Wieder&amp;gabe/Pause</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Leertaste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Zu Titel springen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>Dateien &amp;wiedergeben</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>W&amp;iedergabeliste wiederholen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>Tite&amp;l wiederholen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Strg+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Zufallswiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>Kei&amp;n voranschreiten in der Wiedergabeliste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Strg+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>Wiedergabe nach dem ausgewählten Titel &amp;stoppen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Strg+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>Wartes&amp;chlange löschen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Immer im Vordergrund</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Auf allen Arbeitsflächen anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Reiter anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Titelleisten anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Werkzeugleisten sperren</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Lautstärke &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation>0</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Lautstärke &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation>9</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>Stu&amp;mm</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Datei hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Verzeichnis hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;URL hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Ausgewählte entfernen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Entf</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>Alle &amp;entfernen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Nicht ausgewählte entfernen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Nichtverfügbare Dateien entfernen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Duplikate entfernen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>Zur &amp;Warteschlange hinzufügen/Aus der Warteschlange entfernen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Auswahl umkehren</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Auswahl aufheben</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>Alle aus&amp;wählen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Strg+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Titeldetails anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Neue Wiedergabeliste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Strg+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>Wie&amp;dergabeliste löschen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Strg+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>Wiedergabeliste &amp;laden</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>Wiedergabeliste &amp;speichern</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Umschalt+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>Wiede&amp;rgabeliste umbenennen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation>F2</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>Näch&amp;ste Wiedergabeliste auswählen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Strg+Bild ab</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>Vorherige Wiedergabeli&amp;ste auswählen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Strg+Bild auf</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation>Strg+G</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation>Titel &amp;gruppieren</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation>Strg+H</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation>&amp;Spaltenüberschriften anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Equalizer</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Strg+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>Ein&amp;stellungen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Strg+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;Über Ui</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>Ü&amp;ber</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>Übe&amp;r Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>Be&amp;enden</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Strg+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Farbe auswählen</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;Speichern als...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Hülle speichern als</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Bilder</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Equalizer</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Equalizer aktivieren</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Voreinstellung:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Speichern</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Löschen</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Zurücksetzen</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Vorverstärker</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>Voreinstellung</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Überschreiben nachfragen</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Voreinstellung &apos;%1&apos; ist bereits vorhanden. Überschreiben?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Zur Wiedergabeliste hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Verzeichnis wechseln</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Verzeichnis auswählen</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation>Zurücksetzen</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation>Aktion</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation>Kurzbefehl</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation>Kurzbefehl ändern …</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation>Kurzbefehle zurücksetzen</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation>Möchten Sie die Standard-Kurzbefehle wiederherstellen?</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation>Wiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation>Ansicht</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation>Lautstärke</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation>Wiedergabeliste</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation>Verschiedenes</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Datei</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>We&amp;rkzeuge</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Hilfe</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Bearbeiten</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Wiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Ansicht</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Wiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Fortschritt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Spektrumanalysator</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Dateien</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Hülle</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Wiedergabelisten</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Vorheriger Titel</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Wiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Pause</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Nächster Titel</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Stopp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Datei hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>Alle &amp;entfernen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Neue Wiedergabeliste</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Wiedergabeliste entfernen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Verzeichnis hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>Be&amp;enden</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>Über</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>Über Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>Alle aus&amp;wählen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Ausgewählte entfernen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Nicht ausgewählte entfernen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Visualisierung</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Einstellungen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Wiedergabeliste umbenennen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Lautstärke</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|%2 Bit|%3 Kan.|%4 Hz|Titel: %5|Gesamtzeit: %6|%7 kbit/s|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Pausiert</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|Titel: %2|Gesamtzeit: %3|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Gestoppt</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Wiedergabelistenname:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Erscheinungsbild</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation>Kurzbefehle</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Wiedergabe</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation>Strg+0</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation>P</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Werkzeugleiste bearbeiten</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Wiedergabeliste sortieren</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>Nach Titel</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>Nach Album</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>Nach Interpret</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation>Nach Albuminterpret</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>Nach Dateinamen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>Nach Pfad &amp; Dateinamen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>Nach Datum</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>Nach Titelnummer</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>Nach Disc-Nummer</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>Nach Dateierstellungsdatum</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation>Nach Dateiänderungsdatum</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>Nach Gruppe</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Auswahl sortieren</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Wiedergabeliste mischen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Wiedergabeliste umkehren</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Aktionen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Neue Wiedergabeliste hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Alle Reiter anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Pufferung: %1 %</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation>Spalte hinzufügen</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation>Spalte bearbeiten</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation>Warteschlange/Protokoll anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation>Automatische Größenänderung</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation>Spalte entfernen</translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Einstellungen Aufklapp-Informationen</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Vorlage</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Zurücksetzen</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Einfügen</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Hülle anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Hüllengröße:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Transparenz:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Verzögerung:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ms</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Interpret</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>Album</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation>Albuminterpret</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Titel</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation>Titelnummer</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation>Zweistellige Titelnummer</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation>Disc-Nummer</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation>Dateiname</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation>Dateipfad</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Genre</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Kommentar</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Komponist</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Abspieldauer</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Jahr</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Zustand</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Einfache Benutzeroberfläche</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Ansicht</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Beim Schließen in den Systemabschnitt der Kontrollleiste minimieren</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Minimiert starten</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Schriftarten</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation>Systemschriftarten verwenden</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation>Wiedergabeliste:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>…</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation>Hauptfenster</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation>Fenstertitelformat:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Titelanzeige</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Protokoll anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Titelnummern anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation>Titellängen anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Titelnummern ausrichten</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Anker anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Informationen in einem Aufklapp-Fenster anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Vorlage bearbeiten</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation>Schriftarten zurücksetzen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation>Spaltenüberschriften:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation>Reiternamen:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Verschiedenes</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Analysatorfarben</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation>Einzelspaltenmodus</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation>Farben</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Analysator #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Spitzenwerte:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Analysator #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Hintergrund:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Analysator #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Wiedergabelistenfarben</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Hintergrund #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Normaler Text:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Hintergrund #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Aktueller Text:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Hervorgehobener Hintergrund:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Hervorgehobener Text:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Systemfarben verwenden</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation>Gruppenhintergrund:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation>Gruppentext:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Reiter</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Schließen-Schaltflächen anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Reiterlistenmenü anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Schaltfläche &apos;Neue Wiedergabeliste&apos; anzeigen</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation>Interpret</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation>Album</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation>Albuminterpret</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation>Titel</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation>Titelnummer</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation>Zweistellige Titelnummer</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation>Genre</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation>Kommentar</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation>Komponist</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation>Abspieldauer</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation>Disc-Nummer</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation>Dateiname</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation>Dateipfad</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation>Jahr</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation>Zustand</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation>Interpret - Titel</translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Hülle</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Spitzenwerte</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Aktualisierungsrate</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Analysator-Abfall</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Langsamste</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Langsam</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Mittel</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Schnell</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Schnellste</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Abfallen der Spitzenwerte</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Kurzbefehl ändern</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Drücken Sie die Tastenkombination, die Sie verwenden möchten</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Löschen</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Werkzeugleisteneditor</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Zurücksetzen</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Trennzeichen</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Visualisierung</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_el.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_el.ts
new file mode 100644
index 000000000..21b7357e7
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_el.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="el_GR">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_en.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_en.ts
new file mode 100644
index 000000000..df03ac12d
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_en.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="en_US">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_es.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_es.ts
new file mode 100644
index 000000000..66b4d5402
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_es.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="es">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Reproducir</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Pausar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Detener</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Anterior</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Siguiente</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Reproducir/Pausar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Espacio</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Repetir la lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Repetir pista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Revolver</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;No avanzar en la lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Parar tras los seleccionados</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Limpiar la Cola</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Siempre encima</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Ver en todos los escritorios</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Añadir archivo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Añadir directorio</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;Añadir URL</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Eliminar los seleccionados</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Supr</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Eliminar todo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Eliminar los no seleccionados</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Eliminar los archivos no disponibles</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Eliminar los duplicados</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;Cambiar de cola</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Invertir la selección</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;No seleccionar nada</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Seleccionar todo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Ver detalles de la pista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Lista nueva</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Borrar la lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Cargar una lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Guardar la lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>&amp;Seleccionar la lista siguiente</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+AvPág</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>&amp;Seleccionar la lista anterior</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+RePág</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Configuración</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;Acerca de</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;Acerca de Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Salir</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Ver</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista de reproducción</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Aspecto</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Ordenar la lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Por título</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished">Por album</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished">Por intérprete</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Por nombre de archivo</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Por ruta + nombre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Por fecha</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Por número de pista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Ordenar la selección</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Lista aleatoria</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Invertir la lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">Acciones</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">Anterior</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">Reproducir</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">Pausar</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">Siguiente</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">Detener</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Añadir archivo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Eliminar todo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Añadir directorio</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Salir</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Seleccionar todo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Eliminar los seleccionados</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Eliminar los no seleccionados</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Visualización</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished">Renombrar lista</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished">Ver</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Esconder al cerrar</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Iniciar oculto</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Fuentes</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Mostrar la canción</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">Motrar protocolo</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">Mostrar los números de canción</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished">Alinear los números de canción</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished">Mostrar ancla</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished">Mostrar información emergente</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished">Editar la plantilla</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Visualización</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_fr.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_fr.ts
new file mode 100644
index 000000000..6b3257253
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_fr.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="fr">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">&amp;Jouer</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished">X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">&amp;Pause</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished">C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">&amp;Arrêter</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished">V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">&amp;Précédent</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished">Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">&amp;Suivant</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished">B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">&amp;Jouer / Pause</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished">Espace</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished">J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Ajouter un fichier</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished">F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Ajouter un dossier</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished">D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">&amp;Ajouter un flux internet</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished">U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Supprimer la sélection</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished">Suppr</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Tout supprimer</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Ne garder que la sélection</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished">Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">Inverser la sélection</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">&amp;Ne rien sélectionner</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Tout sélectionner</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished">Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">&amp;Afficher les détails du morceau</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished">Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">&amp;Nouvelle liste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">&amp;Charger une liste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished">O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">&amp;Enregistrer une liste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished">Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Configuration</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">&amp;À propos</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">&amp;À propos de Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Quitter</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Liste de lecture</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Ajouter un fichier</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Tout supprimer</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Ajouter un dossier</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Quitter</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished">À propos</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Tout sélectionner</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Supprimer la sélection</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Ne garder que la sélection</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Visualisation</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Apparence</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Trier la liste</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Par titre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Par nom de fichier</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Par emplacement + nom de fichier</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Par date</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Par numéro de piste</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Trier la sélection</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Mélanger la liste</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Inverser la liste</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished">Artiste</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished">Album</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished">Titre</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished">Genre</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished">Commentaire</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished">Année</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Masquer à la fermeture</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Démarrer masqué</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Polices</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Affichage du morceau</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">Artiste</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">Album</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">Titre</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">Genre</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">Commentaire</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">Année</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Visualisation</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_gl_ES.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_gl_ES.ts
new file mode 100644
index 000000000..ee264b528
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_gl_ES.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="gl_ES">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_he.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_he.ts
new file mode 100644
index 000000000..fb5fecc41
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_he.ts
@@ -0,0 +1,1559 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="he_IL">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>אודות QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>ממשק משתמש פשוט של Qmmp ‏(QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>גירסת Qmmp:‏ &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>גירסת QSUI:‏ &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>ממשק משתמש פשוט מבוסס על מערך וידג׳טים סטנדרטי.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;נגן</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>ה&amp;שהה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>ה&amp;פסק</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>ה&amp;קודם</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>ה&amp;בא</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>נ&amp;גן/השהה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>רווח</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>קפוץ אל &amp;רצועה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>&amp;נגן קבצים</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>הוס&amp;ף קובץ</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>חזור על ר&amp;שימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>חזור על ר&amp;צועה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;ערבב</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;אל תחיש רשימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>ה&amp;פסק עובר נבחרת</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;טהר תור</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>תמיד עליון</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translatorcomment>חללי</translatorcomment>
+ <translation>השם בכל מרחב עבודה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>הצג כרטיסיות</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>הצג שורות כותרת</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>עוצמת קול &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>עוצמת קול &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>ה&amp;שתק</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>הוסף &amp;מדור</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>הוסף &amp;Url</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>הסר &amp;נבחרות</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>הסר ה&amp;כל</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>הסר את שלא נ&amp;בחרו</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>הסר קבצים לא זמינים</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>הסר כפילויות</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;תור</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>הפוך בחירה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;בחר כלום</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;בחר הכל</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;צפה בפרטי רצועה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>רשימה &amp;חדשה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;מחק רשימה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;טען רשימה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;שמור רשימה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;שנה שם רשימה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>בחר רשימת נגינה &amp;באה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>בחר רשימת נגינה &amp;קודמת</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;אקולייזר</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;הגדרות</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>אודות &amp;Ui</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;אודות</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>אודות &amp;Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>י&amp;ציאה</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>בחר צבע</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;שמירה בשם...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>שמירת כיסוי בתור</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>תמונות</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>אקולייזר</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>אפשר אקולייזר</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>קבוע מראש:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>שמור</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>מחק</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>אפס</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>מגבר קדמי</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1דציבל</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1דציבל</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>קבוע מראש</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>החלף בקשה</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>קבוע מראש &apos;%1&apos; כבר קיים. להחליף?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>הוסף אל רשימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>בחר מדור</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>שנה מדור</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished">אפס</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished">פעולה</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished">קיצור דרך</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished">שנוי קיצור דרך...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">פס קול</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">תצוגה</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">עוצמת קול</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">רשימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished">שונות</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;קובץ</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;כלים</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;עזרה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>ע&amp;ריכה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;פס קול</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;תצוגה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>פס קול</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>התקדמות</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>מאבחן ספקטרום</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>קבצים</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>כיסוי</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>רשימות נגינה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>הקודם</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>נגן</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>השהה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>הבא</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>הפסק</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>הוסף &amp;קובץ</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;הסר הכל</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>רשימת נגינה חדשה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>הסר רשימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>הוסף &amp;מדור</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>י&amp;ציאה</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>אודות</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>אודות Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;בחר הכל</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>הסר &amp;נבחרות</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>הסר את שלא נ&amp;בחרו</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>חיזוי</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>הגדרות</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>שנה שם רשימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>עוצמת קול</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>השהה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>הופסקה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>שם רשימת נגינה:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>הופעה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished">קיצורי דרך</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>מנגן</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>עורך סרגל כלים</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>מיין רשימה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>לפי כותרת</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>לפי אלבום</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>לפי אמן</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>לפי שם קובץ</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>לפי נתיב + שם קובץ</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>לפי תאריך</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>לפי מספר רצועה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>לפי מספר תקליטור</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>לפי תאריך יצירת קובץ</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>לפי קבוצה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>מיין נבחרות</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>הפוך רשימה לאקראית</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>הפוך רשימה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>פעולות</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>הוסף רשימת נגינה חדשה</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>הצג את כל הכרטיסיות</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>אוגר כעת: %1%</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>הגדרות מידע מוקפץ</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>תבנית</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>אפס</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>שבץ</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>הצגת כיסוי</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>מידת כיסוי:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>שקיפות:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>שיהוי:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>מ״ש</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>אמן</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>אלבום</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>כותרת</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>ז&apos;אנר</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>הערה</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>מלחין</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>משך</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>שנה</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>תנאי</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>ממשק משתמש פשוט</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>תצוגה</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>הסתר בעת סגירה</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>התחל מוסתר</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>גופנים</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>תצוגת שיר</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>הצג פרוטוקול</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>הצג מספרי שיר</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>ישר מספרי שורות</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>הצג עוגן</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>הצג מידע מוקפץ</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>ערוך תבנית</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>כרטיסיות</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>הצג לחצני סגירה</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>הצג תפריט רשימת כרטיסייה</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>הצג לחתן &apos;רשימת נגינה חדשה&apos;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>שונות</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>צבעי מאבחן</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>מאבחן ראשון:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>שיאים:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>מאבחן שני:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>רקע אחורי:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>מאבחן שלישי:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>צבעי רשימת נגינה</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>השתמש בצבעי מערכת</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>רקע ראשון:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>טקסט רגיל:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>רקע שני:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>טקסט נוכחי:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>רקע אחורי מודגש:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>טקסט מודגש:</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">אמן</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">אלבום</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">כותרת</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">ז&apos;אנר</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">הערה</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">מלחין</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">משך</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">שנה</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">תנאי</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>כיסוי</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>שיאים</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>שיעור רענון</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>נפילת מאבחן</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>הכי איטי</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>איטי</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>רגיל</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>מהיר</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>הכי מהיר</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>נפילת שיאים</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>שנה קיצור דרך</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>הזן את צירוף המקשים שברצונך להקצות</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>טהר</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>עורך סרגל כלים</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>אפס</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>חוצץ</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>חיזוי</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_hu.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_hu.ts
new file mode 100644
index 000000000..960d8fa01
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_hu.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="hu_HU">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">&amp;Lejátszás</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished">X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">&amp;Szünet</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished">C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">&amp;Megállítás</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished">V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">&amp;Előző</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished">Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">&amp;Következő</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished">B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">&amp;Lejátszás/Szünet</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished">Szóköz</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished">J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished">Lista &amp;ismétlése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished">Számok i&amp;smétlése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished">Crtl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished">&amp;Véletlenszerű</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished">S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Fájl hozzáadása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished">F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Könyvtár hazááadása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished">D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">&amp;Url hozzáadása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished">U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Megjelöltek eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished">Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Összes eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Jelöletlenek eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished">Elérhetetlen fájlok eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished">Duplikációk eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished">Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">Fordított kijelölés</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">&amp;Kijelölés megszűntetése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Összes kijelölése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished">Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">Szám adatainak &amp;megnézése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished">Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">&amp;Új lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished">Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished">&amp;Lista törlése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished">Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">&amp;Lista betöltése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished">O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">Lista &amp;mentése</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished">Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished">&amp;Következő lista választása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished">Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished">&amp;Előző lista választása</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished">Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Beállítások</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">&amp;Névjegy</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">N&amp;évjegy: Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Kilépés</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Megnéz</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lejátszási lista</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Megjelenés</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Lista rendezése</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Cím szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished">Album szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished">Előadó szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Fájlnév szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Elérési út és fájlnév szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Dátum szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Zene sorszáma szerint</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Jelöltek rendezése</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Lista összekeverése</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Fordított lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">Tevékenységek</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">Előző</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">Lejátszás</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">Szünet</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">Következő</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">Megállít</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Fájl hozzáadása</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Összes eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Könyvtár hazááadása</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Kilépés</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Összes kijelölése</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Megjelöltek eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Jelöletlenek eltávolítása</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Vizualizáció</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished">Lista átnevezése</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished">Megnéz</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Elrejtés bezáráskor</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Rejtve induljon</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Betűtípus</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Szám kijelző</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">Protokol mutatása</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">Zene sorszámának mutatása</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished">Felugró információk mutatása</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Vizualizáció</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_it.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_it.ts
new file mode 100644
index 000000000..676b0d7de
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_it.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="it">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">&amp;Esegui</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished">X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">&amp;Pausa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished">C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">&amp;Arresta</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished">V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">&amp;Precedente</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished">Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">&amp;Successivo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished">B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">&amp;Esegui / Pausa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished">Spazio</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished">J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished">&amp;Ripeti lista brani</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished">R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished">&amp;Ripeti brano</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished">Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished">&amp;Ordine casuale</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished">S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Aggiungi brani</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished">F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Aggiungi cartelle</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished">D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">&amp;Aggiungi URL</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished">U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Elimina la selezione</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished">Canc</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Elimina tutto</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Elimina i non selezionati</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished">Rimuovi files non disponibili</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished">Rimuovi duplicati</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished">Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">Inverti la selezione</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">&amp;Non scegliere alcun brano</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Seleziona tutto</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished">Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">&amp;Dettagli della traccia</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished">Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">&amp;Nuova lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished">Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished">&amp;Cancella lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished">Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">&amp;Carica lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished">O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">&amp;Salva lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished">Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished">&amp;Seleziona la successiva lista esecuzione brani</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished">Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished">&amp;Seleziona la rpecedente lista esecuzione brani</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished">Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Configurazione</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">&amp;Informazioni</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">&amp;Informazioni su Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Esci</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista brani</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Aspetto</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Riordina la lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Per titolo</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished">Per album</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished">PEr interprete</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Per titolo del brano</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">per percorso più titolo del brano</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Per data</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Per numero di traccia</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Riordina la selezione</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Mescola i brnai della lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Inverti la lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">Azioni</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">Brano precedente</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">Esegui</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">Sospendi</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">Brano successivo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">Ferma</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Aggiungi brani</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Elimina tutto</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Aggiungi cartelle</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Esci</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Seleziona tutto</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Elimina la selezione</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Elimina i non selezionati</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Visualizzazione</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished">Rinomina lista brani</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Nascondi alla chiusura</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Avvia nascosto</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Caratteri</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Mostra il brano</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">Motra protocollo</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">Mostra numero brani</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished">Mostra informazioni popup</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Visualizzazione</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_ja.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_ja.ts
new file mode 100644
index 000000000..cc101490e
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_ja.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="ja_JP">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>QSUI について</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>QMMP 簡易ユーザーインターフェイス (QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>QMMP のバージョン: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>QSUI のバージョン: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>簡易ユーザーインターフェイスは標準ウィジェットをもとに作られています。</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>再生(&amp;Y)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>一時停止(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>終止(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>前の曲(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>次の曲(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>再生/停止(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Space</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>指定のトラックまで移動(&amp;J)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>ファイルより再生(&amp;H)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>プレイリストを繰り返す(&amp;L)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>トラックを繰り返す(&amp;T)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>シャッフル(&amp;F)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>次の曲に進まず終止(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>選んだ曲を再生後に終止(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>キューを消去(&amp;C)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>常に前面へ</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>常に表示中のワークスペースに置く</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>ファイルを追加(&amp;F)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>タブを表示</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>タイトルバーを表示</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>ツールバーを固定</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>音量増加(&amp;+)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation>0</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>音量減少(&amp;-)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation>9</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>消音(&amp;M)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>ディレクトリを追加(&amp;D)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>URLを追加(&amp;U)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>選択したものを除去(&amp;V)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Delele</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>すべて除去(&amp;M)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>選択外のものを除去(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>無効なファイルを除去</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>重複分を除去</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>選んだ曲をキューに追加/キューから撤去</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>選択範囲を反転</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>選択を解除(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>すべて選択(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>トラックの詳細を表示(&amp;D)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>新規リスト(&amp;W)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>リストを削除(&amp;D)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>リストを読込(&amp;L)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>リストを保存(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>リストの名前を変更(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation>F2</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>次のプレイリストを選択(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>前のプレイリストを選択(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation>Ctrl+G</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation>トラックをグループ化(&amp;G)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation>Ctrl+H</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation>プレイリストにカラム表題を表示(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>イコライザー(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Ctrl+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>設定(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>ユーザーインターフェイスについて(&amp;U)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>QMMP について(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>Qt について(&amp;Q)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>終了(&amp;X)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>色を選択</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>名前を付けて保存(&amp;S)...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>名前を付けて表紙画像を保存</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>画像</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>イコライザー</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>イコライザー稼動</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>プリセット:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>保存</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>削除</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>リセット</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>プリアンプ</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>プリセット</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>上書き警告</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>既にプリセット「%1」があります。 これを上書きしますか?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>プレイリストに追加</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>ディレクトリーを選択</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>ディレクトリーを変更</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation>リセット</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation>動作</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation>ショートカット</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation>ショートカットを変更...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation>ショートカットをリセット</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation>ショートカットの設定をデフォルトに戻しますが、間違いありませんか。</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation>再生</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation>観容</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation>音量</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation>プレイリスト</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation>その他いろいろ</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>音量</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|全 %5 曲|総演奏時間: %6|%7 kbps|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>一時停止中断</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|全 %2 曲|総演奏時間: %3|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>終演</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>プレイリスト名:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>外観</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation>ショートカット</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>演奏中</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation>Ctrl+0</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation>P</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>ツールバーの設定変更</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>リストを並べ換え</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>タイトル名順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>アルバム名順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>アーティスト名順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation>アルバムのアーティスト名順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>ファイル名順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>パスとファイル名の順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>日付順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>トラック番号順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>ディスク番号順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>ファイルの作成日順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation>ファイルの加工日時順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>グループ名順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>選択範囲内で並び換え</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>リストを順不同に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>リストを逆順に</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>動作</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>新しいプレイリストを追加</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>すべてのタブを表示</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>バッファーへ先読み: %1%</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>QMMP</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>ファイル(&amp;F)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>ツール(&amp;T)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>ヘルプ(&amp;H)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>編集(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>再生(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>表示(&amp;V)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>再生</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>進捗</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>スペクトルアナライザー</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>ファイル</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>表紙画像</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>プレイリスト</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>前の曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>再生</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>一時停止</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>次の曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>終止</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>ファイルを追加(&amp;F)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>すべて除去(&amp;M)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>新しいプレイリスト</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>プレイリストを削除</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>ディレクトリを追加(&amp;D)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>終了(&amp;X)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>QMMP について</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>Qt について</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>すべて選択(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>選択したものを除去(&amp;V)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>選択外のものを除去(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>視覚効果</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>設定</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>プレイリスト名を変更</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation>カラムを追加</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation>カラムを編集</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation>キューやプロトコルを表示</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation>自動適正幅調整</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation>カラムを撤去</translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>情報吹き出しの設定</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>ひな型</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>リセット</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>挿入</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>表紙画像を表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>表紙画像の大きさ:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>透明度:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>残映時間:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ミリ秒</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>アーティスト</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>アルバム</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation>アルバムアーティスト</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>タイトル</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation>トラック番号</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation>トラック番号 数字2桁</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation>ディスク番号</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation>ファイル名</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation>ファイルパス</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>ジャンル</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>コメント</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>作曲者</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>演奏時間</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>年</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>定番</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>簡易ユーザーインターフェイス</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>観容</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>「閉じる」で隠す</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>開始時に隠す</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>書体</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation>システム共通フォントに拠る</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation>プレイリスト:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation>メインウィンドウ</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation>ウィンドウタイトルの書式:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>演題表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>プロトコルを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>曲番号つきで表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation>曲の長さを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>曲番号のみを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>アンカーを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>情報吹き出しを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>ひな型を編集</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation>色</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation>グループの背景色:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation>フォントをリセット</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation>カラム表題:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation>タブ名:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation>グループの文字色:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>タブ</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>閉じる[×]ボタンを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>タブリストメニュー[▼]を表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>新しいプレイリスト[+]ボタンを表示</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>その他いろいろ</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation>単一カラムのとき</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>アナライザーの配色</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>第一アナライザー:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>峰:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>第二アナライザー:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>背景:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>第三アナライザー:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>プレイリストの配色</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>システム標準の配色を使用</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>第一背景:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>通常のテキスト:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>第二背景:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>現在位置のテキスト:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>ハイライトした背景:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>ハイライトしたテキスト:</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation>アーティスト</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation>アルバム</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation>アルバムアーティスト</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation>タイトル</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation>トラック番号</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation>トラック番号 数字2桁</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation>ジャンル</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation>コメント</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation>作曲者</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation>演奏時間</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation>ディスク番号</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation>ファイル名</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation>ファイルパス</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation>年</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation>定番</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation>アーティスト - タイトル</translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>表紙画像</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>峰</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>再描画の頻度</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 フレーム毎秒</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 フレーム毎秒</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 フレーム毎秒</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 フレーム毎秒</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>アナライザー減衰速度</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>さらに遅く</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>遅く</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>適度</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>速く</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>さらに速く</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>ピーク減衰速度</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>ショートカットを変更</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>割り当てたいキーの組み合わせを押します</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>消去</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>ツールバーエディター</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>リセット</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>セパレーター</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>視覚効果</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_kk.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_kk.ts
new file mode 100644
index 000000000..0ea88fdb4
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_kk.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="kk_KZ">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">&amp;Ойнату</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">&amp;Аялдату</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">&amp;Тоқтату</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">Ал&amp;дыңғысы</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">&amp;Келесісі</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">О&amp;йнат/аялдат</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">Фа&amp;йлды қосу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished">Тізі&amp;мді қайталау</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished">Т&amp;ректі қайталау</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished">Ке&amp;з-келген ретпен</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">Бу&amp;маны қосу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">URL-д&amp;ы қосу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">Таңда&amp;лғанды өшіру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Барлығын өшіру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">Таң&amp;далмағанды өшіру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">Таңдауды кері айналдыру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">Т&amp;аңдауды алу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Барлығын таңдау</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">&amp;Ақпараты</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">&amp;Жаңа тізім</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">Ті&amp;зімді жүктеу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">Тізімді &amp;сақтау</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Баптаулары</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">&amp;Осы туралы</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">Qt т&amp;уралы</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Шығу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished">Эквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">Даусы</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Тізім</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">Алдыңғысы</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">Ойнату</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">Аялдату</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">Келесіге өту</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">Тоқтату</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">Фа&amp;йлды қосу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Барлығын өшіру</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">Бу&amp;маны қосу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Шығу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished">О программе</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Барлығын таңдау</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">Таңда&amp;лғанды өшіру</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">Таң&amp;далмағанды өшіру</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Визуализация</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished">Даусы</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Сыртқы түрі</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Сұрыптау</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Аты бойынша</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Файл аты бойынша</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Жолы мен файл аты бойынша</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Уақыты бойынша</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Трек нөмірі бойынша</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Таңдалғанды сұрыптау</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Тізімді араластыру</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Тізімді кері айналдыру</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">Әрекеттер</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished">Орындаушы</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished">Альбом</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished">Аты</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished">Жанры</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished">Қосымша</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished">Жылы</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Жабылғанда жасыру</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Жасырын түрінде қосылу</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Қаріптер</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Өлендер тізімі</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">Хаттаманы көрсету</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">Орындаушы</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">Альбом</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">Аты</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">Жанры</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">Қосымша</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">Жылы</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Визуализация</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_lt.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_lt.ts
new file mode 100644
index 000000000..d35bbe3d7
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_lt.ts
@@ -0,0 +1,1560 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="lt">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>Apie QSUI </translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Qmmp paprasta vartotojo sąsaja (QSUI) </translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Qmmp versija: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>QSUI versija: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Paprasta vartotojo sąsaja .</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Groti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Pristabdyti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Sustabdyti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Ankstesnis</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Sekantis</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Groti/Pristabdyti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Tarpas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Šokti į takelį</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>&amp;Groti failus</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Kartoti grojaraštį</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Kartoti takelį</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Sumaišyti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translatorcomment>?????</translatorcomment>
+ <translation>&amp;Nesislinkti grojaraščiu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Stabdyti po pasirinkto</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Išvalyti eilę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Visada viršuje</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Įkelti į visus darbastalius</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Pridėti bylą</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Rodyti korteles</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Rodyti pavadinimo juostas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Blokuoti įrankių juotas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Volume &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation>0</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Volume &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation>9</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>&amp;Nutildyti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Pridėti aplanką</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;Pridėti interneto adresą</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Pašalinti pasirinktus</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Pašalinti visus</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Pašalinti NEpasirinktus</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Pašalinti neesamas bylas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Pašalinti besidubliuojančius pavadinimus</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;Įtraukti į eilę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Apverstinis pasirinkimas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Nepasirinkti nei vieno</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Pasirinkti visus</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Takelio informacija</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Naujas sąrašas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Pašalinti sąrašą</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Įkelti sąrašą</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Išsaugoti sąrašą</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;Pervadinti sąrašą</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>&amp;Pasirinkti sekantį grojaraštį</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>&amp;Pasirinkti ankstesnį grojaraštį</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation>Ctrl+G</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Glotintuvas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Ctrl+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Nustatymai</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;Apie Ui</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;Apie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;Apie Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Išeiti</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Pasirinkti Spalvą</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;Išsaugoti kaip...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Išsaugoti viršelį kaip</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Paveikslėliai</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Glotintuvas</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Įjungti glotintuvą</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Išankstinis nustatymas:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>išsaugoti</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Ištrinti</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Ištrinti</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Stiprinimas</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>išankstinis nustatymas</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished">Prerrašyti užklausą</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>išankstinis nustatymas &apos;%1&apos; jau yra. Perrašyti? </translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Įkelti į grojąraštį</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Pasirinkti aplanką</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Pakeisti aplanką</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished">Ištrinti</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished">Veiksmas</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished">Trumpinys</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished">Keisti trumpinį...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">Grojimas</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Rodyti</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">Garsumas</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Grojaraštis</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished">Kiti</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Garsumas</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Pristabdyta</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Sustabdyta</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Grojąraščio pavadinimas:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Išvaizda</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished">Trumpiniai</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Grojama</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation>Ctrl+0</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation>P</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Taisyti įrankių juostą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Rūšiuoti sąrašą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>Pagal dainos pavadinimą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>Pagal albumą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>Pagal atlikėją</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>Pagal bylos pavadinimą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>Pagal kelią iki bylos ir pavadinimą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>Pagal datą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>Pagal takelio numerį</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>Pagal disko numerį</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>Pagal bylos sukūrimo laiką</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>Pagal grupę</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Rūšiuoti pasirinktus</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Sumaišyti sąrašą</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Apversti</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Veiksmai</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Pridėti naują grojąraštį</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Rodyti visas korteles</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Buferis: %1%</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Byla</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Įrankiai</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Pagalba</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Taisa</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Grojimas</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Rodyti</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Grojimas</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Progresas</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Spektro analizatorius</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Bylos</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Viršelis</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Grojaraščiai</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Ankstesnis</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Groti</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Pristabdyti</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Sekantis</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Sustoti</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Pridėti bylą</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Pašalinti visus</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Naujas grojaraštis</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Pašalinti grojaraštį</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Pridėti aplanką</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Išeiti</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>Apie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>Apie Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Pasirinkti visus</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Pašalinti pasirinktus</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Pašalinti NEpasirinktus</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Vizualizacija</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Nustatymai</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Pervadinti grojaraštį</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Iššokančios informacijos nustatymai</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Šablonas</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Ištrinti</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Įterpti</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Rodyti viršelį</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Viršelio dydis:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Permatomumas:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Uždelsimas:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ms</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Atlikėjas</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>Albumas</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Pavadinimas</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Žanras</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Komentaras</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Kompozitorius</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Trukmė</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Metai</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Būklė</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Paprasta vartotojo sąsaja</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Rodyti</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Paslėpti išjungus</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Įjungti paslėptą</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Šriftai</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Dainų sąrašas</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Rodyti bylos galūnę</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Rodyti takelių numerius</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Lygiuoti dainų numerius</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translatorcomment>???????????</translatorcomment>
+ <translation type="unfinished">Rodyti inkarą</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Rodyti iššokančią informaciją</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Taisyti šabloną</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Kortelės</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Rodyti užvėrimo mygtukus</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Rodyti kortelių sąrašo meniu</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Rodyti mygtuką &quot;Naujas grojaraštis&quot;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Kiti</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Analizatoriaus spalvos</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Analizatorius #1: </translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Pikai:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Analizatorius #2: </translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Fonas:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>ASnalizatorius #3: </translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Grojaraščio spalvos</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Naudoti sistemos spalvas</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Fonas #1: </translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Normalus textas:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Fonas #2: </translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Dabartinis textas:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Paryškintas fonas:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Paryškintas textas:</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">Atlikėjas</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">Albumas</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">Pavadinimas</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">Žanras</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">Komentaras</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">Kompozitorius</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">Trukmė</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">Metai</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">Būklė</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Viršelis</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Pikai</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Atnaujinimo dažnis</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 kps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 kps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 kps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 kps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished">Analizatoriaus nukritimas</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Lėčiausias</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Lėtas</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Vidutinis</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Freitas</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Greičiausias</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished">Pikų nukritimas</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Keisti trumpinį</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Paspausk klavišų kombinaciją, kurią nori priskirt</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Išvalyti</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>įrankių juostos redaktorius</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Ištrinti</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Skirtukas</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Vizualizacija</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_nl.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_nl.ts
new file mode 100644
index 000000000..fbb2179c8
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_nl.ts
@@ -0,0 +1,1560 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="nl">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>Over QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Qmmp Simpele Gebruikersinterface (QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Qmmp versie: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>QSUI versie: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Simpele gebruikersinterface gebasseerd op de set van standaard widgets.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Afspelen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Pauze</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Vorige</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Volgende</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Afspelen/Pauze</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Spatie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Ga naar Nummer</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Herhaal Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Herhaal Nummer</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Willekeurig</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Niet verschuiven in afspellinsg</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Stop na Geselecteerde</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Afspeellijst leeghalen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Altijd bovenaan</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Plaats op alle werkbladen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Voeg Bestand Toe</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Voeg Map toe</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;Voeg URL toe</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Verwijder Geselecteerd</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Verwijder Alles</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Verwijder Gedeselecteerde</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Verwijder afwezige bestanden</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Verwijder duplicaten</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;Rij schakelaar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Draai Selectie Om</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Selecteer Niets</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Selecteer Alles</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Bekijk Nummer Details</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Nieuwe Lijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Verwijder Lijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Laad Lijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Bewaar Lijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;Hernoem Lijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>&amp;Selecteer Volgende Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>&amp;Selecteer Vorige Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Instellingen</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;Over Ui</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;Over</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;Over Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Sluit</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Schakel equalizer in</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Terugzetten</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Voorversterken</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished">Terugzetten</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished">Actie</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished">Sneltoets</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished">Verander sneltoets...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">Afspelen</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Weergave</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">
+Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished">Overig</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Gepauzeerd</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Gestopt</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Vertoning</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished">Sneltoetsen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Spelen</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Sorteer Lijst</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>Op Titel</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>Op Album</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>Op Artiest</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>Op Bestandsnaam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>Op Pad + Bestandsnaam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>Op Datum</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>Op Lied Nummer</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>Op CD Nummer</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Sorteer Selectie</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Schud Lijst</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Draai Lijst Om</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Acties</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Bufferen: %1%</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Bestand</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Gereedschappen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Bewerk</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Afspelen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Weergave</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Afspelen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Voortgang</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Vorige</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Afspelen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Pauze</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Volgende</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Voeg Bestand Toe</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Verwijder Alles</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Nieuwe Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Verwijder Afspeellijst</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Voeg Map toe</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Sluit</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>Over</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>Over Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Selecteer Alles</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Verwijder Geselecteerd</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Verwijder Gedeselecteerde</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Visualisatie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>
+Instellingen</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Hernoem Afspeellijst</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Popup Informatie Instellingen</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Layout</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Terugzetten</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Invoegen</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Toon albumhoes</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Albumhoesgrootte:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Transparantie:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Vertraging:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Artiest</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Titel</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Commentaar</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Componist</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Duur</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Jaar</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Staat</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Simpele Gebruikersinterface</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Weergave</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Verberg bij sluit</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Start verborgen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Lettertypen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Nummer Weergave</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Laad protocol</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Toon liednummers</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Liednummers uitlijnen</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Toon verankering</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Toon popup informatie</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Bewerk layout</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Overig</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">Artiest</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">Titel</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">Commentaar</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">Componist</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">Duur</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">Jaar</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">Staat</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Verander sneltoets</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Druk de gewenste sneltoetscombinatie</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Leeghalen</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished">Terugzetten</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Visualisatie</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_pl_PL.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_pl_PL.ts
new file mode 100644
index 000000000..c84ff3a25
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_pl_PL.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="pl">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>O programie QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Prosty interfejs użytkownika Qmmp (QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Wersja Qmmp: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Wersja QSUI: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Prosty interfejs użytkownika oparty na standardowych widżetach.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Odtwarzaj</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Wstrzymaj</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Zatrzymaj</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Poprzedni</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Następny</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Odtwarzaj/Wstrzymaj</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Spacja</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Skocz do utworu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>Odtwarzaj &amp;Pliki</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>Powtó&amp;rz listę odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Powtórz utwór</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Losowo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>Zatrzymaj po aktualnie odtwarzanym utworze</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>Wy&amp;czyść kolejkę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Zawsze na wierzchu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Na wszystkie pulpity</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Dodaj plik</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Pokaż Karty</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Pokaż Pasek tytułowy</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Zablokuj Pasek narzędziowy</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Głośność &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Głośność &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>Wycisz</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>Dodaj &amp;katalog</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>Dod&amp;aj Url</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Usuń zaznaczone</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>Usuń &amp;wszystkie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Usuń &amp;niezaznaczone</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Usuń niedostępne pliki</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Usuń duplikaty</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>Dodaj do/Usuń z kolejki</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Odwróć zaznaczenie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Odznacz wszystkie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Zaznacz wszystkie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Pokaż informacje o pliku</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Nowa lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>Usuń listę o&amp;dtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Ładuj listę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Zapisz listę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;Zmień nazwę listy</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>Wybierz na&amp;stępną listę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>Wybierz poprzednią li&amp;stę</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Korektor</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Ustawienia</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;O UI</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;O programie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;O Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Wyjście</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Wybierz kolor</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>Zapisz jako...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Zapisz okładkę jako</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Obrazy</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Korektor</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Włącz korektor</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Profil:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Zapisz</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Usuń</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Reset</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>profil</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Nadpisz Żądanie</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Profil &apos;%1&apos; już istnieje. Nadpisać?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Dodaj do listy odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Wybierz Katalog</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Zmień Katalog</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished">Akcja</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished">Skrót klawiszowy</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished">Zmień skrót...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">Odtwarzanie</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Wygląd</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">Głośność</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished">Różne</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Głośność</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Wstrzymane</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Zatrzymane</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Nazwa listy odtwarzania:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Wygląd</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished">Skróty klawiszowe</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Odtwarzanie</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Edytuj Pasek narzędziowy</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Sortuj listę</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>Według nazwy</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>Według nazwy albumu</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>Według artysty</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>Według nazwy pliku</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>Według Ścieżki + Nazwy pliku</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>Wg Daty</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>Wg numeru utworu</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>Wg Numeru płyty</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>Wg Daty Utworzenia pliku</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>Wg Grupy</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Sortuj zaznaczone</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Tasuj listę</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Odwróć listę</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Akcje</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Dodaj nową listę odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Pokaż wszystkie karty</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Buforowanie: %1%</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Plik</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Narzędzia</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Pomoc</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Edycja</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Odtwarzanie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Wygląd</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Odtwarzanie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Postęp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Analizator Widma</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Pliki</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Okładka</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Listy odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Poprzedni</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Odtwarzaj</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Pauza</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Następny</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Zatrzymaj</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Dodaj plik</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>Usuń &amp;wszystkie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Nowa lista odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Usuń listę odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>Dodaj &amp;katalog</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Wyjście</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>O programie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>O programie QT</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Zaznacz wszystkie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Usuń zaznaczone</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Usuń &amp;niezaznaczone</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Wizualizacja</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Ustawienia</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Zmień nazwę listy</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>UStawienia inforamcji Popup</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Szablon</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Przywróć</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Wstaw</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Pokaż okładkę</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Rozmiar okładki:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Przezroczystość:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Opóźnienie:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Artysta</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Tytuł</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Gatunek</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Komentarz</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Kompozytor</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Długość</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Rok</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Warunek</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Prosty interfejs użytkownika</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Wygląd</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Zminimalizuj przy zamykaniu</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Uruchom zminimalizowany</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Czcionki</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Wyświetlanie utworu</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Pokaż protokół</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Wyświetl numery utworów na liście odtwarzania</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Wyrównaj w pionie numery utworów</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Pokaż kotwicę</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Pokaż informację popup</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Edytuj szablon</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Karty</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Pokaż przyciski zamykania</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Pokaż menu listy kart</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Pokaż przycisk &apos;Nowa lista odtwarzania&apos;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Inne</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Kolor Analizatora</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Analizator #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Piki:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Analizator #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Tło:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Analizator #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Kolory Listy Utworzenia</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Użyj systemowych kolorów</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Tło #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Normalny tekst:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Tło #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Aktualny tekst:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Uwydatnione tło:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Uwydatniony tekst:</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">Artysta</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">Tytuł</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">Gatunek</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">Komentarz</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">Kompozytor</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">Długość</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">Rok</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">Warunek</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Okładka</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Piki</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Odświeżanie</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Analizator opadanie</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Najwolniej</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Wolno</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Średnio</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Szybko</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Najszybciej</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Opadanie pików</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Zmień skrót klawiszowy</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Wciśnij kombinację klawiszy, które chcesz przypisać</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Wyczyść</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Edytor Paska narzędziowego</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Resetuj</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Wizualizacja</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_pt.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_pt.ts
new file mode 100644
index 000000000..9a5fddbdb
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_pt.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="pt">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>Sobre QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Interface de utilizador Qmmp (QSUI)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Versão Qmmp: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Versão QSUI: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Interface de utilizador baseada nos widgets padrão.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>Re&amp;produzir</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>P&amp;ausa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>Pa&amp;rar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>An&amp;terior</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>Segui&amp;nte</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>Re&amp;produzir/pausa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Espaço</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Ir para faixa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>Re&amp;produzir ficheiros</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>Repetir &amp;lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Repetir faixa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Baralhar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>Sem avanço &amp;na lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>Parar após a &amp;seleção</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>Limpar fila de reproduçã&amp;o</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Sempre na frente</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Mostrar em todas as áreas de trabalho</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Mostrar separadores</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Mostrar barra de título</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Bloquear barra de ferramentas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Volume &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation>0</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Volume &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation>9</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>&amp;Silenciar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Adicionar ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>A&amp;dicionar diretório</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>Adicionar &amp;URL</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Remover seleção</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Remover tudo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Remover &amp;não selecionados</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Remover ficheiros indisponíveis</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Remover duplicados</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>A&amp;lternar fila de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Inverter seleção</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>De&amp;smarcar tudo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Marcar tudo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Ver detalhes da faixa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Nova lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Eliminar lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>Carregar &amp;lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>Guardar li&amp;sta</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>Muda&amp;r nome da lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation>F2</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>&amp;Selecionar próxima lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>S&amp;elecionar lista anterior</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation>Ctrl+G</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation>A&amp;grupar faixas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation>Ctrl+H</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation>Mo&amp;strar cabeçalhos de colunas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Equalizador</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Ctrl+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>Definiçõe&amp;s</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>Sobre &amp;UI</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;Sobre</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>Sobre &amp;Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>S&amp;air</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Selecionar cor</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>Guardar &amp;como...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Guardar capa como</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Imagens</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Equalizador</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Ativar equalizador</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Pré-ajuste:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Guardar</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Eliminar</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Restaurar</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Amplificador</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>pré-ajuste</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Substituição</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>O pré-ajuste %1 já existe. Substituir?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Adicionar à lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Mudar diretório</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Selecionar diretório</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation>Restaurar</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation>Ação</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation>Atalho</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation>Mudar atalho...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation>Restaurar atalhos</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation>Gostaria de restaurar os atalhos originais?</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation>Reprodução</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation>Ver</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation>Volume</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation>Lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation>Diversos</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>Ferramen&amp;tas</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>Aj&amp;uda</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Editar</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>Re&amp;produção</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Ver</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Reprodução</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Progresso</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Analisador de espetro</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Ficheiros</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Capa de álbum</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Listas de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Anterior</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Reproduzir</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Pausa</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Seguinte</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Parar</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Adicionar ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Remover tudo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Nova lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Remover lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>A&amp;dicionar diretório</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>S&amp;air</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>Sobre</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>Sobre Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Marcar tudo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Remover seleção</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Remover &amp;não selecionados</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Visualização</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Definições</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Mudar nome da lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Volume</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ca|%4 Hz|faixas: %5|duração total: %6|%7 kbps|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Pausa</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|faixas: %2|duração total: %3|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Parado</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Nome da lista de reprodução:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Aparência</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation>Atalhos</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Reprodução</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation>Ctrl+0</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation>P</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Editar barra de ferramentas</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Organizar lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>Por título</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>Por álbum</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>Por artista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation>Por artista do álbum</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>Por nome de ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>Por caminho e nome de ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>Por data</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>Por número de faixa</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>Por número de disco</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>Por data de criação do ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation>Por data de modificação do ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>Por grupo</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Organizar seleção</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Lista aleatória</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Inverter lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Ações</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Adicionar nova lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Mostrar todos separadores</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Processamento: %1%</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation>Adicionar coluna</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation>Editar coluna</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation>Mostrar fila/protocolo</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation>Ajuste automático</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation>Remover coluna</translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Definições do alerta de informações</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Modelo</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Restaurar</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Inserir</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Mostrar capa de álbum</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Tamanho:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Transparência:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Atraso:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ms</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Artista</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>Álbum</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation>Artista do álbum</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Título</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation>Número da faixa</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation>Número da faixa com dois dígitos</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation>Número do disco</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation>Nome do ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation>Caminho do ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Género</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Comentário</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Compositor</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Duração</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Ano</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Condição</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Interface de utilizador</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Ver</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Ocultar ao fechar</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Iniciar oculto</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Tipo de letra</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation>Utilizar tipo de letra do sistema</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation>Lista de reprodução:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation>Janela principal</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation>Formato de título da janela:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Exibição de faixas</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Mostrar protocolo</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Mostrar número da faixa</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation>Mostrar duração da faixa</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Alinhar número das faixas</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Mostrar âncora</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Mostrar alerta de informações</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Editar modelo</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation>Restaurar tipo de letra</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation>Cabeçalhos de colunas: </translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation>Nome dos separadores:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Diversos</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Cores do analisador</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation>Modo de uma coluna</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation>Cores</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Analisador #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Picos:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Analisador #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Fundo:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Analisador #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Cores da lista de reprodução</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Fundo #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Texto normal:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Fundo #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Texto atual:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Destaque de fundo:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Destaque de texto:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Usar cores do sistema</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation>Fundo do grupo:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation>Texto do grupo:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Separadores</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Mostrar botão de fecho</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Mostrar menu de lista de separadores</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Mostrar botão &apos;Nova lista de reprodução&apos;</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation>Artista</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation>Álbum</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation>Artista do álbum</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation>Título</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation>Número da faixa</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation>Número da faixa com dois dígitos</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation>Género</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation>Comentário</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation>Compositor</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation>Duração</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation>Número do disco</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation>Nome do ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation>Caminho do ficheiro</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation>Ano</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation>Condição</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation>Artista - Título</translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Capa de álbum</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Picos</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Taxa de atualização</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Solução para analisador</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Mais lenta</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Lenta</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Média</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Rápida</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Mais rápida</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Solução para picos</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Mudar atalho</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Prima a combinação de teclas que pretende atribuir</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Limpar</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Editor da barra de ferramentas</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Restaurar</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Separador</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Visualização</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_pt_BR.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_pt_BR.ts
new file mode 100644
index 000000000..1cdd696b4
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_pt_BR.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="pt">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">Tocar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">Pausar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">Parar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">Anterior</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">Próximo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Adicionar arquivo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Adicionar Diretorio</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Remover selecionadas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Remover tudo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Remover não selecionadas</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">Inverter Seleção</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">&amp;Nenhum selecionado</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Selecionar tudo</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">&amp;Ver detalhes da Faixa</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">&amp;Nova lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">&amp;Carregar lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">&amp;Salvar lista</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">Configurações</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">&amp;Sobre</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">Sair</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Lista de músicas</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Aparência</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Classificar lista</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Por Título</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Por Nome</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Por Dirertório + Nome</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Por Data</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Classificar por Seleção</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Lista Eleatória</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Lista Revertida</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Adicionar arquivo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Remover tudo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Adicionar Diretorio</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">Sair</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Selecionar tudo</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Remover selecionadas</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Remover não selecionadas</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Fontes</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Mostrar música</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_ru.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_ru.ts
new file mode 100644
index 000000000..0ea20bee3
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_ru.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="ru_RU">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>О QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>QSUI - простой пользовательский интерфейс для Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Версия Qmmp: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Версия QSUI: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Простой интерфейс пользователя, постороенный с использованием стандартных элементов.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Воспроизвести</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Приостановить</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Стоп</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Предыдущий фрагмент</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Следующий фрагмент</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Воспр/приост</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Перейти к треку</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>&amp;Воспроизвести файлы</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Повторять список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Повторять трек</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;В случайном порядке</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Не продвигаться по списку</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Остановить после выделенного</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Очистить очередь</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Поверх всех окон</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Разместить на всех рабочих столах</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Добавить файл</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Показывать вкладки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Показывать заголовки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Заблокировать панели инструментов</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Громкость &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Громкость &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>&amp;Выключить звук</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Добавить директорию</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;Добавить URL</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Удалить выделенное</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Удалить всё</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Удалить невыделенное</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Удалить недоступные файлы</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Удалить дубликаты</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;В очередь</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Инвертировать выделение</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Снять выделение</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Выделить всё</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Информация</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Новый список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Удалить список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Загрузить список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Сохранить список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;Переименовать список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>&amp;Следующий список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>&amp;Предыдущий список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation>&amp;Группировать треки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation>&amp;Показывать названия колонок</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Эквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Настройки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;Об интерфейсе</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;О программе</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;О библиотеке Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Выход</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Выберите цвет</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;Сохранить как...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Сохранить обложку как</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Изображения</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Эквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Включить эквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Предустановка:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Сохранить</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Удалить</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Сбросить</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Усиление</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1дБ</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1дБ</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>предустановка</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Запрос на перезапись</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Предустановка &apos;%1&apos; уже существует. Перезаписать?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Добавить к списку воспроизведения</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Выберите директорию</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Сменить директорию</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation>Сбросить</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation>Действие</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation>Сочетание клавиш</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation>Изменить сочетание клавиш...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation>Сбросить сочетания клавиш</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation>Восстановить сочетания клавиш поумолчанию?</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation>Воспроизведение</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation>Вид</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation>Громкость</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation>Список</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation>Другие</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Громкость</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|%2 бит|%3 к.|%4 Гц|треков: %5|обшее время: %6|%7 кбит/с|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Пауза</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|треков: %2|общее время: %3|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Стоп</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Имя списка:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Внешний вид</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation>Сочетания клавиш</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Воспр.</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Редактировать панель инструментов</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Сортировать</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>По названию</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>По альбому</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>По исполнителю</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation>По исполнителю альбома</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>По имени файла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>По пути и файлу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>По дате</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>По номеру трека</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>По номеру диска</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>По дате создания файла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation>По дате изменения файла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>По группе</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Сортировать выделенное</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Перемешать</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Перевернуть</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Действия</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Добавить новый список воспроизведения</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Показать все вкладки</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Буферизация: %1%</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Файл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Инструменты</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Справка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Правка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Воспроизведение</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Вид</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Воспроизведение</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Прогресс</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Анализатор спектра</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Файлы</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Обложка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Списки</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Предыдущий фрагмент</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Воспроизвести</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Приостановить</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Следующий фрагмент</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Остановить</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Добавить файл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Удалить всё</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Создать список</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Удалить список</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Добавить директорию</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Выход</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>О программе</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>О Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Выделить всё</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Удалить выделенное</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Удалить невыделенное</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Визуализация</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Настройки</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Переименовать список</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation>Добавить колонку</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation>Изменить колонку</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation>Показывать очередь/протокол</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation>Авто-размер</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation>Удалить колонку</translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Настройки всплывающей информации</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Показывать обложку</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Прозрачность:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Задержка:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>мс</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Размер обложки:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Сброс</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Вставить</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Исполнитель</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>Альбом</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation>Исполнитель альбома</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Название</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation>Номер трека</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation>2-х разрядный номер диска</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation>Номер диска</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation>Имя файла</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation>Путь к файлу</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Жанр</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Комментарий</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Композитор</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Длительность</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Год</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Условие</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Простой интерфейс пользователя</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Вид</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Скрывать при закрытии</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Запускать скрытым</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Шрифты</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation>Использовать системные шрифты</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation>Список:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation>Главное окно</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation>Формат имени окна:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Список песен</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Показывать протокол</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Показывать номера фрагментов</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation>Показывать длительности фрагментов</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Выравнивать номера фрагментов</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Показывать &quot;якорь&quot;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Показывать всплывающее окно с информацией</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Редактировать шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation>Цвета</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation>Фон группы:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation>Сбросить шрифты</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation>Названия колонок:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation>Названия вкладок:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation>Текст группы:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Вкладки</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Показывать кнопки закрытия</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Показывать меню со списком вкладок</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Показывать кнопку &quot;Новый список&quot;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Разное</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation>Режим одной колонки</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Цвета анализатора</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Анализатор #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Пики:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Анализатор #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Фон:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Анализатор #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Цвета списка воспроиведения</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Использовать системные цвета</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Фон #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Обычный текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Фон #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Текущий текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Выделенный фон:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Выделенный текст:</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation>Исполнитель</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation>Альбом</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation>Исполнитель альбома</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation>Название</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation>Номер трека</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation>2-х разрядный номер диска</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation>Жанр</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation>Комментарий</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation>Композитор</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation>Длительность</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation>Номер диска</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation>Имя файла</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation>Путь к файлу</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation>Год</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation>Условие</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation>Исполнитель - название</translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Обложка</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Пики</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Частота обновления</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Падение анализатора</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Самое медленное</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Медленное</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Среднее</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Быстрое</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Самое быстрое</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Падение пиков</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Изменить сочетание клавиш</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Нажмите клавиши, сочетание которых вы хотите использовать</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Очистить</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Редактор панели инструментов</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Сброс</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Разделитель</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Визуализация</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_sk.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_sk.ts
new file mode 100644
index 000000000..02fe5e9ab
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_sk.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="sk">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Hrať</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Pozastaviť</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>Za&amp;staviť</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Predchádzajúca</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Nasledujúca</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Hrať/Pozastaviť</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Medzerník</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Opakovať playlist</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Opakovať skladbu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Zamiešať</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Nepokročilý playlist</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Zastaviť po vybranej</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Vyčistiť rad</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Vždy na vrchu</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Dať na všetky plochy</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Pridať súbor</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Pridať priečinok</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;Pridať URL</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>Odst&amp;rániť vybraté</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>Odst&amp;rániť všetko</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Odst&amp;rániť nevybraté</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Odstrániť nedostupné súbory</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Odstrániť duplikáty</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;Zaradiť prepínanie</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Invertovať výber</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>Zrušiť &amp;výber</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Vybrať všetko</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Zobraziť detaily o skladbe</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Nový zoznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Vymazať zoznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Načítať zoznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Uložiť zoznam</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>&amp;Vybrať nasledujúci playlist</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+Page Down</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>&amp;Vybrať predchádzajúci playlist</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+Page Up</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>Na&amp;stavenia</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>O progr&amp;ame</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;O Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Ukončiť</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Zobraziť</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Playlist</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Vzhľad</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Triediť zoznam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Podľa názvu</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished">Podľa albumu</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished">Podľa interpréta</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Podľa názvu súboru</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Podľa cesty a názvu súboru</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Podľa dátumu</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Podľa čísla skladby</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Potriediť výber</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Zamiešať zoznam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Otočiť zoznam</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">Činnosti</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">Predchádzajúca</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">Hrať</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">Pozastaviť</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">Nasledujúca</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">Zastaviť</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Pridať súbor</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">Odst&amp;rániť všetko</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Pridať priečinok</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Ukončiť</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Vybrať všetko</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">Odst&amp;rániť vybraté</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">Odst&amp;rániť nevybraté</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Vizualizácie</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished">Premenovať playlist</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished">Zobraziť</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Skryť pri zatvorení</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Spustiť skryté</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Písma</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Zobrazenie skladby</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">Zobraziť protokol</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">Zobrazovať čísla piesní</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished">Zarovnať čísla piesní</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished">Zobrazovať ukotvenie</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished">Zobrazovať upozornenia s informáciami</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished">Upraviť šablónu</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Vizualizácie</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_sr_BA.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_sr_BA.ts
new file mode 100644
index 000000000..e10052c46
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_sr_BA.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="sr_BA">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>О КСУИ-ију</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Кумп једноставно корисничко сучеље (КСУИ)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Издање Кумпа: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Издање КСУИ-ија: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Једноставно корисничко сучеље базирано на основном сету виџета.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Пусти</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>П&amp;аузирај</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Заустави</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>П&amp;ретходна</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Сљедећа</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>П&amp;усти/паузирај</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Размак</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>С&amp;кочи на нумеру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>Пусти &amp;фајлове</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>Понављај &amp;листу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>Понављај &amp;нумеру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>На&amp;сумично</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Без напредовања листе</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Заустави након избора</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Очисти ред</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Увијек на врху</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>На свим површима</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Прикажи језичке</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Прикажи имена трака алатки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Закључај траке алатки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Јачина &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation>0</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Јачина &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation>9</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>Утиша&amp;ј</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>Додај &amp;фајл</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>Додај фас&amp;циклу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>Додај Ур&amp;л</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>Уклони &amp;избор</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>Уклони &amp;све</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Уклони &amp;неизабрано</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Уклони недоступне фајлове</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Уклони дупликате</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>Стави у &amp;ред</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Обрни избор</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Очисти избор</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>Изабери &amp;све</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Види детаље нумере</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Нова листа нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Обриши листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Учитај листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Сачувај листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>Пре&amp;именуј листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>Изабери сље&amp;дећу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>Изабери &amp;претходну</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation>Ctrl+G</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Еквилајзер</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Ctrl+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>По&amp;дешавање</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>О &amp;сучељу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;О програму</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>О &amp;Куту</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Напусти</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Избор боје</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;Сачувај као...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Сачувај омот</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Слике</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Еквилајзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Омоући еквилајзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Поставка:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Сачувај</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Обриши</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Претпојачање</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>поставка</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Захтјев за пребрисавање</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Поставка „%1“ већ постоји. Желите ли да је пребришете?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Додај на листу</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Промијени фасциклу</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Избор фасцикле</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished">Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished">радња</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished">пречица</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished">Измијени пречицу...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">Контроле</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Приказ</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">Јачина</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Листа нумера</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished">Разно</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Кумп</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Фајл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Алатке</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>По&amp;моћ</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Уређивање</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Контроле</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Приказ</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Контроле</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Трака напретка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Анализатор спектра</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Фајлови</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Омот</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Листе нумера</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Претходна</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Пусти</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Паузирај</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Сљедећа</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Заустави</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>Додај &amp;фајл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Очисти избор</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Нова листа</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Уклони листу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>Додај фас&amp;циклу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Напусти</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>О програму</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>О Куту</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>Изабери &amp;све</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>Уклони &amp;избор</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Уклони &amp;неизабрано</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Визуелизација</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Подешавања</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Преименуј листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Јачина</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Паузирано</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Заустављено</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Име листе нумера:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Изглед</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished">Пречице</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Пуштање</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation>Ctrl+0</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation>P</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Уреди траку алатки</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Поређај</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>по наслову</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>по албуму</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>по извођачу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>по имену фајла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>по путањи и имену</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>по датуму</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>по броју нумере</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>по броју диска</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>по датуму фајла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>по групи</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Поређај избор</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Претумбај</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Обрни</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Радње</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Додај нову листу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Прикажи све језичке</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Баферујем: %1%</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Поставке облачића података</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Уметни</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Прикажи омот</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Величина омота:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Прозирност:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Застој:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ms</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>извођача</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>албум</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>наслов</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>жанр</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>коментар</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>композитора</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>дужину</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>годину</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>услов</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Једноставно корисничко сучеље</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Приказ</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Сакриј по затварању</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Покрени скривено</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Фонтови</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Приказ нумере</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Протокол</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Број нумере</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Уравнај бројеве нумера</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Сидро</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Облачић с подацима</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Уреди шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Разно</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Боје анализатора</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Анализатор #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Врхови:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Анализатор #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Позадина:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Анализатор #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Боје листи нумера</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Позадина #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Обични текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Позадина #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Текући текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Означена позадина:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Означени текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Системске боје</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Језичци</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Дугмад за затварање</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Мени списка језичака</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Дугме „Нова листа нумера“</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">извођача</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">албум</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">наслов</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">жанр</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">коментар</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">композитора</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">дужину</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">годину</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">услов</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Омот</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Врхови</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Фреквенција</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Падање анализатора</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Најспорије</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Споро</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Умјерено</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Брзо</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Најбрже</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Падање врхова</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Измјена пречице</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Притисните комбинацију тастера коју желите да додијелите</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Очисти</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Уређивач траке алатки</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Раздвајач</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Визуелизација</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_sr_RS.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_sr_RS.ts
new file mode 100644
index 000000000..263c6e2b7
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_sr_RS.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="sr_RS">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>О КСУИ-ију</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>Кумп једноставно корисничко сучеље (КСУИ)</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Издање Кумпа: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Издање КСУИ-ија: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Једноставно корисничко сучеље базирано на основном сету виџета.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Пусти</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation>X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>П&amp;аузирај</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation>C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Заустави</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation>V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>П&amp;ретходна</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation>Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Следећа</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation>B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>П&amp;усти/паузирај</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation>Размак</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>С&amp;кочи на нумеру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation>J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>Пусти &amp;фајлове</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation>E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>Понављај &amp;листу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation>R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>Понављај &amp;нумеру</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation>Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>На&amp;сумично</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation>S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Без напредовања листе</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation>Ctrl+N</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Заустави након избора</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation>Ctrl+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Очисти ред</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation>Alt+Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Увијек на врху</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>На свим површима</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Прикажи језичке</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Прикажи имена трака алатки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Закључај траке алатки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Јачина &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation>0</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Јачина &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation>9</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>Утиша&amp;ј</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation>M</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>Додај &amp;фајл</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation>F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>Додај фас&amp;циклу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation>D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>Додај Ур&amp;л</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation>U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>Уклони &amp;избор</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation>Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>Уклони &amp;све</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Уклони &amp;неизабрано</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Уклони недоступне фајлове</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Уклони дупликате</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>Стави у &amp;ред</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation>Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Обрни избор</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Очисти избор</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>Изабери &amp;све</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation>Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Види детаље нумере</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation>Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Нова листа нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation>Ctrl+T</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Обриши листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation>Ctrl+W</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Учитај листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation>O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Сачувај листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation>Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>Пре&amp;именуј листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>Изабери сле&amp;дећу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation>Ctrl+PgDown</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>Изабери &amp;претходну</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation>Ctrl+PgUp</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation>Ctrl+G</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Еквилајзер</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation>Ctrl+E</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>По&amp;дешавање</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation>Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>О &amp;сучељу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;О програму</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>О &amp;Куту</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Напусти</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation>Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Избор боје</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;Сачувај као...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Сачувај омот</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Слике</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Еквилајзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Омоући еквилајзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Поставка:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Сачувај</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Обриши</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Претпојачање</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation>+%1dB</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>поставка</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Захтев за пребрисавање</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Поставка „%1“ већ постоји. Желите ли да је пребришете?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Додај на листу</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Промени фасциклу</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Избор фасцикле</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished">Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished">радња</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished">пречица</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished">Измени пречицу...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished">Контроле</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished">Приказ</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished">Јачина</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Листа нумера</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished">Разно</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation>Кумп</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Фајл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Алатке</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>По&amp;моћ</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Уређивање</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Контроле</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Приказ</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Контроле</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Трака напретка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Анализатор спектра</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Фајлови</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Омот</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Листе нумера</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Претходна</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Пусти</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Паузирај</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Следећа</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Заустави</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>Додај &amp;фајл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Очисти избор</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Нова листа</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Уклони листу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>Додај фас&amp;циклу</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Напусти</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>О програму</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>О Куту</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>Изабери &amp;све</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>Уклони &amp;избор</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>Уклони &amp;неизабрано</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Визуелизација</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Подешавања</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Преименуј листу нумера</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Јачина</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Паузирано</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Заустављено</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Име листе нумера:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Изглед</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished">Пречице</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Пуштање</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation>Ctrl+0</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation>P</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Уреди траку алатки</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Поређај</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>по наслову</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>по албуму</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>по извођачу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>по имену фајла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>по путањи и имену</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>по датуму</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>по броју нумере</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>по броју диска</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>по датуму фајла</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>по групи</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Поређај избор</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Претумбај</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Обрни</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Радње</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Додај нову листу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Прикажи све језичке</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Баферујем: %1%</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Поставке облачића података</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Уметни</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Прикажи омот</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Величина омота:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Прозирност:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Застој:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>ms</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>извођача</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>албум</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>наслов</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>жанр</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>коментар</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>композитора</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>дужину</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>годину</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>услов</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Једноставно корисничко сучеље</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Приказ</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Сакриј по затварању</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Покрени скривено</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Фонтови</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Приказ нумере</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Протокол</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Број нумере</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Уравнај бројеве нумера</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Сидро</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Облачић с подацима</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Уреди шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Разно</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Боје анализатора</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Анализатор #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Врхови:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Анализатор #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Позадина:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Анализатор #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Боје листи нумера</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Позадина #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Обични текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Позадина #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Текући текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Означена позадина:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Означени текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Системске боје</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Језичци</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Дугмад за затварање</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Мени списка језичака</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Дугме „Нова листа нумера“</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished">извођача</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished">албум</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished">наслов</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished">жанр</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished">коментар</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished">композитора</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished">дужину</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished">годину</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished">услов</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Омот</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Врхови</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Фреквенција</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 fps</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Падање анализатора</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Најспорије</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Споро</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Умерено</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Брзо</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Најбрже</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Падање врхова</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Измена пречице</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Притисните комбинацију тастера коју желите да доделите</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Очисти</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Уређивач траке алатки</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Ресетуј</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Раздвајач</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Визуелизација</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_tr.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_tr.ts
new file mode 100644
index 000000000..320e6c013
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_tr.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="tr">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">&amp;Çal</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished">X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">&amp;Duraklat</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished">C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">&amp;Durdur</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished">V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">&amp;Önceki</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished">Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">&amp;Sonraki</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished">B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">&amp;Oynat/Duraklat</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished">Boşluk</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished">J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished">&amp;Çalma Listesini Yinele</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished">R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished">&amp;Parçayı Yinele</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished">Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished">&amp;Rastgele</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished">S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Dosya Ekle</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished">F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Dizin Ekle</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished">D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">&amp;Url Ekle</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished">U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Seçileni Kaldır</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished">Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Hepsini Kaldır</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Seçilmemişleri Kaldır</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished">Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">Seçimi Tersine Çevir</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">&amp;Hiçbirini Seçme</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Tümünü Seç</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished">Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">&amp;Parça Detaylarını Göster</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished">Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">&amp;Yeni Liste</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">&amp;Liste Yükle</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished">O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">&amp;Listeyi Kaydet</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished">Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Ayarlar</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">&amp;Hakkında</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">&amp;Qt Hakkında</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Çıkış</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">Çalma Listesi</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">Görünüm</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">Listeyi Sınıflandır</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">Başlığa Göre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">Dosya Adına Göre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">Dosya Yolu + Dosya Adına Göre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">Tarihe Göre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">Parça Numarasına Göre</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">Seçilenleri Sınıflandır</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">Rastgele Listele</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">Listeyi Ters Çevir</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">Eylemler</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">Önceki</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">Oynat</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">Duraklat</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">Sonraki</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">Durdur</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">&amp;Dosya Ekle</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">&amp;Hepsini Kaldır</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">&amp;Dizin Ekle</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">&amp;Çıkış</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">&amp;Tümünü Seç</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">&amp;Seçileni Kaldır</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">&amp;Seçilmemişleri Kaldır</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">Görüntüleme</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">Kapatınca saklan</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">Gizli başlat</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">Fontlar</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">Şarkı Göstergesi</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">Protokolü göster</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">Şarkı numaralarını göster</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Görüntüleme</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_uk_UA.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_uk_UA.ts
new file mode 100644
index 000000000..f9b58d45b
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_uk_UA.ts
@@ -0,0 +1,1560 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="uk">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation>Про QSUI</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation>QSUI - простий інтерфейс користувача для Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Версія Qmmp: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation>Версія QSUI: &lt;b&gt;%1&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation>Простий інтерфейс користувача, побудований з використанням стандартних елементів.</translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation>&amp;Відтворити</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation>&amp;Пауза</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation>&amp;Стоп</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation>&amp;Назад</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation>&amp;Вперед</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation>&amp;Відтворення/Пауза</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation>&amp;Перейти до треку</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation>&amp;Відтворити файли</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation>&amp;Повторити список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation>&amp;Повторити трек</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation>&amp;Перемішати</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation>&amp;Не пересуватися по списку</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation>&amp;Зупинити після вибраного</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation>&amp;Очистити чергу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation>Завжди зверху</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation>Розмістити на усіх робочих столах</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Додати файл</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation>Показати вкладки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation>Показати заголовки</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation>Заблокувати панелі інструментів</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation>Гучність &amp;+</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation>Гучність &amp;-</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation>&amp;Вимкнути звук</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Додати теку</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation>&amp;Додати адресу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Видалити вибране</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Видалити все</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Видалити не вибране</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation>Видалити недоступні файли</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation>Видалити дублікати</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation>&amp;В чергу</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation>Інвертувати вибране</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation>&amp;Зняти виділення</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Вибрати все</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation>&amp;Інформація</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation>&amp;Новий список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation>&amp;Видалити список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation>&amp;Завантажити список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation>&amp;Зберегти список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation>&amp;Переіменувати список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation>Вибрати &amp;наступний список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation>Вибрати &amp;попередній список</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation>&amp;Група треків</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation>&amp;Показувати назву стовпців</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation>&amp;Еквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation>&amp;Налаштування</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation>&amp;Про інтерфейс</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation>&amp;Про програму</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation>&amp;Про Qt</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Вихід</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation></translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation>Виберіть колір</translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation>&amp;Зберегти як...</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation>Зберегти обкладинку як</translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation>Зображення</translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation>Еквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation>Увімкнути еквалайзер</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation>Предвстановлення:</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation>Зберегти</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation>Видалити</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation>Скинути</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation>Підсилення</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation>%1дБ</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translatorcomment>+%1дБ</translatorcomment>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation>предвстановлення</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation>Запит на перезапис</translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation>Предвстановлення &apos;%1&apos; вже існує. Замінити?</translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation>Додати до списку відтворення</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation>Виберіть теку</translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation>Змінити теку</translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation>Скинути</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation>Дія</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation>Комбінація</translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation>Змінити комбінацію клавіш...</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation>Скинути комбінації клавіш</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation>Скинути комбінації клавіш за замовчанням?</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation>Відтворення</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation>Вигляд</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation>Гучність</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation>Список</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation>Інші</translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation>Гучність</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|%2 біт|%3 к.|%4 Гц|треків: %5|загальний час: %6|%7 кбіт/с|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation>Призупинено</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation>&lt;b&gt;%1&lt;/b&gt;|треків: %2|загальний час: %3|</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation>Зупинено</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation>Назва списку:</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation>Зовнішній вигляд</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation>Комбінації клавіш</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation>Відтворюється</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation>Редагувати панель інструментів</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation>Сортувати</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation>За назвою</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation>За альбомом</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation>За виконавцем</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation>За альбомом виконавця</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation>За ім&apos;ям файлу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation>За шляхом та файлом</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation>За датою</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation>За номером треку</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation>За номером диску</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation>За датою створення файлу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation>За датою модифікації файлу</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation>За групою</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation>Сортувати вибране</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation>Перемішати</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation>Перевернути</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation>Дії</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation>Додати новий список</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation>Показати всі вкладки</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation>Буферизація: %1%</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation>&amp;Файл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation>&amp;Інструменти</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Довідка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation>&amp;Правка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation>&amp;Відтворення</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation>&amp;Вигляд</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation>Відтворення</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation>Прогрес</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation>Аналізатор спектру</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation>Файли</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation>Обкладинка</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation>Списки</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation>Назад</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation>Відтворити</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation>Пауза</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation>Вперед</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation>Стоп</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation>&amp;Додати файл</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation>&amp;Видалити все</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation>Новий список</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation>Видалити список</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation>&amp;Додати теку</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation>&amp;Вихід</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation>Про програму</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation>Про Qt</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation>&amp;Вибрати все</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation>&amp;Видалити вибране</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation>&amp;Видалити не вибране</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation>Візуалізація</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation>Налаштування</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation>Переіменувати список</translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation>Додати стовпчик</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation>Редагувати стовпчик</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation>Показати чергу/протокол</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation>Авто-розмір</translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation>Видалити стовпчик</translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation>Налаштування спливаючої інформації</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation>Показати обкладинку</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation>Прозорість:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation>Затримка:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation>мс</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation>Розмір обкладинки:</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation>Шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation>Скинути</translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation>Вставити</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation>Виконавець</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation>Альбом</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation>Альбом Виконавець</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation>Назва</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation>Номер трека</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation>Подвійний номер трека</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation>Номер диска</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation>Ім&apos;я файла</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation>Шлях файла</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation>Жанр</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation>Коментар</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation>Композитор</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation>Тривалість</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation>Рік</translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation>Умова</translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation>Простий інтерфейс користувача</translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation>Вигляд</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation>Ховати при закритті</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation>Запускати схованим</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation>Шрифти</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation>Використовувати системні шрифти</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation>Список:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation>???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation>...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translatorcomment>Головне вікно</translatorcomment>
+ <translation></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation>Формат назви вікна:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation>Список пісень</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation>Показати протокол</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation>Відображати номери пісень</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation>Відображати довжину пісні</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation>Вирівнювати номери фрагментів</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation>Показувати &quot;якір&quot;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation>Показувати спливаюче вікно з інформацією</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation>Редагувати шаблон</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation>Кольори</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation>Тло групи:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation>Скинути шрифти</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation>Назви стовпців:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation>Назва закладки:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation>Текст групи:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation>Вкладки</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation>Показати кнопки закриття</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation>Відображати меню зі списоком вкладок</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation>Показувати кнопку &quot;Новий список&quot;</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation>Різне</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation>Одностовпчиковий режим</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation>Колір аналізатора</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation>Аналізатор #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation>Піки:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation>Аналізатор #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation>Тло:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation>Аналізатор #3:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation>Кольори списку відтворення</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation>Використовувати системні кольори</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation>Тло #1:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation>Звичайний текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation>Тло #2:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation>Поточний текст:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation>Виділене тло:</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation>Виділений текст:</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation>Виконавець</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation>Альбом</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation>Альбом Виконавець</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation>Назва</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation>Номер трека</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation>Подвійний номер трека</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation>Жанр</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation>Коментар</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation>Композитор</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation>Тривалість</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation>Номер диска</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation>Ім&apos;я файла</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation>Шлях файла</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation>Рік</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation>Умова</translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation>Артист - Назва</translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation>Обкладинка</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation>Піки</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation>Частота оновлення</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation>50 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation>25 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation>10 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation>5 кадр/с</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation>Падіння аналізатора</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation>Найповільніше</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation>Повільне</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation>Середнє</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation>Швидке</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation>Найшвидше</translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation>Падіння піків</translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation>Змінити комбінації клавіш</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation>Натисніть клавіші, комбінації яких ви бажаєте використовувати</translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation>Очистити</translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation>Редактор панелі інструментів</translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation>Скинути</translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation>Розділювач</translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>Візуалізація</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_zh_CN.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_zh_CN.ts
new file mode 100644
index 000000000..2cbbed24e
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_zh_CN.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="zh_CN">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">播放(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished">X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">暂停(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished">C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">停止(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished">V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">上一曲(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished">Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">下一曲(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished">B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">播放/暂停(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished">空格</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished">J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished">重复播放列表(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished">R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished">重复音轨(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished">Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished">乱序(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished">S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">添加文件(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished">F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">添加文件夹(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished">D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">添加 URL (&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished">U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">删除所选(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished">Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">删除全部(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">删除未选(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished">Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">反选</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">无选择(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">选择全部(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished">Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">查看音轨详细信息(&amp;V)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished">Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">新建列表(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">载入列表(&amp;L)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished">O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">保存列表(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished">Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">设置(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">关于(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">关于 Qt (&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">退出(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">播放列表</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">外观</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">列表排序</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">按标题</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">按文件名</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">按路径+文件名</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">按日期</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">按音轨</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">选择排序</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">随机产生列表</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">逆序列表</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">动作</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">上一曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">播放</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">暂停</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">下一曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">停止</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">添加文件(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">删除全部(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">添加文件夹(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">退出(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">选择全部(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">删除所选(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">删除未选(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">可视化</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">关闭时隐藏</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">启动时隐藏</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">字体</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">显示歌曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">显示协议</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">显示曲目编号</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>可视化</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/qsui_plugin_zh_TW.ts b/src/plugins/Ui/qsui/translations/qsui_plugin_zh_TW.ts
new file mode 100644
index 000000000..5ccb0d167
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/qsui_plugin_zh_TW.ts
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="zh_TW">
+<context>
+ <name>AboutQSUIDialog</name>
+ <message>
+ <location filename="../forms/aboutqsuidialog.ui" line="14"/>
+ <source>About QSUI</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="41"/>
+ <source>Qmmp Simple User Interface (QSUI)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="42"/>
+ <source>Qmmp version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="44"/>
+ <source>QSUI version: &lt;b&gt;%1&lt;/b&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../aboutqsuidialog.cpp" line="46"/>
+ <source>Simple user interface based on standard widgets set.</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ActionManager</name>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>&amp;Play</source>
+ <translation type="unfinished">播放(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="38"/>
+ <source>X</source>
+ <translation type="unfinished">X</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>&amp;Pause</source>
+ <translation type="unfinished">暫停(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="39"/>
+ <source>C</source>
+ <translation type="unfinished">C</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>&amp;Stop</source>
+ <translation type="unfinished">停止(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="40"/>
+ <source>V</source>
+ <translation type="unfinished">V</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>&amp;Previous</source>
+ <translation type="unfinished">上一曲(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="41"/>
+ <source>Z</source>
+ <translation type="unfinished">Z</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>&amp;Next</source>
+ <translation type="unfinished">下一曲(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="42"/>
+ <source>B</source>
+ <translation type="unfinished">B</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>&amp;Play/Pause</source>
+ <translation type="unfinished">播放/暫停(&amp;P)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="43"/>
+ <source>Space</source>
+ <translation type="unfinished">空格</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>J</source>
+ <translation type="unfinished">J</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="44"/>
+ <source>&amp;Jump to Track</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>&amp;Play Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>&amp;Repeat Playlist</source>
+ <translation type="unfinished">重復播放清單(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="47"/>
+ <source>R</source>
+ <translation type="unfinished">R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>&amp;Repeat Track</source>
+ <translation type="unfinished">重復音軌(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="49"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished">Ctrl+R</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>&amp;Shuffle</source>
+ <translation type="unfinished">亂序(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="50"/>
+ <source>S</source>
+ <translation type="unfinished">S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="51"/>
+ <source>&amp;No Playlist Advance</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="52"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="53"/>
+ <source>&amp;Stop After Selected</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="54"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>&amp;Clear Queue</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="55"/>
+ <source>Alt+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="57"/>
+ <source>Always on Top</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="58"/>
+ <source>Put on All Workspaces</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">添加檔案(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="45"/>
+ <source>E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="63"/>
+ <source>Show Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="64"/>
+ <source>Show Title Bars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="65"/>
+ <source>Block Toolbars</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>Volume &amp;+</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="67"/>
+ <source>0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>Volume &amp;-</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="68"/>
+ <source>9</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>&amp;Mute</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="69"/>
+ <source>M</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="71"/>
+ <source>F</source>
+ <translation type="unfinished">F</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">添加檔案夾(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="72"/>
+ <source>D</source>
+ <translation type="unfinished">D</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>&amp;Add Url</source>
+ <translation type="unfinished">添加 URL (&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="73"/>
+ <source>U</source>
+ <translation type="unfinished">U</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="74"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">移除所選(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="75"/>
+ <source>Del</source>
+ <translation type="unfinished">Del</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="76"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">移除全部(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="77"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">移除未選(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="79"/>
+ <source>Remove unavailable files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="81"/>
+ <source>Remove duplicates</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>&amp;Queue Toggle</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="82"/>
+ <source>Q</source>
+ <translation type="unfinished">Q</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="83"/>
+ <source>Invert Selection</source>
+ <translation type="unfinished">反選</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="84"/>
+ <source>&amp;Select None</source>
+ <translation type="unfinished">無選取(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="85"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">選取全部(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="86"/>
+ <source>Ctrl+A</source>
+ <translation type="unfinished">Ctrl+A</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>&amp;View Track Details</source>
+ <translation type="unfinished">檢視音軌詳細資訊(&amp;V)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="87"/>
+ <source>Alt+I</source>
+ <translation type="unfinished">Alt+I</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>&amp;New List</source>
+ <translation type="unfinished">新建清單(&amp;N)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="89"/>
+ <source>Ctrl+T</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>&amp;Delete List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="90"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>&amp;Load List</source>
+ <translation type="unfinished">載入清單(&amp;L)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="91"/>
+ <source>O</source>
+ <translation type="unfinished">O</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>&amp;Save List</source>
+ <translation type="unfinished">儲存清單(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="92"/>
+ <source>Shift+S</source>
+ <translation type="unfinished">Shift+S</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>&amp;Rename List</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="93"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="95"/>
+ <source>&amp;Select Next Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="96"/>
+ <source>Ctrl+PgDown</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="97"/>
+ <source>&amp;Select Previous Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="98"/>
+ <source>Ctrl+PgUp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>Ctrl+G</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="99"/>
+ <source>&amp;Group Tracks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>Ctrl+H</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="100"/>
+ <source>&amp;Show Column Headers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>&amp;Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="102"/>
+ <source>Ctrl+E</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">設定(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="103"/>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Ctrl+P</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="104"/>
+ <source>&amp;About Ui</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="105"/>
+ <source>&amp;About</source>
+ <translation type="unfinished">關於(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="106"/>
+ <source>&amp;About Qt</source>
+ <translation type="unfinished">關於 Qt (&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">結束(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../actionmanager.cpp" line="107"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">Ctrl+Q</translation>
+ </message>
+</context>
+<context>
+ <name>ColorWidget</name>
+ <message>
+ <location filename="../colorwidget.cpp" line="37"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>CoverWidget</name>
+ <message>
+ <location filename="../coverwidget.cpp" line="32"/>
+ <source>&amp;Save As...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="65"/>
+ <source>Save Cover As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../coverwidget.cpp" line="67"/>
+ <source>Images</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>Equalizer</name>
+ <message>
+ <location filename="../equalizer.cpp" line="39"/>
+ <source>Equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="48"/>
+ <source>Enable equalizer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="54"/>
+ <source>Preset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="62"/>
+ <source>Save</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="66"/>
+ <source>Delete</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="70"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="83"/>
+ <source>Preamp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="100"/>
+ <location filename="../equalizer.cpp" line="203"/>
+ <source>%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="102"/>
+ <location filename="../equalizer.cpp" line="201"/>
+ <source>+%1dB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="153"/>
+ <source>preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="226"/>
+ <source>Overwrite Request</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../equalizer.cpp" line="227"/>
+ <source>Preset &apos;%1&apos; already exists. Overwrite?</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>FileSystemBrowser</name>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="63"/>
+ <source>Add to Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="131"/>
+ <source>Select Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../filesystembrowser.cpp" line="66"/>
+ <source>Change Directory</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>HotkeyEditor</name>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="40"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="54"/>
+ <source>Action</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="59"/>
+ <source>Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/hotkeyeditor.ui" line="33"/>
+ <source>Change shortcut...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="55"/>
+ <source>Reset Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="56"/>
+ <source>Do you want to restore default shortcuts?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="68"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="74"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="80"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="86"/>
+ <source>Playlist</source>
+ <translation type="unfinished">播放清單</translation>
+ </message>
+ <message>
+ <location filename="../hotkeyeditor.cpp" line="92"/>
+ <source>Misc</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainWindow</name>
+ <message>
+ <location filename="../mainwindow.cpp" line="138"/>
+ <source>Volume</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="373"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|%2 bit|%3 ch|%4 Hz|tracks: %5|total time: %6|%7 kbps|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Paused</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="384"/>
+ <source>&lt;b&gt;%1&lt;/b&gt;|tracks: %2|total time: %3|</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="385"/>
+ <source>Stopped</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Playlist name:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="328"/>
+ <source>Appearance</source>
+ <translation type="unfinished">外觀</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="329"/>
+ <source>Shortcuts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="374"/>
+ <source>Playing</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="428"/>
+ <source>Ctrl+0</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="434"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="486"/>
+ <source>Edit Toolbar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="488"/>
+ <source>Sort List</source>
+ <translation type="unfinished">清單排序</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="491"/>
+ <location filename="../mainwindow.cpp" line="546"/>
+ <source>By Title</source>
+ <translation type="unfinished">按標題</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="495"/>
+ <location filename="../mainwindow.cpp" line="550"/>
+ <source>By Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="499"/>
+ <location filename="../mainwindow.cpp" line="554"/>
+ <source>By Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="503"/>
+ <location filename="../mainwindow.cpp" line="558"/>
+ <source>By Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="507"/>
+ <location filename="../mainwindow.cpp" line="562"/>
+ <source>By Filename</source>
+ <translation type="unfinished">按檔名</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="511"/>
+ <location filename="../mainwindow.cpp" line="566"/>
+ <source>By Path + Filename</source>
+ <translation type="unfinished">按路徑+檔名</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="515"/>
+ <location filename="../mainwindow.cpp" line="570"/>
+ <source>By Date</source>
+ <translation type="unfinished">按日期</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="519"/>
+ <location filename="../mainwindow.cpp" line="574"/>
+ <source>By Track Number</source>
+ <translation type="unfinished">按音軌</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="523"/>
+ <location filename="../mainwindow.cpp" line="578"/>
+ <source>By Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="527"/>
+ <location filename="../mainwindow.cpp" line="582"/>
+ <source>By File Creation Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="531"/>
+ <location filename="../mainwindow.cpp" line="586"/>
+ <source>By File Modification Date</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="535"/>
+ <source>By Group</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="543"/>
+ <source>Sort Selection</source>
+ <translation type="unfinished">選取排序</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="593"/>
+ <source>Randomize List</source>
+ <translation type="unfinished">隨機產生清單</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="595"/>
+ <source>Reverse List</source>
+ <translation type="unfinished">逆串列表</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="602"/>
+ <location filename="../mainwindow.cpp" line="647"/>
+ <source>Actions</source>
+ <translation type="unfinished">動作</translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="680"/>
+ <source>Add new playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="686"/>
+ <source>Show all tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../mainwindow.cpp" line="839"/>
+ <source>Buffering: %1%</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="14"/>
+ <source>Qmmp</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="54"/>
+ <source>&amp;File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="59"/>
+ <source>&amp;Tools</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="67"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="72"/>
+ <source>&amp;Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="77"/>
+ <source>&amp;Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="82"/>
+ <source>&amp;View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="94"/>
+ <source>Playback</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="117"/>
+ <source>Progress</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="146"/>
+ <source>Spectrum Analyzer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="161"/>
+ <source>Files</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="176"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="185"/>
+ <source>Playlists</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="199"/>
+ <source>Previous</source>
+ <translation type="unfinished">上一曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="209"/>
+ <source>Play</source>
+ <translation type="unfinished">播放</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="219"/>
+ <source>Pause</source>
+ <translation type="unfinished">暫停</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="229"/>
+ <source>Next</source>
+ <translation type="unfinished">下一曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="239"/>
+ <source>Stop</source>
+ <translation type="unfinished">停止</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="244"/>
+ <source>&amp;Add File</source>
+ <translation type="unfinished">添加檔案(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="249"/>
+ <source>&amp;Remove All</source>
+ <translation type="unfinished">移除全部(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="254"/>
+ <source>New Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="259"/>
+ <source>Remove Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="264"/>
+ <source>&amp;Add Directory</source>
+ <translation type="unfinished">添加檔案夾(&amp;A)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="269"/>
+ <source>&amp;Exit</source>
+ <translation type="unfinished">結束(&amp;E)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="274"/>
+ <source>About</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="279"/>
+ <source>About Qt</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="284"/>
+ <source>&amp;Select All</source>
+ <translation type="unfinished">選取全部(&amp;S)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="289"/>
+ <source>&amp;Remove Selected</source>
+ <translation type="unfinished">移除所選(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="294"/>
+ <source>&amp;Remove Unselected</source>
+ <translation type="unfinished">移除未選(&amp;R)</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="299"/>
+ <source>Visualization</source>
+ <translation type="unfinished">可視化</translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="304"/>
+ <source>Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/mainwindow.ui" line="309"/>
+ <location filename="../mainwindow.cpp" line="287"/>
+ <source>Rename Playlist</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlayListHeader</name>
+ <message>
+ <location filename="../playlistheader.cpp" line="61"/>
+ <source>Add Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="62"/>
+ <source>Edit Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="63"/>
+ <source>Show Queue/Protocol</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="65"/>
+ <source>Auto-resize</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../playlistheader.cpp" line="68"/>
+ <source>Remove Column</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PopupSettings</name>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="14"/>
+ <source>Popup Information Settings</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="29"/>
+ <source>Template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="58"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="65"/>
+ <source>Insert</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="75"/>
+ <source>Show cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="89"/>
+ <source>Cover size:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="115"/>
+ <source>Transparency:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="145"/>
+ <source>Delay:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/popupsettings.ui" line="178"/>
+ <source>ms</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="62"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="63"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="64"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="65"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="66"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="67"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="72"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="73"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="74"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="68"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="69"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="70"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="71"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="75"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../popupsettings.cpp" line="76"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUIFactory</name>
+ <message>
+ <location filename="../qsuifactory.cpp" line="32"/>
+ <source>Simple User Interface</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUISettings</name>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="24"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="36"/>
+ <source>Hide on close</source>
+ <translation type="unfinished">關閉時隱藏</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="43"/>
+ <source>Start hidden</source>
+ <translation type="unfinished">啟動時隱藏</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="722"/>
+ <source>Fonts</source>
+ <translation type="unfinished">字型</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="728"/>
+ <source>Use system fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="776"/>
+ <source>Playlist:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="756"/>
+ <location filename="../forms/qsuisettings.ui" line="821"/>
+ <location filename="../forms/qsuisettings.ui" line="840"/>
+ <source>???</source>
+ <translation type="unfinished">???</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="62"/>
+ <location filename="../forms/qsuisettings.ui" line="763"/>
+ <location filename="../forms/qsuisettings.ui" line="786"/>
+ <location filename="../forms/qsuisettings.ui" line="847"/>
+ <source>...</source>
+ <translation type="unfinished">...</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="30"/>
+ <source>Main Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="52"/>
+ <source>Window title format:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="74"/>
+ <source>Song Display</source>
+ <translation type="unfinished">察看歌曲</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="80"/>
+ <source>Show protocol</source>
+ <translation type="unfinished">顯示協議</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="137"/>
+ <source>Show song numbers</source>
+ <translation type="unfinished">顯示曲目編號</translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="144"/>
+ <source>Show song lengths</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="154"/>
+ <source>Align song numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="87"/>
+ <source>Show anchor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="94"/>
+ <source>Show popup information</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="106"/>
+ <source>Edit template</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="178"/>
+ <source>Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="618"/>
+ <source>Group background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="869"/>
+ <source>Reset fonts</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="884"/>
+ <source>Column headers:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="799"/>
+ <source>Tab names:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="647"/>
+ <source>Group text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="917"/>
+ <source>Tabs</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="923"/>
+ <source>Show close buttons</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="930"/>
+ <source>Show tab list menu</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="937"/>
+ <source>Show &apos;New Playlist&apos; button</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="911"/>
+ <source>Miscellaneous</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="131"/>
+ <source>Single Column Mode</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="184"/>
+ <source>Analyzer Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="190"/>
+ <source>Analyzer #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="225"/>
+ <source>Peaks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="257"/>
+ <source>Analyzer #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="289"/>
+ <source>Background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="321"/>
+ <source>Analyzer #3:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="398"/>
+ <source>Playlist Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="404"/>
+ <source>Use system colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="423"/>
+ <source>Background #1:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="455"/>
+ <source>Normal text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="487"/>
+ <source>Background #2:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="519"/>
+ <source>Current text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="551"/>
+ <source>Highlighted background:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/qsuisettings.ui" line="583"/>
+ <source>Hightlighted text:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="118"/>
+ <source>Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="119"/>
+ <source>Album</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="120"/>
+ <source>Album Artist</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="121"/>
+ <source>Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="122"/>
+ <source>Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="123"/>
+ <source>Two-digit Track Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="124"/>
+ <source>Genre</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="125"/>
+ <source>Comment</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="126"/>
+ <source>Composer</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="127"/>
+ <source>Duration</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="128"/>
+ <source>Disc Number</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="129"/>
+ <source>File Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="130"/>
+ <source>File Path</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="131"/>
+ <source>Year</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="132"/>
+ <source>Condition</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuisettings.cpp" line="133"/>
+ <source>Artist - Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>QSUiAnalyzer</name>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="278"/>
+ <source>Cover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="281"/>
+ <source>Peaks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="284"/>
+ <source>Refresh Rate</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="287"/>
+ <source>50 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="288"/>
+ <source>25 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="289"/>
+ <source>10 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="290"/>
+ <source>5 fps</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="297"/>
+ <source>Analyzer Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="300"/>
+ <location filename="../qsuianalyzer.cpp" line="314"/>
+ <source>Slowest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="301"/>
+ <location filename="../qsuianalyzer.cpp" line="315"/>
+ <source>Slow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="302"/>
+ <location filename="../qsuianalyzer.cpp" line="316"/>
+ <source>Medium</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="303"/>
+ <location filename="../qsuianalyzer.cpp" line="317"/>
+ <source>Fast</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="304"/>
+ <location filename="../qsuianalyzer.cpp" line="318"/>
+ <source>Fastest</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../qsuianalyzer.cpp" line="311"/>
+ <source>Peaks Falloff</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ShortcutDialog</name>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="14"/>
+ <source>Change Shortcut</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="29"/>
+ <source>Press the key combination you want to assign</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/shortcutdialog.ui" line="52"/>
+ <source>Clear</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ToolBarEditor</name>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="14"/>
+ <source>ToolBar Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../forms/toolbareditor.ui" line="175"/>
+ <source>Reset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../toolbareditor.cpp" line="83"/>
+ <location filename="../toolbareditor.cpp" line="102"/>
+ <source>Separator</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualMenu</name>
+ <message>
+ <location filename="../visualmenu.cpp" line="27"/>
+ <source>Visualization</source>
+ <translation>可視化</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Ui/qsui/translations/translations.qrc b/src/plugins/Ui/qsui/translations/translations.qrc
new file mode 100644
index 000000000..e1060293b
--- /dev/null
+++ b/src/plugins/Ui/qsui/translations/translations.qrc
@@ -0,0 +1,30 @@
+<!DOCTYPE RCC>
+<RCC version="1.0">
+ <qresource>
+ <file>qsui_plugin_ru.qm</file>
+ <file>qsui_plugin_uk_UA.qm</file>
+ <file>qsui_plugin_zh_CN.qm</file>
+ <file>qsui_plugin_zh_TW.qm</file>
+ <file>qsui_plugin_tr.qm</file>
+ <file>qsui_plugin_cs.qm</file>
+ <file>qsui_plugin_pt_BR.qm</file>
+ <file>qsui_plugin_pt.qm</file>
+ <file>qsui_plugin_de.qm</file>
+ <file>qsui_plugin_pl_PL.qm</file>
+ <file>qsui_plugin_fr.qm</file>
+ <file>qsui_plugin_it.qm</file>
+ <file>qsui_plugin_kk.qm</file>
+ <file>qsui_plugin_lt.qm</file>
+ <file>qsui_plugin_hu.qm</file>
+ <file>qsui_plugin_nl.qm</file>
+ <file>qsui_plugin_ja.qm</file>
+ <file>qsui_plugin_sk.qm</file>
+ <file>qsui_plugin_es.qm</file>
+ <file>qsui_plugin_he.qm</file>
+ <file>qsui_plugin_gl_ES.qm</file>
+ <file>qsui_plugin_sr_BA.qm</file>
+ <file>qsui_plugin_sr_RS.qm</file>
+ <file>qsui_plugin_bg.qm</file>
+ <file>qsui_plugin_el.qm</file>
+ </qresource>
+</RCC>
diff --git a/src/plugins/Ui/qsui/txt/ascii_logo.txt b/src/plugins/Ui/qsui/txt/ascii_logo.txt
new file mode 100644
index 000000000..b533d97ac
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/ascii_logo.txt
@@ -0,0 +1,18 @@
+
+ \ /
+ ____________ \_/ ____________
+ _/XXXXXXXXXXXX\_/X\_/XXXXXXXXXXXX\_
+ /XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\
+ |XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX|
+ \_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_/
+ \XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/
+ \_XXXXXXXXXXXXXXXXXXXXXXXXX_/
+ |_XXXXXXXXXXXXXXXXXXXXX_|
+ |XXXXXXXXXXXXXXXXXXX|
+ /XXXXXXXXXXXXXXXXXXX\
+ |__XXXXXXXXXXXXXXX__|
+ \XXXXXXXXXXXXX/
+ |XXXX___XXXX|
+ |XXX/ \XXX|
+ |XX| |XX|
+ |__| |__|
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors.txt b/src/plugins/Ui/qsui/txt/qsui_authors.txt
new file mode 100644
index 000000000..03f800b43
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors.txt
@@ -0,0 +1,63 @@
+Developers:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Translators:
+
+Chinese Traditional:
+ lon <lon83129@126.com>
+
+Chinese Simplified:
+ lon <lon83129@126.com>
+
+Czech:
+ Karel Volný <kvolny@redhat.com>
+
+French:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+German:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Hebrew:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Hungarian:
+ Németh Gábor <sutee84@freemail.hu>
+
+Italian:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japanese:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Kazakh:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Lithuanian:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Polish:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Portuguese:
+ Sérgio Marques <smarquespt@gmail.com>
+
+Russian:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Serbian:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Slovak:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Spanish:
+ Félix Medrano <xukosky@yahoo.es>
+
+Turkish:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Ukrainian:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_cs.txt b/src/plugins/Ui/qsui/txt/qsui_authors_cs.txt
new file mode 100644
index 000000000..6e0c26452
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_cs.txt
@@ -0,0 +1,57 @@
+Vývojáři:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Překladatelé:
+
+Tradiční čínština:
+ lon <lon83129@126.com>
+
+Zjednodušená čínština:
+ lon <lon83129@126.com>
+
+Čeština:
+ Karel Volný <kvolny@redhat.com>
+
+Francouzština:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Němčina:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Hebrejština:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Maďarština:
+ Németh Gábor <sutee84@freemail.hu>
+
+Italština:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japonština:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Kazaština:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Litevština:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Polština:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Ručtina:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Slovenština:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Španělština:
+ Félix Medrano <xukosky@yahoo.es>
+
+Turečtina:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Ukrajinština:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_de.txt b/src/plugins/Ui/qsui/txt/qsui_authors_de.txt
new file mode 100644
index 000000000..a5b968116
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_de.txt
@@ -0,0 +1,63 @@
+Entwickler:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Übersetzer:
+
+Chinesisch traditionell:
+ lon <lon83129@126.com>
+
+Chinesisch vereinfacht:
+ lon <lon83129@126.com>
+
+Tschechisch:
+ Karel Volný <kvolny@redhat.com>
+
+Französisch:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Deutsch:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Hebräisch:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Ungarisch:
+ Németh Gábor <sutee84@freemail.hu>
+
+Italienisch:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japanisch:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Kasachisch:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Litauisch:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Polnisch:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Portugiesisch:
+ Sérgio Marques <smarquespt@gmail.com>
+
+Russisch:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Serbisch:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Slowakisch:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Spanisch:
+ Félix Medrano <xukosky@yahoo.es>
+
+Türkisch:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Ukrainisch:
+ Gennadi Motsyo <drool@altlinux.ru> \ No newline at end of file
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_he.txt b/src/plugins/Ui/qsui/txt/qsui_authors_he.txt
new file mode 100644
index 000000000..a4978eacc
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_he.txt
@@ -0,0 +1,54 @@
+מפתחים:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+מתרגמים:
+
+סינית מסורתית:
+ lon <lon83129@126.com>
+
+סינית מפושטת:
+ lon <lon83129@126.com>
+
+צ׳כית:
+ Karel Volný <kvolny@redhat.com>
+
+צרפתית:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+גרמנית:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+הונגרית:
+ Németh Gábor <sutee84@freemail.hu>
+
+איטלקית:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+יפנית:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+קזכית:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+ליטאית:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+פולנית:
+ Grzegorz Gibas <amigib@gmail.com>
+
+רוסית:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+סלובקית:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+ספרדית:
+ Félix Medrano <xukosky@yahoo.es>
+
+טורקית:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+אוקראינית:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_ja.txt b/src/plugins/Ui/qsui/txt/qsui_authors_ja.txt
new file mode 100644
index 000000000..3e55dce24
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_ja.txt
@@ -0,0 +1,58 @@
+開発者:
+ Илья Котов (Ilya Kotov) <forkotov02@hotmail.ru>
+
+翻訳者:
+イタリア語
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+ウクライナ語
+ Геннадий Моцьо (Gennadi Motsyo) <drool@altlinux.ru>
+
+オランダ語
+ Ronald Uitermark <ronald645@gmail.com>
+
+カザフ語
+ Бауржан Муфтахидинов (Baurzhan Muftakhidinov) <baurthefirst@gmail.com>
+
+スペイン語
+ Félix Medrano <xukosky@yahoo.es>
+
+スロバキア語
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+チェコ語
+ Karel Volný <kvolny@redhat.com>
+
+ドイツ語
+ Stefan Koelling <stefankoelling.ext@googlemail.com>
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+トルコ語
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+ブラジル ポルトガル語
+ Klaos Lacerda
+ Bruno Gonçalves
+
+フランス語
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+ポーランド語
+ Grzegorz Gibas <amigib@gmail.com>
+
+マジャール語
+ Németh Gábor <sutee84@freemail.hu>
+
+リトアニア語
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+ロシア語
+ Илья Котов (Ilya Kotov) <forkotov02@hotmail.ru>
+
+簡体字中国語
+繁体字中国語
+ 李红昆 (lon) <lon83129@126.com>
+
+日本語
+ 島本良太 <liangtai.s16@gmail.com>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_lt_LT.txt b/src/plugins/Ui/qsui/txt/qsui_authors_lt_LT.txt
new file mode 100644
index 000000000..d30bd8df8
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_lt_LT.txt
@@ -0,0 +1,54 @@
+Kūrėjai:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Vertėjai:
+
+Kinų tradicinis:
+ lon <lon83129@126.com>
+
+Kinų supaprastintas:
+ lon <lon83129@126.com>
+
+Čekų:
+ Karel Volný <kvolny@redhat.com>
+
+Prancūzų:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Vokiečių:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Olandų:
+ Németh Gábor <sutee84@freemail.hu>
+
+Italų:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japonų:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Kazachų:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Lietuvių:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Lenkų:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Rusų:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Slovakų:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Ispanų:
+ Félix Medrano <xukosky@yahoo.es>
+
+Turkų:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Ukrainiečių:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_nl.txt b/src/plugins/Ui/qsui/txt/qsui_authors_nl.txt
new file mode 100644
index 000000000..0f1cb3dfb
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_nl.txt
@@ -0,0 +1,54 @@
+Ontwikkelaars:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Vertalers:
+
+Traditioneel Chinees:
+ lon <lon83129@126.com>
+
+Gesimplificeerd Chinees:
+ lon <lon83129@126.com>
+
+Tjechisch:
+ Karel Volný <kvolny@redhat.com>
+
+Frans:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Duits:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Hongaars:
+ Németh Gábor <sutee84@freemail.hu>
+
+Italiaans:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japans:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Kazachstaans:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Litouws:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Pools:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Russisch:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Slowaaks:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Spaans:
+ Félix Medrano <xukosky@yahoo.es>
+
+Turks:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Oekraïens:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_pl_PL.txt b/src/plugins/Ui/qsui/txt/qsui_authors_pl_PL.txt
new file mode 100644
index 000000000..497ae2817
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_pl_PL.txt
@@ -0,0 +1,60 @@
+Główni programiści:
+
+ Ilya Kotov <forkotov02@hotmail.ru> (pomysł i właściwy kod)
+
+Tłumaczenie:
+
+Chiński Tradycyjny:
+ lon <lon83129@126.com>
+
+Chiński Uproszczony:
+ lon <lon83129@126.com>
+
+Czeski:
+ Karel Volný <kvolny@redhat.com>
+
+Francuski:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Niemiecki:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Hebrajski:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Węgierski:
+ Németh Gábor <sutee84@freemail.hu>
+
+Włoski:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japoński:
+ Rjota Šimamoto <liangtai.s16@gmail.com>
+
+Kazachski:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Litewski:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Polski:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Rosyjski:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Serbski:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Słowacki:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Hiszpański:
+ Félix Medrano <xukosky@yahoo.es>
+
+Turecki:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Ukraiński:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_pt.txt b/src/plugins/Ui/qsui/txt/qsui_authors_pt.txt
new file mode 100644
index 000000000..98e911bd1
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_pt.txt
@@ -0,0 +1,63 @@
+Programadores:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Tradutores:
+
+Mandarim tradicional:
+ lon <lon83129@126.com>
+
+Mandarim simplificado:
+ lon <lon83129@126.com>
+
+Checo:
+ Karel Volný <kvolny@redhat.com>
+
+Francês:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Alemão:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Hebraico:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Húngaro:
+ Németh Gábor <sutee84@freemail.hu>
+
+Italiano:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Japonês:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Cazaque:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Lituano:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Polaco:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Português:
+ Sérgio Marques <smarquespt@gmail.com>
+
+Russo:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Sérvio:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Eslovaco:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Espanhol:
+ Félix Medrano <xukosky@yahoo.es>
+
+Turco:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Ucraniano:
+ Gennadi Motsyo <drool@altlinux.ru> \ No newline at end of file
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_ru.txt b/src/plugins/Ui/qsui/txt/qsui_authors_ru.txt
new file mode 100644
index 000000000..6d29e95c8
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_ru.txt
@@ -0,0 +1,71 @@
+Разработчики:
+
+ Илья Котов <forkotov02@hotmail.ru>
+
+Переводчики:
+
+Бразильский португальский:
+ Klaos Lacerda
+ Bruno Gonçalves
+
+Венгерский:
+ Németh Gábor <sutee84@freemail.hu>
+
+Голландский:
+ Ronald Uitermark <ronald645@gmail.com>
+
+Итальянский:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Японский:
+ Рёта Симамото <liangtai.s16@gmail.com>
+
+Казахский:
+ Бауржан Муфтахидинов <baurthefirst@gmail.com>
+
+Китайский традиционный:
+ lon <lon83129@126.com>
+
+Китайский упрощённый:
+ lon <lon83129@126.com>
+
+Литовский:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Польский:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Португальский:
+ Sérgio Marques <smarquespt@gmail.com>
+
+Чешский:
+ Karel Volný <kvolny@redhat.com>
+
+Немецкий:
+ Stefan Koelling <stefankoelling.ext@googlemail.com>
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Иврит:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Русский:
+ Илья Котов <forkotov02@hotmail.ru>
+
+Сербский:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Словацкий:
+ Ján Ďanovský <dagsoftware@yahoo.co>
+
+Испанский:
+ Félix Medrano <xukosky@yahoo.es>
+
+Турецкий:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Украинский:
+ Геннадий Моцьо <drool@altlinux.ru>
+
+Французский:
+ Stanislas Zeller <uncensored.assault@gmail.com>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_sr_BA.txt b/src/plugins/Ui/qsui/txt/qsui_authors_sr_BA.txt
new file mode 100644
index 000000000..eb9fac8f2
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_sr_BA.txt
@@ -0,0 +1,60 @@
+Програмери:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Преводиоци:
+
+Традиционални кинески:
+ lon <lon83129@126.com>
+
+Поједностављени кинески:
+ lon <lon83129@126.com>
+
+Чешки:
+ Karel Volný <kvolny@redhat.com>
+
+Француски:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Њемачки:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Хебрејски:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Мађарски:
+ Németh Gábor <sutee84@freemail.hu>
+
+Италијански:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Јапански:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Казашки:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Литвански:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Пољски:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Руски:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Српски:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Словачки:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Шпански:
+ Félix Medrano <xukosky@yahoo.es>
+
+Турски:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Украјински:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_sr_RS.txt b/src/plugins/Ui/qsui/txt/qsui_authors_sr_RS.txt
new file mode 100644
index 000000000..2434a763a
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_sr_RS.txt
@@ -0,0 +1,60 @@
+Програмери:
+
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Преводиоци:
+
+Традиционални кинески:
+ lon <lon83129@126.com>
+
+Поједностављени кинески:
+ lon <lon83129@126.com>
+
+Чешки:
+ Karel Volný <kvolny@redhat.com>
+
+Француски:
+ Stanislas Zeller <uncensored.assault@gmail.com>
+
+Немачки:
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Хебрејски:
+ Genghis Khan <genghiskhan@gmx.ca>
+
+Мађарски:
+ Németh Gábor <sutee84@freemail.hu>
+
+Италијански:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Јапански:
+ Ryota Shimamoto <liangtai.s16@gmail.com>
+
+Казашки:
+ Baurzhan Muftakhidinov <baurthefirst@gmail.com>
+
+Литвански:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Пољски:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Руски:
+ Ilya Kotov <forkotov02@hotmail.ru>
+
+Српски:
+ Mladen Pejaković <pejakm@autistici.org>
+
+Словачки:
+ Ján Ďanovský <dagsoftware@yahoo.com>
+
+Шпански:
+ Félix Medrano <xukosky@yahoo.es>
+
+Турски:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Украјински:
+ Gennadi Motsyo <drool@altlinux.ru>
diff --git a/src/plugins/Ui/qsui/txt/qsui_authors_uk_UA.txt b/src/plugins/Ui/qsui/txt/qsui_authors_uk_UA.txt
new file mode 100644
index 000000000..a2da5449b
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_authors_uk_UA.txt
@@ -0,0 +1,62 @@
+розробники:
+
+ Ілля Котов <forkotov02@hotmail.ru>
+
+перекладачі:
+
+Бразильська португальська:
+ Klaos Lacerda
+ Bruno Gonçalves
+
+Угорська:
+ Németh Gábor <sutee84@freemail.hu>
+
+Голландська:
+ Ronald Uitermark <ronald645@gmail.com>
+
+Італійська:
+ Gian Paolo Renello <emmerkar@gmail.com>
+
+Японська:
+ Рьота Сімамото <liangtai.s16@gmail.com>
+
+Казахська:
+ Бауржан Муфтахідінов <baurthefirst@gmail.com>
+
+Китайська традиційна:
+ lon <lon83129@126.com>
+
+Китайська спрощена:
+ lon <lon83129@126.com>
+
+Литовська:
+ Algirdas Butkus <butkus.algirdas@gmail.com>
+
+Польська:
+ Grzegorz Gibas <amigib@gmail.com>
+
+Чеська:
+ Karel Volný <kvolny@redhat.com>
+
+Німецька:
+ Stefan Koelling <stefankoelling.ext@googlemail.com>
+ Panagiotis Papadopoulos <pano_90@gmx.net>
+
+Російська:
+ Ілля Котов <forkotov02@hotmail.ru>
+
+Словацька:
+ Ján Ďanovský <dagsoftware@yahoo.co>
+
+Іспанська:
+ Félix Medrano <xukosky@yahoo.es>
+
+Турецька:
+ Mustafa GUNAY <mustafagunay@pgmail.com>
+ Bilgesu Güngör <h.ibrahim.gungor@gmail.com>
+
+Українська:
+ Геннадій Моцьо <drool@altlinux.ru>
+
+Французька:
+ Stanislas Zeller <uncensored.assault@gmail.com>
diff --git a/src/plugins/Ui/qsui/txt/qsui_txt.qrc b/src/plugins/Ui/qsui/txt/qsui_txt.qrc
new file mode 100644
index 000000000..38960e5fb
--- /dev/null
+++ b/src/plugins/Ui/qsui/txt/qsui_txt.qrc
@@ -0,0 +1,19 @@
+<!DOCTYPE RCC>
+<RCC version="1.0">
+ <qresource>
+ <file>ascii_logo.txt</file>
+ <file>qsui_authors.txt</file>
+ <file>qsui_authors_ja.txt</file>
+ <file>qsui_authors_nl.txt</file>
+ <file>qsui_authors_pl_PL.txt</file>
+ <file>qsui_authors_ru.txt</file>
+ <file>qsui_authors_uk_UA.txt</file>
+ <file>qsui_authors_lt_LT.txt</file>
+ <file>qsui_authors_he.txt</file>
+ <file>qsui_authors_cs.txt</file>
+ <file>qsui_authors_sr_BA.txt</file>
+ <file>qsui_authors_sr_RS.txt</file>
+ <file>qsui_authors_pt.txt</file>
+ <file>qsui_authors_de.txt</file>
+ </qresource>
+</RCC>
diff --git a/src/plugins/Ui/qsui/visualmenu.cpp b/src/plugins/Ui/qsui/visualmenu.cpp
new file mode 100644
index 000000000..b9a863469
--- /dev/null
+++ b/src/plugins/Ui/qsui/visualmenu.cpp
@@ -0,0 +1,61 @@
+/***************************************************************************
+ * Copyright (C) 2007-2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+
+#include <QAction>
+
+#include <qmmp/visual.h>
+#include <qmmp/visualfactory.h>
+#include "visualmenu.h"
+
+VisualMenu::VisualMenu(QWidget *parent) : QMenu(tr("Visualization"), parent)
+{
+ VisualFactory *factory = 0;
+ foreach(factory, Visual::factories())
+ {
+ VisualAction *act = new VisualAction(factory, this);
+ addAction(act);
+ }
+}
+
+VisualMenu::~VisualMenu()
+{
+}
+
+void VisualMenu::updateActions()
+{
+ for(int i = 0; i < Visual::factories().size(); ++i)
+ {
+ actions()[i]->setChecked(Visual::isEnabled(Visual::factories().at(i)));
+ }
+}
+
+VisualAction::VisualAction(VisualFactory *factory, QWidget *parent) :
+ QAction(factory->properties().name, parent)
+{
+ setCheckable (true);
+ setChecked (Visual::isEnabled(factory));
+ m_factory = factory;
+ connect(this, SIGNAL(triggered(bool)), SLOT(select(bool)));
+}
+
+void VisualAction::select(bool select)
+{
+ Visual::setEnabled(m_factory, select);
+}
diff --git a/src/plugins/Ui/qsui/visualmenu.h b/src/plugins/Ui/qsui/visualmenu.h
new file mode 100644
index 000000000..198fb4b71
--- /dev/null
+++ b/src/plugins/Ui/qsui/visualmenu.h
@@ -0,0 +1,57 @@
+/***************************************************************************
+ * Copyright (C) 2007-2012 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., *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
+ ***************************************************************************/
+#ifndef VISUALMENU_H
+#define VISUALMENU_H
+
+#include <QMenu>
+#include <QAction>
+
+class VisualFactory;
+
+/**
+ @author Ilya Kotov <forkotov02@hotmail.ru>
+*/
+class VisualMenu : public QMenu
+{
+ Q_OBJECT
+public:
+ VisualMenu(QWidget *parent = 0);
+
+ ~VisualMenu();
+
+public slots:
+ void updateActions();
+};
+
+class VisualAction : public QAction
+{
+ Q_OBJECT
+public:
+ VisualAction(VisualFactory *factory, QWidget *parent = 0);
+
+private slots:
+ void select(bool);
+
+private:
+ VisualFactory *m_factory;
+
+};
+
+#endif