summaryrefslogtreecommitdiffstats
path: root/filesystemwidget.cpp
diff options
context:
space:
mode:
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();