Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qgeomapreply_nokia.cpp
Go to the documentation of this file.
1// Copyright (C) 2015 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
5#include <QNetworkAccessManager>
6#include <QNetworkCacheMetaData>
7#include <QDateTime>
8
10
11QGeoMapReplyNokia::QGeoMapReplyNokia(QNetworkReply *reply, const QGeoTileSpec &spec, QObject *parent)
12 : QGeoTiledMapReply(spec, parent)
13{
14 if (!reply) {
15 setError(UnknownError, QStringLiteral("Null reply"));
16 return;
17 }
18 connect(reply, &QNetworkReply::finished,
19 this, &QGeoMapReplyNokia::networkFinished);
20 connect(reply, &QNetworkReply::errorOccurred,
21 this, &QGeoMapReplyNokia::networkError);
22 connect(this, &QGeoTiledMapReply::aborted, reply, &QNetworkReply::abort);
23 connect(this, &QObject::destroyed, reply, &QObject::deleteLater);
24}
25
26QGeoMapReplyNokia::~QGeoMapReplyNokia()
27{
28}
29
30void QGeoMapReplyNokia::networkFinished()
31{
32 QNetworkReply *reply = static_cast<QNetworkReply *>(sender());
33 reply->deleteLater();
34
35 if (reply->error() != QNetworkReply::NoError)
36 return;
37
38 setMapImageData(reply->readAll());
39 setMapImageFormat("png");
40 setFinished(true);
41}
42
43void QGeoMapReplyNokia::networkError(QNetworkReply::NetworkError error)
44{
45 QNetworkReply *reply = static_cast<QNetworkReply *>(sender());
46 reply->deleteLater();
47 if (error == QNetworkReply::OperationCanceledError)
48 setFinished(true);
49 else
50 setError(QGeoTiledMapReply::CommunicationError, reply->errorString());
51}
52
53QT_END_NAMESPACE
The QNetworkReply class contains the data and headers for a request sent with QNetworkAccessManager.