Skip to content

Commit 6f09330

Browse files
author
Qt Continuous Integration System
committed
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-doc-staging into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-doc-staging: Doc updates to installation, platform notes and symbian introduction.
2 parents 96fcfc7 + 9224d59 commit 6f09330

File tree

3 files changed

+133
-137
lines changed

3 files changed

+133
-137
lines changed

doc/src/getting-started/installation.qdoc

Lines changed: 8 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -504,75 +504,27 @@ in the \l{Qt for Windows CE Requirements} document.
504504

505505
\tableofcontents
506506

507-
Qt for the Symbian platform has some requirements that are given in more detail
508-
in the \l{Qt for the Symbian platform Requirements} document.
509-
510-
511-
\section1 Step 1: Install Qt
512-
513-
Download the \c {Qt libraries 4.x for Windows} package (for \c minGW or \c {VS 2008})
514-
from the \l {http://qt.nokia.com/downloads#qt-lib}{downloads} page.
515-
516-
Run the downloaded package and follow the instructions.
517-
518-
\note Qt must be installed on the same drive as the Symbian SDK you are
519-
using, and the install path must not contain any spaces.
520-
521-
\section1 Step 2: Install Qt into a device
522-
523-
To run Qt applications on a device, \c{qt_installer.sis} found
524-
in the Qt installation directory must be first installed into the device.
525-
\c{Qt_installer.sis} contains Qt libraries and Open C libraries all in one
526-
convenient package.
527-
Begin installation by connecting your device via USB cable to a computer that
528-
has the \l{http://www.nokia.com/pcsuite}{Nokia PC Suite} installed.
529-
On the device, select "PC Suite mode". In Windows Explorer right click
530-
on the \c{qt_installer.sis} file, select "Install with Nokia Application
531-
Installer" and follow the instructions.
532-
533-
\section1 Running Qt demos
534-
535-
We've included a subset of the Qt demos in this package for you
536-
to try out. An excellent starting point is the "fluidlauncher"
537-
demo.
538-
539-
To run the demo on a real device, install \c{fluidlauncher.sis}
540-
found in the Qt installation directory to a device that already has Qt installed.
541-
After installation, you can find fluidlauncher in the applications folder of the device.
542-
543-
To run the demos and examples on the emulator, you need to build them first.
544-
Open the "Qt for the Symbian platform Command Prompt" from the Start menu and type:
545-
546-
\snippet doc/src/snippets/code/doc_src_installation.qdoc 25
547-
548-
To run the demos on the emulator simply navigate to the directory of the demo
549-
you want to see and run:
550-
551-
\snippet doc/src/snippets/code/doc_src_installation.qdoc 27
552-
553-
For more information about building and running Qt programs on the
554-
Symbian platform,
555-
see \l{The Symbian platform - Introduction to Qt}.
556-
557-
\bold{We hope you will enjoy using Qt.}
558-
507+
Qt for Symbian binary packages (SIS files) are available from the \l
508+
{http://qt.nokia.com/downloads}{Qt SDK}.
559509

560510
*/
561511
/*! \page install-Symbian.html
562-
\title Installing Qt for the Symbian platform
512+
\title Installing Qt for the Symbian Platform
563513
\ingroup installation
564514
\ingroup qtsymbian
565515
\brief How to install Qt for the Symbian platform.
566516
\previouspage Installation
567517
\tableofcontents
568518

519+
\l {http://qt.nokia.com/downloads}{Qt SDK} provides all the necessary tools
520+
and libraries for developing Qt applications. However, if you want to build
521+
Qt itself for Symbian, follow the instructions below.
522+
569523
Qt for the Symbian platform has some requirements that are given in more detail
570524
in the \l{Qt for the Symbian platform Requirements} document.
571525

572526
This document describes how to install and configure Qt for
573-
the Symbian platform from scratch. If you are using pre-built binaries, follow
574-
the instructions given in the \l{Installing Qt for the Symbian platform from a
575-
Binary Package} document.
527+
the Symbian platform from scratch.
576528

577529
\section1 Step 1: Set Up the Development Environment
578530

doc/src/platforms/platform-notes.qdoc

Lines changed: 122 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -622,7 +622,10 @@
622622
\ingroup platform-specific
623623
\brief Information about the state of support for the Symbian platform.
624624

625-
This page documents the current notes for the Symbian port.
625+
This page describes implementation details regarding the Qt for Symbian port. To get
626+
started with application development for Symbian devices, read the \l
627+
{http://doc.qt.nokia.com/qtcreator/creator-developing-symbian.html}
628+
{Connecting Symbian Devices} document.
626629

627630
\section1 Source Compatibility
628631

@@ -635,10 +638,10 @@
635638

636639
As with every supported platform, Qt strives to maintain application
637640
behavior and binary compatibility throughout the lifetime of the Qt 4.x
638-
major version and on the Symbian devices that support Qt. Symbian support in
639-
Qt SDK and Ovi Store were introduced with Qt 4.6. Each Qt release contains
640-
bug fixes that might change the API behavior and thereby affect application
641-
compatibility.
641+
major version and on the \l {Supported Devices}{Symbian devices that support Qt}.
642+
Symbian support in Qt SDK and Ovi Store were introduced with Qt 4.6. Each Qt
643+
release contains bug fixes that might change the API behavior and thereby
644+
affect application compatibility.
642645

643646
In addition, Symbian devices have different input methods, such as different
644647
keyboard styles or touch input, screen sizes, memory, and CPU and GPU
@@ -648,73 +651,93 @@
648651
Generally, an earlier target (such as S60 5th Edition) is supported on a
649652
larger number of devices than a later target (such as Symbian Belle).
650653

654+
\target Supported Devices
651655
\section1 Supported Devices
656+
657+
The \l {http://developer.qt.nokia.com/wiki/support_for_Symbian}{Support for Symbian} document
658+
details the Qt support on different Symbian devices.
652659

653-
\l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian#Supported_Devices}{Nokia Smart Installer for Symbian}
654-
documentation lists supported devices.
660+
The \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian#Supported_Devices}
661+
{Nokia Smart Installer for Symbian} document lists how Qt is supported on
662+
different Symbian devices through Smart Installer.
655663

656664
Qt versions are supported by Symbian devices as follows:
657665
\list
658666
\o Qt 4.6 is supported by S60 3rd Edition feature pack 1 and newer devices
659667
through \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Smart Installer}.
660-
\o Qt 4.7.3 is supported by S60 5th Edition and newer devices.
668+
\o Qt 4.7.3 is supported by S60 5th Edition and newer devices
669+
through \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Smart Installer}.
661670
\endlist
662671

663672
Symbian devices have a pre-installed Qt support as follows:
664673
\list
665-
\o Symbian Anna: Qt 4.7.3 in C: drive.
674+
\o Symbian Anna: Qt 4.7.3 in C: drive. Note that Qt 4.7.4 is supported in Symbian Anna
675+
through \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Smart Installer}.
666676
\o Symbian Belle: Qt 4.7.4 in device firmware (ROM).
667677
\endlist
668678

669679

670-
\section1 Supported Functionality
671-
672-
The following technologies and classes are not currently supported:
673-
674-
\table
675-
\header \o Technology
676-
\o Note
677-
\row \o QtConcurrent
678-
\o Planned for future release.
679-
\row \o QtDBus
680-
\o No current plans to support this feature.
681-
\row \o Printing support
682-
\o No current plans to support this feature.
683-
\row \o Qt3Support
684-
\o No current plans to support this feature.
685-
\endtable
680+
\section1 Functionality Support
686681

682+
The following technologies and classes are not supported:
683+
\list
684+
\o QtConcurrent
685+
\o QtDBus
686+
\o \l {http://doc.qt.nokia.com/4.8/printing.html}{Printing support}
687+
\o Qt3Support
688+
\endlist
689+
687690
The following technologies have limited support:
688691

689692
\table
690-
\header \o Technology
693+
\header \o Module
691694
\o Note
692695
\row \o QtSql
693696
\o The only supported driver is SQLite.
694697
\row \o QtMultimedia
695-
\o For support details see \l {Multimedia and Phonon Support} section.
698+
\o For support details see \l {Multimedia Support} section.
699+
\row \o QtGui
700+
\o QtGui's widgets are deprecated (i.e. they are available but not
701+
recommended to use) in the Symbian port. It is recommended to use \l
702+
{http://doc.qt.nokia.com/qt-components-symbian-1.1/symbian-components-functional.html}
703+
{Qt Quick Components for Symbian} instead, because they provide
704+
better look and feel on Symbian devices.
705+
706+
Moreover, the following classes of QtGui \bold {should not
707+
be used} in a Symbian application:
708+
709+
\list
710+
\o QFileDialog with the \c DontUseNativeDialog option
711+
\o QColorDialog with the \c DontUseNativeDialog option
712+
\o QFontDialog
713+
\o QWizard
714+
\o QCalendarWidget
715+
\o QDateTimeEdit
716+
\o QMdiArea
717+
\o QDockWidget
718+
\o QMdiSubWindow
719+
\o QPrintPreviewWidget
720+
\endlist
721+
722+
QScrollArea: The scrolling and focus handling of QScrollArea's all
723+
scrollable widgets, for example QListView, differs from native Avkon
724+
list widgets' one. Native Avkon scrollable components support
725+
touch-gesture-based scrolling by dragging and flicking the UI
726+
component but this functionality is not implemented in Qt widgets.
727+
Scrolling by dragging and flicking works also in Qt Quick Components
728+
that implements the \l
729+
{http://www.developer.nokia.com/Resources/Library/Symbian_Design_Guidelines/}
730+
{Symbian design guidelines}.
731+
696732
\endtable
697-
698-
It is not recommended to use the following Qt widgets:
699-
\list
700-
\o QFileDialog with the \c DontUseNativeDialog option
701-
\o QColorDialog with the \c DontUseNativeDialog option
702-
\o QFontDialog
703-
\o QWizard
704-
\o QCalendarWidget
705-
\o QDateTimeEdit
706-
\o QMdiArea
707-
\o QMdiSubWindow
708-
\o QDockWidget
709-
\o QPrintPreviewWidget
710-
\endlist
711733

712734
\section1 Compiler Notes
713-
714-
\section2 GCCE (Symbian)
715-
716-
GCCE cannot be used to compile Qt libaries for the Symbian platform, but GCCE is supported
717-
when compiling Qt applications for the Symbian platform.
735+
736+
For the application development the necessary compiler toolchain is included in \l
737+
{http://qt.nokia.com/downloads}{Qt SDK}. For instructions compiling Qt
738+
itself see the \l
739+
{http://doc.qt.nokia.com/stable/install-symbian.html}
740+
{Installing Qt for the Symbian platform} document.
718741

719742
\section1 Known Issues
720743

@@ -730,11 +753,14 @@
730753

731754
\section1 Required Capabilities
732755

733-
The Qt libraries are typically signed with \c{All -TCB} capabilites, but
756+
The Qt libraries are typically signed with \c{All -TCB} capabilites but
734757
that does not mean your Qt application needs to be signed with the same
735758
capabilities to function properly. The capabilities your application needs
736-
to function properly depends on which parts of Qt you use, here is an
737-
overview:
759+
to function properly depends on which parts of Qt you use.
760+
In a Qt application Symbian capabilities are defined in the
761+
\l {http://doc.qt.nokia.com/4.8/qmake-variable-reference.html#target-capability}
762+
{TARGET.CAPABILITY} qmake variable in the project file.
763+
Here is an overview for which capabilities may be needed when using different modules:
738764

739765
\table
740766
\header \o Module
@@ -751,9 +777,9 @@
751777
\o \c ReadUserData is required to include all the phone's SSL certificates in the system's default CA certificate list
752778
(for example those added by the user or stored in the SIM card),
753779
without this capability only the CA certs built into the phone are used.
754-
\row \o QtMultiMedia
780+
\row \o QtMultimedia
755781
\o \c UserEnvironment if QAudioInput is used.
756-
\row \o QtWebkit
782+
\row \o QtWebKit
757783
\o \c NetworkServices is automatically added for this module if no capabilities are explicitly specified.
758784
\endtable
759785

@@ -764,30 +790,41 @@
764790
For more information see the documentation of the individual Qt classes. If
765791
a class does not mention Symbian capabilities, it requires none.
766792

767-
\target Multimedia and Phonon Support
768-
\section1 Multimedia and Phonon Support
793+
\target Multimedia Support
794+
\section1 Multimedia Support
769795

770-
Qt provides a high-level API for multimedia functionality with
771-
(\l{http://doc.qt.nokia.com/qtmobility/multimedia.html}).
796+
Qt Mobility provides a high-level API for multimedia functionality with
797+
\l{http://doc.qt.nokia.com/qtmobility/multimedia.html}{QtMultimediaKit}.
798+
In addition, Qt provides the low-level \l {QtMultimedia}{QtMultimedia}
799+
module that is internally used by the QtMultimediaKit. For more information
800+
on developing multimedia applications for Symbian devices, see
801+
\l {http://www.developer.nokia.com/info/sw.nokia.com/id/4abf12e7-72d8-45ef-b1a2-46184abe18ba/Guide_for_Qt_Multimedia_Developers.html}
802+
{Guide for Qt Multimedia Developers}.
772803

773-
Qt also provides a backend for Qt's Phonon module, which supports video and
774-
sound playback through Symbian's Multimedia Framework, MMF. Note that Phonon
775-
support is not being extended, and that Qt's multimedia module will
776-
take over for Phonon at a later stage.
804+
Moreover, there is a third multimedia-related module called Phonon. Qt
805+
provides two backends for the Phonon module in Symbian: \i MMF and \i Helix.
777806

778-
In this release the support is experimental. Video playback may show
779-
artifacts when the video is moved or resized (for instance during
780-
orientation flips). This problem is present on S60 5th Edition and earlier
781-
versions, and on Symbian^3 systems.
807+
Note that Phonon is a legacy module and the QtMultimediaKit module is
808+
replacing Phonon in Qt 5. Although Phonon is supported in Symbian for
809+
backwards compatibility and there is no plan to remove Phonon from Symbian
810+
any new applications should use QtMultimediaKit in Symbian using Qt 4.7
811+
bundle. The QtMultimediaKit feature set is comparable to that in Phonon.
782812

783-
The audio and video formats that Phonon supports depends on what support
813+
The following applies to Phonon:
814+
\list
815+
\o MMF Phonon backend supports video and sound playback through Symbian's
816+
Multimedia Framework, MMF. Phonon's video playback may show artifacts when
817+
the video is moved or resized (for instance, during device orientation
818+
changes from portrait to landscape and vice versa). This problem is present
819+
on S60 5th Edition and earlier versions, as well as in Symbian Anna devices.
820+
\o The audio and video formats that Phonon supports depends on what support
784821
the platform provides for MMF. The emulator is known to have limited
785822
codec support.
786-
787-
In addition, there exists a backend for the Helix framework. However, since
823+
\o In addition, there exists a backend for the Helix framework. However, since
788824
it is not shipped with Qt, its availability depends on the Symbian platform
789825
in use. If the MFF plugin fails to load, the Helix plugin, if present on the
790826
device, will be loaded instead.
827+
\endlist
791828

792829
\section1 Hardware Accelerated Rendering
793830

@@ -806,17 +843,18 @@
806843
\o Popups
807844
\endlist
808845

809-
\section1 QtOpenGL Support in Symbian
846+
\section1 OpenGL Support in Symbian
810847

811848
Qt 4.7 introduces the \l {QtOpenGL} module. QtOpenGL is
812849
supported on devices which support OpenGL ES 2.0. Symbian platforms prior
813-
to Symbian^3 are not supported.
850+
to Symbian Anna (and Symbian^3) are not supported.
814851

815852
\l QGLWidget usage as a \l QGraphicsView viewport is not recommended on
816853
Symbian. The OpenVG graphics system is not able to manage OpenGL graphics
817854
resources. Also, a QGLWidget object is not able to release its GPU resources
818855
when the application goes to the background. If OpenGL functionality is
819-
needed, OpenGL graphics system usage is recommended. If an application
856+
needed, \l { http://doc.qt.nokia.com/4.7-snapshot/qapplication.html#setGraphicsSystem}
857+
{OpenGL graphics system} usage is recommended. If an application
820858
decides to use QGLWidget, then it is the application's responsibility to
821859
destroy and release QGLWidget and related OpenGL resources when the
822860
application goes to the background. Otherwise, the \l{Graphics Out Of Memory monitor}
@@ -827,19 +865,26 @@
827865
QGLShader, and \l QGLShaderProgram are direct GPU resources and it is the
828866
application's responsibility to manage them.
829867

830-
\section1 UI Performance in devices prior to Symbian^3
868+
\section1 UI Performance in S60 3rd and 5th Edition Devices
831869

832870
Qt uses the QPainter class to perform low-level painting on widgets and
833871
other paint devices. QPainter provides functions to draw complex shapes,
834872
aligned text and pixmaps. It can also do vector path clipping, coordinate
835873
transformations and Porter-Duff composition. If the underlying graphics
836874
architecture does not support all of these operations then Qt uses the
837875
raster graphics system for rendering.
838-
839-
Most of the Symbian devices prior to Symbian^3 use a non-ScreenPlay
840-
graphics architecture which does not have native support for all functions
841-
provided by QPainter. In non-ScreenPlay devices Qt uses the raster
842-
graphics system by default which has a performance penalty when compared
876+
877+
In Symbian Anna (and Symbian^3) Qt uses hardware accelerated graphics as explained above.
878+
This is enabled by \l
879+
{http://library.developer.nokia.com/index.jsp?topic=/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.html}
880+
{ScreenPlay Graphics Architecture} in these devices.
881+
882+
Most of the Symbian S60 3rd and 5th Edition devices have a
883+
graphics architecture that does not have native support for all functions
884+
provided by QPainter. In these \l
885+
{http://library.developer.nokia.com/index.jsp?topic=/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.html}
886+
{non-ScreenPlay} devices Qt uses the raster
887+
graphics system by default that has a performance penalty compared
843888
to native Symbian rendering.
844889

845890
In order to be able to perform all functions provided by QPainter, the
@@ -850,7 +895,8 @@
850895
offscreen buffer is blitted to the framebuffer via Symbian Window Server.
851896

852897
The following table shows the rendering stacks of native Symbian and Qt in
853-
non-ScreenPlay devices.
898+
\l {http://library.developer.nokia.com/index.jsp?topic=/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.html}
899+
{non-ScreenPlay devices}.
854900

855901
\table
856902
\header \o Symbian

0 commit comments

Comments
 (0)