aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2011-10-20 20:13:25 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2011-10-20 20:13:25 +0000
commitd2fee6f4332b04300692eed8a4d2b33a9d9a5176 (patch)
tree175a6b0b602cf603d97f007a8ed680f35b375b82 /src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
parent69d29f576c84768c1cfda8a34c18d881d84ab389 (diff)
downloadqmmp-d2fee6f4332b04300692eed8a4d2b33a9d9a5176.tar.gz
qmmp-d2fee6f4332b04300692eed8a4d2b33a9d9a5176.tar.bz2
qmmp-d2fee6f4332b04300692eed8a4d2b33a9d9a5176.zip
added some command line options
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2416 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp')
-rw-r--r--src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp53
1 files changed, 43 insertions, 10 deletions
diff --git a/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp b/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
index 49324b98a..802fbc0a2 100644
--- a/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
+++ b/src/plugins/CommandLineOptions/PlayListOption/playlistoption.cpp
@@ -24,22 +24,25 @@
#include <qmmp/soundcore.h>
#include <qmmpui/playlistmanager.h>
#include <qmmpui/metadataformatter.h>
+#include <qmmpui/mediaplayer.h>
#include "playlistoption.h"
bool PlayListOption::identify(const QString & str) const
{
- return str == QString("--pl-list") ||
- str == QString("--pl-dump") ||
- str == QString("--pl-clear");
+ return str == QString("--pl-help") ||
+ str == QString("--pl-list") ||
+ str == QString("--pl-dump") ||
+ str == QString("--pl-clear") ||
+ str == QString("--pl-repeat-toggle") ||
+ str == QString("--pl-shuffle-toggle") ||
+ str == QString("--pl-state");
}
const QString PlayListOption::helpString() const
{
- return QString(
- "--pl-list " + tr("List all available playlists")+"\n"+
- "--pl-dump <id> " + tr("Show playlist content")+"\n" +
- "--pl-clear <id> " + tr("Clear playlist")+"\n"
- );
+ return QString(
+ "--pl-help " + tr("Show playlist manipulation commands")+"\n"
+ );
}
QString PlayListOption::executeCommand(const QString& opt_str, const QStringList &args)
@@ -47,8 +50,18 @@ QString PlayListOption::executeCommand(const QString& opt_str, const QStringList
Q_UNUSED(args);
QString out;
PlayListManager *pl_manager = PlayListManager::instance();
+ MediaPlayer *player = MediaPlayer::instance();
- if(opt_str == "--pl-list")
+ if(opt_str == "--pl-help")
+ {
+ out = "--pl-list " + tr("List all available playlists")+"\n"+
+ "--pl-dump <id> " + tr("Show playlist content")+"\n" +
+ "--pl-clear <id> " + tr("Clear playlist")+"\n"+
+ "--pl-repeat-toggle " + tr("Toggle playlist repeat")+"\n"+
+ "--pl-shuffle-toggle " + tr("Toggle playlist shuffle")+"\n"+
+ "--pl-state " + tr("Show playlist options")+"\n";
+ }
+ else if(opt_str == "--pl-list")
{
QStringList names = pl_manager->playListNames();
for(int i = 0; i < names.count(); ++i)
@@ -79,9 +92,24 @@ QString PlayListOption::executeCommand(const QString& opt_str, const QStringList
int id = args.isEmpty() ? pl_manager->currentPlayListIndex() : args.at(0).toInt() - 1;
PlayListModel *model = pl_manager->playListAt(id);
if(!model)
- out = tr("Invalid playlist ID") + "\n";
+ return tr("Invalid playlist ID") + "\n";
model->clear();
}
+ else if(opt_str == "--pl-repeat-toggle")
+ {
+ player->setRepeatable(!player->isRepeatable());
+ }
+ else if(opt_str == "--pl-shuffle-toggle")
+ {
+ pl_manager->setShuffle(!pl_manager->isShuffle());
+ }
+ else if(opt_str == "--pl-state")
+ {
+ out += "SHUFFLE: " + boolToText(pl_manager->isShuffle()) + "\n";
+ out += "REPEAT PLAYLIST: " + boolToText(pl_manager->isRepeatableList()) + "\n";
+ out += "REPEAT TRACK: " + boolToText(player->isRepeatable()) + "\n";
+ out += "NO PLAYLIST ADVANCE: " + boolToText(player->isNoPlaylistAdvance()) + "\n";
+ }
return out;
}
@@ -98,4 +126,9 @@ QTranslator *PlayListOption::createTranslator(QObject *parent)
return translator;
}
+QString PlayListOption::boolToText(bool enabled)
+{
+ return QString(enabled ? "[+]" : "[-]");
+}
+
Q_EXPORT_PLUGIN2(playlistoption, PlayListOption)