aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Visual
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-02-28 20:16:19 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-02-28 20:16:19 +0000
commit4df23e9b87f7124b59778aa02ab776e842989e0e (patch)
tree843f342dd0d203d0f3ac2a59ab26e1894ea8144d /src/plugins/Visual
parent73dc5b282e3fdd858910fb87de689237a58ea6a6 (diff)
downloadqmmp-4df23e9b87f7124b59778aa02ab776e842989e0e.tar.gz
qmmp-4df23e9b87f7124b59778aa02ab776e842989e0e.tar.bz2
qmmp-4df23e9b87f7124b59778aa02ab776e842989e0e.zip
enapled projectM plugin
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@812 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Visual')
-rw-r--r--src/plugins/Visual/CMakeLists.txt5
-rw-r--r--src/plugins/Visual/Visual.pro8
-rw-r--r--src/plugins/Visual/projectm/CMakeLists.txt62
-rw-r--r--src/plugins/Visual/projectm/projectm.pro29
-rw-r--r--src/plugins/Visual/projectm/projectmplugin.cpp (renamed from src/plugins/Visual/projectm/analyzer.cpp)102
-rw-r--r--src/plugins/Visual/projectm/projectmplugin.h (renamed from src/plugins/Visual/projectm/analyzer.h)59
-rw-r--r--src/plugins/Visual/projectm/projectmwidget.cpp106
-rw-r--r--src/plugins/Visual/projectm/projectmwidget.h25
-rw-r--r--src/plugins/Visual/projectm/qprojectm.h35
-rw-r--r--src/plugins/Visual/projectm/translations/projectm_plugin_cs.ts128
-rw-r--r--src/plugins/Visual/projectm/translations/projectm_plugin_de.ts128
-rw-r--r--src/plugins/Visual/projectm/translations/projectm_plugin_ru.ts128
-rw-r--r--src/plugins/Visual/projectm/translations/projectm_plugin_uk_UA.ts128
-rw-r--r--src/plugins/Visual/projectm/translations/projectm_plugin_zh_CN.ts128
-rw-r--r--src/plugins/Visual/projectm/translations/projectm_plugin_zh_TW.ts128
-rw-r--r--src/plugins/Visual/projectm/translations/translations.qrc11
-rw-r--r--src/plugins/Visual/projectm/visualprojectmfactory.cpp21
-rw-r--r--src/plugins/Visual/projectm/visualprojectmfactory.h2
18 files changed, 1019 insertions, 214 deletions
diff --git a/src/plugins/Visual/CMakeLists.txt b/src/plugins/Visual/CMakeLists.txt
index de8652ddf..c6571092a 100644
--- a/src/plugins/Visual/CMakeLists.txt
+++ b/src/plugins/Visual/CMakeLists.txt
@@ -1,5 +1,10 @@
SET(USE_ANALYZER TRUE CACHE BOOL "enable/disable analyzer plugin")
+SET(USE_PROJECTM TRUE CACHE BOOL "enable/disable projectm plugin")
IF(USE_ANALYZER)
add_subdirectory(analyzer)
ENDIF(USE_ANALYZER)
+
+IF(USE_PROJECTM)
+add_subdirectory(projectm)
+ENDIF(USE_PROJECTM)
diff --git a/src/plugins/Visual/Visual.pro b/src/plugins/Visual/Visual.pro
index e30196780..527a03997 100644
--- a/src/plugins/Visual/Visual.pro
+++ b/src/plugins/Visual/Visual.pro
@@ -1,3 +1,11 @@
+include(../../../qmmp.pri)
TEMPLATE = subdirs
SUBDIRS += analyzer
+
+contains(CONFIG, PROJECTM_PLUGIN){
+ SUBDIRS += projectm
+ message(***************************)
+ message(* projectM plugin enabled *)
+ message(***************************)
+}
diff --git a/src/plugins/Visual/projectm/CMakeLists.txt b/src/plugins/Visual/projectm/CMakeLists.txt
new file mode 100644
index 000000000..ba0e7f808
--- /dev/null
+++ b/src/plugins/Visual/projectm/CMakeLists.txt
@@ -0,0 +1,62 @@
+project(libprojectm)
+
+cmake_minimum_required(VERSION 2.4.7)
+
+SET (QT_USE_QTOPENGL TRUE)
+INCLUDE(FindQt4)
+include(${QT_USE_FILE})
+
+if(COMMAND cmake_policy)
+cmake_policy(SET CMP0003 NEW)
+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)
+
+include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+SET(QT_INCLUDES
+ ${QT_INCLUDES}
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../../
+)
+
+# libqmmp
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../)
+link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
+
+# projectM
+pkg_search_module(PROJECTM libprojectM)
+
+SET(libprojectm_SRCS
+ projectmwidget.cpp
+ projectmplugin.cpp
+ visualprojectmfactory.cpp
+)
+
+SET(libprojectm_MOC_HDRS
+ projectmwidget.h
+ projectmplugin.h
+ visualprojectmfactory.h
+)
+
+SET(libprojectm_RCCS translations/translations.qrc)
+
+QT4_ADD_RESOURCES(libprojectm_RCC_SRCS ${libprojectm_RCCS})
+
+QT4_WRAP_CPP(libprojectm_MOC_SRCS ${libprojectm_MOC_HDRS})
+
+
+# Don't forget to include output directory, otherwise
+# the UI file won't be wrapped!
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(PROJECTM_FOUND)
+ADD_LIBRARY(projectm SHARED ${libprojectm_SRCS} ${libprojectm_MOC_SRCS} ${libprojectm_RCC_SRCS})
+add_dependencies(projectm qmmp)
+target_link_libraries(projectm ${QT_LIBRARIES} -lqmmp ${PROJECTM_LDFLAGS} ${PROJECTM_CFLAGS})
+install(TARGETS projectm DESTINATION ${LIB_DIR}/qmmp/Visual)
+ENDIF(PROJECTM_FOUND)
diff --git a/src/plugins/Visual/projectm/projectm.pro b/src/plugins/Visual/projectm/projectm.pro
index 9f3682077..790a97e40 100644
--- a/src/plugins/Visual/projectm/projectm.pro
+++ b/src/plugins/Visual/projectm/projectm.pro
@@ -3,34 +3,31 @@ include(../../plugins.pri)
TARGET =$$PLUGINS_PREFIX/Visual/projectm
QMAKE_CLEAN =$$PLUGINS_PREFIX/Visual/libprojectm.so
-
-#FORMS += settingsdialog.ui
-HEADERS += analyzer.h \
+HEADERS += projectmwidget.h \
visualprojectmfactory.h \
- projectmwidget.h \
- qprojectm.h
-SOURCES += analyzer.cpp \
+ projectmplugin.h
+SOURCES += projectmplugin.cpp \
visualprojectmfactory.cpp \
- projectmwidget.cpp
+ projectmwidget.cpp
INCLUDEPATH += ../../../
CONFIG += release \
warn_on \
plugin \
link_pkgconfig
-PKGCONFIG += libprojectM-qt libprojectM
-INCLUDEPATH += /usr/include/libprojectM
+PKGCONFIG += libprojectM
TEMPLATE = lib
QMAKE_LIBDIR += ../../../../lib
+QT += opengl
LIBS += -lqmmp -L/usr/lib -I/usr/include
-#TRANSLATIONS = translations/projectm_plugin_cs.ts
-# translations/projectm_plugin_de.ts
-# translations/projectm_plugin_zh_CN.ts
-# translations/projectm_plugin_zh_TW.ts
-# translations/projectm_plugin_ru.ts
-# translations/projectm_plugin_uk_UA.ts
-#RESOURCES = translations/translations.qrc
+TRANSLATIONS = translations/projectm_plugin_cs.ts \
+ translations/projectm_plugin_de.ts \
+ translations/projectm_plugin_zh_CN.ts \
+ translations/projectm_plugin_zh_TW.ts \
+ translations/projectm_plugin_ru.ts \
+ translations/projectm_plugin_uk_UA.ts
+RESOURCES = translations/translations.qrc
isEmpty(LIB_DIR){
LIB_DIR = /lib
diff --git a/src/plugins/Visual/projectm/analyzer.cpp b/src/plugins/Visual/projectm/projectmplugin.cpp
index 86a2b4021..7a0f80676 100644
--- a/src/plugins/Visual/projectm/analyzer.cpp
+++ b/src/plugins/Visual/projectm/projectmplugin.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2007 by Ilya Kotov *
+ * Copyright (C) 2009 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -23,106 +23,40 @@
#include <QMenu>
#include <QActionGroup>
#include <QHBoxLayout>
-
-#include <qmmp/buffer.h>
-#include <qmmp/constants.h>
-#include <qmmp/output.h>
#include <math.h>
#include <stdlib.h>
#include <locale.h>
-#include <projectM.hpp>
+#include <libprojectM/projectM.hpp>
+#include <qmmp/buffer.h>
+#include <qmmp/constants.h>
+#include <qmmp/output.h>
#include "projectmwidget.h"
-#include "analyzer.h"
-
+#include "projectmplugin.h"
-Analyzer::Analyzer (QWidget *parent)
- : Visual (parent), m_fps ( 20 )
+ProjectMPlugin::ProjectMPlugin (QWidget *parent)
+ : Visual (parent)
{
- setlocale(LC_NUMERIC, "C");
+ setlocale(LC_NUMERIC, "C"); //fixes none-english locales problem
+ setWindowTitle(tr("projectM"));
m_projectMWidget = new ProjectMWidget(this);
QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget(m_projectMWidget);
layout->setContentsMargins(0,0,0,0);
setLayout(layout);
- resize(300,300);
+ resize(300,300); //TODO save/load geometry
}
-Analyzer::~Analyzer()
-{
- while (!m_nodes.isEmpty())
- m_nodes.removeFirst();
- //m_window->deleteLater();
-}
+ProjectMPlugin::~ProjectMPlugin()
+{}
-void Analyzer::clear()
+void ProjectMPlugin::clear()
{
- while (!m_nodes.isEmpty())
- m_nodes.removeFirst();
- for ( int i = 0; i< 75; ++i )
- {
- m_intern_vis_data[i] = 0;
- m_peaks[i] = 0;
- }
update();
}
-void Analyzer::add ( Buffer *b, unsigned long w, int c, int p )
-{
- if (m_projectMWidget->projectM())
- m_projectMWidget->projectM()->pcm()->addPCM16Data((short *)b->data, b->nbytes/4);
-}
-
-void Analyzer::keyReleaseEvent (QKeyEvent *e)
-{
-
- projectMKeycode pkey;
- bool ignore = FALSE;
- switch (e->key())
- {
- case Qt::Key_F:
- {
- setWindowState (windowState() ^Qt::WindowFullScreen);
- return;
- }
- case Qt::Key_M:
- pkey = PROJECTM_K_M;
- break;
- case Qt::Key_F4:
- pkey = PROJECTM_K_F4;
- break;
- case Qt::Key_F3:
- pkey = PROJECTM_K_F3;
- break;
- case Qt::Key_F2:
- pkey = PROJECTM_K_F2;
- break;
- case Qt::Key_F1:
- pkey = PROJECTM_K_F1;
- break;
- case Qt::Key_R:
- pkey = PROJECTM_K_r;
- break;
- case Qt::Key_L:
- pkey = PROJECTM_K_l;
- ignore = true;
- break;
- case Qt::Key_N:
- pkey = PROJECTM_K_n;
- break;
- case Qt::Key_P:
- pkey = PROJECTM_K_p;
- break;
- case Qt::Key_F5:
- pkey = PROJECTM_K_F5;
- break;
- default:
- e->ignore();
- return;
- }
- projectMModifier modifier;
-
- m_projectMWidget->projectM()->key_handler(PROJECTM_KEYDOWN, pkey, modifier);
- if (ignore)
- e->ignore();
+void ProjectMPlugin::add ( Buffer *b, unsigned long, int, int)
+{ //TODO 8 bit support
+ if (m_projectMWidget->projectMInstance())
+ m_projectMWidget->projectMInstance()->pcm()->addPCM16Data((short *)b->data, b->nbytes/4);
}
diff --git a/src/plugins/Visual/projectm/analyzer.h b/src/plugins/Visual/projectm/projectmplugin.h
index 77f9b5d3a..a3a5a7bfb 100644
--- a/src/plugins/Visual/projectm/analyzer.h
+++ b/src/plugins/Visual/projectm/projectmplugin.h
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2007 by Ilya Kotov *
+ * Copyright (C) 2009 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -17,78 +17,31 @@
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-#ifndef ANALYZER_H
-#define ANALYZER_H
+#ifndef PROJECTMPLUGIN_H
+#define PROJECTMPLUGIN_H
#include <QWidget>
-#include <QMutex>
-#include <QResizeEvent>
#include <qmmp/visual.h>
#include <qmmp/constants.h>
-#include <QDir>
-#include <libprojectM-qt/qprojectm_mainwindow.hpp>
-class QSettings;
class QTimer;
-class QMenu;
-class QActionGroup;
-
class Buffer;
-
class ProjectMWidget;
-
-class VisualNode
-{
-public:
- VisualNode(short *l, short *r, unsigned long n, unsigned long o)
- : left(l), right(r), length(n), offset(o)
- {
- // left and right are allocated and then passed to this class
- // the code that allocated left and right should give up all ownership
- }
-
- ~VisualNode()
- {
- delete [] left;
- delete [] right;
- }
-
- short *left, *right;
- long length, offset;
-};
-
-class Analyzer : public Visual
+class ProjectMPlugin : public Visual
{
Q_OBJECT
public:
- Analyzer(QWidget *parent = 0);
- virtual ~Analyzer();
+ ProjectMPlugin(QWidget *parent = 0);
+ virtual ~ProjectMPlugin();
void add(Buffer *, unsigned long, int, int);
void clear();
private:
- void keyReleaseEvent (QKeyEvent *e);
- QPixmap m_pixmap;
- QPixmap m_bg;
- QList <VisualNode*> m_nodes;
QTimer *m_timer;
ProjectMWidget *m_projectMWidget;
- QMutex mutex;
- int m_fps;
- double m_intern_vis_data[75];
- double m_peaks[75];
- double m_peaks_falloff;
- double m_analyzer_falloff;
- bool m_show_peaks;
- //colors
- QColor m_color1;
- QColor m_color2;
- QColor m_color3;
- QColor m_bgColor;
- QColor m_peakColor;
};
diff --git a/src/plugins/Visual/projectm/projectmwidget.cpp b/src/plugins/Visual/projectm/projectmwidget.cpp
index 7cc7d233b..463065a73 100644
--- a/src/plugins/Visual/projectm/projectmwidget.cpp
+++ b/src/plugins/Visual/projectm/projectmwidget.cpp
@@ -2,6 +2,11 @@
* Copyright (C) 2009 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
+ * Copyright (C) 2007 by projectM team *
+ * *
+ * Carmelo Piccione and carmelo.piccione+projectM@gmail.com *
+ * carmelo.piccione+projectM@gmail.com *
+ * *
* 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 *
@@ -21,9 +26,16 @@
#include <QTimer>
#include <QDir>
#include <QKeyEvent>
-
+#include <QMenu>
+#include <libprojectM/projectM.hpp>
+#include <qmmp/soundcore.h>
+#include <qmmp/qmmp.h>
#include "projectmwidget.h"
+#ifndef PROJECTM_CONFIG
+#define PROJECTM_CONFIG "/usr/share/projectM/config.inp"
+#endif
+
ProjectMWidget::ProjectMWidget(QWidget *parent)
: QGLWidget(parent)
{
@@ -32,6 +44,8 @@ ProjectMWidget::ProjectMWidget(QWidget *parent)
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()),SLOT(updateGL ()));
timer->start(0);
+ m_menu = new QMenu(this);
+ connect(SoundCore::instance(), SIGNAL(metaDataChanged()), SLOT(updateTitle()));
}
@@ -42,7 +56,7 @@ ProjectMWidget::~ProjectMWidget()
m_projectM = 0;
}
-QProjectM *ProjectMWidget::projectM()
+projectM *ProjectMWidget::projectMInstance()
{
return m_projectM;
}
@@ -70,16 +84,19 @@ void ProjectMWidget::initializeGL()
glLineStipple(2, 0xAAAA);
if (!m_projectM)
{
- m_projectM = new QProjectM("/usr/share/projectM/config.inp");
-
-
- QString file(m_projectM->settings().presetURL.c_str());
-
- foreach (QFileInfo info, QDir(file).entryInfoList())
+ m_projectM = new projectM(PROJECTM_CONFIG, projectM::FLAG_DISABLE_PLAYLIST_LOAD);
+ QString presetPath (m_projectM->settings().presetURL.c_str());
+ QDir presetDir(presetPath);
+ presetDir.setFilter(QDir::Files);
+ QStringList filters;
+ filters << "*.prjm" << "*.milk";
+ QFileInfoList l = presetDir.entryInfoList(filters);
+ foreach (QFileInfo info, l)
{
- if (info.fileName().toLower().endsWith(".prjm") || info.fileName().toLower().endsWith(".milk"))
- m_projectM->addPresetURL ( info.absoluteFilePath().toStdString(), info.fileName().toStdString(), 1);
+ m_projectM->addPresetURL (info.absoluteFilePath().toStdString(), info.fileName().toStdString(), 1);
}
+ createActions();
+ updateTitle();
}
}
@@ -97,3 +114,72 @@ void ProjectMWidget::paintGL()
if (m_projectM)
m_projectM->renderFrame();
}
+
+void ProjectMWidget::mousePressEvent (QMouseEvent *event)
+{
+ if (event->button () == Qt::RightButton)
+ m_menu->exec(event->globalPos());
+}
+
+void ProjectMWidget::createActions()
+{
+ m_menu->addAction(tr("&Help"), this, SLOT(showHelp()), tr("F1"));
+ m_menu->addAction(tr("&Show Song Title"), this, SLOT(showTitle()), tr("F2"));
+ m_menu->addAction(tr("&Show Preset Name"), this, SLOT(showPresetName()), tr("F3"));
+ m_menu->addSeparator();
+ m_menu->addAction(tr("&Next Preset"), this, SLOT(nextPreset()), tr("N"));
+ m_menu->addAction(tr("&Previous Preset"), this, SLOT(previousPreset()), tr("P"));
+ m_menu->addAction(tr("&Random Preset"), this, SLOT(randomPreset()), tr("R"));
+ m_menu->addAction(tr("&Lock Preset"), this, SLOT(lockPreset()), tr("L"));
+ m_menu->addSeparator();
+ m_menu->addAction(tr("&Fullscreen"), this, SLOT(fullScreen()), tr("F"));
+ m_menu->addSeparator();
+ parentWidget()->addActions(m_menu->actions());
+}
+
+void ProjectMWidget::showHelp()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_F1, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::showPresetName()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_F3, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::showTitle()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_F2, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::nextPreset()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_n, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::previousPreset()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_p, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::randomPreset()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_r, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::lockPreset()
+{
+ m_projectM->key_handler(PROJECTM_KEYDOWN, PROJECTM_K_l, PROJECTM_KMOD_LSHIFT);
+}
+
+void ProjectMWidget::fullScreen()
+{
+ parentWidget()->setWindowState (parentWidget()->windowState() ^Qt::WindowFullScreen);
+}
+
+void ProjectMWidget::updateTitle()
+{
+ std::string artist = SoundCore::instance()->metaData(Qmmp::ARTIST).toLocal8Bit().constData();
+ std::string title = SoundCore::instance()->metaData(Qmmp::TITLE).toLocal8Bit().constData();
+ m_projectM->projectM_setTitle(artist + " - " + title);
+}
diff --git a/src/plugins/Visual/projectm/projectmwidget.h b/src/plugins/Visual/projectm/projectmwidget.h
index 55809e80f..2cf6c9302 100644
--- a/src/plugins/Visual/projectm/projectmwidget.h
+++ b/src/plugins/Visual/projectm/projectmwidget.h
@@ -20,11 +20,11 @@
#ifndef PROJECTMWIDGET_H
#define PROJECTMWIDGET_H
-
-#include "qprojectm.h"
#include <QGLWidget>
-class QProjectM;
+
+class QMenu;
+class projectM;
/**
@@ -38,15 +38,30 @@ public:
~ProjectMWidget();
- QProjectM *projectM();
+ projectM *projectMInstance();
protected:
virtual void initializeGL();
virtual void resizeGL(int width, int height);
virtual void paintGL();
+ virtual void mousePressEvent (QMouseEvent *event);
+
+private slots:
+ void showHelp();
+ void showPresetName();
+ void showTitle();
+ void nextPreset();
+ void previousPreset();
+ void randomPreset();
+ void lockPreset();
+ void fullScreen();
+ void updateTitle();
private:
- QProjectM *m_projectM;
+ projectM *m_projectM;
+ QMenu *m_menu;
+ void createActions();
+
};
diff --git a/src/plugins/Visual/projectm/qprojectm.h b/src/plugins/Visual/projectm/qprojectm.h
deleted file mode 100644
index b96280fd2..000000000
--- a/src/plugins/Visual/projectm/qprojectm.h
+++ /dev/null
@@ -1,35 +0,0 @@
-//
-// C++ Interface: qprojectm
-//
-// Description:
-//
-//
-// Author: Carmelo Piccione <carmelo.piccione@gmail.com>, (C) 2008
-//
-// Copyright: See COPYING file that comes with this distribution
-//
-//
-
-#ifndef QPROJECTM_HPP
-#define QPROJECTM_HPP
-#include <libprojectM/projectM.hpp>
-#include <QObject>
-
-class QProjectM : public QObject, public projectM
-{
-
- Q_OBJECT
-
-public:
- QProjectM(const std::string & config_file) : projectM(config_file, projectM::FLAG_DISABLE_PLAYLIST_LOAD) {}
-
- void presetSwitchedEvent(bool hardCut, unsigned int index) const
- {
- presetSwitchedSignal(hardCut, index);
- }
-
-signals:
- void presetSwitchedSignal(bool hardCut, unsigned int index) const;
-
-};
-#endif
diff --git a/src/plugins/Visual/projectm/translations/projectm_plugin_cs.ts b/src/plugins/Visual/projectm/translations/projectm_plugin_cs.ts
new file mode 100644
index 000000000..ed017c134
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/projectm_plugin_cs.ts
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0">
+<context>
+ <name>ProjectMPlugin</name>
+ <message>
+ <location filename="../projectmplugin.cpp" line="41"/>
+ <source>projectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ProjectMWidget</name>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>F1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>&amp;Show Song Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>&amp;Show Preset Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>F3</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>&amp;Next Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>&amp;Previous Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>&amp;Random Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>&amp;Lock Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>L</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>&amp;Fullscreen</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualProjectMFactory</name>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="28"/>
+ <source>ProjectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="48"/>
+ <source>About ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="49"/>
+ <source>Qmmp ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="50"/>
+ <source>This plugins adds projectM visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="51"/>
+ <source>Writen by: Ilya Kotov &lt;forkotov02@hotmail.ru&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="52"/>
+ <source>Based on llibrojectM-qt library</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Visual/projectm/translations/projectm_plugin_de.ts b/src/plugins/Visual/projectm/translations/projectm_plugin_de.ts
new file mode 100644
index 000000000..ed017c134
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/projectm_plugin_de.ts
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0">
+<context>
+ <name>ProjectMPlugin</name>
+ <message>
+ <location filename="../projectmplugin.cpp" line="41"/>
+ <source>projectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ProjectMWidget</name>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>F1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>&amp;Show Song Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>&amp;Show Preset Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>F3</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>&amp;Next Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>&amp;Previous Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>&amp;Random Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>&amp;Lock Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>L</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>&amp;Fullscreen</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualProjectMFactory</name>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="28"/>
+ <source>ProjectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="48"/>
+ <source>About ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="49"/>
+ <source>Qmmp ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="50"/>
+ <source>This plugins adds projectM visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="51"/>
+ <source>Writen by: Ilya Kotov &lt;forkotov02@hotmail.ru&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="52"/>
+ <source>Based on llibrojectM-qt library</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Visual/projectm/translations/projectm_plugin_ru.ts b/src/plugins/Visual/projectm/translations/projectm_plugin_ru.ts
new file mode 100644
index 000000000..faf6e28ec
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/projectm_plugin_ru.ts
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="ru_RU" sourcelanguage="ru_RU">
+<context>
+ <name>ProjectMPlugin</name>
+ <message>
+ <location filename="../projectmplugin.cpp" line="41"/>
+ <source>projectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ProjectMWidget</name>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>&amp;Help</source>
+ <translation>&amp;Справка</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>F1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>&amp;Show Song Title</source>
+ <translation>&amp;Показать название песни</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>&amp;Show Preset Name</source>
+ <translation>&amp;Показать имя предустановки</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>F3</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>&amp;Next Preset</source>
+ <translation>&amp;Следующая предустановка</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>&amp;Previous Preset</source>
+ <translation>&amp;Предыдущая предустановка</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>&amp;Random Preset</source>
+ <translation>&amp;Случайная предустановка</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>&amp;Lock Preset</source>
+ <translation>&amp;Заблокировать предустановку</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>L</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>&amp;Fullscreen</source>
+ <translation>&amp;Полноэкранный режим</translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualProjectMFactory</name>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="28"/>
+ <source>ProjectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="48"/>
+ <source>About ProjectM Visual Plugin</source>
+ <translation>О модуле ProjectM для Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="49"/>
+ <source>Qmmp ProjectM Visual Plugin</source>
+ <translation>Модуль projectM для Qmmp</translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="50"/>
+ <source>This plugins adds projectM visualization</source>
+ <translation>Этот модуль добавляет визуализацию projectM</translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="51"/>
+ <source>Writen by: Ilya Kotov &lt;forkotov02@hotmail.ru&gt;</source>
+ <translation>Разработчик: Илья Котов &lt;forkotov02@hotmail.ru&gt;</translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="52"/>
+ <source>Based on llibrojectM-qt library</source>
+ <translation>Основан на базе библиотеки libprojectM-qt</translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Visual/projectm/translations/projectm_plugin_uk_UA.ts b/src/plugins/Visual/projectm/translations/projectm_plugin_uk_UA.ts
new file mode 100644
index 000000000..ed017c134
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/projectm_plugin_uk_UA.ts
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0">
+<context>
+ <name>ProjectMPlugin</name>
+ <message>
+ <location filename="../projectmplugin.cpp" line="41"/>
+ <source>projectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ProjectMWidget</name>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>F1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>&amp;Show Song Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>&amp;Show Preset Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>F3</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>&amp;Next Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>&amp;Previous Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>&amp;Random Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>&amp;Lock Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>L</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>&amp;Fullscreen</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualProjectMFactory</name>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="28"/>
+ <source>ProjectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="48"/>
+ <source>About ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="49"/>
+ <source>Qmmp ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="50"/>
+ <source>This plugins adds projectM visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="51"/>
+ <source>Writen by: Ilya Kotov &lt;forkotov02@hotmail.ru&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="52"/>
+ <source>Based on llibrojectM-qt library</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Visual/projectm/translations/projectm_plugin_zh_CN.ts b/src/plugins/Visual/projectm/translations/projectm_plugin_zh_CN.ts
new file mode 100644
index 000000000..ed017c134
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/projectm_plugin_zh_CN.ts
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0">
+<context>
+ <name>ProjectMPlugin</name>
+ <message>
+ <location filename="../projectmplugin.cpp" line="41"/>
+ <source>projectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ProjectMWidget</name>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>F1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>&amp;Show Song Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>&amp;Show Preset Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>F3</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>&amp;Next Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>&amp;Previous Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>&amp;Random Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>&amp;Lock Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>L</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>&amp;Fullscreen</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualProjectMFactory</name>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="28"/>
+ <source>ProjectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="48"/>
+ <source>About ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="49"/>
+ <source>Qmmp ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="50"/>
+ <source>This plugins adds projectM visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="51"/>
+ <source>Writen by: Ilya Kotov &lt;forkotov02@hotmail.ru&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="52"/>
+ <source>Based on llibrojectM-qt library</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Visual/projectm/translations/projectm_plugin_zh_TW.ts b/src/plugins/Visual/projectm/translations/projectm_plugin_zh_TW.ts
new file mode 100644
index 000000000..ed017c134
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/projectm_plugin_zh_TW.ts
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0">
+<context>
+ <name>ProjectMPlugin</name>
+ <message>
+ <location filename="../projectmplugin.cpp" line="41"/>
+ <source>projectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>ProjectMWidget</name>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>&amp;Help</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="126"/>
+ <source>F1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>&amp;Show Song Title</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="127"/>
+ <source>F2</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>&amp;Show Preset Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="128"/>
+ <source>F3</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>&amp;Next Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="130"/>
+ <source>N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>&amp;Previous Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="131"/>
+ <source>P</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>&amp;Random Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="132"/>
+ <source>R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>&amp;Lock Preset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="133"/>
+ <source>L</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>&amp;Fullscreen</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../projectmwidget.cpp" line="135"/>
+ <source>F</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>VisualProjectMFactory</name>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="28"/>
+ <source>ProjectM</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="48"/>
+ <source>About ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="49"/>
+ <source>Qmmp ProjectM Visual Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="50"/>
+ <source>This plugins adds projectM visualization</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="51"/>
+ <source>Writen by: Ilya Kotov &lt;forkotov02@hotmail.ru&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../visualprojectmfactory.cpp" line="52"/>
+ <source>Based on llibrojectM-qt library</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src/plugins/Visual/projectm/translations/translations.qrc b/src/plugins/Visual/projectm/translations/translations.qrc
new file mode 100644
index 000000000..585c94da9
--- /dev/null
+++ b/src/plugins/Visual/projectm/translations/translations.qrc
@@ -0,0 +1,11 @@
+<!DOCTYPE RCC>
+<RCC version="1.0">
+ <qresource>
+ <file>projectm_plugin_cs.qm</file>
+ <file>projectm_plugin_de.qm</file>
+ <file>projectm_plugin_zh_CN.qm</file>
+ <file>projectm_plugin_zh_TW.qm</file>
+ <file>projectm_plugin_uk_UA.qm</file>
+ <file>projectm_plugin_ru.qm</file>
+ </qresource>
+</RCC>
diff --git a/src/plugins/Visual/projectm/visualprojectmfactory.cpp b/src/plugins/Visual/projectm/visualprojectmfactory.cpp
index f3fb377db..5e1f0b961 100644
--- a/src/plugins/Visual/projectm/visualprojectmfactory.cpp
+++ b/src/plugins/Visual/projectm/visualprojectmfactory.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008 by Ilya Kotov *
+ * Copyright (C) 2009 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -19,15 +19,13 @@
***************************************************************************/
#include <QtGui>
-
-//#include "settingsdialog.h"
#include "visualprojectmfactory.h"
-#include "analyzer.h"
+#include "projectmplugin.h"
const VisualProperties VisualProjectMFactory::properties() const
{
VisualProperties properties;
- properties.name = tr("ProjectM Plugin");
+ properties.name = tr("ProjectM");
properties.shortName = "projectm";
properties.hasSettings = FALSE;
properties.hasAbout = TRUE;
@@ -36,26 +34,29 @@ const VisualProperties VisualProjectMFactory::properties() const
Visual *VisualProjectMFactory::create(QWidget *parent)
{
- return new Analyzer(parent);
+ return new ProjectMPlugin(parent);
};
QDialog *VisualProjectMFactory::createConfigDialog(QWidget *parent)
{
+ Q_UNUSED(parent);
return 0;
};
void VisualProjectMFactory::showAbout(QWidget *parent)
{
- QMessageBox::about (parent, tr("About Analyzer Visual Plugin"),
- tr("Qmmp Analyzer Visual Plugin")+"\n"+
- tr("Writen by: Ilya Kotov <forkotov02@hotmail.ru>"));
+ QMessageBox::about (parent, tr("About ProjectM Visual Plugin"),
+ tr("Qmmp ProjectM Visual Plugin")+"\n"+
+ tr("This plugins adds projectM visualization")+"\n"+
+ tr("Writen by: Ilya Kotov <forkotov02@hotmail.ru>")+"\n"+
+ tr("Based on llibrojectM-qt library"));
};
QTranslator *VisualProjectMFactory::createTranslator(QObject *parent)
{
QTranslator *translator = new QTranslator(parent);
QString locale = QLocale::system().name();
- translator->load(QString(":/analyzer_plugin_") + locale);
+ translator->load(QString(":/projectm_plugin_") + locale);
return translator;
};
diff --git a/src/plugins/Visual/projectm/visualprojectmfactory.h b/src/plugins/Visual/projectm/visualprojectmfactory.h
index be7a9ba1f..f1a21b6cb 100644
--- a/src/plugins/Visual/projectm/visualprojectmfactory.h
+++ b/src/plugins/Visual/projectm/visualprojectmfactory.h
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008 by Ilya Kotov *
+ * Copyright (C) 2009 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *