summaryrefslogtreecommitdiffstats
path: root/doc/PyQt.html
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-29 00:31:00 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-29 00:31:00 -0600
commitb388516ca2691303a076a0764fd40bf7116fe43d (patch)
tree6f1615d1f12b325f4d1cd9c25d1519303794001a /doc/PyQt.html
downloadpytqt-b388516ca2691303a076a0764fd40bf7116fe43d.tar.gz
pytqt-b388516ca2691303a076a0764fd40bf7116fe43d.zip
Initial import of python-qt3
Diffstat (limited to 'doc/PyQt.html')
-rw-r--r--doc/PyQt.html12845
1 files changed, 12845 insertions, 0 deletions
diff --git a/doc/PyQt.html b/doc/PyQt.html
new file mode 100644
index 0000000..a7fb2ab
--- /dev/null
+++ b/doc/PyQt.html
@@ -0,0 +1,12845 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>Python Bindings for Qt (3.18.1)</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"></HEAD
+><BODY
+CLASS="ARTICLE"
+><DIV
+CLASS="ARTICLE"
+><DIV
+CLASS="TITLEPAGE"
+><H1
+CLASS="TITLE"
+><A
+NAME="AEN2"
+>Python Bindings for Qt (3.18.1)</A
+></H1
+><H3
+CLASS="AUTHOR"
+><A
+NAME="AEN4"
+>Phil Thompson</A
+></H3
+><DIV
+><DIV
+CLASS="ABSTRACT"
+><P
+></P
+><A
+NAME="AEN7"
+></A
+><P
+> This document describes a set of Python bindings for the Qt widget set.
+ Contact the author at <CODE
+CLASS="EMAIL"
+>&#60;<A
+HREF="mailto:phil@riverbankcomputing.co.uk"
+>phil@riverbankcomputing.co.uk</A
+>&#62;</CODE
+>.
+ </P
+><P
+></P
+></DIV
+></DIV
+><HR></DIV
+><DIV
+CLASS="SECT1"
+><H2
+CLASS="SECT1"
+><A
+NAME="AEN10"
+>Introduction</A
+></H2
+><P
+>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.7, Qt Non-commercial, Qtopia 1.5.0, and Python
+versions 1.5 to 2.5. Qt/Embedded v3 is not supported. Qt v4 is supported
+by PyQt v4.</P
+><P
+>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.</P
+><P
+>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.</P
+><P
+>PyQt for MacOS/X requires Qt v3.1.0 or later and Python v2.3 or later.</P
+><P
+>The bindings are implemented as a number of Python modules</P
+><P
+></P
+><UL
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qt</TT
+> is the main module and contains the core classes and most
+user interface widgets.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtaxcontainer</TT
+> contains a sub-set of the classes implemented
+in Qt's QAxContainer module, part of Qt's ActiveQt framework.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtcanvas</TT
+> contains the classes implemented in Qt's Canvas
+module.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtgl</TT
+> contains the classes implemented in Qt's OpenGL module.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtnetwork</TT
+> contains the classes implemented in Qt's Network
+module.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtpe</TT
+> contains the classes implemented in Qtopia (originally
+called the Qt Palmtop Environment). It is only supported with Qt/Embedded.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtsql</TT
+> contains the classes implemented in Qt's SQL module.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qttable</TT
+> contains the classes implemented in Qt's Table
+module.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtui</TT
+> contains the classes implemented in Qt's qui library.
+These allow GUIs to be created directly from Qt Designer's
+<TT
+CLASS="LITERAL"
+>.ui</TT
+> files.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtxml</TT
+> contains the classes implemented in Qt's XML module.</P
+></LI
+><LI
+><P
+><TT
+CLASS="LITERAL"
+>qtext</TT
+> 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.</P
+></LI
+></UL
+><P
+>PyQt also includes the <TT
+CLASS="LITERAL"
+>pyuic</TT
+> and
+<TT
+CLASS="LITERAL"
+>pylupdate</TT
+> utilities which correspond to the Qt
+<TT
+CLASS="LITERAL"
+>uic</TT
+> and <TT
+CLASS="LITERAL"
+>lupdate</TT
+> utilities.
+<TT
+CLASS="LITERAL"
+>pyuic</TT
+> converts the GUI designs created with Qt Designer to
+executable Python code. <TT
+CLASS="LITERAL"
+>pylupdate</TT
+> scans Python code,
+extracts all strings that are candidates for internationalisation, and creates
+an XML file for use by Qt Linguist.</P
+>
+</DIV>
+<DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN95"
+>Other PyQt Goodies</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN97"
+>Using Qt Designer</A
+></H3
+><P
+>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
+<TT
+CLASS="LITERAL"
+>uic</TT
+> which generates C++ code from that XML.</P
+><P
+>PyQt includes <TT
+CLASS="LITERAL"
+>pyuic</TT
+> which generates Python code from the
+same XML. The Python code is self contained and can be executed immediately.</P
+><P
+>It is sometimes useful to be able to include some specific Python code in the
+output generated by <TT
+CLASS="LITERAL"
+>pyuic</TT
+>. For example, if you are using
+custom widgets, <TT
+CLASS="LITERAL"
+>pyuic</TT
+> has no way of knowing the name of the
+Python module containing the widget and so cannot generate the required
+<TT
+CLASS="LITERAL"
+>import</TT
+> statement. To help get around this,
+<TT
+CLASS="LITERAL"
+>pyuic</TT
+> will extract any lines entered in the
+<TT
+CLASS="LITERAL"
+>Comment</TT
+> field of Qt Designer's
+<TT
+CLASS="LITERAL"
+>Form Settings</TT
+> dialog that begin with
+<TT
+CLASS="LITERAL"
+>Python:</TT
+> and copies them to the generated output.</P
+><P
+>Here's a simple example showing the contents of the <TT
+CLASS="LITERAL"
+>Comment</TT
+>
+field.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>This comment will be ignored by pyuic.
+Python:
+Python:# Import our custom widget.
+Python:from foo import bar</PRE
+></TD
+></TR
+></TABLE
+><P
+>Here's the corresponding output from <TT
+CLASS="LITERAL"
+>pyuic</TT
+>.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>from qt import *
+
+# Import our custom widget.
+from foo import bar</PRE
+></TD
+></TR
+></TABLE
+><P
+>Thanks to Christian Bird, <TT
+CLASS="LITERAL"
+>pyuic</TT
+> 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.</P
+><P
+>Make sure that the <TT
+CLASS="LITERAL"
+>ui.h</TT
+> file is in the same directory as the
+<TT
+CLASS="LITERAL"
+>.ui</TT
+> file when using <TT
+CLASS="LITERAL"
+>pyuic</TT
+>. The
+<TT
+CLASS="LITERAL"
+>.ui</TT
+> file implies the name of the <TT
+CLASS="LITERAL"
+>.ui.h</TT
+>
+file so there is no need to specify it on the command line.</P
+><P
+>Here's an example of a simple slot. </P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void DebMainWindowFrm::browsePushButtonClicked()
+{
+if self.debugging:
+ QMessageBox.critical(self, "Event", "browse pushbutton was clicked!")
+}</PRE
+></TD
+></TR
+></TABLE
+><P
+>Here is the resulting code when <TT
+CLASS="LITERAL"
+>pyuic</TT
+> is run.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>class DebMainWindowFrm(QMainWindow):
+ ...stuff...
+ def browsePushButtonClicked(self):
+ if self.debugging:
+ QMessageBox.critical(self, "Event", "browse pushbutton was clicked!")</PRE
+></TD
+></TR
+></TABLE
+><P
+>Note that indenting is as normal and that <TT
+CLASS="LITERAL"
+>self</TT
+> and all other
+parameters passed to the slot are available.</P
+><P
+>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.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN133"
+>Using Qt Linguist</A
+></H3
+><P
+>Qt includes the <TT
+CLASS="LITERAL"
+>lupdate</TT
+> program which parses C++ source
+files converting calls to the <TT
+CLASS="LITERAL"
+>QT_TR_NOOP()</TT
+> and
+<TT
+CLASS="LITERAL"
+>QT_TRANSLATE_NOOP()</TT
+> macros to <TT
+CLASS="LITERAL"
+>.ts</TT
+>
+language source files. The <TT
+CLASS="LITERAL"
+>lrelease</TT
+> program is then used to
+generate <TT
+CLASS="LITERAL"
+>.qm</TT
+> binary language files that are distributed with
+your application.</P
+><P
+>Thanks to Detlev Offenbach, PyQt includes the <TT
+CLASS="LITERAL"
+>pylupdate</TT
+>
+program. This generates the same <TT
+CLASS="LITERAL"
+>.ts</TT
+> language source files
+from your PyQt source files.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN145"
+>Deploying Commercial PyQt Applications</A
+></H2
+><P
+>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.</P
+><P
+>One solution to this problem is the
+<A
+HREF="http://www.riverbankcomputing.co.uk/vendorid/"
+TARGET="_top"
+>VendorID</A
+>
+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.</P
+><P
+>In order to build PyQt with support for the VendorID package, pass the
+<TT
+CLASS="LITERAL"
+>-i</TT
+> command line flag to <TT
+CLASS="LITERAL"
+>configure.py</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN153"
+><TT
+CLASS="LITERAL"
+>pyqtconfig</TT
+> and Build System Support</A
+></H2
+><P
+>The SIP build system (ie. the <TT
+CLASS="LITERAL"
+>sipconfig</TT
+> module) is described
+in the SIP documentation. PyQt includes the <TT
+CLASS="LITERAL"
+>pyqtconfig</TT
+>
+module that can be used by configuration scripts of other bindings that are
+built on top of PyQt.</P
+><P
+>The <TT
+CLASS="LITERAL"
+>pyqtconfig</TT
+> module contains the following classes:</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>Configuration(sipconfig.Configuration)</TT
+></DT
+><DD
+><P
+>This class encapsulates additional configuration values, specific to PyQt, that
+can be accessed as instance variables.</P
+><P
+>The following configuration values are provided (in addition to those provided
+by the <TT
+CLASS="LITERAL"
+>sipconfig.Configuration</TT
+> class):</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_bin_dir</TT
+></DT
+><DD
+><P
+>The name of the directory containing the <TT
+CLASS="LITERAL"
+>pyuic</TT
+> and
+<TT
+CLASS="LITERAL"
+>pylupdate</TT
+> executables.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_mod_dir</TT
+></DT
+><DD
+><P
+>The name of the directory containing the PyQt modules.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_modules</TT
+></DT
+><DD
+><P
+>A string containing the names of the PyQt modules that were installed.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qt_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qt</TT
+> module and which should be added to those needed by any
+module that imports the <TT
+CLASS="LITERAL"
+>qt</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtaxcontainer_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtaxcontainer</TT
+> module and which should be added to those
+needed by any module that imports the <TT
+CLASS="LITERAL"
+>qtaxcontainer</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtcanvas_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtcanvas</TT
+> module and which should be added to those needed by
+any module that imports the <TT
+CLASS="LITERAL"
+>qtcanvas</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtext_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtext</TT
+> module and which should be added to those needed by
+any module that imports the <TT
+CLASS="LITERAL"
+>qtext</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtgl_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtgl</TT
+> module and which should be added to those needed by any
+module that imports the <TT
+CLASS="LITERAL"
+>qtgl</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtnetwork_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtnetwork</TT
+> module and which should be added to those needed
+by any module that imports the <TT
+CLASS="LITERAL"
+>qtnetwork</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtsql_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtsql</TT
+> module and which should be added to those needed by
+any module that imports the <TT
+CLASS="LITERAL"
+>qtsql</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qttable_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qttable</TT
+> module and which should be added to those needed by
+any module that imports the <TT
+CLASS="LITERAL"
+>qttable</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtui_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtui</TT
+> module and which should be added to those needed by any
+module that imports the <TT
+CLASS="LITERAL"
+>qtui</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_qtxml_sip_flags</TT
+></DT
+><DD
+><P
+>A string of the SIP flags used to generate the code for the
+<TT
+CLASS="LITERAL"
+>qtxml</TT
+> module and which should be added to those needed by
+any module that imports the <TT
+CLASS="LITERAL"
+>qtxml</TT
+> module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_sip_dir</TT
+></DT
+><DD
+><P
+>The name of the base directory where the <TT
+CLASS="LITERAL"
+>.sip</TT
+> files for each
+of the PyQt modules is installed. A sub-directory exists with the same name as
+the module.</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_version</TT
+></DT
+><DD
+><P
+>The PyQt version as a 3 part hexadecimal number (eg. v3.10 is represented as
+<TT
+CLASS="LITERAL"
+>0x030a00</TT
+>).</P
+><P
+></P
+><P
+></P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>pyqt_version_str</TT
+></DT
+><DD
+><P
+>The PyQt version as a string. For development snapshots it will start with
+<TT
+CLASS="LITERAL"
+>snapshot-</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtModuleMakefile(sipconfig.SIPModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qt</TT
+> module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtAxContainerModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtaxcontainer</TT
+>
+module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtCanvasModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtcanvas</TT
+>
+module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtExtModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtext</TT
+> module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtGLModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtgl</TT
+> module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtNetworkModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtnetwork</TT
+>
+module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtTableModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qttable</TT
+>
+module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtSQLModuleMakefile(QtTableModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtsql</TT
+> module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtUIModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtui</TT
+> module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>QtXMLModuleMakefile(QtModuleMakefile)</TT
+></DT
+><DD
+><P
+>The Makefile class for modules that import the <TT
+CLASS="LITERAL"
+>qtxml</TT
+> module.</P
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+><TT
+CLASS="LITERAL"
+>finalise(self)</TT
+></DT
+><DD
+><P
+>This is a reimplementation of <TT
+CLASS="LITERAL"
+>sipconfig.Makefile.finalise()</TT
+>.</P
+><P
+></P
+><P
+></P
+></DD
+></DL
+></DIV
+></DD
+></DL
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN457"
+>Things to be Aware Of</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN459"
+>super and Wrapped Classes</A
+></H3
+><P
+>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.</P
+><P
+>In most circumstances this technique is transparent to an application. The
+exception is when <TT
+CLASS="LITERAL"
+>super</TT
+> is used with a PyQt class. The way
+that <TT
+CLASS="LITERAL"
+>super</TT
+> is currently implemented means that the lazy
+lookup is bypassed resulting in <TT
+CLASS="LITERAL"
+>AttributeError</TT
+> exceptions
+unless the attribute has been previously referenced.</P
+><P
+>Note that this restriction applies to any class wrapped by SIP and not just
+PyQt.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN467"
+>Python Strings, Qt Strings and Unicode</A
+></H3
+><P
+>Unicode support was added to Qt in v2.0 and to Python in v1.6. In Qt, Unicode
+support is implemented using the <TT
+CLASS="LITERAL"
+>QString</TT
+> class. It is
+important to understand that <TT
+CLASS="LITERAL"
+>QString</TT
+>s, Python string objects
+and Python Unicode objects are all different but conversions between them are
+automatic in many cases and easy to achieve manually when needed.</P
+><P
+>Whenever PyQt expects a <TT
+CLASS="LITERAL"
+>QString</TT
+> 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.</P
+><P
+>You may also manually convert Python string and Unicode objects to
+<TT
+CLASS="LITERAL"
+>QString</TT
+>s by using the <TT
+CLASS="LITERAL"
+>QString</TT
+> constructor
+as demonstrated in the following code fragment.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>qs1 = QString('Converted Python string object')
+qs2 = QString(u'Converted Python Unicode object')</PRE
+></TD
+></TR
+></TABLE
+><P
+>In order to convert a <TT
+CLASS="LITERAL"
+>QString</TT
+> to a Python string object use
+the Python <TT
+CLASS="LITERAL"
+>str()</TT
+> function. Applying
+<TT
+CLASS="LITERAL"
+>str()</TT
+> to a null <TT
+CLASS="LITERAL"
+>QString</TT
+> and an empty
+<TT
+CLASS="LITERAL"
+>QString</TT
+> both result in an empty Python string object.</P
+><P
+>In order to convert a <TT
+CLASS="LITERAL"
+>QString</TT
+> to a Python Unicode object use
+the Python <TT
+CLASS="LITERAL"
+>unicode()</TT
+> function. Applying
+<TT
+CLASS="LITERAL"
+>unicode()</TT
+> to a null <TT
+CLASS="LITERAL"
+>QString</TT
+> and an empty
+<TT
+CLASS="LITERAL"
+>QString</TT
+> both result in an empty Python Unicode object.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN490"
+>Access to Protected Member Functions</A
+></H3
+><P
+>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.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN493"
+><TT
+CLASS="LITERAL"
+>None</TT
+> and <TT
+CLASS="LITERAL"
+>NULL</TT
+></A
+></H3
+><P
+>Throughout the bindings, the <TT
+CLASS="LITERAL"
+>None</TT
+> value can be specified
+wherever <TT
+CLASS="LITERAL"
+>NULL</TT
+> is acceptable to the underlying C++ code.</P
+><P
+>Equally, <TT
+CLASS="LITERAL"
+>NULL</TT
+> is converted to <TT
+CLASS="LITERAL"
+>None</TT
+>
+whenever it is returned by the underlying C++ code.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN503"
+>Support for C++ <TT
+CLASS="LITERAL"
+>void *</TT
+> Data Types</A
+></H3
+><P
+>PyQt represents <TT
+CLASS="LITERAL"
+>void *</TT
+> values as objects of type
+<TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+>. 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 <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> is expected.</P
+><P
+>A <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> may be converted to a Python integer by using
+the <TT
+CLASS="LITERAL"
+>int()</TT
+> builtin function.</P
+><P
+>A <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> may be converted to a Python string by using
+its <TT
+CLASS="LITERAL"
+>asstring()</TT
+> method. The <TT
+CLASS="LITERAL"
+>asstring()</TT
+>
+method takes an integer argument which is the length of the data in bytes.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN517"
+>Support for Threads</A
+></H3
+><P
+>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.)</P
+><P
+>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.</P
+><P
+></P
+><UL
+><LI
+><P
+>If you use the Qt API then the very first <TT
+CLASS="LITERAL"
+>import</TT
+> of one of
+the PyQt modules must be done from the main thread.</P
+></LI
+><LI
+><P
+>If you use the Python API then all calls to PyQt (including any
+<TT
+CLASS="LITERAL"
+>import</TT
+>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.</P
+></LI
+><LI
+><P
+>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.</P
+></LI
+></UL
+><P
+>The above comments actually apply to any SIP generated module, not just PyQt.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN531"
+>Garbage Collection</A
+></H3
+><P
+>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:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>c = new QColor();
+c = new QColor();</PRE
+></TD
+></TR
+></TABLE
+><P
+>In the corresponding Python fragment, the first colour is destroyed when
+the second is assigned to <TT
+CLASS="LITERAL"
+>c</TT
+>:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>c = QColor()
+c = QColor()</PRE
+></TD
+></TR
+></TABLE
+><P
+>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:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>self.c1 = QColor()
+self.c2 = QColor()</PRE
+></TD
+></TR
+></TABLE
+><P
+>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 <TT
+CLASS="LITERAL"
+>QObject</TT
+> (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.</P
+><P
+>So, in the following Python fragment, the first <TT
+CLASS="LITERAL"
+>QLabel</TT
+> is
+not destroyed when the second is assigned to <TT
+CLASS="LITERAL"
+>l</TT
+> because the
+parent <TT
+CLASS="LITERAL"
+>QWidget</TT
+> still has a reference to it.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>p = QWidget()
+l = QLabel('First label',p)
+l = QLabel('Second label',p)</PRE
+></TD
+></TR
+></TABLE
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN547"
+>C++ Variables</A
+></H3
+><P
+>Access to C++ variables is supported. They are accessed as Python instance
+variables. For example:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>tab = QTab()
+tab.label = "First Tab"
+tab.r = QRect(10,10,75,30)</PRE
+></TD
+></TR
+></TABLE
+><P
+>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.</P
+><P
+>Access to protected C++ class variables is not supported. This may change in
+the future.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN553"
+>Multiple Inheritance</A
+></H3
+><P
+>It is not possible to define a new Python class that sub-classes from more than
+one Qt class.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN556"
+>i18n Support</A
+></H3
+><P
+>Qt implements i18n support through the Qt Linguist application, the
+<TT
+CLASS="LITERAL"
+>QTranslator</TT
+> class, and the
+<TT
+CLASS="LITERAL"
+>QApplication::translate()</TT
+>, <TT
+CLASS="LITERAL"
+>QObject::tr()</TT
+>
+and <TT
+CLASS="LITERAL"
+>QObject::trUtf8()</TT
+> methods. Usually the
+<TT
+CLASS="LITERAL"
+>tr()</TT
+> 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. <TT
+CLASS="LITERAL"
+>tr()</TT
+> is actually
+generated by <TT
+CLASS="LITERAL"
+>moc</TT
+> and uses the hardcoded class name as the
+context. On the other hand, <TT
+CLASS="LITERAL"
+>QApplication::translate()</TT
+>
+allows to context to be explicitly stated.</P
+><P
+>Unfortunately, because of the way Qt implents <TT
+CLASS="LITERAL"
+>tr()</TT
+> (and
+<TT
+CLASS="LITERAL"
+>trUtf8()</TT
+>) it is not possible for PyQt to exactly reproduce
+its behavour. The PyQt implementation of <TT
+CLASS="LITERAL"
+>tr()</TT
+> (and
+<TT
+CLASS="LITERAL"
+>trUtf8()</TT
+>) 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.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="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()</PRE
+></TD
+></TR
+></TABLE
+><P
+>In the above the message is translated by <TT
+CLASS="LITERAL"
+>a.hello()</TT
+> using a
+context of <TT
+CLASS="LITERAL"
+>A</TT
+>, and by <TT
+CLASS="LITERAL"
+>b.hello()</TT
+> using a
+context of <TT
+CLASS="LITERAL"
+>B</TT
+>. In the equivalent C++ version the context
+would be <TT
+CLASS="LITERAL"
+>A</TT
+> in both cases.</P
+><P
+>The PyQt behaviour is unsatisfactory and may be changed in the future. It is
+recommended that <TT
+CLASS="LITERAL"
+>QApplication.translate()</TT
+> be used in
+preference to <TT
+CLASS="LITERAL"
+>tr()</TT
+> (and <TT
+CLASS="LITERAL"
+>trUtf8()</TT
+>). 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 <TT
+CLASS="LITERAL"
+>A</TT
+> that uses
+<TT
+CLASS="LITERAL"
+>QApplication.translate()</TT
+>.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>class A(QObject):
+ def __init__(self):
+ QObject.__init__(self)
+
+ def hello(self):
+ return qApp.translate("A","Hello")</PRE
+></TD
+></TR
+></TABLE
+><P
+>Note that the code generated by <TT
+CLASS="LITERAL"
+>pyuic</TT
+> uses
+<TT
+CLASS="LITERAL"
+>QApplication.translate()</TT
+>.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN589"
+>Signal and Slot Support</A
+></H2
+><P
+>A signal may be either a Qt signal (specified using
+<TT
+CLASS="LITERAL"
+>SIGNAL()</TT
+>) or a Python signal (specified using
+<TT
+CLASS="LITERAL"
+>PYSIGNAL()</TT
+>).</P
+><P
+>A slot can be either a Python callable object, a Qt signal (specified using
+<TT
+CLASS="LITERAL"
+>SIGNAL()</TT
+>), a Python signal (specified using
+<TT
+CLASS="LITERAL"
+>PYSIGNAL()</TT
+>), or a Qt slot (specified using
+<TT
+CLASS="LITERAL"
+>SLOT()</TT
+>).</P
+><P
+>You connect signals to slots (and other signals) as you would from C++. For
+example:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="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()"))</PRE
+></TD
+></TR
+></TABLE
+><P
+>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.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>sbar = QScrollBar()
+lcd = QLCDNumber()
+
+QObject.connect(sbar,SIGNAL("valueChanged(int)"),lcd.display)
+QObject.connect(sbar,SIGNAL("valueChanged(int)"),lcd,SLOT("display(int)"))</PRE
+></TD
+></TR
+></TABLE
+><P
+>The difference is that the second connection is made at the C++ level and is
+more efficient.</P
+><P
+>Disconnecting signals works in exactly the same way.</P
+><P
+>Any instance of a class that is derived from the <TT
+CLASS="LITERAL"
+>QObject</TT
+>
+class can emit a signal using the <TT
+CLASS="LITERAL"
+>emit</TT
+> 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:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>a.emit(SIGNAL("clicked()"),())
+a.emit(PYSIGNAL("pySig"),("Hello","World"))</PRE
+></TD
+></TR
+></TABLE
+><P
+>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.</P
+><P
+>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. </P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN610"
+>Static Member Functions</A
+></H2
+><P
+>Static member functions are implemented as Python class functions.
+For example the C++ static member function
+<TT
+CLASS="LITERAL"
+>QObject::connect()</TT
+> is called from Python as
+<TT
+CLASS="LITERAL"
+>QObject.connect()</TT
+> or <TT
+CLASS="LITERAL"
+>self.connect()</TT
+> if
+called from a sub-class of <TT
+CLASS="LITERAL"
+>QObject</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN617"
+>Enumerated Types</A
+></H2
+><P
+>Enumerated types are implemented as a set of simple variables corresponding to
+the separate enumerated values.</P
+><P
+>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:</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>Qt.SolidPattern
+QWidget.TabFocus
+QFrame.TabFocus</PRE
+></TD
+></TR
+></TABLE
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN622"
+>Module Reference Documentation</A
+></H2
+><P
+>The following sections should be used in conjunction with the normal class
+documentation - only the differences specific to the Python bindings are
+documented here.</P
+><P
+>In these sections, <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>Not yet implemented</I
+></SPAN
+>
+implies that the feature can be easily implemented if needed. <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>Not
+implemented</I
+></SPAN
+> implies that the feature will not be implemented, either
+because it cannot be or because it is not appropriate.</P
+><P
+>If a class is described as being <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>fully implemented</I
+></SPAN
+> then
+all non-private member functions and all public class variables have been
+implemented.</P
+><P
+>If an operator has been implemented then it is stated explicitly.</P
+><P
+>Classes that are not mentioned have not yet been implemented.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN632"
+><TT
+CLASS="LITERAL"
+>qt</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN635"
+>Qt Constants</A
+></H3
+><P
+>All constant values defined by Qt have equivalent constants defined to Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN638"
+>Qt (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>Qt</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN642"
+>QAccel</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QAccel</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN646"
+>QAction (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QAction</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN650"
+>QActionGroup (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QActionGroup</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN654"
+>QApplication</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN656"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QApplication</CODE
+>(int &amp;argc, char **argv);<P
+></P
+></DIV
+><P
+>This takes one parameter which is a list of argument strings. Arguments
+used by Qt are removed from the list.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN664"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QApplication</CODE
+>(int &amp;argc, char **argv, bool GUIenabled);<P
+></P
+></DIV
+><P
+>This takes two parameters, the first of which is a list of argument strings.
+Arguments used by Qt are removed from the list.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN674"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QApplication</CODE
+>(int &amp;argc, char **argv, Type type);<P
+></P
+></DIV
+><P
+>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+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN684"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int exec</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>exec_loop</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN690"
+>QAssistantClient (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QAssistantClient</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN694"
+>QBitmap</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QBitmap</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN698"
+>QBrush</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QBrush</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN704"
+>QButton</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QButton</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN708"
+>QButtonGroup</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QButtonGroup</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN712"
+>QByteArray</A
+></H3
+><P
+>A Python string can be used whenever a <TT
+CLASS="LITERAL"
+>QByteArray</TT
+> can be
+used. A <TT
+CLASS="LITERAL"
+>QByteArray</TT
+> can be converted to a Python string
+using the Python <TT
+CLASS="LITERAL"
+>str()</TT
+> function.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN718"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QByteArray &#38;assign</CODE
+>(const char *data, uint size);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN726"
+></A
+><CODE
+CLASS="FUNCDEF"
+>char &#38;at</CODE
+>(uint i);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN732"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int contains</CODE
+>(const char &#38;d);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN738"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool fill</CODE
+>(const char &#38;d, int size = -1);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN746"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int find</CODE
+>(const char &#38;d, uint i = 0);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN754"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void resetRawData</CODE
+>(const char *data, uintsize);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN762"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QByteArray &#38;setRawData</CODE
+>(const char *data, uintsize);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN770"
+>QCDEStyle (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCDEStyle</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN774"
+>QCheckBox</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCheckBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN778"
+>QClipboard</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN780"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void *data const</CODE
+>(const char *format);<P
+></P
+></DIV
+><P
+>Not yet implemented (Qt v1.x).</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN786"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setData</CODE
+>(const char *format, void *);<P
+></P
+></DIV
+><P
+>Not yet implemented (Qt v1.x).</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN794"
+>QColor</A
+></H3
+><P
+>The Python <TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators are
+supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN799"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getHsv</CODE
+>(int *h, int *s, int *v);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns the <TT
+CLASS="LITERAL"
+>h</TT
+>,
+<TT
+CLASS="LITERAL"
+>s</TT
+> and <TT
+CLASS="LITERAL"
+>v</TT
+> values as a tuple.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN812"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getRgb</CODE
+>(int *r, int *g, int *b);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns the <TT
+CLASS="LITERAL"
+>r</TT
+>,
+<TT
+CLASS="LITERAL"
+>g</TT
+> and <TT
+CLASS="LITERAL"
+>b</TT
+> values as a tuple.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN825"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void hsv</CODE
+>(int *h, int *s, int *v);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns the <TT
+CLASS="LITERAL"
+>h</TT
+>,
+<TT
+CLASS="LITERAL"
+>s</TT
+> and <TT
+CLASS="LITERAL"
+>v</TT
+> values as a tuple.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN838"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void rgb</CODE
+>(int *r, int *g, int *b);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns the <TT
+CLASS="LITERAL"
+>r</TT
+>,
+<TT
+CLASS="LITERAL"
+>g</TT
+> and <TT
+CLASS="LITERAL"
+>b</TT
+> values as a tuple.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN851"
+>QColorDialog (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN853"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QRgb getRgba</CODE
+>(QRgb initial, bool *ok, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>initial</TT
+>, <TT
+CLASS="LITERAL"
+>parent</TT
+> and
+<TT
+CLASS="LITERAL"
+>name</TT
+> parameters and returns a tuple containing the
+<TT
+CLASS="LITERAL"
+>QRgb</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN870"
+>QColorGroup</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QColorGroup</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN874"
+>QComboBox</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QComboBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN878"
+>QCommonStyle (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN880"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void getButtonShift</CODE
+>(int &amp;x, int &amp;y);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>x</TT
+> and
+<TT
+CLASS="LITERAL"
+>y</TT
+> values. (Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN890"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void tabbarMetrics</CODE
+>(const QTabBar *t, int &amp;hframe, int &amp;vframe, int &amp;overlap);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>t</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>hframe</TT
+>, <TT
+CLASS="LITERAL"
+>vframe</TT
+> and
+<TT
+CLASS="LITERAL"
+>overlap</TT
+> values. (Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN906"
+>QCString (Qt v2+)</A
+></H3
+><P
+>A Python string can be used whenever a <TT
+CLASS="LITERAL"
+>QCString</TT
+> can be used.
+A <TT
+CLASS="LITERAL"
+>QCString</TT
+> can be converted to a Python string using the
+Python <TT
+CLASS="LITERAL"
+>str()</TT
+> function.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN912"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCString &amp;sprintf</CODE
+>(const char *format, ...);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN919"
+></A
+><CODE
+CLASS="FUNCDEF"
+>short toShort</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>short</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN927"
+></A
+><CODE
+CLASS="FUNCDEF"
+>ushort toUShort</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>ushort</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN935"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int toInt</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN943"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uint toUInt</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>uint</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN951"
+></A
+><CODE
+CLASS="FUNCDEF"
+>long toLong</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>long</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN959"
+></A
+><CODE
+CLASS="FUNCDEF"
+>ulong toULong</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>ulong</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN967"
+></A
+><CODE
+CLASS="FUNCDEF"
+>float toFloat</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>float</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN975"
+></A
+><CODE
+CLASS="FUNCDEF"
+>double toDouble</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>double</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN983"
+>QCursor</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCursor</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN987"
+>QDataStream</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN989"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QDataStream &amp;readBytes</CODE
+>(const char *&amp;s, uint &amp;l);<P
+></P
+></DIV
+><P
+>This takes no parameters. The <TT
+CLASS="LITERAL"
+>QDataStream</TT
+> result and the
+data read are returned as a tuple.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN998"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QDataStream &amp;readRawBytes</CODE
+>(const char *s, uint l);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>l</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>QDataStream</TT
+> result and the data read are returned as a
+tuple.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1008"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QDataStream &amp;writeBytes</CODE
+>(const char *s, uint len);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>s</TT
+> and not passed as a
+parameter.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1018"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QDataStream &amp;writeRawBytes</CODE
+>(const char *s, uint len);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>s</TT
+> and not passed as a
+parameter.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1028"
+>QDate</A
+></H3
+><P
+>The Python
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&lt;</TT
+>, <TT
+CLASS="LITERAL"
+>&lt;=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&gt;</TT
+>, <TT
+CLASS="LITERAL"
+>&gt;=</TT
+>
+and <TT
+CLASS="LITERAL"
+>__nonzero__</TT
+>
+operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1038"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int weekNumber</CODE
+>(int *yearNum = 0);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns the week number and the year number as a
+tuple. (Qt v3.1+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1044"
+>QDateTime</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDateTime</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&lt;</TT
+>, <TT
+CLASS="LITERAL"
+>&lt;=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&gt;</TT
+>, <TT
+CLASS="LITERAL"
+>&gt;=</TT
+>
+and <TT
+CLASS="LITERAL"
+>__nonzero__</TT
+>
+operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1055"
+>QTime</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTime</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&lt;</TT
+>, <TT
+CLASS="LITERAL"
+>&lt;=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&gt;</TT
+>, <TT
+CLASS="LITERAL"
+>&gt;=</TT
+>
+and <TT
+CLASS="LITERAL"
+>__nonzero__</TT
+>
+operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1066"
+>QDateEdit (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDateEdit</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1070"
+>QTimeEdit (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTimeEdit</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1074"
+>QDateTimeEdit (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDateTimeEdit</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1078"
+>QDesktopWidget (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDesktopWidget</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1082"
+>QDial (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDial</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1086"
+>QDialog</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1088"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int exec</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>exec_loop</TT
+> in Python.</P
+><P
+>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 <TT
+CLASS="LITERAL"
+>QObject.deleteLater()</TT
+> or other techniques.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1096"
+>QDir</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDir</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>len</TT
+>, <TT
+CLASS="LITERAL"
+>[]</TT
+> (for reading slices and
+individual elements), <TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+> and
+<TT
+CLASS="LITERAL"
+>in</TT
+> operators</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1105"
+>QFileInfoList</A
+></H3
+><P
+>This class isn't implemented. Whenever a <TT
+CLASS="LITERAL"
+>QFileInfoList</TT
+> is
+the return type of a function or the type of an argument, a Python list of
+<TT
+CLASS="LITERAL"
+>QFileInfo</TT
+> instances is used instead.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1110"
+>QDockArea (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1112"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool hasDockWindow const</CODE
+>(QDockWindow *w, int *index = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>w</TT
+> parameter and returns the index of the
+QDockWIndow or -1 if the QDockArea does not contain the QDockWindow.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1121"
+>QDockWindow (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDockWindow</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1125"
+>QColorDrag (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QColorDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1129"
+>QDragObject</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDragObject</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1133"
+>QImageDrag</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QImageDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1137"
+>QStoredDrag</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QStoredDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1141"
+>QTextDrag</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTextDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1145"
+>QUriDrag (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QUriDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1149"
+>QUrlDrag (Qt v1.x)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QUrlDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1153"
+>QDropSite</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDropSite</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1157"
+>QErrorMessage (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QErrorMessage</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1161"
+>QEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QEvent</TT
+> is fully implemented.</P
+><P
+>Instances of <TT
+CLASS="LITERAL"
+>QEvent</TT
+>s are automatically converted to the
+correct sub-class.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1167"
+>QChildEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QChildEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1171"
+>QCloseEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCloseEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1175"
+>QIconDragEvent (Qt v3.3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIconDragEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1179"
+>QContextMenuEvent (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QContextMenuEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1183"
+>QCustomEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCustomEvent</TT
+> is fully implemented. Any Python object can be
+passed as the event data and its reference count is increased.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1187"
+>QDragEnterEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDragEnterEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1191"
+>QDragLeaveEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDragLeaveEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1195"
+>QDragMoveEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDragMoveEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1199"
+>QDropEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDropEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1203"
+>QFocusEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFocusEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1207"
+>QHideEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHideEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1211"
+>QIMComposeEvent (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIMComposeEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1215"
+>QIMEvent (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIMEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1219"
+>QKeyEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QKeyEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1223"
+>QMouseEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMouseEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1227"
+>QMoveEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMoveEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1231"
+>QPaintEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPaintEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1235"
+>QResizeEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QResizeEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1239"
+>QShowEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QShowEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1243"
+>QTabletEvent (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTabletEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1247"
+>QTimerEvent</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTimerEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1251"
+>QWheelEvent (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWheelEvent</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1255"
+>QEventLoop (Qt v3.1+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1257"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual int exec</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>exec_loop</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1263"
+>QFile</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1265"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool open</CODE
+>(int m, FILE *f);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1273"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readBlock</CODE
+>(char *data, Q_ULONG len);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>len</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>None</TT
+> is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1284"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readLine</CODE
+>(char *data, Q_ULONG maxlen);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>maxlen</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>None</TT
+> is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1295"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static void setDecodingFunction</CODE
+>(EncoderFn f);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1301"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static void setEncodingFunction</CODE
+>(EncoderFn f);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1307"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG writeBlock</CODE
+>(const char *data, Q_ULONG len);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>data</TT
+> and not passed
+as a parameter.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1317"
+>QFileDialog</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFileDialog</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1321"
+>QFileIconProvider</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFileIconProvider</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1325"
+>QFilePreview</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFilePreview</TT
+> 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.</P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="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</PRE
+></TD
+></TR
+></TABLE
+><P
+>Note that QFilePreview cannot be instantiated directly because it is abstract.
+Thanks to Hans-Peter Jansen for this trick.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1331"
+>QFileInfo</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFileInfo</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1335"
+>QFont</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFont</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1341"
+>QFontDatabase (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFontDatabase</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1345"
+>QFontDialog (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1347"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QFont getFont</CODE
+>(bool *ok, const QFont &#38;def, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>def</TT
+>, <TT
+CLASS="LITERAL"
+>parent</TT
+> and
+<TT
+CLASS="LITERAL"
+>name</TT
+> parameters and returns a tuple containing the
+<TT
+CLASS="LITERAL"
+>QFont</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1364"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QFont getFont</CODE
+>(bool *ok, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>parent</TT
+> and <TT
+CLASS="LITERAL"
+>name</TT
+> parameters
+and returns a tuple containing the <TT
+CLASS="LITERAL"
+>QFont</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1378"
+>QFontInfo</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFontInfo</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1382"
+>QFontMetrics</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1384"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QRect boundingRect</CODE
+>(int x, int y, int w, int h, int flags, const QString &amp;str, int len = -1, int tabstops = 0, int *tabarray = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>tabarray</TT
+> parameter is a Python list of integers.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1407"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QSize size</CODE
+>(int flags, const QString &amp;str, int len = -1, int tabstops = 0, int *tabarray = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>tabarray</TT
+> parameter is a Python list of integers.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1422"
+>QFrame</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QFrame</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1426"
+>QGManager (Qt v1.x)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGManager</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1430"
+>QChain (Qt v1.x)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QChain</TT
+> is implemented as an opaque class.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1434"
+>QGrid (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGrid</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1438"
+>QGridView (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGridView</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1442"
+>QGroupBox</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGroupBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1446"
+>QHBox (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1450"
+>QHButtonGroup (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHButtonGroup</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1454"
+>QHeader</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHeader</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1458"
+>QHGroupBox (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHGroupBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1462"
+>QIconSet</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIconSet</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1466"
+>QIconFactory (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIconFactory</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1470"
+>QIconView (Qt v2.1+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1472"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QIconViewItem *makeRowLayout</CODE
+>(QIconViewItem *begin, int &#38;y);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1480"
+>QIconViewItem (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIconViewItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1484"
+>QIconDrag (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIconDrag</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1488"
+>QIconDragItem (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIconDragItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1492"
+>QImage</A
+></H3
+><P
+>The Python <TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators are
+supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1497"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QImage</CODE
+>(const char *xpm[]);<P
+></P
+></DIV
+><P
+>This takes a list of strings as its parameter.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1503"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QImage</CODE
+>(uchar *data, int w, int h, int depth, QRgb *colorTable, int numColors, Endian bitOrder);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>colorTable</TT
+> parameter is a list of QRgb instances or
+None. (Qt v2.1+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1522"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uchar *bits</CODE
+>();<P
+></P
+></DIV
+><P
+>The return value is a <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> object which is only
+useful if passed to another Python module.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1528"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QRgb *colorTable</CODE
+>();<P
+></P
+></DIV
+><P
+>The return value is a <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> object which is only
+useful if passed to another Python module.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1534"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QImage convertDepthWithPalette</CODE
+>(int, QRgb *p, int pc, int cf = 0);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1545"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uchar **jumpTable</CODE
+>();<P
+></P
+></DIV
+><P
+>The return value is a <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> object which is only
+useful if passed to another Python module.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1551"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool loadFromData</CODE
+>(const uchar *buf, uint len, const char *format = 0, ColorMode mode = Auto);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>buf</TT
+> and not passed as
+a parameter.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1565"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uchar *scanLine</CODE
+>(int i);<P
+></P
+></DIV
+><P
+>The return value is a <TT
+CLASS="LITERAL"
+>sip.voidptr</TT
+> object which is only
+useful if passed to another Python module.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1572"
+>QImageIO</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1574"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static void defineIOHandler</CODE
+>(const char *format, const char *header, const char *flags, image_io_handler read_image, image_io_handler write_image);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1588"
+>QImageTextKeyLang</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QImageTextKeyLang</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1592"
+>QInputDialog (Qt v2.1+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1594"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QString getText</CODE
+>(const QString &amp;caption, const QString &amp;label, const QString &amp;text = QString::null, bool *ok = 0, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QString</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.
+(Qt v2.1 - v2.3.1)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1613"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QString getText</CODE
+>(const QString &amp;caption, const QString &amp;label, QLineEdit::EchoModeecho, const QString &amp;text = QString::null, bool *ok = 0, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QString</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.
+(Qt v2.2 - v2.3.1)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1634"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QString getText</CODE
+>(const QString &amp;caption, const QString &amp;label, QLineEdit::EchoModeecho = QLineEdit::Normal, const QString &amp;text = QString::null, bool *ok = 0, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QString</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.
+(Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1655"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static int getInteger</CODE
+>(const QString &amp;caption, const QString &amp;label, int num = 0, int from = -2147483647, int to = 2147483647, int step = 1, bool *ok = 0, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1680"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static double getDouble</CODE
+>(const QString &amp;caption, const QString &amp;label, double num = 0, double from = -2147483647, double to = 2147483647, int step = 1, bool *ok = 0, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>double</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1705"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static QString getItem</CODE
+>(const QString &amp;caption, const QString &amp;label, const QStringList &#38;list, int current = 0, bool editable = TRUE, bool *ok = 0, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QString</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1728"
+>QInterlaceStyle (Qt v2.3.1+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1730"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void scrollBarMetrics</CODE
+>(const QTabBar *sb, int &amp;sliderMin, int &amp;sliderMax, int &amp;sliderLength, int &amp;buttonDim);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>sb</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1749"
+>QIODevice</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QIODevice</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1753"
+>QKeySequence (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QKeySequence</TT
+> is fully implemented including the operators
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+>, <TT
+CLASS="LITERAL"
+>QString()</TT
+> and
+<TT
+CLASS="LITERAL"
+>int()</TT
+>. A <TT
+CLASS="LITERAL"
+>QString</TT
+> instance or a Python
+integer may be used whenever a <TT
+CLASS="LITERAL"
+>QKeySequence</TT
+> can be used.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1763"
+>QLabel</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QLabel</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1767"
+>QLayout</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QLayout</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1771"
+>QBoxLayout</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QBoxLayout</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1775"
+>QGLayoutIterator (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGLayoutIterator</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1779"
+>QGridLayout</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1781"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool findWidget</CODE
+>(QWidget *w, int *row, int *col);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>w</TT
+> parameter and returns a tuple containing
+the <TT
+CLASS="LITERAL"
+>bool</TT
+> result, <TT
+CLASS="LITERAL"
+>row</TT
+> and
+<TT
+CLASS="LITERAL"
+>col</TT
+>. (Qt v2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1795"
+>QHBoxLayout</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHBoxLayout</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1799"
+>QLayoutItem (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QLayoutItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1803"
+>QLayoutIterator (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1805"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QLayoutItem *next</CODE
+>();<P
+></P
+></DIV
+><P
+>This is a wrapper around the <TT
+CLASS="LITERAL"
+>QLayoutIterator</TT
+>
+<TT
+CLASS="LITERAL"
+>++</TT
+> operator.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1812"
+>QSpacerItem (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSpacerItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1816"
+>QVBoxLayout</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QVBoxLayout</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1820"
+>QWidgetItem (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWidgetItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1824"
+>QLCDNumber</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QLCDNumber</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1828"
+>QLibrary (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QLibrary</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1832"
+>QLineEdit</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1834"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int characterAt</CODE
+>(int xpos, QChar *chr);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>xpos</TT
+> parameter and returns the int
+result and the <TT
+CLASS="LITERAL"
+>chr</TT
+> value as a tuple. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1844"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void del</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delChar</TT
+> in Python. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1850"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool getSelection</CODE
+>(int *start, int *end);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns the bool result and the
+<TT
+CLASS="LITERAL"
+>start</TT
+> and <TT
+CLASS="LITERAL"
+>end</TT
+> values as a tuple.
+(Qt v3+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1860"
+>QList&lt;type&gt; (Qt v2)</A
+></H3
+><P
+>Types based on the <TT
+CLASS="LITERAL"
+>QList</TT
+> template are automatically
+converted to and from Python lists of the type.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1864"
+>QListBox</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1866"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool itemYPos</CODE
+>(int index, int *yPos);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>index</TT
+> parameter and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and <TT
+CLASS="LITERAL"
+>yPos</TT
+>.
+(Qt v1.x)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1877"
+>QListBoxItem</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QListBoxItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1881"
+>QListBoxPixmap</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QListBoxPixmap</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1885"
+>QListBoxText</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QListBoxText</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1889"
+>QListView</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QListView</TT
+> is fully implemented.</P
+><P
+>Note that to remove a child <TT
+CLASS="LITERAL"
+>QListViewItem</TT
+> you must first
+call <TT
+CLASS="LITERAL"
+>takeItem()</TT
+> and then <TT
+CLASS="LITERAL"
+>del()</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1897"
+>QListViewItem</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QListViewItem</TT
+> is fully implemented.</P
+><P
+>Note that to remove a child <TT
+CLASS="LITERAL"
+>QListViewItem</TT
+> you must first
+call <TT
+CLASS="LITERAL"
+>takeItem()</TT
+> and then <TT
+CLASS="LITERAL"
+>del()</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1905"
+>QCheckListItem</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCheckListItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1909"
+>QListViewItemIterator (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QListViewItemIterator</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1913"
+>QLocale (Qt v3.3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1915"
+></A
+><CODE
+CLASS="FUNCDEF"
+>short toShort</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>short</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1923"
+></A
+><CODE
+CLASS="FUNCDEF"
+>ushort toUShort</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>ushort</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1931"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int toInt</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1939"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uint toUInt</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>uint</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1947"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG toLong</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>long</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1955"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_ULONG toULong</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>ulong</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1963"
+></A
+><CODE
+CLASS="FUNCDEF"
+>float toFloat</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>float</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1971"
+></A
+><CODE
+CLASS="FUNCDEF"
+>double toDouble</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>double</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN1979"
+>QMainWindow</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1981"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextStream &amp;operator&lt;&lt;</CODE
+>(QTextStream &amp;, const QMainWindow &amp;);<P
+></P
+></DIV
+><P
+>This operator is fully implemented. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1989"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextStream &amp;operator&gt;&gt;</CODE
+>(QTextStream &amp;, QMainWindow &amp;);<P
+></P
+></DIV
+><P
+>This operator is fully implemented. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN1997"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool getLocation</CODE
+>(QToolBar *tb, ToolBarDock &amp;dock, int &amp;index, bool &amp;nl, int &amp;extraOffset);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>tb</TT
+> parameter and returns a tuple of the
+result, <TT
+CLASS="LITERAL"
+>dock</TT
+>, <TT
+CLASS="LITERAL"
+>index</TT
+>,
+<TT
+CLASS="LITERAL"
+>nl</TT
+> and <TT
+CLASS="LITERAL"
+>extraOffset</TT
+> values. (Qt v2.1.0+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2016"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QList&lt;QToolBar&gt; toolBars</CODE
+>(ToolBarDock dock);<P
+></P
+></DIV
+><P
+>This returns a list of <TT
+CLASS="LITERAL"
+>QToolBar</TT
+> instances. (Qt v2.1.0+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2023"
+>QMemArray&lt;type&gt; (Qt v3+)</A
+></H3
+><P
+>Types based on the <TT
+CLASS="LITERAL"
+>QMemArray</TT
+> template are automatically
+converted to and from Python lists of the type.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2027"
+>QMenuBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMenuBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2031"
+>QMenuData</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2033"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMenuItem *findItem</CODE
+>(int id, QMenuData **parent);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2041"
+>QCustomMenuItem (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCustomMenuItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2045"
+>QMenuItem</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMenuItem</TT
+> is an internal Qt class.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2049"
+>QMessageBox</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMessageBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2053"
+>QMetaObject</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2055"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int numClassInfo const</CODE
+>(bool super = FALSE);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2061"
+></A
+><CODE
+CLASS="FUNCDEF"
+>const QClassInfo *classInfo const</CODE
+>(bool super = FALSE);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2067"
+>QMetaProperty</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMetaProperty</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2071"
+>QMimeSource (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMimeSource</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2075"
+>QMimeSourceFactory (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMimeSourceFactory</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2079"
+>QWindowsMime (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWindowsMime</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2083"
+>QMotifPlusStyle (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2085"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getButtonShift</CODE
+>(int &amp;x, int &amp;y);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>x</TT
+> and
+<TT
+CLASS="LITERAL"
+>y</TT
+> values. (Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2095"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void scrollBarMetrics</CODE
+>(const QScrollBar *sb, int &amp;sliderMin, int &amp;sliderMax, int &amp;sliderLength, int &amp;buttonDim);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>sb</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.
+(Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2114"
+>QMotifStyle (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2116"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void scrollBarMetrics</CODE
+>(const QTabBar *sb, int &#38;sliderMin, int &#38;sliderMax, int &#38;sliderLength, int &#38;buttonDim);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>sb</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.
+(Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2135"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void tabbarMetrics</CODE
+>(const QTabBar *t, int &#38;hframe, int &#38;vframe, int &#38;overlap);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>t</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>hframe</TT
+>, <TT
+CLASS="LITERAL"
+>vframe</TT
+> and
+<TT
+CLASS="LITERAL"
+>overlap</TT
+> values. (Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2151"
+>QMovie</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2153"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMovie</CODE
+>(QDataSource *src, int bufsize = 1024);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2161"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void pushData</CODE
+>(const uchar *data, int length);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>length</TT
+> is derived from <TT
+CLASS="LITERAL"
+>data</TT
+> and not
+passed as a parameter. (Qt v2.2.0+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2171"
+>QMultiLineEdit</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2173"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void cursorPosition const</CODE
+>(int *line, int *col);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>line</TT
+> and
+<TT
+CLASS="LITERAL"
+>col</TT
+> values. (Qt v1.x, Qt v2.x)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2183"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void del</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delChar</TT
+> in Python. (Qt v1.x, Qt v2.x)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2189"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getCursorPosition const</CODE
+>(int *line, int *col);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>line</TT
+> and
+<TT
+CLASS="LITERAL"
+>col</TT
+> values. (Qt v1.x, Qt v2.x)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2199"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool getMarkedRegion</CODE
+>(int *line1, int *col1, int *line2, int *col2);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the bool result and the
+<TT
+CLASS="LITERAL"
+>line1</TT
+>, <TT
+CLASS="LITERAL"
+>col1</TT
+>, <TT
+CLASS="LITERAL"
+>line2</TT
+> and
+<TT
+CLASS="LITERAL"
+>col2</TT
+> values.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2215"
+>QMutex (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMutex</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2219"
+>QMutexLocker (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QMutexLocker</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2223"
+>QNetworkOperation (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QNetworkOperation</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2227"
+>QNetworkProtocol (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QNetworkProtocol</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2231"
+>QNetworkProtocolFactoryBase (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QNetworkProtocolFactoryBase</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2235"
+>QObject</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2237"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool disconnect</CODE
+>(const QObject *receiver, const char *member = 0);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2245"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool disconnect</CODE
+>(const char *signal = 0, const QObject *receiver = 0, const char *member = 0);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2255"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static bool disconnect</CODE
+>(const QObject *sender, const char *signal, const QObject *receiver, const char *member);<P
+></P
+></DIV
+><P
+>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
+<TT
+CLASS="LITERAL"
+>signal</TT
+> and <TT
+CLASS="LITERAL"
+>receiver</TT
+> parameters is not yet
+supported.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2269"
+>QObjectCleanupHandler (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QObjectCleanupHandler</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2273"
+>QObjectList</A
+></H3
+><P
+>This class isn't implemented. Whenever a <TT
+CLASS="LITERAL"
+>QObjectList</TT
+> is the
+return type of a function or the type of an argument, a Python list of
+<TT
+CLASS="LITERAL"
+>QObject</TT
+> instances is used instead.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2278"
+>QPaintDeviceMetrics</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPaintDeviceMetrics</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2282"
+>QPaintDevice</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2284"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual bool cmd</CODE
+>(int, QPainter *, QPDevCmdParam *);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2291"
+>QPainter</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2293"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QRect boundingRect</CODE
+>(int x, int y, int w, int h, int flags, const char *str, int len = -1, char **intern = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>intern</TT
+> parameter is not supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2314"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QRect boundingRect</CODE
+>(const QRect&#38;, int flags, const char *str, int len = -1, char **intern = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>intern</TT
+> parameter is not supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2328"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void drawText</CODE
+>(int x, int y, int w, int h, int flags, const char *str, int len = -1, QRect *br = 0, char **intern = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>intern</TT
+> parameter is not supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2351"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void drawText</CODE
+>(const QRect&#38;, int flags, const char *str, int len = -1, QRect *br = 0, char **intern = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>intern</TT
+> parameter is not supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2367"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setTabArray</CODE
+>(int *ta);<P
+></P
+></DIV
+><P
+>This takes a single parameter which is a list of tab stops.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2373"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int *tabArray</CODE
+>();<P
+></P
+></DIV
+><P
+>This returns a list of tab stops.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2378"
+>QPalette</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPalette</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2384"
+>QPixmap</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2386"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QPixmap</CODE
+>(const char *xpm[]);<P
+></P
+></DIV
+><P
+>This takes a list of strings as its parameter.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2392"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool loadFromData</CODE
+>(const uchar *buf, uint len, const char *format = 0, ColorMode mode = Auto);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>buf</TT
+> and not passed as
+a parameter.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2406"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool loadFromData</CODE
+>(const uchar *buf, uint len, const char *format, int conversion_flags);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2418"
+>QPixmapCache (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPixmapCache</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2422"
+>QPair&lt;type,type&gt; (Qt v3+)</A
+></H3
+><P
+>Types based on the <TT
+CLASS="LITERAL"
+>QPair</TT
+> template are automatically
+converted to and from Python tuples of two elements.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2426"
+>QPen</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPen</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2432"
+>QPicture</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2434"
+></A
+><CODE
+CLASS="FUNCDEF"
+>const char *data</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2439"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setData</CODE
+>(const char *data, uint size);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>size</TT
+> is derived from <TT
+CLASS="LITERAL"
+>data</TT
+> and not passed
+as a parameter.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2449"
+>QPlatinumStyle (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2451"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void scrollBarMetrics</CODE
+>(const QTabBar *sb, int &#38;sliderMin, int &#38;sliderMax, int &#38;sliderLength, int &#38;buttonDim);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>sb</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.
+(Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2470"
+>QPoint</A
+></H3
+><P
+>The Python
+<TT
+CLASS="LITERAL"
+>+</TT
+>, <TT
+CLASS="LITERAL"
+>+=</TT
+>,
+<TT
+CLASS="LITERAL"
+>-</TT
+>, <TT
+CLASS="LITERAL"
+>-=</TT
+>, unary <TT
+CLASS="LITERAL"
+>-</TT
+>,
+<TT
+CLASS="LITERAL"
+>*</TT
+>, <TT
+CLASS="LITERAL"
+>*=</TT
+>,
+<TT
+CLASS="LITERAL"
+>/</TT
+>, <TT
+CLASS="LITERAL"
+>/=</TT
+>,
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+> and <TT
+CLASS="LITERAL"
+>__nonzero__</TT
+>
+operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2485"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rx</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2490"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;ry</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2495"
+>QPointArray</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2497"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QPointArray</CODE
+>(int nPoints, const QCOORD *points);<P
+></P
+></DIV
+><P
+>This takes a single parameter which is a list of points.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2505"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void point</CODE
+>(uint i, int *x, int *y);<P
+></P
+></DIV
+><P
+>This takes the single parameter <TT
+CLASS="LITERAL"
+>i</TT
+> and returns the
+<TT
+CLASS="LITERAL"
+>x</TT
+> and <TT
+CLASS="LITERAL"
+>y</TT
+> values as a tuple.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2518"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool putPoints</CODE
+>(int index, int nPoints, const QCOORD *points);<P
+></P
+></DIV
+><P
+>This takes two parameters, <TT
+CLASS="LITERAL"
+>index</TT
+> and a list of points.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2529"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool putPoints</CODE
+>(int index, int nPoints, int firstx, int firsty, ...);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2542"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setPoints</CODE
+>(int nPoints, const QCOORD *points);<P
+></P
+></DIV
+><P
+>This takes a single parameter which is a list of points.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2550"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setPoints</CODE
+>(int nPoints, int firstx, int firsty, ...);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2561"
+>QPopupMenu</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2563"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int exec</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>exec_loop</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2569"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int exec</CODE
+>(const QPoint &#38;pos, int indexAtPoint = 0);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>exec_loop</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2578"
+>QPrintDialog (X11)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPrintDialog</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2582"
+>QPrinter</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPrinter</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2586"
+>QProcess (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QProcess</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2590"
+>QProgressBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QProgressBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2594"
+>QProgressDialog</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QProgressDialog</TT
+> is fully implemented.
+value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2598"
+>QPtrList&lt;type&gt; (Qt v3+)</A
+></H3
+><P
+>Types based on the <TT
+CLASS="LITERAL"
+>QPtrList</TT
+> template are automatically
+converted to and from Python lists of the type.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2602"
+>QPushButton</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPushButton</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2606"
+>QRadioButton</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QRadioButton</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2610"
+>QRangeControl</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QRangeControl</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2614"
+>QRect</A
+></H3
+><P
+>The Python
+<TT
+CLASS="LITERAL"
+>&amp;</TT
+>, <TT
+CLASS="LITERAL"
+>&amp;=</TT
+>,
+<TT
+CLASS="LITERAL"
+>|</TT
+>, <TT
+CLASS="LITERAL"
+>|=</TT
+>,
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+>, <TT
+CLASS="LITERAL"
+>in</TT
+> and
+<TT
+CLASS="LITERAL"
+>__nonzero__</TT
+> operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2625"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void coords</CODE
+>(int *x1, int *y1, int *x2, int *y2);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple containing the four values.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2637"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void rect</CODE
+>(int *x, int *y, int *w, int *h);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple containing the four values.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2649"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rBottom</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2654"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rLeft</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2659"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rRight</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2664"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rTop</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented. (Qt v2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2669"
+>QRegExp</A
+></H3
+><P
+>The Python <TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators are
+supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2674"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int match</CODE
+>(const char *str, int index = 0, int *len = 0);<P
+></P
+></DIV
+><P
+>This takes <TT
+CLASS="LITERAL"
+>str</TT
+> and <TT
+CLASS="LITERAL"
+>index</TT
+> parameters and
+returns a tuple of the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>len</TT
+> value. (Qt v1.x)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2688"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int match</CODE
+>(const QString &#38;str, int index = 0, int *len = 0);<P
+></P
+></DIV
+><P
+>This takes <TT
+CLASS="LITERAL"
+>str</TT
+> and <TT
+CLASS="LITERAL"
+>index</TT
+> parameters and
+returns a tuple of the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>len</TT
+> value. (Qt v2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2702"
+>QRegion</A
+></H3
+><P
+>The Python
+<TT
+CLASS="LITERAL"
+>|</TT
+>, <TT
+CLASS="LITERAL"
+>|=</TT
+>,
+<TT
+CLASS="LITERAL"
+>+</TT
+>, <TT
+CLASS="LITERAL"
+>+=</TT
+>,
+<TT
+CLASS="LITERAL"
+>&amp;</TT
+>, <TT
+CLASS="LITERAL"
+>&amp;=</TT
+>,
+<TT
+CLASS="LITERAL"
+>-</TT
+>, <TT
+CLASS="LITERAL"
+>-=</TT
+>,
+<TT
+CLASS="LITERAL"
+>^</TT
+>, <TT
+CLASS="LITERAL"
+>^=</TT
+>,
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+>, <TT
+CLASS="LITERAL"
+>in</TT
+> and
+<TT
+CLASS="LITERAL"
+>__nonzero__</TT
+> operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2719"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QArray&lt;QRect&gt; rects</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2724"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setRects</CODE
+>(QRect *rects, int num);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2.2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2732"
+>QScrollBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QScrollBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2736"
+>QScrollView</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2738"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void contentsToViewport</CODE
+>(int x, int y, int &#38;vx, int &#38;vy);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>x</TT
+> and <TT
+CLASS="LITERAL"
+>y</TT
+> parameters and
+returns a tuple containing the <TT
+CLASS="LITERAL"
+>vx</TT
+> and <TT
+CLASS="LITERAL"
+>vy</TT
+>
+values. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2754"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void viewportToContents</CODE
+>(int vx, int vy, int &#38;x, int &#38;y);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>vx</TT
+> and <TT
+CLASS="LITERAL"
+>vy</TT
+> parameters and
+returns a tuple containing the <TT
+CLASS="LITERAL"
+>x</TT
+> and <TT
+CLASS="LITERAL"
+>y</TT
+>
+values. (Qt v2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2770"
+>QSemaphore (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSemaphore</TT
+> is fully implemented. The <TT
+CLASS="LITERAL"
+>+=</TT
+>
+and <TT
+CLASS="LITERAL"
+>-=</TT
+> operators have also been implemented, but require
+Python v2.0 or later.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2776"
+>QSemiModal (Qt v1, v2)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSemiModal</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2780"
+>QSessionManager (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSessionManager</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2784"
+>QSettings (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2786"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool readBoolEntry</CODE
+>(const QString &amp;key, bool def = 0, bool *ok = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2799"
+></A
+><CODE
+CLASS="FUNCDEF"
+>double readDoubleEntry</CODE
+>(const QString &amp;key, double def = 0, bool *ok = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>double</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2812"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QString readEntry</CODE
+>(const QString &amp;key, const QString &amp;def = QString::null, bool *ok = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QString</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2825"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QStringList readListEntry</CODE
+>(const QString &amp;key, bool *ok = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QStringList</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2836"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QStringList readListEntry</CODE
+>(const QString &amp;key, const QChar &amp;separator, bool *ok = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>QStringList</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2849"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int readNumEntry</CODE
+>(const QString &amp;key, int def = 0, bool *ok = 0);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>ok</TT
+> is not passed and the returned value is a tuple of
+the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the <TT
+CLASS="LITERAL"
+>ok</TT
+> flag.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2862"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool writeEntry</CODE
+>(const QString &amp;key, bool value);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2870"
+>QSGIStyle (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2872"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void scrollBarMetrics</CODE
+>(const QScrollBar *sb, int &amp;sliderMin, int &amp;sliderMax, int &amp;sliderLength, int &amp;buttonDim);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>sb</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.
+(Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2891"
+>QSignalMapper</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSignalMapper</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2895"
+>QSimpleRichText (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSimpleRichText</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2899"
+>QSize</A
+></H3
+><P
+>The Python
+<TT
+CLASS="LITERAL"
+>+</TT
+>, <TT
+CLASS="LITERAL"
+>+=</TT
+>,
+<TT
+CLASS="LITERAL"
+>-</TT
+>, <TT
+CLASS="LITERAL"
+>-=</TT
+>,
+<TT
+CLASS="LITERAL"
+>*</TT
+>, <TT
+CLASS="LITERAL"
+>*=</TT
+>,
+<TT
+CLASS="LITERAL"
+>/</TT
+>, <TT
+CLASS="LITERAL"
+>/=</TT
+>,
+<TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+> and <TT
+CLASS="LITERAL"
+>__nonzero__</TT
+>
+operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2913"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rheight</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2918"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCOORD &amp;rwidth</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2923"
+>QSizeGrip (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSizeGrip</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2927"
+>QSizePolicy (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSizePolicy</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2931"
+>QSlider</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSlider</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2935"
+>QSocketNotifier</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSocketNotifier</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2939"
+>QSound (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSound</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2943"
+>QSpinBox</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2945"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual int mapTextToValue</CODE
+>(bool *ok);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the modified
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2953"
+>QSplashScreen (Qt v3.2.0+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSplashScreen</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2957"
+>QSplitter</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2959"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getRange</CODE
+>(int id, int *min, int *max);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>id</TT
+> parameter and returns the
+<TT
+CLASS="LITERAL"
+>min</TT
+> and <TT
+CLASS="LITERAL"
+>max</TT
+> values as a tuple. (Qt v2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2972"
+>QStatusBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QStatusBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2976"
+>QChar (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2978"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uchar &#38;cell const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2983"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uchar &#38;row const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN2988"
+>QString</A
+></H3
+><P
+>A Python string object (or Unicode object) can be used whenever a
+<TT
+CLASS="LITERAL"
+>QString</TT
+> can be used. A <TT
+CLASS="LITERAL"
+>QString</TT
+> can be
+converted to a Python string object using the Python <TT
+CLASS="LITERAL"
+>str()</TT
+>
+function, and to a Python Unicode object using the Python
+<TT
+CLASS="LITERAL"
+>unicode()</TT
+> function.</P
+><P
+>The Python <TT
+CLASS="LITERAL"
+>+=</TT
+>, <TT
+CLASS="LITERAL"
+>len</TT
+>, <TT
+CLASS="LITERAL"
+>[]</TT
+>
+(for reading slices and individual characters), <TT
+CLASS="LITERAL"
+>in</TT
+> and
+comparison operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3000"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QCharRef at</CODE
+>(uint i);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3006"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QChar constref const</CODE
+>(uint i);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3012"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QChar &#38;ref</CODE
+>(uint i);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3018"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QString &#38;setUnicodeCodes</CODE
+>(const ushort *unicode_as_shorts, uint len);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v2.1+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3026"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QString &#38;sprintf</CODE
+>(const char *format, ...);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3033"
+></A
+><CODE
+CLASS="FUNCDEF"
+>short toShort</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>short</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3041"
+></A
+><CODE
+CLASS="FUNCDEF"
+>ushort toUShort</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>ushort</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3049"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int toInt</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>int</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3057"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uint toUInt</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>uint</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3065"
+></A
+><CODE
+CLASS="FUNCDEF"
+>long toLong</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>long</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3073"
+></A
+><CODE
+CLASS="FUNCDEF"
+>ulong toULong</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>ulong</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3081"
+></A
+><CODE
+CLASS="FUNCDEF"
+>float toFloat</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>float</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3089"
+></A
+><CODE
+CLASS="FUNCDEF"
+>double toDouble</CODE
+>(bool *ok = 0);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>double</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3097"
+>QStringList (Qt v2+)</A
+></H3
+><P
+>The Python <TT
+CLASS="LITERAL"
+>len</TT
+>, <TT
+CLASS="LITERAL"
+>[]</TT
+> (for both reading and
+writing slices and individual elements), <TT
+CLASS="LITERAL"
+>del</TT
+> (for deleting
+slices and individual elements), <TT
+CLASS="LITERAL"
+>+</TT
+>, <TT
+CLASS="LITERAL"
+>+=</TT
+>,
+<TT
+CLASS="LITERAL"
+>*</TT
+>, <TT
+CLASS="LITERAL"
+>*=</TT
+>, <TT
+CLASS="LITERAL"
+>==</TT
+>,
+<TT
+CLASS="LITERAL"
+>!=</TT
+> and <TT
+CLASS="LITERAL"
+>in</TT
+> operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3110"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Iterator append</CODE
+>(const QString &#38;x);<P
+></P
+></DIV
+><P
+>This does not return a value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3116"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Iterator prepend</CODE
+>(const QString &#38;x);<P
+></P
+></DIV
+><P
+>This does not return a value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3122"
+>QStrList</A
+></H3
+><P
+>This class isn't implemented. Whenever a <TT
+CLASS="LITERAL"
+>QStrList</TT
+> is the
+return type of a function or the type of an argument, a Python list of strings
+is used instead.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3126"
+>QStyle (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3128"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void getButtonShift</CODE
+>(int &amp;x, int &amp;y);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>x</TT
+> and
+<TT
+CLASS="LITERAL"
+>y</TT
+> values. (Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3138"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void scrollBarMetrics</CODE
+>(const QScrollBar *b, int &amp;sliderMin, int &amp;sliderMax, int &amp;sliderLength, int &amp;buttonDim);<P
+></P
+></DIV
+><P
+>Thus takes only the <TT
+CLASS="LITERAL"
+>b</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.
+(Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3157"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void tabbarMetrics</CODE
+>(const QTabBar *t, int &amp;hframe, int &amp;vframe, int &amp;overlap);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>t</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>hframe</TT
+>, <TT
+CLASS="LITERAL"
+>vframe</TT
+> and
+<TT
+CLASS="LITERAL"
+>overlap</TT
+> values. (Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3173"
+>QStyleOption (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QStyleOption</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3177"
+>QStyleSheet (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QStyleSheet</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3181"
+>QStyleSheetItem (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QStyleSheetItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3185"
+>QSyntaxHighlighter (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSyntaxHighlighter</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3189"
+>QTab</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTab</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3193"
+>QTabBar</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3195"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QList&lt;QTab&gt; tabList</CODE
+>();<P
+></P
+></DIV
+><P
+>This returns a list of <TT
+CLASS="LITERAL"
+>QTab</TT
+> instances.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3201"
+>QTabDialog</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTabDialog</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3205"
+>QTableView (Qt 1.x, Qt 2.x)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3207"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool colXPos</CODE
+>(int col, int *xPos);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>col</TT
+> parameter and returns a tuple containing
+the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and <TT
+CLASS="LITERAL"
+>xPos</TT
+>.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3218"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool rowYPos</CODE
+>(int row, int *yPos);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>row</TT
+> parameter and returns a tuple containing
+the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and <TT
+CLASS="LITERAL"
+>yPos</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3229"
+>QTabWidget (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTabWidget</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3233"
+>QTextBrowser (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTextBrowser</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3237"
+>QTextCodec (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3239"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual QCString fromUnicode</CODE
+>(const QString &amp;uc, int &amp;lenInOut);<P
+></P
+></DIV
+><P
+>The returned value is a tuple of the <TT
+CLASS="LITERAL"
+>QCString</TT
+> result and the
+updated <TT
+CLASS="LITERAL"
+>lenInOut</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3249"
+>QTextDecoder (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTextDecoder</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3253"
+>QTextEncoder (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3255"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual QCString fromUnicode = 0</CODE
+>(const QString &amp;uc, int &amp;lenInOut);<P
+></P
+></DIV
+><P
+>The returned value is a tuple of the <TT
+CLASS="LITERAL"
+>QCString</TT
+> result and the
+updated <TT
+CLASS="LITERAL"
+>lenInOut</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3265"
+>QTextEdit (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3267"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int charAt</CODE
+>(const QPoint &amp;pos, int *para = 0);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>pos</TT
+> parameter and returns a tuple of the
+value returned via the <TT
+CLASS="LITERAL"
+>para</TT
+> pointer and the int result.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3277"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void del</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delChar</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3283"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual bool find</CODE
+>(const QString &amp;expr, bool cs, bool wo, bool forward = TRUE, int *para = 0, int *index = 0);<P
+></P
+></DIV
+><P
+>If the <TT
+CLASS="LITERAL"
+>para</TT
+> and <TT
+CLASS="LITERAL"
+>index</TT
+> 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
+<TT
+CLASS="LITERAL"
+>para</TT
+> and <TT
+CLASS="LITERAL"
+>index</TT
+> is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3303"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getCursorPosition</CODE
+>(int *para, int *index);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the values returned via the
+<TT
+CLASS="LITERAL"
+>para</TT
+> and <TT
+CLASS="LITERAL"
+>index</TT
+> pointers.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3313"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getSelection</CODE
+>(int *paraFrom, int *indexFrom, int *paraTo, int *indexTo, int selNum = 0);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>selNum</TT
+> parameter and returns a tuple of
+the <TT
+CLASS="LITERAL"
+>paraFrom</TT
+>, <TT
+CLASS="LITERAL"
+>indexFrom</TT
+>,
+<TT
+CLASS="LITERAL"
+>paraTo</TT
+> and <TT
+CLASS="LITERAL"
+>indexTo</TT
+> values.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3332"
+>QTextStream</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3334"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextStream</CODE
+>(FILE *fp, int mode);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3342"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextStream &#38;readRawBytes</CODE
+>(char *buf, uint len);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3350"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextStream &#38;writeRawBytes</CODE
+>(const char *buf, uint len);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3358"
+>QTextIStream (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3360"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextIStream</CODE
+>(FILE *fp, int mode);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3368"
+>QTextOStream (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3370"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QTextOStream</CODE
+>(FILE *fp, int mode);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3378"
+>QTextView (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTextView</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3382"
+>QThread (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QThread</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3386"
+>QTimer</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTimer</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3390"
+>QToolBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QToolBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3394"
+>QToolBox (Qt v3.2.0+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QToolBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3398"
+>QToolButton</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QToolButton</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3402"
+>QToolTip</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QToolTip</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3406"
+>QToolTipGroup</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QToolTipGroup</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3410"
+>QTranslator (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTranslator</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3414"
+>QTranslatorMessage (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTranslatorMessage</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3418"
+>QUrl (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QUrl</TT
+> is fully implemented, including the
+<TT
+CLASS="LITERAL"
+>QString()</TT
+>, <TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+>
+operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3425"
+>QUrlInfo (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QUrlInfo</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3429"
+>QUrlOperator (Qt v2.1+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3431"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual bool isDir</CODE
+>(bool *ok);<P
+></P
+></DIV
+><P
+>This returns a tuple of the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>ok</TT
+> value.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3439"
+>QUuid (Qt v3.0+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QUuid</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3443"
+>QValidator</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3445"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual State validate</CODE
+>(QString&#38; input, int&#38; pos);<P
+></P
+></DIV
+><P
+>The returned value is a tuple of the <TT
+CLASS="LITERAL"
+>State</TT
+> result and the
+updated <TT
+CLASS="LITERAL"
+>pos</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3455"
+>QDoubleValidator</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3457"
+></A
+><CODE
+CLASS="FUNCDEF"
+>State validate</CODE
+>(QString&#38; input, int&#38; pos);<P
+></P
+></DIV
+><P
+>The returned value is a tuple of the <TT
+CLASS="LITERAL"
+>State</TT
+> result and the
+updated <TT
+CLASS="LITERAL"
+>pos</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3467"
+>QIntValidator</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3469"
+></A
+><CODE
+CLASS="FUNCDEF"
+>State validate</CODE
+>(QString&#38; input, int&#38; pos);<P
+></P
+></DIV
+><P
+>The returned value is a tuple of the <TT
+CLASS="LITERAL"
+>State</TT
+> result and the
+updated <TT
+CLASS="LITERAL"
+>pos</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3479"
+>QRegExpValidator (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3481"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual State validate</CODE
+>(QString&#38; input, int&#38; pos);<P
+></P
+></DIV
+><P
+>The returned value is a tuple of the <TT
+CLASS="LITERAL"
+>State</TT
+> result and the
+updated <TT
+CLASS="LITERAL"
+>pos</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3491"
+>QValueList&lt;type&gt; (Qt v2+)</A
+></H3
+><P
+>Types based on the <TT
+CLASS="LITERAL"
+>QValueList</TT
+> template are automatically
+converted to and from Python lists of the type.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3495"
+>QVariant (Qt v2.1+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3497"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QVariant</CODE
+>(const char *val);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3503"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QVariant</CODE
+>(const QBitArray &amp;val);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3509"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QVariant</CODE
+>(const QValueList&lt;QVariant&gt; &amp;val);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3515"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QVariant</CODE
+>(const QMap&lt;QString,QVariant&gt; &amp;val);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3521"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QBitArray &amp;asBitArray</CODE
+>();<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3526"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool &amp;asBool</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3531"
+></A
+><CODE
+CLASS="FUNCDEF"
+>double &amp;asDouble</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3536"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int &amp;asInt</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3541"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QValueList&lt;QVariant&gt; &amp;asList</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3546"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMap&lt;QString,QVariant&gt; &amp;asMap</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3551"
+></A
+><CODE
+CLASS="FUNCDEF"
+>uint &amp;asUInt</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3556"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QValueListConstIterator&lt;QVariant&gt;listBegin const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3561"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QValueListConstIterator&lt;QVariant&gt;listEnd const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3566"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMapConstIterator&lt;QString,QVariant&gt;mapBegin const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3571"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMapConstIterator&lt;QString,QVariant&gt;mapEnd const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3576"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMapConstIterator&lt;QString,QVariant&gt;mapFind const</CODE
+>(const QString &#38;key);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3582"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QValueListConstIterator&lt;QString&gt;stringListBegin const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3587"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QValueListConstIterator&lt;QString&gt;stringListEnd const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3592"
+></A
+><CODE
+CLASS="FUNCDEF"
+>const QBitArray toBitArray const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3597"
+></A
+><CODE
+CLASS="FUNCDEF"
+>const QValueList&lt;QVariant&gt;toList const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3602"
+></A
+><CODE
+CLASS="FUNCDEF"
+>const QMap&lt;QString,QVariant&gt;toMap const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3607"
+>QVBox (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QVBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3611"
+>QVButtonGroup (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QVButtonGroup</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3615"
+>QVGroupBox (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QVGroupBox</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3619"
+>QWaitCondition (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWaitCondition</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3623"
+>QWhatsThis</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWhatsThis</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3627"
+>QWidget</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3629"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QWExtra *extraData</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3634"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QFocusData *focusData</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3639"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void lower</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>lowerW</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3645"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void raise</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>raiseW</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3651"
+>QWidgetList</A
+></H3
+><P
+>This class isn't implemented. Whenever a <TT
+CLASS="LITERAL"
+>QWidgetList</TT
+> is the
+return type of a function or the type of an argument, a Python list of
+instances is used instead.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3655"
+>QWidgetStack</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWidgetStack</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3659"
+>QWindow</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWindow</TT
+> is fully implemented (Qt v1.x).</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3663"
+>QWindowsStyle (Qt v2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3665"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getButtonShift</CODE
+>(int &#38;x, int &#38;y);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>x</TT
+> and
+<TT
+CLASS="LITERAL"
+>y</TT
+> values. (Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3675"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void scrollBarMetrics</CODE
+>(const QTabBar *sb, int &#38;sliderMin, int &#38;sliderMax, int &#38;sliderLength, int &#38;buttonDim);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>sb</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>sliderMin</TT
+>, <TT
+CLASS="LITERAL"
+>sliderMax</TT
+>,
+<TT
+CLASS="LITERAL"
+>sliderLength</TT
+> and <TT
+CLASS="LITERAL"
+>buttonDim</TT
+> values.
+(Qt v2)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3694"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void tabbarMetrics</CODE
+>(const QTabBar *t, int &#38;hframe, int &#38;vframe, int &#38;overlap);<P
+></P
+></DIV
+><P
+>This takes only the <TT
+CLASS="LITERAL"
+>t</TT
+> parameter and returns a tuple of the
+<TT
+CLASS="LITERAL"
+>hframe</TT
+>, <TT
+CLASS="LITERAL"
+>vframe</TT
+> and
+<TT
+CLASS="LITERAL"
+>overlap</TT
+> values. (Qt v2)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3710"
+>QWindowsXPStyle (Qt v3.0.1+, Windows)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWindowsXPStyle</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3714"
+>QWizard (Qt v2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWizard</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3718"
+>QWMatrix</A
+></H3
+><P
+>The Python <TT
+CLASS="LITERAL"
+>==</TT
+>, <TT
+CLASS="LITERAL"
+>!=</TT
+> and
+<TT
+CLASS="LITERAL"
+>*=</TT
+> operators are supported.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3724"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QWMatrix invert const</CODE
+>(bool *invertible = 0);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the <TT
+CLASS="LITERAL"
+>QWMatrix</TT
+>
+result and the <TT
+CLASS="LITERAL"
+>invertible</TT
+> value.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3732"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void map const</CODE
+>(int x, int y, int *tx, int *ty);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>x</TT
+> and <TT
+CLASS="LITERAL"
+>y</TT
+> parameters and
+returns a tuple containing the <TT
+CLASS="LITERAL"
+>tx</TT
+> and <TT
+CLASS="LITERAL"
+>ty</TT
+>
+values.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3748"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void map const</CODE
+>(float x, float y, float *tx, float *ty);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>x</TT
+> and <TT
+CLASS="LITERAL"
+>y</TT
+> parameters and
+returns a tuple containing the <TT
+CLASS="LITERAL"
+>tx</TT
+> and <TT
+CLASS="LITERAL"
+>ty</TT
+>
+values. (Qt v1.x)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3764"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void map const</CODE
+>(double x, double y, double *tx, double *ty);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>x</TT
+> and <TT
+CLASS="LITERAL"
+>y</TT
+> parameters and
+returns a tuple containing the <TT
+CLASS="LITERAL"
+>tx</TT
+> and <TT
+CLASS="LITERAL"
+>ty</TT
+>
+values. (Qt v2+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3780"
+>QWorkspace (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWorkspace</TT
+> is fully implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN3784"
+><TT
+CLASS="LITERAL"
+>qtaxcontainer</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN3787"
+>QAxBase (Windows, Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3789"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QAxObject</CODE
+>(IUnknown *iface = 0);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3795"
+></A
+><CODE
+CLASS="FUNCDEF"
+>long queryInterface</CODE
+>(const QUuid &amp;uuid, void **iface);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3803"
+></A
+><CODE
+CLASS="FUNCDEF"
+>PropertyBag propertyBag const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3808"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setPropertyBag</CODE
+>(const PropertyBag &amp;bag);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3814"
+></A
+><CODE
+CLASS="FUNCDEF"
+>unsigned long registerWeakActiveObject</CODE
+>(const QString &amp;guid);<P
+></P
+></DIV
+><P
+>This is a utility method provided by PyQt to make it easier to use
+Mark Hammond's <TT
+CLASS="LITERAL"
+>win32com</TT
+> module to manipulate objects
+created by the <TT
+CLASS="LITERAL"
+>qtaxcontainer</TT
+> module.</P
+><P
+>The <TT
+CLASS="LITERAL"
+>RegisterActiveObject()</TT
+> COM function is called to
+register the <TT
+CLASS="LITERAL"
+>QAxBase</TT
+> instance as a weak object with the
+<TT
+CLASS="LITERAL"
+>guid</TT
+> GUID. The revoke handle is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3826"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static void revokeActiveObject</CODE
+>(unsigned long rhandle);<P
+></P
+></DIV
+><P
+>This is a wrapper around the <TT
+CLASS="LITERAL"
+>RevokeActiveObject()</TT
+> COM
+function and is called to revoke the object registered using
+<TT
+CLASS="LITERAL"
+>registerWeakActiveObject()</TT
+>. <TT
+CLASS="LITERAL"
+>rhandle</TT
+> is
+the revoke handle returned by <TT
+CLASS="LITERAL"
+>registerWeakActiveObject()</TT
+>.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3836"
+>QAxObject (Windows, Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3838"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QAxObject</CODE
+>(IUnknown *iface, QObject *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3848"
+>QAxWidget (Windows, Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3850"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QAxWidget</CODE
+>(IUnknown *iface, QWidget *parent = 0, const char *name = 0);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN3860"
+><TT
+CLASS="LITERAL"
+>qtcanvas</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN3863"
+>QCanvas (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvas</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3867"
+>QCanvasEllipse (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasEllipse</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3871"
+>QCanvasItem (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3875"
+>QCanvasItemList (Qt v2.2+)</A
+></H3
+><P
+>This class isn't implemented. Whenever a <TT
+CLASS="LITERAL"
+>QCanvasItemList</TT
+> is
+the return type of a function or the type of an argument, a Python list of
+<TT
+CLASS="LITERAL"
+>QCanvasItem</TT
+> instances is used instead.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3880"
+>QCanvasLine (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasLine</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3884"
+>QCanvasPixmap (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasPixmap</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3888"
+>QCanvasPixmapArray (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3890"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QPixmapArray</CODE
+>(QList&lt;QPixmap&gt; pixmaps, QList&lt;QPoint&gt; hotspots);<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>pixmaps</TT
+> argument is a Python list of QPixmap instances,
+and the <TT
+CLASS="LITERAL"
+>hotspots</TT
+> argument is a Python list of QPoint
+instances. (Qt v2.2.0 - Qt v2.3.1)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3900"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QPixmapArray</CODE
+>(QValueList&lt;QPixmap&gt; pixmaps, QPointArray hotspots = QPointArray());<P
+></P
+></DIV
+><P
+>The <TT
+CLASS="LITERAL"
+>pixmaps</TT
+> argument is a Python list of QPixmap instances.
+(Qt v3+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3909"
+>QCanvasPolygon (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasPolygon</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3913"
+>QCanvasPolygonalItem (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasPolygonalItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3917"
+>QCanvasRectangle (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasRectangle</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3921"
+>QCanvasSpline (Qt v3.0+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasSpline</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3925"
+>QCanvasSprite (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasSprite</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3929"
+>QCanvasText (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasText</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3933"
+>QCanvasView (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCanvasView</TT
+> is fully implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN3937"
+><TT
+CLASS="LITERAL"
+>qtext</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN3940"
+>QextScintilla</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3942"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getCursorPosition</CODE
+>(int *line, int *index);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the values returned by the
+<TT
+CLASS="LITERAL"
+>line</TT
+> and <TT
+CLASS="LITERAL"
+>index</TT
+> pointers.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3952"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void getSelection</CODE
+>(int *lineFrom, int *indexFrom, int *lineTo, int *indexTo);<P
+></P
+></DIV
+><P
+>This takes no parameters and returns a tuple of the values returned by the
+<TT
+CLASS="LITERAL"
+>lineFrom</TT
+>, <TT
+CLASS="LITERAL"
+>indexFrom</TT
+>,
+<TT
+CLASS="LITERAL"
+>lineTo</TT
+> and <TT
+CLASS="LITERAL"
+>indexTo</TT
+> pointers.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3968"
+>QextScintillaAPIs</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaAPIs</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3972"
+>QextScintillaBase</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaBase</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3976"
+>QextScintillaCommand</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaCommand</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3980"
+>QextScintillaCommandSet</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaCommandSet</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3984"
+>QextScintillaDocument</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaDocument</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3988"
+>QextScintillaLexer</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexer</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3992"
+>QextScintillaLexerBash (QScintilla v1.4+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerBash</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN3996"
+>QextScintillaLexerBatch (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerBatch</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4000"
+>QextScintillaLexerCPP</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerCPP</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4004"
+>QextScintillaLexerCSharp</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerCSharp</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4008"
+>QextScintillaLexerCSS (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerCSS</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4012"
+>QextScintillaLexerDiff (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerDiff</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4016"
+>QextScintillaLexerHTML (QScintilla v1.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerHTML</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4020"
+>QextScintillaLexerIDL</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerIDL</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4024"
+>QextScintillaLexerJava</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerJava</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4028"
+>QextScintillaLexerJavaScript</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerJavaScript</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4032"
+>QextScintillaLexerLua (QScintilla v1.5+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerLua</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4036"
+>QextScintillaLexerMakefile (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerMakefile</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4040"
+>QextScintillaLexerPerl</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerPerl</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4044"
+>QextScintillaLexerPOV (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerPOV</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4048"
+>QextScintillaLexerProperties (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerProperties</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4052"
+>QextScintillaLexerPython</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerPython</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4056"
+>QextScintillaLexerRuby (QScintilla v1.5+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerRuby</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4060"
+>QextScintillaLexerSQL (QScintilla v1.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerSQL</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4064"
+>QextScintillaLexerTeX (QScintilla v1.6+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaLexerTeX</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4068"
+>QextScintillaMacro</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaMacro</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4072"
+>QextScintillaPrinter</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QextScintillaPrinter</TT
+> is fully implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4076"
+><TT
+CLASS="LITERAL"
+>qtgl</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4079"
+>QGL</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGL</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4083"
+>QGLContext</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGLContext</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4087"
+>QGLFormat</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGLFormat</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4091"
+>QGLWidget</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QGLWidget</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4095"
+>QGLColormap (Qt v3.0+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4097"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setEntries</CODE
+>(int count, const QRgb *colors, int base = 0);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4107"
+><TT
+CLASS="LITERAL"
+>qtnetwork</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4110"
+>QDns (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDns</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4114"
+>QFtp (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4116"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readBlock</CODE
+>(char *data, Q_ULONG maxlen);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>maxlen</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>None</TT
+> is returned.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4127"
+>QHostAddress (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4129"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QHostAddress</CODE
+>(Q_UINT8 *ip6Addr);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4135"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QHostAddress</CODE
+>(const Q_IPV6ADDR &amp;ip6Addr);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4141"
+></A
+><CODE
+CLASS="FUNCDEF"
+>void setAddress</CODE
+>(Q_UINT8 *ip6Addr);<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4147"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_IPV6ADDR toIPv6Address const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not yet implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4153"
+>QHttp (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4155"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readBlock</CODE
+>(char *data, Q_ULONG maxlen);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>maxlen</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>None</TT
+> is returned.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4166"
+>QHttpHeader (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHttpHeader</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4170"
+>QHttpRequestHeader (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHttpRequestHeader</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4174"
+>QHttpResponseHeader (Qt v3.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QHttpResponseHeader</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4178"
+>QLocalFs (Qt v2.1+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QLocalFs</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4182"
+>QServerSocket (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QServerSocket</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4186"
+>QSocket (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4188"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readBlock</CODE
+>(char *data, Q_ULONG len);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>len</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>Py_None</TT
+> is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4199"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readLine</CODE
+>(char *data, Q_ULONG maxlen);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>maxlen</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>Py_None</TT
+> is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4210"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG writeBlock</CODE
+>(const char *data, Q_ULONG len);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>data</TT
+> and not passed
+as a parameter.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4220"
+>QSocketDevice (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4222"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG readBlock</CODE
+>(char *data, Q_ULONG len);<P
+></P
+></DIV
+><P
+>This takes a single <TT
+CLASS="LITERAL"
+>len</TT
+> parameter. The
+<TT
+CLASS="LITERAL"
+>data</TT
+> is returned if there was no error, otherwise
+<TT
+CLASS="LITERAL"
+>None</TT
+> is returned.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4233"
+></A
+><CODE
+CLASS="FUNCDEF"
+>Q_LONG writeBlock</CODE
+>(const char *data, Q_ULONG len);<P
+></P
+></DIV
+><P
+><TT
+CLASS="LITERAL"
+>len</TT
+> is derived from <TT
+CLASS="LITERAL"
+>data</TT
+> and not passed
+as a parameter.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4243"
+><TT
+CLASS="LITERAL"
+>qtpe</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4246"
+>QPEApplication</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4248"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QApplication</CODE
+>(int&#38; argc, char **argv, Type type);<P
+></P
+></DIV
+><P
+>This takes two parameters, the first of which is a list of argument strings.
+Arguments used by Qt are removed from the list.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4258"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int exec</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>exec_loop</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4264"
+>AppLnk</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4266"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual QString exec const</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>exec_property</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4272"
+>AppLnkSet</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>AppLnkSet</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4276"
+>Config</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>Config</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4280"
+>DateFormat</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>DateFormat</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4284"
+>DocLnk</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4286"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QString exec const</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed to <TT
+CLASS="LITERAL"
+>exec_property</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4292"
+>DocLnkSet</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>DocLnkSet</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4296"
+>FileManager</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>FileManager</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4300"
+>FileSelector</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>FileSelector</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4304"
+>FileSelectorItem</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>FileSelectorItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4308"
+>FontDatabase</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>FontDatabase</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4312"
+>Global</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4314"
+></A
+><CODE
+CLASS="FUNCDEF"
+>static void setBuiltinCommands</CODE
+>(Command *);<P
+></P
+></DIV
+><P
+>Not implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4319"
+>MenuButton</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>MenuButton</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4323"
+>QCopEnvelope</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCopEnvelope</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4327"
+>QDawg</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDawg</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4331"
+>QPEMenuBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPEMenuBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4335"
+>QPEToolBar</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QPEToolBar</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4339"
+>Resource</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>Resource</TT
+> is fully implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4343"
+><TT
+CLASS="LITERAL"
+>qtsql</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4346"
+>QDataBrowser (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4348"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual void del</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delOnCursor</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4354"
+>QDataTable (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDataTable</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4358"
+>QDataView (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDataView</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4362"
+>QEditorFactory (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QEditorFactory</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4366"
+>QSql (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSql</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4370"
+>QSqlCursor (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4372"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual int del</CODE
+>(bool invalidate = TRUE);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delRecords</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4379"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual int del</CODE
+>(const QString &amp;filter, bool invalidate = TRUE);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delRecords</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4388"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool exec</CODE
+>(const QString &amp;query);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>execQuery</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4395"
+>QSqlDatabase (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4397"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QSqlQuery exec</CODE
+>(const QString &amp;query = QString::null);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>execStatement</TT
+> in Python.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4404"
+>QSqlDriver (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlDriver</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4408"
+>QSqlEditorFactory (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlEditorFactory</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4412"
+>QSqlError (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlError</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4416"
+>QSqlField (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlField</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4420"
+>QSqlFieldInfo (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlFieldInfo</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4424"
+>QSqlForm (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlForm</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4428"
+>QSqlIndex (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlIndex</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4432"
+>QSqlPropertyMap (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlPropertyMap</TT
+> 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. This will
+simple be ignored.</P
+><P
+>This problem may be addressed in a future release of PyQt.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4437"
+>QSqlQuery (Qt v3+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4439"
+></A
+><CODE
+CLASS="FUNCDEF"
+>QMap&lt;QString,QVariant&gt; boundValues const</CODE
+>();<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v3.2.0+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4444"
+></A
+><CODE
+CLASS="FUNCDEF"
+>virtual bool exec</CODE
+>(const QString &amp;query);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>execQuery</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4451"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool exec</CODE
+>();<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>execQuery</TT
+> in Python. (Qt v3.1+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4457"
+>QSqlRecord (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlRecord</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4461"
+>QSqlRecordInfo (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlRecordInfo</TT
+> is implemented as a Python list of
+<TT
+CLASS="LITERAL"
+>QSqlFieldInfo</TT
+> instances.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4466"
+>QSqlResult (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QSqlResult</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4470"
+>QSqlSelectCursor (Qt v3.2.0+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4472"
+></A
+><CODE
+CLASS="FUNCDEF"
+>int del</CODE
+>(bool invalidate = TRUE);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>delRecords</TT
+> in Python.</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4479"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool exec</CODE
+>(const QString &amp;query);<P
+></P
+></DIV
+><P
+>This has been renamed <TT
+CLASS="LITERAL"
+>execQuery</TT
+> in Python.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4486"
+><TT
+CLASS="LITERAL"
+>qttable</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4489"
+>QTable (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTable</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4493"
+>QTableItem (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTableItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4497"
+>QCheckTableItem (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QCheckTableItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4501"
+>QComboTableItem (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QComboTableItem</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4505"
+>QTableSelection (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QTableSelection</TT
+> is fully implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4509"
+><TT
+CLASS="LITERAL"
+>qtui</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4512"
+>QWidgetFactory (Qt v3+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QWidgetFactory</TT
+> is fully implemented.</P
+></DIV
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H2
+CLASS="SECT1"
+><A
+NAME="AEN4516"
+><TT
+CLASS="LITERAL"
+>qtxml</TT
+> Module Reference</A
+></H2
+><DIV
+CLASS="SECT2"
+><H3
+CLASS="SECT2"
+><A
+NAME="AEN4519"
+>QDomImplementation (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomImplementation</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4523"
+>QDomNode (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomNode</TT
+> is fully implemented, including the Python
+<TT
+CLASS="LITERAL"
+>==</TT
+> and <TT
+CLASS="LITERAL"
+>!=</TT
+> operators.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4529"
+>QDomNodeList (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomNodeList</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4533"
+>QDomDocument (Qt v2.2+)</A
+></H3
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4535"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QCString &amp;buffer, bool namespaceProcessing, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>buffer</TT
+> and
+<TT
+CLASS="LITERAL"
+>namespaceProcessing</TT
+> parameters and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4555"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QByteArray &amp;buffer, bool namespaceProcessing, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>buffer</TT
+> and
+<TT
+CLASS="LITERAL"
+>namespaceProcessing</TT
+> parameters and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4575"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QString &amp;text, bool namespaceProcessing, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>text</TT
+> and
+<TT
+CLASS="LITERAL"
+>namespaceProcessing</TT
+> parameters and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4595"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QIODevice *dev, bool namespaceProcessing, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>dev</TT
+> and
+<TT
+CLASS="LITERAL"
+>namespaceProcessing</TT
+> parameters and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4615"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QCString &amp;buffer, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>buffer</TT
+> parameter only and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4632"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QByteArray &amp;buffer, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>buffer</TT
+> parameter only and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4649"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QString &amp;text, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>text</TT
+> parameter only and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4666"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(const QIODevice *dev, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>This takes the <TT
+CLASS="LITERAL"
+>dev</TT
+> parameter only and returns a tuple
+containing the <TT
+CLASS="LITERAL"
+>bool</TT
+> result and the
+<TT
+CLASS="LITERAL"
+>errorMsg</TT
+>, <TT
+CLASS="LITERAL"
+>errorLine</TT
+> and
+<TT
+CLASS="LITERAL"
+>errorColumn</TT
+> values. (Qt v3+)</P
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4683"
+></A
+><CODE
+CLASS="FUNCDEF"
+>bool setContent</CODE
+>(QXmlInputSource *source, QXmlReader *reader, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0);<P
+></P
+></DIV
+><P
+>Not yet implemented. (Qt v3.2.0+)</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4697"
+>QDomDocumentFragment (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomDocumentFragment</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4701"
+>QDomDocumentType (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomDocumentType</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4705"
+>QDomNamedNodeMap (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomNamedNodeMap</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4709"
+>QDomCharacterData (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomCharacterData</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4713"
+>QDomAttr (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomAttr</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4717"
+>QDomElement (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomElement</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4721"
+>QDomText (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomText</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4725"
+>QDomComment (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomComment</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4729"
+>QDomCDATASection (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomCDATASection</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4733"
+>QDomNotation (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomNotation</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4737"
+>QDomEntity (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomEntity</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4741"
+>QDomEntityReference (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomEntityReference</TT
+> is fully implemented.</P
+></DIV
+><DIV
+CLASS="SECT2"
+><HR><H3
+CLASS="SECT2"
+><A
+NAME="AEN4745"
+>QDomProcessingInstruction (Qt v2.2+)</A
+></H3
+><P
+><TT
+CLASS="LITERAL"
+>QDomProcessingInstruction</TT
+> is fully implemented.</P
+></DIV
+></DIV
+></DIV
+></BODY
+></HTML
+>