summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/src/core/implicit-sharing.qdoc138
-rw-r--r--doc/src/images/abstract-connections.pngbin0 -> 19849 bytes
-rw-r--r--doc/src/images/alphafill.pngbin0 -> 156 bytes
-rw-r--r--doc/src/images/bearings.pngbin0 -> 1133 bytes
-rw-r--r--doc/src/images/brush-outline.pngbin0 -> 452 bytes
-rw-r--r--doc/src/images/coordinatesystem-analogclock.pngbin0 -> 9762 bytes
-rw-r--r--doc/src/images/coordinatesystem-line-antialias.pngbin0 -> 17979 bytes
-rw-r--r--doc/src/images/coordinatesystem-line-raster.pngbin0 -> 18152 bytes
-rw-r--r--doc/src/images/coordinatesystem-line.pngbin0 -> 26694 bytes
-rw-r--r--doc/src/images/coordinatesystem-rect-antialias.pngbin0 -> 19058 bytes
-rw-r--r--doc/src/images/coordinatesystem-rect-raster.pngbin0 -> 18455 bytes
-rw-r--r--doc/src/images/coordinatesystem-rect.pngbin0 -> 32307 bytes
-rw-r--r--doc/src/images/cursor-arrow.pngbin0 -> 171 bytes
-rw-r--r--doc/src/images/cursor-busy.pngbin0 -> 201 bytes
-rw-r--r--doc/src/images/cursor-closedhand.pngbin0 -> 147 bytes
-rw-r--r--doc/src/images/cursor-cross.pngbin0 -> 130 bytes
-rw-r--r--doc/src/images/cursor-forbidden.pngbin0 -> 199 bytes
-rw-r--r--doc/src/images/cursor-hand.pngbin0 -> 159 bytes
-rw-r--r--doc/src/images/cursor-hsplit.pngbin0 -> 155 bytes
-rw-r--r--doc/src/images/cursor-ibeam.pngbin0 -> 124 bytes
-rw-r--r--doc/src/images/cursor-openhand.pngbin0 -> 160 bytes
-rw-r--r--doc/src/images/cursor-sizeall.pngbin0 -> 174 bytes
-rw-r--r--doc/src/images/cursor-sizeb.pngbin0 -> 161 bytes
-rw-r--r--doc/src/images/cursor-sizef.pngbin0 -> 161 bytes
-rw-r--r--doc/src/images/cursor-sizeh.pngbin0 -> 145 bytes
-rw-r--r--doc/src/images/cursor-sizev.pngbin0 -> 141 bytes
-rw-r--r--doc/src/images/cursor-uparrow.pngbin0 -> 132 bytes
-rw-r--r--doc/src/images/cursor-vsplit.pngbin0 -> 161 bytes
-rw-r--r--doc/src/images/cursor-wait.pngbin0 -> 172 bytes
-rw-r--r--doc/src/images/cursor-whatsthis.pngbin0 -> 191 bytes
-rw-r--r--doc/src/images/javaiterators1.pngbin0 -> 1062 bytes
-rw-r--r--doc/src/images/javaiterators2.pngbin0 -> 2011 bytes
-rw-r--r--doc/src/images/modelview-begin-append-columns.pngbin0 -> 12798 bytes
-rw-r--r--doc/src/images/modelview-begin-append-rows.pngbin0 -> 8967 bytes
-rw-r--r--doc/src/images/modelview-begin-insert-columns.pngbin0 -> 14476 bytes
-rw-r--r--doc/src/images/modelview-begin-insert-rows.pngbin0 -> 12565 bytes
-rw-r--r--doc/src/images/modelview-begin-remove-columns.pngbin0 -> 14518 bytes
-rw-r--r--doc/src/images/modelview-begin-remove-rows.pngbin0 -> 10896 bytes
-rw-r--r--doc/src/images/modelview-move-rows-1.pngbin0 -> 19709 bytes
-rw-r--r--doc/src/images/modelview-move-rows-2.pngbin0 -> 19385 bytes
-rw-r--r--doc/src/images/modelview-move-rows-3.pngbin0 -> 9281 bytes
-rw-r--r--doc/src/images/modelview-move-rows-4.pngbin0 -> 9381 bytes
-rw-r--r--doc/src/images/paintsystem-icon.pngbin0 -> 5458 bytes
-rw-r--r--doc/src/images/palette.pngbin0 -> 66359 bytes
-rw-r--r--doc/src/images/qcolor-cmyk.pngbin0 -> 18878 bytes
-rw-r--r--doc/src/images/qcolor-hsv.pngbin0 -> 21046 bytes
-rw-r--r--doc/src/images/qcolor-hue.pngbin0 -> 26820 bytes
-rw-r--r--doc/src/images/qcolor-rgb.pngbin0 -> 17798 bytes
-rw-r--r--doc/src/images/qcolor-saturation.pngbin0 -> 2150 bytes
-rw-r--r--doc/src/images/qcolor-value.pngbin0 -> 1241 bytes
-rw-r--r--doc/src/images/qeasingcurve-inback.pngbin0 -> 2808 bytes
-rw-r--r--doc/src/images/qeasingcurve-inbounce.pngbin0 -> 3154 bytes
-rw-r--r--doc/src/images/qeasingcurve-incirc.pngbin0 -> 2605 bytes
-rw-r--r--doc/src/images/qeasingcurve-incubic.pngbin0 -> 2722 bytes
-rw-r--r--doc/src/images/qeasingcurve-inelastic.pngbin0 -> 3304 bytes
-rw-r--r--doc/src/images/qeasingcurve-inexpo.pngbin0 -> 2675 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutback.pngbin0 -> 3241 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutbounce.pngbin0 -> 3386 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutcirc.pngbin0 -> 2843 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutcubic.pngbin0 -> 2931 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutelastic.pngbin0 -> 3461 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutexpo.pngbin0 -> 3004 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutquad.pngbin0 -> 2893 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutquart.pngbin0 -> 2925 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutquint.pngbin0 -> 2823 bytes
-rw-r--r--doc/src/images/qeasingcurve-inoutsine.pngbin0 -> 2891 bytes
-rw-r--r--doc/src/images/qeasingcurve-inquad.pngbin0 -> 2733 bytes
-rw-r--r--doc/src/images/qeasingcurve-inquart.pngbin0 -> 2727 bytes
-rw-r--r--doc/src/images/qeasingcurve-inquint.pngbin0 -> 2630 bytes
-rw-r--r--doc/src/images/qeasingcurve-insine.pngbin0 -> 2567 bytes
-rw-r--r--doc/src/images/qeasingcurve-linear.pngbin0 -> 2318 bytes
-rw-r--r--doc/src/images/qeasingcurve-outback.pngbin0 -> 2852 bytes
-rw-r--r--doc/src/images/qeasingcurve-outbounce.pngbin0 -> 3360 bytes
-rw-r--r--doc/src/images/qeasingcurve-outcirc.pngbin0 -> 2796 bytes
-rw-r--r--doc/src/images/qeasingcurve-outcubic.pngbin0 -> 2792 bytes
-rw-r--r--doc/src/images/qeasingcurve-outelastic.pngbin0 -> 3423 bytes
-rw-r--r--doc/src/images/qeasingcurve-outexpo.pngbin0 -> 2803 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinback.pngbin0 -> 3026 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinbounce.pngbin0 -> 3629 bytes
-rw-r--r--doc/src/images/qeasingcurve-outincirc.pngbin0 -> 2822 bytes
-rw-r--r--doc/src/images/qeasingcurve-outincubic.pngbin0 -> 2872 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinelastic.pngbin0 -> 3941 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinexpo.pngbin0 -> 2923 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinquad.pngbin0 -> 2858 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinquart.pngbin0 -> 2830 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinquint.pngbin0 -> 2724 bytes
-rw-r--r--doc/src/images/qeasingcurve-outinsine.pngbin0 -> 2817 bytes
-rw-r--r--doc/src/images/qeasingcurve-outquad.pngbin0 -> 2760 bytes
-rw-r--r--doc/src/images/qeasingcurve-outquart.pngbin0 -> 2764 bytes
-rw-r--r--doc/src/images/qeasingcurve-outquint.pngbin0 -> 2687 bytes
-rw-r--r--doc/src/images/qeasingcurve-outsine.pngbin0 -> 2773 bytes
-rw-r--r--doc/src/images/qgradient-conical.pngbin0 -> 3995 bytes
-rw-r--r--doc/src/images/qgradient-linear.pngbin0 -> 714 bytes
-rw-r--r--doc/src/images/qgradient-radial.pngbin0 -> 2352 bytes
-rw-r--r--doc/src/images/qimage-32bit_scaled.pngbin0 -> 25098 bytes
-rw-r--r--doc/src/images/qimage-8bit_scaled.pngbin0 -> 24761 bytes
-rw-r--r--doc/src/images/qline-coordinates.pngbin0 -> 9459 bytes
-rw-r--r--doc/src/images/qline-point.pngbin0 -> 8484 bytes
-rw-r--r--doc/src/images/qlineargradient-pad.pngbin0 -> 2260 bytes
-rw-r--r--doc/src/images/qlineargradient-reflect.pngbin0 -> 2746 bytes
-rw-r--r--doc/src/images/qlineargradient-repeat.pngbin0 -> 2590 bytes
-rw-r--r--doc/src/images/qlinef-angle-identicaldirection.pngbin0 -> 6004 bytes
-rw-r--r--doc/src/images/qlinef-angle-oppositedirection.pngbin0 -> 5834 bytes
-rw-r--r--doc/src/images/qlinef-bounded.pngbin0 -> 4183 bytes
-rw-r--r--doc/src/images/qlinef-unbounded.pngbin0 -> 3992 bytes
-rw-r--r--doc/src/images/qmatrix-combinedtransformation.pngbin0 -> 1707 bytes
-rw-r--r--doc/src/images/qmatrix-simpletransformation.pngbin0 -> 2047 bytes
-rw-r--r--doc/src/images/qpainter-affinetransformations.pngbin0 -> 66241 bytes
-rw-r--r--doc/src/images/qpainter-arc.pngbin0 -> 635 bytes
-rw-r--r--doc/src/images/qpainter-basicdrawing.pngbin0 -> 18164 bytes
-rw-r--r--doc/src/images/qpainter-chord.pngbin0 -> 632 bytes
-rw-r--r--doc/src/images/qpainter-clock.pngbin0 -> 3128 bytes
-rw-r--r--doc/src/images/qpainter-compositiondemo.pngbin0 -> 61015 bytes
-rw-r--r--doc/src/images/qpainter-concentriccircles.pngbin0 -> 31294 bytes
-rw-r--r--doc/src/images/qpainter-ellipse.pngbin0 -> 1022 bytes
-rw-r--r--doc/src/images/qpainter-gradients.pngbin0 -> 24231 bytes
-rw-r--r--doc/src/images/qpainter-line.pngbin0 -> 759 bytes
-rw-r--r--doc/src/images/qpainter-painterpaths.pngbin0 -> 31985 bytes
-rw-r--r--doc/src/images/qpainter-path.pngbin0 -> 963 bytes
-rw-r--r--doc/src/images/qpainter-pathstroking.pngbin0 -> 30794 bytes
-rw-r--r--doc/src/images/qpainter-pie.pngbin0 -> 1018 bytes
-rw-r--r--doc/src/images/qpainter-polygon.pngbin0 -> 699 bytes
-rw-r--r--doc/src/images/qpainter-rectangle.pngbin0 -> 194 bytes
-rw-r--r--doc/src/images/qpainter-rotation.pngbin0 -> 3768 bytes
-rw-r--r--doc/src/images/qpainter-roundrect.pngbin0 -> 433 bytes
-rw-r--r--doc/src/images/qpainter-scale.pngbin0 -> 2828 bytes
-rw-r--r--doc/src/images/qpainter-text.pngbin0 -> 1391 bytes
-rw-r--r--doc/src/images/qpainter-translation.pngbin0 -> 3909 bytes
-rw-r--r--doc/src/images/qpainter-vectordeformation.pngbin0 -> 30591 bytes
-rw-r--r--doc/src/images/qpainterpath-addellipse.pngbin0 -> 3509 bytes
-rw-r--r--doc/src/images/qpainterpath-addpolygon.pngbin0 -> 7625 bytes
-rw-r--r--doc/src/images/qpainterpath-addrectangle.pngbin0 -> 1839 bytes
-rw-r--r--doc/src/images/qpainterpath-addtext.pngbin0 -> 7406 bytes
-rw-r--r--doc/src/images/qpainterpath-arcto.pngbin0 -> 5063 bytes
-rw-r--r--doc/src/images/qpainterpath-construction.pngbin0 -> 2523 bytes
-rw-r--r--doc/src/images/qpainterpath-cubicto.pngbin0 -> 4749 bytes
-rw-r--r--doc/src/images/qpainterpath-demo.pngbin0 -> 51334 bytes
-rw-r--r--doc/src/images/qpainterpath-example.pngbin0 -> 38746 bytes
-rw-r--r--doc/src/images/qpen-bevel.pngbin0 -> 11527 bytes
-rw-r--r--doc/src/images/qpen-custom.pngbin0 -> 6254 bytes
-rw-r--r--doc/src/images/qpen-dash.pngbin0 -> 8221 bytes
-rw-r--r--doc/src/images/qpen-dashdot.pngbin0 -> 5961 bytes
-rw-r--r--doc/src/images/qpen-dashdotdot.pngbin0 -> 5999 bytes
-rw-r--r--doc/src/images/qpen-dashpattern.pngbin0 -> 1605 bytes
-rw-r--r--doc/src/images/qpen-demo.pngbin0 -> 49784 bytes
-rw-r--r--doc/src/images/qpen-dot.pngbin0 -> 5386 bytes
-rw-r--r--doc/src/images/qpen-flat.pngbin0 -> 1885 bytes
-rw-r--r--doc/src/images/qpen-miter.pngbin0 -> 11734 bytes
-rw-r--r--doc/src/images/qpen-roundcap.pngbin0 -> 1920 bytes
-rw-r--r--doc/src/images/qpen-roundjoin.pngbin0 -> 11878 bytes
-rw-r--r--doc/src/images/qpen-solid.pngbin0 -> 7416 bytes
-rw-r--r--doc/src/images/qpen-square.pngbin0 -> 2651 bytes
-rw-r--r--doc/src/images/qradialgradient-pad.pngbin0 -> 11385 bytes
-rw-r--r--doc/src/images/qradialgradient-reflect.pngbin0 -> 33668 bytes
-rw-r--r--doc/src/images/qradialgradient-repeat.pngbin0 -> 40528 bytes
-rw-r--r--doc/src/images/qrect-diagram-one.pngbin0 -> 9616 bytes
-rw-r--r--doc/src/images/qrect-diagram-three.pngbin0 -> 9458 bytes
-rw-r--r--doc/src/images/qrect-diagram-two.pngbin0 -> 9378 bytes
-rw-r--r--doc/src/images/qrect-diagram-zero.pngbin0 -> 5198 bytes
-rw-r--r--doc/src/images/qrectf-diagram-one.pngbin0 -> 9594 bytes
-rw-r--r--doc/src/images/qrectf-diagram-three.pngbin0 -> 9392 bytes
-rw-r--r--doc/src/images/qrectf-diagram-two.pngbin0 -> 9387 bytes
-rw-r--r--doc/src/images/qt-colors.pngbin0 -> 11701 bytes
-rw-r--r--doc/src/images/qt-fillrule-oddeven.pngbin0 -> 7057 bytes
-rw-r--r--doc/src/images/qt-fillrule-winding.pngbin0 -> 7205 bytes
-rw-r--r--doc/src/images/qtabletevent-tilt.pngbin0 -> 8312 bytes
-rw-r--r--doc/src/images/qtextblock-sequence.pngbin0 -> 17445 bytes
-rw-r--r--doc/src/images/qtextfragment-split.pngbin0 -> 18109 bytes
-rw-r--r--doc/src/images/qtextframe-style.pngbin0 -> 29420 bytes
-rw-r--r--doc/src/images/qtransform-combinedtransformation.pngbin0 -> 935 bytes
-rw-r--r--doc/src/images/qtransform-combinedtransformation2.pngbin0 -> 930 bytes
-rw-r--r--doc/src/images/qtransform-simpletransformation.pngbin0 -> 1201 bytes
-rw-r--r--doc/src/images/qurl-authority.pngbin0 -> 5099 bytes
-rw-r--r--doc/src/images/qurl-authority2.pngbin0 -> 2350 bytes
-rw-r--r--doc/src/images/qurl-authority3.pngbin0 -> 3552 bytes
-rw-r--r--doc/src/images/qurl-fragment.pngbin0 -> 2333 bytes
-rw-r--r--doc/src/images/qurl-ftppath.pngbin0 -> 1974 bytes
-rw-r--r--doc/src/images/qurl-mailtopath.pngbin0 -> 1679 bytes
-rw-r--r--doc/src/images/qurl-querystring.pngbin0 -> 2955 bytes
-rw-r--r--doc/src/images/rintersect.pngbin0 -> 221 bytes
-rw-r--r--doc/src/images/rsubtract.pngbin0 -> 224 bytes
-rw-r--r--doc/src/images/runion.pngbin0 -> 221 bytes
-rw-r--r--doc/src/images/rxor.pngbin0 -> 222 bytes
-rw-r--r--doc/src/images/stliterators1.pngbin0 -> 1671 bytes
-rw-r--r--doc/src/images/texttable-merge.pngbin0 -> 746 bytes
-rw-r--r--doc/src/images/texttable-split.pngbin0 -> 753 bytes
-rw-r--r--doc/src/images/threadsandobjects.pngbin0 -> 66096 bytes
-rw-r--r--doc/src/snippets/code/doc_src_groups.cpp66
188 files changed, 204 insertions, 0 deletions
diff --git a/doc/src/core/implicit-sharing.qdoc b/doc/src/core/implicit-sharing.qdoc
new file mode 100644
index 0000000000..9e839edb24
--- /dev/null
+++ b/doc/src/core/implicit-sharing.qdoc
@@ -0,0 +1,138 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** GNU Free Documentation License
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of
+** this file.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms
+** and conditions contained in a signed written agreement between you
+** and Nokia.
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/* TODO: Move some of the documentation from QSharedDataPointer into this
+ document. */
+
+/*!
+ \group shared
+ \title Implicitly Shared Classes
+*/
+
+/*!
+ \page implicit-sharing.html
+ \title Implicit Sharing
+ \ingroup qt-basic-concepts
+
+ \brief Reference counting for fast copying.
+
+ \keyword implicit data sharing
+ \keyword implicit sharing
+ \keyword implicitly shared
+ \keyword reference counting
+ \keyword shared implicitly
+ \keyword shared classes
+
+ Many C++ classes in Qt use implicit data sharing to maximize
+ resource usage and minimize copying. Implicitly shared classes are
+ both safe and efficient when passed as arguments, because only a
+ pointer to the data is passed around, and the data is copied only
+ if and when a function writes to it, i.e., \e {copy-on-write}.
+
+ \tableofcontents
+
+ \section1 Overview
+
+ A shared class consists of a pointer to a shared data block that
+ contains a reference count and the data.
+
+ When a shared object is created, it sets the reference count to 1. The
+ reference count is incremented whenever a new object references the
+ shared data, and decremented when the object dereferences the shared
+ data. The shared data is deleted when the reference count becomes
+ zero.
+
+ \keyword deep copy
+ \keyword shallow copy
+
+ When dealing with shared objects, there are two ways of copying an
+ object. We usually speak about \e deep and \e shallow copies. A deep
+ copy implies duplicating an object. A shallow copy is a reference
+ copy, i.e. just a pointer to a shared data block. Making a deep copy
+ can be expensive in terms of memory and CPU. Making a shallow copy is
+ very fast, because it only involves setting a pointer and incrementing
+ the reference count.
+
+ Object assignment (with operator=()) for implicitly shared objects is
+ implemented using shallow copies.
+
+ The benefit of sharing is that a program does not need to duplicate
+ data unnecessarily, which results in lower memory use and less copying
+ of data. Objects can easily be assigned, sent as function arguments,
+ and returned from functions.
+
+ Implicit sharing takes place behind the scenes; the programmer
+ does not need to worry about it. Even in multithreaded
+ applications, implicit sharing takes place, as explained in
+ \l{Thread-Support in Qt Modules#Threads and Implicitly Shared Classes}
+ {Threads and Implicitly Shared Classes}.
+
+ When implementing your own implicitly shared classes, use the
+ QSharedData and QSharedDataPointer classes.
+
+ \section1 Implicit Sharing in Detail
+
+ Implicit sharing automatically detaches the object from a shared
+ block if the object is about to change and the reference count is
+ greater than one. (This is often called \e {copy-on-write} or
+ \e {value semantics}.)
+
+ An implicitly shared class has total control of its internal data. In
+ any member functions that modify its data, it automatically detaches
+ before modifying the data.
+
+ The QPen class, which uses implicit sharing, detaches from the shared
+ data in all member functions that change the internal data.
+
+ Code fragment:
+ \snippet doc/src/snippets/code/doc_src_groups.cpp 0
+
+
+ \section1 List of Classes
+
+ The classes listed below automatically detach from common data if
+ an object is about to be changed. The programmer will not even
+ notice that the objects are shared. Thus you should treat
+ separate instances of them as separate objects. They will always
+ behave as separate objects but with the added benefit of sharing
+ data whenever possible. For this reason, you can pass instances
+ of these classes as arguments to functions by value without
+ concern for the copying overhead.
+
+ Example:
+ \snippet doc/src/snippets/code/doc_src_groups.cpp 1
+
+ In this example, \c p1 and \c p2 share data until QPainter::begin()
+ is called for \c p2, because painting a pixmap will modify it.
+
+ \warning Do not copy an implicitly shared container (QMap,
+ QVector, etc.) while you are iterating over it using an non-const
+ \l{STL-style iterator}.
+
+ \keyword implicitly shared classes
+ \annotatedlist shared
+*/
diff --git a/doc/src/images/abstract-connections.png b/doc/src/images/abstract-connections.png
new file mode 100644
index 0000000000..18d2f4e3b7
--- /dev/null
+++ b/doc/src/images/abstract-connections.png
Binary files differ
diff --git a/doc/src/images/alphafill.png b/doc/src/images/alphafill.png
new file mode 100644
index 0000000000..3feff296df
--- /dev/null
+++ b/doc/src/images/alphafill.png
Binary files differ
diff --git a/doc/src/images/bearings.png b/doc/src/images/bearings.png
new file mode 100644
index 0000000000..00108923d0
--- /dev/null
+++ b/doc/src/images/bearings.png
Binary files differ
diff --git a/doc/src/images/brush-outline.png b/doc/src/images/brush-outline.png
new file mode 100644
index 0000000000..f560c9faf5
--- /dev/null
+++ b/doc/src/images/brush-outline.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-analogclock.png b/doc/src/images/coordinatesystem-analogclock.png
new file mode 100644
index 0000000000..16e3091b77
--- /dev/null
+++ b/doc/src/images/coordinatesystem-analogclock.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-line-antialias.png b/doc/src/images/coordinatesystem-line-antialias.png
new file mode 100644
index 0000000000..90dfa8730e
--- /dev/null
+++ b/doc/src/images/coordinatesystem-line-antialias.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-line-raster.png b/doc/src/images/coordinatesystem-line-raster.png
new file mode 100644
index 0000000000..65201bde9f
--- /dev/null
+++ b/doc/src/images/coordinatesystem-line-raster.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-line.png b/doc/src/images/coordinatesystem-line.png
new file mode 100644
index 0000000000..fbf6873084
--- /dev/null
+++ b/doc/src/images/coordinatesystem-line.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-rect-antialias.png b/doc/src/images/coordinatesystem-rect-antialias.png
new file mode 100644
index 0000000000..162e1df9cb
--- /dev/null
+++ b/doc/src/images/coordinatesystem-rect-antialias.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-rect-raster.png b/doc/src/images/coordinatesystem-rect-raster.png
new file mode 100644
index 0000000000..be3690d6ad
--- /dev/null
+++ b/doc/src/images/coordinatesystem-rect-raster.png
Binary files differ
diff --git a/doc/src/images/coordinatesystem-rect.png b/doc/src/images/coordinatesystem-rect.png
new file mode 100644
index 0000000000..76c06befd6
--- /dev/null
+++ b/doc/src/images/coordinatesystem-rect.png
Binary files differ
diff --git a/doc/src/images/cursor-arrow.png b/doc/src/images/cursor-arrow.png
new file mode 100644
index 0000000000..a69ef4eb61
--- /dev/null
+++ b/doc/src/images/cursor-arrow.png
Binary files differ
diff --git a/doc/src/images/cursor-busy.png b/doc/src/images/cursor-busy.png
new file mode 100644
index 0000000000..53717e4992
--- /dev/null
+++ b/doc/src/images/cursor-busy.png
Binary files differ
diff --git a/doc/src/images/cursor-closedhand.png b/doc/src/images/cursor-closedhand.png
new file mode 100644
index 0000000000..b78dd1dac5
--- /dev/null
+++ b/doc/src/images/cursor-closedhand.png
Binary files differ
diff --git a/doc/src/images/cursor-cross.png b/doc/src/images/cursor-cross.png
new file mode 100644
index 0000000000..fe38e74480
--- /dev/null
+++ b/doc/src/images/cursor-cross.png
Binary files differ
diff --git a/doc/src/images/cursor-forbidden.png b/doc/src/images/cursor-forbidden.png
new file mode 100644
index 0000000000..2b08c4e2a3
--- /dev/null
+++ b/doc/src/images/cursor-forbidden.png
Binary files differ
diff --git a/doc/src/images/cursor-hand.png b/doc/src/images/cursor-hand.png
new file mode 100644
index 0000000000..d2004aefa7
--- /dev/null
+++ b/doc/src/images/cursor-hand.png
Binary files differ
diff --git a/doc/src/images/cursor-hsplit.png b/doc/src/images/cursor-hsplit.png
new file mode 100644
index 0000000000..a5667e3ffb
--- /dev/null
+++ b/doc/src/images/cursor-hsplit.png
Binary files differ
diff --git a/doc/src/images/cursor-ibeam.png b/doc/src/images/cursor-ibeam.png
new file mode 100644
index 0000000000..097fc5fa72
--- /dev/null
+++ b/doc/src/images/cursor-ibeam.png
Binary files differ
diff --git a/doc/src/images/cursor-openhand.png b/doc/src/images/cursor-openhand.png
new file mode 100644
index 0000000000..9181c859ed
--- /dev/null
+++ b/doc/src/images/cursor-openhand.png
Binary files differ
diff --git a/doc/src/images/cursor-sizeall.png b/doc/src/images/cursor-sizeall.png
new file mode 100644
index 0000000000..69f13eb347
--- /dev/null
+++ b/doc/src/images/cursor-sizeall.png
Binary files differ
diff --git a/doc/src/images/cursor-sizeb.png b/doc/src/images/cursor-sizeb.png
new file mode 100644
index 0000000000..f37d7b91e8
--- /dev/null
+++ b/doc/src/images/cursor-sizeb.png
Binary files differ
diff --git a/doc/src/images/cursor-sizef.png b/doc/src/images/cursor-sizef.png
new file mode 100644
index 0000000000..3b127a05d3
--- /dev/null
+++ b/doc/src/images/cursor-sizef.png
Binary files differ
diff --git a/doc/src/images/cursor-sizeh.png b/doc/src/images/cursor-sizeh.png
new file mode 100644
index 0000000000..a9f40cbc3d
--- /dev/null
+++ b/doc/src/images/cursor-sizeh.png
Binary files differ
diff --git a/doc/src/images/cursor-sizev.png b/doc/src/images/cursor-sizev.png
new file mode 100644
index 0000000000..1edbab27a5
--- /dev/null
+++ b/doc/src/images/cursor-sizev.png
Binary files differ
diff --git a/doc/src/images/cursor-uparrow.png b/doc/src/images/cursor-uparrow.png
new file mode 100644
index 0000000000..d3e70ef4c2
--- /dev/null
+++ b/doc/src/images/cursor-uparrow.png
Binary files differ
diff --git a/doc/src/images/cursor-vsplit.png b/doc/src/images/cursor-vsplit.png
new file mode 100644
index 0000000000..1beda2570e
--- /dev/null
+++ b/doc/src/images/cursor-vsplit.png
Binary files differ
diff --git a/doc/src/images/cursor-wait.png b/doc/src/images/cursor-wait.png
new file mode 100644
index 0000000000..69056c479e
--- /dev/null
+++ b/doc/src/images/cursor-wait.png
Binary files differ
diff --git a/doc/src/images/cursor-whatsthis.png b/doc/src/images/cursor-whatsthis.png
new file mode 100644
index 0000000000..b47601c378
--- /dev/null
+++ b/doc/src/images/cursor-whatsthis.png
Binary files differ
diff --git a/doc/src/images/javaiterators1.png b/doc/src/images/javaiterators1.png
new file mode 100644
index 0000000000..7dfcde0188
--- /dev/null
+++ b/doc/src/images/javaiterators1.png
Binary files differ
diff --git a/doc/src/images/javaiterators2.png b/doc/src/images/javaiterators2.png
new file mode 100644
index 0000000000..c04e3ccf88
--- /dev/null
+++ b/doc/src/images/javaiterators2.png
Binary files differ
diff --git a/doc/src/images/modelview-begin-append-columns.png b/doc/src/images/modelview-begin-append-columns.png
new file mode 100644
index 0000000000..8d13b178d8
--- /dev/null
+++ b/doc/src/images/modelview-begin-append-columns.png
Binary files differ
diff --git a/doc/src/images/modelview-begin-append-rows.png b/doc/src/images/modelview-begin-append-rows.png
new file mode 100644
index 0000000000..50d04c3e67
--- /dev/null
+++ b/doc/src/images/modelview-begin-append-rows.png
Binary files differ
diff --git a/doc/src/images/modelview-begin-insert-columns.png b/doc/src/images/modelview-begin-insert-columns.png
new file mode 100644
index 0000000000..30eeb8280e
--- /dev/null
+++ b/doc/src/images/modelview-begin-insert-columns.png
Binary files differ
diff --git a/doc/src/images/modelview-begin-insert-rows.png b/doc/src/images/modelview-begin-insert-rows.png
new file mode 100644
index 0000000000..b4d6eda57d
--- /dev/null
+++ b/doc/src/images/modelview-begin-insert-rows.png
Binary files differ
diff --git a/doc/src/images/modelview-begin-remove-columns.png b/doc/src/images/modelview-begin-remove-columns.png
new file mode 100644
index 0000000000..aee60e01ec
--- /dev/null
+++ b/doc/src/images/modelview-begin-remove-columns.png
Binary files differ
diff --git a/doc/src/images/modelview-begin-remove-rows.png b/doc/src/images/modelview-begin-remove-rows.png
new file mode 100644
index 0000000000..8e9518718e
--- /dev/null
+++ b/doc/src/images/modelview-begin-remove-rows.png
Binary files differ
diff --git a/doc/src/images/modelview-move-rows-1.png b/doc/src/images/modelview-move-rows-1.png
new file mode 100644
index 0000000000..b629a72dd4
--- /dev/null
+++ b/doc/src/images/modelview-move-rows-1.png
Binary files differ
diff --git a/doc/src/images/modelview-move-rows-2.png b/doc/src/images/modelview-move-rows-2.png
new file mode 100644
index 0000000000..674ca18f78
--- /dev/null
+++ b/doc/src/images/modelview-move-rows-2.png
Binary files differ
diff --git a/doc/src/images/modelview-move-rows-3.png b/doc/src/images/modelview-move-rows-3.png
new file mode 100644
index 0000000000..5445dd599c
--- /dev/null
+++ b/doc/src/images/modelview-move-rows-3.png
Binary files differ
diff --git a/doc/src/images/modelview-move-rows-4.png b/doc/src/images/modelview-move-rows-4.png
new file mode 100644
index 0000000000..ecd65bac6c
--- /dev/null
+++ b/doc/src/images/modelview-move-rows-4.png
Binary files differ
diff --git a/doc/src/images/paintsystem-icon.png b/doc/src/images/paintsystem-icon.png
new file mode 100644
index 0000000000..4623db0761
--- /dev/null
+++ b/doc/src/images/paintsystem-icon.png
Binary files differ
diff --git a/doc/src/images/palette.png b/doc/src/images/palette.png
new file mode 100644
index 0000000000..832a5a59d9
--- /dev/null
+++ b/doc/src/images/palette.png
Binary files differ
diff --git a/doc/src/images/qcolor-cmyk.png b/doc/src/images/qcolor-cmyk.png
new file mode 100644
index 0000000000..dfe8f67a31
--- /dev/null
+++ b/doc/src/images/qcolor-cmyk.png
Binary files differ
diff --git a/doc/src/images/qcolor-hsv.png b/doc/src/images/qcolor-hsv.png
new file mode 100644
index 0000000000..49fdf77222
--- /dev/null
+++ b/doc/src/images/qcolor-hsv.png
Binary files differ
diff --git a/doc/src/images/qcolor-hue.png b/doc/src/images/qcolor-hue.png
new file mode 100644
index 0000000000..144b27c87a
--- /dev/null
+++ b/doc/src/images/qcolor-hue.png
Binary files differ
diff --git a/doc/src/images/qcolor-rgb.png b/doc/src/images/qcolor-rgb.png
new file mode 100644
index 0000000000..fea4c63fd7
--- /dev/null
+++ b/doc/src/images/qcolor-rgb.png
Binary files differ
diff --git a/doc/src/images/qcolor-saturation.png b/doc/src/images/qcolor-saturation.png
new file mode 100644
index 0000000000..f28776aff5
--- /dev/null
+++ b/doc/src/images/qcolor-saturation.png
Binary files differ
diff --git a/doc/src/images/qcolor-value.png b/doc/src/images/qcolor-value.png
new file mode 100644
index 0000000000..0e069123a9
--- /dev/null
+++ b/doc/src/images/qcolor-value.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inback.png b/doc/src/images/qeasingcurve-inback.png
new file mode 100644
index 0000000000..0064cb341c
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inback.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inbounce.png b/doc/src/images/qeasingcurve-inbounce.png
new file mode 100644
index 0000000000..eaa64f8c41
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inbounce.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-incirc.png b/doc/src/images/qeasingcurve-incirc.png
new file mode 100644
index 0000000000..7bd0f09d41
--- /dev/null
+++ b/doc/src/images/qeasingcurve-incirc.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-incubic.png b/doc/src/images/qeasingcurve-incubic.png
new file mode 100644
index 0000000000..1ac9eafba5
--- /dev/null
+++ b/doc/src/images/qeasingcurve-incubic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inelastic.png b/doc/src/images/qeasingcurve-inelastic.png
new file mode 100644
index 0000000000..f976b5a576
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inelastic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inexpo.png b/doc/src/images/qeasingcurve-inexpo.png
new file mode 100644
index 0000000000..1af3652985
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inexpo.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutback.png b/doc/src/images/qeasingcurve-inoutback.png
new file mode 100644
index 0000000000..480bc051ef
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutback.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutbounce.png b/doc/src/images/qeasingcurve-inoutbounce.png
new file mode 100644
index 0000000000..de623091cf
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutbounce.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutcirc.png b/doc/src/images/qeasingcurve-inoutcirc.png
new file mode 100644
index 0000000000..b4be8ac21e
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutcirc.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutcubic.png b/doc/src/images/qeasingcurve-inoutcubic.png
new file mode 100644
index 0000000000..49dfbef1b6
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutcubic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutelastic.png b/doc/src/images/qeasingcurve-inoutelastic.png
new file mode 100644
index 0000000000..5b0e54a019
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutelastic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutexpo.png b/doc/src/images/qeasingcurve-inoutexpo.png
new file mode 100644
index 0000000000..776984a113
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutexpo.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutquad.png b/doc/src/images/qeasingcurve-inoutquad.png
new file mode 100644
index 0000000000..264333085a
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutquad.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutquart.png b/doc/src/images/qeasingcurve-inoutquart.png
new file mode 100644
index 0000000000..31fc0c8852
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutquart.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutquint.png b/doc/src/images/qeasingcurve-inoutquint.png
new file mode 100644
index 0000000000..4d7a745be6
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutquint.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inoutsine.png b/doc/src/images/qeasingcurve-inoutsine.png
new file mode 100644
index 0000000000..012ff751c9
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inoutsine.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inquad.png b/doc/src/images/qeasingcurve-inquad.png
new file mode 100644
index 0000000000..e697c208a5
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inquad.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inquart.png b/doc/src/images/qeasingcurve-inquart.png
new file mode 100644
index 0000000000..6d6517551e
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inquart.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-inquint.png b/doc/src/images/qeasingcurve-inquint.png
new file mode 100644
index 0000000000..faaaea71fd
--- /dev/null
+++ b/doc/src/images/qeasingcurve-inquint.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-insine.png b/doc/src/images/qeasingcurve-insine.png
new file mode 100644
index 0000000000..09449034b5
--- /dev/null
+++ b/doc/src/images/qeasingcurve-insine.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-linear.png b/doc/src/images/qeasingcurve-linear.png
new file mode 100644
index 0000000000..fb3aaf3541
--- /dev/null
+++ b/doc/src/images/qeasingcurve-linear.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outback.png b/doc/src/images/qeasingcurve-outback.png
new file mode 100644
index 0000000000..83b3fa233f
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outback.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outbounce.png b/doc/src/images/qeasingcurve-outbounce.png
new file mode 100644
index 0000000000..27ac979642
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outbounce.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outcirc.png b/doc/src/images/qeasingcurve-outcirc.png
new file mode 100644
index 0000000000..00193700e0
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outcirc.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outcubic.png b/doc/src/images/qeasingcurve-outcubic.png
new file mode 100644
index 0000000000..45477c045a
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outcubic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outelastic.png b/doc/src/images/qeasingcurve-outelastic.png
new file mode 100644
index 0000000000..1d407ed845
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outelastic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outexpo.png b/doc/src/images/qeasingcurve-outexpo.png
new file mode 100644
index 0000000000..56851554ed
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outexpo.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinback.png b/doc/src/images/qeasingcurve-outinback.png
new file mode 100644
index 0000000000..4700ab02e8
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinback.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinbounce.png b/doc/src/images/qeasingcurve-outinbounce.png
new file mode 100644
index 0000000000..12cc1a8bd4
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinbounce.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outincirc.png b/doc/src/images/qeasingcurve-outincirc.png
new file mode 100644
index 0000000000..c8a5c86a23
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outincirc.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outincubic.png b/doc/src/images/qeasingcurve-outincubic.png
new file mode 100644
index 0000000000..42af870d99
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outincubic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinelastic.png b/doc/src/images/qeasingcurve-outinelastic.png
new file mode 100644
index 0000000000..308be57900
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinelastic.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinexpo.png b/doc/src/images/qeasingcurve-outinexpo.png
new file mode 100644
index 0000000000..0692baa264
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinexpo.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinquad.png b/doc/src/images/qeasingcurve-outinquad.png
new file mode 100644
index 0000000000..9e3cd83896
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinquad.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinquart.png b/doc/src/images/qeasingcurve-outinquart.png
new file mode 100644
index 0000000000..9a3c16f122
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinquart.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinquint.png b/doc/src/images/qeasingcurve-outinquint.png
new file mode 100644
index 0000000000..add9feb26f
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinquint.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outinsine.png b/doc/src/images/qeasingcurve-outinsine.png
new file mode 100644
index 0000000000..4bc2aaf9e3
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outinsine.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outquad.png b/doc/src/images/qeasingcurve-outquad.png
new file mode 100644
index 0000000000..c505ff9e7b
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outquad.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outquart.png b/doc/src/images/qeasingcurve-outquart.png
new file mode 100644
index 0000000000..6eac058d18
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outquart.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outquint.png b/doc/src/images/qeasingcurve-outquint.png
new file mode 100644
index 0000000000..77a9ad417f
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outquint.png
Binary files differ
diff --git a/doc/src/images/qeasingcurve-outsine.png b/doc/src/images/qeasingcurve-outsine.png
new file mode 100644
index 0000000000..d135b2f98c
--- /dev/null
+++ b/doc/src/images/qeasingcurve-outsine.png
Binary files differ
diff --git a/doc/src/images/qgradient-conical.png b/doc/src/images/qgradient-conical.png
new file mode 100644
index 0000000000..cf06b70db6
--- /dev/null
+++ b/doc/src/images/qgradient-conical.png
Binary files differ
diff --git a/doc/src/images/qgradient-linear.png b/doc/src/images/qgradient-linear.png
new file mode 100644
index 0000000000..5a5e880de7
--- /dev/null
+++ b/doc/src/images/qgradient-linear.png
Binary files differ
diff --git a/doc/src/images/qgradient-radial.png b/doc/src/images/qgradient-radial.png
new file mode 100644
index 0000000000..95b9e9c3c9
--- /dev/null
+++ b/doc/src/images/qgradient-radial.png
Binary files differ
diff --git a/doc/src/images/qimage-32bit_scaled.png b/doc/src/images/qimage-32bit_scaled.png
new file mode 100644
index 0000000000..6932327456
--- /dev/null
+++ b/doc/src/images/qimage-32bit_scaled.png
Binary files differ
diff --git a/doc/src/images/qimage-8bit_scaled.png b/doc/src/images/qimage-8bit_scaled.png
new file mode 100644
index 0000000000..7cbf0f1e29
--- /dev/null
+++ b/doc/src/images/qimage-8bit_scaled.png
Binary files differ
diff --git a/doc/src/images/qline-coordinates.png b/doc/src/images/qline-coordinates.png
new file mode 100644
index 0000000000..ac4fb980ac
--- /dev/null
+++ b/doc/src/images/qline-coordinates.png
Binary files differ
diff --git a/doc/src/images/qline-point.png b/doc/src/images/qline-point.png
new file mode 100644
index 0000000000..3bc3664a20
--- /dev/null
+++ b/doc/src/images/qline-point.png
Binary files differ
diff --git a/doc/src/images/qlineargradient-pad.png b/doc/src/images/qlineargradient-pad.png
new file mode 100644
index 0000000000..d77eb3dc3d
--- /dev/null
+++ b/doc/src/images/qlineargradient-pad.png
Binary files differ
diff --git a/doc/src/images/qlineargradient-reflect.png b/doc/src/images/qlineargradient-reflect.png
new file mode 100644
index 0000000000..dd12665051
--- /dev/null
+++ b/doc/src/images/qlineargradient-reflect.png
Binary files differ
diff --git a/doc/src/images/qlineargradient-repeat.png b/doc/src/images/qlineargradient-repeat.png
new file mode 100644
index 0000000000..e38203c438
--- /dev/null
+++ b/doc/src/images/qlineargradient-repeat.png
Binary files differ
diff --git a/doc/src/images/qlinef-angle-identicaldirection.png b/doc/src/images/qlinef-angle-identicaldirection.png
new file mode 100644
index 0000000000..18d632321b
--- /dev/null
+++ b/doc/src/images/qlinef-angle-identicaldirection.png
Binary files differ
diff --git a/doc/src/images/qlinef-angle-oppositedirection.png b/doc/src/images/qlinef-angle-oppositedirection.png
new file mode 100644
index 0000000000..bf52cfe011
--- /dev/null
+++ b/doc/src/images/qlinef-angle-oppositedirection.png
Binary files differ
diff --git a/doc/src/images/qlinef-bounded.png b/doc/src/images/qlinef-bounded.png
new file mode 100644
index 0000000000..136dd50304
--- /dev/null
+++ b/doc/src/images/qlinef-bounded.png
Binary files differ
diff --git a/doc/src/images/qlinef-unbounded.png b/doc/src/images/qlinef-unbounded.png
new file mode 100644
index 0000000000..75ead98ff2
--- /dev/null
+++ b/doc/src/images/qlinef-unbounded.png
Binary files differ
diff --git a/doc/src/images/qmatrix-combinedtransformation.png b/doc/src/images/qmatrix-combinedtransformation.png
new file mode 100644
index 0000000000..f791bfa917
--- /dev/null
+++ b/doc/src/images/qmatrix-combinedtransformation.png
Binary files differ
diff --git a/doc/src/images/qmatrix-simpletransformation.png b/doc/src/images/qmatrix-simpletransformation.png
new file mode 100644
index 0000000000..dde8f4bc58
--- /dev/null
+++ b/doc/src/images/qmatrix-simpletransformation.png
Binary files differ
diff --git a/doc/src/images/qpainter-affinetransformations.png b/doc/src/images/qpainter-affinetransformations.png
new file mode 100644
index 0000000000..fe2f9a072b
--- /dev/null
+++ b/doc/src/images/qpainter-affinetransformations.png
Binary files differ
diff --git a/doc/src/images/qpainter-arc.png b/doc/src/images/qpainter-arc.png
new file mode 100644
index 0000000000..8cb9cec96b
--- /dev/null
+++ b/doc/src/images/qpainter-arc.png
Binary files differ
diff --git a/doc/src/images/qpainter-basicdrawing.png b/doc/src/images/qpainter-basicdrawing.png
new file mode 100644
index 0000000000..3be48c8737
--- /dev/null
+++ b/doc/src/images/qpainter-basicdrawing.png
Binary files differ
diff --git a/doc/src/images/qpainter-chord.png b/doc/src/images/qpainter-chord.png
new file mode 100644
index 0000000000..a8090861a0
--- /dev/null
+++ b/doc/src/images/qpainter-chord.png
Binary files differ
diff --git a/doc/src/images/qpainter-clock.png b/doc/src/images/qpainter-clock.png
new file mode 100644
index 0000000000..3634754161
--- /dev/null
+++ b/doc/src/images/qpainter-clock.png
Binary files differ
diff --git a/doc/src/images/qpainter-compositiondemo.png b/doc/src/images/qpainter-compositiondemo.png
new file mode 100644
index 0000000000..40f62c75be
--- /dev/null
+++ b/doc/src/images/qpainter-compositiondemo.png
Binary files differ
diff --git a/doc/src/images/qpainter-concentriccircles.png b/doc/src/images/qpainter-concentriccircles.png
new file mode 100644
index 0000000000..4889dcd76d
--- /dev/null
+++ b/doc/src/images/qpainter-concentriccircles.png
Binary files differ
diff --git a/doc/src/images/qpainter-ellipse.png b/doc/src/images/qpainter-ellipse.png
new file mode 100644
index 0000000000..e7e78c3dac
--- /dev/null
+++ b/doc/src/images/qpainter-ellipse.png
Binary files differ
diff --git a/doc/src/images/qpainter-gradients.png b/doc/src/images/qpainter-gradients.png
new file mode 100644
index 0000000000..b7bc6a3270
--- /dev/null
+++ b/doc/src/images/qpainter-gradients.png
Binary files differ
diff --git a/doc/src/images/qpainter-line.png b/doc/src/images/qpainter-line.png
new file mode 100644
index 0000000000..5f1cd97eff
--- /dev/null
+++ b/doc/src/images/qpainter-line.png
Binary files differ
diff --git a/doc/src/images/qpainter-painterpaths.png b/doc/src/images/qpainter-painterpaths.png
new file mode 100644
index 0000000000..0762ca93f3
--- /dev/null
+++ b/doc/src/images/qpainter-painterpaths.png
Binary files differ
diff --git a/doc/src/images/qpainter-path.png b/doc/src/images/qpainter-path.png
new file mode 100644
index 0000000000..3570b16d7a
--- /dev/null
+++ b/doc/src/images/qpainter-path.png
Binary files differ
diff --git a/doc/src/images/qpainter-pathstroking.png b/doc/src/images/qpainter-pathstroking.png
new file mode 100644
index 0000000000..ab73c6ae01
--- /dev/null
+++ b/doc/src/images/qpainter-pathstroking.png
Binary files differ
diff --git a/doc/src/images/qpainter-pie.png b/doc/src/images/qpainter-pie.png
new file mode 100644
index 0000000000..78039013e0
--- /dev/null
+++ b/doc/src/images/qpainter-pie.png
Binary files differ
diff --git a/doc/src/images/qpainter-polygon.png b/doc/src/images/qpainter-polygon.png
new file mode 100644
index 0000000000..3b6ea3c797
--- /dev/null
+++ b/doc/src/images/qpainter-polygon.png
Binary files differ
diff --git a/doc/src/images/qpainter-rectangle.png b/doc/src/images/qpainter-rectangle.png
new file mode 100644
index 0000000000..05fdc88300
--- /dev/null
+++ b/doc/src/images/qpainter-rectangle.png
Binary files differ
diff --git a/doc/src/images/qpainter-rotation.png b/doc/src/images/qpainter-rotation.png
new file mode 100644
index 0000000000..6e24a0e040
--- /dev/null
+++ b/doc/src/images/qpainter-rotation.png
Binary files differ
diff --git a/doc/src/images/qpainter-roundrect.png b/doc/src/images/qpainter-roundrect.png
new file mode 100644
index 0000000000..876a277811
--- /dev/null
+++ b/doc/src/images/qpainter-roundrect.png
Binary files differ
diff --git a/doc/src/images/qpainter-scale.png b/doc/src/images/qpainter-scale.png
new file mode 100644
index 0000000000..4fe582eb13
--- /dev/null
+++ b/doc/src/images/qpainter-scale.png
Binary files differ
diff --git a/doc/src/images/qpainter-text.png b/doc/src/images/qpainter-text.png
new file mode 100644
index 0000000000..e95c965d7b
--- /dev/null
+++ b/doc/src/images/qpainter-text.png
Binary files differ
diff --git a/doc/src/images/qpainter-translation.png b/doc/src/images/qpainter-translation.png
new file mode 100644
index 0000000000..b3716ca3f6
--- /dev/null
+++ b/doc/src/images/qpainter-translation.png
Binary files differ
diff --git a/doc/src/images/qpainter-vectordeformation.png b/doc/src/images/qpainter-vectordeformation.png
new file mode 100644
index 0000000000..aff95f404c
--- /dev/null
+++ b/doc/src/images/qpainter-vectordeformation.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-addellipse.png b/doc/src/images/qpainterpath-addellipse.png
new file mode 100644
index 0000000000..98f85174ef
--- /dev/null
+++ b/doc/src/images/qpainterpath-addellipse.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-addpolygon.png b/doc/src/images/qpainterpath-addpolygon.png
new file mode 100644
index 0000000000..d36bde8ada
--- /dev/null
+++ b/doc/src/images/qpainterpath-addpolygon.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-addrectangle.png b/doc/src/images/qpainterpath-addrectangle.png
new file mode 100644
index 0000000000..be9283e46d
--- /dev/null
+++ b/doc/src/images/qpainterpath-addrectangle.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-addtext.png b/doc/src/images/qpainterpath-addtext.png
new file mode 100644
index 0000000000..803a9581ac
--- /dev/null
+++ b/doc/src/images/qpainterpath-addtext.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-arcto.png b/doc/src/images/qpainterpath-arcto.png
new file mode 100644
index 0000000000..fe60b08d31
--- /dev/null
+++ b/doc/src/images/qpainterpath-arcto.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-construction.png b/doc/src/images/qpainterpath-construction.png
new file mode 100644
index 0000000000..4beeba1dd8
--- /dev/null
+++ b/doc/src/images/qpainterpath-construction.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-cubicto.png b/doc/src/images/qpainterpath-cubicto.png
new file mode 100644
index 0000000000..465bfeca29
--- /dev/null
+++ b/doc/src/images/qpainterpath-cubicto.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-demo.png b/doc/src/images/qpainterpath-demo.png
new file mode 100644
index 0000000000..ceeed2f170
--- /dev/null
+++ b/doc/src/images/qpainterpath-demo.png
Binary files differ
diff --git a/doc/src/images/qpainterpath-example.png b/doc/src/images/qpainterpath-example.png
new file mode 100644
index 0000000000..f2bd359aba
--- /dev/null
+++ b/doc/src/images/qpainterpath-example.png
Binary files differ
diff --git a/doc/src/images/qpen-bevel.png b/doc/src/images/qpen-bevel.png
new file mode 100644
index 0000000000..8a30779e3b
--- /dev/null
+++ b/doc/src/images/qpen-bevel.png
Binary files differ
diff --git a/doc/src/images/qpen-custom.png b/doc/src/images/qpen-custom.png
new file mode 100644
index 0000000000..a2a038abe0
--- /dev/null
+++ b/doc/src/images/qpen-custom.png
Binary files differ
diff --git a/doc/src/images/qpen-dash.png b/doc/src/images/qpen-dash.png
new file mode 100644
index 0000000000..67082c3758
--- /dev/null
+++ b/doc/src/images/qpen-dash.png
Binary files differ
diff --git a/doc/src/images/qpen-dashdot.png b/doc/src/images/qpen-dashdot.png
new file mode 100644
index 0000000000..64b384660f
--- /dev/null
+++ b/doc/src/images/qpen-dashdot.png
Binary files differ
diff --git a/doc/src/images/qpen-dashdotdot.png b/doc/src/images/qpen-dashdotdot.png
new file mode 100644
index 0000000000..ff1b2e69cd
--- /dev/null
+++ b/doc/src/images/qpen-dashdotdot.png
Binary files differ
diff --git a/doc/src/images/qpen-dashpattern.png b/doc/src/images/qpen-dashpattern.png
new file mode 100644
index 0000000000..e33cf58d49
--- /dev/null
+++ b/doc/src/images/qpen-dashpattern.png
Binary files differ
diff --git a/doc/src/images/qpen-demo.png b/doc/src/images/qpen-demo.png
new file mode 100644
index 0000000000..3ea5108802
--- /dev/null
+++ b/doc/src/images/qpen-demo.png
Binary files differ
diff --git a/doc/src/images/qpen-dot.png b/doc/src/images/qpen-dot.png
new file mode 100644
index 0000000000..54e81c9469
--- /dev/null
+++ b/doc/src/images/qpen-dot.png
Binary files differ
diff --git a/doc/src/images/qpen-flat.png b/doc/src/images/qpen-flat.png
new file mode 100644
index 0000000000..06e2195f73
--- /dev/null
+++ b/doc/src/images/qpen-flat.png
Binary files differ
diff --git a/doc/src/images/qpen-miter.png b/doc/src/images/qpen-miter.png
new file mode 100644
index 0000000000..025e003979
--- /dev/null
+++ b/doc/src/images/qpen-miter.png
Binary files differ
diff --git a/doc/src/images/qpen-roundcap.png b/doc/src/images/qpen-roundcap.png
new file mode 100644
index 0000000000..77b22b2bab
--- /dev/null
+++ b/doc/src/images/qpen-roundcap.png
Binary files differ
diff --git a/doc/src/images/qpen-roundjoin.png b/doc/src/images/qpen-roundjoin.png
new file mode 100644
index 0000000000..155e2aa8cc
--- /dev/null
+++ b/doc/src/images/qpen-roundjoin.png
Binary files differ
diff --git a/doc/src/images/qpen-solid.png b/doc/src/images/qpen-solid.png
new file mode 100644
index 0000000000..e042b18017
--- /dev/null
+++ b/doc/src/images/qpen-solid.png
Binary files differ
diff --git a/doc/src/images/qpen-square.png b/doc/src/images/qpen-square.png
new file mode 100644
index 0000000000..ebc5d1e329
--- /dev/null
+++ b/doc/src/images/qpen-square.png
Binary files differ
diff --git a/doc/src/images/qradialgradient-pad.png b/doc/src/images/qradialgradient-pad.png
new file mode 100644
index 0000000000..6c1a6cb268
--- /dev/null
+++ b/doc/src/images/qradialgradient-pad.png
Binary files differ
diff --git a/doc/src/images/qradialgradient-reflect.png b/doc/src/images/qradialgradient-reflect.png
new file mode 100644
index 0000000000..5122b180b1
--- /dev/null
+++ b/doc/src/images/qradialgradient-reflect.png
Binary files differ
diff --git a/doc/src/images/qradialgradient-repeat.png b/doc/src/images/qradialgradient-repeat.png
new file mode 100644
index 0000000000..aa639b7779
--- /dev/null
+++ b/doc/src/images/qradialgradient-repeat.png
Binary files differ
diff --git a/doc/src/images/qrect-diagram-one.png b/doc/src/images/qrect-diagram-one.png
new file mode 100644
index 0000000000..a893be277a
--- /dev/null
+++ b/doc/src/images/qrect-diagram-one.png
Binary files differ
diff --git a/doc/src/images/qrect-diagram-three.png b/doc/src/images/qrect-diagram-three.png
new file mode 100644
index 0000000000..84fb35be6c
--- /dev/null
+++ b/doc/src/images/qrect-diagram-three.png
Binary files differ
diff --git a/doc/src/images/qrect-diagram-two.png b/doc/src/images/qrect-diagram-two.png
new file mode 100644
index 0000000000..e19caacc34
--- /dev/null
+++ b/doc/src/images/qrect-diagram-two.png
Binary files differ
diff --git a/doc/src/images/qrect-diagram-zero.png b/doc/src/images/qrect-diagram-zero.png
new file mode 100644
index 0000000000..90e3db0c41
--- /dev/null
+++ b/doc/src/images/qrect-diagram-zero.png
Binary files differ
diff --git a/doc/src/images/qrectf-diagram-one.png b/doc/src/images/qrectf-diagram-one.png
new file mode 100644
index 0000000000..842289ce07
--- /dev/null
+++ b/doc/src/images/qrectf-diagram-one.png
Binary files differ
diff --git a/doc/src/images/qrectf-diagram-three.png b/doc/src/images/qrectf-diagram-three.png
new file mode 100644
index 0000000000..e05106a7e1
--- /dev/null
+++ b/doc/src/images/qrectf-diagram-three.png
Binary files differ
diff --git a/doc/src/images/qrectf-diagram-two.png b/doc/src/images/qrectf-diagram-two.png
new file mode 100644
index 0000000000..192d00df79
--- /dev/null
+++ b/doc/src/images/qrectf-diagram-two.png
Binary files differ
diff --git a/doc/src/images/qt-colors.png b/doc/src/images/qt-colors.png
new file mode 100644
index 0000000000..331c97523f
--- /dev/null
+++ b/doc/src/images/qt-colors.png
Binary files differ
diff --git a/doc/src/images/qt-fillrule-oddeven.png b/doc/src/images/qt-fillrule-oddeven.png
new file mode 100644
index 0000000000..f39d1056f5
--- /dev/null
+++ b/doc/src/images/qt-fillrule-oddeven.png
Binary files differ
diff --git a/doc/src/images/qt-fillrule-winding.png b/doc/src/images/qt-fillrule-winding.png
new file mode 100644
index 0000000000..8018248331
--- /dev/null
+++ b/doc/src/images/qt-fillrule-winding.png
Binary files differ
diff --git a/doc/src/images/qtabletevent-tilt.png b/doc/src/images/qtabletevent-tilt.png
new file mode 100644
index 0000000000..546d7daadb
--- /dev/null
+++ b/doc/src/images/qtabletevent-tilt.png
Binary files differ
diff --git a/doc/src/images/qtextblock-sequence.png b/doc/src/images/qtextblock-sequence.png
new file mode 100644
index 0000000000..85f208e1fb
--- /dev/null
+++ b/doc/src/images/qtextblock-sequence.png
Binary files differ
diff --git a/doc/src/images/qtextfragment-split.png b/doc/src/images/qtextfragment-split.png
new file mode 100644
index 0000000000..c232c408c9
--- /dev/null
+++ b/doc/src/images/qtextfragment-split.png
Binary files differ
diff --git a/doc/src/images/qtextframe-style.png b/doc/src/images/qtextframe-style.png
new file mode 100644
index 0000000000..6151307803
--- /dev/null
+++ b/doc/src/images/qtextframe-style.png
Binary files differ
diff --git a/doc/src/images/qtransform-combinedtransformation.png b/doc/src/images/qtransform-combinedtransformation.png
new file mode 100644
index 0000000000..df1e226746
--- /dev/null
+++ b/doc/src/images/qtransform-combinedtransformation.png
Binary files differ
diff --git a/doc/src/images/qtransform-combinedtransformation2.png b/doc/src/images/qtransform-combinedtransformation2.png
new file mode 100644
index 0000000000..c037a0d565
--- /dev/null
+++ b/doc/src/images/qtransform-combinedtransformation2.png
Binary files differ
diff --git a/doc/src/images/qtransform-simpletransformation.png b/doc/src/images/qtransform-simpletransformation.png
new file mode 100644
index 0000000000..743e4e3e07
--- /dev/null
+++ b/doc/src/images/qtransform-simpletransformation.png
Binary files differ
diff --git a/doc/src/images/qurl-authority.png b/doc/src/images/qurl-authority.png
new file mode 100644
index 0000000000..54de2a792e
--- /dev/null
+++ b/doc/src/images/qurl-authority.png
Binary files differ
diff --git a/doc/src/images/qurl-authority2.png b/doc/src/images/qurl-authority2.png
new file mode 100644
index 0000000000..fe8d4d87b2
--- /dev/null
+++ b/doc/src/images/qurl-authority2.png
Binary files differ
diff --git a/doc/src/images/qurl-authority3.png b/doc/src/images/qurl-authority3.png
new file mode 100644
index 0000000000..242063e935
--- /dev/null
+++ b/doc/src/images/qurl-authority3.png
Binary files differ
diff --git a/doc/src/images/qurl-fragment.png b/doc/src/images/qurl-fragment.png
new file mode 100644
index 0000000000..e93a252e7a
--- /dev/null
+++ b/doc/src/images/qurl-fragment.png
Binary files differ
diff --git a/doc/src/images/qurl-ftppath.png b/doc/src/images/qurl-ftppath.png
new file mode 100644
index 0000000000..d88df4922b
--- /dev/null
+++ b/doc/src/images/qurl-ftppath.png
Binary files differ
diff --git a/doc/src/images/qurl-mailtopath.png b/doc/src/images/qurl-mailtopath.png
new file mode 100644
index 0000000000..34ec153b74
--- /dev/null
+++ b/doc/src/images/qurl-mailtopath.png
Binary files differ
diff --git a/doc/src/images/qurl-querystring.png b/doc/src/images/qurl-querystring.png
new file mode 100644
index 0000000000..7c3309a5ac
--- /dev/null
+++ b/doc/src/images/qurl-querystring.png
Binary files differ
diff --git a/doc/src/images/rintersect.png b/doc/src/images/rintersect.png
new file mode 100644
index 0000000000..025ea93e67
--- /dev/null
+++ b/doc/src/images/rintersect.png
Binary files differ
diff --git a/doc/src/images/rsubtract.png b/doc/src/images/rsubtract.png
new file mode 100644
index 0000000000..add6405a2d
--- /dev/null
+++ b/doc/src/images/rsubtract.png
Binary files differ
diff --git a/doc/src/images/runion.png b/doc/src/images/runion.png
new file mode 100644
index 0000000000..5b11e8c13e
--- /dev/null
+++ b/doc/src/images/runion.png
Binary files differ
diff --git a/doc/src/images/rxor.png b/doc/src/images/rxor.png
new file mode 100644
index 0000000000..f86e6d628c
--- /dev/null
+++ b/doc/src/images/rxor.png
Binary files differ
diff --git a/doc/src/images/stliterators1.png b/doc/src/images/stliterators1.png
new file mode 100644
index 0000000000..6d71e4712f
--- /dev/null
+++ b/doc/src/images/stliterators1.png
Binary files differ
diff --git a/doc/src/images/texttable-merge.png b/doc/src/images/texttable-merge.png
new file mode 100644
index 0000000000..3b32239a42
--- /dev/null
+++ b/doc/src/images/texttable-merge.png
Binary files differ
diff --git a/doc/src/images/texttable-split.png b/doc/src/images/texttable-split.png
new file mode 100644
index 0000000000..2fa17b85a3
--- /dev/null
+++ b/doc/src/images/texttable-split.png
Binary files differ
diff --git a/doc/src/images/threadsandobjects.png b/doc/src/images/threadsandobjects.png
new file mode 100644
index 0000000000..8357d2532a
--- /dev/null
+++ b/doc/src/images/threadsandobjects.png
Binary files differ
diff --git a/doc/src/snippets/code/doc_src_groups.cpp b/doc/src/snippets/code/doc_src_groups.cpp
new file mode 100644
index 0000000000..2d5fd97280
--- /dev/null
+++ b/doc/src/snippets/code/doc_src_groups.cpp
@@ -0,0 +1,66 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+//! [0]
+void QPen::setStyle(Qt::PenStyle style)
+{
+ detach(); // detach from common data
+ d->style = style; // set the style member
+}
+
+void QPen::detach()
+{
+ if (d->ref != 1) {
+ ... // perform a deep copy
+ }
+}
+//! [0]
+
+
+//! [1]
+QPixmap p1, p2;
+p1.load("image.bmp");
+p2 = p1; // p1 and p2 share data
+
+QPainter paint;
+paint.begin(&p2); // cuts p2 loose from p1
+paint.drawText(0,50, "Hi");
+paint.end();
+//! [1]