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