mirror of
https://github.com/kiwix/kiwix-desktop.git
synced 2025-09-24 04:32:15 -04:00
typedefs in ThumbnailDownloader
This commit is contained in:
parent
535675afdb
commit
847c65baf1
@ -18,7 +18,7 @@ ThumbnailDownloader::~ThumbnailDownloader()
|
||||
{
|
||||
}
|
||||
|
||||
void ThumbnailDownloader::addDownload(QString url, QModelIndex index)
|
||||
void ThumbnailDownloader::addDownload(QString url, ThumbnailId index)
|
||||
{
|
||||
m_urlPairList.append({index, url});
|
||||
if (!m_isDownloading)
|
||||
@ -35,18 +35,18 @@ void ThumbnailDownloader::startDownload()
|
||||
downloadOnePair(m_urlPairList.takeFirst());
|
||||
}
|
||||
|
||||
void ThumbnailDownloader::downloadOnePair(QPair<QModelIndex, QString> urlPair)
|
||||
void ThumbnailDownloader::downloadOnePair(ThumbnailInfo thumbnailInfo)
|
||||
{
|
||||
QNetworkRequest req(urlPair.second);
|
||||
QNetworkRequest req(thumbnailInfo.second);
|
||||
auto reply = manager.get(req);
|
||||
connect(reply, &QNetworkReply::finished, this, [=](){
|
||||
fileDownloaded(reply, urlPair);
|
||||
fileDownloaded(reply, thumbnailInfo);
|
||||
});
|
||||
}
|
||||
|
||||
void ThumbnailDownloader::fileDownloaded(QNetworkReply *pReply, QPair<QModelIndex, QString> urlPair)
|
||||
void ThumbnailDownloader::fileDownloaded(QNetworkReply *pReply, ThumbnailInfo thumbnailInfo)
|
||||
{
|
||||
auto downloadedData = pReply->readAll();
|
||||
emit oneThumbnailDownloaded(urlPair.first, urlPair.second, downloadedData);
|
||||
emit oneThumbnailDownloaded(thumbnailInfo.first, thumbnailInfo.second, downloadedData);
|
||||
pReply->deleteLater();
|
||||
}
|
||||
|
@ -12,25 +12,29 @@ class ThumbnailDownloader : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
typedef QModelIndex ThumbnailId;
|
||||
typedef QPair<ThumbnailId, QString> ThumbnailInfo;
|
||||
|
||||
public:
|
||||
ThumbnailDownloader(QObject *parent = 0);
|
||||
~ThumbnailDownloader();
|
||||
|
||||
void addDownload(QString url, QModelIndex index);
|
||||
void addDownload(QString url, ThumbnailId index);
|
||||
void startDownload();
|
||||
void downloadOnePair(QPair<QModelIndex, QString> urlPair);
|
||||
void downloadOnePair(ThumbnailInfo thumbnailInfo);
|
||||
void clearQueue() { m_urlPairList.clear(); }
|
||||
|
||||
signals:
|
||||
void oneThumbnailDownloaded(QModelIndex, QString, QByteArray);
|
||||
void oneThumbnailDownloaded(ThumbnailId, QString, QByteArray);
|
||||
|
||||
private:
|
||||
QQueue<QPair<QModelIndex, QString>> m_urlPairList;
|
||||
QQueue<ThumbnailInfo> m_urlPairList;
|
||||
QNetworkAccessManager manager;
|
||||
bool m_isDownloading = false;
|
||||
|
||||
private slots:
|
||||
void fileDownloaded(QNetworkReply *pReply, QPair<QModelIndex, QString> urlPair);
|
||||
void fileDownloaded(QNetworkReply *pReply, ThumbnailInfo thumbnailInfo);
|
||||
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user