diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2017-12-10 00:07:46 +0100 |
---|---|---|
committer | Robert C. Helling <helling@atdotde.de> | 2017-12-10 15:00:53 +0100 |
commit | c73828d6055db664354ae5d1b2637d379294ef8a (patch) | |
tree | d750fbabc588d9fd672b4b58cef152ad138573b1 /qt-models/divepicturemodel.h | |
parent | a07d3b7bfe30f92df8d7e12d364db5aec0a18e46 (diff) | |
download | subsurface-c73828d6055db664354ae5d1b2637d379294ef8a.tar.gz |
Simplify DivePictureModel
The code of DivePictureModel used a QHash to keep track of thumbnails.
Not only was the code rather complex - it also had the consequence that
pictures are sorted according to the hash function, i.e. seemingly
random.
This commit replaces the QHash by a simple QList which keeps track
of thumbnails and some meta-data.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'qt-models/divepicturemodel.h')
-rw-r--r-- | qt-models/divepicturemodel.h | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/qt-models/divepicturemodel.h b/qt-models/divepicturemodel.h index b0494d355..bbb82293e 100644 --- a/qt-models/divepicturemodel.h +++ b/qt-models/divepicturemodel.h @@ -6,17 +6,15 @@ #include <QImage> #include <QFuture> -struct PhotoHelper { +struct PictureEntry { + struct picture *picture; + QString filename; QImage image; int offsetSeconds; }; -typedef QList<struct picture *> SPictureList; -typedef struct picture *picturepointer; -typedef QPair<picturepointer, QImage> SPixmap; - // function that will scale the pixmap, used inside the QtConcurrent thread. -SPixmap scaleImages(picturepointer picture); +void scaleImages(PictureEntry &entry); class DivePictureModel : public QAbstractTableModel { Q_OBJECT @@ -31,11 +29,10 @@ public: protected: DivePictureModel(); - int numberOfPictures; // Currently, load the images on the fly // Later, use a thread to load the images // Later, save the thumbnails so we don't need to reopen every time. - QHash<QString, PhotoHelper> stringPixmapCache; + QList<PictureEntry> pictures; }; #endif |