diff options
Diffstat (limited to 'fswidget.cpp')
-rw-r--r-- | fswidget.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/fswidget.cpp b/fswidget.cpp index ce65574..7cce362 100644 --- a/fswidget.cpp +++ b/fswidget.cpp @@ -23,10 +23,12 @@ #include "helper.h" #include "newmoviewizard.h" #include "fsproxy.h" +#include "viewer.h" FSWidget::FSWidget(QWidget *parent) : QWidget(parent) { mMovieWizard = new NewMovieWizard(this); mMovieWizard->setMinimumWidth(1024); + mViewer = new Viewer; setPalette(qApp->palette()); setupWidget(); } @@ -117,6 +119,7 @@ void FSWidget::setupWidget(){ mFileView->setUniformRowHeights(true); mFileView->setSelectionBehavior(QAbstractItemView::SelectRows); mFileView->setSelectionMode(QAbstractItemView::ExtendedSelection); + connect(mFileView, &QTreeView::doubleClicked, this, &FSWidget::doubleClicked); mModel = new QStandardItemModel; mProxy = new FSProxy; mProxy->setSourceModel(mModel); @@ -293,6 +296,7 @@ void FSWidget::gatherData(const QString &curDir){ item->setData(fi.absoluteFilePath(), FullPathRole); item->setData(fi.size(), SizeRole); item->setData(seconds, DurationRole); + item->setData(mimeType.name(), MimeRole); items << item; } items[0]->setText(fi.fileName()); @@ -417,3 +421,11 @@ void FSWidget::unpack(){ } } } + +void FSWidget::doubleClicked(const QModelIndex &idx){ + QString mime = idx.data(MimeRole).toString(); + if(mime.startsWith("image")){ + mViewer->setFile(idx.data(FullPathRole).toString()); + } + mViewer->showMaximized(); +} |