summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--filesystemwidget.cpp2
-rw-r--r--pictureviewer2.cpp19
-rw-r--r--pictureviewer2.h2
3 files changed, 18 insertions, 5 deletions
diff --git a/filesystemwidget.cpp b/filesystemwidget.cpp
index eadbac8..461780f 100644
--- a/filesystemwidget.cpp
+++ b/filesystemwidget.cpp
@@ -223,6 +223,8 @@ void FilesystemWidget::fileViewActivated(const QModelIndex &idx){
mPicViewer->setShowMappingItem(false);
mPicViewer->setShowMarkItem(true);
selectAllPV();
+ QFileInfo fi(path);
+ mPicViewer->setCurrentDir(fi.absolutePath());
mPicViewer->selectPic(path);
return;
}
diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp
index dbb1763..7a8e2b2 100644
--- a/pictureviewer2.cpp
+++ b/pictureviewer2.cpp
@@ -317,15 +317,24 @@ void PictureViewer2::deleteCurrent(){
}
void PictureViewer2::showNewPicsDialog(){
- if(mMarkedFiles.isEmpty()){
- return;
- }
mNewPicsDlg->clearFiles();
QStringList fileList;
- foreach(QVariantList v, mMarkedFiles){
- fileList << v.at(PicFilesModel::FullPath).toString();;
+ if(mMarkedFiles.isEmpty()){
+ if(!mCurrentDir.isEmpty()){
+ QDir d(mCurrentDir);
+ foreach(QFileInfo fi, d.entryInfoList()){
+ fileList << fi.absoluteFilePath();
+ }
+ }else{
+ return;
+ }
+ }else{
+ foreach(QVariantList v, mMarkedFiles){
+ fileList << v.at(PicFilesModel::FullPath).toString();
+ }
}
mNewPicsDlg->addFiles(fileList);
+ mNewPicsDlg->move(0, 20);
mNewPicsDlg->exec();
}
diff --git a/pictureviewer2.h b/pictureviewer2.h
index 99405e0..c9c7688 100644
--- a/pictureviewer2.h
+++ b/pictureviewer2.h
@@ -45,6 +45,7 @@ class PictureViewer2 : public QGraphicsView {
void setShowInfoItem(bool show) { mShowInfoItem = show; }
void setShowMappingItem(bool show) { mShowMappingItem = show; }
void setShowMarkItem(bool show) { mShowMarkItem = show; }
+ void setCurrentDir(const QString &curDir) { mCurrentDir = curDir; }
const PicDataList marked() { return mMarkedFiles; }
PicData picData(const QString &fullPath);
virtual QSize sizeHint() const;
@@ -115,6 +116,7 @@ class PictureViewer2 : public QGraphicsView {
bool mShowInfoItem;
bool mShowMappingItem;
bool mShowMarkItem;
+ QString mCurrentDir;
};
class PictureViewer2Item : public QGraphicsItem {