1 Qt 4.3 introduces many new features as well as many improvements and
2 bugfixes over the 4.2.x series. For more details, see the online
3 documentation which is included in this distribution. The
4 documentation is also available at http://qt.nokia.com/doc/4.3
6 The Qt version 4.3 series is binary compatible with the 4.2.x series.
7 Applications compiled for 4.2 will continue to run with 4.3.
9 The Qtopia Core version 4.3 series is binary compatible with the 4.2.x
10 series except for some parts of the device handling API, as detailed
11 in Platform Specific Changes below.
13 Some of the changes listed in this file include issue tracking numbers
14 corresponding to tasks in the Task Tracker:
16 http://qt.nokia.com/developer/task-tracker
18 Each of these identifiers can be entered in the task tracker to obtain
19 more information about a particular change.
21 ****************************************************************************
23 ****************************************************************************
28 - Configuration/Compilation
29 * Fixed OpenBSD and NetBSD build issues.
32 * Added information about the OpenSSL exception to the GPL.
34 - Documentation and Examples
35 * Added information about the TS file format used in Linguist.
36 * Moved platform and compiler support information from
37 website into the documentation.
38 * Added an Accessibility overview document.
39 * Added new example to show usage of QCompleter with custom tree models.
42 * Added a Slovak translation of Qt courtesy of Richard Fric.
43 * Added a Ukrainian translation of Qt courtesy of Andriy Rysin.
44 * Added a Polish translation of the Qt libraries and tools courtesy of
45 Marcin Giedz, who also provided a Polish phrasebook for Qt Linguist.
46 * [155464] Added a German translation for Qt Designer.
48 - Added support for the CP949 Korean Codec.
50 - [138140] The whole Qt source compiles with the QT_NO_CAST_FROM_ASCII
51 and QT_NO_CAST_TO_ASCII defines and therefore is more robust when
54 - Added support for HP-UX 11i (Itanium) with the aCC compiler
56 - Changed dialogs to respond much better to the LanguageChange event.
57 (i.e. run time translation now works much better.)
60 * [61295] Added Qt::BlockingQueuedConnection connection type, which
61 waits for all slots to be called before continuing.
62 * [128646] Ignore optional keywords specified in SIGNAL() and SLOT()
63 signatures (struct, class, and enum).
64 * Optimize emitting signals that do not have anything connected to them.
66 - [121629] Added support for the MinGW/MSYS platform.
68 - [102293] Added search path functionality (QDir::addSearchPath)
70 - Almost all widgets are now styleable using Qt Style Sheets.
72 Third party components
73 ----------------------
75 - Updated Qt's SQLite version to 3.3.17.
77 - Updated Qt's FreeType version to 2.3.4.
79 - Updated Qt's libpng version to 1.2.16.
81 - Added libtiff version 3.8.2 for the TIFF plugin.
83 ****************************************************************************
85 ****************************************************************************
88 * [138210] Ensured strictly alternating ordering of signals resulting
89 from auto-repeating shortcuts. Fixed a repeat timer bug that cause
90 cause infinite retriggering to occur.
91 * [150995] Fixed bug where non-checkable buttons take focus when
93 * [120409] Fixed bug where the button was set to unpressed when the
94 right mouse button was released.
97 * [111503] Ensured that focus is given back to the view when the Tab key
98 is pressed while inside an editor.
99 * [156290] Use slower scrolling when the ScrollMode is set to
101 * Ensured that the item view classes use the locale property when
102 displaying dates and numbers to allow easy customization.
103 * Fixed a repaint issue with the focus rectangle in cases where
104 selection mode is NoSelection.
105 * [147422] Detect when persistent editors take/lose focus and update the
107 * [146292] Items are now updated even if they contain an editor.
108 * [130168] Auto-scrolling when clicking is now delayed to allow
109 double-clicking to happen.
110 * [139247] Fixed bug where clicking on a partially visible item was
111 triggering a scroll and the wrong item was then clicked.
112 * [137729] Use dropAction() instead of proposedAction() in
113 QAbstractItemView::dropEvent().
114 * Fixed a bug that prevented keyboardSearch() from ignoring disabled
116 * [151491] Ensured that we pass a proper MouseButtonPress event in
117 QAbstractItemView::mouseDoubleClickEvent().
118 * [147990] Ensured that double-clicking does not open an editor when
119 the edit trigger is set to SelectedClicked.
120 * [144095] Ensured that sizeHintForIndex() uses the correct item
122 * [140180] Ensured that clicking a selected item clears all old
123 selections when the view is using the ExtendedSelection selection mode
124 and SelectedClicked as an edit trigger.
125 * [130168] Fixed bug where double clicking on partially visible items
126 would not activate them.
127 * [139342] Allow editing to be started programatically, even if there
128 are no edit triggers.
129 * [130135] Added public slot, updateIndex(const QModelIndex &index).
131 - QAbstractProxyModel
132 * [154393] QAbstractProxyModel now reimplements itemData().
135 * [76155] Fixed bug where the slider handle did not stop under the
139 * [128546] Fixed bug where an error was emitted with the wrong type.
142 * Added preliminary support for the upcoming IAccessible2 standard.
143 * Made improvements to most of the accessible interfaces.
144 * [154534] Ensured that our accessible interfaces honour
145 QWidget::setAccessibleName() and QWidget::setAccessibleDescription().
146 * Avoid crash if QAccessibleInterface::object() returns 0.
147 (It is absolutely legal to return a null value.)
150 * Added a flash() method for marking windows that need attention.
151 * [86725] Allow the -style command line argument to override a
152 style set with QApplication::setStyle() before QApplication
154 * [111892] Fixed a bug that caused Qt to steal all input when
155 connecting the QAction::hovered() signal to a slot that called
156 QMainWindow::setEnabled(false).
157 * [148512] Fixed QApplication::keyboardModifiers() to update
158 correctly when minimizing the window when Qt::MetaModifier is held
160 * [148796] Fixed a bug that prevented Qt from detecting system font
162 * [154727] Prevent a crash when a widget deletes itself in an key
163 event handler without accepting the event.
164 * [156484] Fixed a bug where lastWindowClosed() was emitted for each
165 top-level window when calling QApplication::closeAllWindows().
166 * [157667] Ensured that widgets with the Qt::WA_DeleteOnClose property
167 set are properly deleted when they are closed in the dropEvent()
168 handler following a drag that was started in the same application.
169 * [156410] Implemented QEvent::ApplicationActivate and
170 QEvent::ApplicationDeactivate on all platforms. Note that
171 QEvent::ApplicationActivated and QEvent::ApplicationDeactivated are
175 * [126321] Fixed several flaws in the inline assembler implementations
176 for several architectures (ARM, i386, PowerPC, x86-64).
177 * [133043] Added support for atomic fetch-and-add.
180 * New Class. Needed for authentication support in the Network module.
181 Currently supports the Basic, Digest-MD5 and NTLM authentication
185 * [158816] Fixed crash in operator~().
188 * Don't set maximum width for month/year buttons.
189 * Ensured that the QPalette::Text role is used for default text.
190 * Added a date editor which can be configured with the dateEditEnabled
191 and dateEditAcceptDelay properties.
192 * [137031] Ensured that grid lines are drawn properly when headers are
194 * [151828] Ensured that the language can be set with
195 QCalendarWidget::setLocale().
198 * Updated the Unicode tables to Unicode 5.0.
199 * Added foldCase() and toTitleCase() methods.
200 * Added public API to handle the full Unicode range.
203 * [129506] Sliders now look and behave correctly in both reversed and
204 inverted appearance modes.
205 * [131490] Group boxes no longer reserve space for their titles when no
207 * [134344] A sunken frame is now used to indicate checked menu items
209 * [133691] Improved the appearance of spin boxes and buttons when used
210 against dark backgrounds.
211 * [154499] Fixed a rendering issue with disabled, checked push buttons.
212 * [154862] Fixed an issue causing combo boxes to sometimes show clipped
214 * Slider appearance is now based on Clearlooks Cairo and the performance
215 on X11 has been improved.
216 * The appearance of tab bars when used with Qt::RightToLeft layout
217 direction has been improved.
218 * Dock widget titles are now elided if they are too long to fit in the
222 * Ensured that calling clear() on the Mac OS X clipboard really clears
224 * [143927] Don't drop alpha channel information when pasting pixmaps on
226 * The Mac OS X clipboard support now understands TIFF information and
227 can export images as TIFF as well.
228 * [145437] Fixed crash that could occur when calling setMimeData() twice
230 * QMacMime now does correct normalization of file names in a URL list
231 from foreign applications.
234 * [140150] Fixed bug where QColor::isValid() would return true for
235 certain invalid color strings.
236 * [120367] Added QColor::setAllowX11ColorNames(bool), which enables
237 applications to use X11 color names.
238 * Fixed internal errors in toHsv() due to inexact floating point
242 * [131160] Enabled the color dialog to be used to specify an alpha color
246 * A new widget that provide a column-based implementation of
250 * Significantly reduced the construction time of this widget.
251 * [155614] Speeded up addItem() and addItems().
252 * [150768] Ensured that inserting items doesn't change the current text
253 on editable combo boxes.
254 * [150902] Ensured that only the left mouse button can be used to open
256 * [150735] Fixed pop-up hiding behind top-level windows on Mac OS X.
257 * [156700] Fixed bug where the popup could be closed when pressing the
259 * [133328] Fixed bug where disabled entries were not grayed out.
260 * [134085] Fixed bug where the AdjustToContents size policy had no
262 * [152840] Fixed bug where QComboBox would not automatically scroll to
264 * [90172] Fixed bug where the sizeHint() implementation iterated over
265 all icons to detect their availability.
268 * Significantly reduced the construction time of this widget.
269 * Added support for lazily-populated models.
270 * [135735] Made QCompleter work when used in a QLineEdit with a
272 * Added the wrapAround property to allow the list of completions to
273 wrap around in popup mode.
274 * Added support for sharing of completers, making it possible for the
275 same QCompleter object to be set on multiple widgets.
276 * [143441] Added support for models that sort their items in descending
280 * Added support for posted event priorities.
281 * [34019] Added the QCoreApplication::removePostedEvents() overload
282 for removing events of a specific type.
283 * Documented QCoreApplication::processEvents() as thread-safe;
284 calling it will process events for the calling thread.
285 * Optimized delivery of QEvent::ChildInserted compatibility events.
286 * [154727] Enabled compression of posted QEvent::DeferredDelete events
287 (used by QObject::deleteLater()) to prevent objects from being deleted
288 unexpectedly when many such events are posted.
289 * Ensured that duplicate entries in library paths are ignored.
292 * New Class. Provides support for the MD4, MD5 and SHA1 hash functions.
295 * [154593] Fixed hotspot bug for cursors on Mac OS X.
296 * [153381] Fixed crash in the assignment operator in cases where the
297 cursor was created before a QApplication instance.
300 * [125493] Added addMapping(QWidget *, int, const QByteArray &) and
301 mappedPropertyName(QWidget *) functions.
304 * [151789] Allow passing of date-only format to QDateTime::fromString()
305 (according to ISO 8601).
306 * [153114, 145167] Fixed bugs that could occur when parsing strings to
308 * [122047] Removed legacy behavior which assumed that a year between 0
309 and 99 meant a year between 1900 and 1999.
310 * [136043] Fixed the USER properties.
313 * [111557, 141266] Improved the behavior of the widget with regard to
314 two-digit years. Made stepping work properly.
315 * [110034] Don't change current section when a WheelEvent is received.
316 * [152622] Don't switch section when a FocusInEvent is received if the
318 * Fixed a bug that would cause problems with formats like dd.MMMM.yyyy.
319 * [148522] Ensured that the dateRange is valid for editors that only
321 * [148725] Fixed a bug with wrapping and months with fewer than 31 days.
322 * [149097] Ensured that dateTimeChanged() is emitted, even if only date
324 * [108572] Fixed the behavior to ensure that typing 2 into a zzz field
325 results in a value of 200 rather than 002.
326 * Ensured that the next field is entered when a separator is typed.
327 * [141703] Allow empty input when only one section is displayed.
328 * [134392] Added a sectionCount property.
329 * [134392] Added sectionAt(), currentSectionIndex(), and
330 setCurrentSectionIndex() functions.
331 * Added a NoButtons value for the buttonSymbols property.
334 * [135002] Ensured that the resized() signal is emitted after the
335 desktop is resized on Mac OS X.
338 * [151897] Ensured that, even with tracking disabled, the signal
339 sliderMoved() is always emitted.
340 * [70209] Added support for the inverted appearance property.
343 * [131396] Fixed a crash in QDialog::exec() that could occur when the
344 dialog was deleted from an event handler.
345 * [124269] Ensured that the size grip is hidden for extended dialogs.
346 * [151328] Allow the use of buttons on the title bar to be explicitly
347 specified on Mac OS X.
350 * [154493] Moved the Action role before the Reject role on Windows to
351 conform with platform guidelines.
354 * [136380] QDir's permission filters on Unix now behave the same as on
355 Windows (previously the filters' behavior was reversed on Unix).
356 * [158610] Passing QDir::Unsorted now properly bypasses sorting.
357 * [136989] Ensured that removed dirs are reported as non-existent.
358 * [129488] Fixed cleanPath() for paths with the "foo/../bar" pattern.
361 * New class. Introduced to provide a convenient way to examine the
362 contents of directories.
365 * [130773] Ensure that dock widgets remember their undocked positions
367 * Added support for vertical title bars, which can be used to save space
369 * Added support for setting an arbitrary widget as a custom dock widget
371 * [141792] Added the visibilityChanged() signal which is emitted when
372 dock widgets change visibility due to show or hide events, or when
373 being selected or deselected in a tabbed dock area.
374 * Added the dockLocationChanged() signal which is emitted when dock
375 widgets are moved around in a QMainWindow.
376 * [135878] Titlebars now support mnemonics properly.
377 * [138995] Dock widget titlebars now correctly indicate their activation
379 * [145798] Ensured that calling setWindowTitle() on a nested, docked
380 dock widget causes the title in the tab bar to be updated.
383 * [128594] Ensured that comment nodes are indented correctly when
384 serializing a document to a string.
385 * [144781] Fixed crash that would occur when the owner document of new
386 attributes was not adjusted.
387 * [107123] Ensured that appendChild() does not erroneously add two
388 elements to document nodes in certain cases.
391 * [99254] Allow higher settings for decimals.
394 * [124962] Added QDrag::exec() to allow the default proposed action to
398 * [128352] Refactored the backend on Windows with major performance
399 improvements; in particular line and character reading is now much
401 * [146693] Fixed a lock-up in copy().
402 * [148447] QFile now supports large files on Windows where support is
404 * Generally improved support for stdin.
405 * Byte writing performance has improved on all platforms.
406 * [151898] Added support for reading lines with an embedded '\0'
410 * Updated the dialog to use native icons.
411 * Made general improvements to the dialog's performance.
412 * Added a sidebar to show commonly used folders.
413 * [134557] Added the ability to use a proxy model.
414 * Added dirEntered() and filterSelected() signals, previously found in
416 * [130353] Fixed Qt/Mac native file dialog pattern splitting
417 * [140332] Made the dialog respond much better to the LanguageChange
419 * [154173] Fixed a memory deallocation error.
420 * Made the selected filter argument work for native Mac OS X file
424 * Ensured that the value of Mac FS hidden flag is returned for symbolic
425 links and not their targets; i.e., hidden links are not followed.
426 * [128604] Introduced isBundle() for Mac OS X bundle types.
427 * [139106] Fixed bug that could cause drives to be reported as hidden
431 * [155548] Reliability fixes.
432 * When in polling mode, send change notification when file permissions
434 * [144049, 149637] Fixed a bug that prevented watching a directory
435 for notification on Windows.
436 * [143381] Fixed bug that caused addPath() and removePath() to fail when
437 passing an empty string.
440 * [128713, 129126] Made the focus frame visible in more situations on
444 * X11: Add a method to retrieve the FreeType handle from the QFont.
447 * [132826] Fixed a bug that could cause the popup list to be shown
449 * [155614] Speeded up addItem() and addItems().
450 * [160110] Fixed crash that could occur when setting a pixel size for
454 * [152013] Fixed bug where boundingRect() gave sizes that were too large
455 when compiled using Visual Studio 6.
456 * [145980] Added tightBoundingBox() method.
459 * [156112] Fixed bug where the default frame was not correct when
460 created without a parent and reparented afterwards.
461 * [150995] Fixed bug where setting the frame style did not invalidate
465 * Fixed bug in fileTime() on Win98 and WinME
466 * Ensured that the working directory of a Windows shortcut is set when
468 * Improved the reliability of buffered reads on platforms that cache
472 * [107381] Greatly improved LIST support; QFtp now supports more server
474 * [136008] Improved tolerance for servers with no EPRT/EPSV support.
475 * [150607] Fixed a race condition when using ActiveMode for uploading.
478 * [158971] Fixed a resource leak in the GL texture cache.
480 - QGLFramebufferObject
481 * Made it possible to configure the depth/stencil buffer in a
483 * Added support for floating point formats for the texture in a
487 * [138393] Made QGLPixelbuffer work under Windows on systems without the
488 render_texture extension.
491 * [145621] Avoided a QGLFormat object copy when checking the buffer
492 format with the doubleBuffer() function.
493 * [100519] Rewritten renderText(). It now supports Unicode text, and it
494 doesn't try to overwrite previously defined display lists.
497 * [151271] Fixed crash that could occur when calling update on items
498 that are not fully constructed.
499 * Ensured that the selected state no longer changes state twice
500 for each mouse click.
501 * [138576] setParent() now correctly adds the child to the parent's
503 * [130263] Added support for partial obscurity testing with the
504 isObscured(QRectF) function.
505 * [140725] QGraphicsTextItem is now also selectable when editable.
506 * [141694] QGraphicsTextItem now calls ensureVisible() if it has input
508 * [144734] Fixed bugs in unsetCursor().
509 * [144895] Improved bounding rectangle calculations for all standard
511 * Added support for QTransform.
512 * [137055] Added QGraphicsItem::ItemPositionHasChanged and
513 ItemTransformHasChanged.
514 * Added several convenience functions.
515 * [146863] Added ItemClipsToShape and ItemClipsChildrenToShape clipping
517 * [139782] Greatly improved hit and selection tests.
518 * [123942] Added the ItemIgnoresTransformations flag to allow items to
519 bypass any inherited transformations.
520 * All QGraphicsItem and standard item classes constructors have now had
521 their scene arguments obsoleted.
522 * [150767] Added support for implicit and explicit show and hide.
523 Explicitly hidden items are no longer implicitly shown when their
525 * [151522] Fixed crash when nesting QGraphicsItems that enabled child
527 * [151265] Cursors now change correctly without mouse interaction.
528 * Added deviceTransform() which returns a matrix that maps between item
529 and device (viewport) coordinates.
530 * Added the ItemSceneChange notification flag.
531 * [128696] Enabled moving of editable text items.
532 * [128684] Improved highlighting of selected items.
534 - QGraphicsItemAnimation
535 * [140522] Fixed special case interpolation bug.
536 * [140079] Fixed ambiguity in the position of insertions when multiple
537 items are inserted for the same step in an animation.
540 * [130614] Added the invalidate() function for resetting the cache
541 individually for each scene layer.
542 * [139747] Fixed slow memory leaks caused by repeatedly scheduling
544 * [128581] Added the selectionChanged() signal which is emitted when
545 the selection changes.
546 * Introduced delayed item reindexing which greatly improves performance
548 * The BSP tree implementation has undergone several optimizations.
549 * Added new bspTreeDepth property for fixating the BSP tree depth.
550 * Optimization: Reduced the number of unnecessary index lookups.
551 * [146518] Added the selectionArea() function.
553 - QGraphicsSceneWheelEvent
554 * [146864] Added wheel orientation.
557 * [136173] Hit-tests are now greatly improved for thin items.
558 * [133680] The scroll bars are now shown at their maximum extents
559 instead of overflowing when the transformed scene is larger than
560 the maximum allowed integer range.
561 * [129946] Changing the viewport no longer resets the acceptsDrops()
563 * [139752] ScrollHandDrag is now allowed also in non-interactive mode.
564 * [128226] Fixed rubber band rendering bugs (flicker and transparency).
565 * [144276] The selection is no longer reset by scroll-dragging.
566 * Added support for QTransform.
567 * [137027] Added new viewportUpdateMode() property for better control
568 over how QGraphicsView schedules updates.
569 * Several convenience functions have been added.
570 * [146517] Added rubberBandSelectionMode() for controlling how items are
571 selected with the rubber band.
572 * [150344] Fixed the scroll bar ranges to prevent the scroll bars from
573 hiding parts of the scene.
574 * [150321] Added new optimizationFlags() property, allowing individual
575 features to be disabled in order to speed up rendering.
576 * The level of detail algorithm has been changed to improve support for
577 transformations that change the view's aspect ratio.
578 * [154942] Fixed background rendering in render().
579 * [156922] render() now properly supports all transformations, source
580 and target rectangles.
581 * [158245] Calling setScene(0) now implicitly calls update().
582 * [149317] Added NoViewportUpdate to the set of modes that can be set
586 * [156497] Fix a one-off error that could cause the bottom button in
587 a QDialogButtonBox to be cropped.
590 * This widget now uses Qt::NoFocus as its default focus policy.
591 * [99569] Improved performance, providing up to a 2x speed increase for
593 * [146292] Fixed bug that made it impossible to resize the last section
594 under certain circumstances.
595 * [144452] Fixed bug that caused setDefaultAlignment() to have no
597 * [156453] Fixed column resizing bug that could cause branches in one
598 column to be drawn in the next.
599 * [142640] Ensured that the Qt::SizeHintRole is used when available.
600 * [142994] Hidden items are now restored to their original size when
602 * [127430] Added saveState() and restoreState().
603 * [105635] Added support for drag selecting.
606 * [141946] No longer stops working after QCoreApplication is destroyed.
607 * [152805] Now periodically reinitializes DNS settings on Unix.
610 * [139575] Fixed state for servers that use the "100 Continue" response.
611 * Added support for the HTTPS protocol.
612 * Improved proxy support.
613 * Added support for server and proxy authentication.
616 * Added cacheKey() as a replacement for serialNumber().
617 * Fixed the streaming operators.
620 * [157549] Fixed a crash that could occur when calling copy() with
621 negative coordinates.
622 * Added cacheKey() as a replacement for serialNumber().
623 * [131852] Optimized rotations by 90 and 270 degrees.
624 * [158986] Fixed painting onto an images with the Format_RGB16 image
626 * Fixed rotations by 90 and 270 degrees for images with the Format_RGB16
628 * [152850] Fixed bugs in text() and setText().
629 * Fixed a crash that could occur when passing a 0 pointer to the
630 constructor that accepts XPM format image data.
631 * [150746] Added a constructor that accepts an existing memory buffer
632 with non-default stride (bytes per line).
635 * [141781] Fixed support for double byte PPM files (>256 colors).
638 * Added support to enable compression if a plugin supports it.
641 * [115565] Disabled OK button for non-acceptable text (getInteger() and
643 * [90535] Input dialogs now have a size grip
645 - QIntValidator, QDoubleValidator
646 * Validators now use the locale property to recognize numbers
647 formatted for various locales.
650 * [145142] Ensured that text is not drawn outside the bounds of a cell.
651 * [137198] Fixed handling of cases where the decoration position is set
652 to be at the bottom of an item to prevent the text from being
653 incorrectly positioned.
654 * [142593] Take word wrap into account when calculating an item's size
656 * [139160] Ensured that the focus rectangle is shown, even for empty
659 - QItemSelectionModel
660 * Made optimizations for some common cases.
661 * [143383] Fixed incorrect behavior of hasSelection().
664 * [133589] Fixed performance problems with plain text labels.
665 * Fixed support for buddies with rich text labels.
666 * [136918] Fixed setText() to not turn off mouse tracking when the text
668 * [143063] Ensured that the mouse cursor is reset when a link is
670 * [156912] Fixed bug where the mouse cursor shape was changed to the
671 pointing hand cursor, but would not be correctly cleared afterwards.
674 * Added new features to Qt's layout system to enable:
675 - independent values for all of the four margins,
676 - independent horizontal spacing and vertical spacing in QGridLayout,
677 - non-uniform spacing between layout items,
678 - layout items to occupy parts of the margin or spacing when required
679 by the application or style.
682 * Fixed bug that caused QLibrary::load() to discard the real error
683 message if the error was something else than ERROR_MOD_NOT_FOUND.
685 * Fixed bug that prevented QLibrary::load() from loading a library with
686 no suffix (because LoadLibrary automagically appended the .dll suffix
688 * Corrected behavior of fileName() to ensure that, if we loaded a
689 library without specifying a suffix and the file found had the .dll
690 suffix, the fileName found is returned instead of the fileName
691 searched for (as was previously the case).
692 * [156276] Fixed behavior of unload() to return true only if the library
696 * [156104] Ensured that input methods are disabled when not in the
698 * [157355] Fixed drag and drop bug on Mac OS X that could occur when
699 dragging inside the widget.
700 * [151328] Ensured that the caret is removed when text is selected on
702 * [136919] Ensured that fewer non-printable characters are replaced
706 * Fixed a race-condition in QList::detach() which could cause an
707 assertion in debug mode.
710 * [136614] Fixed the behavior of Batched mode to ensure that the last
711 item of the batch is displayed.
712 * Fixed some issues with jerky scrolling in ScrollPerItem mode if the
713 grid size was different to the delegate's size hint.
714 * [113437] Prevent noticeable flicker on slow systems in Batched mode
715 by laying out the first batch immediately.
716 * [114473] Added a new property to QListView: selectionRectVisible.
717 * Fixed a bug that could cause too many items to be selected.
718 * Fixed issue that could cause list views to have incorrect scroll bar
719 ranges if their grid sizes differed from their item sizes.
720 * [144378] Improved navigation for cases where an item is taller than
722 * [148846] Fixed an issue that prevented scroll bars from being updated
723 correctly when items were moved programmatically.
724 * [143306] Improved support for keyboard navigation and selection.
725 * [137917] Shift-click extended mode selection in icon mode now selects
727 * [138411] Fixed bug where hidden items would cause drawing problems
728 when pressing Ctrl+A.
731 * [146284] Ensured that the effect of SingleSelection mode is also taken
732 into account when setSelected() is called on items.
733 * [151211] Added removeCellWidget() and removeItemWidget() functions.
736 * Updated the locale database to CLDR 1.4: more locales supported;
737 numerous fixes to existing locales.
740 * [159270] Fixed drawing of icons on buttons with no text.
741 * [146364] Fixed drawing of multi-line text for items in a QToolBar.
742 * [145346] Removed unwanted wrapping of text in a QPushButton.
743 * Fixed drawing of "Flat" group boxes.
744 * [113472] Fixed drawing of text on vertical headers when resizing.
745 * [148509] Ensured that the correct font is used for buttons and labels
746 when the application is not configured to use the desktop settings.
747 * [106100] Improved the look of push buttons with menus.
748 * Made fixes to Qt's layout system that enable more native-looking
750 * [151739] Buttons with an icon are now centered correctly.
751 * [142672] Fixed font size bug on the drop down box for QComboBox.
752 * [148832] The button on a combo box is now showing as pressed when the
753 drop down menu is shown.
754 * [147377] Ensured that combo boxes now scale correctly on Mac OS X.
755 * [143901] Fixed the highlight color for widgets such as QComboBox so
756 that it follows the system settings on Mac OS X.
757 * [151852] Fixed size calculation for QPushButton with an icon.
758 * [133263] Removed the coupling of text size and button kind, enabling
759 them to be set independently.
760 * [133263] Ensured that QPushButton respects calls to setFont().
761 * [141980] Text with small font sizes is now centered vertically correct
763 * [149631] Ensure that beveled button types are chosen if text doesn't
764 fit inside a button instead of cutting the text.
765 * [151500] Fixed incorrect QPushButton text clipping behavior.
766 * [147653] Fixed bug that caused the sort indicator to be drawn on top
767 of the text in QHeaderView.
768 * [139149] Fixed issues with CE_SizeGrip in right-to-left mode.
769 * [139311] Improved drawing of the title in QGroupBox.
770 * [128713] Ensured that drawing of the focus frame now follows pixel
772 * [142274] Made QSlider tickmark drawing more like Cocoa.
773 * focusRectPolicy() is now obsolete. This is now controlled by the
774 Qt::WA_MacShowFocusRect attribute.
775 * widgetSizePolicy() is now obsolete. This is now controlled by the
776 Qt::WA_Mac*Size attribute.
777 * [129503] Ensured that a group box without a title no longer allocates
779 * Ensured that a more appropriate width is used for push buttons.
780 * [132674] Ensured that tab bar drawing is correct when the tab's font
781 isn't as tall as the default.
782 * [126214] Ensured that the QSizeGrip is drawn correctly in brushed
784 * Improved styling of docked QDockWidgets.
787 * [145493] Fixed a crash that could occur when calling setMainWindow(0)
789 * [137013, 158094] Fixed bugs relating to the handling of size hints,
790 minimum/maximum sizes and size policies of QDockWidgets in main
792 * [147964] Animated tool bar areas adjust dynamically when a QToolBar is
794 * Added the dockOptions property. This makes it possible to:
795 - specify that tabbed dock areas should have vertical tab bars,
796 - disable tabbed docking altogether,
797 - force tabbed docking, disallowing the placement of dock widgets
799 * Fixed bugs in saving and restoring main window state.
800 * [143026] Fixed support for hiding and showing toolbars on Mac OS X.
801 * [131695] Add unified toolbar support on Mac OS X.
805 * New classes. QMdiArea is a replacement for QWorkspace.
808 * The addAction() overloads that accept a slot argument now honor the
809 slot's bool argument correctly.
810 * [129289] Added support for handling context menus from within a menu.
811 * [144054] Fixed scrolling logic.
812 * [132524] Allow setVisible() of separator items on Mac OS X native
814 * [131408] Torn-off menus now have fixed sizes to prevent the window
815 system from resizing them.
816 * [113989] Added some fuzziness to the "snap to" detection.
817 * [155030] Do not disable command actions when merge is disabled.
818 * [131702] Tear-off menus no longer appear only once.
819 * [138464] Ensured that, if a popup menu does not fit on the right-hand
820 side of the screen, it is aligned with the right side of the parent
821 widget instead of the left side.
822 * [130343] Ensured that only the left mouse button triggers menu actions
824 * [139332] Fixed an issue that caused submenus to close when moving the
825 mouse over a separator.
826 * [157218] Ensured that torn-off menus are not closed when Alt is
828 * [135193] Ensured that the size hint, maximum size and minimum size are
829 taken into account for each QWidgetAction.
830 * [133232] Improved handling of menus that are opened at specified
832 * [141856] Fixed bug where exec() would return NULL if the user pressed
834 * [133633] Fixed focus problem with keyboard navigation between menus
836 * [134560] Fixed bug that prevented status tips from being shown for
837 actions in tool button menus.
838 * [150545] Fixed memory leak on Mac OS X.
839 * [138331] Fixed bug that could cause menus to stay highlighted after
840 the closing of a dialog.
841 * Menu shortcuts are now cleared if the corresponding QAction is cleared
843 * Fixed bug that could cause changes to shortcut to not take effect on
845 * [12536] Don't allow Tab to be used to navigate menus on Mac OS X.
846 * [108509] Prevented shortcuts from stealing keyboard navigation keys.
847 * [134190] Added support for Shift+Tab to enable backwards navigation.
850 * [135320] Make show() a no-op on Mac OS X to prevent the menu bar from
851 being visible at the same time as a native Mac menu bar.
852 * [115471] Fixed torn-off menu behavior to ensure that mouse events
853 are propagated correctly on second level tear-offs.
854 * [126856] Fixed an issue that could cause several menus to be open at
856 * [47589] The position of the menu is now shifted horizontally when
857 there is not enough space (neither above nor below) to display it.
858 * [131010] Fixed bug where adding an action and setting its menu would
859 prevent the action from being triggered through its shortcut.
860 * [142749] Fixed bug where setEnabled(false) had no effect on Mac OS X.
861 * [141255] Made it possible to make an existing menu bar an application-
862 wide menu bar with setParent(0) on Mac OS X.
865 * [119777] Ensured that pressing Ctrl+C in message boxes on Windows
866 copies text to the clipboard.
867 * Added setDefaultButton(StandardButton) and
868 setEscapeButton(StandardButton) functions.
871 * Optimized invokeMethod() to avoid calling type() unnecessarily.
874 * [143011] Fixed isRegistered() to return false when the type ID does
875 not correspond to a user-registered type.
878 * [144919] Added more rigorous identity tests for model indexes.
881 * [38624] Fixed the behavior when clicking on a menu bar item a
882 second time; the menu will now close in the same way that native
886 * [106089] Added tryLock(int timeout), which allows a thread to specify
887 the maximum amount of time to wait for the mutex to become available.
888 * [137309] Fixed a rare deadlock that was caused by compiling with
889 optimizations enabled.
890 * Optimized recursive locking to avoid two unnecessary atomic operations
891 when the current thread already owns the lock.
892 * Optimized non-recursive mutexes by avoiding a call to pthread_self()
896 * [146834] Now properly generates broadcast addresses on Windows XP.
899 * Added support for transparent HTTP CONNECT client proxying.
900 * Added support for complex authenticators through QAuthenticator.
903 * Added a compile time check to ensure that the objects passed to
904 qobject_cast contain a Q_OBJECT macro.
905 * [133901] Improved the run time warnings from setParent() that is
906 output when trying to set a new parent that is in a different thread.
907 * [140106] Fixed a deadlock that could occur when deleting a QObject
908 from the destructor of a QEvent subclass.
909 * [133739] Fixed compiler warnings from g++ in findChildren<T>().
910 * Documented the QEvent::ThreadChange that is sent by moveToThread().
911 * [130367] Improved the run time warning that is output when creating
912 a QObject with a parent from a different thread.
913 * [114049] Made dumpObjectInfo() also dump connection information.
916 * [136041] Margins are now saved and used properly when printing.
919 * Fixed stroking of non-closed polygons with non-cosmetic pens in the
921 * [133980] Fixed stroking bug for RoundJoin and MiterJoin with paths
922 containing successive line segments with a 180 degree angle between
924 * [141826] Fixed stroking with MiterJoin of paths with duplicated
926 * [139454, 139209] Fixed problem with SmoothTransformation that caused
927 images to fade out toward the edges in raster paint engine.
928 * Added the HighQualityAntialiasing render hint to enable pixel shaders
929 for anti-aliasing in the OpenGL paint engine.
930 * [143503] Fixed broken painting when using a QPainter on a
931 non-top-level widget where the world matrix is disabled then
933 * [142471] Fixed dashed line drawing of lines that are clipped against
934 the device rectangle.
935 * [147001] Fixed bug with drawing of polygons with more than 65536
936 points in the raster paint engine.
937 * [157639] Calling drawPolygon() from multiple threads no longer causes
939 * Optimized line and rectangle drawing in the raster paint engine.
940 * [159047] Fixed case where fillRect() would ignore the brush origin.
941 * [143119] Fixed bug where drawing a scaled image on another image would
942 cause black lines to appear on the edges of the scaled image.
943 * [159894] Fixed X11 errors when using brush patterns on multiple
945 * [148524] Fixed X11 errors when drawing bitmaps containing a color
946 table with alpha values.
947 * [141871] Optimized and fixed drawing of extremely large polygons.
948 * [140952] Fixed transformed text drawing on X11 setups that used
949 fontconfig without Xrender.
950 * [139611] Fixed smooth transformation of pixmaps for X11.
951 * [132837] Fixed text drawing on images with certain fonts on Mac OS X.
952 * [147911] Use font anti-aliasing when rotating small fonts on Windows.
953 * [127901] Optimized gradient calculations.
954 * [139705, 151562] Optimized clipping algorithms in the raster paint
956 * Optimized blending operations in the raster paint engine using MMX,
958 * Optimized fillRect() for opaque brushes.
959 * Made general speed optimizations, especially in the OpenGL and raster
963 * [136924] Correctly convert Traditional Chinese fonts (e.g., MingLiu)
967 * [142703] QPicture now correctly preserves composition mode changes.
968 * Fixed QPicture text size handling on devices with non-default DPI.
969 * [133727] Fixed text alignment handling when drawing right-to-left
970 formatted text into a QPicture.
971 * [154088] Fixed bugs that could occur when reading QPicture files
975 * Added cacheKey() as a replacement for serialNumber().
976 * [97426] Added a way to invert masks created with createMaskFromColor().
977 * Fixed a crash that could occur when passing a 0 pointer to the
978 constructor that accepts XPM format image data.
981 * [144319] Reinserting a pixmap now moves it to the top of the Least
985 * [133220] Fixed QProgressBar rendering bugs.
988 * [128964] Made "Print" the default button.
989 * [138924] Ensured that the file name is shown in the file dialog when
991 * [141486] Ensured that setPrintRange() correctly updates the print
993 * [154690] Ensured that "Print last page first" updates the QPrinter
995 * [149991] Added support for more text encodings in the PPD subdialog.
996 * [158824] Disable the OK button in the dialog if no printers are
998 * [128990] X11: Don't immediately create an output file when a file name
999 is entered in the print dialog.
1000 * [143804] Ensured that the default printer is set to the one specified
1001 by the PRINTER environment variable.
1004 * Added the supportedPaperSources() function.
1005 * [153735] Significantly speeded up generation of PDF documents with Asian
1007 * [140759] Documented that the orientation cannot be changed on an active
1008 printer on Mac OS X (native format).
1009 * [136242] PostScript generator: Don't generate huge PostScript files for
1011 * [139566] Added support for alpha blending when printing on Windows.
1012 * [151495] Fixed image scaling problems when printing on Windows.
1013 * [146788] Optimized drawTiledPixmap() on Windows.
1014 * [152637] PDF generator: Ensured that the pageRect property is set up
1016 * [152222] PDF generator: Fixed bug that lead to fonts being too small on
1018 * [151126] Ensured that ScreenResolution is respected on Mac OS X.
1019 * [151141] PDF generator: Make PDFs using the default font on Mac OS X
1021 * [129297, 140555] PS/PDF generator: Drastically reduced the sizes of
1022 generated files and speeded up generation when using simple pens.
1023 * [143803] Correctly set the default printer name on X11.
1024 * [134204] PDF generator: Ensured that the correct output is generated
1025 when drawing 1-bit images
1026 * [152068] PS generator: Ensured that the correct PostScript is generated
1027 when embedding TrueType fonts with broken POST tables.
1028 * [143270] X11: Ensure that sigpipe is ignored when printing to an
1029 invalid printer using the PDF generator.
1032 * [97517] Added suport for specifying the working directory of detached
1033 processes as well as retrieving the PID of such processes.
1034 * [138770] Greatly improved the performance of stdin and stdout handling
1036 * [154135] Fixed crashes and lock-ups due to use of non-signal-safe
1038 * [144728] Fixed race conditions on Windows that would occur when
1039 calling bytesWritten() while using the waitFor...() functions.
1040 * [152838] Ensured that finished() is no longer emitted if a process
1044 * [146855] Ensured that setFormat() now calls update() if the format
1046 * [152227] Improved support for wide ranges across the entire integer
1048 * The setRange() function is now a slot.
1049 * [137020] Ensured setValue() forces a repaint for %v.
1052 * The setRange() function is now a slot.
1053 * [123199] Ensured that the Escape key closes dialog even when the
1054 cancel text is empty.
1057 * [114245] Fixed some styling issues for push buttons with popup menus.
1058 * [158951] Buttons with icons now center their content to be more
1059 consistent with buttons that do not have icons in most styles.
1060 * [132211] Fixed setDefault() behavior.
1063 * [106089] Added the tryLockForRead(int) and tryLockForWrite(int)
1064 functions which allow a thread to specify the maximum amount of time
1065 to wait for the lock to become available.
1066 * [131880] Added support for recursive write locking.
1069 * [143550] Added the QRectF(topRight,bottomLeft) constructor.
1072 * Added several optimizations for common operations on X11 and Qtopia
1076 * Allow a QByteArray to be used for run time resource registration.
1079 * [140603] Fixed flickering when the scroll widget is right-aligned.
1082 * Add the tryAcquire(int n, int timeout) function which allows a thread
1083 to specify the maximum amount of time to wait for the semaphore to
1087 * [153758] Fixed various bugs that could occur when writing to and
1088 reading from the Windows registry.
1091 * Added support for size grips in TopLeftCorner/TopRightCorner on Windows.
1092 * Added support for size grips on subwindows.
1093 * [150109] Fixed bug where the position could change during resize.
1094 * [156114] Fixed incorrect size grip orientation on X11.
1097 * Prevent the widget from getting into infinite loops when extreme
1101 * [148472] Mac OS X now prevents the file descriptor from being closed
1102 when a socket notifier is deregistered.
1103 * [140018] Mac OS X will now invalidate the backing native socket
1104 notifier upon deregistration.
1105 * Optimized performance by avoiding some debugging code in release
1108 - QSortFilterProxyModel
1109 * [151352] Ensured that the dataChanged() signal is emitted when
1111 * [154075] Added support to handle the insertion of rows in the source
1113 * [140152] Added a property to force the proxy model to use QString's
1114 locale-aware compare method.
1117 * [141569] Disallow typing -0 in a QSpinBox with a positive range.
1118 * [158445] Add the keyboardTracking property. When set to false, don't
1119 send valueChanged() with every key press.
1120 * [143504] Made undo/redo work correctly.
1121 * [131165] Fixed highlighting according to the native look on Mac OS X.
1124 * [38269] Added support for rich text.
1127 * [139262] Fixed bug that caused the splitter to snap back and forth in
1131 * Added NumericalPrecisionPolicy to allow numbers to be retrieved as
1135 * [128671] Added SimpleLocking to DriverFeature.
1138 * [155402] Fixed bug where the rowsAboutToBeRemoved() and rowsRemoved()
1139 signals were emitted when setQuery() was called on an already empty
1141 * [149491] Fixed bug where blank rows were inserted into the model if
1142 the database driver didn't support the QuerySize feature and the
1143 result set contained more than 256 rows.
1145 - QSqlRelationalTableModel
1146 * [142865] Fixed support for Interbase and Firebird by not using 'AS' in
1147 generated SQL statements.
1150 * [128671] Ensured that the model has no read locks on a table before
1151 updating it. Fixes parallel access for in-process databases like
1153 * [140210] Fixed bug where setting a sort order for a column caused no
1154 rows to be selected with PostgreSQL and Oracle databases due to
1155 missing escape identifiers in the generated SQL statement.
1156 * [118547] Don't issue asserts when inserting records before calling
1157 select() on the model.
1158 * [118547] Improved error reporting.
1165 * New classes. Added support for SSL to QtNetwork.
1167 - QStandardItemModel
1168 * Reduced the construction time when rows and columns are given.
1169 * [133449] Improve the speed of setData()
1170 * [153238] Moving an item will no longer cause that item to lose its
1172 * [143073] Calling setItemData() now triggers the emission of the
1173 dataChanged() signal.
1176 * [131558] Increased text margin and fixed a look and feel issue on
1180 * fromUtf8() now discards UTF-8 encoded byte order marks just like the
1182 * [154454] Fixed several UTF-8 decoder compliance problems (also affects
1183 the UTF-8 QTextCodec).
1184 * Removed old compatibility hack in fromUtf8()/toUtf8() to allow round
1185 trip conversions of invalid UTF-8 text.
1186 * Added support for full Unicode case mappings to toUpper() and
1188 * Correctly implemented case folding with the foldCase() method. (Also
1190 * [54399] Added more overloads (taking up to 9 arguments) for arg().
1193 * Made it possible for items to be dropped below the other visible items
1194 on a view with a QStringListModel.
1197 * Added the SP_DirHomeIcon standard pixmap to provide the native icon
1198 for the home directory.
1199 * Added documentation to indicate that pixel metrics are not necessarily
1200 followed for all styles.
1201 * standardPixmap() has been obsoleted. Use standardIcon() instead.
1202 * Added SP_VistaShield to support Vista UAC prompts on Windows Vista.
1203 * [103150] Added SH_FocusFrame_AboveWidget to allow the focus frame to
1204 be stacked above the widget it has focus on.
1205 * The default password character is now a Unicode circle, the asterisk
1206 is still used for QMotifStyle and its subclasses.
1207 * [127454] CE_ToolBoxTab now draws two parts, CE_ToolBoxTabShape and
1208 CE_ToolBoxTabLabel. This should make QToolBox more styleable.
1209 * [242107] Added a QStyleOptionToolBoxV2 with tab position and selected
1213 * [86988] Added an initializeFromStyleOption() function for the many
1214 widgets that need to create a QStyleOption subclass for style-related
1218 * [151831] Fixed bug where calling rehighlight() caused highlighBlock()
1219 to be called twice for each block of text.
1222 * [131892] Added support to allow messages to be reported via AppleScript
1224 * [151666] Increased the maximum tool tip size to 128 characters on the
1225 Windows platforms that support it.
1226 * [135645] Fixed an issue preventing system tray messages from working
1227 on some Windows platforms.
1228 * Addded the geometry() function to allow the global position of the
1229 tray icon to be obtained.
1232 * [126438] Added the tabAt(const QPoint &pos) function.
1233 * [143760] Fixed a bug where scroll buttons were shown even when
1235 * [130089] Ensured that the tool tip help is shown on disabled tabs.
1236 * [118712] Enabled auto-repeat on scroll buttons.
1237 * [146903] Ensured that the currentChanged() signal is emitted when a
1239 * Ensured that corner widgets are taken into account when calculating
1240 tab position in the case where the tab bar is centered.
1241 * [132091] Re-introduced the Qt 3 behavior for backwards scrolling of
1243 * [132074] Ensured that currentChanged() is always emitted when the
1244 current tab is deleted.
1247 * No longer allow invalid spans to be created.
1248 * [145446] Fixed bug where setting minimum height on horizontal header
1249 caused the the table to be rendered incorrectly.
1250 * [131388] Fixed case where information set using setRowHeight() was
1251 lost on a subsequent call to insertRow().
1252 * [141750] Fixed issue where spanned table items were painted twice per
1254 * [150683] Added property for enabling/disabling the corner button.
1255 * [135727] Added the wordWrap property.
1256 * [158096] resizeColumnToContents(int i) now has the same behavior that
1257 resizeColumnsToContents() uses for individual columns.
1260 * [125285] Ensured that dataChanged() is only emitted once when
1261 setItemData() is used to set data for more than one role.
1262 * [151211] Added removeCellWidget() and removeItemWidget().
1263 * [140186] Fixed bug where calling setAutoScroll(false) would have no
1267 * Tab widgets now take ownership of their corner widgets and allow
1268 corner widgets to be unset.
1269 * [142464] Fixed incorrect navigation behavior that previously made it
1270 possible to navigate to disabled tabs.
1271 * [124987] Ensured that a re-layout occurs when a corner widget is set.
1272 * [111672] Added the clear() function.
1275 * [140027] Improved the performance of qStableSort() on large data sets.
1278 * Added several fixes to improve connection reliability on Windows.
1279 * Made a number of optimizations.
1280 * Improved detection of ConnectionRefusedError on Windows and older
1282 * Added support for proxy authentication.
1285 * [150770] Fixed large file support on Unix.
1288 * [126914] Fixed drawing of the focus indicator when activating links.
1289 * [82277] Added the openLinks property to prevent QTextBrowser from
1290 automatically opening any links that are activated.
1293 * Improved the UTF-8 codec's handling of large, rare codepoints.
1294 * [154932] The UTF-8 codec now keeps correct state for sequence
1295 f0 90 80 80 f4 8f bf bd.
1296 * [154454] Fixed several UTF-8 decoder compliance problems also
1297 affecting QString::fromUtf8().
1298 * Fixed the UTF-8 codec's handling of incomplete trailing UTF sequences
1299 to be the same as QString::fromUtf8().
1302 * The definition of the block character format (obtained using the
1303 blockCharFormat() and QTextBlock::charFormat() functions) has been
1304 changed to be the format used only when inserting text into an empty
1306 If a QTextCursor is positioned at the beginning of a block and the
1307 text block is not empty then the character format to the right of the
1308 cursor (the first character in the block) is returned.
1309 If the block is empty, the block character format is returned.
1310 List markers are now also drawn with the character format of the first
1311 character in a block instead of the invisible block character format.
1314 * Added the hasFailure() function to indicate whether input was
1318 * [152692] Ensured that the print() function uses the document's default
1320 * Added the defaultTextOption property.
1321 * Setting a maximum block count implicitly now causes the undo/redo
1322 history to be disabled.
1323 * Made numerous fixes and speed-ups to the HTML import.
1324 * [143296] Fixed HTML import bug where adding a <br> tag after a table
1325 would cause two empty lines to be inserted instead of one.
1326 * [144637, 144653] Ensured that the user state property of QTextBlock is
1328 * [140147] Fixed layout bug where the document size would not be updated
1330 * [151526] Fixed problem where the margins of an empty paragraph above a
1331 table would be ignored.
1332 * [136013] The "id" tag can now be used to specify anchors.
1333 * [144129] Root frame properties are now properly exported/imported.
1335 - QTextDocumentFragment
1336 * QTextDocumentFragment no longer stores the root frame properties,
1337 the document title or the document default font when it is created
1338 from a document or from HTML. Use QTextDocument's toHtml() and
1339 setHtml() function if you want to propagate these properties to and
1343 * [152208] Ensured that the undo/redo enabled state is preserved across
1344 setPlainText() and setHtml() calls.
1345 * [125177] Added a print() convenience function that makes it possible
1346 to support QPrinter::Selection as selection range.
1347 * [126422] Fixed bug in copy/paste which could cause the background
1348 color of pasted text to differ from that of the copied text.
1349 * [147603] Fixed various cases where parts of a text document would be
1350 inaccessible or hidden by the scroll bars.
1351 * [148739] Fixed bug where setting the ensureCursorVisible property
1352 would not result in a visible cursor.
1353 * [152065] Fixed cases where currentCharFormatChanged() would not be
1355 * [154151] The undoAvailable() and redoAvailable() signals are no longer
1356 emitted too many times when entering or pasting text.
1357 * [137706] Made the semantics of the selectionChanged() signal more like
1358 QLineEdit::selectionChanged().
1361 * [156343] Fixed crash that could occur when streaming QTextFormat
1365 * Fixed support for justified Arabic text.
1366 * [152248] Fixed assert in sub/superscript handling of fonts specified
1368 * Optimized text layout handling for pure Latin text.
1369 * Ensured that OpenType processing is skipped altogether if a font does
1370 not contain OpenType tables.
1371 * Fixed some issues in the shaper for Indic languages.
1372 * Upgraded the line breaking algorithm to the newest version
1373 (http://www.unicode.org/reports/tr14/tr14-19.html).
1374 * [140165] Changed boundingRect() to report the actual position of the
1375 top left line instead of incorrectly reporting (0, 0) for the top-left
1376 corner in every case.
1377 * Fixed various problems with text kerning.
1380 * [141391] Fixed bug that could occur when reusing a text stream with
1381 the setString() method.
1382 * [133063] atEnd() now works properly with stdin.
1383 * [152819] Added support for reading and writing NaN and Inf.
1384 * [125496] Ensured that uppercasebase and uppercasedigits work as
1388 * [138905] Fixed bug where merging cells in a QTextTable would cause
1389 text to end up in the wrong cells.
1390 * [139074] Fixed incorrect export of cell widths to HTML when exporting
1391 tables containing column spans.
1392 * [137236] Fixed bug where a text table would ignore page breaks.
1393 * [96765] Improved handling of page breaks for table rows spanning
1395 * [144291] Fixed crash that could occur when using setFormat() with an
1396 old format after inserting or removing columns.
1397 * [143501] Added support for vertical alignment of table cells.
1398 * [136397, 144320, 144322] Various border styles and border brushes are
1399 now properly supported.
1400 * [139052] Made sure that empty text table cells get a visible
1404 * Added Q_FUNC_INFO, a macro that expands to a string describing the
1405 function it is used in.
1406 * [132145] Fixed Q_FOREACH to protect against for-scoping compiler bugs.
1407 * Fixed a race condition in the internal Q_GLOBAL_STATIC() macro.
1408 * [123910] Fixed crashes on some systems when passing 0 as the
1409 message to qDebug(), qWarning(), and qFatal().
1412 * [140734] Fixed a bug that prevented exec() from being called more than
1414 * Optimized the currentThread() function on Unix.
1415 * Added the idealThreadCount() function, which returns the ideal number
1416 of threads that can be run on the system.
1419 * [131944] Refactored to allow an arbitrary number of instances to be
1420 created (not just 256 as in previous versions).
1421 * Updated documentation, as many caveats have been removed in Qt 4.2 and
1425 * [136043] Fixed the USER properties.
1428 * [145592] Fixed the time line state after finished() has been emitted.
1429 * [125135] Added the resume() function to allow time lines to be resumed
1430 as well as restarted.
1431 * [153425] Fixed support for cases where loopCount >= 2.
1434 * Added the active property to determine if the timer is active.
1437 * [128156, 138908] Added an animation for the case where a tool bar is
1438 expanded to display all its actions when its extension button is
1442 * [107787] Fixed rendering bugs in reversed mode.
1445 * [127814] Ensured that the popup delay respects style changes.
1446 * [130358] Ensured that Hover events are sent to the associated QAction
1447 when the cursor enters a button.
1448 * [106760] Fixed bug where the button was drawn as pressed when using
1449 MenuButtonPopup as its popup mode.
1452 * [135988] Allow tool tips to be shown immediately below the cursor
1453 * [148546] The usage of tool tip fading now adheres to the user settings
1455 * [145458] Tool tip fading now looks native on Mac OS X (fading out
1457 * [145557] Fixed bug that caused tool tips to remain visible if the
1458 cursor left the application quickly enough on Mac OS X.
1459 * [143701] Fixed bug that caused tool tips to hide behind stay-on-top
1460 windows on Mac OS X.
1461 * [158794] Fixed bug on Mac OS X where isVisible() returned true even
1462 if the tool tip was hidden.
1465 * [158096] Added checks to prevent items from being dropped on their own
1467 * [113800] When dragging an item over an item that has child items,
1468 QTreeView will now automatically expand after a set time.
1469 * [107766] Added a style option (enabled in the Windows style) to
1470 select the first child when the right arrow key is pressed.
1471 * [157790] It was possible to get in a state where clicking on a branch
1472 (+/- in some styles) to expand an item didn't do anything until
1473 another location in the view was clicked.
1474 * Made it possible to create a selection with a rectangle of negative
1476 * [153238] Ensured that drops on branches are interpreted as drops onto
1478 * [152868] Fixed setSelection() so that it works with negative
1480 * [156522] Fixed repaint errors for selections in reversed mode.
1481 * [155449] Prevented the tree from having huge columns when setting the
1482 alignment before it is shown.
1483 * [151686] Hidden rows are now filtered out of the user selection range.
1484 * [146468] Fixed bug where the indexRowSizeHint could be incorrect in
1485 the case where columns were moved.
1486 * [138938] Fixed an infinite loop when calling expandAll() with no
1488 * [142074] Scroll bars are no longer shown when there are no items.
1489 * [143127] Fixed bug that prevented the collapsed() signal from being
1490 emitted when the animated property was set to true.
1491 * [145199] Fixed crash that could occur when column 0 with expanded
1492 items was removed and inserted.
1493 * [151165] Added the indexRowHeight(const QModelIndex &index) function.
1494 * [151156] Add support for hover appearance.
1495 * [140377] Add the expandTo(int depth) function.
1496 * Clicking in the empty area no longer selects all items.
1497 * [135727] Added the wordWrap property.
1498 * [121646] setSelection() now selects the item within the given
1500 * Added the setRowSpanning(int row, const QModelIndex &parent) and
1501 isRowSpanning(int row, const QModelIndex &parent) functions.
1504 * [159078] Fixed drag and drop bug on Mac OS X that could occur when
1505 dragging inside the widget.
1506 * [159726] Fixed crash that could occur when dragging a QTreeWidgetItem
1507 object with an empty last column.
1508 * [154092] Fixed case where the drag pixmap could get the wrong position
1509 when dragging many items quickly.
1510 * [152970] Hidden items are no longer returned as selected from the
1511 selectedItems() function.
1512 * [151211] Added the removeCellWidget() and removeItemWidget()
1514 * [151149] Made the header text left-aligned instead of center-aligned
1516 * [131234] Made it possible to do lazy population by introducing the
1517 QTreeWidgetItem::ChildIndicatorPolicy enum.
1518 * [134194] Added the itemAbove() and itemBelow() functions.
1519 * [128935] The disabled state of an item is now propagated to its
1521 * [103421] Added the QTreeWidgetItem::setExpandable() function.
1522 * [134138] Added the QTreeWidgetItem::removeChild() function.
1523 * [153361] Ensured that items exist before emitting itemChanged().
1524 * [155700] Fixed a crash in QTreeWidget where deleted items could still
1525 be referenced by a selection model.
1528 * [142853] Now continues to emit readyRead() if the peer temporarily
1530 * [154913] Now detects datagrams even when the sender's port is invalid.
1533 * [142276] Added the undoLimit property which controls the maximum
1534 number of commands on the stack.
1537 * [134604] Fixed the behavior of the obsolete dirPath() function on
1541 * [34933] Added support for scientific notation.
1544 * [127225] Unloading a GUI plugin will no longer cause a crash in
1545 QVariant in a pure QtCore application.
1548 * [126007] Made the behavior of wakeOne() consistent between Windows and
1549 Unix in the case where wakeOne() is called twice when exactly 2
1550 threads are waiting (the correct behavior is to wake up both threads).
1553 * [139359] Added the locale property to make it easy to customize how
1554 individual widgets display dates and numbers.
1555 * [155100] Fixed a regression that could cause Qt::FramelessWindowHint
1556 to be ignored for frameless windows.
1557 * [137190] Ensured that windows with masks are now rendered correctly
1558 with respect to window shadows on Mac OS X.
1559 * [139182] Added the render() function to allow the widget to be
1560 rendered onto another QPaintDevice.
1561 * [131917] Fixed bug where minimum and maximum sizes were not respected
1562 when using X11BypassWindowManagerHint.
1563 * [117896] Fixed setGeometry() to be more consistent across Mac OS X,
1564 Windows, X11 and Qtopia Core.
1565 * [132827] Allow the focus to be given to a hidden widget; it will
1566 receive the focus when shown.
1567 * Reduced the overhead of repainting a widget with lots of children.
1568 * Clarified the documentation for the Qt::WA_AlwaysShowToolTips widget
1570 * [154634] Ensured that the Qt::WA_AlwaysShowToolTips widget attribute
1571 is respected for all widgets.
1572 * [151858] Improved the approximation returned by visibleRegion().
1573 * [129486] Ensured that calling setLayout() on a visible widget causes
1574 its children to be shown, making its behavior consistent with the
1575 QLayout::addWidget() behavior.
1578 * [110784] Scroll bar and spin box arrows now scale with the widget size.
1579 * Given certain panel and button frames a more native appearance.
1580 * [142599] Ensured that a QDockWidget subclass is not required when
1581 using the style to draw a CE_DockWidgetTitle.
1584 * [150579] Fixed the use of the wrong background color for QSlider.
1585 * [133517] Fixed styling of the unused area in header sections.
1586 * [48387] Fixed styling of MDI/Workspace controls.
1587 * [109317] Fixed a rendering issue with tab widgets in the Silver color
1589 * [114120] Ensured that the frame property for combo boxes is respected.
1590 * [138444] Fixed crash that could occur when passing 0 as the widget
1591 argument to drawComplexControl().
1595 * New classes. Based on QtWizard and QtWizardPage in Qt 4 Solutions.
1596 Redesign of QWizard from Qt 3.
1598 - QXmlParseException
1599 * [137998] Fixed incorrect behavior where systemId/publicId was never
1603 * QXmlSimpleReader no longer reads entire files into memory, allowing
1604 it to handle large XML files.
1607 * [131577] Fix a bug that could occur when entering out-of-range years
1611 * [125117] Fixed some style issues with Windows XP and Plastique styles.
1614 * Added FrameShape, FrameShadow, lineWidth, and midLineWidth properties.
1617 * [150781] Fixed a crash in setOpen() (previously fixed in Qt 3).
1620 * [125149] Mouse events should not be delivered if the Q3ScrollView is
1622 This fixed the case where items were still selectable when Q3ListView
1623 was disabled using the setEnabled() function.
1626 * [117996] Improved support for tables and views that have fields with
1627 whitespace in their names.
1630 * [136214] Fixed invalid memory reads when using undo/redo
1633 ****************************************************************************
1634 * Database Drivers *
1635 ****************************************************************************
1639 * [127724] Added support for OUT values from stored procedures. (See the
1640 SQL Database Drivers documentation for details.)
1641 * [159123] Fixed crash that could occur when fetching data from
1642 Interbase 2007 databases.
1643 * [143474] Added support for SQL security-based roles.
1644 * [134608] Fixed bug where queries in some cases returned empty VARCHAR
1645 fields if they contained non-ASCII characters.
1646 * [143471] Fixed bug that caused fetching of multisegment BLOB fields to
1648 * [125053] Fixed bugs where NUMERIC fields were corrupted or returned as
1649 the wrong type in some cases.
1652 * [156342] Fixed bug where BINARY and VARBINARY fields were returned as
1653 QString instead of QByteArray.
1654 * [144331] Fixed bug where a query would become unusable after executing
1655 a stored procedure that returns multiple result sets.
1659 * Added support for low-precision retrieval of floating point numbers.
1660 * [124834] Fixed bug where the binding strings failed on certain
1662 * [154518] Fixed bug where connections were not properly terminated,
1663 which lead to resource leaks and connection failures.
1667 * Increased performance for iterating a query backwards.
1668 * [89844] Added support for fetching multiple error messages from an
1670 * [114440] Fixed bug where binding strings longer that 127 characters
1671 failed with Microsoft Access databases.
1672 * [139891] Fixed bug where unsigned ints were returned as ints.
1675 * [130799] Improved support for attatched databases when used with
1677 * [142374] Improved error reporting in cases where fetching a row fails.
1678 * [144572] Fixed the implementation of escapeIdentifier() to improve
1679 support for identifiers containing whitespace and reserved words when
1680 used with the model classes.
1684 * [135403] Properly quote schemas in table names ("schema"."tablename").
1685 * [138424] Fixed resource leak that occurred after failed connection
1690 * [110259] Fixed bug where random characters were prepended to BLOB
1691 fields when fetched.
1692 * [91441] Fixed bug where binding strings resulted in only parts of the
1693 strings being stored.
1695 ****************************************************************************
1697 ****************************************************************************
1699 * [138388] Floating point numbers are now printed in printf's "%g" format.
1700 * [145643] QEXPECT_FAIL does not copy or take ownership of "comment"
1702 * [156346] Gracefully handle calls to qFatal().
1703 * [154013] Don't count skips as passes.
1704 * [145208] Display QByteArrays in convenient ways.
1705 * Output well-formed XML.
1707 ****************************************************************************
1709 ****************************************************************************
1713 * Added support for QList<QDBusObjectPath> and QList<QDBusSignature>
1714 to allow them to be used without first having to register the types.
1716 * Added support for using QtDBus from multiple threads.
1718 * Made it possible to marshal custom types into QDBusArgument.
1721 * [153102] Ensure that Q_NOREPLY is ignored.
1722 * [144663] Fixed problems with executing qdbuscpp2xml on Windows.
1723 * Don't require moc to be on a path listed in the PATH environment
1727 * Changed asserts in the QDBusInterface constructor to QDBusErrors.
1729 * Added a separate slot for delivering errors when calling
1735 * Moved QDBusViewer from demos to QDBus tools.
1736 * Added ability to get and set properties.
1737 * Added support for demarshalling D-Bus variants.
1738 * Added a property dialog for entering arguments.
1739 * Made QDBusObjectPath clickable in the output pane.
1741 ****************************************************************************
1742 * Platform Specific Changes *
1743 ****************************************************************************
1747 * [153346] Ensured that tablet events are not delivered while a drag and
1748 drop operation is in progress.
1749 * [141756] Ensured that the Plastique or Cleanlooks styles are not used
1750 as default styles when Xrender is not available.
1751 * [139455] Fixed QX11EmbedContainer race causing sudden unembedding of
1753 * [96507] Added support for using _POSIX_MONOTONIC_CLOCK as the
1754 timer source (also affects Qtopia Core).
1755 * [128118] Fixed garbage output when calling QPixmap::grabWindow()
1756 on a window on a non-default screen.
1757 * [133119] Ensured that X11 color names are detected in the
1758 RESOURCE_MANAGER property.
1759 * [56319] Added support for _NET_WM_MOVERESIZE to QSizeGrip, which
1760 cooperates with the window manager to do the resizing.
1761 * Fixed QWidget::isMaximized() to return false when the window is
1762 only maximized in a single direction.
1763 * [67263] Fixed a bug that could cause applications to freeze while
1764 querying the clipboard for data.
1765 * [89224] Fixed the behavior of minimized Qt applications to show the
1766 correct icon (instead of the standard OpenWindows icon) on Solaris.
1767 * [116080] Ensured that the TIMESTAMP clipboard property is set using
1768 XA_INTEGER (as defined in the ICCCM).
1769 * [127556] Refactored timer accounting code to be more efficient and
1770 less cumbersome to maintain.
1771 * [132241] Add support for DirectColor visuals. Qt will now create and
1772 initialize a colormap when using such visuals.
1773 * [140737] Fixed QEventDispatcherGlib::versionSupported() to be much
1775 * Fixed a bug where QWidget::windowFlags() would not include
1776 Qt::X11BypassWindowManagerHint for Qt::ToolTip and Qt::Popup windows.
1777 * [146472] Fixed a bug where QWidget::setWindowFlags() would disable
1778 drag and drop operations from outside Qt applications.
1779 * [150352] Fixed painting errors after show(), hide(), then show()
1781 * [150348] Fixed a bug that would incorrectly set the Qt::WA_SetCursor
1782 attribute on top-level windows.
1783 * [135054] Fixed system palette detection code to use contrast that is
1784 more similar to the desktop settings.
1785 * [124689] Documented potential QDrag::setHotSpot() inefficiency on X11.
1786 * [121547] Fixed QWidget::underMouse() to ensure that the value it
1787 returns is correctly updated after the mouse button is released.
1788 * [151742] Improved robustness when executing in an X11-SECURITY
1789 reduced ssh-forwarded session.
1790 * [142009] Fixed a bug that caused an application using the Qt Motif
1791 Extension to freeze when trying to copy text into a QTextEdit.
1792 * [124723] Fixed PseudoColor detection to correctly handle cases where
1793 the colormap is not sequential.
1794 * [140484] Don't use the GLib event dispatcher if GLib version is too
1796 * Fixed a bug where a window would get an incorrect size after the
1797 second call to show().
1798 * [153379] Fixed shortcuts where the modifier also includes Mode_switch
1799 in the modifier mask; for example, Alt+F on HP-UX.
1800 * [154369] Fixed drag and drop to work properly after re-creating a
1802 * [151778] Fixed mouse enter/leave event platform inconsistencies.
1803 * [153155] Added the QT_NO_THREADED_GLIB environment variable, which
1804 tells Qt to use Glib only for the GUI thread.
1805 * Fixed restoreGeometry() to ensure that full-screen windows are moved
1806 to the correct position.
1807 * [155083] Don't use legacy xlfd fonts if we have fontconfig available
1809 * [150348] Fixed bug where setCursor() would not work properly after a
1811 * Made Plastique the default style on X11.
1815 * Added an experimental DirectX-based paint engine.
1816 * [141503] Ensured that clicks inside tool windows won't cause them to
1817 be activated if there is no child widget to take focus.
1818 * [153315] Improved handling of Synaptic touchpad wheel messages.
1819 * [150639] Added support for CF_DIBV5 format and improved support for
1820 transparent images on the clipboard.
1821 * [146862] Improved readability of progress bar text when shown in
1822 the Highlight palette color.
1823 * [146928] Fixed issue where shortcut events were discarded when auto-
1824 repeat was disabled.
1825 * [141079] Ensured that wheel events contain button information.
1826 * [149367] Ensured that QMimeData::formats() returns all the available
1827 formats in the object.
1828 * [135417] Ensured that WM_SYSCOLORCHANGE does not trigger resetting of
1830 * [137023] Fixed a crash that could occur while translating mouse
1832 * [138349] Fixed incorrect focus handling with multiple top-level
1834 * [111211] Ensured that tool windows don't steal focus from their
1835 parents while opening.
1836 * [143812] Fixed a bug which can break the widget's ability to maximize
1837 after saving and restoring its state.
1838 * [111501] Ensured that SPI_SETWORKAREA messages trigger calls to
1839 QDesktopWidget::workAreaResized().
1840 * [141633] Fixed command line parsing for GUI applications.
1841 * [134984] Ensured that SockAct events are not triggered from
1842 processEvents(ExcludeSocketNotifiers).
1843 * [134164] Ensured that top-level widgets configured with
1844 MSWindowsFixedSizeDialogHint are centered properly.
1845 * [145270] Fixed mapFromGlobal() and mapToGlobal() for minimized or
1847 * [132695] Fixed a potential crash that could occur when changing the
1848 application style after the system theme had been changed.
1849 * [103739] Workspace title bars now respect custom title bar heights in
1850 the Windows XP style.
1851 * [48770] Improved size grip behavior in top-level widgets.
1852 * [113739] Fixed an issue that could occur when using QWidget::scroll()
1853 with on-screen painting.
1854 * [129589] Added support for moving the mouse cursor to the default
1856 * [139120] Added support for resolving native file icons through
1858 * [129927] Added the QWindowsVista style to support native look and feel
1860 * [106437] Removed the Windows XP style from the list of keys supplied
1861 by QStyleFactory::keys() on platforms where it is not available.
1862 * [109814] Improved UNC path support.
1863 * [157261] Fixed crash that could occur when using Alt keycodes with
1864 text handling widgets.
1865 * [116307] Ensured that QEvent::WindowActivate is sent for tool windows.
1866 * [150346] Fixed a bug that would cause an application to exit when its
1867 last window (a modal dialog) was closed and a new window shown
1868 immediately afterwards.
1869 * [90144] Fixed a bug that caused QApplication::keyboardModifiers() to
1870 return modifiers even after they had been released.
1871 * [142767] Fixed a bug that allowed a QPushButton to become pressed even
1872 though its mousePressEvent() handler function was never called.
1873 * [151199] Usage of blocking QProcess API in a thread no longer hangs
1875 * [144430] Made the shortcut system distinguish between Key_Return and
1877 * [144663] Made sure qdbuscpp2xml can parse moc output on Windows.
1878 * [126332] Made QDBus compile on Windows platforms.
1879 * [133823, 160131] Fixed bug in the QWidget::scroll() overload that
1880 accepts a rectangle argument.
1883 * Ensured that, when loading a typelib file to obtain information about
1884 a control, the typelib is processed correctly.
1885 * [158990] Ambient property change events are now emitted regardless of
1886 the container's state.
1887 * [150327] ActiveQt based controls will now return the correct Extents
1888 depending on the size restrictions set on the widget.
1889 * [141296] Ensured that the ActiveQt DLL is unloaded from the same
1890 thread which loaded it.
1893 * Added support for background clipping using the border-radius
1895 * Almost all widgets are now styleable using style sheets.
1896 * Added support for the -stylesheet command line option to QApplication.
1897 * Added support for styling through SVG.
1898 * Added support to allow colors and brushes to be specified as
1904 * qtconfig is no longer available on Mac OS X. All settings are read
1905 from the system's configuration.
1906 * [156965] Always offers a 'TEXT' type flavor for non-Pasteboard-aware
1907 Mac Application pastes.
1908 * [158087] Fixed various mouse event propagation bugs.
1909 * Introduced Q_WS_MAC32/Q_WS_MAC64 for 64 vs. 32-bit detection compile
1910 time infrastructure.
1911 * [156431] Introduced WA_MacAlwaysShowToolWindow to allow windows to
1912 behave as utility windows as opposed to floating windows.
1913 * [155651] Qt will now follow the HIView focus chain to allow wrapped
1914 HIViewRef's to take focus when appropriate.
1915 * [149753] Qt will not deliver mouse release events to widgets that do
1916 not process mouse press events (including widgets with the
1917 WA_MacNoClickThrough attribute set).
1918 * Introduced support for 64-bit Mac OS X builds. Only available on
1919 Mac OS X 10.5 (Leopard).
1920 * [145166] Ensured that CoreGraphics high quality interpolation is used
1921 when using SmoothPixmapTransform.
1922 * [134873] Ensured that the widget hierarchy is used to find a widget
1923 with a cursor rather than using the frontmost widget.
1924 * [132178] Enforced the requirement for double click detection that the
1925 second click must be near the previous click to prevent false double
1926 clicks being reported.
1927 * [131327] Fixed mouse propagation for top-level widgets with the
1928 WA_MacNoClickThrough attribute set.
1929 * Now entirely QuickDraw clean.
1930 * [155540] Ensured that asymmetic scales work with cosmetic pens.
1931 * [141300] Fixed an issue that prevented QFontDatabase/QFontDialog from
1932 showing all fonts installed on the system.
1933 * Fixed writing system detection in QFontDatabase.
1934 * [148876] Fixed bug that caused characters to be committed twice in the
1935 Chinese Input method.
1936 * Removed the use of an extra setFocus() in the event loop when a window
1938 * [152224] Fixed bug in QWidget's window state.
1939 * [156431] Added the WA_MacAlwaysShowToolWindow widget attribute to
1940 allow Mac users to create utility-window-style applications.
1941 * [144110] Fixed resizing of sheets on Panther.
1942 * [140014] Made it possible to drag QUrls on Panther.
1943 * [155312] Fixed bug that could occur when dragging several URLs to
1944 Finder and certain other applications.
1945 * [155244] Fixed bug that could occur when dragging a URL to Finder.
1946 * [153413] Fixed bug that could occur when dragging URLs between Qt applications.
1947 * [152450] Fixed bug that could occur when dragging URLs to applications
1948 such as the trash can.
1949 * [151158] Fixed an issue that prevented widgets from receiving drag
1950 events if a move event was ignored.
1951 * [145876] Ensured that a drag move event is always received directly
1952 after a drag enter event (according to the documentation).
1953 * [156365] Fixed event bug when dragging URLs to receivers that only
1954 refer to a drop location.
1955 * [119251] Tool tips and dialogs no longer cause full-screen windows to
1956 show their menu bar and the dock.
1957 * [147640] Fixed QScrollArea scrolling behavior when showing regions
1958 with dimensions between 2^15 and 2^16 pixels.
1959 * [158988] Ensured that a mouse enter event is now sent before a mouse
1960 press event upon window activation.
1961 * [157313] Fixed hanging bug that could occur if the system clock was
1962 adjusted backwards while using sockets.
1963 * [151411] Fixed window switching bug (Cmd + ~) that could occur when
1964 showing a modal dialog with a popup.
1965 * Ensured that changing a shortcut containing a cursor movement key now
1967 * [143912] Fixed focus problem caused by mouse hovering over widgets
1969 * [141456] Fixed activation bug exhibited by minimized windows upon
1971 * [155394] Fixed issue where a widget's move and resize state were not
1972 set correctly upon widget initialization.
1973 * [254325] Fixed sheet transparency bug.
1974 * [152481] Fixed crash that could occur when clicking in a window when a
1975 modal print dialog is showing.
1976 * [143835] Removed unnecessary window updates for active windows.
1977 * [145552] A mouse up event is now sent when a window drag has finished
1978 after a mouse press.
1979 * [146443] Ensure that, if a window is moved before it is shown for the
1980 first time, it is placed correctly when it is shown.
1981 * [141387] Fixed bug that caused two near-simultaneous mouse presses on
1982 different widgets to be interpreted as a single click.
1983 * [139087] Fixed activation for some types of shortcuts, such as
1984 QKeySequence(Qt::CTRL | Qt::Key_Plus).
1985 * Only use Roman for determining with System Fonts since Mac OS X will
1986 perform the necessary translation.
1987 * When using OpenGL, ensured that the 32-bit accumulation buffer is used
1988 in preference to the 64-bit accumulation buffer by default.
1989 * [123467] Fixed bug where the event loop would spin and not emit
1990 aboutToBlock() when popup menus were shown.
1991 * [137677] QString::localAwareCompare() now respects the sorting order
1992 set in the system preferences.
1993 * [139658] Mac OS X accessibility no longer requires that
1994 QApplication::exec() is called.
1995 * [118814, 126253, 105525] Fixed several QCombobox look and feel issues.
1996 * [145075] Fixed aliased line drawing bug.
1997 * [122826] Fixed QScrollBar painting error.
1998 * [131794] PixelTool and QWidget::grabWindow() now work on non-primary
2000 * [160228] The Quartz 2D-based paint engine now respects the font style
2002 * Made miscellaneous changes to make wrapping non-Qt HIViews easier.
2003 * Qt is now built with MACOSX_DEPLOYMENT_TARGET set to 10.3 (since Qt
2004 can only be run on Mac OS X 10.3 and above).
2005 * QSound now uses NSSound for its implementation instead of the
2006 deprecated C QuickTime API. This means that the QtGui library is no
2007 longer dependant on the QuickTime framework.
2008 * Added a -dwarf-2 configure option to allow people to turn on DWARF2
2009 debugging symbols when that is not the default.
2010 The ability to use DWARF2 debugging symbols was added in later version
2011 of the Xcode 2.x series.
2012 * Fixed many assertions when running against Carbon_debug.
2013 * Renamed the Qt::WA_MacMetalStyle attribute to WA_MacBrushedMetal.
2014 * Changing the Qt::WA_MacBrushedMetal attribute will now cause a
2015 StyleChange event to be sent.
2016 * The Qt translations and Qt Linguist phrase books have been added to
2018 * [134630] Fixed loading of plugins in the case where universal plugins
2019 are used but the wrong architecture is accidentally read first,
2020 instead of returning an architecture mismatch.
2021 * QCursor now uses NSCursor internally instead of the deprecated
2022 QuickDraw functions.
2023 * Corrected the encoding and decoding functions for QFile to handle
2024 different Unicode normalization forms.
2030 * A new font subsystem has been implemented that, by default, allows
2031 glyphs rendered at run time to be shared between applications. A new
2032 pre-rendered font format (QPF2) has also been implemented together
2033 with a new "makeqpf" tool to generate them.
2034 * Support for custom font engine plugins has been added through
2035 QAbstractFontEngine and QFontEnginePlugin.
2036 * The default font family has been changed to DejaVu Sans.
2039 * [126421, 126424] Added QGLWindowSurface and QGLScreen framework for
2040 OpenGLES (and others) on Qtopia Core. A sample implementation can be
2041 found in the examples/qtopiacore directory.
2043 - Accelerated graphics API
2044 * [150564] API changes in QWSWindowSurface. New functions include
2045 QWSWindowSurface::move() to enable accelerated movement of top-level
2047 * [152755] API clarification: The windowIndex parameter to
2048 exposeRegion() now always refers to the window that is being changed.
2049 * [150569, 139550] Made API additions to QWSWindow to give QScreen
2050 information about the window state, window flags, and window dirty
2052 * [150746] Added QScreen::pixelFormat() and QScreen::setPixelFormat() to
2053 enable drawing optimizations for some formats.
2056 * Improved support for compiling a LSB (Linux Standard Base) compliant
2057 Qtopia Core library.
2058 * [133365] Added the QWSServer::setScreenSaverBlockLevel() function to
2059 make it possible to block the key/mouse event that stops the screen
2060 saver at a particular level.
2061 * Fixed QFontDatabase::addApplicationFont() for Qtopia Core.
2062 * [131714] Fixed performance problems with drag and drop operations.
2063 * [96507] Added support for using _POSIX_MONOTONIC_CLOCK as the timer
2064 source (also effects Qt/X11).
2065 * [132346] Fixed a performance bug causing unnecessary screen copies
2066 when using a hardware cursor.
2067 * [121496] Made lots of performance improvements in the VNC driver.
2068 * [138615] Fixed color conversion for cases where the VNC server is
2069 running on a big-endian machine.
2070 * [131321] Optimized text drawing.
2071 * [136282] Fixed a bug preventing QWidget::setCursor() and
2072 QWidget::unsetCursor() from taking effect immediately.
2073 * [139318] Fixed a performance bug that would cause non-visible regions
2074 to receive paint events.
2075 * [139858] Implemented acceleration for the 'pc' mouse handler.
2076 * [140705, 140760] Improved release of used resources (e.g, shared
2077 memory and hardware resources) when the application exits
2079 * [144245] Fixed a problem with some cross-compilers triggered by using
2080 math.h functions taking a double argument when using float data.
2081 * Optimized QSocketNotifier activation.
2082 * [156511] Implemented QDirectPainter::ReservedSynchronous which makes
2083 a QDirectPainter object behave as a QDirectPainter region allocated
2084 using the static functions.
2085 * [94856] Fixed console switching when using the Tty keyboard driver.
2086 * [157705] Ensured that device parameters are passed to keyboard and
2088 * [156704] Fixed QPixmap::grabWindow() for 18 and 24-bit screens.
2089 * [154689] Fixed the -no-gfx-multiscreen configure script option.
2090 * [160404] Fixed 4-bit grayscale support in QVFb and QScreen.
2091 * Optimized QCop communication.
2092 * Fixed bug in QWidget::setMask() for visible widgets.
2093 * [152738] Allow transparent windows to be shown on top of unbuffered
2095 * [154244] Fixed bug where a client process would not terminate when
2097 * [152234] No longer send key events for one client to other client
2098 processes for security and performance reasons.
2099 * [148996] Added checks in the server to avoid buffer overruns if
2100 clients send malformed commands
2101 * [154203] Fixed mouse calibration bug with mirrored/180-degree-rotated
2104 ****************************************************************************
2105 * Compiler Specific Changes *
2106 ****************************************************************************
2109 * [119777] Removed the dependency on mingwm.dll when compiled with the
2110 -no-exceptions option.
2112 ****************************************************************************
2114 ****************************************************************************
2117 * Auto-detect Xoreax IncrediBuild with XGE technology, and enable
2118 distribution of moc and uic.
2119 * Shadow builds are now supported by nmake/mingw-make of the Qt build
2121 * [151184] Separated the -make options for demos and examples
2122 * [150610] Fixed the build system to take into account that fvisibility
2123 requires gcc on Unix builds.
2124 * [77152] Ensured that, at "make install" time, all meta-information
2125 files will be cleaned up to remove reference to source code path.
2126 * [139399] Ensured that the environment CC/CXX on Unix are taken into
2127 account when running the build tests.
2128 * [145344] Ensured that "make confclean" will remove all files
2129 generated by configure.
2130 * [145659] Added ability to disable SSE.
2131 * Added DWARF2 detection and support into the build system to reduce
2132 the debug library size.
2133 * Added macx-g++-64 meta-spec for Qt configuration purposes.
2134 * [127840] The pkgconfig files (.pc) are now placed into lib/pkgconfig.
2135 * [135547] Allow Windows line endings on UNIX and vice versa in
2137 * [133068] GIF support is now enabled by default.
2138 * [137728] Fixed failed build on Mac OS X and Solaris when using the
2139 -separate-debug-info command line option for the configure script.
2140 * [137819] Added support for precompiled headers with the Intel C++
2142 * Re-used qplatformdefs.h from linux-g++ in the linux-icc mkspec.
2143 * [121633] Added linux-icc-64 mkspec which is needed for building on
2145 * Removed cd_change_global from win32-msvc's qmake.conf file.
2146 * [116532] Keep intermediate manifest file in object directory instead
2147 of the destination directory.
2148 * Added a configuration type to qconfig.pri on Windows.
2149 * Corrected paths in Makefile generation when configuring with the
2150 -fast command line option.
2151 * Added tests to auto-detect a suitable TIFF library.
2152 * [152252] Fixed auto-detection of MSVC.NET 2005 Express Edition in
2154 * [151267] Ensured that the manifest tool does not get forward slashes
2155 when writing paths to manifest files.
2156 * [153711] Ensured that the directory separators used in .qmake.cache
2157 are correct for normal MinGW and Cygwin MinGW.
2158 * [154192] Fixed a problem with configure.exe executing non-existing
2160 * [128667] Added a confclean build target on Windows for the top-level
2165 * [99923] Added a context menu for the tabs in the tab bar. Right click
2166 on a tab to get a list of common options.
2167 * Assistant now uses the "unified toolbar" look on Mac OS X.
2170 * [151376] Added a context menu to the tab order editor.
2171 * [39163] Added a tab order editor shortcut - using Ctrl with the left
2172 mouse button makes it possible to start ordering from the selected
2174 * [159129] Fixed a crash in the tab order editor.
2175 * Improved snapping behavior for multi-selections and negative
2177 * [126671] Made it possible to move widgets by using the cursor keys
2178 without modifiers. The Shift modifier enables resizing, the Control
2179 modifier enables snapping behavior.
2180 * [111093] Added a file tool bar.
2181 * [156225] Fixed the delete widget command for cases where the deleted
2182 widget is a child of a QSplitter widget.
2183 * [101420] Improved the WYSIWYG properties of forms with respect to the
2184 background colors used.
2185 * [112034] Enabled Ctrl + drag as a shortcut for copying actions in
2186 menus and tool bars.
2187 * [128334] Double clicking on a widget now invokes the default action
2189 * [129473] Fixed bug in the handling of default tab orders.
2190 * [131994] Made it possible to set the tab order for checkable group
2192 * Added new cursor shapes.
2193 * [137879] Improved the editor for key sequence properties.
2194 * [150634] Improved refreshing behavior of all properties after property
2196 * [147655] Fixed shadow build issues.
2197 * [151567, 149966] Ensured that object names are unique.
2198 * [80270] Fixed bug with saving icons taken from resources which are
2199 specified with aliases.
2200 * [152417] Fixed loading/saving of header labels of Q3Table widgets.
2201 * Added the QColumnView widget to the widget box.
2202 * Added support for new margin (left, top, right and bottom) and spacing
2203 (horizontal and vertical) properties of the layout classes.
2204 * [146337] Ensure that the margin and spacing properties are not saved
2205 if they have the default values.
2206 * Fixed layout handling in Q3GroupBox
2207 * [124680] Ensured that the correct pages are displayed when selecting a
2208 QStackedWidget page in the object inspector.
2209 * [88264] Ensured that breaking a nested layout doesn't break the parent
2211 * [129477] Added support for dynamic properties via the context menu in
2212 the property editor.
2213 * [101166] Added an "Add separator" action to the standard context menu.
2214 * [132238] Added a "Recent files" button to the New Form dialog.
2215 * [107934] Updated the font anti-aliasing property from a boolean
2216 property to a property with 3 values.
2217 * [155464] Added a German translation.
2218 * [146953] Enabled support to allow widgets to be dragged onto the
2220 * [152475] Ensured that the widget box saves and restores its state.
2221 * [111092] Added support to allow images to be dragged from the resource
2222 editor and dropped onto the action editor or icon properties in the
2224 * [111091] By default, icon dialogs now open to show the resource
2226 * [152475] Added a button to load newly found custom widget plugins to
2228 * [151122] Added warnings for custom widget plugin issues such as load
2229 failures and class name mismatches.
2230 * [138645] Improved the form preview on Mac OS X, provided a close
2231 button and a menu entry.
2232 * [103801] Made buddy editing possible for custom widgets derived from
2234 * [148677] Added a font chooser for tool windows.
2235 * [107233] Made the grid customizable, provided default and per-form
2237 * [149325] Provided a form editor context menu in the object inspector.
2238 * [147174] Changed the elide mode and improved column resizing behavior
2239 of property editor and object inspector.
2240 * [147317] Improved handling for switching user interface modes,
2241 preventing the geometries of form window from being changed.
2242 Made 'Bring to front' deiconify windows.
2243 * [146629] Fixed never ending loop on Linux triggered by scrolling
2244 quickly through the pages of a QStackedWidget.
2245 * [145806] Enabled KDialog to be used as a template.
2246 * [142723] Enabled the pages of QStackedWidget, QTabWidget and QToolBox
2248 * [105916] Enabled QMenuBar to be promoted.
2249 * [147317] Improved the New Form dialog.
2250 * [95038] Fixed handling of layout defaults.
2251 * [103326] Made it possible to make connections to form signals.
2252 * [145954] Added a new dialog for promoted widgets with the ability to
2253 specify global include files.
2254 Added promotion candidates to the form's context menu.
2255 * [127232] Ensured that global include files returned by
2256 QDesignerCustomWidgetInterface::includeFile() are handled correctly.
2257 * [139985] Improved handling of layouts for custom widgets.
2258 * [99129] Made custom implementations of QDesignerMemberSheetExtension
2260 * [87181] Added support for setting properties on items in a multi-
2262 Added support for sub-properties. For example, changing the font size
2263 of a multi-selection does not overwrite other font settings.
2264 Added undo-support for property comments.
2265 * [135360] Added tooltips to the property editor, action editor and
2267 * [103215] Added handling of escaped newline characters for text
2269 Added support for validators and syntax highlighting for style sheets.
2270 * [135468] Added support for tool bar breaks.
2271 * [135620] Fixed several issues concerning handling of properties of
2273 * [109077] Provided multi-selection support in the object inspector.
2274 * [133907] Made in-place editing of plain label texts possible.
2275 * [134657] Fixed table widget editor.
2276 * [90085] Made the resource editor consume a little less horizontal
2278 * [105671] Added support to allow main windows to be maximized while
2280 * Added a style sheet editor.
2283 * Translations can be exported to and imported from XLIFF files.
2284 * [136633] Fixed "Find" so that it searches in comments.
2285 * [129163] Fixed bug that prevented "Next Unfinished" from working if
2286 there was no selected item.
2287 * [125131] Made the translation loading behavior consistent with
2288 Assistant and Designer.
2289 * [125130] Added the -resourceDir command line argument for consistency
2290 with Assistant and Designer, to allow the path of translation files
2292 * [124932] XML files (.ts and .xlf) are now written with platform-
2293 specific line endings.
2294 * [128081] Ensure that the tree view does not lose focus when the up
2295 and down cursor keys are used for navigation.
2296 Use Shift+Ctrl+K and Shift+Ctrl+L instead if you really want this
2298 * [139079] Added a DTD to document the TS file format.
2301 * Made some small improvements in lupdate's .pro file parser.
2302 Fixed bug in inclusion of relative .pri files.
2303 * [140581] Improved namespace/context parsing.
2304 * [142373] Fixed bug when running lupdate on a SUBDIRS .pro file that
2305 prevented TS files from being created.
2306 * [135991] Ensure that .pro file comments are handled correctly when
2307 they occur within a list of several variable assignments.
2308 * [154553] Fixed bug with CODECFORTR that caused saving of incorrect
2312 * [158522] By default compression is now set to the zlib default
2314 * [133837] Allow absolute paths in .qrc files (accessible through the
2315 original filesystem path).
2316 * [146958] No longer returns error when a .qrc is empty. A (mostly)
2317 empty file is generated instead.
2320 * [149054] Fixed parsing of old-style C enums.
2321 * [145205] Ensured that a warning is given when a known interface
2322 (marked with Q_DECLARE_INTERFACE) is subclassed that is not mentioned
2324 * [97300] Allow @file to be given as the options input file to handle
2325 command lines larger than allowed by the operating system.
2328 * [144383] Added checks to prevent generated code from calling
2329 ensurePolished() before each constructor is finished.
2330 * [138949] Ensured that font and size policy instances are reused in
2332 * [141350] Ensured that color brushes are reused in generated code.
2333 * [141217] Improved handling of include files of Qt 3 classes.
2334 * [144371] Ensure that each form's objectName property is not set in
2335 setupUi() to avoid problems in cases where the name was already set.
2336 * Added support for the QWidget::locale property.
2337 * [141820] Fixed generation of connections in the form.
2338 * [137520] Ensured that code to set toolTip, statusTip and whatsThis
2339 properties is not generated when the corresponding QT_NO_*
2340 preprocessor macros are defined.
2341 * [128958] Ensured that static casts are not used in generated code.
2342 * [116280] Added support for qulonglong and uint types.
2345 * [137915] Added functionality to extract images via the -extract
2346 command line option.
2347 * [129950] Added the -wrap command line option which specifies that a
2348 wrapper class which is Qt 3 source compatible should be generated.
2351 * [121965] Implemented DSW (Workspace files) generation for MSVC 6.0
2353 * [132154] Added support for /bigobj option in the vcproj generator.
2354 * Fixed crash with dependency analysis.
2355 * Ensure that cleanup rules are not added for extra compilers with no
2357 * LEX/YACC support has been moved into .prf files.
2358 * [156793] Introduced PRECOMPILED_DIR for PCH output (defaults to
2360 * [257985] Fixed qmake location detection bug.
2361 * Ensured that empty INCLUDEPATH definitions are stripped out.
2362 * Allow QMAKE_UUID to override qmake deteremined UUID in the vcproj
2364 * [151332] Ensured that .pc files are terminated with an extra carriage
2366 * [148535] Introduced QMAKE_FRAMEWORKPATH and used it internally.
2367 * [127415] Fixed object_with_source.
2368 * [127413] Introduced QMAKE_FILE_IN_PATH placeholder for extra
2370 * [95975] Replaced QMAKE_FILE_IN for custom build steps in DSP
2372 * [141749] Added checks to prevent cyclical dependencies.
2373 * [146368] Ensured that GNUmake .d files are removed upon distclean.
2374 * Improved extensibility of the precompiled header support to allow icc
2375 precompiled headers.
2376 * [147142] Short-circuit previously seen library paths to avoid
2377 cyclical .prl processing.
2378 * [144492] Ensured that INSTALL_PROGRAM is set for INSTALLS in
2379 macx-xcode projects.
2380 * [143720] Extra compilers will now depend upon the input file
2382 * Introduced QMAKE_DISTCLEAN for extra files to be removed upon
2383 invocation of "make distclean".
2384 * [133518] Reduced the noise created by qmake warnings.
2385 * [108012] Brought macx-xcode into line with macx-g++ with regards to
2386 custom bundle types.
2387 * [128759] Added support for spaces in paths to linked libraries.
2388 * [83445] Made sure that "make distclean" in a library with a DESTDIR
2389 really does remove the destination symbolic links.
2390 * The subdir generator will now use - to separate target words and _ to
2391 separate internally appended words.
2392 * [125557] Fixed broken generation of dependencies for extra compilers.
2393 * Ensured that the QMAKE_QMAKE variable is given a reasonable default
2394 before parsing and evaluating project files.
2395 * For Unix/Mac OS X, configure now has an -optimized-qmake option that
2396 allows people to build qmake with optimizations.
2397 This is disabled by default as older versions of some compilers take
2398 a long time to build an optimized qmake. qmake is already built with
2399 optimizations on Windows.
2400 * [130979] Made the incremental link option case-insensitive.
2401 * Ensured that paths for custom build steps in vcproj files have the
2403 * Avoid duplicate dependency paths, reduce file stats.
2404 * [91313] Ensured that multiple commands in the DSP generator are
2405 separated with \n\t characters.
2406 * [108681] Added checks to avoid problems with uic3 files having
2407 dependencies on themselves.
2408 * [130977] Added support for non-flat output for vcproj files with
2409 single configuration.
2410 * [134971] Added support for more compiler and linker options for
2411 vcproj files, and added catch-all cases which add options to
2412 AdditionalOptions variables.
2413 * [140548] Fixed escaping of the custom build step for image
2415 * [114833] Ensured that paths in vcproj always have native filing
2417 * [144020] Only allow CONFIG+=staticlib for TEMPLATE==lib.
2418 * [97300] Handle large number of include paths on Windows for moc by
2419 using temporary files. (See moc changes.)
2420 * [150519] Ensured that qmake is compiled with the correct mkspec on
2422 * [148724] Added manifest files to project clean up.
2423 * [123501] Added /LIBPATH to AdditionalLibraryPaths in vcproj files.
2424 * [80526] Made sure that extra compiler commands are not corrupted due
2425 to path separator fixing.
2426 * [109322] Moved hardcoded extra compilers, yacc and lex, into the PRF
2428 * [101783] Added a _DEBUG to Resource Tool for debug builds on Windows.
2429 * [145074] Added a custom build step on input files, for extra compiler
2430 files with built-in compilers for the output files.
2431 * [150961] Added support for QMAKE_PRE_LINK in the DSP and VCPROJ
2433 * Added checks to avoid double escaping of DESTDIR_TARGET file paths in
2435 * Ensured that file paths for COPY_FILE and QMAKE_BUNDLE are escaped.
2436 * [83765] Ensured that input files instead of output files are added to
2437 extra compiler steps under certain conditions.
2438 * [101482] Fixed relative path handling for RC_FILE.
2440 ****************************************************************************
2442 ****************************************************************************
2445 * [93364] Added support for the TIFF image format.