dist/changes-3.0.0-beta4
changeset 0 1918ee327afb
equal deleted inserted replaced
-1:000000000000 0:1918ee327afb
       
     1 Qt 3.0 Beta4 is not binary compatible with Beta3; any programs linked
       
     2 against Beta3 must be recompiled.
       
     3 
       
     4 Below you will find a description of general changes in the Qt
       
     5 Library and Qt Designer followed by a detailed list of changes in the
       
     6 API.
       
     7 
       
     8 
       
     9 The Qt Library
       
    10 ========================================
       
    11 
       
    12 Documentation
       
    13 -------------
       
    14 
       
    15 The extensive revision of the documentation is almost complete.
       
    16 We have added new navigation options, including a shorter list
       
    17 of classes entitled Main Classes.
       
    18 
       
    19 Translations
       
    20 ------------
       
    21 
       
    22 Qt now includes French and German translations of the Qt library, as
       
    23 well as a template for translating Qt. These files are found in the
       
    24 translations directory of Qt, in both .ts and .qm formats.
       
    25 
       
    26 Style Fixes
       
    27 -----------
       
    28 
       
    29 Qt 3.0.0 beta2 introduced a new QStyle API. This new API has changed
       
    30 between beta3 and beta4. These changes will affect both widget
       
    31 writers and style writers. The QStyle entry below explains what has
       
    32 changed.
       
    33 
       
    34 Beta4 also introduces some fixes for bugs introduced during the port
       
    35 to the new API in various widgets, notably QComboBox and QSlider.
       
    36 
       
    37 LiveConnect Plugin
       
    38 ------------------
       
    39 
       
    40 A few bugs were fixed in the LiveConnect Plugin so that the grapher
       
    41 example works again on Windows.
       
    42 
       
    43 
       
    44 Qt Designer
       
    45 ========================================
       
    46 
       
    47  - General usability improvements and bug fixes, and improved file
       
    48    and project handling.
       
    49  - Updated designer manual to cover the .ui.h mechanism.
       
    50  - New auto-indentation algorithm in the code editor.
       
    51 
       
    52 
       
    53 Qt Assistant
       
    54 ========================================
       
    55 
       
    56  - Added a Settings dialog and made more features customizable.
       
    57  - Sessions are now saved and restored.
       
    58  - A brief introduction to using Qt Assistant is now included.
       
    59 
       
    60 
       
    61 Qt Linguist
       
    62 ========================================
       
    63 
       
    64  - Phrase books are now provided in tools/linguist/phrasebooks.
       
    65  - Added support for Qt Designer's .ui.h mechanism to lupdate.
       
    66  - Support for a larger subset of .pro file syntax in lupdate and
       
    67    lrelease.
       
    68 
       
    69 
       
    70 Qt Functions
       
    71 ========================================
       
    72 
       
    73 QApplication
       
    74 ------------
       
    75 
       
    76  - Ignore drag-and-drop events for disabled widgets.
       
    77  - Always send ChildRemoved events, even if no ChildInserted event
       
    78    was sent.
       
    79  - Mouse events for popup menus are now sent to event filters.
       
    80 
       
    81 QCanvasItem
       
    82 -----------
       
    83 
       
    84  - The functions visible(), selected() and active() have been renamed
       
    85    setVisible(), setSelected() and setActive().
       
    86 
       
    87 New functions:
       
    88 	bool isVisible() const;
       
    89 	bool isSelected() const;
       
    90 	bool isActive() const;
       
    91 
       
    92 Removed functions:
       
    93 	bool visible() const;
       
    94 	bool selected() const;
       
    95 	bool active() const;
       
    96 
       
    97 QCanvasText
       
    98 -----------
       
    99 
       
   100  - Fixed alignment flags.
       
   101 
       
   102 QChar
       
   103 -----
       
   104 
       
   105 New function:
       
   106 	bool isSymbol() const;
       
   107 
       
   108 QCheckBox
       
   109 ---------
       
   110 
       
   111  - Fixed a bug in pixmap caching which could result in using the
       
   112    wrong pixmap.
       
   113 
       
   114 QCheckListItem
       
   115 --------------
       
   116 
       
   117  - After a mouse click, the list view ignores the following double
       
   118    click as in Windows XP.
       
   119 
       
   120 QClipboard
       
   121 ----------
       
   122 
       
   123  - Made clipboard operations faster on X11.
       
   124 
       
   125 QColorDialog
       
   126 ------------
       
   127 
       
   128  - Never show scrollbars in the color array.
       
   129 
       
   130 QComboBox
       
   131 ---------
       
   132 
       
   133  - Comboboxes are now drawn correctly in all styles.
       
   134  - Fixed bug with auto completion. There was undefined behavior with
       
   135    non-editable comboboxes when changing focus.
       
   136 
       
   137 New function:
       
   138 	virtual void setCurrentText( const QString& );
       
   139 
       
   140 New property:
       
   141 	QString currentText
       
   142 
       
   143 QDataBrowser
       
   144 ------------
       
   145 
       
   146  - The setCursor() function is obsolete and will be removed for Qt 3
       
   147    release due to the incompatibility with some compilers. Use
       
   148    setSqlCursor() instead.
       
   149 
       
   150 QDataTable
       
   151 ----------
       
   152 
       
   153  - Dates and times in tables can now be displayed in different
       
   154    display formats.
       
   155  - The setCursor() function is obsolete and will be removed for Qt 3
       
   156    release due to the incompatibility with some compilers. Use
       
   157    setSqlCursor() instead.
       
   158 
       
   159 QDateEdit
       
   160 ---------
       
   161 
       
   162  - The default separator and the day-month-year order respect the
       
   163    user's settings.
       
   164  - Pressing the separator key now skips to the next section.
       
   165  - Fixed a usability flaw related to some months being longer than
       
   166    others.
       
   167 
       
   168 New functions:
       
   169 	QString separator() const;
       
   170 	virtual void setSeparator( const QString& s );
       
   171 
       
   172 QDateTime
       
   173 ---------
       
   174 
       
   175  - Always initialize the tm struct completely. This fixes a problem
       
   176    on some versions of Unix.
       
   177 
       
   178 QDir
       
   179 ----
       
   180 
       
   181  - QDir::homeDirectory() now always returns an existing directory on
       
   182    Windows.
       
   183 
       
   184 QDockWindows
       
   185 ------------
       
   186 
       
   187  - Fixed dockwindows created in non-dock areas.
       
   188  - Fixed constructor if InDock and the parent is a QMainWindow.
       
   189 
       
   190 QDom...
       
   191 -------
       
   192 
       
   193  - Fixes in the conversion of the DOM tree to a string.
       
   194 
       
   195 QDomNodeList
       
   196 ------------
       
   197 
       
   198  - Fixed a crash.
       
   199 
       
   200 QFileDialog
       
   201 -----------
       
   202 
       
   203  - Select contents of the line edit at startup (if any) so that the
       
   204    user can overwrite the provided file name right away.
       
   205 
       
   206 QFileInfo
       
   207 ---------
       
   208 
       
   209  - In adition to lastModified() and lastRead(), provide created().
       
   210 
       
   211 New function:
       
   212 	QDateTime created() const;
       
   213 
       
   214 QFont
       
   215 -----
       
   216 
       
   217  - Provide more correct font metrics under X11.
       
   218  - Worked around X11 limits on length of strings to draw and on
       
   219    coordinate sizes.
       
   220  - Fixed sone point vs. pixel size issues under X11.
       
   221  - Added PreferAntialias and NoAntialias flags to StyleStrategy enum
       
   222    type.
       
   223 
       
   224 QFtp
       
   225 ----
       
   226 
       
   227  - Fixed a QSocket bug that made QFtp crash if the connection was
       
   228    refused.
       
   229  - Fixed operationRename() and operationRemove().
       
   230  - Set the right state when finished.
       
   231 
       
   232 QGIFFormat
       
   233 ----------
       
   234 
       
   235  - Support GIF files with broken logical screen size.
       
   236 
       
   237 QHeader
       
   238 -------
       
   239 
       
   240  - Added support for '\n' in header labels.
       
   241  - Improved placement of icon.
       
   242 
       
   243 QHttp
       
   244 -----
       
   245 
       
   246  - If the status code of the reply is an error code, it is now also
       
   247    reflected in the status of the network operation. The error
       
   248    handling in general was improved.
       
   249 
       
   250 QImageIO
       
   251 --------
       
   252 
       
   253  - Allow gamma correction to be set programmatically.
       
   254 
       
   255 New functions:
       
   256 	void setGamma( float gamma );
       
   257 	float gamma() const;
       
   258 
       
   259 QKeyEvent
       
   260 ---------
       
   261 
       
   262  - Worked around an X11 bug in isAutoRepeat().
       
   263 
       
   264 QKeySequence
       
   265 ------------
       
   266 
       
   267 A new class that encapsulates a key sequence as used by accelerators.
       
   268 
       
   269 QLabel
       
   270 ------
       
   271 
       
   272  - Made the WordBreak alignment property work with rich text labels
       
   273    in addition to plain text labels.
       
   274 
       
   275 QLayout
       
   276 -------
       
   277 
       
   278  - Fixed crashes with deleting widgets managed by the layout.
       
   279  - Fixed problems with reparenting widgets managed by the layout.
       
   280  - Respect maximumHeight() of items in heightForWidth().
       
   281 
       
   282 QLibrary
       
   283 --------
       
   284 
       
   285  - Plugins now return the version number, threading model and debug
       
   286    vs. release mode of the Qt library used in ucm_initialize(). If
       
   287    there is any kind of incompatibility, cancel the loading.
       
   288 
       
   289 QLineEdit
       
   290 ---------
       
   291 
       
   292  - Update the "edited" flag and the accessibility data better than
       
   293    before.
       
   294  - Fixed setMaxLength().
       
   295  - Fixed context menu problem on Windows.
       
   296 
       
   297 New functions:
       
   298 	bool isUndoAvailable() const;
       
   299 	bool isRedoAvailable() const;
       
   300 
       
   301 QListViewItem
       
   302 -------------
       
   303 
       
   304  - Fixed setVisible(TRUE) which triggered an update too soon.
       
   305 
       
   306 QMenuBar
       
   307 --------
       
   308 
       
   309  - Cancel alt-activation of menubar on mouse press/release.
       
   310  - On wheel events, all popup menus are now closed instead of hidden.
       
   311    Hiding popup menus confused QMenuBar.
       
   312 
       
   313 QObject
       
   314 -------
       
   315 
       
   316  - Have QObject dispatch events to customEvents().
       
   317 
       
   318 QPainter
       
   319 --------
       
   320 
       
   321  - Renamed the enum type ClipMode to CoordinateMode. The enum values
       
   322    ClipDevice and ClipPainter are now called CoordDevice and
       
   323    CoordPainter.
       
   324  - Fixed escaping of ampersand character, so "&&", "&&&", etc., now
       
   325    work as they did in Qt 2.x.
       
   326 
       
   327 New functions:
       
   328 	void drawPixmap( const QRect& r, const QPixmap& pm );
       
   329 	void drawImage( const QRect& r, const QImage& img );
       
   330 
       
   331 QPicture
       
   332 --------
       
   333 
       
   334  - Respect the size of a loaded SVG document.
       
   335  - Solved a replay-transformed-picture problem.
       
   336  - Fixed format version number.
       
   337 
       
   338 QPluginManager
       
   339 --------------
       
   340 
       
   341  - Fixed crash when loading a plugin fails.
       
   342 
       
   343 QPopupMenu
       
   344 ----------
       
   345 
       
   346  - Custom menu items that are separators now see their size hint
       
   347    respected.
       
   348  - Fixed crash when drawing an empty popup menu.
       
   349 
       
   350 QPrinter
       
   351 --------
       
   352 
       
   353  - Better printing in different resolutions under both Windows and
       
   354    X11.
       
   355  - Support for collation under Windows and X11.
       
   356  - Correct bounding rectangles for texts in all printer modes.
       
   357  - Fixed pixmap printing on Windows.
       
   358  - Fixed PostScript font names for fonts with foundries.
       
   359  - Support for PostScript printing of scaled images.
       
   360 
       
   361 New functions:
       
   362 	bool collateCopiesEnabled() const;
       
   363 	void setCollateCopiesEnabled( bool enable ) const;
       
   364 	bool collateCopies() const;
       
   365 	void setCollateCopies( bool on );
       
   366 	int winPageSize() const; /* Windows only */
       
   367 
       
   368 QProcess
       
   369 --------
       
   370 
       
   371  - The function hangUp() was renamed to tryTerminate() to make the
       
   372    purpose more clear. Furthermore, under Unix, the signal that is
       
   373    sent was changed from SIGHUP to SIGTERM.
       
   374  - The function kill() and the function tryTerminate() (formerly
       
   375    hangUp()) were made slots.
       
   376 
       
   377 New slots:
       
   378 	void tryTerminate();
       
   379 	void kill();
       
   380 
       
   381 Removed functions:
       
   382 	void hangUp();
       
   383 	void kill();
       
   384 
       
   385 QProgressBar
       
   386 ------------
       
   387 
       
   388  - Draw the progress bar correctly with respect to the properties
       
   389    "percentageVisible", "indicatorFollowsStyle" and
       
   390    "centerIndicator".
       
   391 
       
   392 QPtrVector
       
   393 ----------
       
   394 
       
   395  - Support null items without triggering an assert.
       
   396 
       
   397 QPushButton
       
   398 -----------
       
   399 
       
   400  - Fixed the sizeHint() of buttons with an icon.
       
   401 
       
   402 QRegExp
       
   403 -------
       
   404 
       
   405  - Fixed a subtle bug in regular expressions mixing anchors and
       
   406    alternation.
       
   407 
       
   408 QRegion
       
   409 -------
       
   410 
       
   411  - Don't crash when creating a QRegion from an empty point array.
       
   412 
       
   413 QRichText
       
   414 ---------
       
   415 
       
   416  - Improved alignment support, including nested alignments.
       
   417  - Improved table margin support.
       
   418  - Improved page break algorithm.
       
   419  - Do not eat '\n' in preformatted items.
       
   420  - Do not draw the internal trailing space at the end of a paragraph.
       
   421  - Fixed link underlining in table cells and other subdocuments.
       
   422  - Use larger vertical margin between paragraphs.
       
   423  - Display paragraph spacing even when printing.
       
   424  - Support vertical table cell alignment.
       
   425  - Fix for floating items and table cell size calculation.
       
   426  - Improved allignment handling.
       
   427  - Offset fixes for tabs.
       
   428  - Better <div> support.
       
   429  - Fixed <br> tag.
       
   430  - Fix for the <center> tag and centering tables.
       
   431  - Fixed &nbsp; and <nobr>.
       
   432  - Fixed off-by-one bug in gotoWordLeft() and gotoWordRight().
       
   433  - Better positioning of super- and subscripts.
       
   434  - Faster printing of large tables by using a clipping rectangle.
       
   435  - Improved high-resolution printing.
       
   436  - Correct sizes for images when printing.
       
   437  - Fixed list painting when printing.
       
   438  - Use right background for printing.
       
   439 
       
   440 QScrollBar
       
   441 ----------
       
   442 
       
   443  - Made setValue() a slot.
       
   444 
       
   445 New slot:
       
   446 	void setValue( int );
       
   447 
       
   448 Removed function:
       
   449 	void setValue( int );
       
   450 
       
   451 QSettings
       
   452 ---------
       
   453 
       
   454  - Added support for QStringLists without requiring a distinct
       
   455    separator.
       
   456  - Added support for null strings, empty lists and null strings in
       
   457    lists.
       
   458  - Fixed bug with values ending with a backslash.
       
   459  - On Unix, don't overwrite files if the user doesn't have permission.
       
   460 
       
   461 QSimpleRichText
       
   462 ---------------
       
   463 
       
   464  - Implemented vertical breaks and floating elememts.
       
   465  - Fixed bug with borders and clipping in printing.
       
   466  - Fixed bug in adjustSize() cache.
       
   467 
       
   468 QSizePolicy
       
   469 -----------
       
   470 
       
   471  - Stretch factors were added to QSizePolicy.
       
   472  - Added a new size policy: Ignored.
       
   473 
       
   474 New functions:
       
   475 	uint horStretch() const;
       
   476 	uint verStretch() const;
       
   477 	void setHorStretch( uchar sf );
       
   478 	void setVerStretch( uchar sf );
       
   479 
       
   480 QSpinBox
       
   481 --------
       
   482 
       
   483 New slot:
       
   484 	virtual void selectAll();
       
   485 
       
   486 QSqlDatabase
       
   487 ------------
       
   488 
       
   489  - QSqlDatabase now provides access to meta-data. Meta-data is stored
       
   490    in two new classes, QSqlFieldInfo and QSqlRecordInfo. See the
       
   491    class documentation for details.
       
   492 
       
   493 New Functions:
       
   494 	QSqlRecordInfo recordInfo ( const QString & tablename ) const
       
   495 	QSqlRecordInfo recordInfo ( const QSqlQuery & query ) const
       
   496 
       
   497 
       
   498 QSqlFieldInfo
       
   499 -------------
       
   500 
       
   501 A new class that stores meta data associated with a SQL field.
       
   502 
       
   503 QSqlRecordInfo
       
   504 --------------
       
   505 
       
   506 A new class that is keeping a set of QSqlFieldInfo objects.
       
   507 
       
   508 QStatusBar
       
   509 ----------
       
   510 
       
   511  - Don't cut off the bottom line of the border of the status bar.
       
   512  - Respect maximumHeight() of items in the status bar.
       
   513 
       
   514 QString
       
   515 -------
       
   516 
       
   517  - QString now provides section(), a function that parses simple
       
   518    fields.
       
   519  - The function similarityWith() has been removed from the API. If
       
   520    you need it, write to qt-bugs@trolltech.com.
       
   521 
       
   522 New functions:
       
   523 	QString section( QChar sep, int start, int end,
       
   524 			 int flags = SectionDefault ) const;
       
   525 	QString section( char sep, int start, int end = 0xffffffff,
       
   526 			 int flags = SectionDefault ) const;
       
   527 	QString section( const char *substr, int start, int end = 0xffffffff,
       
   528 			 int flags = SectionDefault ) const;
       
   529 	QString section( QString substr, int start, int end = 0xffffffff,
       
   530 			 int flags = SectionDefault ) const;
       
   531 	QString section( const QRegExp &regxp, int start, int end = 0xffffffff,
       
   532 			 int flags = SectionDefault ) const;
       
   533 	
       
   534 Removed function:
       
   535 	int similarityWith( const QString& target ) const;
       
   536 
       
   537 QStyle
       
   538 ------
       
   539 
       
   540  - Changed "void **" technique to QStyleOption technique. This
       
   541    affects the interface of most of the QStyle member functions.
       
   542    Please read the QStyle class documentation for details.
       
   543 
       
   544 QStyleOption
       
   545 ------------
       
   546 
       
   547 A new class that encapsulates extra data sent to the style API.
       
   548 
       
   549 QTabBar
       
   550 -------
       
   551 
       
   552  - The accelerators are now working correctly after changing a tab.
       
   553 
       
   554 QTable
       
   555 ------
       
   556 
       
   557  - Fixed crash related to popup menu and cell edition.
       
   558  - Fixed not-drawing hidden cells.
       
   559 
       
   560 QTextCodec
       
   561 ----------
       
   562 
       
   563  - Added MIME names for codecs.
       
   564  - Improved locale detection.
       
   565  - Fixed the ISO 8859-6.8x (Arabic) font encoding.
       
   566 
       
   567 New function:
       
   568 	const char *mimeName() const;
       
   569 
       
   570 QTextStream
       
   571 -----------
       
   572 
       
   573  - Fixed bug with stateful QTextEncoders.
       
   574 
       
   575 QTextEdit
       
   576 ---------
       
   577 
       
   578  - Respect disabling updates.
       
   579  - Fixed link underlining in table cells and other subdocuments.
       
   580  - Draw cursor on focus in.
       
   581  - Emit cursorPositionChanged() where it previously was missing.
       
   582  - Fixed sync().
       
   583 
       
   584 New functions:
       
   585 	bool isUndoAvailable() const;
       
   586 	bool isRedoAvailable() const;
       
   587 	bool isUndoRedoEnabled() const;
       
   588 	virtual void setUndoRedoEnabled( bool enabled ) const;
       
   589 
       
   590 New property:
       
   591 	bool undoRedoEnabled
       
   592 
       
   593 QThread
       
   594 -------
       
   595 
       
   596  - Fixed QThread::sleep() on Unix.
       
   597 
       
   598 QTime
       
   599 -----
       
   600 
       
   601  - fromString() with format Qt::ISODate now recognizes milliseconds
       
   602    if they are specified.
       
   603  - Make elapsed() a const function.
       
   604 
       
   605 QTimeEdit
       
   606 ---------
       
   607 
       
   608  - The default time separator respects the user's settings.
       
   609  - Pressing the separator key now skips to the next section.
       
   610 
       
   611 New functions:
       
   612 	QString separator() const;
       
   613 	virtual void setSeparator( const QString& s );
       
   614 
       
   615 QTooltip
       
   616 --------
       
   617 
       
   618  - Hide active tooltips when the user switches to another application.
       
   619  - Fixed tooltips with Windows effects enabled.
       
   620 
       
   621 QUrl
       
   622 ----
       
   623 
       
   624  - Fixed password encoding.
       
   625 
       
   626 New function:
       
   627 	bool hasPort() const;
       
   628 
       
   629 QValidator
       
   630 ----------
       
   631 
       
   632  - Let QValidator, QIntValidator, QDoubleValidator and
       
   633    QRegExpValidator have QObject parents rather than only QWidget
       
   634    parents.
       
   635 
       
   636 QVariant
       
   637 --------
       
   638 
       
   639  - Added QBitArray support.
       
   640  - The QDateTime type now supports asDate() and asTime().
       
   641  - The QByteArray type now supports toString().
       
   642 
       
   643 New functions:
       
   644 	QVariant( const QBitArray& );
       
   645 	const QBitArray toBitArray() const;
       
   646 	QBitArray& asBitArray();
       
   647 
       
   648 QWhatsThis
       
   649 ----------
       
   650 
       
   651  - Added support for hyperlinks in "What's This?" help windows.
       
   652 
       
   653 QWidget
       
   654 -------
       
   655 
       
   656  - Fixed crashes related to LayoutHint events.
       
   657 
       
   658 QWizard
       
   659 -------
       
   660 
       
   661  - Made removePage() behave as documented.
       
   662  - Fixed back() so that it skips irrelevant pages like next().
       
   663 
       
   664 QWorkspace
       
   665 ----------
       
   666 
       
   667  - Make sure that the widget state is set before the first titlebar
       
   668    painting is triggered.
       
   669  - Use the right pixmap for titlebar.
       
   670  - Respects widget flags better for titlebars in QCommonStyle.
       
   671  - Fixed move and resize in the system menu bar of workspace
       
   672    children.
       
   673 
       
   674 QXml
       
   675 ----
       
   676 
       
   677  - Made the "prefix" xmlns map to the namespace name
       
   678    http://www.w3.org/2000/xmlns/.
       
   679  - Fixed default namespaces.
       
   680 
       
   681 QXmlAttributes
       
   682 --------------
       
   683 
       
   684  - Added count() as equivalent to length() to be consistent with Qt
       
   685    conventions.
       
   686 
       
   687 New function:
       
   688 	int count() const;