Qt 3.0 Beta6 is not binary compatible with Beta5; any programs linked
against Beta5 must be recompiled.
Below you will find a description of general changes in the Qt
Library, Qt Designer and Qt Assistant. Followed by a detailed list of
changes in the API.
The Qt Library
========================================
QCom postponed
--------------
Previous Qt 3.0 betas introduced a module called QCom that provides a
COM-like component system. The feedback we received on this module
during the 3.0 beta phase has been mixed. Many users think this module
lacks the intuitiveness and compactness that they have learned to
expect from a Qt API. Therefore, we have made the difficult decision
to withdraw the QCom API from the Qt 3.0 release. We will continue to
develop this API until it is evolved enough for our customers, and
will include the improved version in a later release.
We apologize for any inconvenience the QCom API change has
caused. This decision was made as part of our ongoing efforts to
maintain the soundness and quality of Qt.
Please note that the new plugin functionality in 3.0 will still be
provided. This includes using custom widgets in Qt Designer, as well
as runtime addition of styles, codecs, SQL drivers, and image format
handlers. This functionality is now available through a substantially
simplified API.
Also also note that it will still be convenient to add custom plugin
capabilities to Qt 3.0 applications, since the new QLibrary class will
still be available. This class takes care of the low-level,
platform-dependent issues regarding loading of DLLs and obtaining
pointers to the functions exported by the DLLs.
Qt Designer
========================================
- Improvements to the Designer reference manual.
- Improved the C++ code indenter in the editor for numbers and
handling of parenthesis.
Qt Assistant
========================================
- Added a context menu with common commands.
- Allow multiple windows to be opened and added the common shortcut
that Shift+Click on a link opens the link in a new window.
Qt Functions
========================================
QAccel
------
- Try harder to ensure that accelerators continue to work when a top
level widget is reparented into another window.
QColor
-----
- X11 only: better heuristic to decide if you use black or white when a
color could not be allocated.
- win32 only: improve color allocation on 8bit displays, e.g. when
using a terminal server.
QComboBox
---------
- Added a new function to be able to set a custom line edit.
New function:
virtual void setLineEdit( QLineEdit *edit );
QCString
--------
- Implemented a dummy out-of-line destructor for QCString to help the
compiler to optimize the number of conflicts as the location of a vtable
is now known.
QCursor
-------
- win32 only: Added a constructor that takes a platform specific handle.
New function:
QCursor( HCURSOR ); (win32 only)
QDateTime and QDateTimeEdit
---------------------------
- win32 only: better handling of localization settings.
QDockWindow
-----------
- Remeber last size of an undocked window, so when it is docked and
undocked again, use this size again.
QDom
----
- Fixed an infinite loop in QDomDocument::toString().
QFileDialog
-----------
- Improved handling of "~" to make it work as a directory.
QFileInfo
---------
- win32 only: permissions respects the read-only attribute now.
QIconView
---------
- Added a function to find out whether an item in a view is currently
being renamed.
- Fixed a crash.
New function:
bool isRenaming() const;
QInputDialog
------------
- Improved the handling of double input formats.
QListView
---------
- Added a function to find out whether an item in a view is currently
being renamed.
- Fixed a possible infinite loop.
- Improved spacing handling for columns that can show a sort indicator.
New function:
bool isRenaming() const;
QMainWindow
-----------
- Make menuAboutToShow() protected to allow customized dock menus.
- Fixed spacing problem for menu bars.
QMap
----
- Fixed infinite looping in count( const Key& k ).
QObject
-------
- The slot deferredDelete() was renamed to deleteLater() to be more
intuitive. Code that used deferredDelete() has to be adjusted for the
new name.
New function:
void deleteLater();
QPainter
--------
- Fixed bounding rectangle when printing richtext.
- Restore brush origin in QPainter::restore().
QPixmap
-------
- X11 with render extension only: better support for alpha blending:
- QPixmap::xForm() keeps now the alpha channel information
- alpha channel information is kept when copying QPixamps
- alpha blending works with QMovie
- tiling pixmaps with alpha channel works now
QPrinter
--------
- Unix only: fixed dashed line drawing when using high resolution
printing.
- Better printing detection on Irix.
QRadioButton
------------
- Fixed focus problem for radio buttons in a button group.
QSqlCursor
----------
- Fixed primeInsert() to work if the primary key of the edit buffer has
changed.
- Changing primary index keys now also works if the cursor's position
moved in the meantime.
QStyle
------
- Added a base value (CC_CustomBase) for custom defined primitives,
controls, etc. -- this allows custom widgets to use the new style
engine.
- Fixed spacing problem for custom menu items.
- Improved the look of the Motif plus and the SGI style.
QTable
------
- Fixed a crash when drag source is the current table editor widget.
- Fixed a bug that prevented having different colors in different cells.
QTabletEvent
------------
- Improved Watcom tablet support to allow multiple devices to be used.
QTextEdit
---------
- Better handling for font sizes in the font tag.
- Parse the qt tag again.
- Fixed text() for read-only documents.
- Improved right mouse button menu handling.
- New function to pass the position to the createPopupMenu() function for
improved flexibility.
New function:
virtual QPopupMenu *createPopupMenu( const QPoint& pos );
QThread
-------
- Unix only: Make sure that the seconds and nano-seconds in the sleep
functions are within the limits.
QUrlInfo
--------
- Added the concept of invalid QUrlInfo objects. This is useful in
conjunction with QUrlOperator::info().
New function:
bool isValid() const;
QWizard
-------
- Set the previous pages nextEnabled to TRUE if we add a page to the end
of a wizard.
QWMatrix
--------
- mapRect() returns always a valid QRect now.
QWorkspace
----------
- Update the titlebar when toggling shaded/non-shaded.
- Update the titlebar to be deactivated when the application's activation
status changes.
- Improve placement of document windows.