diff options
author | Nils Schwabe | 2014-03-14 14:50:24 +0100 |
---|---|---|
committer | Nils Schwabe | 2014-03-14 14:50:24 +0100 |
commit | 280c0256db2378c9f33775b270f211660e5bf868 (patch) | |
tree | 7b420929c841b82c3c7558856a9471a212606581 /src/FileDownloader.cpp | |
parent | added function: icon fallback if icon is not found locally (diff) | |
download | vmchooser2-280c0256db2378c9f33775b270f211660e5bf868.tar.gz vmchooser2-280c0256db2378c9f33775b270f211660e5bf868.tar.xz vmchooser2-280c0256db2378c9f33775b270f211660e5bf868.zip |
- Added IconHolder to cache items
- Added FileDownloader for icon downloads
Diffstat (limited to 'src/FileDownloader.cpp')
-rw-r--r-- | src/FileDownloader.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/FileDownloader.cpp b/src/FileDownloader.cpp new file mode 100644 index 0000000..d72fdd8 --- /dev/null +++ b/src/FileDownloader.cpp @@ -0,0 +1,37 @@ +/* + * FileDownloader.cpp + * + * Created on: Mar 7, 2014 + * Author: nils + */ + +#include <QFileInfo> + +#include "FileDownloader.h" + +FileDownloader::FileDownloader(QObject *parent) : + QObject(parent) { + connect(&m_WebCtrl, SIGNAL(finished(QNetworkReply*)), + SLOT(fileDownloaded(QNetworkReply*))); +} + +FileDownloader::~FileDownloader() { + +} + +void FileDownloader::connectSlot(QObject* obj, const char* slot) { + QObject::connect(this, SIGNAL(downloaded(QString& fileName, QByteArray downloadedData)), + obj, slot); +} + +void FileDownloader::fileDownloaded(QNetworkReply* pReply) { + QByteArray downloadedData = pReply->readAll(); + //emit a signal + pReply->deleteLater(); + emit downloaded(this->fileName, downloadedData); +} + +void FileDownloader::downloadFile(const QUrl& fileUrl) { + this->fileName = QFileInfo(fileUrl.toLocalFile()).fileName(); + m_WebCtrl.get(QNetworkRequest(fileUrl)); +} |