diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2018-12-25 20:50:08 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2018-12-25 20:50:08 +0000 |
| commit | c28061c4cf64e468dd3e230df1b96d1a72e295fd (patch) | |
| tree | 85cdef77d8851ab89e8a57ba1d5f823531a15831 /src/plugins/CommandLineOptions/StatusOption | |
| parent | 164e24517d01eb95f74563cc66a691adf07ed514 (diff) | |
| download | qmmp-c28061c4cf64e468dd3e230df1b96d1a72e295fd.tar.gz qmmp-c28061c4cf64e468dd3e230df1b96d1a72e295fd.tar.bz2 qmmp-c28061c4cf64e468dd3e230df1b96d1a72e295fd.zip | |
fixed command line plugins
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@8532 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/CommandLineOptions/StatusOption')
| -rw-r--r-- | src/plugins/CommandLineOptions/StatusOption/statusoption.cpp | 49 | ||||
| -rw-r--r-- | src/plugins/CommandLineOptions/StatusOption/statusoption.h | 25 |
2 files changed, 43 insertions, 31 deletions
diff --git a/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp b/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp index 9bc6d72ec..8c729c5d3 100644 --- a/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp +++ b/src/plugins/CommandLineOptions/StatusOption/statusoption.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2010-2017 by Ilya Kotov * + * Copyright (C) 2010-2019 by Ilya Kotov * * forkotov02@ya.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -25,29 +25,32 @@ #include <qmmpui/metadataformatter.h> #include "statusoption.h" -CommandLineProperties StatusOption::properties() const + +StatusOption::StatusOption() { - CommandLineProperties properties; - properties.shortName = "StatusOption"; - 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; + registerOption(STATUS, "--status", tr("Print playback status")); + registerOption(NOW_PLAYING, "--nowplaying", tr("Print formatted track name (example: qmmp --nowplaying \"%t - %a\")"), + QStringList() << "fmt"); + registerOption(NOW_PLAYING_SYNTAX, "--nowplaying-syntax", tr("Print --nowplaying syntax")); } -bool StatusOption::identify(const QString &str) const +QString StatusOption::shortName() const { - QStringList opts; - opts << "--status" << "--nowplaying" << "--nowplaying-syntax"; - return opts.contains(str); + return QLatin1String("StatusOption"); } -QString StatusOption::executeCommand(const QString &opt_str, const QStringList &args) +QString StatusOption::translation() const +{ + return QLatin1String(":/status_plugin_"); +} + +QString StatusOption::executeCommand(int id, const QStringList &args) { SoundCore *core = SoundCore::instance(); QString out; - if(opt_str == "--status") + switch (id) + { + case STATUS: { QMap<int, QString> state_names; state_names.insert(Qmmp::Playing, "[playing]"); @@ -76,14 +79,16 @@ QString StatusOption::executeCommand(const QString &opt_str, const QStringList & } out += "\n"; } - else if(opt_str == "--nowplaying") + break; + case NOW_PLAYING: { QString t = args.join(" "); MetaDataFormatter formatter(t); out = formatter.format(core->trackInfo()); out += "\n"; } - else if(opt_str == "--nowplaying-syntax") + break; + case NOW_PLAYING_SYNTAX: { out += tr("Syntax:") + "\n"; out += tr("%p - artist") + "\n"; @@ -110,12 +115,12 @@ QString StatusOption::executeCommand(const QString &opt_str, const QStringList & out += tr("%if(A&B&C,D,E) - condition") + "\n"; out += tr("%dir(n) - directory name located on n levels above"); } - return out; -} + break; + default: + ; + } -QString StatusOption::translation() const -{ - return QLatin1String(":/status_plugin_"); + return out; } QString StatusOption::genProgressBar() diff --git a/src/plugins/CommandLineOptions/StatusOption/statusoption.h b/src/plugins/CommandLineOptions/StatusOption/statusoption.h index 0dd83c919..85171de3e 100644 --- a/src/plugins/CommandLineOptions/StatusOption/statusoption.h +++ b/src/plugins/CommandLineOptions/StatusOption/statusoption.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2011-2017 by Ilya Kotov * + * Copyright (C) 2011-2019 by Ilya Kotov * * forkotov02@ya.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -24,24 +24,31 @@ #include <QString> #include <QObject> #include <QStringList> -#include <qmmpui/commandlineoption.h> +#include <qmmpui/commandlinehandler.h> #include <qmmpui/commandlinemanager.h> /** @author Ilya Kotov <forkotov02@ya.ru> */ -class StatusOption : public QObject, public CommandLineOption +class StatusOption : public QObject, public CommandLineHandler { Q_OBJECT -Q_PLUGIN_METADATA(IID "org.qmmp.qmmpui.CommandLineOptionInterface.1.0") -Q_INTERFACES(CommandLineOption) +Q_PLUGIN_METADATA(IID "org.qmmp.qmmpui.CommandLineHandlerInterface.1.0") +Q_INTERFACES(CommandLineHandler) public: - virtual CommandLineProperties properties() const; - virtual bool identify(const QString& opt_str) const; - virtual QString executeCommand(const QString& opt_str, const QStringList &args); - virtual QString translation() const; + StatusOption(); + QString shortName() const; + QString translation() const; + QString executeCommand(int id, const QStringList &args); private: + enum Commamnd + { + STATUS = 0, + NOW_PLAYING, + NOW_PLAYING_SYNTAX + }; + QString genProgressBar(); }; |
