summaryrefslogtreecommitdiffstats
path: root/dist/changes-4.2.0
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2009-04-24 11:34:15 (GMT)
committeraxis <qt-info@nokia.com>2009-04-24 11:34:15 (GMT)
commit8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76 (patch)
treea17e1a767a89542ab59907462206d7dcf2e504b2 /dist/changes-4.2.0
downloadQt-8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76.zip
Qt-8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76.tar.gz
Qt-8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76.tar.bz2
Long live Qt for S60!
Diffstat (limited to 'dist/changes-4.2.0')
-rw-r--r--dist/changes-4.2.02506
1 files changed, 2506 insertions, 0 deletions
diff --git a/dist/changes-4.2.0 b/dist/changes-4.2.0
new file mode 100644
index 0000000..f42da27
--- /dev/null
+++ b/dist/changes-4.2.0
@@ -0,0 +1,2506 @@
+Qt 4.2 introduces many new features as well as many improvements and
+bugfixes over the 4.1.x series. For more details, see the online
+documentation which is included in this distribution. The
+documentation is also available at http://doc.trolltech.com/
+
+The Qt version 4.2 series is binary compatible with the 4.1.x series.
+Applications compiled for 4.1 will continue to run with 4.2.
+
+The Qtopia Core version 4.2 series is binary compatible with the 4.1.x
+series except for some parts of the device handling API, as detailed
+in Platform Specific Changes below.
+
+
+****************************************************************************
+* General *
+****************************************************************************
+
+
+New features
+------------
+
+- QCalendarWidget provides a standard monthly calendar widget with date
+ selection features.
+
+- QCleanlooksStyle provides the new Cleanlooks style, a clone of the GNOME
+ ClearLooks style, giving Qt applications a native look on GNOME desktops.
+
+- QCompleter provides facilities for auto completion in text entry widgets.
+
+- QDataWidgetMapper can be used to make widgets data-aware by mapping them
+ to sections of an item model.
+
+- QDesktopServices provides desktop integration features, such as support
+ for opening URLs using system services.
+
+- QDialogButtonBox is used in dialogs to ensure that buttons are placed
+ according to platform-specific style guidelines.
+
+- QFileSystemWatcher enables applications to monitor files and directories
+ for changes.
+
+- QFontComboBox provides a standard font selection widget for document
+ processing applications.
+
+- QGraphicsView and related classes provide the Graphics View framework, a
+ replacement for Qt 3's canvas module that provides an improved API, enhanced
+ rendering, and more responsive handling of large numbers of canvas items.
+
+- QGLFramebufferObject encapsulates OpenGL framebuffer objects.
+
+- QMacPasteboardMime handles Pasteboard access on Qt/Mac. This obsoletes
+ QMacMime as the underlying system has changed to support Apple's new
+ Pasteboard Manager. Any old QMacMime objects will not be used.
+
+- QNetworkInterface represents a network interface, providing information
+ about the host's IP addresses and network interfaces.
+
+- QResource provides static functions that control resource lookup and
+ provides a way to navigate resources directly without levels of
+ indirection through QFile/QFileEngine.
+
+- QSystemTrayIcon allows applications to provide their own icon in the
+ system tray.
+
+- QTimeLine gives developers access to a standard time line class with which
+ to create widget animations.
+
+- The QtDBus module provides inter-process communication on platforms
+ that support the D-BUS protocol.
+
+- The QUndo* classes in Qt's Undo framework provide undo/redo functionality
+ for applications.
+
+- Support for the Glib event loop to enable integration between Qt and non-Qt
+ applications on the GNOME desktop environment.
+
+- Improved Accessibility for item-based views and QTextEdit.
+
+- Support for main window animations and tabbed dock widgets.
+
+- Added an SVG icon engine to enable SVG drawings to be used by QIcon.
+
+- Widgets can now be styled according to rules specified in a style sheet,
+ using a syntax familiar to users of Cascading Style Sheets (CSS). Style
+ sheets are set using the QWidget::styleSheet property.
+
+- Introduced a new key mapper system which improves the shortcut system by
+ only testing the real possible shortcuts, such as Ctrl+Shift+= and Ctrl++
+ on an English keyboard.
+
+- Improved and enhanced QMessageBox to support native look and feel on many
+ common platforms.
+
+- Experimental support for Qt usage reporting ("metered licenses") on Linux,
+ Windows and Mac OS X. Reporting is disabled by default.
+
+- A screen magnification utility, pixeltool, is provided. It is designed to help
+ with the process of fine-tuning styles and user interface features.
+
+- New qrand() and qsrand() functions to provide thread safe equivalents to
+ rand() and srand().
+
+
+General improvements
+--------------------
+
+- Item views
+
+ * Selections are maintained when the layout of the model changes
+ (e.g., due to sorting).
+
+ * Convenience views can perform dynamic sorting of items when the data
+ in items changes.
+
+ * QStandardItem provides an item-based API for use with
+ QStandardItemModel and the model/view item view classes.
+
+ * QStandardItemModel API provides a classic item-based approach to
+ working with models.
+
+ * Single selection item views on Mac OS X cannot change their current
+ item without changing the current selection when using keyboard
+ navigation.
+
+- Plastique style has improved support for palettes, and now requires
+ XRender support on X11 for alpha transparency.
+
+- Tulip containers
+
+ * Added typedefs for STL compatability.
+
+ * Added function overloads to make the API easier to use.
+
+- Added the Q3TextStream class for compatiblity with Qt 3 and to assist with
+ porting projects.
+
+- OpenGL paint engine
+
+ * Added support for all composition modes of QPainter natively using
+ OpenGL.
+
+ * Fixed a case where very large polygons failed to render correctly.
+
+ * Ensured that glClear() is only called in begin() if the
+ QGLWidget::autoFillBackground() property is true.
+
+ * Ensured that a buffer swap is only performed in end() if
+ QGLWidget::autoBufferSwap() is true.
+
+ * Improved text drawing speed and quality.
+
+- Raster paint engine
+
+ * Fixed blending of 8 bit indexed images with alpha values.
+
+ * Fixed drawing onto QImages that were wider than 2048 pixels.
+
+ * Fixed alpha-blending and anti-aliasing on ARGB32 images.
+
+ * Improved point drawing performance.
+
+ * Fixed issue where lines were drawn between coordinates that were
+ rounded instead of truncated.
+
+ * Ensured that setClipRegion(QRegion()) clips away all painting
+ operations as originally intended.
+
+
+Third party components
+----------------------
+
+- Dropped support for MySQL version 3.
+
+- Updated Qt's SQLite version to 3.3.6.
+
+- Updated Qt's FreeType version to 2.2.1.
+
+- Updated Qt's libpng version to 1.2.10.
+
+
+Build System
+------------
+
+- Auto-detect PostgreSQL and MySQL using pg_config and mysql_config on UNIX
+ based systems in the configure script
+
+- Added "-system-sqlite" option to configure to use the system's SQLite
+ library instead of Qt's SQLite version.
+
+- Added QT_ASCII_CAST_WARNINGS define that will output a warning on implicit
+ ascii to Unicode conversion when set. Only works if the compiler supports
+ deprecated API warnings.
+
+- Added Q_REQUIRED_RESULT to some functions. This macro triggers a warning
+ if the result of a function is discarded. Currently only supported by gcc.
+
+
+- Qt/X11, Qt/Mac and Qtopia Core only:
+
+ * Added all QT_NO_* defines to the build key.
+
+
+- Qt/X11 and Qtopia Core only:
+
+ * As in Qt 3, the configure script enables the -release option by
+ default, causing the Qt libraries to be built with optimizations. If
+ configured with the -debug option, the debug builds no longer result
+ in libraries with the _debug suffix.
+
+ On modern systems, flags are added to the Qt build to also
+ generate debugging information, which is then stored in a
+ separate .debug file. The additional debug information does not
+ affect the performance of the optimized code and tools like gdb
+ and valgrind automatically pick up the separate .debug
+ files. This way it is possible to get useful backtraces even
+ with release builds of Qt.
+
+ * Removed the last vestiges of the module options in the configure
+ script, previously they were available but did not function.
+
+ * Implemented a -build option in the configure script to conditionally
+ compile only certain sections of Qt.
+
+ * Made it possible to build Qt while having "xcode" set as your
+ QMAKESPEC on OSX.
+
+
+- Windows only:
+
+ * Populated the build key, as done on all the other platforms.
+
+ * Fixed dependency generation in Visual Studio Solutions (.sln)
+ created by qmake.
+
+ * Added missing platforms to the Visual Studio project generator (X64,
+ SH3DSP and EBC).
+
+ * Made UIC3 use a temporary file for long command lines.
+
+ * Removed the object file (.o) conflicts with MinGW that appeared when
+ embedding a native resource file which was named the same as a normal
+ source file.
+
+ * Fixed mkspec detection when generating project files outside of QTDIR.
+
+ * Removed compiler warnings with MinGW g++ 3.4.5.
+
+
+
+****************************************************************************
+* Library *
+****************************************************************************
+
+
+- QAbstractButton
+
+ * Returns QPalette::Button and QPalette::ButtonText for
+ backgroundRole() and foregroundRole(), respectively, rather than
+ QPalette::Background and QPalette::Foreground.
+
+ * Ensured that nextCheckState() is called only when there is a state
+ change.
+
+- QAbstractItemModel
+
+ * When dropping rows only insert rows that were actually dropped, not
+ the continuous row count from first to last.
+
+ * Added a supportedDragActions property to be used by
+ QAbstractItemView when starting a drag.
+
+ * When updating changed persistent indexes, ignore those that haven't
+ actually changed.
+
+ * Fixed endian issue with createIndex().
+
+ * Added FixedString matching for match().
+
+ * Changed the sorting algorithm to use a stable sort.
+
+ * Added persistentIndexList() function.
+
+- QAbstractItemView
+
+ * Added possibility to copy elements to clipboard on read-only views.
+
+ * Improved handling of QAbstractItemModel::supportedDropActions().
+
+ * Ensured that the current item is selected when using keyboard
+ search.
+
+ * Ensured that the view starts with a valid current index.
+
+ * Ensured that data is only committed in currentChanged() if the
+ editor is not persistent.
+
+ * Fixed crash that occurred when a modal dialogs was opened when
+ closing an editor.
+
+ * Added verticalScrollMode and horizontalScrollMode properties.
+
+ * Added setItemDelegateForRow() and setItemDelegateForColumn().
+
+ * Ensured that existing models are disconnected properly when
+ replaced.
+
+ * Ensured that the doubleClicked() signal is only emitted when the
+ left button has been double-clicked.
+
+ * Changed setSelection(...) to work when given a non-normalized
+ rectangle.
+
+ * Fixed regression for shift-selections in ExtendedSelection for
+ all views.
+
+ * Added dragDropMode property and implemented move support in all of
+ the views and models.
+
+ * For edit triggers SelectedClicked and DoubleClicked, only trigger
+ editing when the left button is clicked.
+
+ * Trigger SelectedClicked editing on mouse release, not mouse press.
+
+ * Suppressed the doubleClicked() signal in cases where the clicks
+ happened on two different items.
+
+ * Enabled keyboard search to be programmatically reset by calling
+ keyboardSearch() with an empty string as argument.
+
+ * Don't allow drops on items that don't have the Qt::ItemIsDropEnabled
+ flag set.
+
+ * Added modelAboutToBeReset() and layoutAboutToBeChanged() signals.
+
+ * Suppressed assertion in dropMimeData() for cases where mimeTypes()
+ returns an empty list.
+
+ * Ensured consistent behavior of drag and drop when rootIndex() is a
+ valid model index.
+
+ * Made it possible to check a checkbox with only a single click when
+ using the CurrentChanged edit trigger.
+
+ * Ensured that WhatsThis events are propagated when the relevant item
+ doesn't have a valid "What's This?" value.
+
+ * Added PositionAtCenter scrollHint.
+
+ * Added support to allow items to be checked and unchecked using the
+ keyboard.
+
+ * Added support for keypad navigation.
+
+- QAbstractProxyModel
+
+ * Added default implementations for data(), headerData() and flags()
+
+- QAbstractScrollArea
+
+ * Added ability to set a corner widget.
+
+ * Added ability to set scroll bar widgets.
+
+ * Added support for custom scroll bars.
+
+- QAbstractSpinBox
+
+ * Added a hasAcceptableInput() property.
+
+ * Ensured that fixup/validate are called for third party subclasses of
+ QAbstractSpinBox as well.
+
+ * Fixed geometry issues when toggling frames on and off for spinboxes.
+
+ * Added a property for correctionMode.
+
+ * Added a property for acceleration.
+
+- QAbstractPrintDialog
+
+ * Fixed handling of existing printer options so that storage of page
+ ranges using setFromTo() works as expected when printing in PDF format.
+
+- QAction
+
+ * Added the setAutoRepeat(bool) function to disable auto-repeating
+ actions on keyboard shortcuts.
+
+- QApplication
+
+ * Added saveStateRequest() and commitDataRequest() signals so that
+ QApplication does not need to be subclassed to enable session
+ management in an application.
+
+ * Added the styleSheet property to get/set the application style sheet.
+
+ * Support sending key events to non-widget objects.
+
+ * Ensured that argc and argv as passed to the QApplication constructor
+ will always be zero-terminated on all platforms after QApplication
+ consumes command line options for itself.
+
+- QBrush
+
+ * Added a constructor that accepts a QImage.
+
+- QButtonGroup
+
+ * Added pressed() and released() signals.
+
+ * Fixed a bug caused by removing buttons from button groups. Removed the
+ internal mapping as well.
+
+ * Ensured that checkedButton() returns the correct value with
+ non-exclusive groups.
+
+- QClipboard
+
+ * Added support for find text buffer.
+
+- QColor
+
+ * Fixed corruption in setRed(), setGreen() and setBlue() for HSV/CMYK
+ colors.
+
+- QComboBox
+
+ * Fixed drawing issues related to certain FocusPolicy values.
+
+ * Ensured that the ItemFlags of an Item (ItemIsEnabled,...) are
+ respected.
+
+ * Fixed cases where the popup could be shown completly on screen, but
+ weren't.
+
+ * Added the InsertAlphabetically insert policy.
+
+ * Fixed case where a QPixmap could not be displayed using a QIcon.
+
+ * Fixed the type of the modelColumn property from bool to int.
+
+ * Updated documentation to clarify the differences between activated(),
+ highlighted() and currentIndexChanged(), and describe what they
+ actually mean.
+
+ * Updated the behavior to ensure that, if the combobox isn't editable,
+ the Qt::DisplayRole rather than the Qt::EditRole is used to query the
+ model.
+
+- QCoreApplication
+
+ * Added flags to enable/disable application-wide features such as
+ delayed widget creation.
+
+- QCursor
+
+ * Added support for the newly added Qt::OpenHandCursor and
+ Qt::ClosedHandCursor enum values.
+
+- QDate
+
+ * Support dates all the way down to Julian Day 1 (2 January 4713 B.C.)
+ using the Julian calendar when appropriate.
+
+- QDateTime
+
+ * Fixed parsing issue in fromString(const QString &, Qt::DateFormat).
+
+- QDateTimeEdit
+
+ * Added the calendarPopup property to enable date selection using the
+ new QCalendarWidget class.
+
+ * Added a setSelectedSection() function to allow the currently selected
+ section to be programmatically set.
+
+- QDesktopWidget
+
+ * Remove a potential out-of-bounds read.
+
+- QDialog
+
+ * Improved stability in cases where the default button is deleted.
+
+- QDir
+
+ * Improved support for i18n file paths in QDir::tempPath().
+
+ * Improved support for UNC paths when the application is run from a
+ share.
+
+ * Ensured that mkpath() properly supports UNC paths.
+
+ * Obsoleted QDir::convertSeparators().
+
+ * Introduced QDir::toNativeSeparators() and QDir::fromNativeSeparators().
+
+ * Added a QDebug streaming operator.
+
+- QDirModel
+
+ * Fixed conversion from bytes to larger units in QDirModel in the file
+ size display.
+
+ * Remove hardcoded filtering of the '.' and '..' entries.
+
+- QErrorMessage
+
+ * Made qtHandler() work in cases where the message handler is invoked
+ from threads other than the GUI thread.
+
+- QEvent
+
+ * Added the KeyboardLayoutChange event type which is sent when the
+ keyboard layout changes.
+
+- QFile
+
+ * Improved support for UNC paths when the application is run from a
+ share.
+
+ * Added support for physical drives (e.g., "//./Physical01").
+
+ * Ensured that QFile::error() and QIODevice::errorString() are set
+ whenever possible when errors occur.
+
+ * Renamed readLink() to symLinkTarget().
+
+- QFileDialog
+
+ * Fixed a case where view mode got disabled.
+
+- QFileInfo
+
+ * Improved support for UNC paths when the application is run from a
+ share.
+
+ * Improved support for drive-local relative paths, such as "D:".
+
+ * Renamed readLink() to symLinkTarget().
+
+- QFlags
+
+ * Added the testFlag() convenience function.
+
+- QFont
+
+ * Added NoFontMerging as a flag to QFont::StyleStrategy.
+
+- QFontDatabase
+
+ * Added functions for handling application-local fonts at run-time:
+ addApplicationFont(), removeApplicationFont(),
+ applicationFontFamilies(), etc.
+
+- QFontDialog
+
+ * Enabled support for custom window titles.
+
+- QFontMetrics/QFontMetricsF
+
+ * Added the elidedText() function.
+
+ * Added the averageCharWidth() function.
+
+- QFrame
+
+ * Fixed a rendering issue when showing horizontal and vertical lines
+ created using Designer.
+
+- QFtp
+
+ * Improved parsing of the modified date in list().
+
+ * Ensured that all data has been received when downloading, before the
+ data connection is closed.
+
+ * Added support for FTP servers that reject commands with a 202 response.
+
+- QGLFormat
+
+ * Added the openGLVersionFlags() function.
+
+ * Added support for setting the swap interval for a context
+ (i.e., syncing to the vertical retrace).
+
+ * Added support for setting red, green and blue buffer sizes.
+
+- QGLWidget
+
+ * Fixed a resource leak that could occur when binding QImages with the
+ bindTexture() function.
+
+ * Fixed renderText() to produce proper output when depth buffering is
+ enabled.
+
+ * Fixed bindTexture() to respect premultiplied QImage formats.
+
+ * Ensured that the updatesEnabled property is respected.
+
+- QGradient
+
+ * Added default constructors and setter functions for all gradients and
+ their attributes.
+
+- QGridLayout
+
+ * Do not segfault if cellRect() is called before setGeometry(),
+ even though the result is documented to be undefined.
+
+ * Fixed maximum size handling when adding spacing.
+
+- QGroupBox
+
+ * Activating a group box by a shortcut will now show the focus rectangle.
+
+ * Added the clicked() signal
+
+- QHash
+
+ * Prevent conversion of iterator or const_iterator to bool
+ (e.g., if (map->find(value))) because the conversion always returned
+ true. Qt 4.1 code that doesn't compile because of this change was most
+ probably buggy.
+
+ * Added the uniqueKeys() function.
+
+- QHeaderView
+
+ * Use the current resize mode to determine section sizes when
+ new rows are inserted.
+
+ * Recover the internal state if other widgets steal the mouse release
+ event.
+
+ * Ensure that moved sections can be removed without asserting.
+
+ * Be more robust with regards to arguments sent to the rowsInserted slot.
+
+ * Let the stretchLastSection property override the globalResizeMode in
+ the resizeSections() function.
+
+ * Renamed ResizeMode::Custom to ResizeMode::Fixed.
+
+ * Added the swapSections() convenience function.
+
+ * Added a more "splitter-like" resize mode.
+
+ * Added the possibility for the user to turn off stretch mode by
+ resizing the header section. This includes the stretchLastSection
+ property.
+
+ * Added the minimumSectionSize property.
+
+ * Get the section size hint from the Qt::SizeHintRole, if set.
+
+ * Added the ResizeToContents resize mode.
+
+ * Ensure that all header contents are centered by default.
+
+ * Improved the internal structure to be more memory efficient.
+
+- QHostAddress
+
+ * Added QDataStream streaming operators.
+
+- QHttp
+
+ * Support percent-encoded paths when used with a proxy server.
+
+ * Improved handling of unexpected remote socket close.
+
+- QHttpHeader
+
+ * Improved support for case-insensitive header searching.
+
+- QIcon
+
+ * Fixed issue where actualSize() might return a larger value than the
+ requested size.
+
+ * Fixed improper pixmap caching
+
+ * Added QDataStream operators for QIcon.
+
+ * Added the Selected mode.
+
+- QImage
+
+ * Added support for 16 bit RGB format.
+
+ * Added QPoint overloads to various (int x, int y) functions.
+
+ * Added support for faster/better rotation of images by 90/180/270
+ degrees.
+
+ * convertToFormat() now supports the color lookup table.
+
+ * Improved algorithm for smooth scaling to produce better results.
+
+- QImageReader
+
+ * Ensured that size() returns an invalid QSize if the image I/O handler
+ does not support the QImageIOHandler::Size extension.
+
+ * Added support for reading negative BMP images.
+
+ * Improved handling of invalid devices.
+
+ * Added optimizations to ensure that the most likely formats and plugins
+ are tested first when reading unknown image formats.
+
+ * Improved reading of BMP images from sequential QIODevices.
+
+ * Support for scaledSize() with JPEG images.
+
+ * It is now possible to query the supported options of an image by
+ calling supportedOptions().
+
+ * Stability fixes for the built-in XBM reader.
+
+- QImageWriter
+
+ * Ensured that an error is reported when attempting to write an image
+ to a non-writable device.
+
+ * It is now possible to query the supported options of an image by
+ calling supportedOptions().
+
+- QIODevice
+
+ * Fixed a casting bug in QIODevice::getChar().
+
+ * Improved reading performance significantly by using an internal buffer
+ when a device is opened in buffered mode.
+
+ * Some behavioral differences have been introduced:
+
+ + The following functions now need to call the base implementation
+ when reimplemented: atEnd(), bytesAvailable(), size(), canReadLine().
+
+ + pos() should return the base implementation directly.
+
+ + QIODevice now handles the device position internally. seek() should
+ always end up calling the base implementation.
+
+- QItemDelegate
+
+ * Use a widget's USER property to set and get the editor data.
+
+ * Removed unnecessary assertions.
+
+ * Added the clipping property to enable clipping when painting.
+
+ * When the model specifies a font, resolve the font over the existing
+ one rather than replacing it.
+
+ * Fixed issue with rendering of selected pixmaps.
+
+ * Ensured that QItemEditorFactory is called with the variant's
+ userType() so that the factory can distinguish between multiple user
+ types.
+
+ * Ensured that Key_Enter is propagated to the editor before data is
+ committed, so that the editor has a chance to perform custom input
+ validation/fixup.
+
+ * Let the line edit grow to accomodate long strings.
+
+ * Made it easer to subclass the item delegate.
+
+ * Added support for keypad navigation.
+
+- QItemSelectionModel
+
+ * Improved overall speed, particularly when isSelected() is used.
+
+ * Added functions for getting the selected rows or columns.
+
+ * Ensured that the current index is updated when it is being removed.
+
+ * Ensure that QAbstractItemView::clearSelection() only clears the
+ selection and not the current index.
+
+ * Added the hasSelection() function.
+
+ * Fixed some connection leaks (connections were not disconnected) when
+ an QItemSelectionModel was deleted. This should also speed up some
+ special cases.
+
+- QKeySequence
+
+ * Added a set of platform-dependent standard shortcuts.
+
+ * Fixed incorrect parsing of translated modifiers.
+
+- QLabel
+
+ * Added support for text selection and hyperlinks.
+
+ * Improved handling of scaled pixmaps.
+
+ * Made handling of QMovie safer to avoid object ownership issues.
+
+- QLibrary
+
+ * Added support for hints to control how libraries are opened on UNIX
+ systems.
+
+ * Added errorString() to report the causes of errors when libraries
+ fail to load.
+
+ * Added easier way to debug plugin loading: Setting QT_DEBUG_PLUGINS=1
+ in the environment will enable debug message printing on the
+ console.
+
+ * Increased the number of acceptable file name suffixes used to
+ recognize library files.
+
+- QLineEdit
+
+ * Ensured that the Unicode context menu gets shown if language
+ extensions are present.
+
+ * Ensured that editingFinished() is not emitted if a validator is set
+ and the text cannot be validated.
+
+ * Ctrl+A now triggers select all on all platforms.
+
+ * Call fixup on focusOut() if !hasAcceptableInput().
+
+ * Added auto-completion support with the setCompleter() function.
+
+ * Fixed painting errors when contents margins were set.
+
+ * Invalid text set using setText() can now be edited where previously
+ it had to be deleted before new text could be inserted.
+
+ * Use SE_LineEditContents to control the contents rect of each
+ QLineEdit.
+
+- QListView
+
+ * Added the batchSize property.
+
+ * Don't un-hide currently hidden rows when new rows are inserted.
+
+ * Fixed partial repainting bug that occurred when alternatingRowColors
+ was enabled.
+
+ * Ensured that the resize mode is not reset in setViewMode() if it was
+ already set.
+
+ * Fixed crash that occurred when the first item was hidden and
+ uniformItemSizes was set.
+
+ * Added the wordWrap property for wrapping item text.
+
+ * Allow the user to select items consecutively when shift-selecting.
+
+ * Ensured that only the top item is selected when the user clicks on
+ an area with several items are stacked on top of each other.
+
+ * Optimized hiding and showing of items.
+
+ * Fixed issue where dragging an item in Snap mode did not respect the
+ scroll bar offsets.
+
+ * Fixed issue in Snap mode where a (drag and) drop did not always
+ query the item that existed in the corresponding cell for an enabled
+ Qt::ItemIsDropEnabled flag.
+
+- QListWidget/QTreeWidget/QTableWidget
+
+ * Ensured the dataChanged() signal is emitted when flags are set on an
+ item.
+
+ * Removed unnecessary assertions.
+
+ * Added more convenience functions in QListWidget, QTableWidget and
+ QTreeWidget for selecting, hiding, showing, expanding and collapsing
+ nodes.
+
+ * Ensured that changes to items are reported.
+
+- QLocale
+
+ * Fixed bug in the string-to-number functions which sometimes caused
+ them to fail on negative numbers which contained thousand-
+ separators.
+
+ * Implemented the numberOptions property for specifying how
+ string-to-number and number-to-string conversions should be
+ performed.
+
+- QMainWindow
+
+ * Added support for tabbed dock widgets.
+
+ * Enhanced look and feel of dock widget handling. When a dock widget
+ hovers over a main window, the main window animates the existing
+ dock widgets and main area to show how it will accept the dock
+ widget if dropped.
+
+ * Fixed issues related to insertToolBarBreak().
+
+- QMap
+
+ * Prevent conversion of iterator or const_iterator to bool
+ (e.g., if (map->find(value))), because the conversion always
+ returned true. Qt 4.1 code that doesn't compile because of this
+ change was most probably buggy.
+
+ * Added the uniqueKeys() function.
+
+- QMenu
+
+ * Added the aboutToHide() signal.
+
+ * Added the isEmpty() accessor function.
+
+ * Clear menuAction() when setMenu(0)
+
+ * Added support for widgets in menus via QWidgetAction.
+
+ * Collapse multiple consecutive separators. This can be turned off
+ with the collapsibleSeparators property.
+
+ * Made scrollable menus wrap, just like non-scrollable ones.
+
+- QMessageBox
+
+ * Updated the API to allow more than 3 buttons to be used.
+
+ * Added support to display buttons in the order required by
+ platform-specific style guidelines.
+
+ * Added support for display of informative text using the
+ informativeText property.
+
+ * Added the detailedText property to allow detailed text to be
+ displayed.
+
+ * Improved sizing of message box (especially on Mac OS X).
+
+ * Changed the behavior so that long text strings are automatically
+ wrapped.
+
+ * Updated icon handling to use QStyle::standardIcon() where possible.
+
+- QMetaObject
+
+ * Added the userProperty() and normalizedType() functions.
+
+- QMetaType
+
+ * Ensured that all type names are normalized before registering them.
+
+ * Added support for handling Qt's integer typedefs: qint8, qint16,
+ etc.
+
+- QModelIndex
+
+ * Added the flags() convenience function.
+
+- QMutexLocker, QReadLocker, and QWriteLocker
+
+ * These classes now track the state of the lock they are holding.
+ They will not unlock on destruction if unlock() has been called.
+
+- QObject
+
+ * thread() will always return a valid thread, even if the object was
+ created before QApplication or in a non-QThread thread.
+
+ * When thread() returns zero, events are no longer sent to the object.
+ (Previous versions of Qt would send posted events to objects with no
+ thread; this does not happen in Qt 4.2).
+
+ * Added support for dynamically added properties via the new
+ property(), setProperty(), and dynamicPropertyNames() functions.
+
+ * Fixed a crash that could occur when a child deleted its sibling.
+
+- QPainter
+
+ * Fixed a crash the occurred when drawing cosmetic lines outside the
+ paint device boundaries.
+
+ * Fixed a pixel artifact issue that occurred when drawing cosmetic
+ diagonal lines.
+
+ * Fixed opaque backgrounds so that they are identical on all
+ platforms.
+
+ * Optimized drawing of cosmetic lines at angles between 315 and 360
+ degrees.
+
+ * Added the setRenderHints() function.
+
+ * Fixed a memory corruption issue in drawEllipse().
+
+- QPixmap
+
+ * Fixed crash caused by setting a mask or alpha channel on a pixmap
+ while it was being painted.
+
+ * Changed load() and save() to no longer require a format string.
+
+ * Ensured that grabWidget() works before the specified widget is first
+ shown.
+
+- QPluginLoader
+
+ * Added errorString() to report the causes of errors when plugins fail
+ to load.
+
+- QPrinter
+
+ * Added support for PostScript as an output format on all platforms.
+
+ * Significantly reduced the size of the generated output when using
+ the PostScript and PDF drivers.
+
+ * Fixed issue where fromPage()/toPage() returned incorrect values when
+ generating PDF files.
+
+ * Ensured that setOutputFormat() preserves previously set printer
+ properties.
+
+ * Updated setOutputFileName() to automatically choose PostScript or
+ PDF as the output format for .ps or .pdf suffixes.
+
+- QProcess
+
+ * Added support for channel redirection to allow data to be redirected
+ to files or between processes.
+
+- QPushButton
+
+ * Ensured that, when a menu is added to a push button, its action is
+ also added to enable keyboard shortcuts.
+
+- QRect, QRectF, QRegion
+
+ * Renamed unite(), intersect(), subtract(), and eor() to united(),
+ intersected(), subtracted(), and xored() respectively.
+
+ * Added QRegion::intersects(QRegion) and QRegion::intersects(QRect).
+
+ * Fixed case where rect1 & rect2 & rect3 would return a non-empty
+ result for disjoint rectangles.
+
+- QRegExp
+
+ * Added RegExp2 syntax, providing greedy quantifiers (+, *, etc.).
+
+ * Marks (QChar::isMark()) are now treated as word characters,
+ affecting the behavior of '\b', '\w', and '\W' for languages
+ that use diacritic marks (e.g., Arabic).
+
+ * Fix reentrancy issue with the regexp cache.
+
+- QScrollArea
+
+ * Added the ensureWidgetVisible() function to facilitate scrolling to
+ specific child widgets in a scroll area.
+
+- QScrollBar
+
+ * Ensured that a SliderMove action is triggered when the slider value is
+ changed through a wheel event.
+
+- QSet
+
+ * Added QSet::iterator and QMutableSetIterator.
+
+- QSettings
+
+ * Store key sequences as readable entries in INI files.
+
+ * Detect NFS to prevent hanging when lockd isn't running.
+
+- QShortcut
+
+ * Added the setAutoRepeat(bool) function to disable auto-repeating
+ actions on keyboard shortcuts.
+
+- QSize
+
+ * Fixed potential overflow issue in scale().
+
+- QSlider
+
+ * Added support for jump-to-here positioning.
+
+- QSortFilterProxyModel
+
+ * Handle source model changes (e.g., data changes, item insertion
+ and removal) in a fine-grained manner, so that the proxy model
+ behaves more like a "real" model.
+
+ * Added sortRole, filterRole and dynamicSortFilter properties.
+
+ * Perform stable sorting of items.
+
+ * Fixed support for drag and drop operations where one item is dropped
+ on top of another.
+
+ * Ensure that persistent indexes are updated when the layout of the
+ source model changes.
+
+ * Made match() respect the current sorting and filtering settings.
+
+ * Forward mimeTypes() and supportedDropActions() calls to source
+ models.
+
+ * Added the ability to filter on all the columns.
+
+ * Added the filterChanged() function to enable custom filtering to be
+ implemented.
+
+- QSqlQuery
+
+ * Added execBatch() for executing SQL commands in a batch. Currently
+ only implemented for the Oracle driver.
+
+ * Fixed a case where executedQuery() would not return the executed
+ query.
+
+- QSqlRelationalTableModel
+
+ * Fixed issue related to sorting a relational column when using the
+ PostgreSQL driver.
+
+ * revertAll() now correctly reverts relational columns.
+
+- QStackedLayout
+
+ * Fixed crash that occurred when removing widgets under certain
+ conditions.
+
+- QStackedWidget
+
+ * Fixed crash that occurred when removing widgets under certain
+ conditions.
+
+ * Fixed issue where the size hint of the current widget would not be
+ respected.
+
+- QStandardItemModel
+
+ * Added an item-based API for use with QStandardItem.
+
+ * Reimplemented sort().
+
+ * Added the sortRole property.
+
+- QStatusBar
+
+ * Added the insertWidget() and insertPermanentWidget() functions.
+
+- QString
+
+ * Added support for case-insensitive comparison in compare().
+
+ * Added toUcs4() and fromUcs4() functions.
+
+- QStyle
+
+ * Added the following style hint selectors:
+ SH_Slider_AbsoluteSetButtons, SH_Slider_PageSetButtons,
+ SH_Menu_KeyboardSearch, SH_TabBar_ElideMode, SH_DialogButtonLayout,
+ SH_ComboBox_PopupFrameStyle, SH_MessageBox_TextInteractionFlags,
+ SH_DialogButtonBox_ButtonsHaveIcons, SH_SpellCheckUnderlineStyle,
+ SH_MessageBox_CenterButtons, SH_Menu_SelectionWrap,
+ SH_ItemView_MovementWithoutUpdatingSelection.
+
+ * Added the following standard pixmap selectors:
+ SP_DirIcon, SP_DialogOkButton, SP_DialogCancelButton,
+ SP_DialogHelpButton, SP_DialogOpenButton, SP_DialogSaveButton,
+ SP_DialogCloseButton, SP_DialogApplyButton, SP_DialogResetButton,
+ SP_DialogDiscardButton, SP_DialogYesButton, SP_DialogNoButton,
+ SP_ArrowUp, SP_ArrowDown, SP_ArrowLeft, SP_ArrowRight, SP_ArrowBack,
+ SP_ArrowForward.
+
+ * Added PE_PanelScrollAreaCorner and PE_Widget as primitive element
+ selectors.
+
+ * Added PM_MessageBoxIconSize and PM_ButtonIconSize as pixel metric
+ selectors.
+
+ * Added SE_LineEditContents and SE_FrameContents as sub-element
+ selectors.
+
+ * Added SE_FrameContents to control the contents rectangle of a
+ QFrame.
+
+- QSvgHandler
+
+ * Improved style sheet parsing and handling.
+
+ * Added support for both embedded and external style sheets.
+
+ * Improved parsing of local url() references.
+
+ * Improved coordinate system handling.
+
+ * Fixed issue where the viewbox dimensions would be truncated to integer
+ values.
+
+ * Fixed support for gradient transformations.
+
+ * Fixed opacity inheritance behavior.
+
+ * Added support for gradient spreads.
+
+ * Fixed gradient stop inheritance behavior.
+
+ * Fixed parsing of fill and stroke properties specified in style sheets.
+
+ * Added support for reading and writing the duration of animated SVGs.
+
+ * Fixed incorrect rendering of SVGs that do not specify default viewboxes.
+
+ * Fixed radial gradient rendering for the case where no focal point is
+ specified.
+
+- QSyntaxHighlighter
+
+ * Added various performance improvements.
+
+- Qt namespace
+
+ * Added ForegroundRole and BackgroundRole, allowing itemviews to use
+ any QBrush (not just QColor, as previously) when rendering items.
+
+ * Added NoDockWidgetArea to the ToolBarArea enum.
+
+ * Added NoToolBarArea to the DockWidgetArea enum.
+
+ * Added GroupSwitchModifier to the KeyboardModifiers enum. It
+ represents special keys, such as the "AltGr" key found on many
+ keyboards.
+
+ * Added several missing keys to the Key enum: Key_Cancel, Key_Printer,
+ Key_Execute, Key_Sleep, Key_Play and Key_Zoom.
+
+ * Added OpenHandCursor and ClosedHandCursor for use with QCursor.
+
+- QTabBar
+
+ * QTabBar text can now be elided; this is controlled by the elideMode
+ property.
+
+ * You can now turn on or off the "scroll buttons" for the tab bar with
+ the usesScrollButtons property.
+
+ * Non-pixmap based styles will now fill the background of the tab with
+ the palette's window role.
+
+- QTabletEvent:
+
+ * Ensured that QTabletEvents are dispatched with the proper relative
+ coordinates.
+
+ * Added proximity as another type of a tablet event (currently only sent
+ to QApplication).
+
+- QTableView
+
+ * Added API for spanning cells.
+
+ * Ensured that cells are selected when the user right clicks on them.
+
+ * Added a corner widget.
+
+ * Added the setSortingEnabled property.
+
+- QTableWidget
+
+ * Added the clearContents() function to enable the contents of the view
+ to be cleared while not resetting the headers.
+
+ * QTableWidget now uses stable sorting.
+
+ * Allow sorting of non-numerical data.
+
+ * Add convenience table item constructor that takes an icon as well as
+ a string.
+
+- QTabWidget
+
+ * Added missing selected() Qt3Support signal.
+
+ * Clarified documentation for setCornerWidget().
+
+ * Ensured that the tab widget's frame is drawn correctly when the tab
+ bar is hidden.
+
+ * Ensured that the internal widgets have object names.
+
+ * Added iconSize, elideMode, and usesScrollButtons as properties (see
+ QTabBar).
+
+- QTcpSocket
+
+ * Fixed a rare data corruption problem occurring on heavily loaded
+ Windows servers.
+
+- QTemporaryFile
+
+ * Added support for file extensions and other suffixes.
+
+ * Fixed one constructor which could corrupt the temporary file path.
+
+- QTextBrowser
+
+ * Fixed various bugs with the handling of relative URLs and custom
+ protocols.
+
+ * Added isBackwardAvailable(), isForwardAvailable(), and
+ clearHistory() functions.
+
+- QTextCodec
+
+ * Allow locale-dependent features of Qt, such as QFile::exists(), to
+ be accessed during global destruction.
+
+- QTextCursor
+
+ * Added columnNumber(), blockNumber(), and insertHtml() convenience
+ functions.
+
+- QTextDocument
+
+ * Added convenience properties and functions: textWidth, idealWidth(),
+ size, adjustSize(), drawContents(), blockCount, maximumBlockCount.
+
+ * Added support for forced page breaks before/after paragraphs and
+ tables.
+
+ * Added CSS support to the HTML importer, including support for
+ CSS selectors.
+
+ * Added defaultStyleSheet property that is applied automatically for
+ every HTML import.
+
+ * Improved performance when importing HTML, especially with tables.
+
+ * Improved pagination of tables across page boundaries.
+
+- QTextEdit
+
+ * Fixed append() to use the current character format.
+
+ * Changed mergeCurrentCharFormat() to behave in the same way as
+ QTextCursor::mergeCharFormat, without applying the format to the
+ word under the cursor.
+
+ * QTextEdit now ensures that the cursor is visible the first time the
+ widget is shown or when replacing the contents entirely with
+ setPlainText() or setHtml().
+
+ * Fixed issue where the setPlainText() discarded the current character
+ format after the new text had been added to the document.
+
+ * Re-added setText() as non-compatibility function with well-defined
+ heuristics.
+
+ * Added a moveCursor() convenience function.
+
+ * Changed the default margin from 4 to 2 pixels for consistency with
+ QLineEdit.
+
+ * Added support for extra selections.
+
+- QTextFormat
+
+ * Fixed the default value for QTextBlockFormat::alignment() to return
+ a logical left alignment instead of an invalid alignment.
+
+ * Added UnderlineStyle formatting, including SpellCheckUnderline.
+
+- QTextStream
+
+ * Added the pos() function, which returns the current byte-position
+ of the stream.
+
+- QTextTableCell
+
+ * Added the setFormat() function to enable the cell's character format
+ to be changed.
+
+- QThread
+
+ * Related to changes to QObject, currentThread() always returns a
+ valid pointer. (Previous versions of Qt would return zero if called
+ from non-QThread threads; this does not happen in Qt 4.2).
+
+- QToolBar
+
+ * Introduced various fixes to better support tool buttons, button
+ groups and comboboxes in the toolbar extension menu.
+
+ * Fixed crash that occurred when QApplication::setStyle() was called
+ twice.
+
+- QToolButton
+
+ * Fixed an alignment bug for tool buttons with multi-line labels and
+ TextUnderIcon style.
+
+- QToolTip
+
+ * Added the hideText() convenience function.
+
+ * Added the showText() function that takes a QRect argument specifying
+ the valid area for the tooltip. (If you move the cursor outside this
+ area the tooltip will hide.)
+
+ * Added a widget attribute to show tooltips for inactive windows.
+
+- QTranslator
+
+ * Added support for plural forms through a new QObject::tr() overload.
+
+ * Ensured that a LanguageChange event is not generated if the
+ translator fails to load.
+
+ * Fixed a bug in isEmpty().
+
+ * Added Q_DECLARE_TR_FUNCTIONS() as a means for declaring tr()
+ functions in non-QObject classes.
+
+- QTreeView
+
+ * Ensured that no action is taken when the root index passed to
+ setRootIndex() is the same as the current root index.
+
+ * When hiding items the view no longer performs a complete re-layout.
+
+ * Fixed possible segfault in isRowHidden().
+
+ * Significantly speed up isRowHidden() for the common case.
+
+ * Improved row painting performance.
+
+ * After expanding, fetchMore() is called on the expanded index giving
+ the model a way to dynamically populate the children.
+
+ * Fixed issue where an item could expand when all children were
+ hidden.
+
+ * Added support for horizontal scrolling using the left/right arrow
+ keys.
+
+ * Added a property to enable the focus rectangle in a tree view to be
+ shown over all columns.
+
+ * Added more key bindings for expanding and collapsing the nodes.
+
+ * Added the expandAll() and collapseAll() slots.
+
+ * Added animations for expanding and collapsing branches.
+
+ * Take all rows into account when computing the size hint for a
+ column.
+
+ * Added the setSortingEnabled property.
+
+ * Fixed the behavior of the scrollbars so that they no longer
+ disappear after removing and re-inserting items while the view is
+ hidden.
+
+ * Fixed memory corruption that could occur when inserting and removing
+ rows.
+
+ * Don't draw branches for hidden rows.
+
+- QTreeWidget
+
+ * Added the const indexOfTopLevelItem() function.
+
+ * Improved item insertion speed.
+
+ * Fixed crash caused by calling QTreeWidgetItem::setData() with a
+ negative number.
+
+ * QTreeWidget now uses stable sorting.
+
+ * Made construction of single column items a bit more convenient.
+
+ * Added the invisibleRootItem() function.
+
+ * Made addTopLevelItems() add items in correct (not reverse) order.
+
+ * Ensured that the header is repainted immediately when the header
+ data changes.
+
+- QUiLoader
+
+ * Exposed workingDirectory() and setWorkingDirectory() from
+ QAbstractFormBuilder to assist with run-time form loading.
+
+- QUrl
+
+ * Added errorString() to improve error reporting.
+
+ * Added hasQuery() and hasFragment() functions.
+
+ * Correctly parse '+' when calling queryItems().
+
+ * Correctly parse the authority when calling setAuthority().
+
+ * Added missing implementation of StripTrailingSlash in toEncoded().
+
+- QVariant
+
+ * Added support for all QMetaType types.
+
+ * Added support for QMatrix as a known meta-type.
+
+ * Added support for conversions from QBrush to QColor and QPixmap,
+ and from QColor and QPixmap to QBrush.
+
+ * Added support for conversions between QSize and QSizeF, between
+ QLine and QLineF, from long long to char, and from unsigned long
+ long to char.
+
+ * Added support for conversions from QPointF to QPoint and from QRectF
+ to QRect.
+
+ * Fixed issue where QVariant(Qt::blue) would not create a variant of
+ type QVariant::Color.
+
+ * Added support for conversions from int, unsigned int, long long,
+ unsigned long long, and double to QByteArray.
+
+- QWhatsThis
+
+ * Improved look and feel.
+
+- QWidget
+
+ * Delayed creation: Window system resources are no longer allocated in
+ the QWidget constructor, but later on demand.
+
+ * Added a styleSheet property to set/read the widget style sheet.
+
+ * Added saveGeometry() and restoreGeometry() convenience functions for
+ saving and restoring a window's geometry.
+
+ * Fixed memory leak for Qt::WA_PaintOnScreen widgets with null paint
+ engines.
+
+ * Ensured that widget styles propagate to child widgets.
+
+ * Reduced flicker when adding widget to layout with visible parent.
+
+ * Fixed child visibility when calling setLayout() on a visible widget.
+
+ * Speed up creation/destruction/showing of widgets with many children.
+
+ * Avoid painting obscured widgets when updating overlapping widgets.
+
+- QWorkspace
+
+ * Resolved issue causing the maximized controls to overlap with the
+ menu in reverse mode.
+
+ * Fixed issue where child windows could grow a few pixels when
+ restoring geometry in certain styles.
+
+ * Ensured that right-to-left layout is respected when positioning new
+ windows.
+
+ * Fixed crash that occurred when a child widget did not have a title
+ bar.
+
+ * Fixed issue where maximized child windows could be clipped at the
+ bottom of the workspace.
+
+- quintptr and qptrdiff
+
+ * New integral typedefs have been added.
+
+- Q3ButtonGroup
+
+ * Fixed inconsistencies with respect to exclusiveness of elements in
+ Qt 3.
+
+ * Fixed ID management to be consistent with Qt 3.
+
+- Q3Canvas
+
+ * Fixed several clipping bugs introduced in 4.1.0.
+
+- Q3CanvasView
+
+ * Calling setCanvas() now always triggers a full update.
+
+- Q3Grid, Q3Hbox, Q3VBox
+
+ * Fixed layout problem.
+
+- Q3IconView
+
+ * Fixed a case where selected icons disappeared.
+
+- Q3ListBox
+
+ * Fixed inconsistencies in selectAll() with respect to Qt 3.
+
+ * Fixed possible crash after deleting items.
+
+- Q3ListView
+
+ Fixed possible crash in Q3ListView after calling clear().
+
+ Fixed inconsistent drag and drop behavior with respect to Qt 3.
+
+- Q3Process
+
+ * Stability fixes in start().
+
+- Q3Socket
+
+ * No longer (incorrectly) reports itself as non-sequential.
+
+- Q3Table
+
+ * Improved behavior for combobox table elements.
+
+
+
+****************************************************************************
+* Database Drivers *
+****************************************************************************
+
+- Interbase driver
+
+ * Fixed data truncation for 64 bit integers on 64 bit operating
+ systems.
+
+- MySQL driver
+
+ * When using MySQL 5.0.7 or larger, let the server do the text
+ encoding conversion.
+
+ * Added UNIX_SOCKET connection option.
+
+ * Improved handling of TEXT fields.
+
+- OCI driver
+
+ * Improved speed for meta-data retrieval.
+
+ * Fixed potential crash on Windows with string OUT parameters.
+
+ * Improved handling of mixed-case table and field names.
+
+- ODBC driver
+
+ * Improved error reporting if driver doesn't support static result
+ sets.
+
+ * Improved support for the Sybase ODBC driver.
+
+- SQLite driver
+
+ * QSqlDatabase::tables() now also returns temporary tables.
+
+ * Improved handling of mixed-case field names.
+
+
+
+****************************************************************************
+* QTestLib *
+****************************************************************************
+
+- Added "-silent" options that outputs only test failures and warnings.
+
+- Reset failure count when re-executing a test object
+
+- Added nicer output for QRectF, QSizeF, and QPointF
+
+
+
+****************************************************************************
+* Platform Specific Changes *
+****************************************************************************
+
+
+Qtopia Core
+-----------
+
+- Fixed the -exceptions configure switch.
+
+- Fixed a build issue preventing the use of MMX instructions when
+ available.
+
+- Fixed leak of semaphore arrays during an application crash.
+
+- Fixed cases where the wrong cursor was shown.
+
+- Fixed cases where QWidget::normalGeometry() would return wrong value.
+
+- Allow widgets inside QScrollArea to have a minimum size larger than the
+ screen size.
+
+- Allow (0,0) as a valid size for top-level windows.
+
+- VNC driver
+
+ * Fixed keyboard shortcut problem when using the VNC driver.
+
+ * Fixed issue with the VNC driver that prevented client applications to
+ connect in some cases.
+
+ * Fixed a leak of shared memory segments in the VNC driver.
+
+ * Reduced CPU consumption in the VNC driver.
+
+ * Implemented dynamic selection of the underlying driver for the VNC and
+ transformed screen drivers.
+
+ * Improved error handling when clients connects to the server.
+
+- Graphics system
+
+ * Introduced new API for accelerated graphics hardware drivers.
+
+ * Implemented support for multiple screens.
+
+ * QScreen has binary incompatible changes. All existing screen drivers
+ must be recompiled.
+
+ * QWSWindow, QWSClient, QWSDisplay and QWSEvent have binary
+ incompatible changes. QWSBackingStore has been removed.
+ Existing code using these classes must be recompiled.
+
+ * Added support for OpenGL ES in QGLWidget.
+
+ * Implemented support for actual screen resolution in QFont.
+
+ * Removed internal limitation of 10 display servers.
+
+ * Improved memory usage when using screens with depths less than 16
+ bits-per-pixel.
+
+ * Fixed 16 bits-per-pixel screens on big-endian CPUs.
+
+ * Optimized CPU usage when widgets are partially hidden.
+
+ * Improved detection of 18 bits-per-pixel framebuffers.
+
+ * Improved performance when using a rotated screen with 18 or 24
+ bits-per-pixel depths.
+
+ * Improved speed of drawing gradients.
+
+ * Introduced the QWSWindowSurface as a technique to create
+ accelerated paint engines derived from QPaintEngine.
+
+ * Implemented the Qt::WA_PaintOnScreen flag for top-level widgets.
+
+ * Extended QDirectPainter to include non-blocking API and support for
+ overlapping windows. Existing code that subclasses QDirectPainter
+ must be recompiled.
+
+ * Implemented QWSEmbedWidget which enables window embedding.
+
+ * Removed hardcoded 72 DPI display limitation.
+
+- Device handling
+
+ * QWSMouseHandler has binary incompatible changes. All existing mouse
+ drivers must be recompiled.
+
+ * Fixed an issue of getting delayed mouse events when using the
+ vr41xx driver.
+
+ * Improved event compression in the vr41xx mouse handler.
+
+ * Improved algorithm for mouse calibration which works for all
+ screen orientations.
+
+ * Fixed an issue causing mouse release events with wrong positions
+ when using a calibrated and filtered mouse handler on a rotated
+ screen.
+
+ * Made the tty device configurable for the Linux framebuffer screen
+ driver.
+
+ * Fixed a deadlock issue when using drag and drop and a calibrated
+ mouse handler.
+
+ * Autodetection of serial mice is turned off to avoid disrupt serial
+ port communication. Set QWS_MOUSE_PROTO to use a serial mouse.
+
+- QVFb
+
+ * Fixed an issue preventing QVFb from starting on some systems.
+
+ * Added support for dual screen device emulation in QVFb.
+
+- QCopChannel
+
+ * Added a flush() function so that the QWS socket can be flushed,
+ enabling applications to ensure that QCop messages are delivered.
+
+
+Linux and UNIX systems
+----------------------
+
+- Printing
+
+ * Improved CUPS support by sending PDF instead of Postscript to
+ CUPS on systems that have a recent CUPS library, improving the
+ print quality.
+
+ * Added a new and improved QPrintDialog.
+
+ * Improved font embedding on systems without FontConfig.
+
+- QApplication
+
+ * When available, use Glib's mainloop functions to implement event
+ dispatching.
+
+- QPlastiqueStyle
+
+ * Added support to enable KDE icons to be automatically used on
+ systems where they are available.
+
+- QTextCodec
+
+ * Uses iconv(3) (when available) to implement the codec returned by
+ QTextCodec::codecForLocale(). The new codec's name is "System"
+ (i.e., QTextCodec::codecForLocale()->name() returns "System"
+ when iconv(3) support is enabled).
+
+
+AIX
+---
+
+- The makeC++SharedLib tool is deprecated; use the "-qmkshrobj" compiler
+ option to generate shared libraries instead.
+
+
+X11
+---
+
+- Added support to internally detect the current desktop environment.
+
+- QAbstractItemView
+
+ * Fixed assertion caused by interrupting a drag and drop operation
+ with a modal dialog on X11.
+
+ * Ensured that release events dispatched when closing a dialog
+ with a double click, are not propagated through to the window
+ underneath.
+
+- QCursor
+
+ * Fixed crash occuring when the X11 context had been released before
+ the cursor was destructed.
+
+- QGLWidget
+
+ * Fixed crashes that could occur with TightVNC.
+
+ * Improved interaction between QGLWidget and the Mesa library.
+
+- QMenu
+
+ * Made it possible for popup menus to cover the task bar on KDE.
+
+- QMotifStyle
+
+ * Ensured that the font set on a menu item is respected.
+
+- QX11EmbedContainer, QX11EmbedWidget
+
+ * Added missing error() functions.
+
+- QX11PaintEngine
+
+ * Increased speed when drawing polygons with a solid pixmap brush.
+
+ * Fixed masked pixmap brushes.
+
+ * Increased QImage drawing performance.
+
+- Motif Drop support
+
+ * Support for drops from Motif applications has been refactored and is
+ now working properly. QMimeData reports non-textual data offered in
+ Motif Drops using a MIME type of the form "x-motif-dnd/ATOM", where
+ ATOM is the name of the Atom offered by the Motif application.
+
+- Font rendering
+
+ * Improved stability when rendering huge scaled fonts.
+
+ * Enabled OpenType shaping for the Latin, Cyrillic, and Greek
+ writing systems.
+
+ * Improved sub-pixel anti-aliasing.
+
+ * Improved font loading speed.
+
+
+Mac OS X
+--------
+
+- Mac OS 10.2 support dropped.
+
+- QuickDraw support in QPaintEngine dropped; everything folded into the
+ CoreGraphics support.
+
+- All libraries in Qt are now built as frameworks when -framework mode is
+ selected (default) during the configuration process.
+
+- Many accessibility improvements, including better VoiceOver support. The
+ following widgets have had their accessibilty updated for this release:
+ QSplitter, QScrollBar, QLabel, QCheckBox, QRadioButton, QTabBar,
+ QTabWidget, QSlider, and QScrollBar.
+
+- Hidden files are now reported as hidden by QFileInfo, QDirModel, etc.
+
+- Windows now have a transparent size grips, an attribute for specifying an
+ opaque size grip was added.
+
+- Metrowerks generator has been removed.
+
+- Ensured that the anti-aliasing threshold setting is followed.
+
+- Added a standard "Minimize" menu item to Assistant's Window menu.
+
+- The documentation now has "Xcode-compatible" links so that it can be added
+ into Xcode's documentation viewer. This needs to be done by the developer
+ as regenerating Xcode's index takes quite a long time
+
+- QAbstractScrollArea
+
+ * Improved look and feel by aligning the scroll bars with the size
+ grip.
+
+- QClipboard
+
+ * Data copied to the clipboard now stays available after the
+ application exits.
+
+ * Added support for the Find clipboard buffer.
+
+ * Fixed encoding of URLs passed as MIME-encoded data.
+
+- QComboBox
+
+ * Improved the popup sizing so it's always wide enough to display its
+ contents.
+
+ * Improved the popup placement so it stays on screen and does not
+ overlap the Dock.
+
+ * The minimumSizeHint() and sizeHint() functions now honor
+ minimumContentsLength.
+
+- QKeyEvent
+
+ * The text() of a QKeyEvent is filled with the control character if
+ the user pressed the real Control key (Meta in Qt) and another key.
+ This brings the behavior of Qt on Mac OS X more in line with Qt on
+ other platforms.
+
+- QLibrary
+
+ * Removed the dependency on dlcompat for library loading and resolving
+ in favor of native calls. This means that you can unload libraries
+ on Mac OS X 10.4 or later, but not on 10.3 (since that uses dlcompat
+ itself).
+
+- QMacStyle
+
+ * QMacStyle only uses HITheme for drawing now (no use of Appearance
+ Manager).
+
+ * Fixed placement of text on buttons and group boxes for non-Latin
+ locales.
+
+ * Fixed rendering of small and mini buttons.
+
+ * Attempt to be a bit smarter before changing a push button to bevel
+ button when the size gets too small.
+
+ * Draws the focus ring for line edits when they are near the "top" of
+ the widget hierarchy.
+
+ * Ensured that the tickmarks are drawn correctly.
+
+ * Implemented the standardIconImplementation() function.
+
+ * Fixed the look of line edits.
+
+ * "Colorless" controls now look better.
+
+ * Fixed the sort indicator.
+
+ * Improved the look of text controls, such as QTextEdit, to fit in
+ better with the native style.
+
+- QMenu
+
+ * Popups no longer show up in Expose.
+
+ * Ensured that the proper PageUp and PageDown behavior are used.
+
+- QMenuBar
+
+ * Added support for explicit merging of items using QAction::MenuRole.
+
+ * Added support for localization of merged items.
+
+- QMessageBox
+
+ * A message box that is set to be window modal will automatically
+ become a sheet.
+
+ * Improved the look of the icons used to fit in with the native style.
+
+- QPainter
+
+ * Fixed off-by-one error when drawing certain primitives.
+
+ * Fixed off-by-many error when drawing certain primitives using a
+ scaling matrix.
+
+ * Fixed clipping so that setting an empty clip will clip away
+ everything.
+
+ * Fixed changing between custom dash patterns.
+
+ * Added combinedMatrix() which contains both world and viewport/window
+ transformations.
+
+ * Added the setOpacity() function.
+
+ * Added MiterJoins that are compliant with SVG miter joins.
+
+- QPainterPath
+
+ * Added the arcMoveTo() and setElementPosition() functions.
+
+- QPixmap
+
+ * Added functions to convert to/from a CGImageRef (for CoreGraphics
+ interoperability).
+
+ * Fixed various Qt/Mac masking and alpha transparency issues.
+
+- QPrinter
+
+ * Made QPrinter objects resuable.
+
+- QProcess
+
+ * Always use UTF-8 encoding when passing commands.
+
+- QScrollBar
+
+ * Improved handling of the case where the scrollbar is to short to
+ draw all its controls.
+
+- QTextEdit
+
+ * Improved the look of the widget to fit in with the native style.
+
+- QWidget
+
+ * All HIViewRefs inside Qt/Mac are created with the
+ kWindowStandardHandlerAttribute.
+
+ * Added the ability to wrap a native HIViewRef with create().
+
+ * Windows that have parents with the WindowStaysOnTopHint also get the
+ WindowStaysOnTopHint.
+
+
+Windows
+-------
+
+- Ensured that widgets do not show themselves in a hover state if a popup
+ has focus.
+
+- Fixed issues with rendering system icons on 16 bits-per-pixel displays.
+
+- Fixed issue where fonts or colors would be reset on the application
+ whenever windows produced a WM_SETTINGSCHANGE event.
+
+- Fixed a bug with Japanese input methods.
+
+- Compile SQLite SQL plugin by default, as on all the other platforms.
+
+- Fixed build issue when not using Precompiled Headers (PCH).
+
+- Made Visual Studio compilers older than 2005 handle (NULL == p)
+ statements, where p is of QPointer type.
+
+- Fixed HDC leak that could cause applications to slow down significantly.
+
+- Ensured that timers with the same ID are not skipped if they go to different
+ HWNDs.
+
+- Improved MIME data handling
+
+ * Resolved an issue related to drag and drop of attachments from some
+ applications.
+
+ * Resolved an issue where pasting HTML into some applications would
+ include parts of the clipboard header.
+
+ * Improved support for drag and drop of Unicode text.
+
+ * Made it possible to set an arbitrary hotspot on the drag cursor on
+ Windows 98/Me.
+
+- ActiveQt
+
+ * Fixed issues with the compilation of code generated by dumpcpp.
+
+ * Made ActiveQt controls behave better when inserted into Office
+ applications.
+
+ * Ensured that slots and properties are generated for hidden functions and
+ classes.
+
+ * Ensured that the quitOnLastWindowClosed property is disabled when
+ QApplication runs an ActiveX server.
+
+ * Ensured that controls become active when the user clicks into a subwidget.
+
+ * Added support for CoClassAlias class information to give COM class a
+ different name than the C++ class.
+
+- QAccessible
+
+ * Ensured that the application does not try to play a sound for
+ accessibility updates when no sound is registered.
+
+- QAxBase
+
+ * Fixed potential issue with undefined types.
+
+- QDir
+
+ * Fixed bug where exists() would return true for a non-existent drive
+ simply because the specified string used the correct syntax.
+
+ * Improved homePath() to work with Japanese user names.
+
+- QFileDialog
+
+ * Added support for relative file paths in native dialogs.
+
+ * Enabled setLabelText() to allow context menu entries to be changed.
+
+ * Ensured that users are denied entry into directories where they
+ don't have execution permission.
+
+ * Disabled renaming and deleting actions for non-editable items.
+
+ * Added a message box asking the user to confirm when deleting files.
+
+- QFileInfo
+
+ * Fixed absoluteFilePath() to return a path that begins with the
+ current drive label.
+
+- QGLWidget
+
+ * Fixed usage of GL/WGL extension function pointers. They are now
+ correctly resolved within the context in which they are used.
+
+- QGLColormap
+
+ * Fixed cases where the colormap was not applied correctly.
+
+- QMenu
+
+ * Made it possible for popup menus to cover the task bar.
+
+- QPrinter
+
+ * Added support for printers that do not have a DEVMODE.
+
+ * Fixed a drawing bug in the PDF generator on Windows 98/Me.
+
+ * Made it possible to programmatically change the number of copies
+ to be printed.
+
+ * Fixed possible crash when accessing non-existent printers.
+
+- QProcess
+
+ * Fixed lock-up when writing data to a dead child process.
+
+- QSettings
+
+ * Fixed bug causing byte arrays to be incorrectly stored on
+ Win95/98/Me.
+
+ * Allow keys to contain HKEY_CLASSES_ROOT and HKEY_USERS to allow all
+ registry keys to be read and prevent unintentional use of
+ HKEY_LOCAL_MACHINE.
+
+ * Fall back to the local machine handle if a key does not start with a
+ handle name.
+
+- QUdpSocket
+
+ * Introduced fixes for UDP broadcasting on Windows.
+
+- QWhatsThis
+
+ * Improved native appearance.
+
+- QWidget
+
+ * Top-level widgets now respect the closestAcceptableSize of their
+ layouts.
+
+ * Ensured that getDC() always returns a valid HDC.
+
+- QWindowsStyle
+
+ * We no longer draw splitter handles in Windows style. This resolves
+ an inconsistency with XP style, so that the two styles can use the
+ same layout interchangeably. Note that it is fully possible to style
+ splitter handles (if a custom style or handle is required) using
+ style sheets.
+
+ * Disabled comboboxes now have the same background color as disabled
+ line edits.
+
+- QWindowsXPStyle
+
+ * Made QPushButton look more native when pressed.
+
+ * Improved the look of checked tool buttons.
+
+ * Defined several values that are not present in MinGW's header files.
+
+
+
+****************************************************************************
+* Significant Documentation Changes *
+****************************************************************************
+
+
+- Updated information about the mailing list to be used for porting issues
+ (qt-interest).
+
+- Demos / Examples
+
+ * Added a new directory containing desktop examples and moved the
+ Screenshot example into it.
+
+ * Added a new Chat client network example which uses QUdpSocket to
+ broadcast on all QNetworkInterface's interfaces to discover its
+ peers.
+
+ * The Spreadsheet demo now uses the QItemDelegate, QCompleter, and
+ QDateTimeEdit with calendar popup.
+
+ * An OpenGL button is added to some of the demos to toggle usage of
+ the OpenGL paint engine.
+
+ * Fixed crash resulting from incorrect painter usage in the Image
+ Composition example
+
+
+
+****************************************************************************
+* Tools *
+****************************************************************************
+
+
+Assistant
+---------
+
+- Middle clicking on links will open up new tabs.
+
+- Added "Find as you type" feature to search documentation pages.
+
+- Added "Sync with Table of Contents" feature to select the current page in
+ the contents.
+
+- Fixed issue where activating a context menu over a link would cause the
+ link to be activated.
+
+- Provides a default window title when not specified in a profile.
+
+- Fixed JPEG viewing support for static builds.
+
+- Fixed crash that could occur when opening Assistant with old and invalid
+ settings.
+
+- Fixed display of Unicode text in the About dialog.
+
+
+Designer
+--------
+
+- Added QWidget and the new widgets in this release to Designer's widget
+ box.
+
+- Updated the dialog templates to use the new QDialogButtonBox class.
+
+- Backup files created by Designer no longer overwrite existing files.
+
+- Promoted widgets inherit the task menu items of the base class.
+
+- Enums are no longer ordered alphabetically in the property editor.
+
+- Fixed issue where shortcuts could be corrupted in certain situations.
+
+- Line endings in .ui files now match the standard line endings for the
+ platform the files are created on.
+
+- Ensured that a warning is displayed whenever duplicate connections are
+ made in the connections editor.
+
+- Added shortcuts for the "Bring to Front" and "Send to Back" form editor
+ actions.
+
+- Added new 22 x 22 icons.
+
+- Fixed selection of dock widgets in loaded forms.
+
+- Made QWidget::windowOpacity a designable property.
+
+- Numerous improvements and fixes to the action and property editors.
+
+- Windows only
+
+ * The default mode is Docked Window.
+
+- Mac OS X only
+
+ * Preview of widgets is no longer modal.
+
+ * Passing really long relative paths into the resource will no longer
+ cause a crash.
+
+
+Linguist
+--------
+
+- Added a new "Check for place markers" validation feature.
+
+- Added the "Search And Translate" feature.
+
+- Added the "Batch translation" feature.
+
+- Added support for editing plural forms.
+
+- Extended the .ts file format to support target language, plural forms,
+ source filename, and line numbers.
+
+- Added the "Translated Form Preview" feature.
+
+- Added placeholders for "hidden" whitespace (i.e., tabs and newlines) in
+ the translation editor.
+
+
+lupdate
+-------
+
+- Added the -extensions command-line option in order to recursively scan
+ through a large set of files with the specified extensions.
+
+- Made lupdate verbose by default (use -silent to obtain the old behavior).
+
+- Improved parsing of project files.
+
+- Fixed some issues related to parsing C++ source files.
+
+
+lrelease
+--------
+
+- Made lrelease verbose by default (use -silent to obtain the old behavior).
+
+- Disabled .qm file compression by default (pass -compress to obtain the old
+ behavior).
+
+
+moc
+---
+
+- Fixed support for enums and flags defined in classes that are themselves
+ declared in namespaces.
+
+- Added support for the -version and -help command line options (for
+ consistency with the other tools).
+
+
+rcc
+---
+
+- Added support for the -binary option to generate resources that are
+ registered at run-time.
+
+
+qmake
+-----
+
+- Added support for an Objective C compiler on platforms that support it via
+ OBJECTIVE_SOURCES. Additionally, Objective C precompiled headers are
+ generated as necessary.
+
+- Added support for a qt.conf to allow easy changing of internal target
+ directories in qmake.
+
+- Added support for the recursive switch (-r) in shadow builds.
+
+- Introduced QMAKE_CFLAGS_STATIC_LIB to allow modified flags to be
+ passed to temporary files when compiling a static library.
+
+- Added a target.targets for extra qmake INSTALLS. The $files() function
+ is now completely consistent with wildcard matching as specified to
+ input file variables.
+
+- Added QMAKE_FUNC_* variables to EXTRA_COMPILERS for late evaluation
+ of paths to be calculated at generation time. $$fromfile() will no
+ longer parse input file multiple times.
+
+- Added support for -F arguments in LIBS line in the Xcode generator.
+
+- $$quote() has changed to only do an explicit quote, no escape sequences
+ are expanded. A new function $$escape_expand() has been added to allow
+ expansion of escape sequences: \n, \t, etc.
+
+- Added a $$QMAKE_HOST variable to express host information about the
+ machine running qmake.
+
+- Added a $$replace() function.
+
+- Ensured that PWD is always consulted first when attempting to resolve an
+ include for dependency analysis.
+
+- Added support for UTF-8 encoded text in .pro files.
+
+- Variables $$_PRO_FILE_ and $$_PRO_FILE_PWD_ added for features to detect
+ where the .pro really lives.
+
+- Added QMAKE_FRAMEWORK_VERSION to override the version inside a .framework,
+ though VERSION is still the default value.
+
+- Added support for custom bundle types on Mac OS X.
+
+- Added support for Mac OS X resources (.rsrc) in REZ_FILES.
+
+
+qt3to4
+------
+
+- qt3to4 now appends to the log file instead of overwriting it.
+
+- Fixed one case where qt3to4 was inserting UNIX-style line endings on
+ Windows.
+
+- Added the new Q3VGroupBox and Q3HGroupBox classes to ease porting.
+
+- Updated the porting rules for this release.
+
+
+uic
+---
+
+- Added support for more variant types: QStringList, QRectF, QSizeF,
+ QPointF, QUrl, QChar, qlonglong, and qulonglong.
+
+- Fixed code generated by uic for retranslating item view widgets so that
+ the widgets are not cleared when they are retranslated.
+
+- Ensured that no code is generated to translate empty strings.
+
+
+uic3
+----
+
+- Added line numbers to warnings.
+
+- Ensured that warnings show the objectName of the widget in question.
+
+- Added support for word wrapping in labels when converting files from uic3
+ format.
+
+- Ensured that the default layouts are respected when converting files from
+ uic3 format.
+
+- Ensured that double type properties are handled correctly.