Sections

Changes 3.0.6

Product: Qt
Version: 3.0.6
Qt 3.0.6 is a bugfix release. It maintains both forward and backward
compatibility (source and binary) with Qt 3.0.5

****************************************************************************
*                              General                                     *
****************************************************************************

BINARY COMPATIBILITY WARNING: Qt 3.0.6 is backward and forward binary
compatible with Qt 3.0.5, and is planned to be binary compatible with
Qt 3.1.  Unfortunately Qt 3.0.5 is not 100% backward binary compatible
with Qt 3.0.4 (a class got a few bytes smaller), meaning executables
compiled with 3.0.5 may not run properly when linked dynamically to
3.0.4. at runtime. Due to its wide distributed in various GNU/Linux
distributions, we have decided to stick with 3.0.5's ABI. If you ship
dynamically linked executables, we suggest putting a QT_REQUIRE_VERSION
macro at the beginning of your main function:
   ...
   #include <qmessagebox.h>
   ...
   int main( int argc, char **argv )
   {
     QT_REQUIRE_VERSION( argc, argv, "3.0.5" )
     ...
   }

The macro will show a message box with a warning message and then
abort the application gracefully with exit(1).


****************************************************************************
*                              Library                                     *
****************************************************************************

- QAccessible
	Windows only: No sound for message boxes without icons.

- QAction:
	Implemented resetting QAction's iconSet property, if a
	null-iconset is passed as argument. Don't update when nothing
	has changed.

- QActionGroup:
	Synchronize comboboxes correctly for groups with separators.
	Set the initial currentItem of comboboxes to the action that
	is on when adding the group. Emit the activated signal for
	non-toggle actions selected from a combobox. Apply the state
	of the action group for new widgets.

- QApplication:
	Windows only: Reserve more space for very long application
	filenames.

- QAquaStyle:
	Mac only: Eliminate drawing artifacts for lineedits. Fixed
	painting headers.

- QCanvas:
	setBackgroundPixmap( QPixmap() ) now clears the background
	pixmap.

- QCheckBox:
	Fixed sizeHint() to be wide enough when showing a pixmap.

- QCheckTableItem:
	Implemented sizeHint(). Use the colorgroup passed in for the
	background color instead of the viewport's colorgroup.

- QColor:
	Make empty names invalid in setNamedColor(). 
	Windows only: Fixed palette allocation and ManyColor mode.

- QComboTableItem:
	Implemented sizeHint().

- QDataTable:
	Fixed cancelling inserts/updates with the Esc key. Windows
	only: If confirmation is switched on and the user cancels an
	update by clicking in a different field, don't change the
	current row. Made QDataTable respect read-only columns. Made
	adjustColumn() work properly.

- QDateTime:
	QDate::fromString( date.toString(Qt::TextDate), Qt::TextDate )
	now works for locales where weekdays aren't three letters
	(e.g. Dutch).

- QDesktopWidget:
	Windows only: Allow explicit creation of QDesktopWidgets.

- QDir:
	Windows only: Reset the directory list before returning from
	the floppy-drive-case. Return a backslash from QDir::separator.

- QDockWindow:
	Fixed getting the coordinates right when moving dockwindows
	when there are toplevel dock areas. Don't pass window
	activation around unnecessarily when the activation is ignored
	anyway (this fixes repaint errors when dragging dock windows
	on Windows). Remove floating windows from internal lists when
	deleting.

- QDomDocument:
	The indent argument of the QDomNode::save() function now works
	properly for recursive subnodes as well.

- QFileDialog:
	Windows only: Improved population speed. Works properly with
	network paths.

- QFileInfo:
	Windows only: Fix crash when calling doStat() with a null file
	name. Lookup file permissions for the current user, not for
	the owner.

- QFtp/QUrlOperator
	Files of size 0 can now be uploaded.

- QGLContext:
	Added a workaround to get overlays to work on ATi FireGL cards.
	Windows only: If the current context was swapped without Qt's
	knowledge it was impossible to actually reset the context
	properly.

- QHeader:
	Draw the sort arrow at the right position with multi-line
	header labels. Respect the orientation in
	sizeHint(). Repainting fixes.

- QIconView:
	Improved Key_Up/Key_Down navigation. Optimize updates on
	focus/window activation changes. Prevent double insertion, and
	reset iconview to zero when taking out an item.

- QLibrary:
	Unix only: Compile for a.out platforms.
	Windows only: Only append ".dll" extension if no extension has
	been provided.

- QLineEdit:
	Fixed undo redo when selecting text and replacing it with
	new text. Allow AlignHCenter and AlignRight for Password'ed
	lineedits. Don't ignore changes of alignment after setting it
	to AlignJustify once. Fixed background.
	X11 only: Clear line edit with CTRL+U.

- QListBox:
	Don't call ensureCurrentVisible() in resizeEvent unless the
	current item was visible when you started resizing. Fixed
	contextMenuRequested() signal emission (the item parameter was
	sometimes wrong). Don't select items that are not selectable.

- QListView:
	Emit expanded() and collapsed() _after_ the items have been
	expanded or collapsed and all calculations have beed
	done. Don't call cancelRename() when the rename was
	OK'd. Don't paint contents when columns() == 0. When showing a
	tooltip make sure it's only for that column and not for the
	whole item. Set sorting to dirty after renaming an item.

- QMainWindow:
	Emit dockWindowPositionChanged() from moveDockWindow(). Close
	all the main window's floating dockwindows in the close event.

- QMultiLineEdit:
	Fixed cursorPoint().y().

- QMYSQLDriver:
	Prevent warnings to be emitted when dealing with date/time
	fields that have NULL values.

- QOCIDriver:
	Fixed a memory leak. The environment, error and service
	handles were only released if a connection to a database was
	made.

- QODBCDriver:
	Fixed two memory leaks. Fixed support for reading/writing
	BLOBs through ODBC. Added support for connecting to a file
	DSN. Added a workaround that makes the QODBC driver work with
	Informix ODBC under unixODBC. Made the PostgreSQL ODBC driver
	work properly.

- QPixmap:
	X11 only: Allow QPixmap::grabWindow to work on a screen other
	than the default one.
	Windows only: Fixed grabWindow() which grabbed one pixel too
	many. Fixed the rendering and formatting of centered text that
	ended with a newline.

- QPopupMenu:
	Added Shift+Key combination to auto accelerators. Draw submenu
	items disabled if the submenu is disabled.

- QProcess:
	Unix only: Avoid zombie processes if you try to start a
	non-existent program. Don't eat the file descriptors if a lot
	of processes (with short runtimes) are started immediately
	one after the other.
	Windows only: make the tryTerminate() function work for
	windows applications (it still does not work for console
	applications, though).

- QPrinter:
	Windows only: Fixed printing 32-bit images.

- QPSQLDriver:
	Prevent warnings to be emitted when dealing with date/time
	fields that have NULL values.
	Windows only: Make the driver compile with the standard
	PostgreSQL source distribution under Windows.

- QRadioButton:
	Fixed sizeHint() to be wide enough when showing a pixmap.

- QSettings:
	Correct documentation for removeEntry.
	Windows only: Fixed off-by-one for keys ending with a slash.

- QSocket:
	Fixed crash when readBlock() returns 0.

- QTable:
	Less flicker in table headers. Fixed emitting
	selectionChanged() when selecting cells with the mouse. Crash
	fix. Fixed adjustRow() and adjustColumn() for multi-span
	cells. Don't allow the current row/column to be larger than
	the number of rows/columns in a table. Set the table of the
	item in insertItem() correctly. Reset table pointer to zero
	when taking item out of the table. Fixed Tab/BackTab handling.

- QTextEdit:
	Return a useful default in paper(). Support
	paletteBackgroundColor properly. Fixed ensureCursorVisible()
	if the text is not completly formatted yet. Crash fix when
	word wrapping, backspacing and adding a new paragraph. Fixed
	repaint problems.
	Windows only: CTRL+Key_A (select all) now also works in a read
	only text edit.  

- QThread:
	Windows only: Avoid unnecessary call to TerminateThread.

- QToolButton:
	Toolbuttons with popups that have a margin align the popup
	correctly.

- QToolTip:
	Make sure the tooltip is displayed on the correct screen (i.e.
	on multi-head systems) for big widgets.

- QTranslator:
	Better error checking when loading .qm files.

- QUrl:
	Recognize Windows drive letters not only in the form of "c:/"
	but also in the form "c:", (i.e. without the '/').

- QVariant:
	QDate can convert to QDateTime.

- QWidget:
	Pass the old activation state to
	windowActivationChange(). Avoid endless loops when a popup
	widget refuses to close.

- QWindowsStyle:
	Made the Windows style use the system's scrollbar width.

- Richtext Engine:
	append() starts a fresh new paragraph and clears list item and
	depth properties. Parse all entities up to 8
	characters. Optimized text drawing speed. Many rendering fixes
	and improvements. Parsing fixes.
	
Document Actions
Navigation