summaryrefslogtreecommitdiffstats
path: root/pictureswidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pictureswidget.cpp')
-rw-r--r--pictureswidget.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/pictureswidget.cpp b/pictureswidget.cpp
index 907b33f..2d56571 100644
--- a/pictureswidget.cpp
+++ b/pictureswidget.cpp
@@ -27,16 +27,17 @@
#include "mappingtreemodel.h"
#include "smglobals.h"
-PicturesWidget::PicturesWidget(QWidget *parent) : QWidget(parent), mWindowTitleBase(tr("Picture archive")) {
+PicturesWidget::PicturesWidget(QWidget *parent) : QWidget(parent), mWindowTitleBase(tr("Picture archive")), mPicViewerA(0) {
//setup gui
QSplitter *splitter = new QSplitter;
mMappingTree = new MappingTreeWidget;
mPictureView = new PictureView;
connect(mMappingTree, SIGNAL(mappingChanged(int)), mPictureView, SLOT(mappingChanged(int)));
- //emit needWindowtitleChange(QString) when mapping selection changes
+ //change window title when mapping selection changes
connect(mMappingTree, SIGNAL(mappingChanged(int)), this, SLOT(constructWindowTitle()));
connect(mPictureView, SIGNAL(newFileMappigs()), this, SLOT(setMappingColors()));
connect(mPictureView, SIGNAL(editPicsMappings()), this, SLOT(editMappings()));
+ connect(mPictureView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(showInPicViewer(QModelIndex)));
splitter->addWidget(mMappingTree);
splitter->addWidget(mPictureView);
splitter->setStretchFactor(0, 1);
@@ -89,6 +90,16 @@ void PicturesWidget::constructWindowTitle(){
emit needWindowTitleChange(windowTitle);
}
+void PicturesWidget::showInPicViewer(const QModelIndex &idx){
+ if(!idx.isValid()){
+ return;
+ }
+ mPicViewer->setFile(idx.data(PicFilesModel::FullPathRole).toString());
+ if(mPicViewerA){
+ mPicViewerA->setChecked(true);
+ }
+}
+
PictureView::PictureView(QWidget *parent) : QTreeView(parent) {
//setup model
mModel = new PicFilesModel(QStringList() << tr("Filename") << tr("SizeNum") << tr("Format") << tr("Full Path") << tr("Id") << tr("Added") << tr("Md5Sum") << tr("Size"), this);