aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2018-07-21 15:26:02 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2018-07-21 15:26:02 +0000
commitab49308ad778ddc4822cda48e218fbc06f7b8e34 (patch)
tree6a315cbb2b9dff0d5590d5d28ec4c3d6c9868b0d
parent0006966c0f307ec7dff51130ce26bbe3c7061418 (diff)
downloadqmmp-ab49308ad778ddc4822cda48e218fbc06f7b8e34.tar.gz
qmmp-ab49308ad778ddc4822cda48e218fbc06f7b8e34.tar.bz2
qmmp-ab49308ad778ddc4822cda48e218fbc06f7b8e34.zip
fixed command line translation
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@8197 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.cpp40
-rw-r--r--src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.h5
-rw-r--r--src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp28
-rw-r--r--src/plugins/CommandLineOptions/PlayListOption/playlistoption.h3
-rw-r--r--src/plugins/CommandLineOptions/SeekOption/seekoption.cpp32
-rw-r--r--src/plugins/CommandLineOptions/SeekOption/seekoption.h5
-rw-r--r--src/plugins/CommandLineOptions/StatusOption/statusoption.cpp34
-rw-r--r--src/plugins/CommandLineOptions/StatusOption/statusoption.h3
-rw-r--r--src/qmmp/decoderfactory.h2
-rw-r--r--src/qmmpui/commandlinemanager.cpp10
-rw-r--r--src/qmmpui/commandlineoption.h25
11 files changed, 75 insertions, 112 deletions
diff --git a/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.cpp b/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.cpp
index fb40781a3..8f594eddf 100644
--- a/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.cpp
+++ b/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008-2017 by Ilya Kotov *
+ * Copyright (C) 2008-2018 by Ilya Kotov *
* forkotov02@ya.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -22,29 +22,26 @@
#include <QLocale>
#include <QPair>
#include <qmmp/soundcore.h>
-
#include "incdecvolumeoption.h"
+const CommandLineProperties IncDecVolumeCommandLineOption::properties() const
+{
+ CommandLineProperties properties;
+ properties.shortName = "IncDecVolumeCommandLineOption";
+ properties.translation = QLatin1String(":/incdecvolume_plugin_");
+ properties.helpString << QString("--volume-inc") + "||" + tr("Increase volume by 5 steps")
+ << QString("--volume-dec") + "||" + tr("Decrease volume by 5 steps");
+ return properties;
+}
+
bool IncDecVolumeCommandLineOption::identify(const QString & str) const
{
- if (
- str == QString("--volume-inc") ||
- str == QString("--volume-dec")
- )
- {
+ if(str == QString("--volume-inc") || str == QString("--volume-dec"))
return true;
- }
return false;
}
-const QStringList IncDecVolumeCommandLineOption::helpString() const
-{
- return QStringList()
- << QString("--volume-inc") + "||" + tr("Increase volume by 5 steps")
- << QString("--volume-dec") + "||" + tr("Decrease volume by 5 steps");
-}
-
QString IncDecVolumeCommandLineOption::executeCommand(const QString& opt_str, const QStringList &args)
{
Q_UNUSED(args);
@@ -56,16 +53,3 @@ QString IncDecVolumeCommandLineOption::executeCommand(const QString& opt_str, co
return QString();
}
-
-const QString IncDecVolumeCommandLineOption::name() const
-{
- return "IncDecVolumeCommandLineOption";
-}
-
-/*QTranslator *IncDecVolumeCommandLineOption::createTranslator(QObject *parent)
-{
- QTranslator *translator = new QTranslator(parent);
- QString locale = Qmmp::systemLanguageID();
- translator->load(QString(":/incdecvolume_plugin_") + locale);
- return translator;
-}*/
diff --git a/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.h b/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.h
index 49ff9939b..98c869fe7 100644
--- a/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.h
+++ b/src/plugins/CommandLineOptions/IncDecVolumeOption/incdecvolumeoption.h
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008-2017 by Ilya Kotov *
+ * Copyright (C) 2008-2018 by Ilya Kotov *
* forkotov02@ya.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -34,9 +34,8 @@ Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qmmp.qmmpui.CommandLineOptionInterface.1.0")
Q_INTERFACES(CommandLineOption)
public:
+ virtual const CommandLineProperties properties() const;
virtual bool identify(const QString& opt_str) const;
- virtual const QString name() const;
- virtual const QStringList helpString() const;
virtual QString executeCommand(const QString& opt_str, const QStringList &args);
};
diff --git a/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp b/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
index ccf774942..17156c4c8 100644
--- a/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
+++ b/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
@@ -28,6 +28,15 @@
#include <qmmpui/commandlinemanager.h>
#include "playlistoption.h"
+const CommandLineProperties PlayListOption::properties() const
+{
+ CommandLineProperties properties;
+ properties.shortName = "PlayListOption";
+ properties.translation = QLatin1String(":/playlist_plugin_");
+ properties.helpString << QString("--pl-help") + "||" + tr("Show playlist manipulation commands");
+ return properties;
+}
+
bool PlayListOption::identify(const QString & str) const
{
return str == QString("--pl-help") ||
@@ -40,12 +49,6 @@ bool PlayListOption::identify(const QString & str) const
str == QString("--pl-state");
}
-const QStringList PlayListOption::helpString() const
-{
- return QStringList()
- << QString("--pl-help") + "||" + tr("Show playlist manipulation commands");
-}
-
QString PlayListOption::executeCommand(const QString& opt_str, const QStringList &args)
{
Q_UNUSED(args);
@@ -143,19 +146,6 @@ QString PlayListOption::executeCommand(const QString& opt_str, const QStringList
return out;
}
-const QString PlayListOption::name() const
-{
- return "PlayListOption";
-}
-
-/*QTranslator *PlayListOption::createTranslator(QObject *parent)
-{
- QTranslator *translator = new QTranslator(parent);
- QString locale = Qmmp::systemLanguageID();
- translator->load(QString(":/playlist_plugin_") + locale);
- return translator;
-}*/
-
QString PlayListOption::boolToText(bool enabled)
{
return QString(enabled ? "[+]" : "[-]");
diff --git a/src/plugins/CommandLineOptions/PlayListOption/playlistoption.h b/src/plugins/CommandLineOptions/PlayListOption/playlistoption.h
index 308a1ff77..bb0e13570 100644
--- a/src/plugins/CommandLineOptions/PlayListOption/playlistoption.h
+++ b/src/plugins/CommandLineOptions/PlayListOption/playlistoption.h
@@ -36,9 +36,8 @@ Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qmmp.qmmpui.CommandLineOptionInterface.1.0")
Q_INTERFACES(CommandLineOption)
public:
+ virtual const CommandLineProperties properties() const;
virtual bool identify(const QString& opt_str) const;
- virtual const QString name() const;
- virtual const QStringList helpString() const;
virtual QString executeCommand(const QString& opt_str, const QStringList &args);
private:
diff --git a/src/plugins/CommandLineOptions/SeekOption/seekoption.cpp b/src/plugins/CommandLineOptions/SeekOption/seekoption.cpp
index 29c70728f..ed367fd9f 100644
--- a/src/plugins/CommandLineOptions/SeekOption/seekoption.cpp
+++ b/src/plugins/CommandLineOptions/SeekOption/seekoption.cpp
@@ -24,6 +24,17 @@
#include <qmmp/soundcore.h>
#include "seekoption.h"
+const CommandLineProperties SeekOption::properties() const
+{
+ CommandLineProperties properties;
+ properties.shortName = "SeekOption";
+ properties.translation = QLatin1String(":/seek_plugin_");
+ properties.helpString << QString("--seek <time>") + "||" + tr("Seek to position in the current track")
+ << QString("--seek-fwd <time>") + "||" + tr("Seek forward")
+ << QString("--seek-bwd <time>") + "||" + tr("Seek backwards");
+ return properties;
+}
+
bool SeekOption::identify(const QString &str) const
{
QStringList opts;
@@ -31,14 +42,6 @@ bool SeekOption::identify(const QString &str) const
return opts.contains(str);
}
-const QStringList SeekOption::helpString() const
-{
- return QStringList()
- << QString("--seek <time>") + "||" + tr("Seek to position in the current track")
- << QString("--seek-fwd <time>") + "||" + tr("Seek forward")
- << QString("--seek-bwd <time>") + "||" + tr("Seek backwards");
-}
-
QString SeekOption::executeCommand(const QString &opt_str, const QStringList &args)
{
SoundCore *core = SoundCore::instance();
@@ -73,16 +76,3 @@ QString SeekOption::executeCommand(const QString &opt_str, const QStringList &ar
return QString();
return QString();
}
-
-const QString SeekOption::name() const
-{
- return "SeekOption";
-}
-
-/*QTranslator *SeekOption::createTranslator(QObject *parent)
-{
- QTranslator *translator = new QTranslator(parent);
- QString locale = Qmmp::systemLanguageID();
- translator->load(QString(":/seek_plugin_") + locale);
- return translator;
-}*/
diff --git a/src/plugins/CommandLineOptions/SeekOption/seekoption.h b/src/plugins/CommandLineOptions/SeekOption/seekoption.h
index 80113cd38..24bc608e3 100644
--- a/src/plugins/CommandLineOptions/SeekOption/seekoption.h
+++ b/src/plugins/CommandLineOptions/SeekOption/seekoption.h
@@ -34,9 +34,8 @@ Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qmmp.qmmpui.CommandLineOptionInterface.1.0")
Q_INTERFACES(CommandLineOption)
public:
- virtual bool identify(const QString& opt_str) const;
- virtual const QString name() const;
- virtual const QStringList helpString() const;
+ virtual const CommandLineProperties properties() const;
+ virtual bool identify(const QString &opt_str) const;
virtual QString executeCommand(const QString& opt_str, const QStringList &args);
};
diff --git a/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp b/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp
index 02500be13..cb19b4efc 100644
--- a/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp
+++ b/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp
@@ -25,6 +25,18 @@
#include <qmmpui/metadataformatter.h>
#include "statusoption.h"
+const CommandLineProperties StatusOption::properties() const
+{
+ CommandLineProperties properties;
+ properties.shortName = "StatusOption";
+ properties.translation = QLatin1String(":/status_plugin_");
+ properties.helpString << QString("--status") + "||" + tr("Print playback status")
+ << QString("--nowplaying <fmt>") + "||"
+ + tr("Print formatted track name (example: qmmp --nowplaying \"%t - %a\")")
+ << QString("--nowplaying-syntax") + "||" + tr("Print --nowplaying syntax");
+ return properties;
+}
+
bool StatusOption::identify(const QString &str) const
{
QStringList opts;
@@ -32,15 +44,6 @@ bool StatusOption::identify(const QString &str) const
return opts.contains(str);
}
-const QStringList StatusOption::helpString() const
-{
- return QStringList()
- << QString("--status") + "||" + tr("Print playback status")
- << QString("--nowplaying <fmt>") + "||"
- + tr("Print formatted track name (example: qmmp --nowplaying \"%t - %a\")")
- << QString("--nowplaying-syntax") + "||" + tr("Print --nowplaying syntax");
-}
-
QString StatusOption::executeCommand(const QString &opt_str, const QStringList &args)
{
SoundCore *core = SoundCore::instance();
@@ -104,19 +107,6 @@ QString StatusOption::executeCommand(const QString &opt_str, const QStringList &
return out;
}
-const QString StatusOption::name() const
-{
- return "StatusOption";
-}
-
-/*QTranslator *StatusOption::createTranslator(QObject *parent)
-{
- QTranslator *translator = new QTranslator(parent);
- QString locale = Qmmp::systemLanguageID();
- translator->load(QString(":/status_plugin_") + locale);
- return translator;
-}*/
-
QString StatusOption::genProgressBar()
{
SoundCore *core = SoundCore::instance();
diff --git a/src/plugins/CommandLineOptions/StatusOption/statusoption.h b/src/plugins/CommandLineOptions/StatusOption/statusoption.h
index 1cf69db67..d161d29be 100644
--- a/src/plugins/CommandLineOptions/StatusOption/statusoption.h
+++ b/src/plugins/CommandLineOptions/StatusOption/statusoption.h
@@ -36,9 +36,8 @@ Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qmmp.qmmpui.CommandLineOptionInterface.1.0")
Q_INTERFACES(CommandLineOption)
public:
+ virtual const CommandLineProperties properties() const;
virtual bool identify(const QString& opt_str) const;
- virtual const QString name() const;
- virtual const QStringList helpString() const;
virtual QString executeCommand(const QString& opt_str, const QStringList &args);
private:
diff --git a/src/qmmp/decoderfactory.h b/src/qmmp/decoderfactory.h
index 9cd876129..b077e3f8e 100644
--- a/src/qmmp/decoderfactory.h
+++ b/src/qmmp/decoderfactory.h
@@ -74,7 +74,7 @@ public:
*/
virtual bool canDecode(QIODevice *d) const = 0;
/*!
- * Returns general plugin properties.
+ * Returns decoder plugin properties.
*/
virtual const DecoderProperties properties() const = 0;
/*!
diff --git a/src/qmmpui/commandlinemanager.cpp b/src/qmmpui/commandlinemanager.cpp
index fb672e335..08424fa41 100644
--- a/src/qmmpui/commandlinemanager.cpp
+++ b/src/qmmpui/commandlinemanager.cpp
@@ -23,6 +23,7 @@
#include <QObject>
#include <QList>
#include <QApplication>
+#include <QTranslator>
#include <cstdlib>
#include <iostream>
#include <qmmp/qmmp.h>
@@ -60,7 +61,12 @@ void CommandLineManager::checkOptions()
{
m_options->append(option);
m_files->insert(option, filePath);
- //qApp->installTranslator(option->createTranslator(qApp));
+ if(!option->properties().translation.isEmpty())
+ {
+ QTranslator *translator = new QTranslator(qApp);
+ translator->load(option->properties().translation + Qmmp::systemLanguageID());
+ qApp->installTranslator(translator);
+ }
}
}
}
@@ -100,7 +106,7 @@ void CommandLineManager::printUsage()
checkOptions();
foreach(CommandLineOption *opt, *m_options)
{
- foreach (QString line, opt->helpString())
+ foreach(QString line, opt->properties().helpString)
{
QString str = formatHelpString(line);
if(!str.isEmpty())
diff --git a/src/qmmpui/commandlineoption.h b/src/qmmpui/commandlineoption.h
index 6e1a52638..f6f67d5e5 100644
--- a/src/qmmpui/commandlineoption.h
+++ b/src/qmmpui/commandlineoption.h
@@ -27,6 +27,18 @@ class QString;
class QObject;
class QStringList;
+/*! @brief Helper class to store command line plugin properties.
+ * @author Ilya Kotov <forkotov02@ya.ru>
+ */
+class CommandLineProperties
+{
+public:
+ QString shortName; /*!< Input plugin short name for internal usage */
+ QString translation; /*!< Translation file path without locale code and extension */
+ QStringList helpString; /*!< A list of specially formatted help strings.
+ Example: "--help||Display this text and exit" */
+};
+
/*! @brief Abstract base class of the command line plugins.
* @author Vladimir Kuznetsov <vovanec@gmail.ru>
*/
@@ -34,20 +46,15 @@ class QMMPUI_EXPORT CommandLineOption
{
public:
/*!
+ * Returns command line plugin properties.
+ */
+ virtual const CommandLineProperties properties() const = 0;
+ /*!
* Returns \b true if \b opt_str string can be processed,
* otherise \b false
*/
virtual bool identify(const QString& opt_str) const = 0;
/*!
- * Command line option name
- */
- virtual const QString name() const = 0;
- /*!
- * A list of specially formatted help strings.
- * Example: "--help||Display this text and exit".
- */
- virtual const QStringList helpString() const = 0;
- /*!
* Parses \b opt_str args(if needed), executes command.
* @param opt_str Command to execute
* @param args Command arguments