Fix module pri file name for static plugins
[profile/ivi/qtbase.git] / dist / changes-3.0.0-beta3
1 Qt 3.0 Beta3 is not binary compatible with Beta2, this means that any
2 programs linked with Beta2 must be recompiled.
3
4 Below you'll find a description of general changes in the Qt Library
5 and Qt Designer followed by a detailed list of changes in the
6 programming API.
7
8
9 The Qt Library
10 ========================================
11
12 Documentation
13 -------------
14
15 Overall enhancements include fixed typos, corrected grammar and
16 spelling, and the addition of several images and code examples. Most
17 classes now have useful detailed descriptions. Documentation accuracy
18 and usability has been generally improved.
19
20 Styles
21 ------
22
23 In Qt 3.0.0 Beta2, only the Windows and Motif styles were implemented with
24 the new style API. Now the missing styles (MotifPlus, Platinum, SGI and
25 CDE) are included.
26
27 MNG
28 ---
29
30 Updated the libmng that is shipped with Qt to version 1.0.2.
31
32 Wacom Tablet Support
33 --------------------
34
35 Fixes for Windows to solve the problem of creating a context for every
36 widget and the problem of opening the dialog and losing the ability to use
37 the tablet afterwards.
38
39
40 Qt Designer
41 ========================================
42
43  - Added the ability to sort the property editor either by category
44    (default and old behaviour) or alphabetically.
45
46  - Added the option "-nofwd" to uic which supresses the generation of
47    forward declarations for custom classes in the generated output.
48
49 -  The way how custom slots and editing these slots directly in the Qt
50    Designer is handled has been changed. Originally the code for these
51    slots was saved into the .ui XML file together with the user
52    interface description and the uic did put this code into the
53    generated source files.
54    Now, if code of custom slots is edited directly in the Qt Designer,
55    additionally to the <filename>.ui of a form, a <filename>.ui.h file
56    is created. The code is written into this source file now instead
57    of the .ui file.
58    This way the code of custom slots can be also easily edited outside
59    the Qt Designer without subclassing, and it is possible to edit it
60    both, in the Qt Designer and outside the Qt Designer without
61    conflicts, as this is a plain text C++ file.
62    Uic now automatically includes this source file into the generated
63    sources (if it exists) and, in this case, does not create empty
64    stubs for the custom slots in the generated sources anymore. So
65    this code file has not to be added to the project Makefile. If the
66    source file does not exist, uic falls back to the old behavior and
67    creates the empty stubs in the generated source.
68    If a user does not want to subclass to implement the custom slots,
69    but also does not want to edit the code of the custom slots in the
70    Qt Designer, it is possible to always create the <formname>.ui.h
71    for a form (even if it was not edited in the Qt Designer) and edit
72    that file in a seperate editor. This feature can be configured in
73    the project settings dialog.
74    This way, the old approach of subclassing keeps working (and all
75    old .ui files keep working without any change). Also, for users of
76    the previous Qt 3.0 Beta versions, Qt Designer can still read the
77    .ui files which contain code. So also .ui files created with Qt 3.0
78    Beta versions of the Qt Designer keep working without any change.
79    Details about the possible concepts which can be used to add code
80    to a form created by the Qt Designer (subclassing and uic +
81    <filename>.ui.h) and related information about project management
82    can be found in the chapter about new features in Qt Designer 3.0
83    in the Qt Designer manual.
84
85
86 Qt Functions
87 ========================================
88
89 QApplication
90 ------------
91
92  - flush() no longer calls sendPostedEvents(), as this might be unsafe
93    under certain circumstances.
94
95 QDataTable
96 ----------
97
98  - Now uses the new row selection mode of QTable.
99
100 QDomDocument
101 ------------
102
103  - Fixed the toString() function to work properly with namespaces.
104  - In Qt 3.0.0 Beta2, there was a workaround for Microsoft's XML parser,
105    so that the toString() function did not output a doctype that consists
106    only of the name. This workaround is semantically wrong; it was
107    reverted.
108
109 QDateEdit
110 ---------
111
112  - Fixed wrong default size policy and missing size hint.
113  - Improved focus and tab handling.
114
115 QEffects
116 --------
117
118  - Tooltips and popup menus scroll and fade again
119
120 QTable
121 ------
122
123  - Fixed right mouse button handling.
124  - Implemented row selection modes. This implied adding the new enum values
125    SingleRow and MultiRow to the enum SelectionMode.
126  - Doubleclick clears selections completely now.
127  - Allow different focus styles, namely FollowStyle (draw it as the style
128    tells you) and SpreadSheet (draw it as it is done in common spreadsheet
129    programs).
130
131 New functions:
132         virtual void setFocusStyle( FocusStyle fs );
133         FocusStyle focusStyle() const;
134         virtual QRect cellRect( int row, int col ) const;
135
136 QTimeEdit
137 ---------
138
139  - Fixed wrong default size policy and missing size hint.
140  - Improved focus and tab handling.
141
142 QTextEdit
143 ---------
144
145  - QTextCursor is an internal class, so the signal
146    cursorPositionChanged(QTextCursor*) is only of limited use. Added a
147    more useful signal in addition.
148
149  - Overrides accelerators for all shortcuts used to edit text.
150
151 New signal:
152         void cursorPositionChanged( int para, int pos );
153
154 QLineEdit
155 ---------
156
157  - Overrides accelerators for all shortcuts used to edit text.
158
159 QLibrary
160 --------
161
162  - Static overload for resolve as a convenience function.
163
164 New function:
165         static void *resolve( const QString &filename, const char * );
166
167 QListView
168 ---------
169
170  - A bug that was introduced in Qt 3.0.0 beta 2 made listviews with
171    lots of items very slow. This problem has been fixed.
172
173 QProcess
174 --------
175
176  - exitStatus() did not work for negative values on Unix. This is fixed
177    now.
178  - Fixed problems on Unixware.
179
180 QRichtext
181 ---------
182
183  - Fixed searching backwards.
184  - Fixed some BIDI text-rendering problems.
185
186 QSound
187 ------
188
189  - Simplified the API to allow easier extension.
190
191 New functions:
192         bool isAvailable();
193         int loops() const;
194         int loopsRemaining() const;
195         void setLoops(int);
196         QString fileName() const;
197         bool isFinished() const;
198
199 New slot:
200         void stop();
201
202 Removed function:
203         bool available();
204
205 QSpinBox
206 --------
207
208  - Spin box arrows were not updated correctly when the widget was
209    disabled/enabled. This problem is fixed now.
210  - Improved handling of the case when a spinbox accepts a value: now it
211    also accepts it if the spinbox loses focus or is hidden.
212
213 QSqlCursor
214 ----------
215
216  - Add functions to set the generated flag. This is used to avoid the
217    generation of malformed SQL statements.
218
219 New functions:
220         void setGenerated( const QString& name, bool generated );
221         void setGenerated( int i, bool generated );
222
223 QSqlDriver
224 ----------
225
226  - Add new function hasFeature( QSqlDriver::DriverFeature ) const which
227    allows you to query whether the driver supports features like SQL
228    transactions or Binary Large Object fields. The functions
229    hasQuerySizeSupport(), canEditBinaryFields() and hasTransactionSupport()
230    are therefore obsolete and have been removed.
231
232 New function:
233         bool hasFeature( QSqlDriver::DriverFeature ) const;
234
235 Removed functions:
236         bool hasQuerySizeSupport() const;
237         bool canEditBinaryFields() const;
238         bool hasTransactionSupport() const;
239
240 QSqlField
241 ---------
242
243  - The bool argument of setNull() was removed since it does not make sense
244    to set a field to non null.
245
246 QTabWidget
247 ----------
248
249  - Use the functions below to add tool tips to the individual tabs in a
250    QTabWidget.
251
252 New functions:
253         void removeTabToolTip( QWidget * w );
254         void setTabToolTip( QWidget * w, const QString & tip );
255         QString tabToolTip( QWidget * w ) const;
256
257 QTabBar
258 -------
259
260  - Use the functions below to add tool tips to the individual tabs in a
261    QTabBar.
262
263 New functions:
264         void removeToolTip( int id );
265         void setToolTip( int id, const QString & tip );
266         QString toolTip( int id ) const;
267
268 QTextStream
269 -----------
270
271  - The global functions setw(), setfill() and setprecison() were deleted
272    since they conflict with the std classes. If you need the functionality,
273    use qSetW(), qSetFill() and qSetPrecision() instead.
274
275 Removed functions:
276         QTSManip setw( int w )
277         QTSManip setfill( int f )
278         QTSManip setprecision( int p )