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