summaryrefslogtreecommitdiffstats
path: root/examples/network/http
diff options
context:
space:
mode:
authorDavid Boddie <david.boddie@nokia.com>2011-04-27 19:16:41 +0200
committerDavid Boddie <david.boddie@nokia.com>2011-05-23 14:24:07 +0200
commit0748751c9f097d9d866605306bbdd4b96e2a5c4e (patch)
tree1838365e6ad6592a26e193289d2136cb89319972 /examples/network/http
parent5feefb0c039dae04290d1fca7c2f24276b6f7582 (diff)
Squashed commit of the changes from the mobile-examples repository
(4.7-generated-declarative branch).
Diffstat (limited to 'examples/network/http')
-rw-r--r--examples/network/http/http.pro6
-rw-r--r--examples/network/http/httpwindow.cpp25
-rw-r--r--examples/network/http/httpwindow.h10
-rw-r--r--examples/network/http/main.cpp17
4 files changed, 53 insertions, 5 deletions
diff --git a/examples/network/http/http.pro b/examples/network/http/http.pro
index 74a8e49d90..7da0979935 100644
--- a/examples/network/http/http.pro
+++ b/examples/network/http/http.pro
@@ -10,4 +10,8 @@ sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS http.pro
sources.path = $$[QT_INSTALL_EXAMPLES]/qtbase/network/http
INSTALLS += target sources
-symbian: CONFIG += qt_example
+symbian: {
+ CONFIG += qt_example
+ TARGET.CAPABILITY = NetworkServices
+}
+maemo5: CONFIG += qt_example
diff --git a/examples/network/http/httpwindow.cpp b/examples/network/http/httpwindow.cpp
index 874994ab92..6497a33508 100644
--- a/examples/network/http/httpwindow.cpp
+++ b/examples/network/http/httpwindow.cpp
@@ -45,7 +45,11 @@
#include "ui_authenticationdialog.h"
HttpWindow::HttpWindow(QWidget *parent)
+#ifdef Q_WS_MAEMO_5
+ : QWidget(parent)
+#else
: QDialog(parent)
+#endif
{
#ifndef QT_NO_OPENSSL
urlLineEdit = new QLineEdit("https://qt.nokia.com/");
@@ -57,6 +61,7 @@ HttpWindow::HttpWindow(QWidget *parent)
urlLabel->setBuddy(urlLineEdit);
statusLabel = new QLabel(tr("Please enter the URL of a file you want to "
"download."));
+ statusLabel->setWordWrap(true);
downloadButton = new QPushButton(tr("Download"));
downloadButton->setDefault(true);
@@ -67,7 +72,9 @@ HttpWindow::HttpWindow(QWidget *parent)
buttonBox->addButton(downloadButton, QDialogButtonBox::ActionRole);
buttonBox->addButton(quitButton, QDialogButtonBox::RejectRole);
+#ifndef Q_WS_MAEMO_5
progressDialog = new QProgressDialog(this);
+#endif
connect(urlLineEdit, SIGNAL(textChanged(QString)),
this, SLOT(enableDownloadButton()));
@@ -78,7 +85,9 @@ HttpWindow::HttpWindow(QWidget *parent)
connect(&qnam, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)),
this, SLOT(sslErrors(QNetworkReply*,QList<QSslError>)));
#endif
+#ifndef Q_WS_MAEMO_5
connect(progressDialog, SIGNAL(canceled()), this, SLOT(cancelDownload()));
+#endif
connect(downloadButton, SIGNAL(clicked()), this, SLOT(downloadFile()));
connect(quitButton, SIGNAL(clicked()), this, SLOT(close()));
@@ -117,7 +126,7 @@ void HttpWindow::downloadFile()
fileName = "index.html";
if (QFile::exists(fileName)) {
- if (QMessageBox::question(this, tr("HTTP"),
+ if (QMessageBox::question(this, tr("HTTP"),
tr("There already exists a file called %1 in "
"the current directory. Overwrite?").arg(fileName),
QMessageBox::Yes|QMessageBox::No, QMessageBox::No)
@@ -136,9 +145,10 @@ void HttpWindow::downloadFile()
return;
}
-
+#ifndef Q_WS_MAEMO_5
progressDialog->setWindowTitle(tr("HTTP"));
progressDialog->setLabelText(tr("Downloading %1.").arg(fileName));
+#endif
downloadButton->setEnabled(false);
// schedule the request
@@ -164,11 +174,15 @@ void HttpWindow::httpFinished()
file = 0;
}
reply->deleteLater();
+#ifndef Q_WS_MAEMO_5
progressDialog->hide();
+#endif
return;
}
+#ifndef Q_WS_MAEMO_5
progressDialog->hide();
+#endif
file->flush();
file->close();
@@ -194,7 +208,7 @@ void HttpWindow::httpFinished()
}
} else {
QString fileName = QFileInfo(QUrl(urlLineEdit->text()).path()).fileName();
- statusLabel->setText(tr("Downloaded %1 to current directory.").arg(fileName));
+ statusLabel->setText(tr("Downloaded %1 to %2.").arg(fileName).arg(QDir::currentPath()));
downloadButton->setEnabled(true);
}
@@ -219,8 +233,13 @@ void HttpWindow::updateDataReadProgress(qint64 bytesRead, qint64 totalBytes)
if (httpRequestAborted)
return;
+#ifndef Q_WS_MAEMO_5
progressDialog->setMaximum(totalBytes);
progressDialog->setValue(bytesRead);
+#else
+ Q_UNUSED(bytesRead);
+ Q_UNUSED(totalBytes);
+#endif
}
void HttpWindow::enableDownloadButton()
diff --git a/examples/network/http/httpwindow.h b/examples/network/http/httpwindow.h
index 0ec87af48a..8bbe1a261a 100644
--- a/examples/network/http/httpwindow.h
+++ b/examples/network/http/httpwindow.h
@@ -41,7 +41,11 @@
#ifndef HTTPWINDOW_H
#define HTTPWINDOW_H
+#ifdef Q_WS_MAEMO_5
+#include <QWidget>
+#else
#include <QDialog>
+#endif
#include <QNetworkAccessManager>
#include <QUrl>
@@ -59,7 +63,11 @@ class QNetworkReply;
QT_END_NAMESPACE
+#ifdef Q_WS_MAEMO_5
+class HttpWindow : public QWidget
+#else
class HttpWindow : public QDialog
+#endif
{
Q_OBJECT
@@ -84,7 +92,9 @@ private:
QLabel *statusLabel;
QLabel *urlLabel;
QLineEdit *urlLineEdit;
+#ifndef Q_WS_MAEMO_5
QProgressDialog *progressDialog;
+#endif
QPushButton *downloadButton;
QPushButton *quitButton;
QDialogButtonBox *buttonBox;
diff --git a/examples/network/http/main.cpp b/examples/network/http/main.cpp
index 4c4f61c775..e4f157476c 100644
--- a/examples/network/http/main.cpp
+++ b/examples/network/http/main.cpp
@@ -39,13 +39,28 @@
****************************************************************************/
#include <QApplication>
+#include <QDir>
#include "httpwindow.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
+
+#if defined(Q_OS_SYMBIAN)
+ // Change current directory from default private to c:\data
+ // in order that user can access the downloaded content
+ QDir::setCurrent("c:\\data");
+#elif defined(Q_WS_MAEMO_5)
+ QDir::setCurrent("/home/user");
+#endif
+
HttpWindow httpWin;
+
+#if defined(Q_OS_SYMBIAN)
+ httpWin.showMaximized();
+#else
httpWin.show();
- return httpWin.exec();
+#endif
+ return app.exec();
}