Qt 3.0 Beta3 is not binary compatible with Beta2, this means that any+ −
programs linked with Beta2 must be recompiled.+ −
+ −
Below you'll find a description of general changes in the Qt Library+ −
and Qt Designer followed by a detailed list of changes in the+ −
programming API.+ −
+ −
+ −
The Qt Library+ −
========================================+ −
+ −
Documentation+ −
-------------+ −
+ −
Overall enhancements include fixed typos, corrected grammar and+ −
spelling, and the addition of several images and code examples. Most+ −
classes now have useful detailed descriptions. Documentation accuracy+ −
and usability has been generally improved.+ −
+ −
Styles+ −
------+ −
+ −
In Qt 3.0.0 Beta2, only the Windows and Motif styles were implemented with+ −
the new style API. Now the missing styles (MotifPlus, Platinum, SGI and+ −
CDE) are included.+ −
+ −
MNG+ −
---+ −
+ −
Updated the libmng that is shipped with Qt to version 1.0.2.+ −
+ −
Wacom Tablet Support+ −
--------------------+ −
+ −
Fixes for Windows to solve the problem of creating a context for every+ −
widget and the problem of opening the dialog and losing the ability to use+ −
the tablet afterwards.+ −
+ −
+ −
Qt Designer+ −
========================================+ −
+ −
- Added the ability to sort the property editor either by category+ −
(default and old behaviour) or alphabetically.+ −
+ −
- Added the option "-nofwd" to uic which supresses the generation of+ −
forward declarations for custom classes in the generated output.+ −
+ −
- The way how custom slots and editing these slots directly in the Qt+ −
Designer is handled has been changed. Originally the code for these+ −
slots was saved into the .ui XML file together with the user+ −
interface description and the uic did put this code into the+ −
generated source files.+ −
Now, if code of custom slots is edited directly in the Qt Designer,+ −
additionally to the <filename>.ui of a form, a <filename>.ui.h file+ −
is created. The code is written into this source file now instead+ −
of the .ui file.+ −
This way the code of custom slots can be also easily edited outside+ −
the Qt Designer without subclassing, and it is possible to edit it+ −
both, in the Qt Designer and outside the Qt Designer without+ −
conflicts, as this is a plain text C++ file.+ −
Uic now automatically includes this source file into the generated+ −
sources (if it exists) and, in this case, does not create empty+ −
stubs for the custom slots in the generated sources anymore. So+ −
this code file has not to be added to the project Makefile. If the+ −
source file does not exist, uic falls back to the old behavior and+ −
creates the empty stubs in the generated source.+ −
If a user does not want to subclass to implement the custom slots,+ −
but also does not want to edit the code of the custom slots in the+ −
Qt Designer, it is possible to always create the <formname>.ui.h+ −
for a form (even if it was not edited in the Qt Designer) and edit+ −
that file in a seperate editor. This feature can be configured in+ −
the project settings dialog.+ −
This way, the old approach of subclassing keeps working (and all+ −
old .ui files keep working without any change). Also, for users of+ −
the previous Qt 3.0 Beta versions, Qt Designer can still read the+ −
.ui files which contain code. So also .ui files created with Qt 3.0+ −
Beta versions of the Qt Designer keep working without any change.+ −
Details about the possible concepts which can be used to add code+ −
to a form created by the Qt Designer (subclassing and uic ++ −
<filename>.ui.h) and related information about project management+ −
can be found in the chapter about new features in Qt Designer 3.0+ −
in the Qt Designer manual.+ −
+ −
+ −
Qt Functions+ −
========================================+ −
+ −
QApplication+ −
------------+ −
+ −
- flush() no longer calls sendPostedEvents(), as this might be unsafe+ −
under certain circumstances.+ −
+ −
QDataTable+ −
----------+ −
+ −
- Now uses the new row selection mode of QTable.+ −
+ −
QDomDocument+ −
------------+ −
+ −
- Fixed the toString() function to work properly with namespaces.+ −
- In Qt 3.0.0 Beta2, there was a workaround for Microsoft's XML parser,+ −
so that the toString() function did not output a doctype that consists+ −
only of the name. This workaround is semantically wrong; it was+ −
reverted.+ −
+ −
QDateEdit+ −
---------+ −
+ −
- Fixed wrong default size policy and missing size hint.+ −
- Improved focus and tab handling.+ −
+ −
QEffects+ −
--------+ −
+ −
- Tooltips and popup menus scroll and fade again+ −
+ −
QTable+ −
------+ −
+ −
- Fixed right mouse button handling.+ −
- Implemented row selection modes. This implied adding the new enum values+ −
SingleRow and MultiRow to the enum SelectionMode.+ −
- Doubleclick clears selections completely now.+ −
- Allow different focus styles, namely FollowStyle (draw it as the style+ −
tells you) and SpreadSheet (draw it as it is done in common spreadsheet+ −
programs).+ −
+ −
New functions:+ −
virtual void setFocusStyle( FocusStyle fs );+ −
FocusStyle focusStyle() const;+ −
virtual QRect cellRect( int row, int col ) const;+ −
+ −
QTimeEdit+ −
---------+ −
+ −
- Fixed wrong default size policy and missing size hint.+ −
- Improved focus and tab handling.+ −
+ −
QTextEdit+ −
---------+ −
+ −
- QTextCursor is an internal class, so the signal+ −
cursorPositionChanged(QTextCursor*) is only of limited use. Added a+ −
more useful signal in addition.+ −
+ −
- Overrides accelerators for all shortcuts used to edit text.+ −
+ −
New signal:+ −
void cursorPositionChanged( int para, int pos );+ −
+ −
QLineEdit+ −
---------+ −
+ −
- Overrides accelerators for all shortcuts used to edit text.+ −
+ −
QLibrary+ −
--------+ −
+ −
- Static overload for resolve as a convenience function.+ −
+ −
New function:+ −
static void *resolve( const QString &filename, const char * );+ −
+ −
QListView+ −
---------+ −
+ −
- A bug that was introduced in Qt 3.0.0 beta 2 made listviews with+ −
lots of items very slow. This problem has been fixed.+ −
+ −
QProcess+ −
--------+ −
+ −
- exitStatus() did not work for negative values on Unix. This is fixed+ −
now.+ −
- Fixed problems on Unixware.+ −
+ −
QRichtext+ −
---------+ −
+ −
- Fixed searching backwards.+ −
- Fixed some BIDI text-rendering problems.+ −
+ −
QSound+ −
------+ −
+ −
- Simplified the API to allow easier extension.+ −
+ −
New functions:+ −
bool isAvailable();+ −
int loops() const;+ −
int loopsRemaining() const;+ −
void setLoops(int);+ −
QString fileName() const;+ −
bool isFinished() const;+ −
+ −
New slot:+ −
void stop();+ −
+ −
Removed function:+ −
bool available();+ −
+ −
QSpinBox+ −
--------+ −
+ −
- Spin box arrows were not updated correctly when the widget was+ −
disabled/enabled. This problem is fixed now.+ −
- Improved handling of the case when a spinbox accepts a value: now it+ −
also accepts it if the spinbox loses focus or is hidden.+ −
+ −
QSqlCursor+ −
----------+ −
+ −
- Add functions to set the generated flag. This is used to avoid the+ −
generation of malformed SQL statements.+ −
+ −
New functions:+ −
void setGenerated( const QString& name, bool generated );+ −
void setGenerated( int i, bool generated );+ −
+ −
QSqlDriver+ −
----------+ −
+ −
- Add new function hasFeature( QSqlDriver::DriverFeature ) const which+ −
allows you to query whether the driver supports features like SQL+ −
transactions or Binary Large Object fields. The functions+ −
hasQuerySizeSupport(), canEditBinaryFields() and hasTransactionSupport()+ −
are therefore obsolete and have been removed.+ −
+ −
New function:+ −
bool hasFeature( QSqlDriver::DriverFeature ) const;+ −
+ −
Removed functions:+ −
bool hasQuerySizeSupport() const;+ −
bool canEditBinaryFields() const;+ −
bool hasTransactionSupport() const;+ −
+ −
QSqlField+ −
---------+ −
+ −
- The bool argument of setNull() was removed since it does not make sense+ −
to set a field to non null.+ −
+ −
QTabWidget+ −
----------+ −
+ −
- Use the functions below to add tool tips to the individual tabs in a+ −
QTabWidget.+ −
+ −
New functions:+ −
void removeTabToolTip( QWidget * w );+ −
void setTabToolTip( QWidget * w, const QString & tip );+ −
QString tabToolTip( QWidget * w ) const;+ −
+ −
QTabBar+ −
-------+ −
+ −
- Use the functions below to add tool tips to the individual tabs in a+ −
QTabBar.+ −
+ −
New functions:+ −
void removeToolTip( int id );+ −
void setToolTip( int id, const QString & tip );+ −
QString toolTip( int id ) const;+ −
+ −
QTextStream+ −
-----------+ −
+ −
- The global functions setw(), setfill() and setprecison() were deleted+ −
since they conflict with the std classes. If you need the functionality,+ −
use qSetW(), qSetFill() and qSetPrecision() instead.+ −
+ −
Removed functions:+ −
QTSManip setw( int w )+ −
QTSManip setfill( int f )+ −
QTSManip setprecision( int p )+ −