summaryrefslogtreecommitdiffstats
path: root/core/imagedownloader.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/imagedownloader.h')
-rw-r--r--core/imagedownloader.h21
1 files changed, 13 insertions, 8 deletions
diff --git a/core/imagedownloader.h b/core/imagedownloader.h
index 92edea0b6..bee262854 100644
--- a/core/imagedownloader.h
+++ b/core/imagedownloader.h
@@ -10,13 +10,17 @@
class ImageDownloader : public QObject {
Q_OBJECT
public:
- ImageDownloader(const QString &filename);
- void load(bool fromHash);
-
+ static ImageDownloader *instance();
+ ImageDownloader();
+public slots:
+ void load(QString filename, bool fromHash);
+signals:
+ void loaded(QString filename);
+ void failed(QString filename);
private:
- bool loadFromUrl(const QUrl &); // return true on success
- void saveImage(QNetworkReply *reply, bool &success);
- QString filename;
+ QNetworkAccessManager manager;
+ void loadFromUrl(const QString &filename, const QUrl &);
+ void saveImage(QNetworkReply *reply);
};
class PictureEntry;
@@ -35,6 +39,9 @@ public:
static int maxThumbnailSize();
static int defaultThumbnailSize();
static int thumbnailSize(double zoomLevel);
+public slots:
+ void imageDownloaded(QString filename);
+ void imageDownloadFailed(QString filename);
signals:
void thumbnailChanged(QString filename, QImage thumbnail);
private:
@@ -49,6 +56,4 @@ private:
QMap<QString,QFuture<void>> workingOn;
};
-QImage getHashedImage(const QString &filename);
-
#endif // IMAGEDOWNLOADER_H