Qt 3.2 introduces new features as well as many improvements over the3.1.x series. This file gives an overview of the main changes sinceversion 3.1.2. For more details, see the online documentation whichis included in this distribution. The documentation is also availableat http://qt.nokia.com/doc/The Qt version 3.2 series is binary compatible with the 3.1.x series.Applications compiled for 3.1 will continue to run with 3.2.***************************************************************************** General *****************************************************************************Qt library----------New classes have been added to the Qt Library including aclass to add splash screens to applications (QSplashScreen), a toolboxwidget that provides a column of tabbed widgets (QToolBox), and aclass to manage per-thread data storage (QThreadStorage).The SQL module received a fair bit of attention this time. The mostnotable improvements include a native IBM DB2 driver, complete supportfor stored procedures including the possibility to accessout-parameters, and native support for 64 bit fields without having toconvert to or from strings. We also added support for settingconnection parameters. This way you can, for example, convenientlyopen an SSL connection to a MySQL or PostgreSQL database. If you needeven more customization, e.g. for an Oracle database, you can set upthe connection yourself and instantiate a Qt driver object on top ofit. An extended SQL cursor class has been added that makes it moreconvenient to display result sets from general SQL queries(QSqlSelectCursor). QSqlDatabase::tables() is now capable to returntables, views and/or system tables. In addition, you can add customdatabase drivers without compiling them as plugins(see QSqlDatabase::registerSqlDriver()).QLineEdit, the one-line text editor, now supports validation inputmasks. The feature complements the previous QValidator concept andallows e.g. restriction of input to the IP address format (mask"990.990.990.990;_"), or to ISO date format (mask "0000-90-90;0").Qt's unicode code support has been extended. Most notably, fullsupport for Indic scripts has been added, covering writing systemssuch as Devanagari, Tamil and Bengali. The group of right to leftwriting systems has been extended with support for Syriac. Bothimprovements are available on both Windows with Uniscribe installed,and on Unix/X11 when using XFT with OpenType fonts.All tool classes that support STL-like iterators with begin() andend(), contain two extra functions constBegin() and constEnd(). Theconst versions always return const iterators, and thus can be a littlebit faster with Qt's implicitly shared containers.QPainter's complex drawText() function has been highlyoptimized. Despite its support for complex unicode scripts, it nowperforms better than its less unicode-capable counterpart in Qt 2.3.QPixmap now supports pixmaps with alpha channel (semi transparency) onall Windows versions except Windows 95 and Windows NT 4.0.The print dialog now supports "selection" as a print range as well asthe possibility to enable/disable all different printer optionsindividually.On Windows, the Qt installation includes a toolbar for Visual Studio.NET that provides an integration of the Qt tools (ie. Qt Designer) with the IDE.Many classes were improved; see the detailed overview that follows.Qt Motif Extension------------------Dialog handling has matured and has been extended since theextension's introduction in Qt 3.1. The documentation and codeexamples have been improved, including a walkthrough that covers thecomplete migration of a real-world Motif example to Qt. The processcontains four intermediate steps where the application utilizes bothtoolkits.ActiveQt Extension------------------Type handling has been extended on both the container and the serverside. The new supported types are byte arrays and 64bit integers. TheQAxServer module supports aggregation, as well as QObject subclasses as return and parameter types of slots, and allows error reporting through COM exceptions.The Designer integration has been extended to support property dialogsimplemented by the control server.Controls developed with ActiveQt support aggregation, which makes itpossible to use them in containers that require this form of containment tobe supported. ActiveQt also supports masked controls in containers thatsupport this for window'ed controls.Qt Designer-----------The popup menu editor has been rewritten. The new editor provides thethe ability to add, edit and remove menus and menu items directly inthe menubar and in the popup menu. Navigation and editing can be doneusing either the mouse or the keyboard.The property editor now allows editing of properties with or'd values(sets).Designer also supports the new QToolBox widget in a similar fashion toQTabWidget, etc.Qt Assistant------------Profiles have been introduced to allow applications to extend the useof Qt Assistant as a help system. Profiles describe the documentationto use so that only application specific documentation will bereferenced in an end user installation. Profiles also allow somecustomization of the look in Qt Assistant. For detailed information,see the helpdemo example in $QTDIR/examples/helpdemo.Profiles replace the content files and categories system. Thefollowing command line options are removed since they no longer serveany purpose: addContentFile, removeContentFile, category, anddisableFirstRun.Qt Assistant has multiple tabs for browsing, therefore enablingmultiple pages to be browsed without opening a new window.It is possible to specify a default home page.It is possible to specify a PDF reader so that urls to PDF files canbe opened from Qt Assistant.Compilers---------Note: Qt 3.2 is the last version to officially support IRIX MIPSproo32 and Sun CC 5.0. A script, $QTDIR/bin/qt32castcompat, is providedfor 3.2 which needs to be run for these compilers.Miscellaneous-------------Users of the 3.2.0 beta releases please note: The QWidgetContainerPlugininterfaces was removed from the final release due to some serious issues.***************************************************************************** Library *****************************************************************************- QAction / QActionGroup Simplified constructors so that it is no longer necessary to specify texts for buttons and menu items separately. For action groups, we fixed the enable/disable behavior. If an action inside an action group is explicitly disabled, it is no longer implicitly enabled together with the group. This is identical to enabling/disabling widgets and their children.- QApplication Added the aboutQt() slot for convenience.- QAssistantClient Added the new function, setArguments(), that invokes Qt Assistant in different modes.- QAxBase Added the new function, asVariant(), that passes a COM object through dynamicCall().- QAxBindable Added the new function, reportError(), that sends error information to the ActiveX client.- QColor Added the new static function, colorNames(), that retrieves a list of all color names known to Qt.- QDeepCopy Now also supports QDir, QFileInfo, and QStringList.- QDom Now has long and ulong support for setAttribute() and setAttributeNS().- QFont Added the new properties: stretch and overline. Added the new function, resolve(), that copies unspecified attributes from one font to another.- QFontDataBase Added a new overload for families() that restricts the returned list to fonts supporting a specific QFont::Script, e.g. QFont::Greek, QFont::Devanagari or QFont::Arabic.- QFontInfo / QFontMetrics Added new constructors that force the info and metrics objects to use a given QFont::Script.- QGLWidget Added a new constructor that takes a QGLContext parameter. Makes the undocumented setContext() obsolete.- QHeader Added getters for the sort indicator (sortIndicatorSection() and sortIndicatorOrder() ).- QImage Added a new overload for save() that writes to a given QIODevice*.- QListView Added tristate support to check list items (QCheckListItem::setTristate()). Added the new function, setSelectionAnchor(), to set the list view's selection anchor explicitly.- QLineEdit Added input masks: setInputMask(), inputMask(), and hasAcceptableInput(). Added new function selectionStart() which returns the index of the first selected character in the line edit.- QMacStyle Added customizable focus rectangle policy.- QMessageBox Added the new static function, question(), that complements the existing information(), warning() and fatal() functions.- QMotifDialog [Qt Motif Extension] Now has two distinct modes of operation: 1) it allows a Motif dialog to have a Qt parent, and 2) it allows a Qt dialog to have a Motif parent.- QMYSQLDriver Better support for MySQL/embedded.- QPixmapCache Added the new function, remove(), to explicitly remove a pixmap from the cache.- QPrinter Added the new functions: setPrintRange(), printRange(), setOptionEnabled(), and optionEnabled(). For Windows only, added the new function, setWinPageSize(), that allows setting DEVMODE.dmPaperSize directly.- QPtrList Added STL-like iterators with begin(), end(), and erase().- QScrollBar Maintains a user defined size policy when the direction changes.- QSplashScreen [new] This new widget class provides a splash screen to be shown during application startup.- QSplitter Added the new properties: opaqueResize, childrenCollapsible, and handleWidth.- QSqlError Added a couple of convenience functions: text(), which returns the concatenated database and driver texts. showMessage(), which will pop up a QMessageBox with the text that text() returns.- QSqlQuery Added overloads for the bindValue() call which makes it possible to specifiy what role a bound value should have: In, Out or InOut.- QSqlSelectCursor [new] This new QSqlCursor subclass provides browsing of general SQL SELECT statements.- QSqlDatabase Added overloaded tables() call which can return tables, views and/or system tables.- QPSQLDriver Calling tables() with no arguments will only return table names, instead of table and view names as in Qt 3.1. The new tables() call in QSqlDatabase can be used to get table and/or view names.- QString Added 64 bit support. Added the new functions: multiArg(), reserve(), capacity(), squeeze(). Added case insensitive overloads for startsWith() and endsWidth().- QStringList Added the new function gres().- QStyle Added support for toolbox, header, MDI frame, table grid line color, line edit password character, and message box question.- QSyntaxHighlighter Added the new function, currentParagraph().- QTabWidget Added support for custom widgets to be placed beside the tab bar: setCornerWidget() and cornerWidget().- QTextEdit In Log mode, added the new functions: setMaxLogLines() and maxLogLines(). Implemented insertAt() for LogText mode.- QThreadStorage [new] This new tool class provides per-thread data storage, also referred to as thread local storage or TLS.- QToolBox [new] This new widget class provides a column of tabbed widgets, one above the other, with the current page displayed below the current tab.- QVariant Added support for LongLong and ULongLong.- QWidget Added a new widget flag, WNoAutoErase, that combines the now obsolete WResizeNoErase and WRepaintNoErase flags.