dist/changes-4.3.0
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 04 Oct 2010 01:19:32 +0300
changeset 37 758a864f9613
parent 0 1918ee327afb
permissions -rw-r--r--
Revision: 201037 Kit: 201039

Qt 4.3 introduces many new features as well as many improvements and
bugfixes over the 4.2.x series. For more details, see the online
documentation which is included in this distribution. The
documentation is also available at http://qt.nokia.com/doc/4.3

The Qt version 4.3 series is binary compatible with the 4.2.x series.
Applications compiled for 4.2 will continue to run with 4.3.

The Qtopia Core version 4.3 series is binary compatible with the 4.2.x
series except for some parts of the device handling API, as detailed
in Platform Specific Changes below.

Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Task Tracker:

  http://qt.nokia.com/developer/task-tracker

Each of these identifiers can be entered in the task tracker to obtain
more information about a particular change.

****************************************************************************
*                           General                                        *
****************************************************************************

General Improvements
--------------------

- Configuration/Compilation
    * Fixed OpenBSD and NetBSD build issues.

- Legal
    * Added information about the OpenSSL exception to the GPL.

- Documentation and Examples
    * Added information about the TS file format used in Linguist.
    * Moved platform and compiler support information from
      website into the documentation.
    * Added an Accessibility overview document.
    * Added new example to show usage of QCompleter with custom tree models.

- Translations
    * Added a Slovak translation of Qt courtesy of Richard Fric.
    * Added a Ukrainian translation of Qt courtesy of Andriy Rysin.
    * Added a Polish translation of the Qt libraries and tools courtesy of
      Marcin Giedz, who also provided a Polish phrasebook for Qt Linguist.
    * [155464] Added a German translation for Qt Designer.

- Added support for the CP949 Korean Codec.

- [138140] The whole Qt source compiles with the QT_NO_CAST_FROM_ASCII
  and QT_NO_CAST_TO_ASCII defines and therefore is more robust when
  using codecs.

- Added support for HP-UX 11i (Itanium) with the aCC compiler

- Changed dialogs to respond much better to the LanguageChange event.
  (i.e. run time translation now works much better.)

- Signals and slots
    * [61295] Added Qt::BlockingQueuedConnection connection type, which
      waits for all slots to be called before continuing.
    * [128646] Ignore optional keywords specified in SIGNAL() and SLOT()
      signatures (struct, class, and enum).
    * Optimize emitting signals that do not have anything connected to them.

- [121629] Added support for the MinGW/MSYS platform.

- [102293] Added search path functionality (QDir::addSearchPath)

- Almost all widgets are now styleable using Qt Style Sheets.

Third party components
----------------------

- Updated Qt's SQLite version to 3.3.17.

- Updated Qt's FreeType version to 2.3.4.

- Updated Qt's libpng version to 1.2.16.

- Added libtiff version 3.8.2 for the TIFF plugin.

****************************************************************************
*                          Library                                         *
****************************************************************************

- QAbstractButton
    * [138210] Ensured strictly alternating ordering of signals resulting
      from auto-repeating shortcuts. Fixed a repeat timer bug that cause
      cause infinite retriggering to occur.
    * [150995] Fixed bug where non-checkable buttons take focus when
      activating shortcuts.
    * [120409] Fixed bug where the button was set to unpressed when the
      right mouse button was released.

- QAbstractItemView
    * [111503] Ensured that focus is given back to the view when the Tab key
      is pressed while inside an editor.
    * [156290] Use slower scrolling when the ScrollMode is set to
      ScrollPerItem.
    * Ensured that the item view classes use the locale property when
      displaying dates and numbers to allow easy customization.
    * Fixed a repaint issue with the focus rectangle in cases where
      selection mode is NoSelection.
    * [147422] Detect when persistent editors take/lose focus and update the
      view accordingly.
    * [146292] Items are now updated even if they contain an editor.
    * [130168] Auto-scrolling when clicking is now delayed to allow
      double-clicking to happen.
    * [139247] Fixed bug where clicking on a partially visible item was
      triggering a scroll and the wrong item was then clicked.
    * [137729] Use dropAction() instead of proposedAction() in
      QAbstractItemView::dropEvent().
    * Fixed a bug that prevented keyboardSearch() from ignoring disabled
      items.
    * [151491] Ensured that we pass a proper MouseButtonPress event in
      QAbstractItemView::mouseDoubleClickEvent().
    * [147990] Ensured that double-clicking does not open an editor when
      the edit trigger is set to SelectedClicked.
    * [144095] Ensured that sizeHintForIndex() uses the correct item
      delegate.
    * [140180] Ensured that clicking a selected item clears all old
      selections when the view is using the ExtendedSelection selection mode
      and SelectedClicked as an edit trigger.
    * [130168] Fixed bug where double clicking on partially visible items
      would not activate them.
    * [139342] Allow editing to be started programatically, even if there
      are no edit triggers.
    * [130135] Added public slot, updateIndex(const QModelIndex &index).

- QAbstractProxyModel
    * [154393] QAbstractProxyModel now reimplements itemData().

- QAbstractSlider
    * [76155] Fixed bug where the slider handle did not stop under the
      mouse.

- QAbstractSocket
    * [128546] Fixed bug where an error was emitted with the wrong type.

- QAccessible
    * Added preliminary support for the upcoming IAccessible2 standard.
    * Made improvements to most of the accessible interfaces.
    * [154534] Ensured that our accessible interfaces honour
      QWidget::setAccessibleName() and QWidget::setAccessibleDescription().
    * Avoid crash if QAccessibleInterface::object() returns 0.
      (It is absolutely legal to return a null value.)

- QApplication
    * Added a flash() method for marking windows that need attention.
    * [86725] Allow the -style command line argument to override a
      style set with QApplication::setStyle() before QApplication
      construction.
    * [111892] Fixed a bug that caused Qt to steal all input when
      connecting the QAction::hovered() signal to a slot that called
      QMainWindow::setEnabled(false).
    * [148512] Fixed QApplication::keyboardModifiers() to update
      correctly when minimizing the window when Qt::MetaModifier is held
      down.
    * [148796] Fixed a bug that prevented Qt from detecting system font
      changes.
    * [154727] Prevent a crash when a widget deletes itself in an key
      event handler without accepting the event.
    * [156484] Fixed a bug where lastWindowClosed() was emitted for each
      top-level window when calling QApplication::closeAllWindows().
    * [157667] Ensured that widgets with the Qt::WA_DeleteOnClose property
      set are properly deleted when they are closed in the dropEvent()
      handler following a drag that was started in the same application.
    * [156410] Implemented QEvent::ApplicationActivate and
      QEvent::ApplicationDeactivate on all platforms. Note that
      QEvent::ApplicationActivated and QEvent::ApplicationDeactivated are
      now deprecated.

- QAtomic
    * [126321] Fixed several flaws in the inline assembler implementations
      for several architectures (ARM, i386, PowerPC, x86-64).
    * [133043] Added support for atomic fetch-and-add.

- QAuthenticator
    * New Class. Needed for authentication support in the Network module.
      Currently supports the Basic, Digest-MD5 and NTLM authentication
      mechanisms.

- QBitArray
    * [158816] Fixed crash in operator~().

- QCalendarWidget
    * Don't set maximum width for month/year buttons.
    * Ensured that the QPalette::Text role is used for default text.
    * Added a date editor which can be configured with the dateEditEnabled
      and dateEditAcceptDelay properties.
    * [137031] Ensured that grid lines are drawn properly when headers are
      not visible.
    * [151828] Ensured that the language can be set with
      QCalendarWidget::setLocale().

- QChar
    * Updated the Unicode tables to Unicode 5.0.
    * Added foldCase() and toTitleCase() methods.
    * Added public API to handle the full Unicode range.

- QCleanlooksStyle
    * [129506] Sliders now look and behave correctly in both reversed and
      inverted appearance modes.
    * [131490] Group boxes no longer reserve space for their titles when no
      title is set.
    * [134344] A sunken frame is now used to indicate checked menu items
      with icons.
    * [133691] Improved the appearance of spin boxes and buttons when used
      against dark backgrounds.
    * [154499] Fixed a rendering issue with disabled, checked push buttons.
    * [154862] Fixed an issue causing combo boxes to sometimes show clipped
      text.
    * Slider appearance is now based on Clearlooks Cairo and the performance
      on X11 has been improved.
    * The appearance of tab bars when used with Qt::RightToLeft layout
      direction has been improved.
    * Dock widget titles are now elided if they are too long to fit in the
      available space.

- QClipboard
    * Ensured that calling clear() on the Mac OS X clipboard really clears
      its data.
    * [143927] Don't drop alpha channel information when pasting pixmaps on
      Mac OS X.
    * The Mac OS X clipboard support now understands TIFF information and
      can export images as TIFF as well.
    * [145437] Fixed crash that could occur when calling setMimeData() twice
      with the same data.
    * QMacMime now does correct normalization of file names in a URL list
      from foreign applications.

- QColor
    * [140150] Fixed bug where QColor::isValid() would return true for
      certain invalid color strings.
    * [120367] Added QColor::setAllowX11ColorNames(bool), which enables
      applications to use X11 color names.
    * Fixed internal errors in toHsv() due to inexact floating point
      comparisions.

- QColorDialog
    * [131160] Enabled the color dialog to be used to specify an alpha color
      on Mac OS X.

- QColumnView
    * A new widget that provide a column-based implementation of
      QAbstractItemView.

- QComboBox
    * Significantly reduced the construction time of this widget.
    * [155614] Speeded up addItem() and addItems().
    * [150768] Ensured that inserting items doesn't change the current text
      on editable combo boxes.
    * [150902] Ensured that only the left mouse button can be used to open
      the popup list.
    * [150735] Fixed pop-up hiding behind top-level windows on Mac OS X.
    * [156700] Fixed bug where the popup could be closed when pressing the
      scroll arrows.
    * [133328] Fixed bug where disabled entries were not grayed out.
    * [134085] Fixed bug where the AdjustToContents size policy had no
      effect.
    * [152840] Fixed bug where QComboBox would not automatically scroll to
      the current item.
    * [90172] Fixed bug where the sizeHint() implementation iterated over
      all icons to detect their availability.

- QCompleter
    * Significantly reduced the construction time of this widget.
    * Added support for lazily-populated models.
    * [135735] Made QCompleter work when used in a QLineEdit with a
      QValidator.
    * Added the wrapAround property to allow the list of completions to
      wrap around in popup mode.
    * Added support for sharing of completers, making it possible for the
      same QCompleter object to be set on multiple widgets.
    * [143441] Added support for models that sort their items in descending
      order.

- QCoreApplication
    * Added support for posted event priorities.
    * [34019] Added the QCoreApplication::removePostedEvents() overload
      for removing events of a specific type.
    * Documented QCoreApplication::processEvents() as thread-safe;
      calling it will process events for the calling thread.
    * Optimized delivery of QEvent::ChildInserted compatibility events.
    * [154727] Enabled compression of posted QEvent::DeferredDelete events
      (used by QObject::deleteLater()) to prevent objects from being deleted
      unexpectedly when many such events are posted.
    * Ensured that duplicate entries in library paths are ignored.

- QCryptographicHash
    * New Class. Provides support for the MD4, MD5 and SHA1 hash functions.

- QCursor
    * [154593] Fixed hotspot bug for cursors on Mac OS X.
    * [153381] Fixed crash in the assignment operator in cases where the
      cursor was created before a QApplication instance.

- QDataWidgetMapper
    * [125493] Added addMapping(QWidget *, int, const QByteArray &) and
      mappedPropertyName(QWidget *) functions.

- QDateTime
    * [151789] Allow passing of date-only format to QDateTime::fromString()
      (according to ISO 8601).
    * [153114, 145167] Fixed bugs that could occur when parsing strings to
      create dates.
    * [122047] Removed legacy behavior which assumed that a year between 0
      and 99 meant a year between 1900 and 1999.
    * [136043] Fixed the USER properties.

- QDateTimeEdit
    * [111557, 141266] Improved the behavior of the widget with regard to
      two-digit years. Made stepping work properly.
    * [110034] Don't change current section when a WheelEvent is received.
    * [152622] Don't switch section when a FocusInEvent is received if the
      reason is Popup.
    * Fixed a bug that would cause problems with formats like dd.MMMM.yyyy.
    * [148522] Ensured that the dateRange is valid for editors that only
      show the time.
    * [148725] Fixed a bug with wrapping and months with fewer than 31 days.
    * [149097] Ensured that dateTimeChanged() is emitted, even if only date
      or time is shown.
    * [108572] Fixed the behavior to ensure that typing 2 into a zzz field
      results in a value of 200 rather than 002.
    * Ensured that the next field is entered when a separator is typed.
    * [141703] Allow empty input when only one section is displayed.
    * [134392] Added a sectionCount property.
    * [134392] Added sectionAt(), currentSectionIndex(), and
      setCurrentSectionIndex() functions.
    * Added a NoButtons value for the buttonSymbols property.

- QDesktopWidget
    * [135002] Ensured that the resized() signal is emitted after the
      desktop is resized on Mac OS X.

- QDial
    * [151897] Ensured that, even with tracking disabled, the signal
      sliderMoved() is always emitted.
    * [70209] Added support for the inverted appearance property.

- QDialog
    * [131396] Fixed a crash in QDialog::exec() that could occur when the
      dialog was deleted from an event handler.
    * [124269] Ensured that the size grip is hidden for extended dialogs.
    * [151328] Allow the use of buttons on the title bar to be explicitly
      specified on Mac OS X.

- QDialogButtonBox
    * [154493] Moved the Action role before the Reject role on Windows to
      conform with platform guidelines.

- QDir
    * [136380] QDir's permission filters on Unix now behave the same as on
      Windows (previously the filters' behavior was reversed on Unix).
    * [158610] Passing QDir::Unsorted now properly bypasses sorting.
    * [136989] Ensured that removed dirs are reported as non-existent.
    * [129488] Fixed cleanPath() for paths with  the "foo/../bar" pattern.

- QDirIterator
    * New class. Introduced to provide a convenient way to examine the
      contents of directories.

- QDockWidget
    * [130773] Ensure that dock widgets remember their undocked positions
      and sizes.
    * Added support for vertical title bars, which can be used to save space
      in a QMainWindow.
    * Added support for setting an arbitrary widget as a custom dock widget
      title bar.
    * [141792] Added the visibilityChanged() signal which is emitted when
      dock widgets change visibility due to show or hide events, or when
      being selected or deselected in a tabbed dock area.
    * Added the dockLocationChanged() signal which is emitted when dock
      widgets are moved around in a QMainWindow.
    * [135878] Titlebars now support mnemonics properly.
    * [138995] Dock widget titlebars now correctly indicate their activation
      state.
    * [145798] Ensured that calling setWindowTitle() on a nested, docked
      dock widget causes the title in the tab bar to be updated.

- QDomDocument
    * [128594] Ensured that comment nodes are indented correctly when
      serializing a document to a string.
    * [144781] Fixed crash that would occur when the owner document of new
      attributes was not adjusted.
    * [107123] Ensured that appendChild() does not erroneously add two
      elements to document nodes in certain cases.

- QDoubleSpinBox
    * [99254] Allow higher settings for decimals.

- QDrag
    * [124962] Added QDrag::exec() to allow the default proposed action to
      be changed.

- QFile
    * [128352] Refactored the backend on Windows with major performance
      improvements; in particular line and character reading is now much
      faster.
    * [146693] Fixed a lock-up in copy().
    * [148447] QFile now supports large files on Windows where support is
      available.
    * Generally improved support for stdin.
    * Byte writing performance has improved on all platforms.
    * [151898] Added support for reading lines with an embedded '\0'
      character.

- QFileDialog
    * Updated the dialog to use native icons.
    * Made general improvements to the dialog's performance.
    * Added a sidebar to show commonly used folders.
    * [134557] Added the ability to use a proxy model.
    * Added dirEntered() and filterSelected() signals, previously found in
      Qt 3's file dialog.
    * [130353] Fixed Qt/Mac native file dialog pattern splitting
    * [140332] Made the dialog respond much better to the LanguageChange
      event.
    * [154173] Fixed a memory deallocation error.
    * Made the selected filter argument work for native Mac OS X file
      dialogs.

- QFileInfo
    * Ensured that the value of Mac FS hidden flag is returned for symbolic
      links and not their targets; i.e., hidden links are not followed.
    * [128604] Introduced isBundle() for Mac OS X bundle types.
    * [139106] Fixed bug that could cause drives to be reported as hidden
      on Windows.

- QFileSystemWatcher
    * [155548] Reliability fixes.
    * When in polling mode, send change notification when file permissions
      change.
    * [144049, 149637] Fixed a bug that prevented watching a directory
      for notification on Windows.
    * [143381] Fixed bug that caused addPath() and removePath() to fail when
      passing an empty string.

- QFocusFrame
    * [128713, 129126] Made the focus frame visible in more situations on
      Mac OS X.

- QFont
    * X11: Add a method to retrieve the FreeType handle from the QFont.

- QFontComboBox
    * [132826] Fixed a bug that could cause the popup list to be shown
      off-screen.
    * [155614] Speeded up addItem() and addItems().
    * [160110] Fixed crash that could occur when setting a pixel size for
      the fonts.

- QFontMetrics
    * [152013] Fixed bug where boundingRect() gave sizes that were too large
      when compiled using Visual Studio 6.
    * [145980] Added tightBoundingBox() method.

- QFrame
    * [156112] Fixed bug where the default frame was not correct when
      created without a parent and reparented afterwards.
    * [150995] Fixed bug where setting the frame style did not invalidate
      the size hint

- QFSFileEngine
    * Fixed bug in fileTime() on Win98 and WinME
    * Ensured that the working directory of a Windows shortcut is set when
      a link is created.
    * Improved the reliability of buffered reads on platforms that cache
      their EOF status.

- QFtp
    * [107381] Greatly improved LIST support; QFtp now supports more server
      types.
    * [136008] Improved tolerance for servers with no EPRT/EPSV support.
    * [150607] Fixed a race condition when using ActiveMode for uploading.

- QGL
    * [158971] Fixed a resource leak in the GL texture cache.

- QGLFramebufferObject
    * Made it possible to configure the depth/stencil buffer in a
      framebuffer object.
    * Added support for floating point formats for the texture in a
      framebuffer object.

- QGLPixelBuffer
    * [138393] Made QGLPixelbuffer work under Windows on systems without the
      render_texture extension.

- QGLWidget
    * [145621] Avoided a QGLFormat object copy when checking the buffer
      format with the doubleBuffer() function.
    * [100519] Rewritten renderText(). It now supports Unicode text, and it
      doesn't try to overwrite previously defined display lists.

- QGraphicsItem
    * [151271] Fixed crash that could occur when calling update on items
      that are not fully constructed.
    * Ensured that the selected state no longer changes state twice
      for each mouse click.
    * [138576] setParent() now correctly adds the child to the parent's
      scene.
    * [130263] Added support for partial obscurity testing with the
      isObscured(QRectF) function.
    * [140725] QGraphicsTextItem is now also selectable when editable.
    * [141694] QGraphicsTextItem now calls ensureVisible() if it has input
      focus.
    * [144734] Fixed bugs in unsetCursor().
    * [144895] Improved bounding rectangle calculations for all standard
      items.
    * Added support for QTransform.
    * [137055] Added QGraphicsItem::ItemPositionHasChanged and
      ItemTransformHasChanged.
    * Added several convenience functions.
    * [146863] Added ItemClipsToShape and ItemClipsChildrenToShape clipping
      flags.
    * [139782] Greatly improved hit and selection tests.
    * [123942] Added the ItemIgnoresTransformations flag to allow items to
      bypass any inherited transformations.
    * All QGraphicsItem and standard item classes constructors have now had
      their scene arguments obsoleted.
    * [150767] Added support for implicit and explicit show and hide.
      Explicitly hidden items are no longer implicitly shown when their
      parent is shown.
    * [151522] Fixed crash when nesting QGraphicsItems that enabled child
      event handling.
    * [151265] Cursors now change correctly without mouse interaction.
    * Added deviceTransform() which returns a matrix that maps between item
      and device (viewport) coordinates.
    * Added the ItemSceneChange notification flag.
    * [128696] Enabled moving of editable text items.
    * [128684] Improved highlighting of selected items.

- QGraphicsItemAnimation
    * [140522] Fixed special case interpolation bug.
    * [140079] Fixed ambiguity in the position of insertions when multiple
      items are inserted for the same step in an animation.

- QGraphicsScene
    * [130614] Added the invalidate() function for resetting the cache
      individually for each scene layer.
    * [139747] Fixed slow memory leaks caused by repeatedly scheduling
      single-shot timers.
    * [128581] Added the selectionChanged() signal which is emitted when
      the selection changes.
    * Introduced delayed item reindexing which greatly improves performance
      when moving items.
    * The BSP tree implementation has undergone several optimizations.
    * Added new bspTreeDepth property for fixating the BSP tree depth.
    * Optimization: Reduced the number of unnecessary index lookups.
    * [146518] Added the selectionArea() function.

- QGraphicsSceneWheelEvent
    * [146864] Added wheel orientation.

- QGraphicsView
    * [136173] Hit-tests are now greatly improved for thin items.
    * [133680] The scroll bars are now shown at their maximum extents
      instead of overflowing when the transformed scene is larger than
      the maximum allowed integer range.
    * [129946] Changing the viewport no longer resets the acceptsDrops()
      property.
    * [139752] ScrollHandDrag is now allowed also in non-interactive mode.
    * [128226] Fixed rubber band rendering bugs (flicker and transparency).
    * [144276] The selection is no longer reset by scroll-dragging.
    * Added support for QTransform.
    * [137027] Added new viewportUpdateMode() property for better control
      over how QGraphicsView schedules updates.
    * Several convenience functions have been added.
    * [146517] Added rubberBandSelectionMode() for controlling how items are
      selected with the rubber band.
    * [150344] Fixed the scroll bar ranges to prevent the scroll bars from
      hiding parts of the scene.
    * [150321] Added new optimizationFlags() property, allowing individual
      features to be disabled in order to speed up rendering.
    * The level of detail algorithm has been changed to improve support for
      transformations that change the view's aspect ratio.
    * [154942] Fixed background rendering in render().
    * [156922] render() now properly supports all transformations, source
      and target rectangles.
    * [158245] Calling setScene(0) now implicitly calls update().
    * [149317] Added NoViewportUpdate to the set of modes that can be set
      for updating a view.

- QGridLayout
    * [156497] Fix a one-off error that could cause the bottom button in
      a QDialogButtonBox to be cropped.

- QHeaderView
    * This widget now uses Qt::NoFocus as its default focus policy.
    * [99569] Improved performance, providing up to a 2x speed increase for
      some cases.
    * [146292] Fixed bug that made it impossible to resize the last section
      under certain circumstances.
    * [144452] Fixed bug that caused setDefaultAlignment() to have no
      effect.
    * [156453] Fixed column resizing bug that could cause branches in one
      column to be drawn in the next.
    * [142640] Ensured that the Qt::SizeHintRole is used when available.
    * [142994] Hidden items are now restored to their original size when
      shown.
    * [127430] Added saveState() and restoreState().
    * [105635] Added support for drag selecting.

- QHostInfo
    * [141946] No longer stops working after QCoreApplication is destroyed.
    * [152805] Now periodically reinitializes DNS settings on Unix.

- QHttp
    * [139575] Fixed state for servers that use the "100 Continue" response.
    * Added support for the HTTPS protocol.
    * Improved proxy support.
    * Added support for server and proxy authentication.

- QIcon
    * Added cacheKey() as a replacement for serialNumber().
    * Fixed the streaming operators.

- QImage
    * [157549] Fixed a crash that could occur when calling copy() with
      negative coordinates.
    * Added cacheKey() as a replacement for serialNumber().
    * [131852] Optimized rotations by 90 and 270 degrees.
    * [158986] Fixed painting onto an images with the Format_RGB16 image
      format.
    * Fixed rotations by 90 and 270 degrees for images with the Format_RGB16
      image format.
    * [152850] Fixed bugs in text() and setText().
    * Fixed a crash that could occur when passing a 0 pointer to the
      constructor that accepts XPM format image data.
    * [150746] Added a constructor that accepts an existing memory buffer
      with non-default stride (bytes per line).

- QImageReader
    * [141781] Fixed support for double byte PPM files (>256 colors).

- QImageWriter
    * Added support to enable compression if a plugin supports it.

- QInputDialog
    * [115565] Disabled OK button for non-acceptable text (getInteger() and
      getDouble()).
    * [90535] Input dialogs now have a size grip

- QIntValidator, QDoubleValidator
    * Validators now use the locale property to recognize numbers
      formatted for various locales.

- QItemDelegate
    * [145142] Ensured that text is not drawn outside the bounds of a cell.
    * [137198] Fixed handling of cases where the decoration position is set
      to be at the bottom of an item to prevent the text from being
      incorrectly positioned.
    * [142593] Take word wrap into account when calculating an item's size
      hint.
    * [139160] Ensured that the focus rectangle is shown, even for empty
      cells.

- QItemSelectionModel
    * Made optimizations for some common cases.
    * [143383] Fixed incorrect behavior of hasSelection().

- QLabel
    * [133589] Fixed performance problems with plain text labels.
    * Fixed support for buddies with rich text labels.
    * [136918] Fixed setText() to not turn off mouse tracking when the text
      used is plain text.
    * [143063] Ensured that the mouse cursor is reset when a link is
      clicked.
    * [156912] Fixed bug where the mouse cursor shape was changed to the
      pointing hand cursor, but would not be correctly cleared afterwards.

- QLayout
    * Added new features to Qt's layout system to enable:
      - independent values for all of the four margins,
      - independent horizontal spacing and vertical spacing in QGridLayout,
      - non-uniform spacing between layout items,
      - layout items to occupy parts of the margin or spacing when required
        by the application or style.

- QLibrary
    * Fixed bug that caused QLibrary::load() to discard the real error
      message if the error was something else than ERROR_MOD_NOT_FOUND.
      (Win32)
    * Fixed bug that prevented QLibrary::load() from loading a library with
      no suffix (because LoadLibrary automagically appended the .dll suffix
      on Win32).
    * Corrected behavior of fileName() to ensure that, if we loaded a
      library without specifying a suffix and the file found had the .dll
      suffix, the fileName found is returned instead of the fileName
      searched for (as was previously the case).
    * [156276] Fixed behavior of unload() to return true only if the library
      could be unloaded.

- QLineEdit
    * [156104] Ensured that input methods are disabled when not in the
      Normal edit mode.
    * [157355] Fixed drag and drop bug on Mac OS X that could occur when
      dragging inside the widget.
    * [151328] Ensured that the caret is removed when text is selected on
      Mac OS X.
    * [136919] Ensured that fewer non-printable characters are replaced
      with spaces.

- QList
    * Fixed a race-condition in QList::detach() which could cause an
      assertion in debug mode.

- QListView
    * [136614] Fixed the behavior of Batched mode to ensure that the last
      item of the batch is displayed.
    * Fixed some issues with jerky scrolling in ScrollPerItem mode if the
      grid size was different to the delegate's size hint.
    * [113437] Prevent noticeable flicker on slow systems in Batched mode
      by laying out the first batch immediately.
    * [114473] Added a new property to QListView: selectionRectVisible.
    * Fixed a bug that could cause too many items to be selected.
    * Fixed issue that could cause list views to have incorrect scroll bar
      ranges if their grid sizes differed from their item sizes.
    * [144378] Improved navigation for cases where an item is taller than
      the viewport.
    * [148846] Fixed an issue that prevented scroll bars from being updated
      correctly when items were moved programmatically.
    * [143306] Improved support for keyboard navigation and selection.
    * [137917] Shift-click extended mode selection in icon mode now selects
      the correct items.
    * [138411] Fixed bug where hidden items would cause drawing problems
      when pressing Ctrl+A.

- QListWidget
    * [146284] Ensured that the effect of SingleSelection mode is also taken
      into account when setSelected() is called on items.
    * [151211] Added removeCellWidget() and removeItemWidget() functions.

- QLocale
    * Updated the locale database to CLDR 1.4: more locales supported;
      numerous fixes to existing locales.

- QMacStyle
    * [159270] Fixed drawing of icons on buttons with no text.
    * [146364] Fixed drawing of multi-line text for items in a QToolBar.
    * [145346] Removed unwanted wrapping of text in a QPushButton.
    * Fixed drawing of "Flat" group boxes.
    * [113472] Fixed drawing of text on vertical headers when resizing.
    * [148509] Ensured that the correct font is used for buttons and labels
      when the application is not configured to use the desktop settings.
    * [106100] Improved the look of push buttons with menus.
    * Made fixes to Qt's layout system that enable more native-looking
      forms.
    * [151739] Buttons with an icon are now centered correctly.
    * [142672] Fixed font size bug on the drop down box for QComboBox.
    * [148832] The button on a combo box is now showing as pressed when the
      drop down menu is shown.
    * [147377] Ensured that combo boxes now scale correctly on Mac OS X.
    * [143901] Fixed the highlight color for widgets such as QComboBox so
      that it follows the system settings on Mac OS X.
    * [151852] Fixed size calculation for QPushButton with an icon.
    * [133263] Removed the coupling of text size and button kind, enabling
      them to be set independently.
    * [133263] Ensured that QPushButton respects calls to setFont().
    * [141980] Text with small font sizes is now centered vertically correct
      inside push buttons.
    * [149631] Ensure that beveled button types are chosen if text doesn't
      fit inside a button instead of cutting the text.
    * [151500] Fixed incorrect QPushButton text clipping behavior.
    * [147653] Fixed bug that caused the sort indicator to be drawn on top
      of the text in QHeaderView.
    * [139149] Fixed issues with CE_SizeGrip in right-to-left mode.
    * [139311] Improved drawing of the title in QGroupBox.
    * [128713] Ensured that drawing of the focus frame now follows pixel
      metrics.
    * [142274] Made QSlider tickmark drawing more like Cocoa.
    * focusRectPolicy() is now obsolete. This is now controlled by the
      Qt::WA_MacShowFocusRect attribute.
    * widgetSizePolicy() is now obsolete. This is now controlled by the
      Qt::WA_Mac*Size attribute.
    * [129503] Ensured that a group box without a title no longer allocates
      space for it.
    * Ensured that a more appropriate width is used for push buttons.
    * [132674] Ensured that tab bar drawing is correct when the tab's font
      isn't as tall as the default.
    * [126214] Ensured that the QSizeGrip is drawn correctly in brushed
      metal windows.
    * Improved styling of docked QDockWidgets.

- QMainWindow
    * [145493] Fixed a crash that could occur when calling setMainWindow(0)
      on X11.
    * [137013, 158094] Fixed bugs relating to the handling of size hints,
      minimum/maximum sizes and size policies of QDockWidgets in main
      windows.
    * [147964] Animated tool bar areas adjust dynamically when a QToolBar is
      dragged over them.
    * Added the dockOptions property. This makes it possible to:
        - specify that tabbed dock areas should have vertical tab bars,
        - disable tabbed docking altogether,
        - force tabbed docking, disallowing the placement of dock widgets
          next to each other.
    * Fixed bugs in saving and restoring main window state.
    * [143026] Fixed support for hiding and showing toolbars on Mac OS X.
    * [131695] Add unified toolbar support on Mac OS X.

- QMdiArea
- QMdiSubWindow
    * New classes. QMdiArea is a replacement for QWorkspace.

- QMenu
    * The addAction() overloads that accept a slot argument now honor the
      slot's bool argument correctly.
    * [129289] Added support for handling context menus from within a menu.
    * [144054] Fixed scrolling logic.
    * [132524] Allow setVisible() of separator items on Mac OS X native
      menu items.
    * [131408] Torn-off menus now have fixed sizes to prevent the window
      system from resizing them.
    * [113989] Added some fuzziness to the "snap to" detection.
    * [155030] Do not disable command actions when merge is disabled.
    * [131702] Tear-off menus no longer appear only once.
    * [138464] Ensured that, if a popup menu does not fit on the right-hand
      side of the screen, it is aligned with the right side of the parent
      widget instead of the left side.
    * [130343] Ensured that only the left mouse button triggers menu actions
      on Windows.
    * [139332] Fixed an issue that caused submenus to close when moving the
      mouse over a separator.
    * [157218] Ensured that torn-off menus are not closed when Alt is
      pressed.
    * [135193] Ensured that the size hint, maximum size and minimum size are
      taken into account for each QWidgetAction.
    * [133232] Improved handling of menus that are opened at specified
      positions.
    * [141856] Fixed bug where exec() would return NULL if the user pressed
      a mnemonic shortcut.
    * [133633] Fixed focus problem with keyboard navigation between menus
      and widget actions.
    * [134560] Fixed bug that prevented status tips from being shown for
      actions in tool button menus.
    * [150545] Fixed memory leak on Mac OS X.
    * [138331] Fixed bug that could cause menus to stay highlighted after
      the closing of a dialog.
    * Menu shortcuts are now cleared if the corresponding QAction is cleared
      on Mac OS X.
    * Fixed bug that could cause changes to shortcut to not take effect on
      Mac OS X.
    * [12536] Don't allow Tab to be used to navigate menus on Mac OS X.
    * [108509] Prevented shortcuts from stealing keyboard navigation keys.
    * [134190] Added support for Shift+Tab to enable backwards navigation.

- QMenuBar
    * [135320] Make show() a no-op on Mac OS X to prevent the menu bar from
      being visible at the same time as a native Mac menu bar.
    * [115471] Fixed torn-off menu behavior to ensure that mouse events
      are propagated correctly on second level tear-offs.
    * [126856] Fixed an issue that could cause several menus to be open at
      the same time.
    * [47589] The position of the menu is now shifted horizontally when
      there is not enough space (neither above nor below) to display it.
    * [131010] Fixed bug where adding an action and setting its menu would
      prevent the action from being triggered through its shortcut.
    * [142749] Fixed bug where setEnabled(false) had no effect on Mac OS X.
    * [141255] Made it possible to make an existing menu bar an application-
      wide menu bar with setParent(0) on Mac OS X.

- QMessageBox
    * [119777] Ensured that pressing Ctrl+C in message boxes on Windows
      copies text to the clipboard.
    * Added setDefaultButton(StandardButton) and
      setEscapeButton(StandardButton) functions.

- QMetaObject
    * Optimized invokeMethod() to avoid calling type() unnecessarily.

- QMetaType
    * [143011] Fixed isRegistered() to return false when the type ID does
      not correspond to a user-registered type.

- QModelIndex
    * [144919] Added more rigorous identity tests for model indexes.

- QMotifStyle
    * [38624] Fixed the behavior when clicking on a menu bar item a
      second time; the menu will now close in the same way that native
      Motif menus do.

- QMutex
    * [106089] Added tryLock(int timeout), which allows a thread to specify
      the maximum amount of time to wait for the mutex to become available.
    * [137309] Fixed a rare deadlock that was caused by compiling with
      optimizations enabled.
    * Optimized recursive locking to avoid two unnecessary atomic operations
      when the current thread already owns the lock.
    * Optimized non-recursive mutexes by avoiding a call to pthread_self()
      on Unix.

- QNetworkInterface
    * [146834] Now properly generates broadcast addresses on Windows XP.

- QNetworkProxy
    * Added support for transparent HTTP CONNECT client proxying.
    * Added support for complex authenticators through QAuthenticator.

- QObject
    * Added a compile time check to ensure that the objects passed to
      qobject_cast contain a Q_OBJECT macro.
    * [133901] Improved the run time warnings from setParent() that is
      output when trying to set a new parent that is in a different thread.
    * [140106] Fixed a deadlock that could occur when deleting a QObject
      from the destructor of a QEvent subclass.
    * [133739] Fixed compiler warnings from g++ in findChildren<T>().
    * Documented the QEvent::ThreadChange that is sent by moveToThread().
    * [130367] Improved the run time warning that is output when creating
      a QObject with a parent from a different thread.
    * [114049] Made dumpObjectInfo() also dump connection information.

- QPageSetupDialog
    * [136041] Margins are now saved and used properly when printing.

- QPainter
    * Fixed stroking of non-closed polygons with non-cosmetic pens in the
      OpenGL paint engine.
    * [133980] Fixed stroking bug for RoundJoin and MiterJoin with paths
      containing successive line segments with a 180 degree angle between
      them.
    * [141826] Fixed stroking with MiterJoin of paths with duplicated
      control points.
    * [139454, 139209] Fixed problem with SmoothTransformation that caused
      images to fade out toward the edges in raster paint engine.
    * Added the HighQualityAntialiasing render hint to enable pixel shaders
      for anti-aliasing in the OpenGL paint engine.
    * [143503] Fixed broken painting when using a QPainter on a
      non-top-level widget where the world matrix is disabled then
      re-enabled.
    * [142471] Fixed dashed line drawing of lines that are clipped against
      the device rectangle.
    * [147001] Fixed bug with drawing of polygons with more than 65536
      points in the raster paint engine.
    * [157639] Calling drawPolygon() from multiple threads no longer causes
      an assertion.
    * Optimized line and rectangle drawing in the raster paint engine.
    * [159047] Fixed case where fillRect() would ignore the brush origin.
    * [143119] Fixed bug where drawing a scaled image on another image would
      cause black lines to appear on the edges of the scaled image.
    * [159894] Fixed X11 errors when using brush patterns on multiple
      screens.
    * [148524] Fixed X11 errors when drawing bitmaps containing a color
      table with alpha values.
    * [141871] Optimized and fixed drawing of extremely large polygons.
    * [140952] Fixed transformed text drawing on X11 setups that used
      fontconfig without Xrender.
    * [139611] Fixed smooth transformation of pixmaps for X11.
    * [132837] Fixed text drawing on images with certain fonts on Mac OS X.
    * [147911] Use font anti-aliasing when rotating small fonts on Windows.
    * [127901] Optimized gradient calculations.
    * [139705, 151562] Optimized clipping algorithms in the raster paint
      engine.
    * Optimized blending operations in the raster paint engine using MMX,
      3DNOW and SSE2.
    * Optimized fillRect() for opaque brushes.
    * Made general speed optimizations, especially in the OpenGL and raster
      paint engines.

- QPainterPath
    * [136924] Correctly convert Traditional Chinese fonts (e.g., MingLiu)
      to painter paths.

- QPicture
    * [142703] QPicture now correctly preserves composition mode changes.
    * Fixed QPicture text size handling on devices with non-default DPI.
    * [133727] Fixed text alignment handling when drawing right-to-left
      formatted text into a QPicture.
    * [154088] Fixed bugs that could occur when reading QPicture files
      generated with Qt 3.

- QPixmap
    * Added cacheKey() as a replacement for serialNumber().
    * [97426] Added a way to invert masks created with createMaskFromColor().
    * Fixed a crash that could occur when passing a 0 pointer to the
      constructor that accepts XPM format image data.

- QPixmapCache
    * [144319] Reinserting a pixmap now moves it to the top of the Least
      Recently Used list.

- QPlastiqueStyle
    * [133220] Fixed QProgressBar rendering bugs.

- QPrintDialog
    * [128964] Made "Print" the default button.
    * [138924] Ensured that the file name is shown in the file dialog when
      printing to a file
    * [141486] Ensured that setPrintRange() correctly updates the print
      dialog on X11.
    * [154690] Ensured that "Print last page first" updates the QPrinter
      instance on X11.
    * [149991] Added support for more text encodings in the PPD subdialog.
    * [158824] Disable the OK button in the dialog if no printers are
      installed.
    * [128990] X11: Don't immediately create an output file when a file name
      is entered in the print dialog.
    * [143804] Ensured that the default printer is set to the one specified
      by the PRINTER environment variable.

- QPrinter
    * Added the supportedPaperSources() function.
    * [153735] Significantly speeded up generation of PDF documents with Asian
      characters.
    * [140759] Documented that the orientation cannot be changed on an active
      printer on Mac OS X (native format).
    * [136242] PostScript generator: Don't generate huge PostScript files for
      pattern brushes.
    * [139566] Added support for alpha blending when printing on Windows.
    * [151495] Fixed image scaling problems when printing on Windows.
    * [146788] Optimized drawTiledPixmap() on Windows.
    * [152637] PDF generator: Ensured that the pageRect property is set up
      correctly.
    * [152222] PDF generator: Fixed bug that lead to fonts being too small on
      Mac OS X.
    * [151126] Ensured that ScreenResolution is respected on Mac OS X.
    * [151141] PDF generator: Make PDFs using the default font on Mac OS X
      searchable.
    * [129297, 140555] PS/PDF generator: Drastically reduced the sizes of
      generated files and speeded up generation when using simple pens.
    * [143803] Correctly set the default printer name on X11.
    * [134204] PDF generator: Ensured that the correct output is generated
      when drawing 1-bit images
    * [152068] PS generator: Ensured that the correct PostScript is generated
      when embedding TrueType fonts with broken POST tables.
    * [143270] X11: Ensure that sigpipe is ignored when printing to an
      invalid printer using the PDF generator.

- QProcess
    * [97517] Added suport for specifying the working directory of detached
      processes as well as retrieving the PID of such processes.
    * [138770] Greatly improved the performance of stdin and stdout handling
      on Windows.
    * [154135] Fixed crashes and lock-ups due to use of non-signal-safe
      functions on Unix.
    * [144728] Fixed race conditions on Windows that would occur when
      calling bytesWritten() while using the waitFor...() functions.
    * [152838] Ensured that finished() is no longer emitted if a process
      could not start.

- QProgressBar
    * [146855] Ensured that setFormat() now calls update() if the format
      changes.
    * [152227] Improved support for wide ranges across the entire integer
      range.
    * The setRange() function is now a slot.
    * [137020] Ensured setValue() forces a repaint for %v.

- QProgressDialog
    * The setRange() function is now a slot.
    * [123199] Ensured that the Escape key closes dialog even when the
      cancel text is empty.

- QPushButton
    * [114245] Fixed some styling issues for push buttons with popup menus.
    * [158951] Buttons with icons now center their content to be more
      consistent with buttons that do not have icons in most styles.
    * [132211] Fixed setDefault() behavior.

- QReadWriteLock
    * [106089] Added the tryLockForRead(int) and tryLockForWrite(int)
      functions which allow a thread to specify the maximum amount of time
      to wait for the lock to become available.
    * [131880] Added support for recursive write locking.

- QRectF
    * [143550] Added the QRectF(topRight,bottomLeft) constructor.

- QRegion
    * Added several optimizations for common operations on X11 and Qtopia
      Core.

- QResource
    * Allow a QByteArray to be used for run time resource registration.

- QScrollArea
    * [140603] Fixed flickering when the scroll widget is right-aligned.

- QSemaphore
    * Add the tryAcquire(int n, int timeout) function which allows a thread
      to specify the maximum amount of time to wait for the semaphore to
      become available.

- QSettings
    * [153758] Fixed various bugs that could occur when writing to and
      reading from the Windows registry.

- QSizeGrip
    * Added support for size grips in TopLeftCorner/TopRightCorner on Windows.
    * Added support for size grips on subwindows.
    * [150109] Fixed bug where the position could change during resize.
    * [156114] Fixed incorrect size grip orientation on X11.

- QSlider
    * Prevent the widget from getting into infinite loops when extreme
      values are used.

- QSocketNotifier
    * [148472] Mac OS X now prevents the file descriptor from being closed
      when a socket notifier is deregistered.
    * [140018] Mac OS X will now invalidate the backing native socket
      notifier upon deregistration.
    * Optimized performance by avoiding some debugging code in release
      builds.

- QSortFilterProxyModel
    * [151352] Ensured that the dataChanged() signal is emitted when
      sorting.
    * [154075] Added support to handle the insertion of rows in the source
      model.
    * [140152] Added a property to force the proxy model to use QString's
      locale-aware compare method.

- QSpinBox
    * [141569] Disallow typing -0 in a QSpinBox with a positive range.
    * [158445] Add the keyboardTracking property. When set to false, don't
      send valueChanged() with every key press.
    * [143504] Made undo/redo work correctly.
    * [131165] Fixed highlighting according to the native look on Mac OS X.

- QSplashScreen
    * [38269] Added support for rich text.

- QSplitter
    * [139262] Fixed bug that caused the splitter to snap back and forth in
      certain situations.

- QSql
    * Added NumericalPrecisionPolicy to allow numbers to be retrieved as
      double or float.

- QSqlDriver
    * [128671] Added SimpleLocking to DriverFeature.

- QSqlQueryModel
    * [155402] Fixed bug where the rowsAboutToBeRemoved() and rowsRemoved()
      signals were emitted when setQuery() was called on an already empty
      model.
    * [149491] Fixed bug where blank rows were inserted into the model if
      the database driver didn't support the QuerySize feature and the
      result set contained more than 256 rows.

- QSqlRelationalTableModel
    * [142865] Fixed support for Interbase and Firebird by not using 'AS' in
      generated SQL statements.

- QSqlTableModel
    * [128671] Ensured that the model has no read locks on a table before
      updating it. Fixes parallel access for in-process databases like
      SQLite.
    * [140210] Fixed bug where setting a sort order for a column caused no
      rows to be selected with PostgreSQL and Oracle databases due to
      missing escape identifiers in the generated SQL statement.
    * [118547] Don't issue asserts when inserting records before calling
      select() on the model.
    * [118547] Improved error reporting.

- QSslCertificate
- QSslCipher
- QSslError
- QSslKey
- QSslSocket
    * New classes. Added support for SSL to QtNetwork.

- QStandardItemModel
    * Reduced the construction time when rows and columns are given.
    * [133449] Improve the speed of setData()
    * [153238] Moving an item will no longer cause that item to lose its
      flags.
    * [143073] Calling setItemData() now triggers the emission of the
      dataChanged() signal.

- QStatusbar
    * [131558] Increased text margin and fixed a look and feel issue on
      Windows.

- QString
    * fromUtf8() now discards UTF-8 encoded byte order marks just like the
      UTF-8 QTextCodec.
    * [154454] Fixed several UTF-8 decoder compliance problems (also affects
      the UTF-8 QTextCodec).
    * Removed old compatibility hack in fromUtf8()/toUtf8() to allow round
      trip conversions of invalid UTF-8 text.
    * Added support for full Unicode case mappings to toUpper() and
      toLower().
    * Correctly implemented case folding with the foldCase() method. (Also
      for QChar.)
    * [54399] Added more overloads (taking up to 9 arguments) for arg().

- QStringListModel
    * Made it possible for items to be dropped below the other visible items
      on a view with a QStringListModel.

- QStyle
    * Added the SP_DirHomeIcon standard pixmap to provide the native icon
      for the home directory.
    * Added documentation to indicate that pixel metrics are not necessarily
      followed for all styles.
    * standardPixmap() has been obsoleted. Use standardIcon() instead.
    * Added SP_VistaShield to support Vista UAC prompts on Windows Vista.
    * [103150] Added SH_FocusFrame_AboveWidget to allow the focus frame to
      be stacked above the widget it has focus on.
    * The default password character is now a Unicode circle, the asterisk
      is still used for QMotifStyle and its subclasses.
    * [127454] CE_ToolBoxTab now draws two parts, CE_ToolBoxTabShape and
      CE_ToolBoxTabLabel. This should make QToolBox more styleable.
    * [242107] Added a QStyleOptionToolBoxV2 with tab position and selected
      position enums.

- QStyleOption
    * [86988] Added an initializeFromStyleOption() function for the many
      widgets that need to create a QStyleOption subclass for style-related
      calls.

- QSyntaxHighligher
    * [151831] Fixed bug where calling rehighlight() caused highlighBlock()
      to be called twice for each block of text.

- QSystemTrayIcon
    * [131892] Added support to allow messages to be reported via AppleScript
      on Mac OS X.
    * [151666] Increased the maximum tool tip size to 128 characters on the
      Windows platforms that support it.
    * [135645] Fixed an issue preventing system tray messages from working
      on some Windows platforms.
    * Addded the geometry() function to allow the global position of the
      tray icon to be obtained.
	
- QTabBar
    * [126438] Added the tabAt(const QPoint &pos) function.
    * [143760] Fixed a bug where scroll buttons were shown even when
      disabled.
    * [130089] Ensured that the tool tip help is shown on disabled tabs.
    * [118712] Enabled auto-repeat on scroll buttons.
    * [146903] Ensured that the currentChanged() signal is emitted when a
      tab is removed
    * Ensured that corner widgets are taken into account when calculating
      tab position in the case where the tab bar is centered.
    * [132091] Re-introduced the Qt 3 behavior for backwards scrolling of
      tabs.
    * [132074] Ensured that currentChanged() is always emitted when the
      current tab is deleted.

- QTableView
    * No longer allow invalid spans to be created.
    * [145446] Fixed bug where setting minimum height on horizontal header
      caused the the table to be rendered incorrectly.
    * [131388] Fixed case where information set using setRowHeight() was
      lost on a subsequent call to insertRow().
    * [141750] Fixed issue where spanned table items were painted twice per
      paint event.
    * [150683] Added property for enabling/disabling the corner button.
    * [135727] Added the wordWrap property.
    * [158096] resizeColumnToContents(int i) now has the same behavior that
      resizeColumnsToContents() uses for individual columns.

- QTableWidget
    * [125285] Ensured that dataChanged() is only emitted once when
      setItemData() is used to set data for more than one role.
    * [151211] Added removeCellWidget() and removeItemWidget().
    * [140186] Fixed bug where calling setAutoScroll(false) would have no
      effect.

- QTabWidget
    * Tab widgets now take ownership of their corner widgets and allow
      corner widgets to be unset.
    * [142464] Fixed incorrect navigation behavior that previously made it
      possible to navigate to disabled tabs.
    * [124987] Ensured that a re-layout occurs when a corner widget is set.
    * [111672] Added the clear() function.

- QtAlgorithms
   * [140027] Improved the performance of qStableSort() on large data sets.

- QTcpSocket
    * Added several fixes to improve connection reliability on Windows.
    * Made a number of optimizations.
    * Improved detection of ConnectionRefusedError on Windows and older
      Unixes.
    * Added support for proxy authentication.

- QTemporaryFile
    * [150770] Fixed large file support on Unix.

- QTextBrowser
    * [126914] Fixed drawing of the focus indicator when activating links.
    * [82277] Added the openLinks property to prevent QTextBrowser from
      automatically opening any links that are activated.

- QTextCodec
    * Improved the UTF-8 codec's handling of large, rare codepoints.
    * [154932] The UTF-8 codec now keeps correct state for sequence
      f0 90 80 80 f4 8f bf bd.
    * [154454] Fixed several UTF-8 decoder compliance problems also
      affecting QString::fromUtf8().
    * Fixed the UTF-8 codec's handling of incomplete trailing UTF sequences
      to be the same as QString::fromUtf8().

- QTextCursor
    * The definition of the block character format (obtained using the
      blockCharFormat() and QTextBlock::charFormat() functions) has been
      changed to be the format used only when inserting text into an empty
      block.
      If a QTextCursor is positioned at the beginning of a block and the
      text block is not empty then the character format to the right of the
      cursor (the first character in the block) is returned.
      If the block is empty, the block character format is returned.
      List markers are now also drawn with the character format of the first
      character in a block instead of the invisible block character format.

- QTextDecoder
    * Added the hasFailure() function to indicate whether input was
      correctly encoded.

- QTextDocument
    * [152692] Ensured that the print() function uses the document's default
      font size.
    * Added the defaultTextOption property.
    * Setting a maximum block count implicitly now causes the undo/redo
      history to be disabled.
    * Made numerous fixes and speed-ups to the HTML import.
    * [143296] Fixed HTML import bug where adding a <br> tag after a table
      would cause two empty lines to be inserted instead of one.
    * [144637, 144653] Ensured that the user state property of QTextBlock is
      now preserved.
    * [140147] Fixed layout bug where the document size would not be updated
      properly.
    * [151526] Fixed problem where the margins of an empty paragraph above a
      table would be ignored.
    * [136013] The "id" tag can now be used to specify anchors.
    * [144129] Root frame properties are now properly exported/imported.

- QTextDocumentFragment
    * QTextDocumentFragment no longer stores the root frame properties,
      the document title or the document default font when it is created
      from a document or from HTML. Use QTextDocument's toHtml() and
      setHtml() function if you want to propagate these properties to and
      from HTML.

- QTextEdit
    * [152208] Ensured that the undo/redo enabled state is preserved across
      setPlainText() and setHtml() calls.
    * [125177] Added a print() convenience function that makes it possible
      to support QPrinter::Selection as selection range.
    * [126422] Fixed bug in copy/paste which could cause the background
      color of pasted text to differ from that of the copied text.
    * [147603] Fixed various cases where parts of a text document would be
      inaccessible or hidden by the scroll bars.
    * [148739] Fixed bug where setting the ensureCursorVisible property
      would not result in a visible cursor.
    * [152065] Fixed cases where currentCharFormatChanged() would not be
      emitted.
    * [154151] The undoAvailable() and redoAvailable() signals are no longer
      emitted too many times when entering or pasting text.
    * [137706] Made the semantics of the selectionChanged() signal more like
      QLineEdit::selectionChanged().

- QTextFormat
    * [156343] Fixed crash that could occur when streaming QTextFormat
      instances.

- QTextLayout
    * Fixed support for justified Arabic text.
    * [152248] Fixed assert in sub/superscript handling of fonts specified
      in pixel sizes.
    * Optimized text layout handling for pure Latin text.
    * Ensured that OpenType processing is skipped altogether if a font does
      not contain OpenType tables.
    * Fixed some issues in the shaper for Indic languages.
    * Upgraded the line breaking algorithm to the newest version
      (http://www.unicode.org/reports/tr14/tr14-19.html).
    * [140165] Changed boundingRect() to report the actual position of the
      top left line instead of incorrectly reporting (0, 0) for the top-left
      corner in every case.
    * Fixed various problems with text kerning.

- QTextStream
    * [141391] Fixed bug that could occur when reusing a text stream with
      the setString() method.
    * [133063] atEnd() now works properly with stdin.
    * [152819] Added support for reading and writing NaN and Inf.
    * [125496] Ensured that uppercasebase and uppercasedigits work as
      expected.

- QTextTable
    * [138905] Fixed bug where merging cells in a QTextTable would cause
      text to end up in the wrong cells.
    * [139074] Fixed incorrect export of cell widths to HTML when exporting
      tables containing column spans.
    * [137236] Fixed bug where a text table would ignore page breaks.
    * [96765] Improved handling of page breaks for table rows spanning
      several pages.
    * [144291] Fixed crash that could occur when using setFormat() with an
      old format after inserting or removing columns.
    * [143501] Added support for vertical alignment of table cells.
    * [136397, 144320, 144322] Various border styles and border brushes are
      now properly supported.
    * [139052] Made sure that empty text table cells get a visible
      selection.

- QtGlobal
    * Added Q_FUNC_INFO, a macro that expands to a string describing the
      function it is used in.
    * [132145] Fixed Q_FOREACH to protect against for-scoping compiler bugs.
    * Fixed a race condition in the internal Q_GLOBAL_STATIC() macro.
    * [123910] Fixed crashes on some systems when passing 0 as the
      message to qDebug(), qWarning(), and qFatal().

- QThread
    * [140734] Fixed a bug that prevented exec() from being called more than
      once per thread.
    * Optimized the currentThread() function on Unix.
    * Added the idealThreadCount() function, which returns the ideal number
      of threads that can be run on the system.

- QThreadStorage
    * [131944] Refactored to allow an arbitrary number of instances to be
      created (not just 256 as in previous versions).
    * Updated documentation, as many caveats have been removed in Qt 4.2 and
      Qt 4.3.

- QTimeEdit
    * [136043] Fixed the USER properties.

- QTimeLine
    * [145592] Fixed the time line state after finished() has been emitted.
    * [125135] Added the resume() function to allow time lines to be resumed
      as well as restarted.
    * [153425] Fixed support for cases where loopCount >= 2.

- QTimer
    * Added the active property to determine if the timer is active.

- QToolBar
    * [128156, 138908] Added an animation for the case where a tool bar is
      expanded to display all its actions when its extension button is
      pressed.

- QToolBox
    * [107787] Fixed rendering bugs in reversed mode.

- QToolButton
    * [127814] Ensured that the popup delay respects style changes.
    * [130358] Ensured that Hover events are sent to the associated QAction
      when the cursor enters a button.
    * [106760] Fixed bug where the button was drawn as pressed when using
      MenuButtonPopup as its popup mode.

- QToolTip
    * [135988] Allow tool tips to be shown immediately below the cursor
    * [148546] The usage of tool tip fading now adheres to the user settings
      on Mac OS X.
    * [145458] Tool tip fading now looks native on Mac OS X (fading out
      rather than in).
    * [145557] Fixed bug that caused tool tips to remain visible if the
      cursor left the application quickly enough on Mac OS X.
    * [143701] Fixed bug that caused tool tips to hide behind stay-on-top
      windows on Mac OS X.
    * [158794] Fixed bug on Mac OS X where isVisible() returned true even
      if the tool tip was hidden.

- QTreeView
    * [158096] Added checks to prevent items from being dropped on their own
      children.
    * [113800] When dragging an item over an item that has child items,
      QTreeView will now automatically expand after a set time.
    * [107766] Added a style option (enabled in the Windows style) to
      select the first child when the right arrow key is pressed.
    * [157790] It was possible to get in a state where clicking on a branch
      (+/- in some styles) to expand an item didn't do anything until
      another location in the view was clicked.
    * Made it possible to create a selection with a rectangle of negative
      width or height.
    * [153238] Ensured that drops on branches are interpreted as drops onto
      the root node.
    * [152868] Fixed setSelection() so that it works with negative
      y-coordinates.
    * [156522] Fixed repaint errors for selections in reversed mode.
    * [155449] Prevented the tree from having huge columns when setting the
      alignment before it is shown.
    * [151686] Hidden rows are now filtered out of the user selection range.
    * [146468] Fixed bug where the indexRowSizeHint could be incorrect in
      the case where columns were moved.
    * [138938] Fixed an infinite loop when calling expandAll() with no
      column.
    * [142074] Scroll bars are no longer shown when there are no items.
    * [143127] Fixed bug that prevented the collapsed() signal from being
      emitted when the animated property was set to true.
    * [145199] Fixed crash that could occur when column 0 with expanded
      items was removed and inserted.
    * [151165] Added the indexRowHeight(const QModelIndex &index) function.
    * [151156] Add support for hover appearance.
    * [140377] Add the expandTo(int depth) function.
    * Clicking in the empty area no longer selects all items.
    * [135727] Added the wordWrap property.
    * [121646] setSelection() now selects the item within the given
      rectangle.
    * Added the setRowSpanning(int row, const QModelIndex &parent) and
      isRowSpanning(int row, const QModelIndex &parent) functions.

- QTreeWidget
    * [159078] Fixed drag and drop bug on Mac OS X that could occur when
      dragging inside the widget.
    * [159726] Fixed crash that could occur when dragging a QTreeWidgetItem
      object with an empty last column.
    * [154092] Fixed case where the drag pixmap could get the wrong position
      when dragging many items quickly.
    * [152970] Hidden items are no longer returned as selected from the
      selectedItems() function.
    * [151211] Added the removeCellWidget() and removeItemWidget()
      functions.
    * [151149] Made the header text left-aligned instead of center-aligned
      by default.
    * [131234] Made it possible to do lazy population by introducing the
      QTreeWidgetItem::ChildIndicatorPolicy enum.
    * [134194] Added the itemAbove() and itemBelow() functions.
    * [128935] The disabled state of an item is now propagated to its
      children.
    * [103421] Added the QTreeWidgetItem::setExpandable() function.
    * [134138] Added the QTreeWidgetItem::removeChild() function.
    * [153361] Ensured that items exist before emitting itemChanged().
    * [155700] Fixed a crash in QTreeWidget where deleted items could still
      be referenced by a selection model.

- QUdpSocket
    * [142853] Now continues to emit readyRead() if the peer temporarily
      disappears.
    * [154913] Now detects datagrams even when the sender's port is invalid.

- QUndoStack
    * [142276] Added the undoLimit property which controls the maximum
      number of commands on the stack.

- QUrl
    * [134604] Fixed the behavior of the obsolete dirPath() function on
      Windows.

- QValidator
    * [34933] Added support for scientific notation.

- QVariant
    * [127225] Unloading a GUI plugin will no longer cause a crash in
      QVariant in a pure QtCore application.

- QWaitCondition
    * [126007] Made the behavior of wakeOne() consistent between Windows and
      Unix in the case where wakeOne() is called twice when exactly 2
      threads are waiting (the correct behavior is to wake up both threads).

- QWidget
    * [139359] Added the locale property to make it easy to customize how
      individual widgets display dates and numbers.
    * [155100] Fixed a regression that could cause Qt::FramelessWindowHint
      to be ignored for frameless windows.
    * [137190] Ensured that windows with masks are now rendered correctly
      with respect to window shadows on Mac OS X.
    * [139182] Added the render() function to allow the widget to be
      rendered onto another QPaintDevice.
    * [131917] Fixed bug where minimum and maximum sizes were not respected
      when using X11BypassWindowManagerHint.
    * [117896] Fixed setGeometry() to be more consistent across Mac OS X,
      Windows, X11 and Qtopia Core.
    * [132827] Allow the focus to be given to a hidden widget; it will
      receive the focus when shown.
    * Reduced the overhead of repainting a widget with lots of children.
    * Clarified the documentation for the Qt::WA_AlwaysShowToolTips widget
      attribute.
    * [154634] Ensured that the Qt::WA_AlwaysShowToolTips widget attribute
      is respected for all widgets.
    * [151858] Improved the approximation returned by visibleRegion().
    * [129486] Ensured that calling setLayout() on a visible widget causes
      its children to be shown, making its behavior consistent with the
      QLayout::addWidget() behavior.

- QWindowsStyle
    * [110784] Scroll bar and spin box arrows now scale with the widget size.
    * Given certain panel and button frames a more native appearance.
    * [142599] Ensured that a QDockWidget subclass is not required when
      using the style to draw a CE_DockWidgetTitle.

- QWindowsXPStyle
    * [150579] Fixed the use of the wrong background color for QSlider.
    * [133517] Fixed styling of the unused area in header sections.
    * [48387] Fixed styling of MDI/Workspace controls.
    * [109317] Fixed a rendering issue with tab widgets in the Silver color
      scheme.
    * [114120] Ensured that the frame property for combo boxes is respected.
    * [138444] Fixed crash that could occur when passing 0 as the widget
      argument to drawComplexControl().

- QWizard
- QWizardPage
    * New classes. Based on QtWizard and QtWizardPage in Qt 4 Solutions.
      Redesign of QWizard from Qt 3.

- QXmlParseException
    * [137998] Fixed incorrect behavior where systemId/publicId was never
      reported.

- QXmlSimpleReader
    * QXmlSimpleReader no longer reads entire files into memory, allowing
      it to handle large XML files.

- Q3DateEdit
    * [131577] Fix a bug that could occur when entering out-of-range years
      in a Q3DateEdit.

- Q3DockWindow
    * [125117] Fixed some style issues with Windows XP and Plastique styles.

- Q3GroupBox
    * Added FrameShape, FrameShadow, lineWidth, and midLineWidth properties.

- Q3ListView
    * [150781] Fixed a crash in setOpen() (previously fixed in Qt 3).

- Q3ScrollView
    * [125149] Mouse events should not be delivered if the Q3ScrollView is
      disabled.
      This fixed the case where items were still selectable when Q3ListView
      was disabled using the setEnabled() function.

- Q3SqlCursor
    * [117996] Improved support for tables and views that have fields with
      whitespace in their names.

- Q3TextEdit
    * [136214] Fixed invalid memory reads when using undo/redo
      functionality.

****************************************************************************
*                          Database Drivers                                *
****************************************************************************

- Interbase driver

    * [127724] Added support for OUT values from stored procedures. (See the
      SQL Database Drivers documentation for details.)
    * [159123] Fixed crash that could occur when fetching data from
      Interbase 2007 databases.
    * [143474] Added support for SQL security-based roles.
    * [134608] Fixed bug where queries in some cases returned empty VARCHAR
      fields if they contained non-ASCII characters.
    * [143471] Fixed bug that caused fetching of multisegment BLOB fields to
      fail in some cases.
    * [125053] Fixed bugs where NUMERIC fields were corrupted or returned as
      the wrong type in some cases.

- MySQL driver
    * [156342] Fixed bug where BINARY and VARBINARY fields were returned as
      QString instead of QByteArray.
    * [144331] Fixed bug where a query would become unusable after executing
      a stored procedure that returns multiple result sets.

- OCI driver

    * Added support for low-precision retrieval of floating point numbers.
    * [124834] Fixed bug where the binding strings failed on certain
      configurations.
    * [154518] Fixed bug where connections were not properly terminated,
      which lead to resource leaks and connection failures.

- ODBC driver

    * Increased performance for iterating a query backwards.
    * [89844] Added support for fetching multiple error messages from an
      ODBC driver.
    * [114440] Fixed bug where binding strings longer that 127 characters
      failed with Microsoft Access databases.
    * [139891] Fixed bug where unsigned ints were returned as ints.

- SQLite driver
    * [130799] Improved support for attatched databases when used with
      QSqlTableModel.
    * [142374] Improved error reporting in cases where fetching a row fails.
    * [144572] Fixed the implementation of escapeIdentifier() to improve
      support for identifiers containing whitespace and reserved words when
      used with the model classes.

- PostgreSQL driver

    * [135403] Properly quote schemas in table names ("schema"."tablename").
    * [138424] Fixed resource leak that occurred after failed connection
      attempts.

- DB2 driver

    * [110259] Fixed bug where random characters were prepended to BLOB
      fields when fetched.
    * [91441] Fixed bug where binding strings resulted in only parts of the
      strings being stored.

****************************************************************************
*                             QTestLib                                     *
****************************************************************************

  * [138388] Floating point numbers are now printed in printf's "%g" format.
  * [145643] QEXPECT_FAIL does not copy or take ownership of "comment"
    pointer.
  * [156346] Gracefully handle calls to qFatal().
  * [154013] Don't count skips as passes.
  * [145208] Display QByteArrays in convenient ways.
  * Output well-formed XML.

****************************************************************************
*                               QDBus                                      *
****************************************************************************

- Library

    * Added support for QList<QDBusObjectPath> and QList<QDBusSignature>
      to allow them to be used without first having to register the types.

    * Added support for using QtDBus from multiple threads.

    * Made it possible to marshal custom types into QDBusArgument.

    * qdbuscpp2xml:
        * [153102] Ensure that Q_NOREPLY is ignored.
        * [144663] Fixed problems with executing qdbuscpp2xml on Windows.
        * Don't require moc to be on a path listed in the PATH environment
          variable.

    * QDBusInterface:
	* Changed asserts in the QDBusInterface constructor to QDBusErrors.
    * QDBusConnection:
	* Added a separate slot for delivering errors when calling
          callWithCallback().


- Viewer

    * Moved QDBusViewer from demos to QDBus tools.
    * Added ability to get and set properties.
    * Added support for demarshalling D-Bus variants.
    * Added a property dialog for entering arguments.
    * Made QDBusObjectPath clickable in the output pane.

****************************************************************************
*                      Platform Specific Changes                           *
****************************************************************************

X11
---
    * [153346] Ensured that tablet events are not delivered while a drag and
      drop operation is in progress.
    * [141756] Ensured that the Plastique or Cleanlooks styles are not used
      as default styles when Xrender is not available.
    * [139455] Fixed QX11EmbedContainer race causing sudden unembedding of
      clients.
    * [96507] Added support for using _POSIX_MONOTONIC_CLOCK as the
      timer source (also affects Qtopia Core).
    * [128118] Fixed garbage output when calling QPixmap::grabWindow()
      on a window on a non-default screen.
    * [133119] Ensured that X11 color names are detected in the
      RESOURCE_MANAGER property.
    * [56319] Added support for _NET_WM_MOVERESIZE to QSizeGrip, which
      cooperates with the window manager to do the resizing.
    * Fixed QWidget::isMaximized() to return false when the window is
      only maximized in a single direction.
    * [67263] Fixed a bug that could cause applications to freeze while
      querying the clipboard for data.
    * [89224] Fixed the behavior of minimized Qt applications to show the
      correct icon (instead of the standard OpenWindows icon) on Solaris.
    * [116080] Ensured that the TIMESTAMP clipboard property is set using
      XA_INTEGER (as defined in the ICCCM).
    * [127556] Refactored timer accounting code to be more efficient and
      less cumbersome to maintain.
    * [132241] Add support for DirectColor visuals. Qt will now create and
      initialize a colormap when using such visuals.
    * [140737] Fixed QEventDispatcherGlib::versionSupported() to be much
      simpler.
    * Fixed a bug where QWidget::windowFlags() would not include
      Qt::X11BypassWindowManagerHint for Qt::ToolTip and Qt::Popup windows.
    * [146472] Fixed a bug where QWidget::setWindowFlags() would disable
      drag and drop operations from outside Qt applications.
    * [150352] Fixed painting errors after show(), hide(), then show()
      under GNOME.
    * [150348] Fixed a bug that would incorrectly set the Qt::WA_SetCursor
      attribute on top-level windows.
    * [135054] Fixed system palette detection code to use contrast that is
      more similar to the desktop settings.
    * [124689] Documented potential QDrag::setHotSpot() inefficiency on X11.
    * [121547] Fixed QWidget::underMouse() to ensure that the value it
      returns is correctly updated after the mouse button is released.
    * [151742] Improved robustness when executing in an X11-SECURITY
      reduced ssh-forwarded session.
    * [142009] Fixed a bug that caused an application using the Qt Motif
      Extension to freeze when trying to copy text into a QTextEdit.
    * [124723] Fixed PseudoColor detection to correctly handle cases where
      the colormap is not sequential.
    * [140484] Don't use the GLib event dispatcher if GLib version is too
      old.
    * Fixed a bug where a window would get an incorrect size after the
      second call to show().
    * [153379] Fixed shortcuts where the modifier also includes Mode_switch
      in the modifier mask; for example, Alt+F on HP-UX.
    * [154369] Fixed drag and drop to work properly after re-creating a
      window ID.
    * [151778] Fixed mouse enter/leave event platform inconsistencies.
    * [153155] Added the QT_NO_THREADED_GLIB environment variable, which
      tells Qt to use Glib only for the GUI thread.
    * Fixed restoreGeometry() to ensure that full-screen windows are moved
      to the correct position.
    * [155083] Don't use legacy xlfd fonts if we have fontconfig available
      on Solaris.
    * [150348] Fixed bug where setCursor() would not work properly after a
      setParent() call.
    * Made Plastique the default style on X11.

Windows
-------
    * Added an experimental DirectX-based paint engine.
    * [141503] Ensured that clicks inside tool windows won't cause them to
      be activated if there is no child widget to take focus.
    * [153315] Improved handling of Synaptic touchpad wheel messages.
    * [150639] Added support for CF_DIBV5 format and improved support for
      transparent images on the clipboard.
    * [146862] Improved readability of progress bar text when shown in
      the Highlight palette color.
    * [146928] Fixed issue where shortcut events were discarded when auto-
      repeat was disabled.
    * [141079] Ensured that wheel events contain button information.
    * [149367] Ensured that QMimeData::formats() returns all the available
      formats in the object.
    * [135417] Ensured that WM_SYSCOLORCHANGE does not trigger resetting of
      fonts.
    * [137023] Fixed a crash that could occur while translating mouse
      events.
    * [138349] Fixed incorrect focus handling with multiple top-level
      widgets.
    * [111211] Ensured that tool windows don't steal focus from their
      parents while opening.
    * [143812] Fixed a bug which can break the widget's ability to maximize
      after saving and restoring its state.
    * [111501] Ensured that SPI_SETWORKAREA messages trigger calls to
      QDesktopWidget::workAreaResized().
    * [141633] Fixed command line parsing for GUI applications.
    * [134984] Ensured that SockAct events are not triggered from
      processEvents(ExcludeSocketNotifiers).
    * [134164] Ensured that top-level widgets configured with
      MSWindowsFixedSizeDialogHint are centered properly.
    * [145270] Fixed mapFromGlobal() and mapToGlobal() for minimized or
      invisible widgets.
    * [132695] Fixed a potential crash that could occur when changing the
      application style after the system theme had been changed.
    * [103739] Workspace title bars now respect custom title bar heights in
      the Windows XP style.
    * [48770] Improved size grip behavior in top-level widgets.
    * [113739] Fixed an issue that could occur when using QWidget::scroll()
      with on-screen painting.
    * [129589] Added support for moving the mouse cursor to the default
      button in dialogs.
    * [139120] Added support for resolving native file icons through
      QFileIconProvider.
    * [129927] Added the QWindowsVista style to support native look and feel
      on Windows Vista.
    * [106437] Removed the Windows XP style from the list of keys supplied
      by QStyleFactory::keys() on platforms where it is not available.
    * [109814] Improved UNC path support.
    * [157261] Fixed crash that could occur when using Alt keycodes with
      text handling widgets.
    * [116307] Ensured that QEvent::WindowActivate is sent for tool windows.
    * [150346] Fixed a bug that would cause an application to exit when its
      last window (a modal dialog) was closed and a new window shown
      immediately afterwards.
    * [90144] Fixed a bug that caused QApplication::keyboardModifiers() to
      return modifiers even after they had been released.
    * [142767] Fixed a bug that allowed a QPushButton to become pressed even
      though its mousePressEvent() handler function was never called.
    * [151199] Usage of blocking QProcess API in a thread no longer hangs
      the desktop.
    * [144430] Made the shortcut system distinguish between Key_Return and
      Key_Enter.
    * [144663] Made sure qdbuscpp2xml can parse moc output on Windows.
    * [126332] Made QDBus compile on Windows platforms.
    * [133823, 160131] Fixed bug in the QWidget::scroll() overload that
      accepts a rectangle argument.

- ActiveQt
    * Ensured that, when loading a typelib file to obtain information about
      a control, the typelib is processed correctly.
    * [158990] Ambient property change events are now emitted regardless of
      the container's state.
    * [150327] ActiveQt based controls will now return the correct Extents
      depending on the size restrictions set on the widget.
    * [141296] Ensured that the ActiveQt DLL is unloaded from the same
      thread which loaded it.

- Qt Style Sheets
    * Added support for background clipping using the border-radius
      property.
    * Almost all widgets are now styleable using style sheets.
    * Added support for the -stylesheet command line option to QApplication.
    * Added support for styling through SVG.
    * Added support to allow colors and brushes to be specified as
      gradients.

Mac OS X
--------

    * qtconfig is no longer available on Mac OS X. All settings are read
      from the system's configuration.
    * [156965] Always offers a 'TEXT' type flavor for non-Pasteboard-aware
      Mac Application pastes.
    * [158087] Fixed various mouse event propagation bugs.
    * Introduced Q_WS_MAC32/Q_WS_MAC64 for 64 vs. 32-bit detection compile
      time infrastructure.
    * [156431] Introduced WA_MacAlwaysShowToolWindow to allow windows to
      behave as utility windows as opposed to floating windows.
    * [155651] Qt will now follow the HIView focus chain to allow wrapped
      HIViewRef's to take focus when appropriate.
    * [149753] Qt will not deliver mouse release events to widgets that do
      not process mouse press events (including widgets with the
      WA_MacNoClickThrough attribute set).
    * Introduced support for 64-bit Mac OS X builds. Only available on
      Mac OS X 10.5 (Leopard).
    * [145166] Ensured that CoreGraphics high quality interpolation is used
      when using SmoothPixmapTransform.
    * [134873] Ensured that the widget hierarchy is used to find a widget
      with a cursor rather than using the frontmost widget.
    * [132178] Enforced the requirement for double click detection that the
      second click must be near the previous click to prevent false double
      clicks being reported.
    * [131327] Fixed mouse propagation for top-level widgets with the
      WA_MacNoClickThrough attribute set.
    * Now entirely QuickDraw clean.
    * [155540] Ensured that asymmetic scales work with cosmetic pens.
    * [141300] Fixed an issue that prevented QFontDatabase/QFontDialog from
      showing all fonts installed on the system.
    * Fixed writing system detection in QFontDatabase.
    * [148876] Fixed bug that caused characters to be committed twice in the
      Chinese Input method.
    * Removed the use of an extra setFocus() in the event loop when a window
      is activated.
    * [152224] Fixed bug in QWidget's window state.
    * [156431] Added the WA_MacAlwaysShowToolWindow widget attribute to
      allow Mac users to create utility-window-style applications.
    * [144110] Fixed resizing of sheets on Panther.
    * [140014] Made it possible to drag QUrls on Panther.
    * [155312] Fixed bug that could occur when dragging several URLs to
      Finder and certain other applications.
    * [155244] Fixed bug that could occur when dragging a URL to Finder.
    * [153413] Fixed bug that could occur when dragging URLs between Qt applications.
    * [152450] Fixed bug that could occur when dragging URLs to applications
      such as the trash can.
    * [151158] Fixed an issue that prevented widgets from receiving drag
      events if a move event was ignored.
    * [145876] Ensured that a drag move event is always received directly
      after a drag enter event (according to the documentation).
    * [156365] Fixed event bug when dragging URLs to receivers that only
      refer to a drop location.
    * [119251] Tool tips and dialogs no longer cause full-screen windows to
      show their menu bar and the dock.
    * [147640] Fixed QScrollArea scrolling behavior when showing regions
      with dimensions between 2^15 and 2^16 pixels.
    * [158988] Ensured that a mouse enter event is now sent before a mouse
      press event upon window activation.
    * [157313] Fixed hanging bug that could occur if the system clock was
      adjusted backwards while using sockets.
    * [151411] Fixed window switching bug (Cmd + ~) that could occur when
      showing a modal dialog with a popup.
    * Ensured that changing a shortcut containing a cursor movement key now
      works correctly.
    * [143912] Fixed focus problem caused by mouse hovering over widgets
      with modal sheets.
    * [141456] Fixed activation bug exhibited by minimized windows upon
      being shown.
    * [155394] Fixed issue where a widget's move and resize state were not
      set correctly upon widget initialization.
    * [254325] Fixed sheet transparency bug.
    * [152481] Fixed crash that could occur when clicking in a window when a
      modal print dialog is showing.
    * [143835] Removed unnecessary window updates for active windows.
    * [145552] A mouse up event is now sent when a window drag has finished
      after a mouse press.
    * [146443] Ensure that, if a window is moved before it is shown for the
      first time, it is placed correctly when it is shown.
    * [141387] Fixed bug that caused two near-simultaneous mouse presses on
      different widgets to be interpreted as a single click.
    * [139087] Fixed activation for some types of shortcuts, such as
      QKeySequence(Qt::CTRL | Qt::Key_Plus).
    * Only use Roman for determining with System Fonts since Mac OS X will
      perform the necessary translation.
    * When using OpenGL, ensured that the 32-bit accumulation buffer is used
      in preference to the 64-bit accumulation buffer by default.
    * [123467] Fixed bug where the event loop would spin and not emit
      aboutToBlock() when popup menus were shown.
    * [137677] QString::localAwareCompare() now respects the sorting order
      set in the system preferences.
    * [139658] Mac OS X accessibility no longer requires that
      QApplication::exec() is called.
    * [118814, 126253, 105525] Fixed several QCombobox look and feel issues.
    * [145075] Fixed aliased line drawing bug.
    * [122826] Fixed QScrollBar painting error.
    * [131794] PixelTool and QWidget::grabWindow() now work on non-primary
      monitors.
    * [160228] The Quartz 2D-based paint engine now respects the font style
      strategy.
    * Made miscellaneous changes to make wrapping non-Qt HIViews easier.
    * Qt is now built with MACOSX_DEPLOYMENT_TARGET set to 10.3 (since Qt
      can only be run on Mac OS X 10.3 and above).
    * QSound now uses NSSound for its implementation instead of the
      deprecated C QuickTime API. This means that the QtGui library is no
      longer dependant on the QuickTime framework.
    * Added a -dwarf-2 configure option to allow people to turn on DWARF2
      debugging symbols when that is not the default.
      The ability to use DWARF2 debugging symbols was added in later version
      of the Xcode 2.x series.
    * Fixed many assertions when running against Carbon_debug.
    * Renamed the Qt::WA_MacMetalStyle attribute to WA_MacBrushedMetal.
    * Changing the Qt::WA_MacBrushedMetal attribute will now cause a
      StyleChange event to be sent.
    * The Qt translations and Qt Linguist phrase books have been added to
      the binary package.
    * [134630] Fixed loading of plugins in the case where universal plugins
      are used but the wrong architecture is accidentally read first,
      instead of returning an architecture mismatch.
    * QCursor now uses NSCursor internally instead of the deprecated
      QuickDraw functions.
    * Corrected the encoding and decoding functions for QFile to handle
      different Unicode normalization forms.

Qtopia Core
-----------

 - New font system
    * A new font subsystem has been implemented that, by default, allows
      glyphs rendered at run time to be shared between applications. A new
      pre-rendered font format (QPF2) has also been implemented together
      with a new "makeqpf" tool to generate them.
    * Support for custom font engine plugins has been added through
      QAbstractFontEngine and QFontEnginePlugin.
    * The default font family has been changed to DejaVu Sans.

- OpenGL ES
    * [126421, 126424] Added QGLWindowSurface and QGLScreen framework for
      OpenGLES (and others) on Qtopia Core. A sample implementation can be
      found in the examples/qtopiacore directory.

 - Accelerated graphics API
    * [150564] API changes in QWSWindowSurface. New functions include
      QWSWindowSurface::move() to enable accelerated movement of top-level
      windows.
    * [152755] API clarification: The windowIndex parameter to
      exposeRegion() now always refers to the window that is being changed.
    * [150569, 139550] Made API additions to QWSWindow to give QScreen
      information about the window state, window flags, and window dirty
      region
    * [150746] Added QScreen::pixelFormat() and QScreen::setPixelFormat() to
      enable drawing optimizations for some formats.

 - General fixes
    * Improved support for compiling a LSB (Linux Standard Base) compliant
      Qtopia Core library.
    * [133365] Added the QWSServer::setScreenSaverBlockLevel() function to
      make it possible to block the key/mouse event that stops the screen
      saver at a particular level.
    * Fixed QFontDatabase::addApplicationFont() for Qtopia Core.
    * [131714] Fixed performance problems with drag and drop operations.
    * [96507] Added support for using _POSIX_MONOTONIC_CLOCK as the timer
      source (also effects Qt/X11).
    * [132346] Fixed a performance bug causing unnecessary screen copies
      when using a hardware cursor.
    * [121496] Made lots of performance improvements in the VNC driver.
    * [138615] Fixed color conversion for cases where the VNC server is
      running on a big-endian machine.
    * [131321] Optimized text drawing.
    * [136282] Fixed a bug preventing QWidget::setCursor() and
      QWidget::unsetCursor() from taking effect immediately.
    * [139318] Fixed a performance bug that would cause non-visible regions
      to receive paint events.
    * [139858] Implemented acceleration for the 'pc' mouse handler.
    * [140705, 140760] Improved release of used resources (e.g, shared
      memory and hardware resources) when the application exits
      unexpectedly.
    * [144245] Fixed a problem with some cross-compilers triggered by using
      math.h functions taking a double argument when using float data.
    * Optimized QSocketNotifier activation.
    * [156511] Implemented QDirectPainter::ReservedSynchronous which makes
      a QDirectPainter object behave as a QDirectPainter region allocated
      using the static functions.
    * [94856] Fixed console switching when using the Tty keyboard driver.
    * [157705] Ensured that device parameters are passed to keyboard and
      mouse plugins.
    * [156704] Fixed QPixmap::grabWindow() for 18 and 24-bit screens.
    * [154689] Fixed the -no-gfx-multiscreen configure script option.
    * [160404] Fixed 4-bit grayscale support in QVFb and QScreen.
    * Optimized QCop communication.
    * Fixed bug in QWidget::setMask() for visible widgets.
    * [152738] Allow transparent windows to be shown on top of unbuffered
      windows.
    * [154244] Fixed bug where a client process would not terminate when
      server closed.
    * [152234] No longer send key events for one client to other client
      processes for security and performance reasons.
    * [148996] Added checks in the server to avoid buffer overruns if
      clients send malformed commands
    * [154203] Fixed mouse calibration bug with mirrored/180-degree-rotated
      touch screens.

****************************************************************************
*                      Compiler Specific Changes                           *
****************************************************************************

- MinGW
    * [119777] Removed the dependency on mingwm.dll when compiled with the
      -no-exceptions option.

****************************************************************************
*                          Tools                                           *
****************************************************************************

- Build System
    * Auto-detect Xoreax IncrediBuild with XGE technology, and enable
      distribution of moc and uic.
    * Shadow builds are now supported by nmake/mingw-make of the Qt build
      system.
    * [151184] Separated the -make options for demos and examples
    * [150610] Fixed the build system to take into account that fvisibility
      requires gcc on Unix builds.
    * [77152] Ensured that, at "make install" time, all meta-information
      files will be cleaned up to remove reference to source code path.
    * [139399] Ensured that the environment CC/CXX on Unix are taken into
      account when running the build tests.
    * [145344] Ensured that "make confclean" will remove all files
      generated by configure.
    * [145659] Added ability to disable SSE.
    * Added DWARF2 detection and support into the build system to reduce
      the debug library size.
    * Added macx-g++-64 meta-spec for Qt configuration purposes.
    * [127840] The pkgconfig files (.pc) are now placed into lib/pkgconfig.
    * [135547] Allow Windows line endings on UNIX and vice versa in
      .qt-license files.
    * [133068] GIF support is now enabled by default.
    * [137728] Fixed failed build on Mac OS X and Solaris when using the
      -separate-debug-info command line option for the configure script.
    * [137819] Added support for precompiled headers with the Intel C++
      Compiler for Linux.
    * Re-used qplatformdefs.h from linux-g++ in the linux-icc mkspec.
    * [121633] Added linux-icc-64 mkspec which is needed for building on
      some 64-bit hosts.
    * Removed cd_change_global from win32-msvc's qmake.conf file.
    * [116532] Keep intermediate manifest file in object directory instead
      of the destination directory.
    * Added a configuration type to qconfig.pri on Windows.
    * Corrected paths in Makefile generation when configuring with the
      -fast command line option.
    * Added tests to auto-detect a suitable TIFF library.
    * [152252] Fixed auto-detection of MSVC.NET 2005 Express Edition in
      configure.exe.
    * [151267] Ensured that the manifest tool does not get forward slashes
      when writing paths to manifest files.
    * [153711] Ensured that the directory separators used in .qmake.cache
      are correct for normal MinGW and Cygwin MinGW.
    * [154192] Fixed a problem with configure.exe executing non-existing
      scripts.
    * [128667] Added a confclean build target on Windows for the top-level
      project file.


- Assistant
    * [99923] Added a context menu for the tabs in the tab bar. Right click
      on a tab to get a list of common options.
    * Assistant now uses the "unified toolbar" look on Mac OS X.

- Designer
    * [151376] Added a context menu to the tab order editor.
    * [39163] Added a tab order editor shortcut - using Ctrl with the left
      mouse button makes it possible to start ordering from the selected
      widget.
    * [159129] Fixed a crash in the tab order editor.
    * Improved snapping behavior for multi-selections and negative
      positions.
    * [126671] Made it possible to move widgets by using the cursor keys
      without modifiers. The Shift modifier enables resizing, the Control
      modifier enables snapping behavior.
    * [111093] Added a file tool bar.
    * [156225] Fixed the delete widget command for cases where the deleted
      widget is a child of a QSplitter widget.
    * [101420] Improved the WYSIWYG properties of forms with respect to the
      background colors used.
    * [112034] Enabled Ctrl + drag as a shortcut for copying actions in
      menus and tool bars.
    * [128334] Double clicking on a widget now invokes the default action
      from its task menu.
    * [129473] Fixed bug in the handling of default tab orders.
    * [131994] Made it possible to set the tab order for checkable group
      boxes.
    * Added new cursor shapes.
    * [137879] Improved the editor for key sequence properties.
    * [150634] Improved refreshing behavior of all properties after property
      changes.
    * [147655] Fixed shadow build issues.
    * [151567, 149966] Ensured that object names are unique.
    * [80270] Fixed bug with saving icons taken from resources which are
      specified with aliases.
    * [152417] Fixed loading/saving of header labels of Q3Table widgets.
    * Added the QColumnView widget to the widget box.
    * Added support for new margin (left, top, right and bottom) and spacing
      (horizontal and vertical) properties of the layout classes.
    * [146337] Ensure that the margin and spacing properties are not saved
      if they have the default values.
    * Fixed layout handling in Q3GroupBox
    * [124680] Ensured that the correct pages are displayed when selecting a
      QStackedWidget page in the object inspector.
    * [88264] Ensured that breaking a nested layout doesn't break the parent
      container's layout.
    * [129477] Added support for dynamic properties via the context menu in
      the property editor.
    * [101166] Added an "Add separator" action to the standard context menu.
    * [132238] Added a "Recent files" button to the New Form dialog.
    * [107934] Updated the font anti-aliasing property from a boolean
      property to a property with 3 values.
    * [155464] Added a German translation.
    * [146953] Enabled support to allow widgets to be dragged onto the
      object inspector.
    * [152475] Ensured that the widget box saves and restores its state.
    * [111092] Added support to allow images to be dragged from the resource
      editor and dropped onto the action editor or icon properties in the
      property editor.
    * [111091] By default, icon dialogs now open to show the resource
      browser.
    * [152475] Added a button to load newly found custom widget plugins to
      the plugin dialog.
    * [151122] Added warnings for custom widget plugin issues such as load
      failures and class name mismatches.
    * [138645] Improved the form preview on Mac OS X, provided a close
      button and a menu entry.
    * [103801] Made buddy editing possible for custom widgets derived from
      QLabel.
    * [148677] Added a font chooser for tool windows.
    * [107233] Made the grid customizable, provided default and per-form
      grid settings.
    * [149325] Provided a form editor context menu in the object inspector.
    * [147174] Changed the elide mode and improved column resizing behavior
      of property editor and object inspector.
    * [147317] Improved handling for switching user interface modes,
      preventing the geometries of form window from being changed.
      Made 'Bring to front' deiconify windows.
    * [146629] Fixed never ending loop on Linux triggered by scrolling
      quickly through the pages of a QStackedWidget.
    * [145806] Enabled KDialog to be used as a template.
    * [142723] Enabled the pages of QStackedWidget, QTabWidget and QToolBox
      to be promoted.
    * [105916] Enabled QMenuBar to be promoted.
    * [147317] Improved the New Form dialog.
    * [95038] Fixed handling of layout defaults.
    * [103326] Made it possible to make connections to form signals.
    * [145954] Added a new dialog for promoted widgets with the ability to
      specify global include files.
      Added promotion candidates to the form's context menu.
    * [127232] Ensured that global include files returned by
      QDesignerCustomWidgetInterface::includeFile() are handled correctly.
    * [139985] Improved handling of layouts for custom widgets.
    * [99129] Made custom implementations of QDesignerMemberSheetExtension
      work correctly.
    * [87181] Added support for setting properties on items in a multi-
      selection.
      Added support for sub-properties. For example, changing the font size
      of a multi-selection does not overwrite other font settings.
      Added undo-support for property comments.
    * [135360] Added tooltips to the property editor, action editor and
      object inspector.
    * [103215] Added handling of escaped newline characters for text
      properties.
      Added support for validators and syntax highlighting for style sheets.
    * [135468] Added support for tool bar breaks.
    * [135620] Fixed several issues concerning handling of properties of
      promoted widgets.
    * [109077] Provided multi-selection support in the object inspector.
    * [133907] Made in-place editing of plain label texts possible.
    * [134657] Fixed table widget editor.
    * [90085] Made the resource editor consume a little less horizontal
      screen real estate.
    * [105671] Added support to allow main windows to be maximized while
      being previewed.
    * Added a style sheet editor.

- Linguist
    * Translations can be exported to and imported from XLIFF files.
    * [136633] Fixed "Find" so that it searches in comments.
    * [129163] Fixed bug that prevented "Next Unfinished" from working if
      there was no selected item.
    * [125131] Made the translation loading behavior consistent with
      Assistant and Designer.
    * [125130] Added the -resourceDir command line argument for consistency
      with Assistant and Designer, to allow the path of translation files
      to be specified.
    * [124932] XML files (.ts and .xlf) are now written with platform-
      specific line endings.
    * [128081] Ensure that the tree view does not lose focus when the up
      and down cursor keys are used for navigation.
      Use Shift+Ctrl+K and Shift+Ctrl+L instead if you really want this
      behavior.
    * [139079] Added a DTD to document the TS file format.

- lupdate
    * Made some small improvements in lupdate's .pro file parser.
      Fixed bug in inclusion of relative .pri files.
    * [140581] Improved namespace/context parsing.
    * [142373] Fixed bug when running lupdate on a SUBDIRS .pro file that
      prevented TS files from being created.
    * [135991] Ensure that .pro file comments are handled correctly when
      they occur within a list of several variable assignments.
    * [154553] Fixed bug with CODECFORTR that caused saving of incorrect
      characters.

- rcc
    * [158522] By default compression is now set to the zlib default
      (normally level 6).
    * [133837] Allow absolute paths in .qrc files (accessible through the
      original filesystem path).
    * [146958] No longer returns error when a .qrc is empty. A (mostly)
      empty file is generated instead.

- moc
    * [149054] Fixed parsing of old-style C enums.
    * [145205] Ensured that a warning is given when a known interface
      (marked with Q_DECLARE_INTERFACE) is subclassed that is not mentioned
      in Q_INTERFACES.
    * [97300] Allow @file to be given as the options input file to handle
      command lines larger than allowed by the operating system.

- uic
    * [144383] Added checks to prevent generated code from calling
      ensurePolished() before each constructor is finished.
    * [138949] Ensured that font and size policy instances are reused in
      generated code.
    * [141350] Ensured that color brushes are reused in generated code.
    * [141217] Improved handling of include files of Qt 3 classes.
    * [144371] Ensure that each form's objectName property is not set in
      setupUi() to avoid problems in cases where the name was already set.
    * Added support for the QWidget::locale property.
    * [141820] Fixed generation of connections in the form.
    * [137520] Ensured that code to set toolTip, statusTip and whatsThis
      properties is not generated when the corresponding QT_NO_*
      preprocessor macros are defined.
    * [128958] Ensured that static casts are not used in generated code.
    * [116280] Added support for qulonglong and uint types.

-uic3
    * [137915] Added functionality to extract images via the -extract
      command line option.
    * [129950] Added the -wrap command line option which specifies that a
      wrapper class which is Qt 3 source compatible should be generated.

- qmake
    * [121965] Implemented DSW (Workspace files) generation for MSVC 6.0
      users.
    * [132154] Added support for /bigobj option in the vcproj generator.
    * Fixed crash with dependency analysis.
    * Ensure that cleanup rules are not added for extra compilers with no
      inputs.
    * LEX/YACC support has been moved into .prf files.
    * [156793] Introduced PRECOMPILED_DIR for PCH output (defaults to
      OBJECTS_DIR).
    * [257985] Fixed qmake location detection bug.
    * Ensured that empty INCLUDEPATH definitions are stripped out.
    * Allow QMAKE_UUID to override qmake deteremined UUID in the vcproj
      generator.
    * [151332] Ensured that .pc files are terminated with an extra carriage
      return.
    * [148535] Introduced QMAKE_FRAMEWORKPATH and used it internally.
    * [127415] Fixed object_with_source.
    * [127413] Introduced QMAKE_FILE_IN_PATH placeholder for extra
      compilers.
    * [95975] Replaced QMAKE_FILE_IN for custom build steps in DSP
      generator.
    * [141749] Added checks to prevent cyclical dependencies.
    * [146368] Ensured that GNUmake .d files are removed upon distclean.
    * Improved extensibility of the precompiled header support to allow icc
      precompiled headers.
    * [147142] Short-circuit previously seen library paths to avoid
      cyclical .prl processing.
    * [144492] Ensured that INSTALL_PROGRAM is set for INSTALLS in
      macx-xcode projects.
    * [143720] Extra compilers will now depend upon the input file
      automatically.
    * Introduced QMAKE_DISTCLEAN for extra files to be removed upon
      invocation of "make distclean".
    * [133518] Reduced the noise created by qmake warnings.
    * [108012] Brought macx-xcode into line with macx-g++ with regards to
      custom bundle types.
    * [128759] Added support for spaces in paths to linked libraries.
    * [83445] Made sure that "make distclean" in a library with a DESTDIR
      really does remove the destination symbolic links.
    * The subdir generator will now use - to separate target words and _ to
      separate internally appended words.
    * [125557] Fixed broken generation of dependencies for extra compilers.
    * Ensured that the QMAKE_QMAKE variable is given a reasonable default
      before parsing and evaluating project files.
    * For Unix/Mac OS X, configure now has an -optimized-qmake option that
      allows people to build qmake with optimizations.
      This is disabled by default as older versions of some compilers take
      a long time to build an optimized qmake. qmake is already built with
      optimizations on Windows.
    * [130979] Made the incremental link option case-insensitive.
    * Ensured that paths for custom build steps in vcproj files have the
      correct seperators.
    * Avoid duplicate dependency paths, reduce file stats.
    * [91313] Ensured that multiple commands in the DSP generator are
      separated with \n\t characters.
    * [108681] Added checks to avoid problems with uic3 files having
      dependencies on themselves.
    * [130977] Added support for non-flat output for vcproj files with
      single configuration.
    * [134971] Added support for more compiler and linker options for
      vcproj files, and added catch-all cases which add options to
      AdditionalOptions variables.
    * [140548] Fixed escaping of the custom build step for image
      collections.
    * [114833] Ensured that paths in vcproj always have native filing
      system separators.
    * [144020] Only allow CONFIG+=staticlib for TEMPLATE==lib.
    * [97300] Handle large number of include paths on Windows for moc by
      using temporary files. (See moc changes.)
    * [150519] Ensured that qmake is compiled with the correct mkspec on
      Windows.
    * [148724] Added manifest files to project clean up.
    * [123501] Added /LIBPATH to AdditionalLibraryPaths in vcproj files.
    * [80526] Made sure that extra compiler commands are not corrupted due
      to path separator fixing.
    * [109322] Moved hardcoded extra compilers, yacc and lex, into the PRF
      (feature) system.
    * [101783] Added a _DEBUG to Resource Tool for debug builds on Windows.
    * [145074] Added a custom build step on input files, for extra compiler
      files with built-in compilers for the output files.
    * [150961] Added support for QMAKE_PRE_LINK in the DSP and VCPROJ
      generators.
    * Added checks to avoid double escaping of DESTDIR_TARGET file paths in
      Windows Makefiles.
    * Ensured that file paths for COPY_FILE and QMAKE_BUNDLE are escaped.
    * [83765] Ensured that input files instead of output files are added to
      extra compiler steps under certain conditions.
    * [101482] Fixed relative path handling for RC_FILE.

****************************************************************************
*                          Plugins                                         *
****************************************************************************

- QTiffPlugin
    * [93364] Added support for the TIFF image format.