summaryrefslogtreecommitdiffstats
path: root/doc/PyQt.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/PyQt.sgml')
-rw-r--r--doc/PyQt.sgml5807
1 files changed, 5807 insertions, 0 deletions
diff --git a/doc/PyQt.sgml b/doc/PyQt.sgml
new file mode 100644
index 0000000..253db19
--- /dev/null
+++ b/doc/PyQt.sgml
@@ -0,0 +1,5807 @@
+<!DOCTYPE Article PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
+<Article>
+<ArtHeader>
+ <Title>Python Bindings for Qt (3.18.1)</Title>
+ <Author>
+ <FirstName>Phil</FirstName>
+ <Surname>Thompson</Surname>
+ </Author>
+ <Abstract>
+ <Para>
+ This document describes a set of Python bindings for the Qt widget set.
+ Contact the author at <Email>phil@riverbankcomputing.co.uk</Email>.
+ </Para>
+ </Abstract>
+</ArtHeader>
+
+
+<Sect1><Title>Introduction</Title>
+<Para>
+PyQt is a set of Python bindings for the Qt toolkit and available for all
+platforms supported by Qt, including Windows, Linux, UNIX, MacOS/X and embedded
+systems such as the Sharp Zaurus and the Compaq iPAQ. They have been tested
+against Qt versions 1.43 to 3.3.6, Qt Non-commercial, Qtopia 1.5.0, and Python
+versions 1.5 to 2.4.2. Qt/Embedded v3 is not supported. Qt v4 is supported
+by PyQt v4.
+</Para>
+
+<Para>
+PyQt is available under the GPL license for use with the GPL version of Qt, a
+a commercial license for use with the commercial version of Qt, a
+non-commercial license for use with the non-commercial version of Qt v2, and an
+educational license for use with the educational version of Qt.
+</Para>
+
+<Para>
+There is also an evaluation version of PyQt for Windows. This must be used
+with the corresponding evaluation version of Qt.
+</Para>
+
+<Para>
+PyQt is built using SIP (a tool for generating Python extension modules for
+C++ class libraries). SIP v4.6 or later must be installed in order to build
+and run this version of PyQt.
+</Para>
+
+<Para>
+PyQt for MacOS/X requires Qt v3.1.0 or later and Python v2.3 or later.
+</Para>
+
+<Para>
+The bindings are implemented as a number of Python modules
+</Para>
+
+<ItemizedList>
+<ListItem>
+<Para>
+<Literal>qt</Literal> is the main module and contains the core classes and most
+user interface widgets.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtaxcontainer</Literal> contains a sub-set of the classes implemented
+in Qt's QAxContainer module, part of Qt's ActiveQt framework.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtcanvas</Literal> contains the classes implemented in Qt's Canvas
+module.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtgl</Literal> contains the classes implemented in Qt's OpenGL module.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtnetwork</Literal> contains the classes implemented in Qt's Network
+module.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtpe</Literal> contains the classes implemented in Qtopia (originally
+called the Qt Palmtop Environment). It is only supported with Qt/Embedded.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtsql</Literal> contains the classes implemented in Qt's SQL module.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qttable</Literal> contains the classes implemented in Qt's Table
+module.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtui</Literal> contains the classes implemented in Qt's qui library.
+These allow GUIs to be created directly from Qt Designer's
+<Literal>.ui</Literal> files.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtxml</Literal> contains the classes implemented in Qt's XML module.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>qtext</Literal> contains useful third-party classes that are not part
+of Qt. At the moment it contains bindings for QScintilla, the port to Qt of
+the Scintilla programmer's editor class.
+</Para>
+</ListItem>
+</ItemizedList>
+
+<Para>
+PyQt also includes the <Literal>pyuic</Literal> and
+<Literal>pylupdate</Literal> utilities which correspond to the Qt
+<Literal>uic</Literal> and <Literal>lupdate</Literal> utilities.
+<Literal>pyuic</Literal> converts the GUI designs created with Qt Designer to
+executable Python code. <Literal>pylupdate</Literal> scans Python code,
+extracts all strings that are candidates for internationalisation, and creates
+an XML file for use by Qt Linguist.
+</Para>
+
+<Sect2><Title>Changes</Title>
+<Para>
+The changes visible to the Python programmer in this release are as follows.
+</Para>
+<ItemizedList>
+
+<ListItem>
+<Para>
+This version requires SIP v4.4 (or later).
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+Concatenating Python strings and <Literal>QString</Literal>s is now supported.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>QString</Literal> now supports the <Literal>*</Literal> and
+<Literal>*=</Literal> operators that behave as they do for Python strings.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>QString</Literal> is more interoperable with Python string and unicode
+objects. For example they can be passed as arguments to
+<Literal>open()</Literal> and to most (but not all) string methods.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>QPopupMenu</Literal> (and sub-classes) instances now transfer
+ownership of the menu to Python in the call to <Literal>exec_loop()</Literal>.
+This means the menu's resources are all released when the Python wrapper is
+garbage collected without needing to call
+<Literal>QObject.deleteLater()</Literal>.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>QObject.sender()</Literal> now handles Python signals.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+The missing <Literal>MacintoshVersion</Literal> enum has been added.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+<Literal>PYQT_BUILD</Literal> has been removed.
+</Para>
+</ListItem>
+
+<ListItem>
+<Para>
+The convention for converting between a C/C++ null pointer and Python's
+<Literal>None</Literal> object has now been universally applied. In previous
+versions a null pointer to, for example, a Qt list container would often be
+converted to an empty list rather than <Literal>None</Literal>.
+</Para>
+</ListItem>
+
+</ItemizedList>
+</Sect2>
+</Sect1>
+
+
+<Sect1><Title>Other PyQt Goodies</Title>
+<Sect2><Title>Using Qt Designer</Title>
+<Para>
+Qt Designer is a GPL'ed GUI design editor provided by Trolltech as part of Qt.
+It generates an XML description of a GUI design. Qt includes
+<Literal>uic</Literal> which generates C++ code from that XML.
+</Para>
+
+<Para>
+PyQt includes <Literal>pyuic</Literal> which generates Python code from the
+same XML. The Python code is self contained and can be executed immediately.
+</Para>
+
+<Para>
+It is sometimes useful to be able to include some specific Python code in the
+output generated by <Literal>pyuic</Literal>. For example, if you are using
+custom widgets, <Literal>pyuic</Literal> has no way of knowing the name of the
+Python module containing the widget and so cannot generate the required
+<Literal>import</Literal> statement. To help get around this,
+<Literal>pyuic</Literal> will extract any lines entered in the
+<Literal>Comment</Literal> field of Qt Designer's
+<Literal>Form Settings</Literal> dialog that begin with
+<Literal>Python:</Literal> and copies them to the generated output.
+</Para>
+
+<Para>
+Here's a simple example showing the contents of the <Literal>Comment</Literal>
+field.
+</Para>
+
+<ProgramListing>
+This comment will be ignored by pyuic.
+Python:
+Python:# Import our custom widget.
+Python:from foo import bar
+</ProgramListing>
+
+<Para>
+Here's the corresponding output from <Literal>pyuic</Literal>.
+</Para>
+
+<ProgramListing>
+from qt import *
+
+# Import our custom widget.
+from foo import bar
+</ProgramListing>
+
+<Para>
+Thanks to Christian Bird, <Literal>pyuic</Literal> will extract Python code
+entered using Qt Designer to implement slots. In Qt Designer, when you need to
+edit a slot and the source editor appears, enter Python code between the curly
+braces. Don't worry about the correct starting indent level, each line is
+prepended with a correct indentation.
+</Para>
+
+<Para>
+Make sure that the <Literal>ui.h</Literal> file is in the same directory as the
+<Literal>.ui</Literal> file when using <Literal>pyuic</Literal>. The
+<Literal>.ui</Literal> file implies the name of the <Literal>.ui.h</Literal>
+file so there is no need to specify it on the command line.
+</Para>
+
+<Para>
+Here's an example of a simple slot.
+</Para>
+
+<ProgramListing>
+void DebMainWindowFrm::browsePushButtonClicked()
+{
+if self.debugging:
+ QMessageBox.critical(self, "Event", "browse pushbutton was clicked!")
+}
+</ProgramListing>
+
+<Para>
+Here is the resulting code when <Literal>pyuic</Literal> is run.
+</Para>
+
+<ProgramListing>
+class DebMainWindowFrm(QMainWindow):
+ ...stuff...
+ def browsePushButtonClicked(self):
+ if self.debugging:
+ QMessageBox.critical(self, "Event", "browse pushbutton was clicked!")
+</ProgramListing>
+
+<Para>
+Note that indenting is as normal and that <Literal>self</Literal> and all other
+parameters passed to the slot are available.
+</Para>
+
+<Para>
+If you use this, you will need to turn off all of the fancy options for the C++
+editor in Designer as it tries to force C++ syntax and that's naturally
+annoying when trying to code in Python.
+</Para>
+</Sect2>
+
+<Sect2><Title>Using Qt Linguist</Title>
+<Para>
+Qt includes the <Literal>lupdate</Literal> program which parses C++ source
+files converting calls to the <Literal>QT_TR_NOOP()</Literal> and
+<Literal>QT_TRANSLATE_NOOP()</Literal> macros to <Literal>.ts</Literal>
+language source files. The <Literal>lrelease</Literal> program is then used to
+generate <Literal>.qm</Literal> binary language files that are distributed with
+your application.
+</Para>
+
+<Para>
+Thanks to Detlev Offenbach, PyQt includes the <Literal>pylupdate</Literal>
+program. This generates the same <Literal>.ts</Literal> language source files
+from your PyQt source files.
+</Para>
+</Sect2>
+</Sect1>
+
+
+<Sect1><Title>Deploying Commercial PyQt Applications</Title>
+<Para>
+When deploying commercial PyQt applications it is necessary to discourage users
+from accessing the underlying PyQt modules for themselves. A user that used
+the modules shipped with your application to develop new applications would
+themselves be considered a developer and would need their own commercial Qt and
+PyQt licenses.
+</Para>
+
+<Para>
+One solution to this problem is the
+<ULink url="http://www.riverbankcomputing.co.uk/vendorid/">VendorID</ULink>
+package. This allows you to build Python extension modules that can only be
+imported by a digitally signed custom interpreter. The package enables you to
+create such an interpreter with your application embedded within it. The
+result is an interpreter that can only run your application, and PyQt modules
+that can only be imported by that interpreter. You can use the package to
+similarly restrict access to any extension module.
+</Para>
+
+<Para>
+In order to build PyQt with support for the VendorID package, pass the
+<Literal>-i</Literal> command line flag to <Literal>configure.py</Literal>.
+</Para>
+</Sect1>
+
+<Sect1><Title><Literal>pyqtconfig</Literal> and Build System Support</Title>
+<Para>
+The SIP build system (ie. the <Literal>sipconfig</Literal> module) is described
+in the SIP documentation. PyQt includes the <Literal>pyqtconfig</Literal>
+module that can be used by configuration scripts of other bindings that are
+built on top of PyQt.
+</Para>
+
+<Para>
+The <Literal>pyqtconfig</Literal> module contains the following classes:
+</Para>
+
+<VariableList>
+<VarListEntry>
+<Term><Literal>Configuration(sipconfig.Configuration)</Literal></Term>
+<ListItem>
+<Para>
+This class encapsulates additional configuration values, specific to PyQt, that
+can be accessed as instance variables.
+</Para>
+
+<Para>
+The following configuration values are provided (in addition to those provided
+by the <Literal>sipconfig.Configuration</Literal> class):
+</Para>
+<VariableList>
+
+<VarListEntry>
+<Term><Literal>pyqt_bin_dir</Literal></Term>
+<ListItem>
+<Para>
+The name of the directory containing the <Literal>pyuic</Literal> and
+<Literal>pylupdate</Literal> executables.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_config_args</Literal></Term>
+<ListItem>
+<Para>
+The command line passed to <Literal>configure.py</Literal> when PyQt was
+configured.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_mod_dir</Literal></Term>
+<ListItem>
+<Para>
+The name of the directory containing the PyQt modules.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_modules</Literal></Term>
+<ListItem>
+<Para>
+A string containing the names of the PyQt modules that were installed.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qt_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qt</Literal> module and which should be added to those needed by any
+module that imports the <Literal>qt</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtaxcontainer_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtaxcontainer</Literal> module and which should be added to those
+needed by any module that imports the <Literal>qtaxcontainer</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtcanvas_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtcanvas</Literal> module and which should be added to those needed by
+any module that imports the <Literal>qtcanvas</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtext_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtext</Literal> module and which should be added to those needed by
+any module that imports the <Literal>qtext</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtgl_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtgl</Literal> module and which should be added to those needed by any
+module that imports the <Literal>qtgl</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtnetwork_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtnetwork</Literal> module and which should be added to those needed
+by any module that imports the <Literal>qtnetwork</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtsql_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtsql</Literal> module and which should be added to those needed by
+any module that imports the <Literal>qtsql</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qttable_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qttable</Literal> module and which should be added to those needed by
+any module that imports the <Literal>qttable</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtui_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtui</Literal> module and which should be added to those needed by any
+module that imports the <Literal>qtui</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_qtxml_sip_flags</Literal></Term>
+<ListItem>
+<Para>
+A string of the SIP flags used to generate the code for the
+<Literal>qtxml</Literal> module and which should be added to those needed by
+any module that imports the <Literal>qtxml</Literal> module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_sip_dir</Literal></Term>
+<ListItem>
+<Para>
+The name of the base directory where the <Literal>.sip</Literal> files for each
+of the PyQt modules is installed. A sub-directory exists with the same name as
+the module.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_version</Literal></Term>
+<ListItem>
+<Para>
+The PyQt version as a 3 part hexadecimal number (eg. v3.10 is represented as
+<Literal>0x030a00</Literal>).
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>pyqt_version_str</Literal></Term>
+<ListItem>
+<Para>
+The PyQt version as a string. For development snapshots it will start with
+<Literal>snapshot-</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtModuleMakefile(sipconfig.SIPModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qt</Literal> module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtAxContainerModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtaxcontainer</Literal>
+module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtCanvasModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtcanvas</Literal>
+module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtExtModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtext</Literal> module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtGLModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtgl</Literal> module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtNetworkModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtnetwork</Literal>
+module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtTableModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qttable</Literal>
+module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtSQLModuleMakefile(QtTableModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtsql</Literal> module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtUIModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtui</Literal> module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+<VarListEntry>
+<Term><Literal>QtXMLModuleMakefile(QtModuleMakefile)</Literal></Term>
+<ListItem>
+<Para>
+The Makefile class for modules that import the <Literal>qtxml</Literal> module.
+</Para>
+<VariableList>
+<VarListEntry>
+<Term><Literal>finalise(self)</Literal></Term>
+<ListItem>
+<Para>
+This is a reimplementation of <Literal>sipconfig.Makefile.finalise()</Literal>.
+</Para>
+<Para></Para><Para></Para>
+</ListItem>
+</VarListEntry>
+</VariableList>
+</ListItem>
+</VarListEntry>
+
+</VariableList>
+</Sect1>
+<Sect1><Title>Things to be Aware Of</Title>
+<Sect2><Title>super and Wrapped Classes</Title>
+<Para>
+Internally PyQt implements a lazy technique for attribute lookup where
+attributes are only placed in type and instance dictionaries when they are
+first referenced. This technique is needed to reduce the time taken to import
+large modules such as PyQt.
+</Para>
+
+<Para>
+In most circumstances this technique is transparent to an application. The
+exception is when <Literal>super</Literal> is used with a PyQt class. The way
+that <Literal>super</Literal> is currently implemented means that the lazy
+lookup is bypassed resulting in <Literal>AttributeError</Literal> exceptions
+unless the attribute has been previously referenced.
+</Para>
+
+<Para>
+Note that this restriction applies to any class wrapped by SIP and not just
+PyQt.
+</Para>
+</Sect2>
+
+
+<Sect2><Title>Python Strings, Qt Strings and Unicode</Title>
+<Para>
+Unicode support was added to Qt in v2.0 and to Python in v1.6. In Qt, Unicode
+support is implemented using the <Literal>QString</Literal> class. It is
+important to understand that <Literal>QString</Literal>s, Python string objects
+and Python Unicode objects are all different but conversions between them are
+automatic in almost all cases and easy to achieve manually when needed.
+</Para>
+
+<Para>
+Whenever PyQt expects a <Literal>QString</Literal> as a function argument, a
+Python string object or a Python Unicode object can be provided instead, and
+PyQt will do the necessary conversion automatically.
+</Para>
+
+<Para>
+You may also manually convert Python string and Unicode objects to
+<Literal>QString</Literal>s by using the <Literal>QString</Literal> constructor
+as demonstrated in the following code fragment.
+</Para>
+
+<ProgramListing>
+qs1 = QString('Converted Python string object')
+qs2 = QString(u'Converted Python Unicode object')
+</ProgramListing>
+
+<Para>
+In order to convert a <Literal>QString</Literal> to a Python string object use
+the Python <Literal>str()</Literal> function. Applying
+<Literal>str()</Literal> to a null <Literal>QString</Literal> and an empty
+<Literal>QString</Literal> both result in an empty Python string object.
+</Para>
+
+<Para>
+In order to convert a <Literal>QString</Literal> to a Python Unicode object use
+the Python <Literal>unicode()</Literal> function. Applying
+<Literal>unicode()</Literal> to a null <Literal>QString</Literal> and an empty
+<Literal>QString</Literal> both result in an empty Python Unicode object.
+</Para>
+</Sect2>
+
+<Sect2><Title>Access to Protected Member Functions</Title>
+<Para>
+When an instance of a C++ class is not created from Python it is not possible
+to access the protected member functions, or emit the signals, of that
+instance. Attempts to do so will raise a Python exception. Also, any Python
+methods corresponding to the instance's virtual member functions will never be
+called.
+</Para>
+</Sect2>
+
+<Sect2><Title><Literal>None</Literal> and <Literal>NULL</Literal></Title>
+<Para>
+Throughout the bindings, the <Literal>None</Literal> value can be specified
+wherever <Literal>NULL</Literal> is acceptable to the underlying C++ code.
+</Para>
+
+<Para>
+Equally, <Literal>NULL</Literal> is converted to <Literal>None</Literal>
+whenever it is returned by the underlying C++ code.
+</Para>
+</Sect2>
+
+
+<Sect2><Title>Support for C++ <Literal>void *</Literal> Data Types</Title>
+<Para>
+PyQt represents <Literal>void *</Literal> values as objects of type
+<Literal>sip.voidptr</Literal>. Such values are often used to pass the
+addresses of external objects between different Python modules. To make this
+easier, a Python integer (or anything that Python can convert to an integer)
+can be used whenever a <Literal>sip.voidptr</Literal> is expected.
+</Para>
+<Para>
+A <Literal>sip.voidptr</Literal> may be converted to a Python integer by using
+the <Literal>int()</Literal> builtin function.
+</Para>
+<Para>
+A <Literal>sip.voidptr</Literal> may be converted to a Python string by using
+its <Literal>asstring()</Literal> method. The <Literal>asstring()</Literal>
+method takes an integer argument which is the length of the data in bytes.
+</Para>
+</Sect2>
+
+
+<Sect2><Title>Support for Threads</Title>
+<Para>
+PyQt implements the full set of Qt's thread classes. Python, of course, also
+has its own thread extension modules. If you are using SIP v4 (or later) and
+Python v2.3.5 (or later) then PyQt does not impose any additional restrictions.
+(Read the relevant part of the Qt documentation to understand the restrictions
+imposed by the Qt API.)
+</Para>
+<Para>
+If you are using earlier versions of either SIP or Python then it is possible
+to use either of the APIs so long as you follow some simple rules.
+</Para>
+<ItemizedList>
+<ListItem>
+<Para>
+If you use the Qt API then the very first <Literal>import</Literal> of one of
+the PyQt modules must be done from the main thread.
+</Para>
+</ListItem>
+<ListItem>
+<Para>
+If you use the Python API then all calls to PyQt (including any
+<Literal>import</Literal>s) must be done from one thread only. Therefore, if
+you want to make calls to PyQt from several threads then you must use the Qt
+API.
+</Para>
+</ListItem>
+<ListItem>
+<Para>
+If you want to use both APIs in the same application then all calls to PyQt
+must be done from threads created using the Qt API.
+</Para>
+</ListItem>
+</ItemizedList>
+<Para>
+The above comments actually apply to any SIP generated module, not just PyQt.
+</Para>
+</Sect2>
+
+<Sect2><Title>Garbage Collection</Title>
+<Para>
+C++ does not garbage collect unreferenced class instances, whereas Python does.
+In the following C++ fragment both colours exist even though the first can no
+longer be referenced from within the program:
+</Para>
+
+<ProgramListing>
+c = new QColor();
+c = new QColor();
+</ProgramListing>
+
+<Para>
+In the corresponding Python fragment, the first colour is destroyed when
+the second is assigned to <Literal>c</Literal>:
+</Para>
+
+<ProgramListing>
+c = QColor()
+c = QColor()
+</ProgramListing>
+
+<Para>
+In Python, each colour must be assigned to different names. Typically this
+is done within class definitions, so the code fragment would be something like:
+</Para>
+
+<ProgramListing>
+self.c1 = QColor()
+self.c2 = QColor()
+</ProgramListing>
+
+<Para>
+Sometimes a Qt class instance will maintain a pointer to another instance and
+will eventually call the destructor of that second instance. The most common
+example is that a <Literal>QObject</Literal> (and any of its sub-classes) keeps
+pointers to its children and will automatically call their destructors. In
+these cases, the corresponding Python object will also keep a reference to the
+corresponding child objects.
+</Para>
+
+<Para>
+So, in the following Python fragment, the first <Literal>QLabel</Literal> is
+not destroyed when the second is assigned to <Literal>l</Literal> because the
+parent <Literal>QWidget</Literal> still has a reference to it.
+</Para>
+
+<ProgramListing>
+p = QWidget()
+l = QLabel('First label',p)
+l = QLabel('Second label',p)
+</ProgramListing>
+</Sect2>
+
+<Sect2><Title>C++ Variables</Title>
+<Para>
+Access to C++ variables is supported. They are accessed as Python instance
+variables. For example:
+</Para>
+
+<ProgramListing>
+tab = QTab()
+tab.label = "First Tab"
+tab.r = QRect(10,10,75,30)
+</ProgramListing>
+
+<Para>
+Global variables and static class variables are effectively read-only. They
+can be assigned to, but the underlying C++ variable will not be changed. This
+may change in the future.
+</Para>
+
+<Para>
+Access to protected C++ class variables is not supported. This may change in
+the future.
+</Para>
+</Sect2>
+
+<Sect2><Title>Multiple Inheritance</Title>
+<Para>
+It is not possible to define a new Python class that sub-classes from more than
+one Qt class.
+</Para>
+</Sect2>
+
+<Sect2><Title>i18n Support</Title>
+<Para>
+Qt implements i18n support through the Qt Linguist application, the
+<Literal>QTranslator</Literal> class, and the
+<Literal>QApplication::translate()</Literal>, <Literal>QObject::tr()</Literal>
+and <Literal>QObject::trUtf8()</Literal> methods. Usually the
+<Literal>tr()</Literal> method is used to obtain the correct translation of a
+message. The translation process uses a message context to allow the same
+message to be translated differently. <Literal>tr()</Literal> is actually
+generated by <Literal>moc</Literal> and uses the hardcoded class name as the
+context. On the other hand, <Literal>QApplication::translate()</Literal>
+allows to context to be explicitly stated.
+</Para>
+
+<Para>
+Unfortunately, because of the way Qt implents <Literal>tr()</Literal> (and
+<Literal>trUtf8()</Literal>) it is not possible for PyQt to exactly reproduce
+its behavour. The PyQt implementation of <Literal>tr()</Literal> (and
+<Literal>trUtf8()</Literal>) uses the class name of the instance as the
+context. The key difference, and the source of potential problems, is that the
+context is determined dynamically in PyQt, but is hardcoded in Qt. In other
+words, the context of a translation may change depending on an instance's class
+hierarchy.
+</Para>
+
+<ProgramListing>
+class A(QObject):
+ def __init__(self):
+ QObject.__init__(self)
+
+ def hello(self):
+ return self.tr("Hello")
+
+class B(A):
+ def __init__(self):
+ A.__init__(self)
+
+a = A()
+a.hello()
+
+b = B()
+b.hello()
+</ProgramListing>
+
+<Para>
+In the above the message is translated by <Literal>a.hello()</Literal> using a
+context of <Literal>A</Literal>, and by <Literal>b.hello()</Literal> using a
+context of <Literal>B</Literal>. In the equivalent C++ version the context
+would be <Literal>A</Literal> in both cases.
+</Para>
+
+<Para>
+The PyQt behaviour is unsatisfactory and may be changed in the future. It is
+recommended that <Literal>QApplication.translate()</Literal> be used in
+preference to <Literal>tr()</Literal> (and <Literal>trUtf8()</Literal>). This
+is guaranteed to work with current and future versions of PyQt and makes it
+much easier to share message files between Python and C++ code. Below is the
+alternative implementation of <Literal>A</Literal> that uses
+<Literal>QApplication.translate()</Literal>.
+</Para>
+
+<ProgramListing>
+class A(QObject):
+ def __init__(self):
+ QObject.__init__(self)
+
+ def hello(self):
+ return qApp.translate("A","Hello")
+</ProgramListing>
+
+<Para>
+Note that the code generated by <Literal>pyuic</Literal> uses
+<Literal>QApplication.translate()</Literal>.
+</Para>
+</Sect2>
+</Sect1>
+
+
+<Sect1><Title>Signal and Slot Support</Title>
+<Para>
+A signal may be either a Qt signal (specified using
+<Literal>SIGNAL()</Literal>) or a Python signal (specified using
+<Literal>PYSIGNAL()</Literal>).
+</Para>
+
+<Para>
+A slot can be either a Python callable object, a Qt signal (specified using
+<Literal>SIGNAL()</Literal>), a Python signal (specified using
+<Literal>PYSIGNAL()</Literal>), or a Qt slot (specified using
+<Literal>SLOT()</Literal>).
+</Para>
+
+<Para>
+You connect signals to slots (and other signals) as you would from C++. For
+example:
+</Para>
+
+<ProgramListing>
+QObject.connect(a,SIGNAL("QtSig()"),pyFunction)
+QObject.connect(a,SIGNAL("QtSig()"),pyClass.pyMethod)
+QObject.connect(a,SIGNAL("QtSig()"),PYSIGNAL("PySig"))
+QObject.connect(a,SIGNAL("QtSig()"),SLOT("QtSlot()"))
+QObject.connect(a,PYSIGNAL("PySig"),pyFunction)
+QObject.connect(a,PYSIGNAL("PySig"),pyClass.pyMethod)
+QObject.connect(a,PYSIGNAL("PySig"),SIGNAL("QtSig()"))
+QObject.connect(a,PYSIGNAL("PySig"),SLOT("QtSlot()"))
+</ProgramListing>
+
+<Para>
+When a slot is a Python method that corresponds to a Qt slot then a signal can
+be connected to either the Python method or the Qt slot. The following
+connections achieve the same effect.
+</Para>
+
+<ProgramListing>
+sbar = QScrollBar()
+lcd = QLCDNumber()
+
+QObject.connect(sbar,SIGNAL("valueChanged(int)"),lcd.display)
+QObject.connect(sbar,SIGNAL("valueChanged(int)"),lcd,SLOT("display(int)"))
+</ProgramListing>
+
+<Para>
+The difference is that the second connection is made at the C++ level and is
+more efficient.
+</Para>
+
+<Para>
+Disconnecting signals works in exactly the same way.
+</Para>
+
+<Para>
+Any instance of a class that is derived from the <Literal>QObject</Literal>
+class can emit a signal using the <Literal>emit</Literal> method. This takes
+two arguments. The first is the Python or Qt signal, the second is a Python
+tuple which are the arguments to the signal. For example:
+</Para>
+
+<ProgramListing>
+a.emit(SIGNAL("clicked()"),())
+a.emit(PYSIGNAL("pySig"),("Hello","World"))
+</ProgramListing>
+
+<Para>
+Note that when a slot is a Python callable object its reference count is not
+increased. This means that a class instance can be deleted without having to
+explicitly disconnect any signals connected to its methods. However, it also
+means that using lambda expressions as slots will not work unless you keep a
+separate reference to the expression to prevent it from being immediately
+garbage collected.
+</Para>
+
+<Para>
+Qt allows a signal to be connected to a slot that requires fewer arguments than
+the signal passes. The extra arguments are quietly discarded. Python slots
+can be used in the same way.
+</Para>
+</Sect1>
+
+
+<Sect1><Title>Static Member Functions</Title>
+<Para>
+Static member functions are implemented as Python class functions.
+For example the C++ static member function
+<Literal>QObject::connect()</Literal> is called from Python as
+<Literal>QObject.connect()</Literal> or <Literal>self.connect()</Literal> if
+called from a sub-class of <Literal>QObject</Literal>.
+</Para>
+</Sect1>
+
+
+<Sect1><Title>Enumerated Types</Title>
+<Para>
+Enumerated types are implemented as a set of simple variables corresponding to
+the separate enumerated values.
+</Para>
+
+<Para>
+When using an enumerated value the name of the class (or a sub-class) in which
+the enumerated type was defined in must be included. For example:
+</Para>
+
+<ProgramListing>
+Qt.SolidPattern
+QWidget.TabFocus
+QFrame.TabFocus
+</ProgramListing>
+</Sect1>
+
+
+<Sect1><Title>Module Reference Documentation</Title>
+<Para>
+The following sections should be used in conjunction with the normal class
+documentation - only the differences specific to the Python bindings are
+documented here.
+</Para>
+
+<Para>
+In these sections, <Emphasis>Not yet implemented</Emphasis>
+implies that the feature can be easily implemented if needed. <Emphasis>Not
+implemented</Emphasis> implies that the feature will not be implemented, either
+because it cannot be or because it is not appropriate.
+</Para>
+
+<Para>
+If a class is described as being <Emphasis>fully implemented</Emphasis> then
+all non-private member functions and all public class variables have been
+implemented.
+</Para>
+
+<Para>
+If an operator has been implemented then it is stated explicitly.
+</Para>
+
+<Para>
+Classes that are not mentioned have not yet been implemented.
+</Para>
+</Sect1>
+
+
+<Sect1><Title><Literal>qt</Literal> Module Reference</Title>
+<Sect2><Title>Qt Constants</Title>
+<Para>
+All constant values defined by Qt have equivalent constants defined to Python.
+</Para>
+</Sect2>
+<Sect2><Title>Qt (Qt v2+)</Title>
+<Para>
+<Literal>Qt</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QAccel</Title>
+<Para>
+<Literal>QAccel</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QAction (Qt v2.2+)</Title>
+<Para>
+<Literal>QAction</Literal> is fully implemented.
+</Para>
+
+</Sect2>
+<Sect2><Title>QActionGroup (Qt v2.2+)</Title>
+<Para>
+<Literal>QActionGroup</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QApplication</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QApplication</Function></FuncDef>
+ <ParamDef>int &amp;<Parameter>argc</Parameter></ParamDef>
+ <ParamDef>char **<Parameter>argv</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes one parameter which is a list of argument strings. Arguments
+used by Qt are removed from the list.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QApplication</Function></FuncDef>
+ <ParamDef>int &amp;<Parameter>argc</Parameter></ParamDef>
+ <ParamDef>char **<Parameter>argv</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>GUIenabled</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes two parameters, the first of which is a list of argument strings.
+Arguments used by Qt are removed from the list.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QApplication</Function></FuncDef>
+ <ParamDef>int &amp;<Parameter>argc</Parameter></ParamDef>
+ <ParamDef>char **<Parameter>argv</Parameter></ParamDef>
+ <ParamDef>Type <Parameter>type</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes two parameters, the first of which is a list of argument strings.
+Arguments used by Qt are removed from the list. (Qt v2.2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>exec</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>exec_loop</Literal> in Python.
+</Para>
+</Sect2>
+<Sect2><Title>QAssistantClient (Qt v3.1+)</Title>
+<Para>
+<Literal>QAssistantClient</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QBitmap</Title>
+<Para>
+<Literal>QBitmap</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QBrush</Title>
+<Para>
+<Literal>QBrush</Literal> is fully implemented, including the Python
+<Literal>==</Literal> and <Literal>!=</Literal> operators.
+</Para>
+</Sect2>
+<Sect2><Title>QButton</Title>
+<Para>
+<Literal>QButton</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QButtonGroup</Title>
+<Para>
+<Literal>QButtonGroup</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QByteArray</Title>
+<Para>
+A Python string can be used whenever a <Literal>QByteArray</Literal> can be
+used. A <Literal>QByteArray</Literal> can be converted to a Python string
+using the Python <Literal>str()</Literal> function.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QByteArray &<Function>assign</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>size</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>char &<Function>at</Function></FuncDef>
+ <ParamDef>uint <Parameter>i</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>contains</Function></FuncDef>
+ <ParamDef>const char &<Parameter>d</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>fill</Function></FuncDef>
+ <ParamDef>const char &<Parameter>d</Parameter></ParamDef>
+ <ParamDef>int <Parameter>size</Parameter> = -1</ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>find</Function></FuncDef>
+ <ParamDef>const char &<Parameter>d</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>i</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>resetRawData</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>uint<Parameter>size</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QByteArray &<Function>setRawData</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>uint<Parameter>size</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QCDEStyle (Qt v2+)</Title>
+<Para>
+<Literal>QCDEStyle</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QCheckBox</Title>
+<Para>
+<Literal>QCheckBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QClipboard</Title>
+<FuncSynopsis>
+ <FuncDef>void *<Function>data</Function> const</FuncDef>
+ <ParamDef>const char *<Parameter>format</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented (Qt v1.x).
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>setData</Function></FuncDef>
+ <ParamDef>const char *<Parameter>format</Parameter></ParamDef>
+ <ParamDef>void *<Parameter></Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented (Qt v1.x).
+</Para>
+</Sect2>
+<Sect2><Title>QColor</Title>
+<Para>
+The Python <Literal>==</Literal> and <Literal>!=</Literal> operators are
+supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>getHsv</Function></FuncDef>
+ <ParamDef>int *<Parameter>h</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>s</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>v</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns the <Literal>h</Literal>,
+<Literal>s</Literal> and <Literal>v</Literal> values as a tuple.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>getRgb</Function></FuncDef>
+ <ParamDef>int *<Parameter>r</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>g</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>b</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns the <Literal>r</Literal>,
+<Literal>g</Literal> and <Literal>b</Literal> values as a tuple.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>hsv</Function></FuncDef>
+ <ParamDef>int *<Parameter>h</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>s</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>v</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns the <Literal>h</Literal>,
+<Literal>s</Literal> and <Literal>v</Literal> values as a tuple.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>rgb</Function></FuncDef>
+ <ParamDef>int *<Parameter>r</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>g</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>b</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns the <Literal>r</Literal>,
+<Literal>g</Literal> and <Literal>b</Literal> values as a tuple.
+</Para>
+</Sect2>
+<Sect2><Title>QColorDialog (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>static QRgb <Function>getRgba</Function></FuncDef>
+ <ParamDef>QRgb <Parameter>initial</Parameter></ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter></ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>initial</Literal>, <Literal>parent</Literal> and
+<Literal>name</Literal> parameters and returns a tuple containing the
+<Literal>QRgb</Literal> result and the <Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QColorGroup</Title>
+<Para>
+<Literal>QColorGroup</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QComboBox</Title>
+<Para>
+<Literal>QComboBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QCommonStyle (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>getButtonShift</Function></FuncDef>
+ <ParamDef>int &amp;<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>x</Literal> and
+<Literal>y</Literal> values. (Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>tabbarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>t</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>hframe</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>vframe</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>overlap</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>t</Literal> parameter and returns a tuple of the
+<Literal>hframe</Literal>, <Literal>vframe</Literal> and
+<Literal>overlap</Literal> values. (Qt v2)
+</Para>
+</Sect2>
+<Sect2><Title>QCString (Qt v2+)</Title>
+<Para>
+A Python string can be used whenever a <Literal>QCString</Literal> can be used.
+A <Literal>QCString</Literal> can be converted to a Python string using the
+Python <Literal>str()</Literal> function.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCString &amp;<Function>sprintf</Function></FuncDef>
+ <ParamDef>const char *<Parameter>format</Parameter></ParamDef>
+ <ParamDef>...</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>short <Function>toShort</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>short</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>ushort <Function>toUShort</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>ushort</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>toInt</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>int</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uint <Function>toUInt</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>uint</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>long <Function>toLong</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>long</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>ulong <Function>toULong</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>ulong</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>float <Function>toFloat</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>float</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>double <Function>toDouble</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>double</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QCursor</Title>
+<Para>
+<Literal>QCursor</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QDataStream</Title>
+<FuncSynopsis>
+ <FuncDef>QDataStream &amp;<Function>readBytes</Function></FuncDef>
+ <ParamDef>const char *&amp;<Parameter>s</Parameter></ParamDef>
+ <ParamDef>uint &amp;<Parameter>l</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters. The <Literal>QDataStream</Literal> result and the
+data read are returned as a tuple.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QDataStream &amp;<Function>readRawBytes</Function></FuncDef>
+ <ParamDef>const char *<Parameter>s</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>l</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>l</Literal> parameter. The
+<Literal>QDataStream</Literal> result and the data read are returned as a
+tuple.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QDataStream &amp;<Function>writeBytes</Function></FuncDef>
+ <ParamDef>const char *<Parameter>s</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>s</Literal> and not passed as a
+parameter.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QDataStream &amp;<Function>writeRawBytes</Function></FuncDef>
+ <ParamDef>const char *<Parameter>s</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>s</Literal> and not passed as a
+parameter.
+</Para>
+</Sect2>
+<Sect2><Title>QDate</Title>
+<Para>
+The Python
+<Literal>==</Literal>, <Literal>!=</Literal>,
+<Literal>&lt;</Literal>, <Literal>&lt;=</Literal>,
+<Literal>&gt;</Literal>, <Literal>&gt;=</Literal>
+and <Literal>__nonzero__</Literal>
+operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>weekNumber</Function></FuncDef>
+ <ParamDef>int *<Parameter>yearNum</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns the week number and the year number as a
+tuple. (Qt v3.1+)
+</Para>
+</Sect2>
+
+<Sect2><Title>QDateTime</Title>
+<Para>
+<Literal>QDateTime</Literal> is fully implemented, including the Python
+<Literal>==</Literal>, <Literal>!=</Literal>,
+<Literal>&lt;</Literal>, <Literal>&lt;=</Literal>,
+<Literal>&gt;</Literal>, <Literal>&gt;=</Literal>
+and <Literal>__nonzero__</Literal>
+operators.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTime</Title>
+<Para>
+<Literal>QTime</Literal> is fully implemented, including the Python
+<Literal>==</Literal>, <Literal>!=</Literal>,
+<Literal>&lt;</Literal>, <Literal>&lt;=</Literal>,
+<Literal>&gt;</Literal>, <Literal>&gt;=</Literal>
+and <Literal>__nonzero__</Literal>
+operators.
+</Para>
+</Sect2>
+<Sect2><Title>QDateEdit (Qt v3+)</Title>
+<Para>
+<Literal>QDateEdit</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTimeEdit (Qt v3+)</Title>
+<Para>
+<Literal>QTimeEdit</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDateTimeEdit (Qt v3+)</Title>
+<Para>
+<Literal>QDateTimeEdit</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QDesktopWidget (Qt v3+)</Title>
+<Para>
+<Literal>QDesktopWidget</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QDial (Qt v2.2+)</Title>
+<Para>
+<Literal>QDial</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QDialog</Title>
+<FuncSynopsis>
+ <FuncDef>int <Function>exec</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>exec_loop</Literal> in Python.
+</Para>
+<Para>
+This method also causes ownership of the underlying C++ dialog to be transfered
+to Python. This means that the C++ dialog will be deleted when the Python
+wrapper is garbage collected. Although this is a little inconsistent, it
+ensures that the dialog is deleted without having to explicity code it using
+<Literal>QObject.deleteLater()</Literal> or other techniques.
+</Para>
+</Sect2>
+<Sect2><Title>QDir</Title>
+<Para>
+<Literal>QDir</Literal> is fully implemented, including the Python
+<Literal>len</Literal>, <Literal>[]</Literal> (for reading slices and
+individual elements), <Literal>==</Literal>, <Literal>!=</Literal> and
+<Literal>in</Literal> operators
+</Para>
+</Sect2>
+
+<Sect2><Title>QFileInfoList</Title>
+<Para>
+This class isn't implemented. Whenever a <Literal>QFileInfoList</Literal> is
+the return type of a function or the type of an argument, a Python list of
+<Literal>QFileInfo</Literal> instances is used instead.
+</Para>
+</Sect2>
+<Sect2><Title>QDockArea (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>hasDockWindow</Function> const</FuncDef>
+ <ParamDef>QDockWindow *<Parameter>w</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>index</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>w</Literal> parameter and returns the index of the
+QDockWIndow or -1 if the QDockArea does not contain the QDockWindow.
+</Para>
+</Sect2>
+<Sect2><Title>QDockWindow (Qt v3+)</Title>
+<Para>
+<Literal>QDockWindow</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QColorDrag (Qt v2.1+)</Title>
+<Para>
+<Literal>QColorDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDragObject</Title>
+<Para>
+<Literal>QDragObject</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QImageDrag</Title>
+<Para>
+<Literal>QImageDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QStoredDrag</Title>
+<Para>
+<Literal>QStoredDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTextDrag</Title>
+<Para>
+<Literal>QTextDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QUriDrag (Qt v2+)</Title>
+<Para>
+<Literal>QUriDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QUrlDrag (Qt v1.x)</Title>
+<Para>
+<Literal>QUrlDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QDropSite</Title>
+<Para>
+<Literal>QDropSite</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QErrorMessage (Qt v3+)</Title>
+<Para>
+<Literal>QErrorMessage</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QEvent</Title>
+<Para>
+<Literal>QEvent</Literal> is fully implemented.
+</Para>
+<Para>
+Instances of <Literal>QEvent</Literal>s are automatically converted to the
+correct sub-class.
+</Para>
+</Sect2>
+
+<Sect2><Title>QChildEvent</Title>
+<Para>
+<Literal>QChildEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCloseEvent</Title>
+<Para>
+<Literal>QCloseEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIconDragEvent (Qt v3.3+)</Title>
+<Para>
+<Literal>QIconDragEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QContextMenuEvent (Qt v3+)</Title>
+<Para>
+<Literal>QContextMenuEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCustomEvent</Title>
+<Para>
+<Literal>QCustomEvent</Literal> is fully implemented. Any Python object can be
+passed as the event data and its reference count is increased.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDragEnterEvent</Title>
+<Para>
+<Literal>QDragEnterEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDragLeaveEvent</Title>
+<Para>
+<Literal>QDragLeaveEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDragMoveEvent</Title>
+<Para>
+<Literal>QDragMoveEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDropEvent</Title>
+<Para>
+<Literal>QDropEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QFocusEvent</Title>
+<Para>
+<Literal>QFocusEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHideEvent</Title>
+<Para>
+<Literal>QHideEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIMComposeEvent (Qt v3.1+)</Title>
+<Para>
+<Literal>QIMComposeEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIMEvent (Qt v3+)</Title>
+<Para>
+<Literal>QIMEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QKeyEvent</Title>
+<Para>
+<Literal>QKeyEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QMouseEvent</Title>
+<Para>
+<Literal>QMouseEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QMoveEvent</Title>
+<Para>
+<Literal>QMoveEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QPaintEvent</Title>
+<Para>
+<Literal>QPaintEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QResizeEvent</Title>
+<Para>
+<Literal>QResizeEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QShowEvent</Title>
+<Para>
+<Literal>QShowEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTabletEvent (Qt v3+)</Title>
+<Para>
+<Literal>QTabletEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTimerEvent</Title>
+<Para>
+<Literal>QTimerEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QWheelEvent (Qt v2+)</Title>
+<Para>
+<Literal>QWheelEvent</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QEventLoop (Qt v3.1+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual int <Function>exec</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>exec_loop</Literal> in Python.
+</Para>
+</Sect2>
+<Sect2><Title>QFile</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>open</Function></FuncDef>
+ <ParamDef>int <Parameter>m</Parameter></ParamDef>
+ <ParamDef>FILE *<Parameter>f</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>len</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readLine</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>maxlen</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>maxlen</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static void <Function>setDecodingFunction</Function></FuncDef>
+ <ParamDef>EncoderFn <Parameter>f</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static void <Function>setEncodingFunction</Function></FuncDef>
+ <ParamDef>EncoderFn <Parameter>f</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>writeBlock</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>data</Literal> and not passed
+as a parameter.
+</Para>
+</Sect2>
+<Sect2><Title>QFileDialog</Title>
+<Para>
+<Literal>QFileDialog</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QFileIconProvider</Title>
+<Para>
+<Literal>QFileIconProvider</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QFilePreview</Title>
+<Para>
+<Literal>QFilePreview</Literal> is fully implemented. However it cannot be
+used from Python in the same way as it is used from C++ because PyQt does not
+support multiple inheritance involving more than one wrapped class. A trick
+that seems to work is to use composition rather than inheritance as in the
+following code fragment.
+</Para>
+<ProgramListing>
+class FilePreview(QFilePreview):
+ pass
+
+class Preview(QLabel):
+ def __init__(self, parent=None):
+ QLabel.__init__(self, parent)
+ self.preview = FilePreview()
+ self.preview.previewUrl = self.previewUrl
+</ProgramListing>
+<Para>
+Note that QFilePreview cannot be instantiated directly because it is abstract.
+Thanks to Hans-Peter Jansen for this trick.
+</Para>
+</Sect2>
+<Sect2><Title>QFileInfo</Title>
+<Para>
+<Literal>QFileInfo</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QFont</Title>
+<Para>
+<Literal>QFont</Literal> is fully implemented, including the Python
+<Literal>==</Literal> and <Literal>!=</Literal> operators.
+</Para>
+</Sect2>
+<Sect2><Title>QFontDatabase (Qt v2.1+)</Title>
+<Para>
+<Literal>QFontDatabase</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QFontDialog (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>static QFont <Function>getFont</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter></ParamDef>
+ <ParamDef>const QFont &<Parameter>def</Parameter></ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>def</Literal>, <Literal>parent</Literal> and
+<Literal>name</Literal> parameters and returns a tuple containing the
+<Literal>QFont</Literal> result and the <Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static QFont <Function>getFont</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter></ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>parent</Literal> and <Literal>name</Literal> parameters
+and returns a tuple containing the <Literal>QFont</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QFontInfo</Title>
+<Para>
+<Literal>QFontInfo</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QFontMetrics</Title>
+<FuncSynopsis>
+ <FuncDef>QRect <Function>boundingRect</Function></FuncDef>
+ <ParamDef>int <Parameter>x</Parameter></ParamDef>
+ <ParamDef>int <Parameter>y</Parameter></ParamDef>
+ <ParamDef>int <Parameter>w</Parameter></ParamDef>
+ <ParamDef>int <Parameter>h</Parameter></ParamDef>
+ <ParamDef>int <Parameter>flags</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>len</Parameter> = -1</ParamDef>
+ <ParamDef>int <Parameter>tabstops</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>tabarray</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>tabarray</Literal> parameter is a Python list of integers.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QSize <Function>size</Function></FuncDef>
+ <ParamDef>int <Parameter>flags</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>len</Parameter> = -1</ParamDef>
+ <ParamDef>int <Parameter>tabstops</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>tabarray</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>tabarray</Literal> parameter is a Python list of integers.
+</Para>
+</Sect2>
+<Sect2><Title>QFrame</Title>
+<Para>
+<Literal>QFrame</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QGManager (Qt v1.x)</Title>
+<Para>
+<Literal>QGManager</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QChain (Qt v1.x)</Title>
+<Para>
+<Literal>QChain</Literal> is implemented as an opaque class.
+</Para>
+</Sect2>
+<Sect2><Title>QGrid (Qt v2+)</Title>
+<Para>
+<Literal>QGrid</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QGridView (Qt v3+)</Title>
+<Para>
+<Literal>QGridView</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QGroupBox</Title>
+<Para>
+<Literal>QGroupBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QHBox (Qt v2+)</Title>
+<Para>
+<Literal>QHBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QHButtonGroup (Qt v2+)</Title>
+<Para>
+<Literal>QHButtonGroup</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QHeader</Title>
+<Para>
+<Literal>QHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QHGroupBox (Qt v2+)</Title>
+<Para>
+<Literal>QHGroupBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QIconSet</Title>
+<Para>
+<Literal>QIconSet</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIconFactory (Qt v3.1+)</Title>
+<Para>
+<Literal>QIconFactory</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QIconView (Qt v2.1+)</Title>
+<FuncSynopsis>
+ <FuncDef>QIconViewItem *<Function>makeRowLayout</Function></FuncDef>
+ <ParamDef>QIconViewItem *<Parameter>begin</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIconViewItem (Qt v2.1+)</Title>
+<Para>
+<Literal>QIconViewItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIconDrag (Qt v2.1+)</Title>
+<Para>
+<Literal>QIconDrag</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIconDragItem (Qt v2.1+)</Title>
+<Para>
+<Literal>QIconDragItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QImage</Title>
+<Para>
+The Python <Literal>==</Literal> and <Literal>!=</Literal> operators are
+supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QImage</Function></FuncDef>
+ <ParamDef>const char *<Parameter>xpm</Parameter>[]</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a list of strings as its parameter.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QImage</Function></FuncDef>
+ <ParamDef>uchar *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>int <Parameter>w</Parameter></ParamDef>
+ <ParamDef>int <Parameter>h</Parameter></ParamDef>
+ <ParamDef>int <Parameter>depth</Parameter></ParamDef>
+ <ParamDef>QRgb *<Parameter>colorTable</Parameter></ParamDef>
+ <ParamDef>int <Parameter>numColors</Parameter></ParamDef>
+ <ParamDef>Endian <Parameter>bitOrder</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>colorTable</Literal> parameter is a list of QRgb instances or
+None. (Qt v2.1+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uchar *<Function>bits</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+The return value is a <Literal>sip.voidptr</Literal> object which is only
+useful if passed to another Python module.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QRgb *<Function>colorTable</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+The return value is a <Literal>sip.voidptr</Literal> object which is only
+useful if passed to another Python module.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QImage <Function>convertDepthWithPalette</Function></FuncDef>
+ <ParamDef>int</ParamDef>
+ <ParamDef>QRgb *<Parameter>p</Parameter></ParamDef>
+ <ParamDef>int <Parameter>pc</Parameter></ParamDef>
+ <ParamDef>int <Parameter>cf</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uchar **<Function>jumpTable</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+The return value is a <Literal>sip.voidptr</Literal> object which is only
+useful if passed to another Python module.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>loadFromData</Function></FuncDef>
+ <ParamDef>const uchar *<Parameter>buf</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>format</Parameter> = 0</ParamDef>
+ <ParamDef>ColorMode <Parameter>mode</Parameter> = Auto</ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>buf</Literal> and not passed as
+a parameter.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uchar *<Function>scanLine</Function></FuncDef>
+ <ParamDef>int <Parameter>i</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The return value is a <Literal>sip.voidptr</Literal> object which is only
+useful if passed to another Python module.
+</Para>
+</Sect2>
+
+<Sect2><Title>QImageIO</Title>
+<FuncSynopsis>
+ <FuncDef>static void <Function>defineIOHandler</Function></FuncDef>
+ <ParamDef>const char *<Parameter>format</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>header</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>flags</Parameter></ParamDef>
+ <ParamDef>image_io_handler <Parameter>read_image</Parameter></ParamDef>
+ <ParamDef>image_io_handler <Parameter>write_image</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QImageTextKeyLang</Title>
+<Para>
+<Literal>QImageTextKeyLang</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QInputDialog (Qt v2.1+)</Title>
+<FuncSynopsis>
+ <FuncDef>static QString <Function>getText</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>caption</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>label</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>text</Parameter> = QString::null</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QString</Literal> result and the <Literal>ok</Literal> flag.
+(Qt v2.1 - v2.3.1)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static QString <Function>getText</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>caption</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>label</Parameter></ParamDef>
+ <ParamDef>QLineEdit::EchoMode<Parameter>echo</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>text</Parameter> = QString::null</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QString</Literal> result and the <Literal>ok</Literal> flag.
+(Qt v2.2 - v2.3.1)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static QString <Function>getText</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>caption</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>label</Parameter></ParamDef>
+ <ParamDef>QLineEdit::EchoMode<Parameter>echo</Parameter> = QLineEdit::Normal</ParamDef>
+ <ParamDef>const QString &amp;<Parameter>text</Parameter> = QString::null</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QString</Literal> result and the <Literal>ok</Literal> flag.
+(Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static int <Function>getInteger</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>caption</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>label</Parameter></ParamDef>
+ <ParamDef>int <Parameter>num</Parameter> = 0</ParamDef>
+ <ParamDef>int <Parameter>from</Parameter> = -2147483647</ParamDef>
+ <ParamDef>int <Parameter>to</Parameter> = 2147483647</ParamDef>
+ <ParamDef>int <Parameter>step</Parameter> = 1</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>int</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static double <Function>getDouble</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>caption</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>label</Parameter></ParamDef>
+ <ParamDef>double <Parameter>num</Parameter> = 0</ParamDef>
+ <ParamDef>double <Parameter>from</Parameter> = -2147483647</ParamDef>
+ <ParamDef>double <Parameter>to</Parameter> = 2147483647</ParamDef>
+ <ParamDef>int <Parameter>step</Parameter> = 1</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>double</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static QString <Function>getItem</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>caption</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>label</Parameter></ParamDef>
+ <ParamDef>const QStringList &<Parameter>list</Parameter></ParamDef>
+ <ParamDef>int <Parameter>current</Parameter> = 0</ParamDef>
+ <ParamDef>bool <Parameter>editable</Parameter> = TRUE</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QString</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+</Sect2>
+<Sect2><Title>QInterlaceStyle (Qt v2.3.1+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>sb</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+</Para>
+</Sect2>
+<Sect2><Title>QIODevice</Title>
+<Para>
+<Literal>QIODevice</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QKeySequence (Qt v3+)</Title>
+<Para>
+<Literal>QKeySequence</Literal> is fully implemented including the operators
+<Literal>==</Literal>, <Literal>!=</Literal>, <Literal>QString()</Literal> and
+<Literal>int()</Literal>. A <Literal>QString</Literal> instance or a Python
+integer may be used whenever a <Literal>QKeySequence</Literal> can be used.
+</Para>
+</Sect2>
+<Sect2><Title>QLabel</Title>
+<Para>
+<Literal>QLabel</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QLayout</Title>
+<Para>
+<Literal>QLayout</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QBoxLayout</Title>
+<Para>
+<Literal>QBoxLayout</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QGLayoutIterator (Qt v2+)</Title>
+<Para>
+<Literal>QGLayoutIterator</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QGridLayout</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>findWidget</Function></FuncDef>
+ <ParamDef>QWidget *<Parameter>w</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>row</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>col</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>w</Literal> parameter and returns a tuple containing
+the <Literal>bool</Literal> result, <Literal>row</Literal> and
+<Literal>col</Literal>. (Qt v2+)
+</Para>
+</Sect2>
+
+<Sect2><Title>QHBoxLayout</Title>
+<Para>
+<Literal>QHBoxLayout</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QLayoutItem (Qt v2+)</Title>
+<Para>
+<Literal>QLayoutItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QLayoutIterator (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>QLayoutItem *<Function>next</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This is a wrapper around the <Literal>QLayoutIterator</Literal>
+<Literal>++</Literal> operator.
+</Para>
+</Sect2>
+
+<Sect2><Title>QSpacerItem (Qt v2+)</Title>
+<Para>
+<Literal>QSpacerItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QVBoxLayout</Title>
+<Para>
+<Literal>QVBoxLayout</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QWidgetItem (Qt v2+)</Title>
+<Para>
+<Literal>QWidgetItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QLCDNumber</Title>
+<Para>
+<Literal>QLCDNumber</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QLibrary (Qt v3+)</Title>
+<Para>
+<Literal>QLibrary</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QLineEdit</Title>
+<FuncSynopsis>
+ <FuncDef>int <Function>characterAt</Function></FuncDef>
+ <ParamDef>int <Parameter>xpos</Parameter></ParamDef>
+ <ParamDef>QChar *<Parameter>chr</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>xpos</Literal> parameter and returns the int
+result and the <Literal>chr</Literal> value as a tuple. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>del</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delChar</Literal> in Python. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>getSelection</Function></FuncDef>
+ <ParamDef>int *<Parameter>start</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>end</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns the bool result and the
+<Literal>start</Literal> and <Literal>end</Literal> values as a tuple.
+(Qt v3+)
+</Para>
+</Sect2>
+<Sect2><Title>QList&lt;type&gt; (Qt v2)</Title>
+<Para>
+Types based on the <Literal>QList</Literal> template are automatically
+converted to and from Python lists of the type.
+</Para>
+</Sect2>
+<Sect2><Title>QListBox</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>itemYPos</Function></FuncDef>
+ <ParamDef>int <Parameter>index</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>yPos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>index</Literal> parameter and returns a tuple
+containing the <Literal>bool</Literal> result and <Literal>yPos</Literal>.
+(Qt v1.x)
+</Para>
+</Sect2>
+
+<Sect2><Title>QListBoxItem</Title>
+<Para>
+<Literal>QListBoxItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QListBoxPixmap</Title>
+<Para>
+<Literal>QListBoxPixmap</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QListBoxText</Title>
+<Para>
+<Literal>QListBoxText</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QListView</Title>
+<Para>
+<Literal>QListView</Literal> is fully implemented.
+</Para>
+<Para>
+Note that to remove a child <Literal>QListViewItem</Literal> you must first
+call <Literal>takeItem()</Literal> and then <Literal>del()</Literal>.
+</Para>
+</Sect2>
+
+<Sect2><Title>QListViewItem</Title>
+<Para>
+<Literal>QListViewItem</Literal> is fully implemented.
+</Para>
+<Para>
+Note that to remove a child <Literal>QListViewItem</Literal> you must first
+call <Literal>takeItem()</Literal> and then <Literal>del()</Literal>.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCheckListItem</Title>
+<Para>
+<Literal>QCheckListItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QListViewItemIterator (Qt v2+)</Title>
+<Para>
+<Literal>QListViewItemIterator</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QLocale (Qt v3.3+)</Title>
+<FuncSynopsis>
+ <FuncDef>short <Function>toShort</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>short</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>ushort <Function>toUShort</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>ushort</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>toInt</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>int</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uint <Function>toUInt</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>uint</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>toLong</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>long</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_ULONG <Function>toULong</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>ulong</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>float <Function>toFloat</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>float</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>double <Function>toDouble</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>double</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QMainWindow</Title>
+<FuncSynopsis>
+ <FuncDef>QTextStream &amp;<Function>operator&lt&lt;</Function></FuncDef>
+ <ParamDef>QTextStream &amp;<Parameter></Parameter></ParamDef>
+ <ParamDef>const QMainWindow &amp;<Parameter></Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This operator is fully implemented. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QTextStream &amp;<Function>operator&gt&gt;</Function></FuncDef>
+ <ParamDef>QTextStream &amp;<Parameter></Parameter></ParamDef>
+ <ParamDef>QMainWindow &amp;<Parameter></Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This operator is fully implemented. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>getLocation</Function></FuncDef>
+ <ParamDef>QToolBar *<Parameter>tb</Parameter></ParamDef>
+ <ParamDef>ToolBarDock &amp;<Parameter>dock</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>index</Parameter></ParamDef>
+ <ParamDef>bool &amp;<Parameter>nl</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>extraOffset</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>tb</Literal> parameter and returns a tuple of the
+result, <Literal>dock</Literal>, <Literal>index</Literal>,
+<Literal>nl</Literal> and <Literal>extraOffset</Literal> values. (Qt v2.1.0+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QList&lt;QToolBar&gt; <Function>toolBars</Function></FuncDef>
+ <ParamDef>ToolBarDock <Parameter>dock</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a list of <Literal>QToolBar</Literal> instances. (Qt v2.1.0+)
+</Para>
+</Sect2>
+<Sect2><Title>QMemArray&lt;type&gt; (Qt v3+)</Title>
+<Para>
+Types based on the <Literal>QMemArray</Literal> template are automatically
+converted to and from Python lists of the type.
+</Para>
+</Sect2>
+<Sect2><Title>QMenuBar</Title>
+<Para>
+<Literal>QMenuBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QMenuData</Title>
+<FuncSynopsis>
+ <FuncDef>QMenuItem *<Function>findItem</Function></FuncDef>
+ <ParamDef>int <Parameter>id</Parameter></ParamDef>
+ <ParamDef>QMenuData **<Parameter>parent</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCustomMenuItem (Qt v2.1+)</Title>
+<Para>
+<Literal>QCustomMenuItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QMenuItem</Title>
+<Para>
+<Literal>QMenuItem</Literal> is an internal Qt class.
+</Para>
+</Sect2>
+<Sect2><Title>QMessageBox</Title>
+<Para>
+<Literal>QMessageBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QMetaObject</Title>
+<FuncSynopsis>
+ <FuncDef>int <Function>numClassInfo</Function> const</FuncDef>
+ <ParamDef>bool <Parameter>super</Parameter> = FALSE</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>const QClassInfo *<Function>classInfo</Function> const</FuncDef>
+ <ParamDef>bool <Parameter>super</Parameter> = FALSE</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QMetaProperty</Title>
+<Para>
+<Literal>QMetaProperty</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QMimeSource (Qt v2+)</Title>
+<Para>
+<Literal>QMimeSource</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QMimeSourceFactory (Qt v2+)</Title>
+<Para>
+<Literal>QMimeSourceFactory</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QWindowsMime (Qt v3+)</Title>
+<Para>
+<Literal>QWindowsMime</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QMotifPlusStyle (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>getButtonShift</Function></FuncDef>
+ <ParamDef>int &amp;<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>x</Literal> and
+<Literal>y</Literal> values. (Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QScrollBar *<Parameter>sb</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+(Qt v2)
+</Para>
+</Sect2>
+<Sect2><Title>QMotifStyle (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>sb</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+(Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>tabbarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>t</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>hframe</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>vframe</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>overlap</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>t</Literal> parameter and returns a tuple of the
+<Literal>hframe</Literal>, <Literal>vframe</Literal> and
+<Literal>overlap</Literal> values. (Qt v2)
+</Para>
+</Sect2>
+<Sect2><Title>QMovie</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QMovie</Function></FuncDef>
+ <ParamDef>QDataSource *<Parameter>src</Parameter></ParamDef>
+ <ParamDef>int <Parameter>bufsize</Parameter> = 1024</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>pushData</Function></FuncDef>
+ <ParamDef>const uchar *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>int <Parameter>length</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>length</Literal> is derived from <Literal>data</Literal> and not
+passed as a parameter. (Qt v2.2.0+)
+</Para>
+</Sect2>
+<Sect2><Title>QMultiLineEdit</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>cursorPosition</Function> const</FuncDef>
+ <ParamDef>int *<Parameter>line</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>col</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>line</Literal> and
+<Literal>col</Literal> values. (Qt v1.x, Qt v2.x)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>del</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delChar</Literal> in Python. (Qt v1.x, Qt v2.x)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>getCursorPosition</Function> const</FuncDef>
+ <ParamDef>int *<Parameter>line</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>col</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>line</Literal> and
+<Literal>col</Literal> values. (Qt v1.x, Qt v2.x)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>getMarkedRegion</Function></FuncDef>
+ <ParamDef>int *<Parameter>line1</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>col1</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>line2</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>col2</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the bool result and the
+<Literal>line1</Literal>, <Literal>col1</Literal>, <Literal>line2</Literal> and
+<Literal>col2</Literal> values.
+</Para>
+</Sect2>
+<Sect2><Title>QMutex (Qt v2.2+)</Title>
+<Para>
+<Literal>QMutex</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QMutexLocker (Qt v3.1+)</Title>
+<Para>
+<Literal>QMutexLocker</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QNetworkOperation (Qt v2.1+)</Title>
+<Para>
+<Literal>QNetworkOperation</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QNetworkProtocol (Qt v2.1+)</Title>
+<Para>
+<Literal>QNetworkProtocol</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QNetworkProtocolFactoryBase (Qt v2.1+)</Title>
+<Para>
+<Literal>QNetworkProtocolFactoryBase</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QObject</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>disconnect</Function></FuncDef>
+ <ParamDef>const QObject *<Parameter>receiver</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>member</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>disconnect</Function></FuncDef>
+ <ParamDef>const char *<Parameter>signal</Parameter> = 0</ParamDef>
+ <ParamDef>const QObject *<Parameter>receiver</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>member</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static bool <Function>disconnect</Function></FuncDef>
+ <ParamDef>const QObject *<Parameter>sender</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>signal</Parameter></ParamDef>
+ <ParamDef>const QObject *<Parameter>receiver</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>member</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+At the moment PyQt does not support the full behaviour of the corresponding Qt
+method. In particular, specifying None (ie. 0 in C++) for the
+<Literal>signal</Literal> and <Literal>receiver</Literal> parameters is not yet
+supported.
+</Para>
+</Sect2>
+<Sect2><Title>QObjectCleanupHandler (Qt v3+)</Title>
+<Para>
+<Literal>QObjectCleanupHandler</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QObjectList</Title>
+<Para>
+This class isn't implemented. Whenever a <Literal>QObjectList</Literal> is the
+return type of a function or the type of an argument, a Python list of
+<Literal>QObject</Literal> instances is used instead.
+</Para>
+</Sect2>
+<Sect2><Title>QPaintDeviceMetrics</Title>
+<Para>
+<Literal>QPaintDeviceMetrics</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPaintDevice</Title>
+<FuncSynopsis>
+ <FuncDef>virtual bool <Function>cmd</Function></FuncDef>
+ <ParamDef>int</ParamDef>
+ <ParamDef>QPainter *</ParamDef>
+ <ParamDef>QPDevCmdParam *</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPainter</Title>
+<FuncSynopsis>
+ <FuncDef>QRect <Function>boundingRect</Function></FuncDef>
+ <ParamDef>int <Parameter>x</Parameter></ParamDef>
+ <ParamDef>int <Parameter>y</Parameter></ParamDef>
+ <ParamDef>int <Parameter>w</Parameter></ParamDef>
+ <ParamDef>int <Parameter>h</Parameter></ParamDef>
+ <ParamDef>int <Parameter>flags</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>len</Parameter> = -1</ParamDef>
+ <ParamDef>char **<Parameter>intern</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>intern</Literal> parameter is not supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QRect <Function>boundingRect</Function></FuncDef>
+ <ParamDef>const QRect&</ParamDef>
+ <ParamDef>int <Parameter>flags</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>len</Parameter> = -1</ParamDef>
+ <ParamDef>char **<Parameter>intern</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>intern</Literal> parameter is not supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>drawText</Function></FuncDef>
+ <ParamDef>int <Parameter>x</Parameter></ParamDef>
+ <ParamDef>int <Parameter>y</Parameter></ParamDef>
+ <ParamDef>int <Parameter>w</Parameter></ParamDef>
+ <ParamDef>int <Parameter>h</Parameter></ParamDef>
+ <ParamDef>int <Parameter>flags</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>len</Parameter> = -1</ParamDef>
+ <ParamDef>QRect *<Parameter>br</Parameter> = 0</ParamDef>
+ <ParamDef>char **<Parameter>intern</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>intern</Literal> parameter is not supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>drawText</Function></FuncDef>
+ <ParamDef>const QRect&</ParamDef>
+ <ParamDef>int <Parameter>flags</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>len</Parameter> = -1</ParamDef>
+ <ParamDef>QRect *<Parameter>br</Parameter> = 0</ParamDef>
+ <ParamDef>char **<Parameter>intern</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>intern</Literal> parameter is not supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>setTabArray</Function></FuncDef>
+ <ParamDef>int *<Parameter>ta</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single parameter which is a list of tab stops.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int *<Function>tabArray</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a list of tab stops.
+</Para>
+</Sect2>
+<Sect2><Title>QPalette</Title>
+<Para>
+<Literal>QPalette</Literal> is fully implemented, including the Python
+<Literal>==</Literal> and <Literal>!=</Literal> operators.
+</Para>
+</Sect2>
+<Sect2><Title>QPixmap</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QPixmap</Function></FuncDef>
+ <ParamDef>const char *<Parameter>xpm</Parameter>[]</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a list of strings as its parameter.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>loadFromData</Function></FuncDef>
+ <ParamDef>const uchar *<Parameter>buf</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>format</Parameter> = 0</ParamDef>
+ <ParamDef>ColorMode <Parameter>mode</Parameter> = Auto</ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>buf</Literal> and not passed as
+a parameter.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>loadFromData</Function></FuncDef>
+ <ParamDef>const uchar *<Parameter>buf</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+ <ParamDef>const char *<Parameter>format</Parameter></ParamDef>
+ <ParamDef>int <Parameter>conversion_flags</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPixmapCache (Qt v3+)</Title>
+<Para>
+<Literal>QPixmapCache</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPair&lt;type,type&gt; (Qt v3+)</Title>
+<Para>
+Types based on the <Literal>QPair</Literal> template are automatically
+converted to and from Python tuples of two elements.
+</Para>
+</Sect2>
+<Sect2><Title>QPen</Title>
+<Para>
+<Literal>QPen</Literal> is fully implemented, including the Python
+<Literal>==</Literal> and <Literal>!=</Literal> operators.
+</Para>
+</Sect2>
+<Sect2><Title>QPicture</Title>
+<FuncSynopsis>
+ <FuncDef>const char *<Function>data</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>setData</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>size</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>size</Literal> is derived from <Literal>data</Literal> and not passed
+as a parameter.
+</Para>
+</Sect2>
+<Sect2><Title>QPlatinumStyle (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>sb</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+(Qt v2)
+</Para>
+</Sect2>
+<Sect2><Title>QPoint</Title>
+<Para>
+The Python
+<Literal>+</Literal>, <Literal>+=</Literal>,
+<Literal>-</Literal>, <Literal>-=</Literal>, unary <Literal>-</Literal>,
+<Literal>*</Literal>, <Literal>*=</Literal>,
+<Literal>/</Literal>, <Literal>/=</Literal>,
+<Literal>==</Literal>, <Literal>!=</Literal> and <Literal>__nonzero__</Literal>
+operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rx</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>ry</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPointArray</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QPointArray</Function></FuncDef>
+ <ParamDef>int <Parameter>nPoints</Parameter></ParamDef>
+ <ParamDef>const QCOORD *<Parameter>points</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single parameter which is a list of points.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>point</Function></FuncDef>
+ <ParamDef>uint <Parameter>i</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the single parameter <Literal>i</Literal> and returns the
+<Literal>x</Literal> and <Literal>y</Literal> values as a tuple.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>putPoints</Function></FuncDef>
+ <ParamDef>int <Parameter>index</Parameter></ParamDef>
+ <ParamDef>int <Parameter>nPoints</Parameter></ParamDef>
+ <ParamDef>const QCOORD *<Parameter>points</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes two parameters, <Literal>index</Literal> and a list of points.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>putPoints</Function></FuncDef>
+ <ParamDef>int <Parameter>index</Parameter></ParamDef>
+ <ParamDef>int <Parameter>nPoints</Parameter></ParamDef>
+ <ParamDef>int <Parameter>firstx</Parameter></ParamDef>
+ <ParamDef>int <Parameter>firsty</Parameter></ParamDef>
+ <ParamDef>...</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setPoints</Function></FuncDef>
+ <ParamDef>int <Parameter>nPoints</Parameter></ParamDef>
+ <ParamDef>const QCOORD *<Parameter>points</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single parameter which is a list of points.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setPoints</Function></FuncDef>
+ <ParamDef>int <Parameter>nPoints</Parameter></ParamDef>
+ <ParamDef>int <Parameter>firstx</Parameter></ParamDef>
+ <ParamDef>int <Parameter>firsty</Parameter></ParamDef>
+ <ParamDef>...</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPopupMenu</Title>
+<FuncSynopsis>
+ <FuncDef>int <Function>exec</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>exec_loop</Literal> in Python.
+</Para>
+<Para>
+This method also causes ownership of the underlying C++ menu to be transfered
+to Python. This means that the C++ menu will be deleted when the Python
+wrapper is garbage collected. Although this is a little inconsistent, it
+ensures that the menu is deleted without having to explicity code it using
+<Literal>QObject.deleteLater()</Literal> or other techniques.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>exec</Function></FuncDef>
+ <ParamDef>const QPoint &<Parameter>pos</Parameter></ParamDef>
+ <ParamDef>int <Parameter>indexAtPoint</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>exec_loop</Literal> in Python.
+</Para>
+<Para>
+This method also causes ownership of the underlying C++ menu to be transfered
+to Python. This means that the C++ menu will be deleted when the Python
+wrapper is garbage collected. Although this is a little inconsistent, it
+ensures that the menu is deleted without having to explicity code it using
+<Literal>QObject.deleteLater()</Literal> or other techniques.
+</Para>
+</Sect2>
+<Sect2><Title>QPrintDialog (X11)</Title>
+<Para>
+<Literal>QPrintDialog</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QPrinter</Title>
+<Para>
+<Literal>QPrinter</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QProcess (Qt v3+)</Title>
+<Para>
+<Literal>QProcess</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QProgressBar</Title>
+<Para>
+<Literal>QProgressBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QProgressDialog</Title>
+<Para>
+<Literal>QProgressDialog</Literal> is fully implemented.
+value.
+</Para>
+</Sect2>
+<Sect2><Title>QPtrList&lt;type&gt; (Qt v2+)</Title>
+<Para>
+Types based on the <Literal>QPtrList</Literal> template are automatically
+converted to and from Python lists of the type.
+</Para>
+</Sect2>
+<Sect2><Title>QPushButton</Title>
+<Para>
+<Literal>QPushButton</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QRadioButton</Title>
+<Para>
+<Literal>QRadioButton</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QRangeControl</Title>
+<Para>
+<Literal>QRangeControl</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QRect</Title>
+<Para>
+The Python
+<Literal>&amp;</Literal>, <Literal>&amp;=</Literal>,
+<Literal>|</Literal>, <Literal>|=</Literal>,
+<Literal>==</Literal>, <Literal>!=</Literal>, <Literal>in</Literal> and
+<Literal>__nonzero__</Literal> operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>coords</Function></FuncDef>
+ <ParamDef>int *<Parameter>x1</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>y1</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>x2</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>y2</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple containing the four values.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>rect</Function></FuncDef>
+ <ParamDef>int *<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>y</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>w</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>h</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple containing the four values.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rBottom</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rLeft</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rRight</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rTop</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented. (Qt v2+)
+</Para>
+</Sect2>
+<Sect2><Title>QRegExp</Title>
+<Para>
+The Python <Literal>==</Literal> and <Literal>!=</Literal> operators are
+supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>match</Function></FuncDef>
+ <ParamDef>const char *<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>index</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>len</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes <Literal>str</Literal> and <Literal>index</Literal> parameters and
+returns a tuple of the <Literal>int</Literal> result and the
+<Literal>len</Literal> value. (Qt v1.x)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>match</Function></FuncDef>
+ <ParamDef>const QString &<Parameter>str</Parameter></ParamDef>
+ <ParamDef>int <Parameter>index</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>len</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes <Literal>str</Literal> and <Literal>index</Literal> parameters and
+returns a tuple of the <Literal>int</Literal> result and the
+<Literal>len</Literal> value. (Qt v2+)
+</Para>
+</Sect2>
+<Sect2><Title>QRegion</Title>
+<Para>
+The Python
+<Literal>|</Literal>, <Literal>|=</Literal>,
+<Literal>+</Literal>, <Literal>+=</Literal>,
+<Literal>&amp;</Literal>, <Literal>&amp;=</Literal>,
+<Literal>-</Literal>, <Literal>-=</Literal>,
+<Literal>^</Literal>, <Literal>^=</Literal>,
+<Literal>==</Literal>, <Literal>!=</Literal>, <Literal>in</Literal> and
+<Literal>__nonzero__</Literal> operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QArray&lt;QRect&gt; <Function>rects</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>setRects</Function></FuncDef>
+ <ParamDef>QRect *<Parameter>rects</Parameter></ParamDef>
+ <ParamDef>int <Parameter>num</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2.2+)
+</Para>
+</Sect2>
+<Sect2><Title>QScrollBar</Title>
+<Para>
+<Literal>QScrollBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QScrollView</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>contentsToViewport</Function></FuncDef>
+ <ParamDef>int <Parameter>x</Parameter></ParamDef>
+ <ParamDef>int <Parameter>y</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>vx</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>vy</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
+returns a tuple containing the <Literal>vx</Literal> and <Literal>vy</Literal>
+values. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>viewportToContents</Function></FuncDef>
+ <ParamDef>int <Parameter>vx</Parameter></ParamDef>
+ <ParamDef>int <Parameter>vy</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>vx</Literal> and <Literal>vy</Literal> parameters and
+returns a tuple containing the <Literal>x</Literal> and <Literal>y</Literal>
+values. (Qt v2+)
+</Para>
+</Sect2>
+<Sect2><Title>QSemaphore (Qt v2.2+)</Title>
+<Para>
+<Literal>QSemaphore</Literal> is fully implemented. The <Literal>+=</Literal>
+and <Literal>-=</Literal> operators have also been implemented, but require
+Python v2.0 or later.
+</Para>
+</Sect2>
+<Sect2><Title>QSemiModal (Qt v1, v2)</Title>
+<Para>
+<Literal>QSemiModal</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSessionManager (Qt v2+)</Title>
+<Para>
+<Literal>QSessionManager</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSettings (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>readBoolEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>def</Parameter> = 0</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>bool</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>double <Function>readDoubleEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>double <Parameter>def</Parameter> = 0</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>double</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>QString <Function>readEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>const QString &amp;<Parameter>def</Parameter> = QString::null</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QString</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>QStringList <Function>readListEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QStringList</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>QStringList <Function>readListEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>const QChar &amp;<Parameter>separator</Parameter></ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>QStringList</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>int <Function>readNumEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>int <Parameter>def</Parameter> = 0</ParamDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>ok</Literal> is not passed and the returned value is a tuple of
+the <Literal>int</Literal> result and the <Literal>ok</Literal> flag.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>writeEntry</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>key</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>value</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSGIStyle (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QScrollBar *<Parameter>sb</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+(Qt v2)
+</Para>
+</Sect2>
+<Sect2><Title>QSignalMapper</Title>
+<Para>
+<Literal>QSignalMapper</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSimpleRichText (Qt v2+)</Title>
+<Para>
+<Literal>QSimpleRichText</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSize</Title>
+<Para>
+The Python
+<Literal>+</Literal>, <Literal>+=</Literal>,
+<Literal>-</Literal>, <Literal>-=</Literal>,
+<Literal>*</Literal>, <Literal>*=</Literal>,
+<Literal>/</Literal>, <Literal>/=</Literal>,
+<Literal>==</Literal>, <Literal>!=</Literal> and <Literal>__nonzero__</Literal>
+operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rheight</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCOORD &amp;<Function>rwidth</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSizeGrip (Qt v2+)</Title>
+<Para>
+<Literal>QSizeGrip</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSizePolicy (Qt v2+)</Title>
+<Para>
+<Literal>QSizePolicy</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSlider</Title>
+<Para>
+<Literal>QSlider</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSocketNotifier</Title>
+<Para>
+<Literal>QSocketNotifier</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSound (Qt v2.2+)</Title>
+<Para>
+<Literal>QSound</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSpinBox</Title>
+<FuncSynopsis>
+ <FuncDef>virtual int <Function>mapTextToValue</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>int</Literal> result and the modified
+<Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QSplashScreen (Qt v3.2.0+)</Title>
+<Para>
+<Literal>QSplashScreen</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSplitter</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>getRange</Function></FuncDef>
+ <ParamDef>int <Parameter>id</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>min</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>max</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>id</Literal> parameter and returns the
+<Literal>min</Literal> and <Literal>max</Literal> values as a tuple. (Qt v2+)
+</Para>
+</Sect2>
+<Sect2><Title>QStatusBar</Title>
+<Para>
+<Literal>QStatusBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QChar (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>uchar &<Function>cell</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uchar &<Function>row</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QString</Title>
+<Para>
+A Python string object (or Unicode object) can be used whenever a
+<Literal>QString</Literal> can be used. A <Literal>QString</Literal> can be
+converted to a Python string object using the Python <Literal>str()</Literal>
+function, and to a Python Unicode object using the Python
+<Literal>unicode()</Literal> function.
+</Para>
+
+<Para>
+The Python <Literal>+</Literal>, <Literal>+=</Literal>, <Literal>*</Literal>,
+<Literal>*=</Literal>, <Literal>len</Literal>, <Literal>[]</Literal>
+(for reading slices and individual characters), <Literal>in</Literal> and
+comparison operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QCharRef <Function>at</Function></FuncDef>
+ <ParamDef>uint <Parameter>i</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QChar <Function>constref</Function> const</FuncDef>
+ <ParamDef>uint <Parameter>i</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QChar &<Function>ref</Function></FuncDef>
+ <ParamDef>uint <Parameter>i</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QString &<Function>setUnicodeCodes</Function></FuncDef>
+ <ParamDef>const ushort *<Parameter>unicode_as_shorts</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v2.1+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QString &<Function>sprintf</Function></FuncDef>
+ <ParamDef>const char *<Parameter>format</Parameter></ParamDef>
+ <ParamDef>...</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>short <Function>toShort</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>short</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>ushort <Function>toUShort</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>ushort</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>toInt</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>int</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uint <Function>toUInt</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>uint</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>long <Function>toLong</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>long</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>ulong <Function>toULong</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>ulong</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>float <Function>toFloat</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>float</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>double <Function>toDouble</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>double</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QStringList (Qt v2+)</Title>
+<Para>
+The Python <Literal>len</Literal>, <Literal>[]</Literal> (for both reading and
+writing slices and individual elements), <Literal>del</Literal> (for deleting
+slices and individual elements), <Literal>+</Literal>, <Literal>+=</Literal>,
+<Literal>*</Literal>, <Literal>*=</Literal>, <Literal>==</Literal>,
+<Literal>!=</Literal> and <Literal>in</Literal> operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Iterator <Function>append</Function></FuncDef>
+ <ParamDef>const QString &<Parameter>x</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This does not return a value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Iterator <Function>prepend</Function></FuncDef>
+ <ParamDef>const QString &<Parameter>x</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This does not return a value.
+</Para>
+</Sect2>
+<Sect2><Title>QStrList</Title>
+<Para>
+This class isn't implemented. Whenever a <Literal>QStrList</Literal> is the
+return type of a function or the type of an argument, a Python list of strings
+is used instead.
+</Para>
+</Sect2>
+<Sect2><Title>QStyle (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>getButtonShift</Function></FuncDef>
+ <ParamDef>int &amp;<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>x</Literal> and
+<Literal>y</Literal> values. (Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QScrollBar *<Parameter>b</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Thus takes only the <Literal>b</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+(Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>tabbarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>t</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>hframe</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>vframe</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>overlap</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>t</Literal> parameter and returns a tuple of the
+<Literal>hframe</Literal>, <Literal>vframe</Literal> and
+<Literal>overlap</Literal> values. (Qt v2)
+</Para>
+</Sect2>
+
+<Sect2><Title>QStyleOption (Qt v3+)</Title>
+<Para>
+<Literal>QStyleOption</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QStyleSheet (Qt v2+)</Title>
+<Para>
+<Literal>QStyleSheet</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QStyleSheetItem (Qt v2+)</Title>
+<Para>
+<Literal>QStyleSheetItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSyntaxHighlighter (Qt v3.1+)</Title>
+<Para>
+<Literal>QSyntaxHighlighter</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTab</Title>
+<Para>
+<Literal>QTab</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTabBar</Title>
+<FuncSynopsis>
+ <FuncDef>QList&lt;QTab&gt; <Function>tabList</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a list of <Literal>QTab</Literal> instances.
+</Para>
+</Sect2>
+<Sect2><Title>QTabDialog</Title>
+<Para>
+<Literal>QTabDialog</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTableView (Qt 1.x, Qt 2.x)</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>colXPos</Function></FuncDef>
+ <ParamDef>int <Parameter>col</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>xPos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>col</Literal> parameter and returns a tuple containing
+the <Literal>bool</Literal> result and <Literal>xPos</Literal>.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>rowYPos</Function></FuncDef>
+ <ParamDef>int <Parameter>row</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>yPos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>row</Literal> parameter and returns a tuple containing
+the <Literal>bool</Literal> result and <Literal>yPos</Literal>.
+</Para>
+</Sect2>
+<Sect2><Title>QTabWidget (Qt v2+)</Title>
+<Para>
+<Literal>QTabWidget</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTextBrowser (Qt v2+)</Title>
+<Para>
+<Literal>QTextBrowser</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTextCodec (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual QCString <Function>fromUnicode</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>uc</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>lenInOut</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The returned value is a tuple of the <Literal>QCString</Literal> result and the
+updated <Literal>lenInOut</Literal>.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTextDecoder (Qt v2+)</Title>
+<Para>
+<Literal>QTextDecoder</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTextEncoder (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual QCString <Function>fromUnicode</Function> = 0</FuncDef>
+ <ParamDef>const QString &amp;<Parameter>uc</Parameter></ParamDef>
+ <ParamDef>int &amp;<Parameter>lenInOut</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The returned value is a tuple of the <Literal>QCString</Literal> result and the
+updated <Literal>lenInOut</Literal>.
+</Para>
+</Sect2>
+<Sect2><Title>QTextEdit (Qt v3+)</Title>
+<FuncSynopsis>
+<FuncDef>int <Function>charAt</Function></FuncDef>
+ <ParamDef>const QPoint &amp;<Parameter>pos</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>para</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>pos</Literal> parameter and returns a tuple of the
+value returned via the <Literal>para</Literal> pointer and the int result.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>del</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delChar</Literal> in Python.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>virtual bool <Function>find</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>expr</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>cs</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>wo</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>forward</Parameter> = TRUE</ParamDef>
+ <ParamDef>int *<Parameter>para</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>index</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+If the <Literal>para</Literal> and <Literal>index</Literal> parameters are
+omitted then the bool result is returned. If both are supplied (as integers)
+then a tuple of the bool result and the modified values of
+<Literal>para</Literal> and <Literal>index</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>void <Function>getCursorPosition</Function></FuncDef>
+ <ParamDef>int *<Parameter>para</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>index</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the values returned via the
+<Literal>para</Literal> and <Literal>index</Literal> pointers.
+</Para>
+
+<FuncSynopsis>
+<FuncDef>void <Function>getSelection</Function></FuncDef>
+ <ParamDef>int *<Parameter>paraFrom</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>indexFrom</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>paraTo</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>indexTo</Parameter></ParamDef>
+ <ParamDef>int <Parameter>selNum</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>selNum</Literal> parameter and returns a tuple of
+the <Literal>paraFrom</Literal>, <Literal>indexFrom</Literal>,
+<Literal>paraTo</Literal> and <Literal>indexTo</Literal> values.
+</Para>
+</Sect2>
+<Sect2><Title>QTextStream</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QTextStream</Function></FuncDef>
+ <ParamDef>FILE *<Parameter>fp</Parameter></ParamDef>
+ <ParamDef>int <Parameter>mode</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QTextStream &<Function>readRawBytes</Function></FuncDef>
+ <ParamDef>char *<Parameter>buf</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QTextStream &<Function>writeRawBytes</Function></FuncDef>
+ <ParamDef>const char *<Parameter>buf</Parameter></ParamDef>
+ <ParamDef>uint <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTextIStream (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QTextIStream</Function></FuncDef>
+ <ParamDef>FILE *<Parameter>fp</Parameter></ParamDef>
+ <ParamDef>int <Parameter>mode</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTextOStream (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QTextOStream</Function></FuncDef>
+ <ParamDef>FILE *<Parameter>fp</Parameter></ParamDef>
+ <ParamDef>int <Parameter>mode</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTextView (Qt v2+)</Title>
+<Para>
+<Literal>QTextView</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QThread (Qt v2.2+)</Title>
+<Para>
+<Literal>QThread</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTimer</Title>
+<Para>
+<Literal>QTimer</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QToolBar</Title>
+<Para>
+<Literal>QToolBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QToolBox (Qt v3.2.0+)</Title>
+<Para>
+<Literal>QToolBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QToolButton</Title>
+<Para>
+<Literal>QToolButton</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QToolTip</Title>
+<Para>
+<Literal>QToolTip</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QToolTipGroup</Title>
+<Para>
+<Literal>QToolTipGroup</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QTranslator (Qt v2+)</Title>
+<Para>
+<Literal>QTranslator</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTranslatorMessage (Qt v2.2+)</Title>
+<Para>
+<Literal>QTranslatorMessage</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QUrl (Qt v2.1+)</Title>
+<Para>
+<Literal>QUrl</Literal> is fully implemented, including the
+<Literal>QString()</Literal>, <Literal>==</Literal> and <Literal>!=</Literal>
+operators.
+</Para>
+</Sect2>
+<Sect2><Title>QUrlInfo (Qt v2.1+)</Title>
+<Para>
+<Literal>QUrlInfo</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QUrlOperator (Qt v2.1+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual bool <Function>isDir</Function></FuncDef>
+ <ParamDef>bool *<Parameter>ok</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This returns a tuple of the <Literal>bool</Literal> result and the
+<Literal>ok</Literal> value.
+</Para>
+</Sect2>
+<Sect2><Title>QUuid (Qt v3.0+)</Title>
+<Para>
+<Literal>QUuid</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QValidator</Title>
+<FuncSynopsis>
+ <FuncDef>virtual State <Function>validate</Function></FuncDef>
+ <ParamDef>QString& <Parameter>input</Parameter></ParamDef>
+ <ParamDef>int& <Parameter>pos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The returned value is a tuple of the <Literal>State</Literal> result and the
+updated <Literal>pos</Literal>.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDoubleValidator</Title>
+<FuncSynopsis>
+ <FuncDef>State <Function>validate</Function></FuncDef>
+ <ParamDef>QString& <Parameter>input</Parameter></ParamDef>
+ <ParamDef>int& <Parameter>pos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The returned value is a tuple of the <Literal>State</Literal> result and the
+updated <Literal>pos</Literal>.
+</Para>
+</Sect2>
+
+<Sect2><Title>QIntValidator</Title>
+<FuncSynopsis>
+ <FuncDef>State <Function>validate</Function></FuncDef>
+ <ParamDef>QString& <Parameter>input</Parameter></ParamDef>
+ <ParamDef>int& <Parameter>pos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The returned value is a tuple of the <Literal>State</Literal> result and the
+updated <Literal>pos</Literal>.
+</Para>
+</Sect2>
+
+<Sect2><Title>QRegExpValidator (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual State <Function>validate</Function></FuncDef>
+ <ParamDef>QString& <Parameter>input</Parameter></ParamDef>
+ <ParamDef>int& <Parameter>pos</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The returned value is a tuple of the <Literal>State</Literal> result and the
+updated <Literal>pos</Literal>.
+</Para>
+</Sect2>
+<Sect2><Title>QValueList&lt;type&gt; (Qt v2+)</Title>
+<Para>
+Types based on the <Literal>QValueList</Literal> template are automatically
+converted to and from Python lists of the type.
+</Para>
+</Sect2>
+<Sect2><Title>QVariant (Qt v2.1+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QVariant</Function></FuncDef>
+ <ParamDef>const char *<Parameter>val</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QVariant</Function></FuncDef>
+ <ParamDef>const QBitArray &amp;<Parameter>val</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QVariant</Function></FuncDef>
+ <ParamDef>const QValueList&lt;QVariant&gt; &amp;<Parameter>val</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QVariant</Function></FuncDef>
+ <ParamDef>const QMap&lt;QString,QVariant&gt; &amp;<Parameter>val</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QBitArray &amp;<Function>asBitArray</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool &amp;<Function>asBool</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>double &amp;<Function>asDouble</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int &amp;<Function>asInt</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QValueList&lt;QVariant&gt; &amp;<Function>asList</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QMap&lt;QString,QVariant&gt; &amp;<Function>asMap</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>uint &amp;<Function>asUInt</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QValueListConstIterator&lt;QVariant&gt;<Function>listBegin</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QValueListConstIterator&lt;QVariant&gt;<Function>listEnd</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QMapConstIterator&lt;QString,QVariant&gt;<Function>mapBegin</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QMapConstIterator&lt;QString,QVariant&gt;<Function>mapEnd</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QMapConstIterator&lt;QString,QVariant&gt;<Function>mapFind</Function> const</FuncDef>
+ <ParamDef>const QString &<Parameter>key</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QValueListConstIterator&lt;QString&gt;<Function>stringListBegin</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QValueListConstIterator&lt;QString&gt;<Function>stringListEnd</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>const QBitArray <Function>toBitArray</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>const QValueList&lt;QVariant&gt;<Function>toList</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>const QMap&lt;QString,QVariant&gt;<Function>toMap</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QVBox (Qt v2+)</Title>
+<Para>
+<Literal>QVBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QVButtonGroup (Qt v2+)</Title>
+<Para>
+<Literal>QVButtonGroup</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QVGroupBox (Qt v2+)</Title>
+<Para>
+<Literal>QVGroupBox</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QWaitCondition (Qt v2.2+)</Title>
+<Para>
+<Literal>QWaitCondition</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QWhatsThis</Title>
+<Para>
+<Literal>QWhatsThis</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QWidget</Title>
+<FuncSynopsis>
+ <FuncDef>QWExtra *<Function>extraData</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QFocusData *<Function>focusData</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>lower</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>lowerW</Literal> in Python.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>raise</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>raiseW</Literal> in Python.
+</Para>
+</Sect2>
+<Sect2><Title>QWidgetList</Title>
+<Para>
+This class isn't implemented. Whenever a <Literal>QWidgetList</Literal> is the
+return type of a function or the type of an argument, a Python list of
+instances is used instead.
+</Para>
+</Sect2>
+<Sect2><Title>QWidgetStack</Title>
+<Para>
+<Literal>QWidgetStack</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QWindow</Title>
+<Para>
+<Literal>QWindow</Literal> is fully implemented (Qt v1.x).
+</Para>
+</Sect2>
+<Sect2><Title>QWindowsStyle (Qt v2+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>getButtonShift</Function></FuncDef>
+ <ParamDef>int &<Parameter>x</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>y</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>x</Literal> and
+<Literal>y</Literal> values. (Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>scrollBarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>sb</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderMin</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderMax</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>sliderLength</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>buttonDim</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>sb</Literal> parameter and returns a tuple of the
+<Literal>sliderMin</Literal>, <Literal>sliderMax</Literal>,
+<Literal>sliderLength</Literal> and <Literal>buttonDim</Literal> values.
+(Qt v2)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>tabbarMetrics</Function></FuncDef>
+ <ParamDef>const QTabBar *<Parameter>t</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>hframe</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>vframe</Parameter></ParamDef>
+ <ParamDef>int &<Parameter>overlap</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes only the <Literal>t</Literal> parameter and returns a tuple of the
+<Literal>hframe</Literal>, <Literal>vframe</Literal> and
+<Literal>overlap</Literal> values. (Qt v2)
+</Para>
+</Sect2>
+<Sect2><Title>QWindowsXPStyle (Qt v3.0.1+, Windows)</Title>
+<Para>
+<Literal>QWindowsXPStyle</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QWizard (Qt v2+)</Title>
+<Para>
+<Literal>QWizard</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QWMatrix</Title>
+<Para>
+The Python <Literal>==</Literal>, <Literal>!=</Literal> and
+<Literal>*=</Literal> operators are supported.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>QWMatrix <Function>invert</Function> const</FuncDef>
+ <ParamDef>bool *<Parameter>invertible</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the <Literal>QWMatrix</Literal>
+result and the <Literal>invertible</Literal> value.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>map</Function> const</FuncDef>
+ <ParamDef>int <Parameter>x</Parameter></ParamDef>
+ <ParamDef>int <Parameter>y</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>tx</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>ty</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
+returns a tuple containing the <Literal>tx</Literal> and <Literal>ty</Literal>
+values.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>map</Function> const</FuncDef>
+ <ParamDef>float <Parameter>x</Parameter></ParamDef>
+ <ParamDef>float <Parameter>y</Parameter></ParamDef>
+ <ParamDef>float *<Parameter>tx</Parameter></ParamDef>
+ <ParamDef>float *<Parameter>ty</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
+returns a tuple containing the <Literal>tx</Literal> and <Literal>ty</Literal>
+values. (Qt v1.x)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>map</Function> const</FuncDef>
+ <ParamDef>double <Parameter>x</Parameter></ParamDef>
+ <ParamDef>double <Parameter>y</Parameter></ParamDef>
+ <ParamDef>double *<Parameter>tx</Parameter></ParamDef>
+ <ParamDef>double *<Parameter>ty</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>x</Literal> and <Literal>y</Literal> parameters and
+returns a tuple containing the <Literal>tx</Literal> and <Literal>ty</Literal>
+values. (Qt v2+)
+</Para>
+</Sect2>
+<Sect2><Title>QWorkspace (Qt v2.1+)</Title>
+<Para>
+<Literal>QWorkspace</Literal> is fully implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtaxcontainer</Literal> Module Reference</Title>
+<Sect2><Title>QAxBase (Windows, Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QAxObject</Function></FuncDef>
+ <ParamDef>IUnknown *<Parameter>iface</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>long <Function>queryInterface</Function></FuncDef>
+ <ParamDef>const QUuid &amp;<Parameter>uuid</Parameter></ParamDef>
+ <ParamDef>void **<Parameter>iface</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>PropertyBag <Function>propertyBag</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>setPropertyBag</Function></FuncDef>
+ <ParamDef>const PropertyBag &amp;<Parameter>bag</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>unsigned long <Function>registerWeakActiveObject</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>guid</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This is a utility method provided by PyQt to make it easier to use
+Mark Hammond's <Literal>win32com</Literal> module to manipulate objects
+created by the <Literal>qtaxcontainer</Literal> module.
+</Para>
+<Para>
+The <Literal>RegisterActiveObject()</Literal> COM function is called to
+register the <Literal>QAxBase</Literal> instance as a weak object with the
+<Literal>guid</Literal> GUID. The revoke handle is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>static void <Function>revokeActiveObject</Function></FuncDef>
+ <ParamDef>unsigned long <Parameter>rhandle</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This is a wrapper around the <Literal>RevokeActiveObject()</Literal> COM
+function and is called to revoke the object registered using
+<Literal>registerWeakActiveObject()</Literal>. <Literal>rhandle</Literal> is
+the revoke handle returned by <Literal>registerWeakActiveObject()</Literal>.
+</Para>
+</Sect2>
+<Sect2><Title>QAxObject (Windows, Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QAxObject</Function></FuncDef>
+ <ParamDef>IUnknown *<Parameter>iface</Parameter></ParamDef>
+ <ParamDef>QObject *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QAxWidget (Windows, Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QAxWidget</Function></FuncDef>
+ <ParamDef>IUnknown *<Parameter>iface</Parameter></ParamDef>
+ <ParamDef>QWidget *<Parameter>parent</Parameter> = 0</ParamDef>
+ <ParamDef>const char *<Parameter>name</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtcanvas</Literal> Module Reference</Title>
+<Sect2><Title>QCanvas (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvas</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasEllipse (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasEllipse</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasItem (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasItemList (Qt v2.2+)</Title>
+<Para>
+This class isn't implemented. Whenever a <Literal>QCanvasItemList</Literal> is
+the return type of a function or the type of an argument, a Python list of
+<Literal>QCanvasItem</Literal> instances is used instead.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasLine (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasLine</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasPixmap (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasPixmap</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasPixmapArray (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QPixmapArray</Function></FuncDef>
+ <ParamDef>QList&lt;QPixmap&gt; <Parameter>pixmaps</Parameter></ParamDef>
+ <ParamDef>QList&lt;QPoint&gt; <Parameter>hotspots</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>pixmaps</Literal> argument is a Python list of QPixmap instances,
+and the <Literal>hotspots</Literal> argument is a Python list of QPoint
+instances. (Qt v2.2.0 - Qt v2.3.1)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QPixmapArray</Function></FuncDef>
+ <ParamDef>QValueList&lt;QPixmap&gt; <Parameter>pixmaps</Parameter></ParamDef>
+ <ParamDef>QPointArray <Parameter>hotspots</Parameter> = QPointArray()</ParamDef>
+</FuncSynopsis>
+<Para>
+The <Literal>pixmaps</Literal> argument is a Python list of QPixmap instances.
+(Qt v3+)
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasPolygon (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasPolygon</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasPolygonalItem (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasPolygonalItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasRectangle (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasRectangle</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasSpline (Qt v3.0+)</Title>
+<Para>
+<Literal>QCanvasSpline</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasSprite (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasSprite</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasText (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasText</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCanvasView (Qt v2.2+)</Title>
+<Para>
+<Literal>QCanvasView</Literal> is fully implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtext</Literal> Module Reference</Title>
+
+<Sect2><Title>QextScintilla</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>getCursorPosition</Function></FuncDef>
+ <ParamDef>int *<Parameter>line</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>index</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the values returned by the
+<Literal>line</Literal> and <Literal>index</Literal> pointers.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>getSelection</Function></FuncDef>
+ <ParamDef>int *<Parameter>lineFrom</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>indexFrom</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>lineTo</Parameter></ParamDef>
+ <ParamDef>int *<Parameter>indexTo</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes no parameters and returns a tuple of the values returned by the
+<Literal>lineFrom</Literal>, <Literal>indexFrom</Literal>,
+<Literal>lineTo</Literal> and <Literal>indexTo</Literal> pointers.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaAPIs</Title>
+<Para>
+<Literal>QextScintillaAPIs</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaBase</Title>
+<Para>
+<Literal>QextScintillaBase</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaCommand</Title>
+<Para>
+<Literal>QextScintillaCommand</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaCommandSet</Title>
+<Para>
+<Literal>QextScintillaCommandSet</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaDocument</Title>
+<Para>
+<Literal>QextScintillaDocument</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexer</Title>
+<Para>
+<Literal>QextScintillaLexer</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerBash (QScintilla v1.4+)</Title>
+<Para>
+<Literal>QextScintillaLexerBash</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerBatch (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerBatch</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerCPP</Title>
+<Para>
+<Literal>QextScintillaLexerCPP</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerCSharp</Title>
+<Para>
+<Literal>QextScintillaLexerCSharp</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerCSS (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerCSS</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerDiff (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerDiff</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerHTML (QScintilla v1.1+)</Title>
+<Para>
+<Literal>QextScintillaLexerHTML</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerIDL</Title>
+<Para>
+<Literal>QextScintillaLexerIDL</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerJava</Title>
+<Para>
+<Literal>QextScintillaLexerJava</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerJavaScript</Title>
+<Para>
+<Literal>QextScintillaLexerJavaScript</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerLua (QScintilla v1.5+)</Title>
+<Para>
+<Literal>QextScintillaLexerLua</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerMakefile (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerMakefile</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerPerl</Title>
+<Para>
+<Literal>QextScintillaLexerPerl</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerPOV (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerPOV</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerProperties (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerProperties</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerPython</Title>
+<Para>
+<Literal>QextScintillaLexerPython</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerRuby (QScintilla v1.5+)</Title>
+<Para>
+<Literal>QextScintillaLexerRuby</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerSQL (QScintilla v1.1+)</Title>
+<Para>
+<Literal>QextScintillaLexerSQL</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaLexerTeX (QScintilla v1.6+)</Title>
+<Para>
+<Literal>QextScintillaLexerTeX</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaMacro</Title>
+<Para>
+<Literal>QextScintillaMacro</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QextScintillaPrinter</Title>
+<Para>
+<Literal>QextScintillaPrinter</Literal> is fully implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtgl</Literal> Module Reference</Title>
+<Sect2><Title>QGL</Title>
+<Para>
+<Literal>QGL</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QGLContext</Title>
+<Para>
+<Literal>QGLContext</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QGLFormat</Title>
+<Para>
+<Literal>QGLFormat</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QGLWidget</Title>
+<Para>
+<Literal>QGLWidget</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QGLColormap (Qt v3.0+)</Title>
+<FuncSynopsis>
+ <FuncDef>void <Function>setEntries</Function></FuncDef>
+ <ParamDef>int <Parameter>count</Parameter></ParamDef>
+ <ParamDef>const QRgb *<Parameter>colors</Parameter></ParamDef>
+ <ParamDef>int <Parameter>base</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtnetwork</Literal> Module Reference</Title>
+<Sect2><Title>QDns (Qt v2.2+)</Title>
+<Para>
+<Literal>QDns</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QFtp (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>maxlen</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>maxlen</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+</Sect2>
+<Sect2><Title>QHostAddress (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QHostAddress</Function></FuncDef>
+ <ParamDef>Q_UINT8 *<Parameter>ip6Addr</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef><Function>QHostAddress</Function></FuncDef>
+ <ParamDef>const Q_IPV6ADDR &amp;<Parameter>ip6Addr</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>void <Function>setAddress</Function></FuncDef>
+ <ParamDef>Q_UINT8 *<Parameter>ip6Addr</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_IPV6ADDR <Function>toIPv6Address</Function> const</FuncDef>
+ <ParamDef><Parameter></Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QHttp (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>maxlen</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>maxlen</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHttpHeader (Qt v3.1+)</Title>
+<Para>
+<Literal>QHttpHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHttpRequestHeader (Qt v3.1+)</Title>
+<Para>
+<Literal>QHttpRequestHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHttpResponseHeader (Qt v3.1+)</Title>
+<Para>
+<Literal>QHttpResponseHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QLocalFs (Qt v2.1+)</Title>
+<Para>
+<Literal>QLocalFs</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QServerSocket (Qt v2.2+)</Title>
+<Para>
+<Literal>QServerSocket</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSocket (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>len</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>Py_None</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readLine</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>maxlen</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>maxlen</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>Py_None</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>writeBlock</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>data</Literal> and not passed
+as a parameter.
+</Para>
+</Sect2>
+<Sect2><Title>QSocketDevice (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>len</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>writeBlock</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>data</Literal> and not passed
+as a parameter.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtpe</Literal> Module Reference</Title>
+
+<Sect2><Title>QPEApplication</Title>
+<FuncSynopsis>
+ <FuncDef><Function>QApplication</Function></FuncDef>
+ <ParamDef>int& <Parameter>argc</Parameter></ParamDef>
+ <ParamDef>char **<Parameter>argv</Parameter></ParamDef>
+ <ParamDef>Type <Parameter>type</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes two parameters, the first of which is a list of argument strings.
+Arguments used by Qt are removed from the list.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>int <Function>exec</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>exec_loop</Literal> in Python.
+</Para>
+</Sect2>
+
+<Sect2><Title>AppLnk</Title>
+<FuncSynopsis>
+ <FuncDef>virtual QString <Function>exec</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>exec_property</Literal> in Python.
+</Para>
+</Sect2>
+
+<Sect2><Title>AppLnkSet</Title>
+<Para>
+<Literal>AppLnkSet</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>Config</Title>
+<Para>
+<Literal>Config</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>DateFormat</Title>
+<Para>
+<Literal>DateFormat</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>DocLnk</Title>
+<FuncSynopsis>
+ <FuncDef>QString <Function>exec</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed to <Literal>exec_property</Literal> in Python.
+</Para>
+</Sect2>
+
+<Sect2><Title>DocLnkSet</Title>
+<Para>
+<Literal>DocLnkSet</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>FileManager</Title>
+<Para>
+<Literal>FileManager</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>FileSelector</Title>
+<Para>
+<Literal>FileSelector</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>FileSelectorItem</Title>
+<Para>
+<Literal>FileSelectorItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>FontDatabase</Title>
+<Para>
+<Literal>FontDatabase</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>Global</Title>
+<FuncSynopsis>
+ <FuncDef>static void <Function>setBuiltinCommands</Function></FuncDef>
+ <ParamDef>Command *</ParamDef>
+</FuncSynopsis>
+<Para>
+Not implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>MenuButton</Title>
+<Para>
+<Literal>MenuButton</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCopEnvelope</Title>
+<Para>
+<Literal>QCopEnvelope</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDawg</Title>
+<Para>
+<Literal>QDawg</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QPEMenuBar</Title>
+<Para>
+<Literal>QPEMenuBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QPEToolBar</Title>
+<Para>
+<Literal>QPEToolBar</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>Resource</Title>
+<Para>
+<Literal>Resource</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+</Sect1>
+<Sect1><Title><Literal>qtsql</Literal> Module Reference</Title>
+<Sect2><Title>QDataBrowser (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual void <Function>del</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delOnCursor</Literal> in Python.
+</Para>
+</Sect2>
+<Sect2><Title>QDataTable (Qt v3+)</Title>
+<Para>
+<Literal>QDataTable</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QDataView (Qt v3+)</Title>
+<Para>
+<Literal>QDataView</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QEditorFactory (Qt v3+)</Title>
+<Para>
+<Literal>QEditorFactory</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSql (Qt v3+)</Title>
+<Para>
+<Literal>QSql</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlCursor (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>virtual int <Function>del</Function></FuncDef>
+ <ParamDef>bool <Parameter>invalidate</Parameter> = TRUE</ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delRecords</Literal> in Python.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>virtual int <Function>del</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>filter</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>invalidate</Parameter> = TRUE</ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delRecords</Literal> in Python.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>exec</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>query</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>execQuery</Literal> in Python.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlDatabase (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>QSqlQuery <Function>exec</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>query</Parameter> = QString::null</ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>execStatement</Literal> in Python.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlDriver (Qt v3+)</Title>
+<Para>
+<Literal>QSqlDriver</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlEditorFactory (Qt v3+)</Title>
+<Para>
+<Literal>QSqlEditorFactory</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlError (Qt v3+)</Title>
+<Para>
+<Literal>QSqlError</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlField (Qt v3+)</Title>
+<Para>
+<Literal>QSqlField</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QSqlFieldInfo (Qt v3+)</Title>
+<Para>
+<Literal>QSqlFieldInfo</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlForm (Qt v3+)</Title>
+<Para>
+<Literal>QSqlForm</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlIndex (Qt v3+)</Title>
+<Para>
+<Literal>QSqlIndex</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlPropertyMap (Qt v3+)</Title>
+<Para>
+<Literal>QSqlPropertyMap</Literal> is fully implemented. However, because PyQt
+does not allow new properties to be defined, it is not possible to implement
+custom editor widgets in Python and add them to a property map. These will
+simply be ignored.
+</Para>
+
+<Para>
+This problem may be addressed in a future release of PyQt.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlQuery (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>QMap&lt;QString,QVariant&gt; <Function>boundValues</Function> const</FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v3.2.0+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>virtual bool <Function>exec</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>query</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>execQuery</Literal> in Python.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>exec</Function></FuncDef>
+ <ParamDef></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>execQuery</Literal> in Python. (Qt v3.1+)
+</Para>
+</Sect2>
+<Sect2><Title>QSqlRecord (Qt v3+)</Title>
+<Para>
+<Literal>QSqlRecord</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QSqlRecordInfo (Qt v3+)</Title>
+<Para>
+<Literal>QSqlRecordInfo</Literal> is implemented as a Python list of
+<Literal>QSqlFieldInfo</Literal> instances.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlResult (Qt v3+)</Title>
+<Para>
+<Literal>QSqlResult</Literal> is fully implemented.
+</Para>
+</Sect2>
+<Sect2><Title>QSqlSelectCursor (Qt v3.2.0+)</Title>
+<FuncSynopsis>
+ <FuncDef>int <Function>del</Function></FuncDef>
+ <ParamDef>bool <Parameter>invalidate</Parameter> = TRUE</ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>delRecords</Literal> in Python.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>exec</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>query</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This has been renamed <Literal>execQuery</Literal> in Python.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qttable</Literal> Module Reference</Title>
+<Sect2><Title>QTable (Qt v2.2+)</Title>
+<Para>
+<Literal>QTable</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTableItem (Qt v2.2+)</Title>
+<Para>
+<Literal>QTableItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QCheckTableItem (Qt v3+)</Title>
+<Para>
+<Literal>QCheckTableItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QComboTableItem (Qt v3+)</Title>
+<Para>
+<Literal>QComboTableItem</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QTableSelection (Qt v2.2+)</Title>
+<Para>
+<Literal>QTableSelection</Literal> is fully implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtui</Literal> Module Reference</Title>
+<Sect2><Title>QWidgetFactory (Qt v3+)</Title>
+<Para>
+<Literal>QWidgetFactory</Literal> is fully implemented.
+</Para>
+</Sect2>
+</Sect1>
+<Sect1><Title><Literal>qtxml</Literal> Module Reference</Title>
+<Sect2><Title>QDomImplementation (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomImplementation</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomNode (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomNode</Literal> is fully implemented, including the Python
+<Literal>==</Literal> and <Literal>!=</Literal> operators.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomNodeList (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomNodeList</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomDocument (Qt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QCString &amp;<Parameter>buffer</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>namespaceProcessing</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>buffer</Literal> and
+<Literal>namespaceProcessing</Literal> parameters and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QByteArray &amp;<Parameter>buffer</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>namespaceProcessing</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>buffer</Literal> and
+<Literal>namespaceProcessing</Literal> parameters and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>text</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>namespaceProcessing</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>text</Literal> and
+<Literal>namespaceProcessing</Literal> parameters and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QIODevice *<Parameter>dev</Parameter></ParamDef>
+ <ParamDef>bool <Parameter>namespaceProcessing</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>dev</Literal> and
+<Literal>namespaceProcessing</Literal> parameters and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QCString &amp;<Parameter>buffer</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>buffer</Literal> parameter only and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QByteArray &amp;<Parameter>buffer</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>buffer</Literal> parameter only and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QString &amp;<Parameter>text</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>text</Literal> parameter only and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>const QIODevice *<Parameter>dev</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+This takes the <Literal>dev</Literal> parameter only and returns a tuple
+containing the <Literal>bool</Literal> result and the
+<Literal>errorMsg</Literal>, <Literal>errorLine</Literal> and
+<Literal>errorColumn</Literal> values. (Qt v3+)
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>bool <Function>setContent</Function></FuncDef>
+ <ParamDef>QXmlInputSource *<Parameter>source</Parameter></ParamDef>
+ <ParamDef>QXmlReader *<Parameter>reader</Parameter></ParamDef>
+ <ParamDef>QString *<Parameter>errorMsg</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorLine</Parameter> = 0</ParamDef>
+ <ParamDef>int *<Parameter>errorColumn</Parameter> = 0</ParamDef>
+</FuncSynopsis>
+<Para>
+Not yet implemented. (Qt v3.2.0+)
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomDocumentFragment (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomDocumentFragment</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomDocumentType (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomDocumentType</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomNamedNodeMap (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomNamedNodeMap</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomCharacterData (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomCharacterData</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomAttr (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomAttr</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomElement (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomElement</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomText (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomText</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomComment (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomComment</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomCDATASection (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomCDATASection</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomNotation (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomNotation</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomEntity (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomEntity</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomEntityReference (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomEntityReference</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QDomProcessingInstruction (Qt v2.2+)</Title>
+<Para>
+<Literal>QDomProcessingInstruction</Literal> is fully implemented.
+</Para>
+</Sect2>
+</Sect1>
+</Article>