Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[bugfix][backport] File downloader for identify dialog hyperlinks
fixes #14703 Include C++ and Python tests ( cherry-picked from commit bdc2e24 ) Try to convince Travis to behave like a normal mechanical being Travis won: ported all test cases to Python and disabled C++ companion test (still useful locally and for debugging) For the curious: QTemporaryFile is not working as expected ( cherry-picked from 57aa7fd )
- Loading branch information
Showing
12 changed files
with
845 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
/*************************************************************************** | ||
qgsfiledownloader.sip | ||
-------------------------------------- | ||
Date : November 2016 | ||
Copyright : (C) 2016 by Alessandro Pasotti | ||
Email : elpaso at itopen dot it | ||
*************************************************************************** | ||
* * | ||
* This program is free software; you can redistribute it and/or modify * | ||
* it under the terms of the GNU General Public License as published by * | ||
* the Free Software Foundation; either version 2 of the License, or * | ||
* (at your option) any later version. * | ||
* * | ||
***************************************************************************/ | ||
|
||
/** \ingroup gui | ||
* QgsFileDownloader is a utility class for downloading files. | ||
* | ||
* To use this class, it is necessary to pass the URL and an output file name as | ||
* arguments to the constructor, the download will start immediately. | ||
* The download is asynchronous and depending on the guiNotificationsEnabled | ||
* parameter accepted by the constructor (default = true) the class will | ||
* show a progress dialog and report all errors in a QMessageBox::warning dialog. | ||
* If the guiNotificationsEnabled parameter is set to false, the class can still | ||
* be used through the signals and slots mechanism. | ||
* The object will destroy itself when the request completes, errors or is canceled. | ||
* | ||
* @note added in QGIS 2.18.1 | ||
*/ | ||
class QgsFileDownloader : public QObject | ||
{ | ||
%TypeHeaderCode | ||
#include <qgsfiledownloader.h> | ||
%End | ||
public: | ||
/** | ||
* QgsFileDownloader | ||
* @param url the download url | ||
* @param outputFileName file name where the downloaded content will be stored | ||
* @param guiNotificationsEnabled if false, the downloader will not display any progress bar or error message | ||
*/ | ||
QgsFileDownloader(QUrl url, QString outputFileName, bool guiNotificationsEnabled = true); | ||
|
||
signals: | ||
/** Emitted when the download has completed successfully */ | ||
void downloadCompleted(); | ||
/** Emitted always when the downloader exits */ | ||
void downloadExited(); | ||
/** Emitted when the download was canceled by the user */ | ||
void downloadCanceled(); | ||
/** Emitted when an error makes the download fail */ | ||
void downloadError( QStringList errorMessages ); | ||
/** Emitted when data ready to be processed */ | ||
void downloadProgress(qint64 bytesReceived, qint64 bytesTotal); | ||
|
||
public slots: | ||
/** | ||
* Called when a download is canceled by the user | ||
* this slot aborts the download and deletes the object | ||
*/ | ||
void onDownloadCanceled(); | ||
|
||
private: | ||
~QgsFileDownloader(); | ||
|
||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.