doc/src/getting-started/examples.qdoc
changeset 0 1918ee327afb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/src/getting-started/examples.qdoc	Mon Jan 11 14:00:40 2010 +0000
@@ -0,0 +1,1149 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 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: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 Technology Preview License Agreement accompanying
+** this package.
+**
+** 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.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+    \page examples-overview.html
+    \raw HTML
+    <script>
+    document.location.href = "examples.html";
+    </script>
+    \endraw
+    Click this \l{Qt Examples}{link} if you don't get redirected.
+*/
+
+/*!
+    \page examples.html
+    \title Qt Examples
+    \brief The example programs provided with Qt.
+
+    \previouspage Tutorials
+    \contentspage How to Learn Qt
+    \nextpage Qt Demonstrations
+
+    Qt is supplied with a variety of examples that cover almost every aspect
+    of development. They are not all designed to be impressive when you run
+    them, but their source code is carefully written to show good Qt
+    programming practices. You can launch any of these programs from the
+    \l{Examples and Demos Launcher} application.
+
+    These examples are ordered by functional area, but many examples often
+    use features from many parts of Qt to highlight one area in particular.
+    If you are new to Qt, you should probably start by going through the
+    \l{Tutorials} before you have a look at the
+    \l{mainwindows/application}{Application} example.
+
+    In addition to the examples and the tutorial, Qt includes a
+    \l{Qt Demonstrations}{selection of demos} that deliberately show off
+    Qt's features. You might want to look at these as well.
+
+    \table
+    \row
+    \o{2,1} \l{Widgets Examples}{\bold Widgets}
+    \o{2,1} \l{Dialog Examples}{\bold Dialogs}
+    \row
+    \o \image widget-examples.png
+    \o 
+    Qt comes with a large range of standard widgets that users of modern
+    applications have come to expect. You can also develop your own custom
+    widgets and controls, and use them alongside standard widgets.
+
+    It is even possible to provide custom styles and themes for widgets that can
+    be used to change the appearance of standard widgets and appropriately
+    written custom widgets.
+
+    \o \image dialog-examples.png Dialogs
+    \o 
+    Qt includes standard dialogs for many common operations, such as file
+    selection, printing, and color selection.
+
+    Custom dialogs can also be created for specialized modal or modeless
+    interactions with users.
+
+    \row
+    \o{2,1} \l{Main Window Examples}{\bold{Main Windows}}
+    \o{2,1} \l{Layout Examples}{\bold Layouts}
+
+    \row
+    \o \image mainwindow-examples.png MainWindows
+    \o All the standard features of application main windows are provided by Qt.
+
+    Main windows can have pull down menus, tool bars, and dock windows. These
+    separate forms of user input are unified in an integrated action system that
+    also supports keyboard shortcuts and accelerator keys in menu items.
+
+    \o \image layout-examples.png Layouts
+    \o 
+    Qt uses a layout-based approach to widget management. Widgets are arranged in
+    the optimal positions in windows based on simple layout rules, leading to a
+    consistent look and feel.
+
+    Custom layouts can be used to provide more control over the positions and
+    sizes of child widgets.
+
+    \row
+    \o{2,1} \l{Item Views Examples}{\bold{Item Views}}
+    \o{2,1} \l{Graphics View Examples}{\bold{Graphics View}}
+    \row
+    \o \image itemview-examples.png ItemViews
+    \o
+    Item views are widgets that typically display data sets. Qt 4's model/view
+    framework lets you handle large data sets by separating the underlying data
+    from the way it is represented to the user, and provides support for
+    customized rendering through the use of delegates.
+
+    \o \image graphicsview-examples.png GraphicsView
+    \o
+    Qt is provided with a comprehensive canvas through the GraphicsView
+    classes.
+
+    \row
+    \o{2,1} \l{Painting Examples}{\bold{Painting}}
+    \o{2,1} \l{Rich Text Examples}{\bold{Rich Text}}
+    \row
+    \o \image painting-examples.png Painting
+    \o
+    Qt's painting system is able to render vector graphics, images, and outline
+    font-based text with sub-pixel accuracy accuracy using anti-aliasing to
+    improve rendering quality.
+
+    \o \image richtext-examples.png RichText
+    \o
+    Qt provides powerful document-oriented rich text engine that supports Unicode
+    and right-to-left scripts. Documents can be manipulated using a cursor-based
+    API, and their contents can be imported and exported as both HTML and in a
+    custom XML format.
+
+    \row
+    \o{2,1} \l{Desktop Examples}{\bold Desktop}
+    \o{2,1} \l{Drag and Drop Examples}{\bold{Drag and Drop}}
+    \row
+    \o \image desktop-examples.png
+    \o
+    Qt provides features to enable applications to integrate with the user's
+    preferred desktop environment.
+
+    Features such as system tray icons, access to the desktop widget, and
+    support for desktop services can be used to improve the appearance of
+    applications and take advantage of underlying desktop facilities.
+
+    \o \image draganddrop-examples.png DragAndDrop
+    \o
+    Qt supports native drag and drop on all platforms via an extensible
+    MIME-based system that enables applications to send data to each other in the
+    most appropriate formats.
+
+    Drag and drop can also be implemented for internal use by applications.
+
+    \row
+    \o{2,1} \l{Threading and Concurrent Programming Examples}{\bold{Threading and Concurrent Programming}}
+    \o{2,1} \l{Tools Examples}{\bold{Tools}}
+    \row
+    \o \image thread-examples.png
+    \o
+    Qt 4 makes it easier than ever to write multithreaded applications. More
+    classes have been made usable from non-GUI threads, and the signals and slots
+    mechanism can now be used to communicate between threads.
+
+    The QtConcurrent namespace includes a collection of classes and functions
+    for straightforward concurrent programming.
+
+    \o \image tool-examples.png Tools
+    \o
+    Qt is equipped with a range of capable tool classes, from containers and
+    iterators to classes for string handling and manipulation.
+
+    Other classes provide application infrastructure support, handling plugin
+    loading and managing configuration files.
+
+    \row
+    \o{2,1} \l{Network Examples}{\bold{Network}}
+    \o{2,1} \l{Inter-Process Communication Examples}{\bold{Inter-Process Communication}}
+    \row
+    \o \image network-examples.png Network
+    \o
+    Qt is provided with an extensive set of network classes to support both
+    client-based and server side network programming.
+
+    \o \image ipc-examples.png IPC
+    \o
+
+    \row
+    \o{2,1} \l{OpenGL Examples}{\bold OpenGL}
+    \o{2,1} \l{Multimedia Examples}{\bold{Multimedia Framework}}
+    \row
+    \o \image opengl-examples.png OpenGL
+    \o
+    Qt provides support for integration with OpenGL implementations on all
+    platforms, giving developers the opportunity to display hardware accelerated
+    3D graphics alongside a more conventional user interface.
+
+    \o \image phonon-examples.png
+    \o
+    Qt provides low-level audio support on linux,windows and mac platforms by default and
+    an audio plugin API to allow developers to implement there own audio support for
+    custom devices and platforms.
+
+    The Phonon Multimedia Framework brings multimedia support to Qt applications.
+
+    \row
+    \o{2,1} \l{SQL Examples}{\bold{SQL}}
+    \o{2,1} \l{XML Examples}{\bold{XML}}
+    \row
+    \o \image sql-examples.png SQL
+    \o
+    Qt provides extensive database interoperability, with support for products
+    from both open source and proprietary vendors.
+
+    SQL support is integrated with Qt's model/view architecture, making it easier
+    to provide GUI integration for your database applications.
+
+    \o \image xml-examples.png XML
+    \o
+    XML parsing and handling is supported through SAX and DOM compliant APIs
+    as well as streaming classes.
+
+    The XQuery/XPath and XML Schema engines in the QtXmlPatterns modules
+    provide classes for querying XML files and custom data models.
+
+    \row
+    \o{2,1} \l{Qt Designer Examples}{\bold{Qt Designer}}
+    \o{2,1} \l{UiTools Examples}{\bold UiTools}
+    \row
+    \o \image designer-examples.png Designer
+    \o
+    Qt Designer is a capable graphical user interface designer that lets you
+    create and configure forms without writing code. GUIs created with
+    Qt Designer can be compiled into an application or created at run-time.
+
+    \o \image uitools-examples.png UiTools
+    \o
+
+    \row
+    \o{2,1} \l{Qt Linguist Examples}{\bold{Qt Linguist}}
+    \o{2,1} \l{Qt Script Examples}{\bold{Qt Script}}
+    \row
+    \o \image linguist-examples.png QtLinguist
+    \o
+    Internationalization is a core feature of Qt.
+
+    \o \image qtscript-examples.png
+    \o
+    Qt is provided with a powerful embedded scripting environment through the QtScript
+    classes.
+
+    \row
+    \o{2,1} \l{WebKit Examples}{\bold WebKit}
+    \o{2,1} \l{Help System Examples}{\bold{Help System}}
+    \row
+    \o \image webkit-examples.png
+    \o
+    Qt provides an integrated Web browser component based on WebKit, the popular
+    open source browser engine.
+
+    \o \image assistant-examples.png HelpSystem
+    \o
+    Support for interactive help is provided by the Qt Assistant application.
+    Developers can take advantages of the facilities it offers to display
+    specially-prepared documentation to users of their applications.
+
+    \row
+    \o{2,1} \l{State Machine Examples}{\bold{State Machine}}
+    \o{2,1} \l{Animation Framework Examples}{\bold{Animation Framework}}
+    \row
+    \o \image statemachine-examples.png
+    \o
+    Qt provides a powerful hierarchical finite state machine through the Qt State
+    Machine classes.
+
+    \o \image animation-examples.png
+    \o
+    These examples show to to use the \l{The Animation Framework}{animation framework}
+    to build highly animated, high-performance GUIs.
+
+    \row
+    \o{2,1} \l{Gestures Examples}{\bold{Gestures}}
+    \o{2,1} \l{D-Bus Examples}{\bold{D-Bus}}
+    \row
+    \o \image gestures-examples.png
+    \o
+    Applications can be written to respond to gestures as a natural input method.
+    These examples show how to enable support for standard and custom gestures in
+    applications.
+
+    \o \image dbus-examples.png D-Bus
+    \o
+    D-Bus is an inter-process communication protocol for Unix/Linux systems.
+    These examples demonstrate how to write application that communicate with
+    each other.
+    \row
+    \o{2,1} \l{Qt for Embedded Linux Examples}{\bold{Qt for Embedded Linux}}
+    \o{2,1} \l{ActiveQt Examples}{\bold ActiveQt}
+    \row
+    \o \image qt-embedded-examples.png
+    \o
+    Systems with limited resources, specialized hardware, and small
+    screens require special attention.
+
+    \o \image activeqt-examples.png ActiveQt
+    \o
+    These examples demonstrate how to write ActiveX controls and control servers
+    with Qt, and how to use ActiveX controls and COM objects in a Qt application.
+
+    \row
+    \o{2,1} \l{Qt Quarterly}{\bold{Qt Quarterly}}
+    \row
+    \o \image qq-thumbnail.png QtQuarterly
+    \o
+    One more valuable source for examples and explanations of Qt
+    features is the archive of the \l {Qt Quarterly}.
+
+    \endtable
+
+    \omit
+    In the list below, examples marked with an asterisk (*) are fully
+    documented. Eventually, all the examples will be fully documented,
+    but sometimes we include an example before we have time to write
+    about it.
+    \endomit
+*/
+
+/*!
+    \page examples-widgets.html
+    \title Widgets Examples
+
+    \contentspage Qt Examples
+    \nextpage Dialog Examples
+
+    \image widget-examples.png
+
+    Qt comes with a large range of standard widgets that users of modern
+    applications have come to expect.
+
+    You can also develop your own custom widgets and controls, and use them
+    alongside standard widgets.
+
+    It is even possible to provide custom styles and themes for widgets that can
+    be used to change the appearance of standard widgets and appropriately
+    written custom widgets.
+
+    \list
+    \o \l{widgets/analogclock}{Analog Clock}\raisedaster
+    \o \l{widgets/calculator}{Calculator}\raisedaster
+    \o \l{widgets/calendarwidget}{Calendar Widget}\raisedaster
+    \o \l{widgets/charactermap}{Character Map}\raisedaster
+    \o \l{widgets/codeeditor}{Code Editor}\raisedaster
+    \o \l{widgets/digitalclock}{Digital Clock}\raisedaster
+    \o \l{widgets/groupbox}{Group Box}\raisedaster
+    \o \l{widgets/icons}{Icons}\raisedaster
+    \o \l{widgets/imageviewer}{Image Viewer}\raisedaster
+    \o \l{widgets/lineedits}{Line Edits}\raisedaster
+    \o \l{widgets/movie}{Movie}
+    \o \l{widgets/scribble}{Scribble}\raisedaster
+    \o \l{widgets/shapedclock}{Shaped Clock}\raisedaster
+    \o \l{widgets/sliders}{Sliders}\raisedaster
+    \o \l{widgets/spinboxes}{Spin Boxes}\raisedaster
+    \o \l{widgets/styles}{Styles}\raisedaster
+    \o \l{widgets/stylesheet}{Style Sheet}\raisedaster
+    \o \l{widgets/tablet}{Tablet}\raisedaster
+    \o \l{widgets/tetrix}{Tetrix}\raisedaster
+    \o \l{widgets/tooltips}{Tooltips}\raisedaster
+    \o \l{widgets/wiggly}{Wiggly}\raisedaster
+    \o \l{widgets/windowflags}{Window Flags}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-dialogs.html
+    \title Dialog Examples
+
+    \previouspage Widgets Examples
+    \contentspage Qt Examples
+    \nextpage Main Window Examples
+
+    \image dialog-examples.png
+
+    Qt includes standard dialogs for many common operations, such as file
+    selection, printing, and color selection.
+
+    Custom dialogs can also be created for specialized modal or modeless
+    interactions with users.
+
+    \list
+    \o \l{dialogs/classwizard}{Class Wizard}\raisedaster
+    \o \l{dialogs/configdialog}{Config Dialog}
+    \o \l{dialogs/extension}{Extension}\raisedaster
+    \o \l{dialogs/findfiles}{Find Files}\raisedaster
+    \o \l{dialogs/licensewizard}{License Wizard}\raisedaster
+    \o \l{dialogs/standarddialogs}{Standard Dialogs}
+    \o \l{dialogs/tabdialog}{Tab Dialog}\raisedaster
+    \o \l{dialogs/trivialwizard}{Trivial Wizard}
+    \endlist
+*/
+
+/*!
+    \page examples-mainwindow.html
+    \title Main Window Examples
+
+    \previouspage Dialog Examples
+    \contentspage Qt Examples
+    \nextpage Layout Examples
+
+    \image mainwindow-examples.png
+
+    All the standard features of application main windows are provided by Qt.
+
+    Main windows can have pull down menus, tool bars, and dock windows. These
+    separate forms of user input are unified in an integrated action system that
+    also supports keyboard shortcuts and accelerator keys in menu items.
+
+    \list
+    \o \l{mainwindows/application}{Application}\raisedaster
+    \o \l{mainwindows/dockwidgets}{Dock Widgets}\raisedaster
+    \o \l{mainwindows/mdi}{MDI}
+    \o \l{mainwindows/menus}{Menus}\raisedaster
+    \o \l{mainwindows/recentfiles}{Recent Files}
+    \o \l{mainwindows/sdi}{SDI}
+    \endlist
+*/
+
+/*!
+    \page examples-layouts.html
+    \title Layout Examples
+    
+    \previouspage Main Window Examples
+    \contentspage Qt Examples
+    \nextpage Item Views Examples
+
+    \image layout-examples.png
+
+    Qt uses a layout-based approach to widget management. Widgets are arranged in
+    the optimal positions in windows based on simple layout rules, leading to a
+    consistent look and feel.
+
+    Custom layouts can be used to provide more control over the positions and
+    sizes of child widgets.
+
+    \list
+    \o \l{layouts/basiclayouts}{Basic Layouts}\raisedaster
+    \o \l{layouts/borderlayout}{Border Layout}
+    \o \l{layouts/dynamiclayouts}{Dynamic Layouts}
+    \o \l{layouts/flowlayout}{Flow Layout}
+    \endlist
+*/
+
+/*!
+    \page examples-itemviews.html
+    \title Item Views Examples
+
+    \previouspage Layout Examples
+    \contentspage Qt Examples
+    \nextpage Graphics View Examples
+
+    \image itemview-examples.png
+
+    Item views are widgets that typically display data sets. Qt 4's model/view
+    framework lets you handle large data sets by separating the underlying data
+    from the way it is represented to the user, and provides support for
+    customized rendering through the use of delegates.
+
+    \list
+    \o \l{itemviews/addressbook}{Address Book}\raisedaster
+    \o \l{itemviews/basicsortfiltermodel}{Basic Sort/Filter Model}
+    \o \l{itemviews/chart}{Chart}
+    \o \l{itemviews/coloreditorfactory}{Color Editor Factory}\raisedaster
+    \o \l{itemviews/combowidgetmapper}{Combo Widget Mapper}\raisedaster
+    \o \l{itemviews/customsortfiltermodel}{Custom Sort/Filter Model}\raisedaster
+    \o \l{itemviews/dirview}{Dir View}
+    \o \l{itemviews/editabletreemodel}{Editable Tree Model}\raisedaster
+    \o \l{itemviews/fetchmore}{Fetch More}\raisedaster
+    \o \l{itemviews/frozencolumn}{Frozen Column}\raisedaster
+    \o \l{itemviews/pixelator}{Pixelator}\raisedaster
+    \o \l{itemviews/puzzle}{Puzzle}
+    \o \l{itemviews/simpledommodel}{Simple DOM Model}\raisedaster
+    \o \l{itemviews/simpletreemodel}{Simple Tree Model}\raisedaster
+    \o \l{itemviews/simplewidgetmapper}{Simple Widget Mapper}\raisedaster
+    \o \l{itemviews/spinboxdelegate}{Spin Box Delegate}\raisedaster
+    \o \l{itemviews/stardelegate}{Star Delegate}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-graphicsview.html
+    \title Graphics View Examples
+
+    \previouspage Item Views Examples
+    \contentspage Qt Examples
+    \nextpage Painting Examples
+
+    \image graphicsview-examples.png
+
+    Qt is provided with a comprehensive canvas through the GraphicsView
+    classes.
+
+    These examples demonstrate the fundamental aspects of canvas programming
+    with Qt.
+
+    \list
+    \o \l{graphicsview/collidingmice}{Colliding Mice}\raisedaster
+    \o \l{graphicsview/diagramscene}{Diagram Scene}\raisedaster
+    \o \l{graphicsview/dragdroprobot}{Drag and Drop Robot}
+    \o \l{graphicsview/elasticnodes}{Elastic Nodes}
+    \o \l{graphicsview/portedasteroids}{Ported Asteroids}
+    \o \l{graphicsview/portedcanvas}{Ported Canvas}
+    \endlist
+*/
+
+/*!
+    \page examples-painting.html
+    \title Painting Examples
+
+    \previouspage Graphics View Examples
+    \contentspage Qt Examples
+    \nextpage Rich Text Examples
+
+    \image painting-examples.png
+
+    Qt's painting system is able to render vector graphics, images, and outline
+    font-based text with sub-pixel accuracy accuracy using anti-aliasing to
+    improve rendering quality.
+
+    These examples show the most common techniques that are used when painting
+    with Qt, from basic concepts such as drawing simple primitives to the use of
+    transformations.
+
+    \list
+    \o \l{painting/basicdrawing}{Basic Drawing}\raisedaster
+    \o \l{painting/concentriccircles}{Concentric Circles}\raisedaster
+    \o \l{painting/fontsampler}{Font Sampler}
+    \o \l{painting/imagecomposition}{Image Composition}\raisedaster
+    \o \l{painting/painterpaths}{Painter Paths}\raisedaster
+    \o \l{painting/svggenerator}{SVG Generator}\raisedaster
+    \o \l{painting/svgviewer}{SVG Viewer}
+    \o \l{painting/transformations}{Transformations}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-richtext.html
+    \title Rich Text Examples
+
+    \previouspage Painting Examples
+    \contentspage Qt Examples
+    \nextpage Desktop Examples
+
+    \image richtext-examples.png
+
+    Qt provides powerful document-oriented rich text engine that supports Unicode
+    and right-to-left scripts. Documents can be manipulated using a cursor-based
+    API, and their contents can be imported and exported as both HTML and in a
+    custom XML format.
+
+    \list
+    \o \l{richtext/calendar}{Calendar}\raisedaster
+    \o \l{richtext/orderform}{Order Form}\raisedaster
+    \o \l{richtext/syntaxhighlighter}{Syntax Highlighter}\raisedaster
+    \o \l{richtext/textobject}{Text Object}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-desktop.html
+    \title Desktop Examples
+
+    \previouspage Rich Text Examples
+    \contentspage Qt Examples
+    \nextpage Drag and Drop Examples
+
+    \image desktop-examples.png
+
+    Qt provides features to enable applications to integrate with the user's
+    preferred desktop environment.
+
+    Features such as system tray icons, access to the desktop widget, and
+    support for desktop services can be used to improve the appearance of
+    applications and take advantage of underlying desktop facilities.
+
+    \list
+    \o \l{desktop/screenshot}{Screenshot}\raisedaster
+    \o \l{desktop/systray}{System Tray}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-draganddrop.html
+    \title Drag and Drop Examples
+
+    \previouspage Desktop Examples
+    \contentspage Qt Examples
+    \nextpage Threading and Concurrent Programming Examples
+
+    \image draganddrop-examples.png
+
+    Qt supports native drag and drop on all platforms via an extensible
+    MIME-based system that enables applications to send data to each other in the
+    most appropriate formats.
+
+    Drag and drop can also be implemented for internal use by applications.
+
+    \list
+    \o \l{draganddrop/delayedencoding}{Delayed Encoding}\raisedaster
+    \o \l{draganddrop/draggableicons}{Draggable Icons}
+    \o \l{draganddrop/draggabletext}{Draggable Text}
+    \o \l{draganddrop/dropsite}{Drop Site}
+    \o \l{draganddrop/fridgemagnets}{Fridge Magnets}\raisedaster
+    \o \l{draganddrop/puzzle}{Drag and Drop Puzzle}
+    \endlist
+*/
+
+/*!
+    \page examples-threadandconcurrent.html
+    \title Threading and Concurrent Programming Examples
+    
+    \previouspage Drag and Drop Examples
+    \contentspage Qt Examples
+    \nextpage Tools Examples
+    
+    \image thread-examples.png
+
+    Qt 4 makes it easier than ever to write multithreaded applications. More
+    classes have been made usable from non-GUI threads, and the signals and slots
+    mechanism can now be used to communicate between threads.
+
+    Additionally, it is now possible to move objects between threads.
+
+    \list
+    \o \l{threads/queuedcustomtype}{Queued Custom Type}\raisedaster
+    \o \l{threads/mandelbrot}{Mandelbrot}\raisedaster
+    \o \l{threads/semaphores}{Semaphores}\raisedaster
+    \o \l{threads/waitconditions}{Wait Conditions}\raisedaster
+    \endlist
+
+    The QtConcurrent namespace includes a collection of classes and functions
+    for straightforward concurrent programming.
+
+    These examples show how to apply the basic techniques of concurrent
+    programming to simple problems.
+
+    \list
+    \o \l{qtconcurrent/imagescaling}{QtConcurrent Asynchronous Image Scaling}
+    \o \l{qtconcurrent/map}{QtConcurrent Map}
+    \o \l{qtconcurrent/progressdialog}{QtConcurrent Progress Dialog}
+    \o \l{qtconcurrent/runfunction}{QtConcurrent Run Function}
+    \o \l{qtconcurrent/wordcount}{QtConcurrent Word Count}
+    \endlist
+*/
+
+/*!
+    \page examples.tools.html
+    \title Tools Examples
+
+    \previouspage Threading and Concurrent Programming Examples
+    \contentspage Qt Examples
+    \nextpage Network Examples
+
+    \image tool-examples.png
+
+    Qt is equipped with a range of capable tool classes, from containers and
+    iterators to classes for string handling and manipulation.
+
+    Other classes provide application infrastructure support, handling plugin
+    loading and managing configuration files.
+
+    \list
+    \o \l{tools/codecs}{Codecs}
+    \o \l{tools/completer}{Completer}\raisedaster
+    \o \l{tools/customcompleter}{Custom Completer}\raisedaster
+    \o \l{tools/customtype}{Custom Type}\raisedaster
+    \o \l{tools/customtypesending}{Custom Type Sending}\raisedaster
+    \o \l{tools/echoplugin}{Echo Plugin}\raisedaster
+    \o \l{tools/i18n}{I18N}
+    \o \l{tools/plugandpaint}{Plug & Paint}\raisedaster
+    \o Plug & Paint Plugins: \l{tools/plugandpaintplugins/basictools}{Basic Tools}\raisedaster
+       and \l{tools/plugandpaintplugins/extrafilters}{Extra Filters}\raisedaster
+    \o \l{tools/regexp}{RegExp}
+    \o \l{tools/settingseditor}{Settings Editor}
+    \o \l{tools/styleplugin}{Style Plugin}\raisedaster
+    \o \l{tools/treemodelcompleter}{Tree Model Completer}\raisedaster
+    \o \l{tools/undoframework}{Undo Framework}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-network.html
+    \title Network Examples
+
+    \previouspage Tools Examples
+    \contentspage Qt Examples
+    \nextpage Inter-Process Communication Examples
+
+    \image network-examples.png
+
+    Qt is provided with an extensive set of network classes to support both
+    client-based and server side network programming.
+
+    These examples demonstrate the fundamental aspects of network programming
+    with Qt.
+
+    \list
+    \o  \l{network/blockingfortuneclient}{Blocking Fortune Client}\raisedaster
+    \o  \l{network/broadcastreceiver}{Broadcast Receiver}
+    \o  \l{network/broadcastsender}{Broadcast Sender}
+    \o  \l{network/network-chat}{Network Chat}
+    \o  \l{network/fortuneclient}{Fortune Client}\raisedaster
+    \o  \l{network/fortuneserver}{Fortune Server}\raisedaster
+    \o  \l{network/ftp}{FTP}\raisedaster
+    \o  \l{network/http}{HTTP}
+    \o  \l{network/loopback}{Loopback}
+    \o  \l{network/threadedfortuneserver}{Threaded Fortune Server}\raisedaster
+    \o  \l{network/torrent}{Torrent}
+    \o  \l{network/googlesuggest}{Google Suggest}
+    \endlist
+*/
+
+/*!
+    \page examples-ipc.html
+    \title Inter-Process Communication Examples
+
+    \previouspage Network Examples
+    \contentspage Qt Examples
+    \nextpage OpenGL Examples
+    
+    \image ipc-examples.png
+
+    \list
+    \o \l{ipc/localfortuneclient}{Local Fortune Client}\raisedaster
+    \o \l{ipc/localfortuneserver}{Local Fortune Server}\raisedaster
+    \o \l{ipc/sharedmemory}{Shared Memory}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-opengl.html
+    \title OpenGL Examples
+
+    \previouspage Inter-Process Communication Examples
+    \contentspage Qt Examples
+    \nextpage Multimedia Examples
+
+    \image opengl-examples.png
+
+    Qt provides support for integration with OpenGL implementations on all
+    platforms, giving developers the opportunity to display hardware accelerated
+    3D graphics alongside a more conventional user interface.
+
+    These examples demonstrate the basic techniques used to take advantage of
+    OpenGL in Qt applications.
+
+    \list
+    \o \l{opengl/2dpainting}{2D Painting}\raisedaster
+    \o \l{opengl/framebufferobject}{Framebuffer Object}
+    \o \l{opengl/framebufferobject2}{Framebuffer Object 2}
+    \o \l{opengl/grabber}{Grabber}
+    \o \l{opengl/hellogl}{Hello GL}\raisedaster
+    \o \l{opengl/overpainting}{Overpainting}\raisedaster
+    \o \l{opengl/pbuffers}{Pixel Buffers}
+    \o \l{opengl/pbuffers2}{Pixel Buffers 2}
+    \o \l{opengl/samplebuffers}{Sample Buffers}
+    \o \l{opengl/textures}{Textures}
+    \endlist
+*/
+
+/*!
+    \page examples-multimedia.html
+    \title Multimedia Examples
+
+    \previouspage OpenGL Examples
+    \contentspage Qt Examples
+    \nextpage SQL Examples
+
+    \image phonon-examples.png
+
+    \section1 Multimedia
+
+    Qt provides low-level audio support on linux,windows and mac platforms by default and
+    an audio plugin API to allow developers to implement there own audio support for
+    custom devices and platforms.
+
+    These examples demonstrate the basic techniques used to take advantage of
+    Audio API in Qt applications.
+
+    \list
+    \o \l{multimedia/audiodevices}{Audio Devices}
+    \o \l{multimedia/audiooutput}{Audio Output}
+    \o \l{multimedia/audioinput}{Audio Input}
+    \endlist
+
+    \section1 Video Output
+
+    \list
+    \o \l{multimedia/videowidget}{Video Widget}\raisedaster
+    \o \l{multimedia/videographicsitem}{Video Graphics Item}
+    \endlist
+
+    \section1 Phonon
+
+    The Phonon Multimedia Framework brings multimedia support to Qt applications.
+
+    The examples and demonstrations provided show how to play music and movies
+    using the Phonon API.
+
+    \list
+    \o \l{phonon/capabilities}{Capabilities}\raisedaster
+    \o \l{phonon/qmusicplayer}{Music Player}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-sql.html
+    \title SQL Examples
+
+    \previouspage Multimedia Examples
+    \contentspage Qt Examples
+    \nextpage XML Examples
+
+    \image sql-examples.png
+
+    Qt provides extensive database interoperability, with support for products
+    from both open source and proprietary vendors.
+
+    SQL support is integrated with Qt's model/view architecture, making it easier
+    to provide GUI integration for your database applications.
+
+    \list
+    \o \l{sql/cachedtable}{Cached Table}\raisedaster
+    \o \l{sql/drilldown}{Drill Down}\raisedaster
+    \o \l{sql/querymodel}{Query Model}
+    \o \l{sql/relationaltablemodel}{Relational Table Model}
+    \o \l{sql/tablemodel}{Table Model}
+    \o \l{sql/sqlwidgetmapper}{SQL Widget Mapper}\raisedaster
+    \endlist
+*/
+
+
+/*!
+    \page examples-xml.html
+    \title XML Examples
+
+    \previouspage SQL Examples
+    \contentspage Qt Examples
+    \nextpage Qt Designer Examples
+
+    \image xml-examples.png XML
+
+    XML parsing and handling is supported through SAX and DOM compliant APIs
+    as well as streaming classes.
+
+    \list
+    \o \l{xml/dombookmarks}{DOM Bookmarks}
+    \o \l{xml/saxbookmarks}{SAX Bookmarks}
+    \o \l{xml/streambookmarks}{QXmlStream Bookmarks}\raisedaster
+    \o \l{xml/rsslisting}{RSS-Listing}
+    \o \l{xml/xmlstreamlint}{XML Stream Lint Example}\raisedaster
+    \endlist
+
+    The XQuery/XPath and XML Schema engines in the QtXmlPatterns modules
+    provide classes for querying XML files and custom data models.
+
+    \list
+    \o \l{xmlpatterns/recipes}{Recipes}
+    \o \l{xmlpatterns/filetree}{File System Example}
+    \o \l{xmlpatterns/qobjectxmlmodel}{QObject XML Model Example}
+    \o \l{xmlpatterns/xquery/globalVariables}{C++ Source Code Analyzer Example}
+    \o \l{xmlpatterns/trafficinfo}{Traffic Info}\raisedaster
+    \o \l{xmlpatterns/schema}{XML Schema Validation}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-designer.html
+    \title Qt Designer Examples
+
+    \previouspage XML Examples
+    \contentspage Qt Examples
+    \nextpage UiTools Examples
+
+    \image designer-examples.png QtDesigner
+
+    Qt Designer is a capable graphical user interface designer that lets you
+    create and configure forms without writing code. GUIs created with
+    Qt Designer can be compiled into an application or created at run-time.
+
+    \list
+    \o \l{designer/calculatorbuilder}{Calculator Builder}\raisedaster
+    \o \l{designer/calculatorform}{Calculator Form}\raisedaster
+    \o \l{designer/customwidgetplugin}{Custom Widget Plugin}\raisedaster
+    \o \l{designer/taskmenuextension}{Task Menu Extension}\raisedaster
+    \o \l{designer/containerextension}{Container Extension}\raisedaster
+    \o \l{designer/worldtimeclockbuilder}{World Time Clock Builder}\raisedaster
+    \o \l{designer/worldtimeclockplugin}{World Time Clock Plugin}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-uitools.html
+    \title UiTools Examples
+
+    \previouspage Qt Designer Examples
+    \contentspage Qt Examples
+    \nextpage Qt Linguist Examples
+
+    \image uitools-examples.png UiTools
+
+    \list
+    \o \l{uitools/multipleinheritance}{Multiple Inheritance}\raisedaster
+    \o \l{uitools/textfinder}{Text Finder}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-linguist.html
+    \title Qt Linguist Examples
+
+    \previouspage UiTools Examples
+    \contentspage Qt Examples
+    \nextpage Qt Script Examples
+
+    \image linguist-examples.png
+
+    Internationalization is a core feature of Qt. These examples show how to
+    access translation and localization facilities at run-time.
+
+    \list
+    \o \l{linguist/hellotr}{Hello tr()}\raisedaster
+    \o \l{linguist/arrowpad}{Arrow Pad}\raisedaster
+    \o \l{linguist/trollprint}{Troll Print}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-script.html
+    \title Qt Script Examples
+
+    \previouspage Qt Linguist Examples
+    \contentspage Qt Examples
+    \nextpage WebKit Examples
+
+    \image qtscript-examples.png QtScript
+
+    Qt is provided with a powerful embedded scripting environment through the QtScript
+    classes.
+
+    These examples demonstrate the fundamental aspects of scripting applications
+    with Qt.
+
+    \list
+    \o \l{script/calculator}{Calculator}\raisedaster
+    \o \l{script/context2d}{Context2D}\raisedaster
+    \o \l{script/defaultprototypes}{Default Prototypes}\raisedaster
+    \o \l{script/helloscript}{Hello Script}\raisedaster
+    \o \l{script/qstetrix}{Qt Script Tetrix}\raisedaster
+    \o \l{script/customclass}{Custom Script Class}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-webkit.html
+    \title WebKit Examples
+
+    \previouspage Qt Script Examples
+    \contentspage Qt Examples
+    \nextpage Help System Examples
+
+    \image webkit-examples.png WebKit
+
+    Qt provides an integrated Web browser component based on WebKit, the popular
+    open source browser engine.
+
+    These examples and demonstrations show a range of different uses for WebKit,
+    from displaying Web pages within a Qt user interface to an implementation of
+    a basic function Web browser.
+
+    \list
+    \o \l{webkit/previewer}{Previewer}\raisedaster
+    \o \l{webkit/formextractor}{Form Extractor}
+    \o \l{webkit/googlechat}{Google Chat}
+    \o \l{webkit/fancybrowser}{Fancy Browser}
+    \endlist
+*/
+
+/*!
+    \page examples-helpsystem.html
+    \title Help System Examples
+
+    \previouspage WebKit Examples
+    \contentspage Qt Examples
+    \nextpage State Machine Examples
+
+    \image assistant-examples.png HelpSystem
+
+    Support for interactive help is provided by the Qt Assistant application.
+    Developers can take advantages of the facilities it offers to display
+    specially-prepared documentation to users of their applications.
+
+    \list
+    \o \l{help/simpletextviewer}{Simple Text Viewer}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-statemachine.html
+    \title State Machine Examples
+
+    \previouspage Help System Examples
+    \contentspage Qt Examples
+    \nextpage Animation Framework Examples
+
+    \image statemachine-examples.png StateMachine
+
+    Qt provides a powerful hierarchical finite state machine through the Qt State
+    Machine classes.
+
+    These examples demonstrate the fundamental aspects of implementing
+    Statecharts with Qt.
+
+    \list
+    \o \l{statemachine/eventtransitions}{Event Transitions}\raisedaster
+    \o \l{statemachine/factorial}{Factorial States}\raisedaster
+    \o \l{statemachine/pingpong}{Ping Pong States}\raisedaster
+    \o \l{statemachine/rogue}{Rogue}\raisedaster
+    \o \l{statemachine/trafficlight}{Traffic Light}\raisedaster
+    \o \l{statemachine/twowaybutton}{Two-way Button}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-animation.html
+    \title Animation Framework Examples
+
+    \previouspage State Machine Examples
+    \contentspage Qt Examples
+    \nextpage Gestures Examples
+
+    \image animation-examples.png Animation
+
+    \list
+	\o \l{animation/animatedtiles}{Animated Tiles}
+	\o \l{animation/appchooser}{Application Chooser}
+	\o \l{animation/easing}{Easing Curves}
+    \o \l{animation/moveblocks}{Move Blocks}\raisedaster
+	\o \l{animation/states}{States}
+    \o \l{animation/stickman}{Stick man}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-gestures.html
+    \title Gestures Examples
+
+    \previouspage Animation Framework Examples
+    \contentspage Qt Examples
+    \nextpage D-Bus Examples
+
+    The API of the gesture framework is not yet finalized and
+    still subject to change.
+
+    \list
+    \o \l{gestures/imagegestures}{Image Gestures}
+    \endlist
+*/
+
+/*!
+    \page examples-dbus.html
+    \title D-Bus Examples
+
+    \previouspage Gestures Examples
+    \contentspage Qt Examples
+    \nextpage Qt for Embedded Linux Examples
+
+    \list
+    \o \l{dbus/dbus-chat}{Chat}
+    \o \l{dbus/complexpingpong}{Complex Ping Pong}
+    \o \l{dbus/listnames}{List Names}
+    \o \l{dbus/pingpong}{Ping Pong}
+    \o \l{dbus/remotecontrolledcar}{Remote Controlled Car} 
+    \endlist
+*/
+
+/*!
+    \page examples-embeddedlinux.html
+    \title Qt for Embedded Linux Examples
+
+    \previouspage D-Bus Examples
+    \contentspage Qt Examples
+    \nextpage ActiveQt Examples
+
+    \image qt-embedded-examples.png QtEmbedded
+
+    These examples show how to take advantage of features specifically designed
+    for use on systems with limited resources, specialized hardware, and small
+    screens.
+
+    \list
+    \o \l{qws/svgalib}{Accelerated Graphics Driver}\raisedaster
+    \o \l{qws/dbscreen}{Double Buffered Graphics Driver}\raisedaster
+    \o \l{qws/mousecalibration}{Mouse Calibration}\raisedaster
+    \o \l{qws/simpledecoration}{Simple Decoration}\raisedaster
+    \endlist
+*/
+
+/*!
+    \page examples-activeqt.html
+    \title ActiveQt Examples
+
+    \previouspage Qt for Embedded Linux Examples
+    \contentspage Qt Examples
+    \nextpage Qt Quarterly
+    
+    \image activeqt-examples.png ActiveQt
+
+    \list
+    \o \l{activeqt/comapp}{COM App}\raisedaster
+    \o \l{Dot Net Example (ActiveQt)}{Dot Net}\raisedaster
+    \o \l{activeqt/hierarchy}{Hierarchy}\raisedaster
+    \o \l{activeqt/menus}{Menus}\raisedaster
+    \o \l{activeqt/multiple}{Multiple}\raisedaster
+    \o \l{activeqt/opengl}{OpenGL}\raisedaster
+    \o \l{activeqt/qutlook}{Qutlook}\raisedaster
+    \o \l{activeqt/simple}{Simple}\raisedaster
+    \o \l{activeqt/webbrowser}{Web Browser}\raisedaster
+    \o \l{activeqt/wrapper}{Wrapper}\raisedaster
+    \endlist
+*/