diff options
author | Arno <am@disconnect.de> | 2012-04-28 15:29:35 +0200 |
---|---|---|
committer | Arno <am@disconnect.de> | 2012-04-28 15:29:35 +0200 |
commit | 3f2df0541a862d8e6a799b9502e6b3f7a0c5f884 (patch) | |
tree | 4451efc120da60b894a40c98391236fc5ae2096a /pictureviewer2.cpp | |
parent | 5bf304d22564666621c35919b2d9aea1aa5b4b5a (diff) | |
download | SheMov-3f2df0541a862d8e6a799b9502e6b3f7a0c5f884.tar.gz SheMov-3f2df0541a862d8e6a799b9502e6b3f7a0c5f884.tar.bz2 SheMov-3f2df0541a862d8e6a799b9502e6b3f7a0c5f884.zip |
Weed out PictureViewer in favor of PictureViewer2
Remove PictureViewer from everywhere and use PictureViewer2 instead.
Diffstat (limited to 'pictureviewer2.cpp')
-rw-r--r-- | pictureviewer2.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp index 8aef518..eee77af 100644 --- a/pictureviewer2.cpp +++ b/pictureviewer2.cpp @@ -20,6 +20,10 @@ #include <QSettings> #include <QTextDocument> #include <QTextCursor> +#include <QFileInfo> +#include <QDir> +#include <QFileInfo> +#include <QFileInfoList> #include "pictureviewer2.h" #include "pictureswidget.h" @@ -27,6 +31,7 @@ #include "mappingtreemodel.h" #include "smtreeitem.h" #include "configurationdialog.h" +#include "helper.h" PictureViewer2::PictureViewer2(QWidget *parent) : QGraphicsView(parent), mCur(0), mCurPos(0), mDefaultFile(":/picgone.png"), mFnItem(0), mMappingItem(0) { //behave like QDialog, but don't be one... @@ -78,11 +83,50 @@ void PictureViewer2::addFiles(const PicDataList &files, bool clear){ } } +void PictureViewer2::addFiles(const QString &dir, bool clear){ + QFileInfo fi(dir); + if(!fi.isDir()){ + return; + } + PicDataList pd; + QDir directory = QDir(dir); + QFileInfoList files = directory.entryInfoList(QDir::Files, QDir::Name); + + //foreach doesn't work here. Somehow it's casted to one single QFileInfo. + //took some time to figure it out! + for(int i = 0; i < files.size(); ++i){ + pd << picData(files.at(i).absoluteFilePath()); + } + addFiles(pd, clear); +} + void PictureViewer2::setFile(const PicData &file){ addFiles(PicDataList() << file, true); showFile(mFiles.at(mCurPos)); } +void PictureViewer2::setFile(const QString &fullPath){ + PicData pd = picData(fullPath); + setFile(pd); +} + +PicData PictureViewer2::picData(const QString &fullPath){ + QFileInfo fi(fullPath); + if(!fi.exists()){ + return PicData(); + } + PicData retval; + //fields defined by PicFilesModel::Fields. + retval << fi.fileName() << fi.size(); + retval << Helper::mimeType(fullPath); + retval << fi.absoluteFilePath(); + retval << -1 << QDateTime(); + retval << Helper::md5Sum(fullPath); + QLocale l; + retval << l.toString(fi.size()); + return retval; +} + QSize PictureViewer2::sizeHint() const{ return mMinimunSize; } |