summaryrefslogtreecommitdiffstats
path: root/qt-models/divepicturemodel.h
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2017-12-10 00:07:46 +0100
committerGravatar Robert C. Helling <helling@atdotde.de>2017-12-10 15:00:53 +0100
commitc73828d6055db664354ae5d1b2637d379294ef8a (patch)
treed750fbabc588d9fd672b4b58cef152ad138573b1 /qt-models/divepicturemodel.h
parenta07d3b7bfe30f92df8d7e12d364db5aec0a18e46 (diff)
downloadsubsurface-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.h13
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