diff options
Diffstat (limited to 'fswidget.cpp')
-rw-r--r-- | fswidget.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/fswidget.cpp b/fswidget.cpp index 7cce362..4e00225 100644 --- a/fswidget.cpp +++ b/fswidget.cpp @@ -62,6 +62,9 @@ void FSWidget::setupWidget(){ QAction *unpackA = new QAction(QIcon(":/clitoris.png"), tr("Unpack"), this); connect(unpackA, &QAction::triggered, this, &FSWidget::unpack); toolbar->addAction(unpackA); + QAction *previewA = new QAction(QIcon(":/snapshot.png"), tr("Preview..."), this); + connect(previewA, &QAction::triggered, this, &FSWidget::preview); + toolbar->addAction(previewA); QIcon plusIcon = Helper::icon(QColor(255,85,255), '+'); QIcon minusIcon = Helper::icon(QColor(255,85,255), '-'); @@ -126,7 +129,7 @@ void FSWidget::setupWidget(){ mFileView->setModel(mProxy); mFileView->sortByColumn(0, Qt::AscendingOrder); - addActions(QList<QAction*>() << backA << forwardA << Helper::createSeparator(this) << refreshA << deleteFilesA << Helper::createSeparator(this) << archiveMovieA << unpackA); + addActions(QList<QAction*>() << backA << forwardA << Helper::createSeparator(this) << refreshA << deleteFilesA << Helper::createSeparator(this) << archiveMovieA << unpackA << previewA); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addLayout(topWL); @@ -429,3 +432,15 @@ void FSWidget::doubleClicked(const QModelIndex &idx){ } mViewer->showMaximized(); } + +void FSWidget::preview(){ + QModelIndexList selected = mFileView->selectionModel()->selectedRows(); + if(selected.isEmpty()){ + return; + } + QString mime = selected.first().data(MimeRole).toString(); + if(mime.startsWith("video")){ + mViewer->preview(selected.first().data(FullPathRole).toString()); + mViewer->showMaximized(); + } +} |