×
Namespaces

Variants
Actions
(Difference between revisions)

Porting iPhone Web Apps to Qt using QtWebKit

From Nokia Developer Wiki
Jump to: navigation, search
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot fixing redirect link.(Moving links from forum.nokia.com TO developer.nokia.com))
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot change of template (Template:CodeSnippet) - now using Template:ArticleMetaData)
Line 1: Line 1:
 
[[Category:Porting]][[Category:Qt]]
 
[[Category:Porting]][[Category:Qt]]
 
{{KBCS}}
 
{{KBCS}}
{{CodeSnippet
+
{{ArticleMetaData
 
|id=
 
|id=
 
|platform= S60, Symbian^3, Maemo
 
|platform= S60, Symbian^3, Maemo
Line 9: Line 9:
 
|creationdate= 14 November 2010
 
|creationdate= 14 November 2010
 
|keywords= Web, WebKit, HTML, QWebView, JavaScript
 
|keywords= Web, WebKit, HTML, QWebView, JavaScript
 +
 +
|sourcecode= <!-- Link to example source code (e.g. [[Media:The Code Example ZIP.zip]]) -->
 +
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
 +
|sdk=<!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Nokia Qt SDK 1.1]) -->
 +
|devicecompatability=<!-- Compatible devices (e.g.: All* (must have GPS) ) -->
 +
|signing=<!-- Empty or one of Self-Signed, DevCert, Manufacturer -->
 +
|capabilities=<!-- Capabilities required (e.g. Location, NetworkServices.) -->
 +
|author=[[User:Chintandave er]]
 
}}
 
}}
  

Revision as of 09:40, 26 June 2011

Template:KBCS

Article Metadata
Tested with
Devices(s): Nokia 5800, N900
Compatibility
Platform(s): S60, Symbian^3, Maemo
Article
Keywords: Web, WebKit, HTML, QWebView, JavaScript
Created: chintandave_er (14 Nov 2010)
Last edited: hamishwillee (26 Jun 2011)

Contents

Overview

This Wiki Article shows how to port iPhone Web Apps to Qt using QtWebkit

Install the Nokia Qt SDK

Install Nokia Qt SDK if you don’t already have it from here.

Main Class

#include <QtGui/QApplication>
#include "webapp.h"
 
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
WebApp w;
 
w.showFullScreen();
 
return a.exec();
}


Header

#ifndef WEBAPP_H
#define WEBAPP_H
#include <QtCore/QPointer>
#include <QtWebKit/QWebView>
#include <QtWebKit/QWebPage>
#include <QtWebKit/QWebFrame>
#include <QtGui/QWidget>
#include <QtGui/QApplication>
#include <QtGui/QMainWindow>
#include <QtGui/QFrame>
#include <QtGui/QVBoxLayout>
class WebApp : public QMainWindow
{
Q_OBJECT
public:
WebApp(QWidget *parent = 0);
~WebApp();
private:
QPointer<QWebView> _webView;
QPointer<QVBoxLayout> _layout;
void SetupApp();
};
#endif // WEBAPP_H


Source

#include "webapp.h"
WebApp::WebApp(QWidget *parent)
: QMainWindow(parent)
{
SetupApp();
}
WebApp::~WebApp()
{
}
void WebApp::SetupApp()
{
/**
* Create the central widget
* and set it.
*/

QFrame* cW = new QFrame(this);
setCentralWidget(cW);
/**
* Set the layout to central widget.
*/

_layout = new QVBoxLayout(this);
cW->setLayout(_layout);
_layout->setMargin(0);
_layout->setSpacing(0);
/**
* Let's create the web view which
* will be used to display our page.
*/

_webView = new QWebView(this);
 
// Add your iPhone Web App URL to display in Qt App
_webView->load(QUrl("http://URL"));
_webView->show();
/** Add it to layout */
_layout->addWidget(_webView);
}

Postcondition

Here is one ported iPhone web app screen snap.

IphoneWebApp.jpg


Source Code

You can download source code from this link File:WebApp.zip

53 page views in the last 30 days.
×