summaryrefslogtreecommitdiffstats
path: root/filesystemwidget.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2015-02-14 15:15:29 +0100
committerArno <am@disconnect.de>2015-02-14 15:15:29 +0100
commit61345c3d52ab2e5d8243596e9368753477180968 (patch)
treeed2ad0c9a694b77a7c104a64bc25ea334b2de68b /filesystemwidget.cpp
parentd44010d181847c6fa52b828afb0b673c0e9645ab (diff)
downloadSheMov-61345c3d52ab2e5d8243596e9368753477180968.tar.gz
SheMov-61345c3d52ab2e5d8243596e9368753477180968.tar.bz2
SheMov-61345c3d52ab2e5d8243596e9368753477180968.zip
Implement play several times
Add context menu entry for playing movies in a loop or 2..5 times.
Diffstat (limited to 'filesystemwidget.cpp')
-rw-r--r--filesystemwidget.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/filesystemwidget.cpp b/filesystemwidget.cpp
index 5568db0..ac840bd 100644
--- a/filesystemwidget.cpp
+++ b/filesystemwidget.cpp
@@ -355,6 +355,30 @@ void FilesystemWidget::playSelected(const QString &player){
QProcess::startDetached(program, programArgs);
}
+void FilesystemWidget::playSelectedRepeat(int times){
+ TimerHandler h(mFileModel->refreshTimer());
+ QStringList files = selectedFiles();
+ if(files.isEmpty()){
+ statusbarMessage(tr("Nothing selected."));
+ return;
+ }
+ QPair<QString, QStringList> data = programData("movieviewer", QString());
+ QString program = data.first;
+ QStringList programArgs(data.second);
+ if(times == -1){
+ programArgs << "--loop" << files;
+ }else{
+ for(int i = 0; i < times; ++i){
+ programArgs << files;
+ }
+ }
+ QProcess::startDetached(program, programArgs);
+}
+
+void FilesystemWidget::playSelectedInfinite(){
+ playSelectedRepeat(-1);
+}
+
void FilesystemWidget::readSettings(){
QSettings s;
QStringList expandedDirs = s.value("paths/expandeddirs").toStringList();