| 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. |