diff -r 000000000000 -r 1918ee327afb dist/changes-3.0.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dist/changes-3.0.1 Mon Jan 11 14:00:40 2010 +0000 @@ -0,0 +1,540 @@ +Qt 3.0.1 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.0.0 + + +**************************************************************************** +* General * +**************************************************************************** + +- Style Engine fixes + Qt 3.0 introduced a new and more flexibile style engine. This + release should fix most of the small visual flaws that the new + styles introduced. It also greatly improves appearance in + right-to-left mode. + +- MS-Windows XP + This is the first release to fully support Windows XP, + including the new themable GUI styles. + The Windows XP style can only be built as a plugin, which requires + Qt to be configured as a shared library. To build the plugin + you must install a Microsoft Platform SDK for October 2001 + or later. Your INCLUDE and LIB environment variables must + point to the respective directories in the SDK installation. + +- Reverse (right-to-left) layouts + Many classes have improved support for right-to-left layouts. + +- Compile fixes + Solaris 7 Intel, g++ version 2.8.1. + +- Documentation updates + Some new and improved diagrams and minor textual revisions. + +- Mac only: Drag'n'drop + Mac only: QDropEvents can decode HFS flavors. + +- X11 only: Multi-head (multi-screen) improvements + Support for different TrueColor depths on each head (screen). + Drag'n'drop support across multiple screens. Tooltips always + stay on the correct screen. Improved OpenGL support on + multiple screens. Qt 3.1 will support different color depths + on every screen (e.g. one TrueColor screen, one 8-bit + PseudoColor and one 8-bit GreyScale). + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction + Fixed a memory leak in conjunction with action accelerators. + Turn toggle actions off when toggling is turned off with + setToggleAction(FALSE); + +- QApplication + Shared double buffers are cleaned up on destruction. + Creating and using multiple QApplications in the same process + is supported. + - Solaris only: Default to the Interface System font (which is + the default for the CDE) + - Win32 only: When WM_QUERYENDSESSION is received, _flushall + is called to ensure that all open streams and buffers are + flushed to disk (or to OS's buffers). + Better support for more input methods (e.g. Chinese). + Enter events are not propagated to modally blocked widgets. + Key_BackTab events are generated rather than Shift+Key_Tab. + Floating toolbars are blocked when the application is modal. + Move and Resize are disabled in the system menu for + maximized toplevel windows + - WinXP only: WM_THEMECHANGED messages are handled; widgets + are repolished with the appropriate style. + - X11 only: Removed misleading warning message for main + widgets on heads (screens) other than the default head. + Input context: Solved a memory leak in Xlib, and saved a + server round trip when updating the microfocushint. + Worked around some broken XmbLookupString implementations + that do not report buffer overflows correctly. + Key events are never given to a widget after clearFocus() + has been called for that widget; this is the same behavior + as Windows. + +- QAquaStyle (MacOS X only) + More optimizations and several minor visual bugs fixed. + +- QCanvas + Erase any exposed empty space when shrinking the canvas. + +- QCanvasPixmapArray + Initialize the framecount to 0. + +- QCanvasView + Optimize background pixmaps: potentially they were drawn + twice, first untranslated then translated. + +- QClipboard (X11 only) + The race conditions that cause KDE to lock-up occasionally + should now be fixed. + +- QComboBox + Fixed behavior with non-selectable items. Fixed a crash when + calling setCurrentItem(-1). Fixed autoscrolling when dragging + the mouse directly after opening the dropdown. + +- QColor + Make invalid named colors return a non-valid QColor (as + documented). + +- QColorDialog (Win32 only) + Use WStyle_DialogBorder, since resizing this dialog does not + make much sense. + +- QCommonStyle + Respect QApplication::globalStrut() in scroll bars. Support + reverse layout in QTitleBar. + +- QCursor + Safer cleanup of cursor shapes (avoids possible free'd memory + read) + - Win32 only: fixed application override cursor with mouse + grabbing. + +- QDate + Fixed some possible overflows. + - Win32 only: Improve locale support for short day and month + names etc. Initialize milliseconds correctly. + +- QDateTimeEdit + Display AM/PM if set by locale. Improved sizeHint(). + +- QDockAarea + More reliable sizeHint(). Better support for reverse layouts. + +- QDockWindow + Emit the placeChange() signal more reliably. Avoid floating + docks popping up everywhere before they have been positioned + and laid out. + +- QDesktopWidget + - X11 only: When using normal dualhead (not Xinerama), make + sure we report the correct screen number. + - Win32 only: refresh on WM_DISPLAYCHANGE. + +- QFrame + New panel styles LineEditPanel and TabWidgetPanel. This was + required by the new for Windows XP support. + +- QFileDialog + Show unicode filenames to the user rather than encoded ASCII + (e.g. previously latin1 characters were shown as "%XX" + escapes). + Fixed multiple-selection of FTP files. + Emit signal fileHighlighted in existingfile mode. + - Mac only: Fixed existingFolder(). Fixed window position so + that it will never fall outside the screen. + - Win32 only: since files, directories and drives are not case + sensitive, we don't add an extra entry in the paths box if + the path already exists but with different case. + +- QFileInfo (Unix only) + Make sure that symlinks pointing to invalid/non-existing + targets are reported as symlinks. + +- QFont + Ensure a rounded-off value is returned from pointSize(). + - x11 only: improved line width calculation. Fixed off by one + error in interpreting Xft font extents. Allow the use of + both Xft and non Xft fonts in the same application. Make + sure fonts are antialiased by default when using + xftfreetype. + +- QFontDialog + Prevent re-laying out when the size of the preview label + changes. + +- QFtp + In parseDir(), do not compare English month names to + shortMonthName(), since the latter is localized. + +- QGList + Make self-assignments work. + +- QGLWidget + Fixed ARGB to RGBA conversion on BigEndian systems. + - Win32 only: fixed colormap for 8-bit RGBA GL mode. + - X11 only: multiple heads with different color depths fixes. + +- QHebrewCodec + Assume the bidi algorithm is a reversible operation for the + visual 8859-8 codec. This is not true for very complex strings + but should hold in most cases. + +- QIconSet + Fixed detach() to really detach the internal pixmaps. In case + no image formats are installed, show black pixmaps rather than + ASSERT. + +- QImage + Allow 16-bit DIBs. Allow > 32767 level PNMs. + Fixed smoothscale() for the following bug: whenever + (new_width / original_width * 4096) is not an integer the last + column of the scaled image is black. + +- QImageIO + Fixed plugin loading in cases where the image format is + explicitly defined. + +- QInputDialog + Disable the OK button when input is not Acceptable. + (See QValidator.) + +- QLabel + When showing rich text with tables (via QSimpleRichtext), + avoid drawing the table background. + +- QLayout + In reverse layout mode: fix off by one error when laying out + right to left or bottom to top. + +- QLineEdit + Fixed offset calculation for horizontal scrolling. Invoke + validator when the user presses Backspace or + Delete. Compression of the undo/redo stack fixed. Security: do + not reveal the position of spaces with Ctrl+RightArrow or + Ctrl+LeftArrow in password mode. + +- QListBox + Append items at the proper position even after sorting the + content. Made QWidget::setBackgroundMode() work correctly. + +- QListBoxPixmap + Use the function pixmap() when drawing the pixmap, so users + can reimplement QListBoxPixmap::pixmap(). + +- QListView + Fix misalignment of checkbox click zone. Make the selected and + focus rectangles cover the entire column for QCheckListItems + if the listview root is not decorated. Make + QWidget::setBackgroundMode() on the viewport work correctly. + Comply with user interface guidelines: clear the selection + when a click is in an empty area unless the Ctrl key is down. + Fixed possible crash when starting a rename with a double + click. Smarter ensureItemVisible(). Draw listview background + in paintEmptyArea() with the current style. Ensure the + listview always has a current item. + +- QMainWindow + Better laying out of dockareas when they are all empty. + Otherwise an empty QMainWindow looks unappealing in a + workspace. Maintain the toplevel layout's resize mode. + +- QMessageBox + Avoid double deletion if the parent is destroyed while the + messagebox is open. Support y/n/c shortcuts without needing + the Alt key modifier. + +- QMovie + Allow pause() and restart() with MNG. + +- QMultiLineEdit + Remove internal trailing space when returning a textline with + textLine(int) and querying lineLength(int). + +- QPainter + The boundingRect() should now work properly for the + combination richtext, right-aligned and an empty initial rect. + Handle DontClip-flag in the painter's complex drawText() + function. Reset the cached composition matrix (and inverse) + when reinitialising a painter. + +- QPicture + Fixed the loading of binaries from older Qt versions. + +- QPixmap + grabWidget(): when the widget sets WRepaintNoErase it might + erase itself with the non-redirected QWidget::erase(); restore + those areas. + - X11 only: (with XRENDER extension) when copying a pixmap, + bitBlt the entire data into the new pixmap instead of using + alpha composition. + +- QPopupMenu + Fixed strange side effects with the menu effects. Support + minimumSize() for popups. Fixed a navigation issue where + Key_Right under certain circumstances was not propagated to + the menu bar. Speedups when disabling/enabling menu items + before showing them. + - X11 only: Fixed mouse and keyboard grabbing side effects + with popup menu effects enabled. + +- QPrintDialog (built-in dialog) + Use the text in the lineedit for the file dialog. + +- QPrinter + Fixed crash when printing with incomplete combined unicode + fonts. + - Win32 only: fixed a very rare and mysterious crash. + + +- QPSPrinter + Make sure the fontPath is read correctly by the postscript + driver, and the qtconfig program. Small memory leaks closed. + Better support for Asian printing. Limit line length of + Postscript DSC comments to 255 chars (as per the postscript + specification). + +- QRichText + Fixed handling of  . Support both and + . Avoid painting \n at the end of lines (these + sometimes appeared as an empty unicode box). Fixed find() in + "whole words only" mode. Fixed unicode auto alignment. Made + cursor movement in BiDi paragraphs compliant with MS-Windows. + Fixed paragraph right and center alignments when using <br> + tags. Fixed superscript/subscript confusion. + +- QScrollBar + Allow scrolling with modifier keys pressed. + +- QScrollView + Made autoscrolling work with drag and drop. Never generate + paintevents that are outside the visible area. + +- QSettings + - Unix only: search paths are valid for individual objects, + NOT every object (windows behavior). When reading files, + don't replace the old groups with contents of the new + groups; merge them instead. Properly escape backslashes and + newlines. + - win32 only: improved error handling. Fixed subKeyList() and + entryList() for empty paths. + +- QSimpleRichText + Correctly transform clipping rectangle. + +- QSizeGrip + Reverted sizeHint() to the old size to avoid making the + statusbar a tiny bit too big. Support right-to-left layout. + + +- QSgiStyle + Made the combobox arrow look nicer. Fixed disabled combobox + drawing. + +- QSlider + Fixed click handling for reverse layouts. + +- QSpinBox + Usability fix: when changing a value with the up/down arrow + keys or with the arrow buttons, select the new value. + +- QSplitter + Use the actual QSplitter pointer as documented (and not a + QSplitterHandle pointer) as the parameter to the + QStyle::sizeForContents() call. Fixed reverse layouts when + splitter movement is constrained. + +- QSqlRecord + Fixed double increment of the iterator in certain + circumstances. + +- QString + Fixed QString::setLatin1() when the length parameter is 0. + - Unix only: Use strcoll() in QString::localeAwareSorting(). + - Mac only: clarify that local8Bit() is always utf8(). + +- QStyle + New frame styles for tab widgets, window frames and line edit + controls. This was required by the new support for Windows XP. + Added SH_ScrollBar_StopMouseOverSlider style hint so that one can + turn on (or off) the ability to stop pageup/pagedown when the + slider hits the mouse (this is needed for Aqua on MacOS X). + +- QSvgDevice + Many fixes for saving and restoring attributes that are not + part of QPainter. Processing of 'tspan' elements. Now uses + double instead of int for internal 'path' arithmetic for + better scaling results. Supports QPicture's coordinate + transformations. + +- QTabBar + Fixed the focus rectangles and spacing with icons and label + texts. + +- QTable + Improved layout in right-to-left mode. Fixed adjustRow() when + using header items with icon sets. Do not let hidden + columns/rows re-appear when adjusting. Update header correctly + when changing a table's dimensions. Correctly reset the + updatesEnabled flag in sortColumn(). Fixed modifying the + contents of a combobox or checkbox table item while it is the + current cell. + +- QTableItem + Make sure an item cannot span over a table's maximum number of + rows and columns. + +- QTabWidget + Constrain the sizehint to avoid having oversized dialogs. + +- QTextCode + Rename iso8859-6-I to to 8859-6. The old name is still + supported for backwards compatibility. + - Win32: implemented locale(). + - Mac: implemented locale(). + +- QTextDrag (Win32 only) + Performance improvements in encodedData(). + +- QTextEdit + Fixed HTML output. New property tabStopWidth. Fixed append() + and made it smarter: it only scrolls to the end if the view + was scrolled to the end before. Proper reformatting when + switching word wrap policies. Do not blink the cursor when the + textedit is disabled. Make isModified() return the new value + in slots connected to the modificationChanged() signal. + - X11 only: middle mouse selection pasting sets the cursor + position. + +- QTextStream + Faster string output in latin1 mode. + +- QThread + - Unix only: initialize threads in non-GUI mode as well. + - Win32 only: fixed the initial value of QThread::running(). + +- QToolButton + Fixed unwanted occurences of delayed popup menus. + +- QUrlOperator + Fixed the cache, so that QUrlInfo::name() is set correctly for + renamed files. This bug also affected QFileDialog. More + careful check whether a file is writable before renaming or + deleting it. + +- QValueVector + Make operator==() const. Fixed some sharing issues. + +- QVariant + Fixed a few memory leaks when casting complex values to simple + types. Faster operator==(). + +- QWaitCondition (Win32 only) + Fixed wakeAll(). + +- QWhatsThis + Make QWidget::customWhatsThis() work with menu accelerators. + Avoid infinite loops with menu effects. + +- QWidget + Fix default focus so that setTabOrder( X, Y ); setTabOrder( Y, + Z ); gives focus to X, not Y or Z. Closing a modal dialog with + a double click on a widget could result in a mouse release + event being delivered to the widget underneath; this has been + fixed. + Set/Reset WState_HasMouse on DragEnter/DragLeave. + - Win32 only: obey WPaintUnclipped. Make reparent() with 0,0 + positions do the requested positioning. + - X11 only: when reparenting widgets to/from toplevel, make + sure the XdndAware property is set. Make input methods work + with servers other than kinput2. More fixes for 4Dwm's + incompliance with ICCCM 4.1.5 regarding geometry handling. + When hiding toplevel windows, we call XFlush() to avoid + having popup menus hanging around grabbing the mouse and + keyboard while the application is busy. Obey the 'erase' + value in repaint(const QRegion& reg, bool erase). + +- QWindowsStyle + Various visual fixes, including fixes for right-to-left + mode. Most significantly the light source now comes from the + top left also in reverse layout the same as modern versions of + Windows. + +- QWorkspace + Support document windows without title bars. Scroll to top + left corner when cascading/tiling a scrolled workspace. Define + a proper baseSize() for workspace children. Fix some side + effects with the workspace's maximize controls on Windows + style. Don't raise windows over scrollbars. Clients can now + call adjustSize() on the workspace when their sizeHint() + changes. When showing two scrollbars, maintain a solid corner. + Obey a document window's maximum size when tiling. + +**************************************************************************** +* Extensions * +**************************************************************************** + +NO CHANGES + +**************************************************************************** +* Other * +**************************************************************************** + +- qtconfig (X11 only) + It is now possible to turn Xft on and off, as well as turning + antialiasing-by-default on and off. This is necessary since + Xft doesn't work on dual head. + +- moc + Q_PROPERTY: Support QMap<QString, QVariant> and + QValueList<QVariant> as "QMap" and "QValueList". Support + parameters of nested template types, for example + QValueVector<QValueVector<double> >, as well as + Foo<const int>. + +- uic + Fix uic-generated code for QWizard with both "font" and + "titleFont" properties set. Put local includes after global + includes in generated files. + +- lupdate + Allow translation of menubar items generated with Qt Designer + (e.g. "&File", "&Edit", etc.). + +- libMNG + Updated to version 1.0.3. + +- libPNG + Updated to version 1.0.12. + +- Translations + Added Hebrew translations for Qt and the demo application. + +- Qt Designer + Support 'Ignored' size policy. Support properties of type + 'double'. Fixed saving of custom widgets in toolbars. Various + smaller usability improvements. + +- Qt Assistant + When users starts Qt Assistant themselves, always make a new + instance. Only use the unique-instance feature when invoking + from Qt Designer. + +- QMsDev + Invoke Qt Linguist when opening a .ts file in Visual Studio. + + + +**************************************************************************** +* Qt/Embedded-specific changes * +**************************************************************************** + +NO CHANGES