summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorJason Barron <jbarron@trolltech.com>2009-07-28 10:58:46 (GMT)
committerJason Barron <jbarron@trolltech.com>2009-07-28 11:45:59 (GMT)
commit7eba68adc4a7862d9474179592e5c8393a7acdbb (patch)
tree73014cabc8b10f46203844aeb40de574d97032dc /doc
parenta20f8dcbeafa34b50ef69d1c5db0f17b09731d2a (diff)
parent3bf3981c7026de9017887d08312391b54fe8afc6 (diff)
downloadQt-7eba68adc4a7862d9474179592e5c8393a7acdbb.zip
Qt-7eba68adc4a7862d9474179592e5c8393a7acdbb.tar.gz
Qt-7eba68adc4a7862d9474179592e5c8393a7acdbb.tar.bz2
Merge commit 'qt/master-stable'
Conflicts: configure.exe src/corelib/io/io.pri src/corelib/io/qfilesystemwatcher.cpp tests/auto/qfileinfo/tst_qfileinfo.cpp tools/configure/configureapp.cpp
Diffstat (limited to 'doc')
-rw-r--r--doc/src/compiler-notes.qdoc278
-rw-r--r--doc/src/coordsys.qdoc18
-rw-r--r--doc/src/emb-charinput.qdoc14
-rw-r--r--doc/src/emb-kmap2qmap.qdoc2
-rw-r--r--doc/src/examples/scribble.qdoc2
-rw-r--r--doc/src/examples/transformations.qdoc6
-rw-r--r--doc/src/graphicsview.qdoc10
-rw-r--r--doc/src/ipc.qdoc12
-rw-r--r--doc/src/model-view-programming.qdoc9
-rw-r--r--doc/src/paintsystem.qdoc4
-rw-r--r--doc/src/platform-notes.qdoc344
-rw-r--r--doc/src/porting4-overview.qdoc6
-rw-r--r--doc/src/porting4.qdoc20
-rw-r--r--doc/src/qt4-network.qdoc10
-rw-r--r--doc/src/qtnetwork.qdoc18
-rw-r--r--doc/src/resources.qdoc2
-rw-r--r--doc/src/snippets/code/doc_src_styles.qdoc2
-rw-r--r--doc/src/snippets/stringlistmodel/model.cpp32
-rw-r--r--doc/src/styles.qdoc16
-rw-r--r--doc/src/supported-platforms.qdoc141
-rw-r--r--doc/src/threads.qdoc13
21 files changed, 533 insertions, 426 deletions
diff --git a/doc/src/compiler-notes.qdoc b/doc/src/compiler-notes.qdoc
new file mode 100644
index 0000000..4a7451d
--- /dev/null
+++ b/doc/src/compiler-notes.qdoc
@@ -0,0 +1,278 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://www.qtsoftware.com/contact.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \page compiler-notes.html
+ \ingroup platform-notes
+ \title Compiler Notes
+ \brief Information about the C++ compilers and tools used to build Qt.
+
+ This page contains information about the C++ compilers and tools used
+ to build Qt on various platforms.
+
+ \tableofcontents
+
+ Please refer to the \l{Platform Notes} for information on the platforms
+ Qt is currently known to run on, and see the \l{Supported Platforms}
+ page for information about the status of each platform.
+
+ If you have anything to add to this list or any of the platform or
+ compiler-specific pages, please submit it via the \l{Bug Report Form}
+ or through the \l{Public Qt Repository}.
+
+ \section1 Supported Features
+
+ Not all compilers used to build Qt are able to compile all modules. The following table
+ shows the compiler support for five modules that are not uniformly available for all
+ platforms and compilers.
+
+ \table
+ \header \o Compiler \o{5,1} Features
+ \header \o \o Concurrent \o XmlPatterns \o WebKit \o CLucene \o Phonon
+ \row \o g++ 3.3 \o \o \bold{X} \o \o \bold{X} \o \bold{X}
+ \row \o g++ 3.4 and up \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
+ \row
+ \row \o SunCC 5.5 \o \o \o \o \bold{X} \o \bold{X}
+ \row
+ \row \o aCC series 3 \o \o \o \o \bold{X} \o \bold{X}
+ \row \o aCC series 6 \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
+ \row \o xlC 6 \o \o \o \o \bold{X} \o \bold{X}
+ \row \o Intel CC 10 \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
+ \row
+ \row \o MSVC 2003 \o \bold{X} \o \bold{X} \o \o \bold{X} \o \bold{X}
+ \row \o MSVC 2005 and up \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
+ \endtable
+
+ \target GCC
+ \section1 GCC
+
+ \section2 GCC on Windows (MinGW)
+
+ We have tested Qt with this compiler on Windows XP.
+ The minimal version of MinGW supported is:
+
+ \list
+ \o GCC 3.4.2
+ \o MinGW runtime 3.7
+ \o win32api 3.2
+ \o binutils 2.15.91
+ \o mingw32-make 3.80.0-3
+ \endlist
+
+ \section2 GCC 4.0.0
+
+ The released package of the compiler has some bugs that lead to miscompilations.
+ We recommend using GCC 4.0.1 or later, or to use a recent CVS snapshot of the
+ GCC 4.0 branch. The version of GCC 4.0.0 that is shipped with Mac OS X 10.4
+ "Tiger" is known to work with Qt for Mac OS X.
+
+ \section2 HP-UX
+
+ The hpux-g++ platform is tested with GCC 3.4.4.
+
+ \section2 Solaris
+
+ Please use GCC 3.4.2 or later.
+
+ \section2 Mac OS X
+
+ Please use the latest GCC 3.3 from Apple or a later version of GCC 3.
+ The gcc 3.3 that is provided with Xcode 1.5 is known to generate bad code.
+ Use the November 2004 GCC 3.3 updater \l{http://connect.apple.com}{available from Apple}.
+
+ \section2 GCC 3.4.6 (Debian 3.4.6-5) on AMD64 (x86_64)
+
+ This compiler is known to miscompile some parts of Qt when doing a
+ release build. There are several workarounds:
+
+ \list 1
+ \o Use a debug build instead.
+ \o For each miscompilation encountered, recompile the file, removing the -O2 option.
+ \o Add -fno-gcse to the QMAKE_CXXFLAGS_RELEASE.
+ \endlist
+
+ \section1 HP ANSI C++ (aCC)
+
+ The hpux-acc-32 and hpux-acc-64 platforms are tested with aCC A.03.57. The
+ hpuxi-acc-32 and hpuxi-acc-64 platforms are tested with aCC A.06.10.
+
+ \section1 Intel C++ Compiler
+
+ Qt supports the Intel C++ compiler on both Windows and Linux.
+ However, there are a few issues on Linux (see the following
+ section).
+
+ \section2 Intel C++ Compiler for Linux
+
+ Nokia currently tests the following compilers:
+
+ \list
+
+ \o Intel(R) C++ Compiler for applications running on IA-32,
+ Version 10.1 Build 20080602 Package ID: l_cc_p_10.1.017
+
+ \o Intel(R) C++ Compiler for applications running on Intel(R) 64,
+ Version 10.1 Build 20080602 Package ID: l_cc_p_10.1.017
+
+ \endlist
+
+ We do not currently test the IA-64 (Itanium) compiler.
+
+ \section2 Known Issues with Intel C++ Compiler for Linux
+
+ \list
+
+ \o Precompiled header support does not work in version 10.0.025
+ and older. For these compilers, you should configure Qt with
+ -no-pch. Precompiled header support works properly in version
+ 10.0.026 and later.
+ \o Version 10.0.026 for Intel 64 is known to miscompile qmake when
+ building in release mode. For now, configure Qt with
+ -debug. Version 10.1.008 and later can compile qmake in release
+ mode.
+ \o Versions 10.1.008 to 10.1.015 for both IA-32 and Intel 64 are
+ known crash with "(0): internal error: 0_47021" when compiling
+ QtXmlPatterns, QtWebKit, and Designer in release mode. Version
+ 10.1.017 compiles these modules correctly in release mode.
+ \endlist
+
+ \section2 Intel C++ Compiler (Windows, Altix)
+
+ Qt 4 has been tested successfully with:
+
+ \list
+ \o Windows - Intel(R) C++ Compiler for 32-bit applications,
+ Version 8.1 Build 20050309Z Package ID: W_CC_PC_8.1.026
+ \o Altix - Intel(R) C++ Itanium(R) Compiler for Itanium(R)-based
+ applications Version 8.1 Build 20050406 Package ID: l_cc_pc_8.1.030
+ \endlist
+
+ We currently only test the Intel compiler on 32-bit Windows versions.
+
+ \section1 MIPSpro (IRIX)
+
+ \bold{IRIX is an unsupported platform. See the \l{Supported Platforms} page
+ and Qt's Software's online \l{Platform Support Policy} page for details.}
+
+ Qt 4.4.x requires MIPSpro version 7.4.2m.
+
+ Note that MIPSpro version 7.4.4m is currently not supported, since it has
+ introduced a number of problems that have not yet been resolved.
+ We recommend using 7.4.2m for Qt development. However, please note the
+ unsupported status of this platform.
+
+ \target Sun Studio
+ \section1 Forte Developer / Sun Studio (Solaris)
+
+ \section2 Sun Studio
+
+ Qt is tested using Sun Studio 8 (Sun CC 5.5). Go to
+ \l{Sun Studio Patches} page on Sun's Web site to download
+ the latest patches for your Sun compiler.
+
+ \section2 Sun WorkShop 5.0
+
+ Sun WorkShop 5.0 is not supported with Qt 4.
+
+ \section1 Visual Studio (Windows)
+
+ We do most of our Windows development on Windows XP, using Microsoft
+ Visual Studio .NET 2005 and Visual Studio 2008 (both the 32- and 64-bit
+ versions).
+
+ Qt works with the Standard Edition, the Professional Edition and Team
+ System Edition of Visual Studio 2005.
+
+ We also test Qt 4 on Windows XP with Visual Studio .NET and Visual Studio 2003.
+
+ In order to use Qt with the Visual Studio 2005/2008 Express Edition you need
+ to download and install the platform SDK. Due to limitations in the
+ Express Edition it is not possible for us to install the Qt Visual
+ Studio Integration. You will need to use our command line tools to
+ build Qt applications with this edition.
+
+ The Visual C++ Linker doesn't understand filenames with spaces (as in
+ \c{C:\Program files\Qt\}) so you will have to move it to another place,
+ or explicitly set the path yourself; for example:
+
+ \snippet doc/src/snippets/code/doc_src_compiler-notes.qdoc 0
+
+ If you are experiencing strange problems with using special flags that
+ modify the alignment of structure and union members (such as \c{/Zp2})
+ then you will need to recompile Qt with the flags set for the
+ application as well.
+
+ If you're using Visual Studio .NET (2002) Standard Edition, you should be
+ using the Qt binary package provided, and not the source package.
+ As the Standard Edition does not optimize compiled code, your compiled
+ version of Qt would perform suboptimally with respect to speed.
+
+ With Visual Studio 2005 Service Pack 1 a bug was introduced which
+ causes Qt not to compile, this has been fixed with a hotfix available
+ from Microsoft. See this
+ \l{http://www.qtsoftware.com/developer/faqs/faq.2006-12-18.3281869860}{Knowledge Base entry}
+ for more information.
+
+ \section1 IBM xlC (AIX)
+
+ The makeC++SharedLib utility must be in your PATH and be up to date to
+ build shared libraries. From IBM's
+ \l{http://www.redbooks.ibm.com/abstracts/sg245674.html}{C and C++ Application Development on AIX}
+ Redbook:
+
+ \list
+ \o "The second step is to use the makeC++SharedLib command to create the
+ shared object. The command has many optional arguments, but in its
+ simplest form, can be used as follows:"
+ \snippet doc/src/snippets/code/doc_src_compiler-notes.qdoc 1
+ \o "The full path name to the command is not required; however, to avoid
+ this, you will have to add the directory in which it is located to
+ your PATH environment variable. The command is located in the
+ /usr/vacpp/bin directory with the VisualAge C++ Professional for AIX,
+ Version 5 compiler."
+ \endlist
+
+ \section2 VisualAge C++ for AIX, Version 6.0
+
+ Make sure you have the
+ \l{http://www-1.ibm.com/support/search.wss?rs=32&amp;tc=SSEP5D&amp;dc=D400}{latest upgrades}
+ installed.
+*/
diff --git a/doc/src/coordsys.qdoc b/doc/src/coordsys.qdoc
index 7ba3946..4a73d67 100644
--- a/doc/src/coordsys.qdoc
+++ b/doc/src/coordsys.qdoc
@@ -224,12 +224,12 @@
Transformations} demo for a visualization of a sheared coordinate
system. All the transformation operations operate on QPainter's
transformation matrix that you can retrieve using the
- QPainter::worldMatrix() function. A matrix transforms a point in the
- plane to another point.
+ QPainter::worldTransform() function. A matrix transforms a point
+ in the plane to another point.
If you need the same transformations over and over, you can also
- use QMatrix objects and the QPainter::worldMatrix() and
- QPainter::setWorldMatrix() functions. You can at any time save the
+ use QTransform objects and the QPainter::worldTransform() and
+ QPainter::setWorldTransform() functions. You can at any time save the
QPainter's transformation matrix by calling the QPainter::save()
function which saves the matrix on an internal stack. The
QPainter::restore() function pops it back.
@@ -318,7 +318,7 @@
transformations affects the result.
For more information about the transformation matrix, see the
- QMatrix documentation.
+ QTransform documentation.
\section1 Window-Viewport Conversion
@@ -328,7 +328,7 @@
The mapping of the logical coordinates to the physical coordinates
are handled by QPainter's world transformation \l
- {QPainter::worldMatrix()}{worldMatrix()} (described in the \l
+ {QPainter::worldTransform()}{worldTransform()} (described in the \l
Transformations section), and QPainter's \l
{QPainter::viewport()}{viewport()} and \l
{QPainter::window()}{window()}. The viewport represents the
@@ -419,14 +419,14 @@
\endtable
The 2D transformations of the coordinate system are specified
- using the QMatrix class:
+ using the QTransform class:
\table
\header \o Class \o Description
\row
- \o QMatrix
+ \o QTransform
\o
- A 3 x 3 transformation matrix. Use QMatrix to rotate, shear,
+ A 3 x 3 transformation matrix. Use QTransform to rotate, shear,
scale, or translate the coordinate system.
\endtable
diff --git a/doc/src/emb-charinput.qdoc b/doc/src/emb-charinput.qdoc
index 565d953..dc4eed5 100644
--- a/doc/src/emb-charinput.qdoc
+++ b/doc/src/emb-charinput.qdoc
@@ -108,7 +108,7 @@
\section1 Keymaps
Starting with 4.6, \l {Qt for Embedded Linux} has gained support for
- user defined keymaps. Keymap handling is supported by the builtin
+ user defined keymaps. Keymap handling is supported by the built-in
keyboard drivers \c TTY and \c LinuxInput. Custom keyboard drivers can
use the existing keymap handling code via
QWSKeyboardHandler::processKeycode().
@@ -124,7 +124,7 @@
\snippet doc/src/snippets/code/doc_src_emb-charinput.qdoc 2
- The \c <driver> argument are \c TTY, \c LinuxInput and \l
+ The \c <driver> arguments are \c TTY, \c LinuxInput and \l
{QKbdDriverPlugin::keys()}{keys} identifying custom drivers, and the
driver specific options are typically a device, e.g., \c /dev/tty0.
@@ -142,17 +142,17 @@
\row \o \c /dev/xxx \o
Open the specified device, instead of the driver's default device.
\row \o \c repeat-delay=<d> \o
- Time in milliseconds until auto-repeat kicks in.
+ Time (in milliseconds) until auto-repeat kicks in.
\row \o \c repeat-rate=<r> \o
- Time in milliseconds specifying interval between auto-repeats.
+ Time (in milliseconds) specifying the interval between auto-repeats.
\row \o \c keymap=xx.qmap \o
File name of a keymap file in Qt's \c qmap format. See \l {kmap2qmap}
- for instructions on how to create thoes files.\br Please note that the
- file name can of course also be the name of a QResource.
+ for instructions on how to create thoes files.\br Note that the file
+ name can of course also be the name of a QResource.
\row \o \c disable-zap \o
Disable the QWS server "Zap" shortcut \bold{Ctrl+Alt+Backspace}
\row \o \c enable-compose \o
- Activate Latin-1 composing features in the builtin US keymap. You can
+ Activate Latin-1 composing features in the built-in US keymap. You can
use the right \c AltGr or right \c Alt is used as a dead key modifier,
while \c AltGr+. is the compose key. For example:
\list
diff --git a/doc/src/emb-kmap2qmap.qdoc b/doc/src/emb-kmap2qmap.qdoc
index 2b3f687..19d33c1 100644
--- a/doc/src/emb-kmap2qmap.qdoc
+++ b/doc/src/emb-kmap2qmap.qdoc
@@ -66,7 +66,7 @@
kmap2qmap i386/qwertz/de-latin1-nodeadkeys.kmap include/compose.latin1.inc de-latin1-nodeadkeys.qmap
\endcode
- \c kmap2qmap doesn't support all the (pseudo) symbols that the Linux
+ \c kmap2qmap does not support all the (pseudo) symbols that the Linux
kernel supports. If you are converting a standard keymap you will get a
lot of warnings for things like \c Show_Registers, \c Hex_A, etc.: you
can safely ignore those.
diff --git a/doc/src/examples/scribble.qdoc b/doc/src/examples/scribble.qdoc
index 3a5e018..f32440a 100644
--- a/doc/src/examples/scribble.qdoc
+++ b/doc/src/examples/scribble.qdoc
@@ -354,7 +354,7 @@
To retrieve a new pen width in the \c penWidth() slot, we use
QInputDialog. The QInputDialog class provides a simple
convenience dialog to get a single value from the user. We use
- the static QInputDialog::getInteger() function, which combines a
+ the static QInputDialog::getInt() function, which combines a
QLabel and a QSpinBox. The QSpinBox is initialized with the
scribble area's pen width, allows a range from 1 to 50, a step of
1 (meaning that the up and down arrow increment or decrement the
diff --git a/doc/src/examples/transformations.qdoc b/doc/src/examples/transformations.qdoc
index a449d4c..a5f92a8 100644
--- a/doc/src/examples/transformations.qdoc
+++ b/doc/src/examples/transformations.qdoc
@@ -85,10 +85,10 @@
All the tranformation operations operate on QPainter's
tranformation matrix that you can retrieve using the
- QPainter::matrix() function. A matrix transforms a point in the
+ QPainter::worldTransform() function. A matrix transforms a point in the
plane to another point. For more information about the
transformation matrix, see the \l {The Coordinate System} and
- QMatrix documentation.
+ QTransform documentation.
\snippet examples/painting/transformations/renderarea.h 0
@@ -375,7 +375,7 @@
All the tranformation operations operate on QPainter's
tranformation matrix. For more information about the
transformation matrix, see the \l {The Coordinate System} and
- QMatrix documentation.
+ QTransform documentation.
The Qt reference documentation provides several painting
demos. Among these is the \l {demos/affine}{Affine
diff --git a/doc/src/graphicsview.qdoc b/doc/src/graphicsview.qdoc
index f42c0d4..89f9f3d 100644
--- a/doc/src/graphicsview.qdoc
+++ b/doc/src/graphicsview.qdoc
@@ -141,7 +141,7 @@
to scene coordinates where appropriate), before sending the events
to the visualized scene.
- Using its transformation matrix, QGraphicsView::matrix(), the view can
+ Using its transformation matrix, QGraphicsView::transform(), the view can
\e transform the scene's coordinate system. This allows advanced
navigation features such as zooming and rotation. For convenience,
QGraphicsView also provides functions for translating between view and
@@ -174,7 +174,7 @@
also provides many functions for mapping coordinates between the item
and the scene, and from item to item. Also, like QGraphicsView, it can
transform its coordinate system using a matrix:
- QGraphicsItem::matrix(). This is useful for rotating and scaling
+ QGraphicsItem::transform(). This is useful for rotating and scaling
individual items.
Items can contain other items (children). Parent items'
@@ -461,11 +461,7 @@
By making an item a child of another, you can achieve the most
essential feature of item grouping: the items will move together, and
- all transformations are propagated from parent to child. QGraphicsItem
- can also handle all events for its children (see
- QGraphicsItem::setHandlesChildEvents()). This allows the parent item
- to act on behalf of its children, effectively treating all items as
- one.
+ all transformations are propagated from parent to child.
In addition, QGraphicsItemGroup is a special item that combines child
event handling with a useful interface for adding and removing items
diff --git a/doc/src/ipc.qdoc b/doc/src/ipc.qdoc
index 1349fde..1f9d36d 100644
--- a/doc/src/ipc.qdoc
+++ b/doc/src/ipc.qdoc
@@ -61,12 +61,12 @@
\section1 TCP/IP
- The cross-platform \l{QtNetwork} module
- provides classes that make network programming portable and
- easy. It offers high-level classes (e.g., QHttp, QFtp) that
- communicate using specific application-level protocols, and
- lower-level classes (e.g., QTcpSocket, QTcpServer, QSslSocket) for
- implementing protocols.
+ The cross-platform \l{QtNetwork} module provides classes that make
+ network programming portable and easy. It offers high-level
+ classes (e.g., QNetworkAccessManager, QFtp) that communicate using
+ specific application-level protocols, and lower-level classes
+ (e.g., QTcpSocket, QTcpServer, QSslSocket) for implementing
+ protocols.
\section1 Shared Memory
diff --git a/doc/src/model-view-programming.qdoc b/doc/src/model-view-programming.qdoc
index e216591..7d7db19 100644
--- a/doc/src/model-view-programming.qdoc
+++ b/doc/src/model-view-programming.qdoc
@@ -1352,7 +1352,7 @@
The \l{QAbstractItemModel::data()}{data()} function is responsible for
returning the item of data that corresponds to the index argument:
- \snippet doc/src/snippets/stringlistmodel/model.cpp 1
+ \snippet doc/src/snippets/stringlistmodel/model.cpp 1-data-read-only
We only return a valid QVariant if the model index supplied is valid,
the row number is within the range of items in the string list, and the
@@ -1390,6 +1390,7 @@
The read-only model shows how simple choices could be presented to the
user but, for many applications, an editable list model is much more
useful. We can modify the read-only model to make the items editable
+ by changing the data() function we implemented for read-only, and
by implementing two extra functions:
\l{QAbstractItemModel::flags()}{flags()} and
\l{QAbstractItemModel::setData()}{setData()}.
@@ -1399,7 +1400,7 @@
\snippet doc/src/snippets/stringlistmodel/model.h 3
\section2 Making the Model Editable
-
+
A delegate checks whether an item is editable before creating an
editor. The model must let the delegate know that its items are
editable. We do this by returning the correct flags for each item in
@@ -1434,6 +1435,10 @@
one item of data has changed, the range of items specified in the signal
is limited to just one model index.
+ Also the data() function needs to be changed to add the Qt::EditRole test:
+
+ \snippet doc/src/snippets/stringlistmodel/model.cpp 1
+
\section2 Inserting and Removing Rows
It is possible to change the number of rows and columns in a model. In the
diff --git a/doc/src/paintsystem.qdoc b/doc/src/paintsystem.qdoc
index 56f60a3..a75908b 100644
--- a/doc/src/paintsystem.qdoc
+++ b/doc/src/paintsystem.qdoc
@@ -292,9 +292,7 @@
looking the same.
Qt provides the QPicture::load() and QPicture::save() functions
- for loading and saving pictures. But in addition the QPictureIO
- class is provided to enable the programmer to install new picture
- file formats in addition to those that Qt provides.
+ as well as streaming operators for loading and saving pictures.
\section2 Printer
diff --git a/doc/src/platform-notes.qdoc b/doc/src/platform-notes.qdoc
index de1fb74..8aa645c 100644
--- a/doc/src/platform-notes.qdoc
+++ b/doc/src/platform-notes.qdoc
@@ -67,7 +67,8 @@
supported by Qt can be found on the \l{Supported Platforms} page.
If you have anything to add to this list or any of the platform or
- compiler-specific pages, please submit it via the \l{Bug Report Form}.
+ compiler-specific pages, please submit it via the \l{Bug Report Form}
+ or through the \l{Public Qt Repository}.
*/
/*!
@@ -373,132 +374,6 @@
improve support for this feature.
*/
-/*!
- \page supported-platforms.html
- \title Supported Platforms
- \brief The platforms supported by Nokia for Qt.
- \ingroup platform-notes
-
- Qt is supported on a variety of 32-bit and 64-bit platforms, and can
- usually be built on each platform with GCC, a vendor-supplied compiler, or
- a third party compiler. Although Qt may be built on a range of platform-compiler
- combinations, only a subset of these are actively supported by Qt.
-
- A more general overview of the platforms Qt runs on can be found on the
- \l{Platform Notes} page. Information about the compilers used on each platform
- can be found on the \l{Compiler Notes} page.
-
- \tableofcontents
-
- \section1 Most Common Actively Supported Platforms
-
- \table
- \header \o Platform \o Compilers
- \row \o Apple Mac OS X (32-bit) \o gcc 4.0.1
- \row \o Linux (32 and 64-bit) \o gcc 4.1, 4.2, 4.3
- \row \o Microsoft Windows \o gcc 3.4.2 (MinGW) (32-bit), MSVC 2003, 2005 (32 and 64-bit), 2008,
- \l{Intel C++ Compiler}{Intel icc (see note)}
- \endtable
-
- Any platform-compiler combinations not listed here should be considered unsupported.
-
- \section1 Actively Supported Platforms
-
- \table
- \header \o OS \o Architecture \o Makespec \o Compiler version(s)
- \row \o AIX \o PowerPC \o aix-xlc \o xlC 6
- \row \o AIX \o PowerPC \o aix-xlc-64 \o xlC 6
- \row \o HPUX \o PA/RISC \o hpux-acc* \o A.03.57 (aCC 3.57)
- \row \o HPUX \o PA/RISC \o hpux-g++ \o GCC 3.4.4
- \row \o HPUX \o PA/RISC \o hpux-g++-64 \o GCC 3.4.4
- \row \o HPUX \o Itanium \o hpuxi-acc* \o A.06.10 (aCC 6.10)
- \row \o Embedded Linux \o ARM \o qws/linux-arm-g++ \o GCC 3.4, 4.1, 4.2, 4.3
- \row \o Embedded Linux \o Intel 32-bit \o qws/linux-x86-g++ \o GCC 3.4, 4.1, 4.2, 4.3
- \row \o Linux \o Intel 32/64-bit \o linux-g++ \o GCC 4.1, 4.2, 4.3
- \row \o Linux \o Intel 32/64-bit \o linux-icc \o icc 10.1
- \row \o Linux \o Intel 32-bit \o linux-icc-32 \o icc 10.1
- \row \o Linux \o Intel 64-bit \o linux-icc-64 \o icc 10.1
- \row \o Mac OS X \o Intel 32/64-bit, PowerPC \o macx-g++ \o GCC 4.0.1
- \row \o Mac OS X \o Intel 32/64-bit, PowerPC \o macx-g++42 \o GCC 4.2
- \row \o Solaris \o SPARC, Intel 32-bit \o solaris-cc* \o Sun CC 5.5
- \row \o Solaris \o SPARC, Intel 32-bit \o solaris-g++* \o GCC 3.4.2
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-g++ \o GCC 3.4.2 (MinGW 5.1.4)
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-icc \o icc 9.1
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-msvc2003 \o Visual Studio 2003
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-msvc2005 \o Visual Studio 2005
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-msvc2008 \o Visual Studio 2008
- \row \o Windows CE \o Intel 32-bit, ARMv4i, MIPS
- \o wince*-msvc2005 \o Visual Studio 2005
- \row \o Windows CE \o Intel 32-bit, ARMv4i, MIPS
- \o wince*-msvc2008 \o Visual Studio 2008
- \endtable
-
- \section1 Community Supported Platforms
-
- \table
- \header \o OS \o Architecture \o Makespec \o Compiler version(s)
- \row \o Mac OS X \o Intel 32-bit, PowerPC \o darwin-g++ \o -
- \row \o FreeBSD \o - \o freebsd-g++ \o -
- \row \o FreeBSD \o - \o freebsd-g++34 \o -
- \row \o FreeBSD \o - \o freebsd-g++40 \o -
- \row \o FreeBSD \o - \o freebsd-icc \o -
- \row \o HPUX \o Itanium \o hpuxi-g++* \o GCC 4.1
- \row \o Linux \o - \o linux-cxx \o -
- \row \o Linux \o - \o linux-ecc-64 \o -
- \row \o Linux \o Itanium \o linux-g++ \o GCC 3.4
- \row \o Linux \o Intel 32/64-bit \o linux-g++ \o GCC 3.3, 3.4
- \row \o Linux \o Intel 32/64-bit \o linux-g++ \o GCC 4.0
- \row \o Linux \o - \o linux-kcc \o -
- \row \o Linux \o - \o linux-llvm \o -
- \row \o Linux \o - \o linux-lsb-g++ \o -
- \row \o LynxOS \o - \o lynxos-g++ \o -
- \row \o Mac OS X \o - \o macx-llvm \o -
- \row \o NetBSD \o - \o netbsd-g++ \o -
- \row \o OpenBSD \o - \o openbsd-g++ \o -
- \row \o Embedded Linux \o MIPS, PowerPC \o qws/linux-g++ \o GCC 3.4, 4.1, 4.2, 4.3
- \endtable
-
- \section1 Unsupported Platforms
-
- The following platforms were supported in previous releases, either as actively supported
- or community supported platforms, but are now unsupported.
-
- \table
- \header \o OS \o Architecture \o Makespec \o Compiler version(s)
- \row \o IRIX \o MIPS \o irix-cc* \o MIPS Pro
- \row \o IRIX \o MIPS \o irix-g++* \o GCC 3.3
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-msvc \o Visual C++ 6.0
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-msvc2002 \o Visual Studio 2002
- \row \o Windows XP/Vista \o Intel 32/64-bit \o win32-msvc.net \o Visual Studio 2002
- \endtable
-
- Qt's online \l{Platform Support Policy} for Qt describes the level of
- support you should expect for these platforms.
-
- \section1 Supported Features
-
- Not all compilers used to build Qt are able to compile all modules. The following table
- shows the compiler support for five modules that are not uniformly available for all
- platforms and compilers.
-
- \table
- \header \o Compiler \o{5,1} Features
- \header \o \o Concurrent \o XmlPatterns \o WebKit \o CLucene \o Phonon
- \row \o g++ 3.3 \o \o \bold{X} \o \o \bold{X} \o \bold{X}
- \row \o g++ 3.4 and up \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
- \row
- \row \o SunCC 5.5 \o \o \o \o \bold{X} \o \bold{X}
- \row
- \row \o aCC series 3 \o \o \o \o \bold{X} \o \bold{X}
- \row \o aCC series 6 \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
- \row \o xlC 6 \o \o \o \o \bold{X} \o \bold{X}
- \row \o \l{Known Issues in %VERSION%}{Intel CC 10 (see note)}
- \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
- \row
- \row \o MSVC 2003 \o \bold{X} \o \bold{X} \o \o \bold{X} \o \bold{X}
- \row \o MSVC 2005 and up \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X}
- \endtable
-*/
/*!
\page platform-notes-windows-ce.html
@@ -534,218 +409,3 @@
information about the combinations of platforms and compilers supported
by Qt can be found on the \l{Supported Platforms} page.
*/
-
-/*!
- \page compiler-notes.html
- \ingroup platform-notes
- \title Compiler Notes
- \brief Information about the C++ compilers and tools used to build Qt.
-
- This page contains information about the C++ compilers and tools used
- to build Qt on various platforms.
-
- \tableofcontents
-
- Please refer to the \l{Platform Notes} for information on the platforms
- Qt is currently known to run on, and see the \l{Supported Platforms}
- page for information about the status of each platform.
-
- If you have anything to add to this list or any of the platform or
- compiler-specific pages, please submit it via the
- \l{Bug Report Form}.
-
- \target GCC
- \section1 GCC
-
- \section2 GCC on Windows (MinGW)
-
- We have tested Qt with this compiler on Windows XP.
- The minimal version of MinGW supported is:
-
- \list
- \o GCC 3.4.2
- \o MinGW runtime 3.7
- \o win32api 3.2
- \o binutils 2.15.91
- \o mingw32-make 3.80.0-3
- \endlist
-
- \section2 GCC 4.0.0
-
- The released package of the compiler has some bugs that lead to miscompilations.
- We recommend using GCC 4.0.1 or later, or to use a recent CVS snapshot of the
- GCC 4.0 branch. The version of GCC 4.0.0 that is shipped with Mac OS X 10.4
- "Tiger" is known to work with Qt for Mac OS X.
-
- \section2 HP-UX
-
- The hpux-g++ platform is tested with GCC 3.4.4.
-
- \section2 Solaris
-
- Please use GCC 3.4.2 or later.
-
- \section2 Mac OS X
-
- Please use the latest GCC 3.3 from Apple or a later version of GCC 3.
- The gcc 3.3 that is provided with Xcode 1.5 is known to generate bad code.
- Use the November 2004 GCC 3.3 updater \l{http://connect.apple.com}{available from Apple}.
-
- \section2 GCC 3.4.6 (Debian 3.4.6-5) on AMD64 (x86_64)
-
- This compiler is known to miscompile some parts of Qt when doing a
- release build. There are several workarounds:
-
- \list 1
- \o Use a debug build instead.
- \o For each miscompilation encountered, recompile the file, removing the -O2 option.
- \o Add -fno-gcse to the QMAKE_CXXFLAGS_RELEASE.
- \endlist
-
- \section1 HP ANSI C++ (aCC)
-
- The hpux-acc-32 and hpux-acc-64 platforms are tested with aCC A.03.57. The
- hpuxi-acc-32 and hpuxi-acc-64 platforms are tested with aCC A.06.10.
-
- \section1 Intel C++ Compiler
-
- Qt supports the Intel C++ compiler on both Windows and Linux.
- However, there are a few issues on Linux (see the following
- section).
-
- \section2 Intel C++ Compiler for Linux
-
- Nokia currently tests the following compilers:
-
- \list
-
- \o Intel(R) C++ Compiler for applications running on IA-32,
- Version 10.1 Build 20080602 Package ID: l_cc_p_10.1.017
-
- \o Intel(R) C++ Compiler for applications running on Intel(R) 64,
- Version 10.1 Build 20080602 Package ID: l_cc_p_10.1.017
-
- \endlist
-
- We do not currently test the IA-64 (Itanium) compiler.
-
- \section2 Known Issues with Intel C++ Compiler for Linux
-
- \list
-
- \o Precompiled header support does not work in version 10.0.025
- and older. For these compilers, you should configure Qt with
- -no-pch. Precompiled header support works properly in version
- 10.0.026 and later.
- \o Version 10.0.026 for Intel 64 is known to miscompile qmake when
- building in release mode. For now, configure Qt with
- -debug. Version 10.1.008 and later can compile qmake in release
- mode.
- \o Versions 10.1.008 to 10.1.015 for both IA-32 and Intel 64 are
- known crash with "(0): internal error: 0_47021" when compiling
- QtXmlPatterns, QtWebKit, and Designer in release mode. Version
- 10.1.017 compiles these modules correctly in release mode.
- \endlist
-
- \section2 Intel C++ Compiler (Windows, Altix)
-
- Qt 4 has been tested successfully with:
-
- \list
- \o Windows - Intel(R) C++ Compiler for 32-bit applications,
- Version 8.1 Build 20050309Z Package ID: W_CC_PC_8.1.026
- \o Altix - Intel(R) C++ Itanium(R) Compiler for Itanium(R)-based
- applications Version 8.1 Build 20050406 Package ID: l_cc_pc_8.1.030
- \endlist
-
- We currently only test the Intel compiler on 32-bit Windows versions.
-
- \section1 MIPSpro (IRIX)
-
- \bold{IRIX is an unsupported platform. See the \l{Supported Platforms} page
- and Qt's Software's online \l{Platform Support Policy} page for details.}
-
- Qt 4.4.x requires MIPSpro version 7.4.2m.
-
- Note that MIPSpro version 7.4.4m is currently not supported, since it has
- introduced a number of problems that have not yet been resolved.
- We recommend using 7.4.2m for Qt development. However, please note the
- unsupported status of this platform.
-
- \target Sun Studio
- \section1 Forte Developer / Sun Studio (Solaris)
-
- \section2 Sun Studio
-
- Qt is tested using Sun Studio 8 (Sun CC 5.5). Go to
- \l{Sun Studio Patches} page on Sun's Web site to download
- the latest patches for your Sun compiler.
-
- \section2 Sun WorkShop 5.0
-
- Sun WorkShop 5.0 is not supported with Qt 4.
-
- \section1 Visual Studio (Windows)
-
- We do most of our Windows development on Windows XP, using Microsoft
- Visual Studio .NET 2005 and Visual Studio 2008 (both the 32- and 64-bit
- versions).
-
- Qt works with the Standard Edition, the Professional Edition and Team
- System Edition of Visual Studio 2005.
-
- We also test Qt 4 on Windows XP with Visual Studio .NET and Visual Studio 2003.
-
- In order to use Qt with the Visual Studio 2005/2008 Express Edition you need
- to download and install the platform SDK. Due to limitations in the
- Express Edition it is not possible for us to install the Qt Visual
- Studio Integration. You will need to use our command line tools to
- build Qt applications with this edition.
-
- The Visual C++ Linker doesn't understand filenames with spaces (as in
- \c{C:\Program files\Qt\}) so you will have to move it to another place,
- or explicitly set the path yourself; for example:
-
- \snippet doc/src/snippets/code/doc_src_compiler-notes.qdoc 0
-
- If you are experiencing strange problems with using special flags that
- modify the alignment of structure and union members (such as \c{/Zp2})
- then you will need to recompile Qt with the flags set for the
- application as well.
-
- If you're using Visual Studio .NET (2002) Standard Edition, you should be
- using the Qt binary package provided, and not the source package.
- As the Standard Edition does not optimize compiled code, your compiled
- version of Qt would perform suboptimally with respect to speed.
-
- With Visual Studio 2005 Service Pack 1 a bug was introduced which
- causes Qt not to compile, this has been fixed with a hotfix available
- from Microsoft. See this
- \l{http://www.qtsoftware.com/developer/faqs/faq.2006-12-18.3281869860}{Knowledge Base entry}
- for more information.
-
- \section1 IBM xlC (AIX)
-
- The makeC++SharedLib utility must be in your PATH and be up to date to
- build shared libraries. From IBM's
- \l{http://www.redbooks.ibm.com/abstracts/sg245674.html}{C and C++ Application Development on AIX}
- Redbook:
-
- \list
- \o "The second step is to use the makeC++SharedLib command to create the
- shared object. The command has many optional arguments, but in its
- simplest form, can be used as follows:"
- \snippet doc/src/snippets/code/doc_src_compiler-notes.qdoc 1
- \o "The full path name to the command is not required; however, to avoid
- this, you will have to add the directory in which it is located to
- your PATH environment variable. The command is located in the
- /usr/vacpp/bin directory with the VisualAge C++ Professional for AIX,
- Version 5 compiler."
- \endlist
-
- \section2 VisualAge C++ for AIX, Version 6.0
-
- Make sure you have the
- \l{http://www-1.ibm.com/support/search.wss?rs=32&amp;tc=SSEP5D&amp;dc=D400}{latest upgrades}
- installed.
-*/
diff --git a/doc/src/porting4-overview.qdoc b/doc/src/porting4-overview.qdoc
index 3494c6d..3c3c085 100644
--- a/doc/src/porting4-overview.qdoc
+++ b/doc/src/porting4-overview.qdoc
@@ -195,9 +195,9 @@
QNetworkRequest, QNetworkReply, and QNetworkAccessManager documentation
for further details.
- It is also possible to perform operations on remote files
- through the QHttp and QFtp classes, and on local files with
- the QFile class.
+ It is also possible to perform operations on remote files through
+ the QNetworkAccessManager and QFtp classes, and on local files
+ with the QFile class.
\section2 SQL Cursors (QSqlCursor)
diff --git a/doc/src/porting4.qdoc b/doc/src/porting4.qdoc
index 2414c4d..963b918 100644
--- a/doc/src/porting4.qdoc
+++ b/doc/src/porting4.qdoc
@@ -1977,7 +1977,7 @@
\table
\header \o Qt 3 function \o Qt 4 equivalents
- \row \o QImageIO::description() \o QImageWriter::description()
+ \row \o QImageIO::description() \o QImageWriter::text()
\row \o QImageIO::fileName() \o QImageReader::fileName() and QImageWriter::fileName()
\row \o QImageIO::format() \o QImageReader::format() and QImageWriter::format()
\row \o QImageIO::gamma() \o QImageWriter::gamma()
@@ -1988,7 +1988,7 @@
\row \o QImageIO::parameters() \o N/A
\row \o QImageIO::quality() \o QImageWriter::quality()
\row \o QImageIO::read() \o QImageReader::read()
- \row \o QImageIO::setDescription() \o QImageWriter::setDescription()
+ \row \o QImageIO::setDescription() \o QImageWriter::setText()
\row \o QImageIO::setFileName() \o QImageReader::setFileName() and QImageWriter::setFileName()
\row \o QImageIO::setFormat() \o QImageReader::setFormat() and QImageWriter::setFormat()
\row \o QImageIO::setGamma() \o QImageWriter::setGamma()
@@ -2350,8 +2350,9 @@
Q3NetworkProtocolFactory<T>, and Q3NetworkOperation and have been
moved to the Qt3Support library.
- In Qt 4 applications, you can use classes like QFtp and QHttp
- directly to perform file-related actions on a remote host.
+ In Qt 4 applications, you can use classes like QFtp and
+ QNetworkAccessManager directly to perform file-related actions on
+ a remote host.
\section1 QObject
@@ -3241,12 +3242,11 @@
moved to the Qt3Support library. In Qt 4, there is no
direct equivalent to Q3SocketDevice:
- \list
- \o If you use Q3SocketDevice in a thread to perform blocking network
- I/O (a technique encouraged by the \e{Qt Quarterly} article
- \l{http://doc.trolltech.com/qq/qq09-networkthread.html}{Unblocking Networking}),
- you can now use QTcpSocket, QFtp, or QHttp instead, which can now be used from
- non-GUI threads.
+ \list \o If you use Q3SocketDevice in a thread to perform blocking
+ network I/O (a technique encouraged by the \e{Qt Quarterly}
+ article \l{http://doc.trolltech.com/qq/qq09-networkthread.html}
+ {Unblocking Networking}), you can now use QTcpSocket, QFtp, or
+ QNetworkAccessManager, which can be used from non-GUI threads.
\o If you use Q3SocketDevice for UDP, you can now use QUdpSocket instead.
diff --git a/doc/src/qt4-network.qdoc b/doc/src/qt4-network.qdoc
index 3b3091e..5e1999e 100644
--- a/doc/src/qt4-network.qdoc
+++ b/doc/src/qt4-network.qdoc
@@ -109,9 +109,10 @@
of programming, with the networking logic concentrated in one or
two functions instead of spread across multiple slots.
- QFtp and QHttp use QTcpSocket internally to implement the FTP and
- HTTP protocols. Both classes work asynchronously and can schedule
- (i.e., queue) requests.
+ QFtp and QNetworkAccessManager and its associated classes use
+ QTcpSocket internally to implement the FTP and HTTP protocols. The
+ classes work asynchronously and can schedule (i.e., queue)
+ requests.
The network module contains four helper classes: QHostAddress,
QHostInfo, QUrl, and QUrlInfo. QHostAddress stores an IPv4 or IPv6
@@ -198,8 +199,7 @@
level QNetworkProtocol and QUrlOperator abstraction has been
eliminated. These classes attempted the impossible (unify FTP and
HTTP under one roof), and unsurprisingly failed at that. Qt 4
- still provides QFtp and QHttp classes, but only with the more
- mature API that appeared in Qt 3.1.
+ still provides QFtp, and it also proveds the QNetworkAccessManager.
The QSocket class in Qt 3 has been renamed QTcpSocket. The new
class is reentrant and supports blocking. It's also easier to
diff --git a/doc/src/qtnetwork.qdoc b/doc/src/qtnetwork.qdoc
index 0443f0f..3802273 100644
--- a/doc/src/qtnetwork.qdoc
+++ b/doc/src/qtnetwork.qdoc
@@ -145,11 +145,11 @@
\l{QFtp::commandFinished()}{commandFinished()} signal with the
command ID for each command that is executed.
- \o \e{Data transfer progress indicators.} QFtp emits
- signals whenever data is transferred
- (QFtp::dataTransferProgress(), QHttp::dataReadProgress(), and
- QHttp::dataSendProgress()). You could connect these signals to
- QProgressBar::setProgress() or QProgressDialog::setProgress(),
+ \o \e{Data transfer progress indicators.} QFtp emits signals
+ whenever data is transferred (QFtp::dataTransferProgress(),
+ QNetworkReply::downloadProgress(), and
+ QNetworkReply::uploadProgress()). You could connect these signals
+ to QProgressBar::setProgress() or QProgressDialog::setProgress(),
for example.
\o \e{QIODevice support.} The class supports convenient
@@ -196,10 +196,10 @@
will then stop immediately.
QTcpSocket works asynchronously and emits signals to report status
- changes and errors, just like QHttp and QFtp. It relies on the
- event loop to detect incoming data and to automatically flush
- outgoing data. You can write data to the socket using
- QTcpSocket::write(), and read data using
+ changes and errors, just like QNetworkAccessManager and QFtp. It
+ relies on the event loop to detect incoming data and to
+ automatically flush outgoing data. You can write data to the
+ socket using QTcpSocket::write(), and read data using
QTcpSocket::read(). QTcpSocket represents two independent streams
of data: one for reading and one for writing.
diff --git a/doc/src/resources.qdoc b/doc/src/resources.qdoc
index e4d4c35..6f3f939 100644
--- a/doc/src/resources.qdoc
+++ b/doc/src/resources.qdoc
@@ -175,7 +175,7 @@
Qt's resources support the concept of a search path list. If you then
refer to a resource with \c : instead of \c :/ as the prefix, the
resource will be looked up using the search path list. The search
- path list is empty at startup; call QDir::addResourceSearchPath() to
+ path list is empty at startup; call QDir::addSearchPath() to
add paths to it.
If you have resources in a static library, you might need to
diff --git a/doc/src/snippets/code/doc_src_styles.qdoc b/doc/src/snippets/code/doc_src_styles.qdoc
index e11dc05..9d5756a 100644
--- a/doc/src/snippets/code/doc_src_styles.qdoc
+++ b/doc/src/snippets/code/doc_src_styles.qdoc
@@ -1,5 +1,5 @@
//! [0]
- opt.init(q);
+ opt.initFrom(q);
if (down)
opt.state |= QStyle::State_Sunken;
if (tristate && noChange)
diff --git a/doc/src/snippets/stringlistmodel/model.cpp b/doc/src/snippets/stringlistmodel/model.cpp
index 76329dd..49e0fc7 100644
--- a/doc/src/snippets/stringlistmodel/model.cpp
+++ b/doc/src/snippets/stringlistmodel/model.cpp
@@ -59,6 +59,11 @@ int StringListModel::rowCount(const QModelIndex &parent) const
}
//! [0]
+
+#ifdef 0
+// This represents a read-only version of data(), an early stage in the
+// development of the example leading to an editable StringListModel.
+
/*!
Returns an appropriate value for the requested data.
If the view requests an invalid index, an invalid variant is returned.
@@ -66,7 +71,7 @@ int StringListModel::rowCount(const QModelIndex &parent) const
string to be returned.
*/
-//! [1]
+//! [1-data-read-only]
QVariant StringListModel::data(const QModelIndex &index, int role) const
{
if (!index.isValid())
@@ -80,6 +85,31 @@ QVariant StringListModel::data(const QModelIndex &index, int role) const
else
return QVariant();
}
+//! [1-data-read-only]
+#endif
+
+
+/*!
+ Returns an appropriate value for the requested data.
+ If the view requests an invalid index, an invalid variant is returned.
+ Any valid index that corresponds to a string in the list causes that
+ string to be returned.
+*/
+
+//! [1]
+QVariant StringListModel::data(const QModelIndex &index, int role) const
+{
+ if (!index.isValid())
+ return QVariant();
+
+ if (index.row() >= stringList.size())
+ return QVariant();
+
+ if (role == Qt::DisplayRole || role == Qt::EditRole)
+ return stringList.at(index.row());
+ else
+ return QVariant();
+}
//! [1]
/*!
diff --git a/doc/src/styles.qdoc b/doc/src/styles.qdoc
index b818c4a..752fef0 100644
--- a/doc/src/styles.qdoc
+++ b/doc/src/styles.qdoc
@@ -246,7 +246,7 @@
defined by the \l{QStyle::}{State} enum. Some of the state flags have
different meanings depending on the widget, but others are common
for all widgets like State_Disabled. It is QStyleOption that sets
- the common states with QStyleOption::init(); the rest of the
+ the common states with QStyleOption::initFrom(); the rest of the
states are set by the individual widgets.
Most notably, the style options contain the palette and bounding
@@ -502,7 +502,7 @@
\snippet doc/src/snippets/code/doc_src_styles.qdoc 0
First we let QStyleOption set up the option with the information
- that is common for all widgets with \c init(). We will look at
+ that is common for all widgets with \c initFrom(). We will look at
this shortly.
The down boolean is true when the user press the box down; this is
@@ -514,7 +514,7 @@
set - you set this in QStyle::polish(). In addition, the style
option also contains the text, icon, and icon size of the button.
- \l{QStyleOption::}{init()} sets up the style option with the
+ \l{QStyleOption::}{initFrom()} sets up the style option with the
attributes that are common for all widgets. We print its
implementation here:
@@ -726,9 +726,9 @@
\section2 Common Widget Properties
Some states and variables are common for all widgets. These are
- set with QStyleOption::init(). Not all elements use this function;
+ set with QStyleOption::initFrom(). Not all elements use this function;
it is the widgets that create the style options, and for some
- elements the information from \l{QStyleOption::}{init()} is not
+ elements the information from \l{QStyleOption::}{initFrom()} is not
necessary.
A table with the common states follows:
@@ -1451,7 +1451,7 @@
\o Set if it is a horizontal splitter
\endtable
- QSplitter does not use \l{QStyleOption::}{init()} to set up its
+ QSplitter does not use \l{QStyleOption::}{initFrom()} to set up its
option; it sets the State_MouseOver and State_Disabled flags
itself.
@@ -1625,7 +1625,7 @@
QToolBarSaparator uses QStyleOption for their style option. It
sets the State_horizontal flag if the toolbar they live in is
- horizontal. Other than that, they use \l{QStyleOption::}{init()}.
+ horizontal. Other than that, they use \l{QStyleOption::}{initFrom()}.
The style option for QToolBar is QStyleOptionToolBar. The only
state flag set (besides the common flags) is State_Horizontal
@@ -1757,7 +1757,7 @@
The setup of the style option for CE_MenuTearOff and
CE_MenuScroller also uses QStyleOptionMenuItem; they only set the
\c menuRect variable in addition to the common settings with
- QStyleOption's \l{QStyleOption::}{init()}.
+ QStyleOption's \l{QStyleOption::}{initFrom()}.
\section3 Menu Bar
diff --git a/doc/src/supported-platforms.qdoc b/doc/src/supported-platforms.qdoc
new file mode 100644
index 0000000..25251fe
--- /dev/null
+++ b/doc/src/supported-platforms.qdoc
@@ -0,0 +1,141 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://www.qtsoftware.com/contact.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \page supported-platforms.html
+ \title Supported Platforms
+ \brief The platforms supported by Nokia for Qt.
+ \ingroup platform-notes
+
+ Qt Software strives to provide support for the platforms most
+ frequently used by Qt users. We have designed our internal testing procedure to
+ divide platforms into three test categories (Tier 1, Tier 2 and Tier 3) in order
+ to prioritize internal testing and development resources so that the most
+ frequently used platforms are subjected to our most rigorous testing processes.
+
+ Qt is supported on a variety of 32-bit and 64-bit platforms, and can
+ usually be built on each platform with GCC, a vendor-supplied compiler, or
+ a third party compiler. Although Qt may be built on a range of platform-compiler
+ combinations, only a subset of these are actively supported by Qt.
+
+ \tableofcontents
+
+ Information about the specific platforms Qt runs on can be found on the
+ \l{Platform Notes} page. Information about the compilers used on each platform
+ can be found on the \l{Compiler Notes} page.
+
+ \section1 Tier 1 Platforms
+
+ All Tier 1 platforms are subjected to our unit test suite and other internal
+ testing tools on a frequent basis (prior to new version releases, source tree
+ branching, and at other significant period points in the development process).
+ Errors or bugs discovered in these platforms are prioritized for correction
+ by the development team. Significant errors discovered in Tier 1 platforms can
+ impact release dates and Qt Development Frameworks strives to resolve all known
+ high priority errors in Tier 1 platforms prior to new version releases.
+
+ \table
+ \header \o Platform
+ \o Compilers
+ \row \o Linux (32 and 64-bit)
+ \o gcc 4.2
+ \row \o Microsoft Windows XP
+ \o gcc 3.4.2 (MinGW) (32-bit), MSVC 2003, 2005 (32 and 64-bit)
+ \row \o Microsoft Windows Vista
+ \o MSVC 2005, 2008
+ \row \o Microsoft Windows Vista 64bit
+ \o MSVC 2008
+ \row \o Apple Mac OS X 10.5 "Leopard" x86_64 (Carbon, Cocoa 32 and 64bit)
+ \o As provided by Apple
+ \row \o Embedded Linux QWS (ARM)
+ \o gcc (\l{http:\\www.codesourcery.com}{Codesourcery version)}
+ \row \o Windows CE 5.0 (ARMv4i, x86, MIPS)
+ \o MSVC 2005 WinCE 5.0 Standard (x86, pocket, smart, mipsii)
+ \endtable
+
+ \section1 Tier 2 Platforms
+
+ Tier 2 platforms are subjected to our unit test suite and other internal testing
+ tools prior to release of new product versions. Qt users should note, however,
+ that errors may be present in released product versions for Tier 2 platforms and,
+ subject to resource availability, known errors in Tier 2 platforms may or may not
+ be corrected prior to new version releases.
+
+ \table
+ \header \o Platform
+ \o Compilers
+ \row \o Apple Mac OS X 10.4 "Tiger"
+ \o As provided by Apple
+ \row \o HPUXi 11.11
+ \o aCC 3.57, gcc 3.4
+ \row \o HPUXi 11.23
+ \o aCC 6.10
+ \row \o Solaris 10 UltraSparc
+ \o Sun Studio 12
+ \row \o AIX 6
+ \o Power5 xlC 7
+ \row \o Microsoft Windows XP
+ \o Intel Compiler
+ \row \o Linux
+ \o Intel Compiler
+ \row \o Embedded Linux QWS (Mips, PowerPC)
+ \o gcc (\l{http:\\www.codesourcery.com}{Codesourcery version)}
+ \row \o Windows CE 6.0 (ARMv4i, x86, MIPS)
+ \o MSVC 2008 WinCE 6.0 Professional
+ \endtable
+
+ \section1 Tier 3 Platforms (Not supported by Nokia)
+
+ All platforms not specifically listed above are not supported by Nokia. Nokia does
+ not run its unit test suite or perform any other internal tests on platforms not
+ listed above. Qt users should note, however, that there may be various open source
+ projects, community users and/or Qt partners who are able to provide assistance with
+ platforms not supported by Nokia.
+
+ \section1 General Legal Disclaimer
+
+ Please note that Qt Software’s products are offered on an "as is" basis without warranty
+ of any kind and that our products are not error or bug free. To the maximum extent
+ permitted by applicable law, Nokia on behalf of itself and its suppliers, disclaims all
+ warranties and conditions, either express or implied, including, but not limited to,
+ implied warranties of merchantability, fitness for a particular purpose, title and
+ non-infringement with regard to the Licensed Software.
+*/
diff --git a/doc/src/threads.qdoc b/doc/src/threads.qdoc
index 8469f51..067de5f 100644
--- a/doc/src/threads.qdoc
+++ b/doc/src/threads.qdoc
@@ -362,13 +362,12 @@
\section2 QObject Reentrancy
QObject is reentrant. Most of its non-GUI subclasses, such as
- QTimer, QTcpSocket, QUdpSocket, QHttp, QFtp, and QProcess, are
- also reentrant, making it possible to use these classes from
- multiple threads simultaneously. Note that these classes are
- designed to be created and used from within a single thread;
- creating an object in one thread and calling its functions from
- another thread is not guaranteed to work. There are three
- constraints to be aware of:
+ QTimer, QTcpSocket, QUdpSocket, QFtp, and QProcess, are also
+ reentrant, making it possible to use these classes from multiple
+ threads simultaneously. Note that these classes are designed to be
+ created and used from within a single thread; creating an object
+ in one thread and calling its functions from another thread is not
+ guaranteed to work. There are three constraints to be aware of:
\list
\o \e{The child of a QObject must always be created in the thread