summaryrefslogtreecommitdiffstats
path: root/filewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'filewidget.cpp')
-rw-r--r--filewidget.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/filewidget.cpp b/filewidget.cpp
index f56b4ce..ef918f1 100644
--- a/filewidget.cpp
+++ b/filewidget.cpp
@@ -145,6 +145,8 @@ void FileWidget::createActions(){
mPropertiesA = new QAction(QIcon(":/diaper.png"), tr("Properties..."), this);
mPropertiesA->setShortcut(Qt::CTRL + Qt::Key_Return);
connect(mPropertiesA, SIGNAL(triggered()), this, SLOT(properties()));
+ mPreviewA = new QAction(QIcon(":/snapshot.png"), tr("Preview..."), this);
+ connect(mPreviewA, SIGNAL(triggered()), this, SLOT(preview()));
mAddAsOriginA = new QAction(QIcon(":/butt_plug.png"), tr("Add as Origin..."), this);
connect(mAddAsOriginA, SIGNAL(triggered()), this, SLOT(addAsOrigin()));
@@ -164,6 +166,7 @@ void FileWidget::createActions(){
editMenu->addAction(mDeleteA);
editMenu->addSeparator();
editMenu->addAction(mPropertiesA);
+ editMenu->addAction(mPreviewA);
editMenu->addAction(mAddAsOriginA);
editMenu->addSeparator();
editMenu->addAction(Globals::instance()->action(Globals::ConfigAction));
@@ -183,11 +186,13 @@ void FileWidget::createActions(){
mToolBar->addAction(mDeleteA);
mToolBar->addAction(createSeparator());
mToolBar->addAction(mPropertiesA);
+ mToolBar->addAction(mPreviewA);
+ mToolBar->addAction(createSeparator());
mToolBar->addAction(mAddAsOriginA);
mToolBar->addAction(createSeparator());
mToolBar->addAction(Globals::instance()->action(Globals::ConfigAction));
- addActions(QList<QAction*>() << mDirBackA << mDirUpA << createSeparator() << mRefreshA << mSelDirA << createSeparator() << mCopyA << mCutA << mPasteA << mDeleteA << createSeparator() << mAddAsOriginA << mPropertiesA);
+ addActions(QList<QAction*>() << mDirBackA << mDirUpA << createSeparator() << mRefreshA << mSelDirA << createSeparator() << mCopyA << mCutA << mPasteA << mDeleteA << createSeparator() << mAddAsOriginA << createSeparator() << mPreviewA << createSeparator() << mPropertiesA);
}
void FileWidget::fileData(const QString &fullPath, const QString &md5){
@@ -513,6 +518,24 @@ void FileWidget::properties(const QModelIndex &idx){
}
}
+void FileWidget::preview(){
+ QModelIndex idx = mFileView->selectionModel()->currentIndex();
+ if(!idx.isValid()){
+ return;
+ }
+ QString mime = idx.sibling(idx.row(), MimeColumn).data().toString();
+ QString file = idx.data(FullPathRole).toString();
+ qApp->setOverrideCursor(Qt::WaitCursor);
+ Viewer *v = Globals::instance()->viewer();
+ if(mime.startsWith("video")){
+ v->preview(file);
+ }else if(mime.startsWith("image")){
+ v->setFile(file, false);
+ }
+ qApp->restoreOverrideCursor();
+ v->show();
+}
+
void FileWidget::cd(const QString &to){
QString ld = mDir->text();
QDir cur(mDir->text());