From e5fcad302d86d316390c6b0f62759a067313e8a9 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Mon, 23 Mar 2009 10:18:55 +0100 Subject: Long live Qt 4.5! --- dist/README | 134 +++ dist/changes-0.92 | 101 ++ dist/changes-0.93 | 74 ++ dist/changes-0.94 | 33 + dist/changes-0.95 | 54 + dist/changes-0.96 | 263 +++++ dist/changes-0.98 | 98 ++ dist/changes-0.99 | 60 + dist/changes-1.0 | 62 + dist/changes-1.1 | 110 ++ dist/changes-1.2 | 119 ++ dist/changes-1.30 | 278 +++++ dist/changes-1.31 | 34 + dist/changes-1.39-19980327 | 963 +++++++++++++++ dist/changes-1.39-19980406 | 286 +++++ dist/changes-1.39-19980414 | 173 +++ dist/changes-1.39-19980506 | 555 +++++++++ dist/changes-1.39-19980529 | 232 ++++ dist/changes-1.39-19980611 | 194 ++++ dist/changes-1.39-19980616 | 810 +++++++++++++ dist/changes-1.39-19980623 | 545 +++++++++ dist/changes-1.39-19980625 | 119 ++ dist/changes-1.39-19980706 | 320 +++++ dist/changes-1.40 | 291 +++++ dist/changes-1.41 | 76 ++ dist/changes-1.42 | 71 ++ dist/changes-2.0.1 | 101 ++ dist/changes-2.00 | 151 +++ dist/changes-2.00beta1 | 61 + dist/changes-2.00beta2 | 85 ++ dist/changes-2.00beta3 | 35 + dist/changes-2.1.0 | 314 +++++ dist/changes-2.1.1 | 71 ++ dist/changes-2.2.0 | 223 ++++ dist/changes-2.2.1 | 160 +++ dist/changes-2.2.2 | 154 +++ dist/changes-3.0.0 | 720 ++++++++++++ dist/changes-3.0.0-beta1 | 1239 ++++++++++++++++++++ dist/changes-3.0.0-beta2 | 363 ++++++ dist/changes-3.0.0-beta3 | 278 +++++ dist/changes-3.0.0-beta4 | 688 +++++++++++ dist/changes-3.0.0-beta5 | 316 +++++ dist/changes-3.0.0-beta6 | 272 +++++ dist/changes-3.0.1 | 540 +++++++++ dist/changes-3.0.2 | 325 ++++++ dist/changes-3.0.4 | 214 ++++ dist/changes-3.0.7 | 375 ++++++ dist/changes-3.1.0 | 334 ++++++ dist/changes-3.1.0-b1 | 692 +++++++++++ dist/changes-3.1.0-b2 | 220 ++++ dist/changes-3.1.1 | 212 ++++ dist/changes-3.1.2 | 631 ++++++++++ dist/changes-3.2.0 | 327 ++++++ dist/changes-3.2.0-b1 | 296 +++++ dist/changes-3.2.0-b2 | 121 ++ dist/changes-3.2.1 | 143 +++ dist/changes-3.2.2 | 155 +++ dist/changes-3.2.3 | 150 +++ dist/changes-3.3.0 | 313 +++++ dist/changes-3.3.0-b1 | 284 +++++ dist/changes-3.3.1 | 141 +++ dist/changes-3.3.2 | 390 +++++++ dist/changes-3.3.3 | 442 +++++++ dist/changes-3.3.5 | 617 ++++++++++ dist/changes-3.3.6 | 27 + dist/changes-3.3.7 | 12 + dist/changes-3.3.8 | 273 +++++ dist/changes-4.0.1 | 786 +++++++++++++ dist/changes-4.1.0 | 573 +++++++++ dist/changes-4.1.0-rc1 | 554 +++++++++ dist/changes-4.1.1 | 693 +++++++++++ dist/changes-4.1.11 | 41 + dist/changes-4.1.3 | 879 ++++++++++++++ dist/changes-4.1.4 | 125 ++ dist/changes-4.1.5 | 14 + dist/changes-4.2.0 | 2506 ++++++++++++++++++++++++++++++++++++++++ dist/changes-4.2.0-tp1 | 20 + dist/changes-4.2.1 | 14 + dist/changes-4.2.2 | 827 +++++++++++++ dist/changes-4.2.3 | 373 ++++++ dist/changes-4.2CEping | 73 ++ dist/changes-4.3.0 | 2445 +++++++++++++++++++++++++++++++++++++++ dist/changes-4.3.1 | 519 +++++++++ dist/changes-4.3.2 | 604 ++++++++++ dist/changes-4.3.3 | 358 ++++++ dist/changes-4.3.4 | 112 ++ dist/changes-4.3.5 | 109 ++ dist/changes-4.3CE-tp1 | 53 + dist/changes-4.3CEconan | 72 ++ dist/changes-4.3CEkicker | 53 + dist/changes-4.3CEsweetandsour | 43 + dist/changes-4.4.0 | 2419 ++++++++++++++++++++++++++++++++++++++ dist/changes-4.4.1 | 619 ++++++++++ dist/changes-4.4.2 | 512 ++++++++ dist/changes-4.4.3 | 31 + dist/changes-4.5.0 | 1496 ++++++++++++++++++++++++ 96 files changed, 35443 insertions(+) create mode 100644 dist/README create mode 100644 dist/changes-0.92 create mode 100644 dist/changes-0.93 create mode 100644 dist/changes-0.94 create mode 100644 dist/changes-0.95 create mode 100644 dist/changes-0.96 create mode 100644 dist/changes-0.98 create mode 100644 dist/changes-0.99 create mode 100644 dist/changes-1.0 create mode 100644 dist/changes-1.1 create mode 100644 dist/changes-1.2 create mode 100644 dist/changes-1.30 create mode 100644 dist/changes-1.31 create mode 100644 dist/changes-1.39-19980327 create mode 100644 dist/changes-1.39-19980406 create mode 100644 dist/changes-1.39-19980414 create mode 100644 dist/changes-1.39-19980506 create mode 100644 dist/changes-1.39-19980529 create mode 100644 dist/changes-1.39-19980611 create mode 100644 dist/changes-1.39-19980616 create mode 100644 dist/changes-1.39-19980623 create mode 100644 dist/changes-1.39-19980625 create mode 100644 dist/changes-1.39-19980706 create mode 100644 dist/changes-1.40 create mode 100644 dist/changes-1.41 create mode 100644 dist/changes-1.42 create mode 100644 dist/changes-2.0.1 create mode 100644 dist/changes-2.00 create mode 100644 dist/changes-2.00beta1 create mode 100644 dist/changes-2.00beta2 create mode 100644 dist/changes-2.00beta3 create mode 100644 dist/changes-2.1.0 create mode 100644 dist/changes-2.1.1 create mode 100644 dist/changes-2.2.0 create mode 100644 dist/changes-2.2.1 create mode 100644 dist/changes-2.2.2 create mode 100644 dist/changes-3.0.0 create mode 100644 dist/changes-3.0.0-beta1 create mode 100644 dist/changes-3.0.0-beta2 create mode 100644 dist/changes-3.0.0-beta3 create mode 100644 dist/changes-3.0.0-beta4 create mode 100644 dist/changes-3.0.0-beta5 create mode 100644 dist/changes-3.0.0-beta6 create mode 100644 dist/changes-3.0.1 create mode 100644 dist/changes-3.0.2 create mode 100644 dist/changes-3.0.4 create mode 100644 dist/changes-3.0.7 create mode 100644 dist/changes-3.1.0 create mode 100644 dist/changes-3.1.0-b1 create mode 100644 dist/changes-3.1.0-b2 create mode 100644 dist/changes-3.1.1 create mode 100644 dist/changes-3.1.2 create mode 100644 dist/changes-3.2.0 create mode 100644 dist/changes-3.2.0-b1 create mode 100644 dist/changes-3.2.0-b2 create mode 100644 dist/changes-3.2.1 create mode 100644 dist/changes-3.2.2 create mode 100644 dist/changes-3.2.3 create mode 100644 dist/changes-3.3.0 create mode 100644 dist/changes-3.3.0-b1 create mode 100644 dist/changes-3.3.1 create mode 100644 dist/changes-3.3.2 create mode 100644 dist/changes-3.3.3 create mode 100644 dist/changes-3.3.5 create mode 100644 dist/changes-3.3.6 create mode 100644 dist/changes-3.3.7 create mode 100644 dist/changes-3.3.8 create mode 100644 dist/changes-4.0.1 create mode 100644 dist/changes-4.1.0 create mode 100644 dist/changes-4.1.0-rc1 create mode 100644 dist/changes-4.1.1 create mode 100644 dist/changes-4.1.11 create mode 100644 dist/changes-4.1.3 create mode 100644 dist/changes-4.1.4 create mode 100644 dist/changes-4.1.5 create mode 100644 dist/changes-4.2.0 create mode 100644 dist/changes-4.2.0-tp1 create mode 100644 dist/changes-4.2.1 create mode 100644 dist/changes-4.2.2 create mode 100644 dist/changes-4.2.3 create mode 100644 dist/changes-4.2CEping create mode 100644 dist/changes-4.3.0 create mode 100644 dist/changes-4.3.1 create mode 100644 dist/changes-4.3.2 create mode 100644 dist/changes-4.3.3 create mode 100644 dist/changes-4.3.4 create mode 100644 dist/changes-4.3.5 create mode 100644 dist/changes-4.3CE-tp1 create mode 100644 dist/changes-4.3CEconan create mode 100644 dist/changes-4.3CEkicker create mode 100644 dist/changes-4.3CEsweetandsour create mode 100644 dist/changes-4.4.0 create mode 100644 dist/changes-4.4.1 create mode 100644 dist/changes-4.4.2 create mode 100644 dist/changes-4.4.3 create mode 100644 dist/changes-4.5.0 (limited to 'dist') diff --git a/dist/README b/dist/README new file mode 100644 index 0000000000..110be1cdf5 --- /dev/null +++ b/dist/README @@ -0,0 +1,134 @@ +This is Qt version %VERSION%. + +Qt is a comprehensive cross-platform C++ application framework. Qt 4 +introduces new features and many improvements over the 3.x series. See +http://doc.trolltech.com/latest/qt4-intro.html for details. + +The Qt 4.x series is not binary compatible or source compatible with +the 3.x series. For more information on porting from Qt 3 to Qt 4, see +http://doc.trolltech.com/latest/porting4.html. + + +INSTALLING Qt + +On Windows and Mac OS X, if you want to install the precompiled binary +packages, simply launch the package and follow the instructions in the +installation wizard. + +On Mac OS X, the binary package requires Mac OS X 10.4.x (Tiger) or +later and GCC 4.0.1 to develop applications. Its applications will run +on Mac OS X 10.3.9 and above. + +If you have a source package (a .tar.gz, .tar.bz2, or .zip file), +follow the instructions in the INSTALL file. + + +DEMOS AND EXAMPLES + +Once Qt is installed, we suggest that you take a look at the demos and +examples to see Qt in action. Run the Qt Examples and Demos either by +typing 'qtdemo' on the command line or through the desktop's Start +menu. On Mac OS X, you can find it in /Developers/Applications/Qt. + + +REFERENCE DOCUMENTATION + +The Qt reference documentation is available locally in Qt's doc/html +directory. You can use Qt Assistant to view it; to launch Assistant, +type 'assistant' on the command line or use the Start menu. On Mac OS +X, you can find it in /Developer/Applications/Qt. The latest +documentation is available at http://doc.trolltech.com/. + + +SUPPORTED PLATFORMS + +For this release, the following platforms have been tested: + + win32-g++ (mingw) + win32-msvc + win32-msvc2003 + win32-msvc2005 + win32-msvc2008 + + aix-xlc + aix-xlc-64 + hpux-acc + hpux-acc-64 + hpux-acc-o64 + hpux-g++ + hpux-g++-64 + hpuxi-acc-32 + hpuxi-acc-64 + linux-g++ + linux-icc + linux-icc-32 + linux-icc-64 + solaris-cc + solaris-cc-64 + solaris-g++ + solaris-g++-64 + + macx-g++ + macx-g++42 + + qws/linux-x86-g++ + qws/linux-arm-g++ + + wince50standard-armv4i-msvc2005 + wince50standard-armv4i-msvc2008 + wince50standard-mipsii-msvc2005 + wince50standard-mipsii-msvc2008 + wince50standard-x86-msvc2005 + wince50standard-x86-msvc2008 + wincewm50pocket-msvc2005 + wincewm50pocket-msvc2008 + wincewm50smart-msvc2005 + wincewm50smart-msvc2008 + wincewm60professional-msvc2005 + wincewm60professional-msvc2008 + wincewm60standard-msvc2005 + wincewm60standard-msvc2008 + +For a complete list of supported platforms, see +http://www.qtsoftware.com/developer/supported-platforms/supported-platforms/ + +For a description of Qt's platform support policy, see +http://www.qtsoftware.com/support-services/support/platform-support-policy + + +COMMERCIAL EDITIONS + +Desktop Edition licensees can use all the modules provided with their +Qt package. + +GUI Framework licensees may only use the classes contained in +the QtCore, QtGui (except QGraphicsView), QtTest, QtDBus and +Qt3Support modules. + +For a full listing of the contents of each module, please refer to +http://doc.trolltech.com/4.4/modules.html. + + +HOW TO REPORT A BUG + +If you think you have found a bug in Qt, we would like to hear about +it so that we can fix it. Before reporting a bug, please check +http://qtsoftware.com/developer/faqs/ and +http://qtsoftware.com/products/appdev/platform/platforms/ to see if the to see if +the issue is already known. + +Always include the following information in your bug report: the name +and version number of your compiler; the name and version number of +your operating system; the version of Qt you are using, and what +configure options it was compiled with. + +If the problem you are reporting is only visible at run-time, try to +create a small test program that shows the problem when run. Often, +such a program can be created with some minor changes to one of the +many example programs in Qt's examples directory. Please submit the +bug report using the Task Tracker on the Trolltech website: + +http://qtsoftware.com/developer/task-tracker + + +Qt is a trademark of Nokia Corporation and/or its subsidiary(-ies). diff --git a/dist/changes-0.92 b/dist/changes-0.92 new file mode 100644 index 0000000000..1226d65b0d --- /dev/null +++ b/dist/changes-0.92 @@ -0,0 +1,101 @@ +Here is a list of changes in Qt from 0.91 to 0.92. Also look out +for a few new classes; QPrinter, QFileDialog, QDir and QFileInfo. + + +QApplication: +------------- + Use setMainWidget( x ), not exec( x ). + +QString: +-------- + upper(), lower(), stripWhiteSpace() and simplifyWhiteSpace() etc. + do NOT modify the string, instead they return a new string. + +QList and QVector: +------------------ + Changed argument in QList::toVector() from reference to pointer + Changed argument in QVector::toList() from reference to pointer + Removed QVector::apply() + Removed QList::apply() + +QPainter: +--------- + pen(), brush() and font() no longer returns references. + You cannot do this any longer: + QPainter p; + ... + p.pen().setColor( red ); + p.brush().setStyle( NoBrush ); + Instead, set a new pen or brush: + p.setPen( red ); + p.setBrush( NoBrush ); + This enables us to do better optimization, particularly for complex + programs. + +QFile, QFileInfo (new): +----------------------- + Removed QFile::setFileName, + QFile::isRegular => QFileInfo::isFile + QFile::isDirectory => QFileInfo::isDir + QFile::isSymLink => QFileInfo::isSymLink + +Q2DMatrix/QWMatrix: +--------- + Q2DMatrix has been replaced with QWMatrix (qwmatrix.h) + +QPixmap: +-------- + enableImageCache() renamed to setOptimization(). + Optimization is now default ON. See doc for other optimization functions. + +QImage: +------- + scanline() => scanLine() + +QLineEdit/QLCDNumber: +--------------------- + signal textChanged( char * ) => textChanged( const char * ); + slot display( char * ) => display( const char * ) + +QCursor: +-------- + hourGlassCursor => waitCursor + +QButton and friends: +-------------------- + QIconButton removed, setPixmap() added to QButton to replace QIconButton + +QTableWidget: +------------- + Renamed to QTableView (qtablevw.h) + Using int to identify rows and columns, not long. + +QRangeControl: +-------------- + Using int values, not long. + +QScrollBar: +----------- + Using int values, not long. + +QListBox: +--------- + removed setStrList(), use clear(); insertStrList( ... , 0 ); instead + +QColor: +------- + setRGB => setRgb + getRGB => rgb + setHSV => setHsv + getHSV => hsv + +QFontMetrics and QFontInfo: +--------------------------- + Get font metrics from QWidget::fontMetrics() and QPainter::fontMetrics(). + Get font info from QWidget::fontInfo() and QPainter::fontInfo(). + The QFontMetrics(QFont) constructor no longer works. + We had to do these changes to support printing and Windows. + + +There are more changes, left out because we consider them minor and +uninteresting or because we forgot to mention them. :) diff --git a/dist/changes-0.93 b/dist/changes-0.93 new file mode 100644 index 0000000000..892395bc4b --- /dev/null +++ b/dist/changes-0.93 @@ -0,0 +1,74 @@ +Here is a list of (major) changes in Qt from 0.92 to 0.93. + +Bug-fixes, optimizations and much improved documentation, of course. + +There are not many changes in the API interface. +Here's a list of the most important changes. + + +QApplication: +------- + setCursor(), restoreCursor() now uses a stack of cursors. + quit() is now a slot. + exit() replaces the old static quit() function. + + +QColor: +------- + New constructor that makes you set an RGB or HSV color directly, + like this: QColor(320, 255, 240, QColor::Hsv) + + +QObject: +-------- + Has now a timerEvent(), which was moved from QWidget. + Compatible with old code. + + +QPainter: +--------- + GC caching (internal optimization) makes drawing very fast. + + drawShade* obsolete, moved to qdrawutl.h and renamed to qDrawShade* + - These are now global functions that take QPainter * and QColorGroup + - Added qDrawWinPanel and qDrawWinButton for Windows 95 look + - Added qDrawPlainRect + + +QPixmap: +------- + New fill() function that fills the pixmap with the background color + OR background pixmap of a widget. + + +QRect: +------ + fixup() renamed to normalize(), returns a new QRect. + + +QWidget: +------- + New function setCaption(), setIcon() and setIconText(), moved from QWindow. + + +New classes: +------------ + QSocketNotifier, makes it possible to write async socket code. + + +New global functions: +--------------------- + qInstallMsgHandler() and qRound(), in qglobal.h. + + +moc: +---- + Supports templates. + + +Documentation: +-------------- + A tutorial. + Template classes (QArray, QList etc.) are documented. + Many more links in the examples. + Postscript documentation (around 400 pages). diff --git a/dist/changes-0.94 b/dist/changes-0.94 new file mode 100644 index 0000000000..5353e12567 --- /dev/null +++ b/dist/changes-0.94 @@ -0,0 +1,33 @@ +Here is a list of (major) changes in Qt from 0.93 to 0.94. + +Bug-fixes, optimizations and much improved documentation, of course. + +There are not many changes in the API interface. + + +QTextStream: +------------ + eos() renamed to eof() for iostream compatibility. + operator>> for double, float, char*, QString are implemented + get() and getline() added. + + +QDataStream: +------------ + eos() renamed to eof() for iostream compatibility. + + +QPixmap: +-------- + Support for transparency: setMask(QBitmap) and bitBlt. + + +QImage: +------- + Scanline data is aligned on a 32 bit boundary (it used to be 8 + bits). Conversion to and from QPixmap is now faster. + + +Documentation: +-------------- + More documentation fixes. diff --git a/dist/changes-0.95 b/dist/changes-0.95 new file mode 100644 index 0000000000..205a4763f7 --- /dev/null +++ b/dist/changes-0.95 @@ -0,0 +1,54 @@ +Here is a list of (major) changes in Qt from 0.93 to 0.95. + +Bug-fixes, optimizations and much improved documentation, of course. + +There are few changes in the API (Qt header files). + + +QPixmap: +-------- + Can draw transparent pixmaps. Call QPixmap::setMask(QBitmap) to + set a mask. + + +QPainter: +--------- + Unified transformation. setWindow() and setViewport() now use + the same code as setWorldXForm() etc. + Internal xform routines have been optimized. + + +QButton: +-------- + isUp() is obsolete, use !isDown() instead. + isOff() is obsolete, use !isOn() instead. + switchOn() is obsolete, use setOn(TRUE) instead. + switchOff() is obsolete, use setOn(FALSE) instead. + + +QPushButton: +------------ + A push button can now be a toggle button. + + +QWidget: +-------- + isActive() was never used and is now obsolete. + + +QTextStream: +------------ + eos() renamed to eof() for iostream compatibility. + operator>> for double, float, char*, QString are implemented + get() and getline() added. + + +QDataStream: +------------ + eos() renamed to eof() for iostream compatibility. + + +QImage: +------- + Scanline data is aligned on a 32 bit boundary (it used to be 8 + bits). Conversion to and from QPixmap is now faster. diff --git a/dist/changes-0.96 b/dist/changes-0.96 new file mode 100644 index 0000000000..52555d1ea5 --- /dev/null +++ b/dist/changes-0.96 @@ -0,0 +1,263 @@ +Here is a list of (major) changes in Qt from 0.95 to 0.96. + +Bug-fixes, optimizations and improved documentation, of course. +QClipboard is new. + +There are some changes in the API (Qt header files). Some functions have +been renamed or the arguments have changed. The old versions of these +functions have been obsoleted. A call to an obsoleted function will by +default generate a runtime warning the first time it is called, but it +will be executed correctly. If you really need to ship code fast, you can +turn off the runtime obsolescence warnings by calling +qSuppressObsoleteWarnings(). + +Obsoleted functions will disappear in a future release. To get +compile-time errors for each use of an obsoleted function, compile your +code with -DTEST_OBSOLETE. You should recompile without this option when +you have upgraded your code (otherwise, you may get linking errors). +Note: it is probably not a good idea to compile the Qt library with +-DTEST_OBSOLETE, it may cause problems if you try to link or run +programs that use obsoleted functions. + +For new users: obsoleted functions are no longer documented, in fact they +are not even visible in the documentation. + +*************** Changes that might affect runtime behavior ***************** + +QFileInfo: +---------- + size() returns uint(previousy int), 0 if the size cannot be fetched (was -1). + Use isFile() to check. + + +QPopupMenu +------------ + When a popup menu is a submenu (directly or as a subsub...menu) of a + menu bar(QMenuBar), the menu bar will now always emit the activated() or + highlighted() signal when a submenu emits these signals. This fix might + have undesired effects if you previously have worked around it by + connecting to signals both in menu bar and its submenus. + +*************** Changes that might generate compile errors ***************** +************** when compiling old code ***************** + +QDataStream: +----------- + Serialization of int and uint is no longer supported. Use INT32 and + UINT32 instead. This had to be changed in order to run Qt on 64-bit + architectures. + + +QImage: +------- + 24-bpp pixel format no longer supported, use 32-bpp instead. + + This means that you have to use uint* instead of uchar* when accessing + pixel values. You cannot use the uchar* pointer directly, because the + pixel format depends on the byte order on the underlying platform. Use + qRgb() and friends (qcolor.h) to access the pixels. + + +QWidget: +-------- + setMouseTracking() does not return bool. Call hasMouseTracking() to + determine the mouse tracking state. (This only affects code that + actually uses the return value.) + + (There are other changes in QWidget, see below) + + +*************** Type changes that might generate warnings: ***************** + + +QCache/QIntCache: +----------------- + Using int/uint instead of long/ulong. + + +QDate/QTime/QDateTime: +---------------------- + Using int/uint instead of long/ulong (MS-DOS required long). + + +QIODevice/QBuffer/QFile: +------------------------ + Using int/uint instead of long/ulong. + + +QKeyEvent: +---------- + ascii() now returns int (previously uchar). + + +QTableView: +------------ + uint used instead of ulong (tableFlags() etc.) + + +QTextStream: +------------ + int used instead of long (flags() etc.) + + +***************** Obsoleted functions ********************** + +QAccel: +------- + enable(), disable() and isDisabled() are obsolete. + Use setEnabled(TRUE/FALSE) and !isEnabled() instead. + isItemDisabled(), enableItem(), disableItem() are obsolete. + Use !isItemEnabled(), setItemEnabled(TRUE/FALSE) instead. + + +QApplication: +------------- + cursor(), setCursor() and restoreCursor() obsoleted. + Use overrideCursor(), setOverrideCursor() and restoreOverrideCursor() + instead. + + +QBitmap: +-------- + Constructor takes "const uchar *bits" instead of "const char *" + because of sign problems (uchar = unsigned char). Old constructors are + obsolete. + + +QButton: +-------- + toggleButton() is obsolete, renamed to isToggleButton(). + + +QColor: +------- + The functions QRED, QGREEN, QBLUE, QRGB, QGRAY obsolete. + Instead, use qRed, qGreen, qBlue, qRgb, qGray. + + +QComboBox: +---------- + setStrList() obsolete, use clear() + insertStrList() instead. + string() obsolete, use text() instead. + + +QLCDNumber: +---------- + longValue() is obsolete, use intValue() instead. + + +QListbox: +--------- + The macro LBI_String is obsolete, use LBI_text instead. + string() obsolete, use text() instead. + stringCopy() and setStringCopy() are obsolete. + + +QMenuData: +---------- + string() obsolete, use text() instead. + isItemDisabled(), enableItem(), disableItem() are obsolete. + Use !isItemEnabled(), setItemEnabled(TRUE/FALSE) instead. + checkItem() and uncheckItem() are obsolete. + Use setItemChecked(TRUE/FALSE) instead. + + +QPainter: +--------- + + drawBezier() is obsolete, general Bezier curves are rarely used and + cost too much. Qt will only support drawQuadBezier() (four-point + Bezier) in the future. + +QPointArray: +----------- + move() is obsolete, use translate() instead. + bezier() is obsolete, general Bezier curves are rarely used and + cost too much. Qt will only support quadBezier() (four-point + Bezier) in the future. + + + +QRect: +------ + move() is obsolete, use moveBy() instead. + setTopLeft(), setTopRight(), setBottomLeft(), setBottomRight() and + setCenter() is obsolete, use moveTopLeft(), moveTopRight(), + moveBottomLeft(), moveBottomRight() and moveCenter() instead. + + +QRegion: +------- + move() is obsolete, use translate() instead. + + +QSocketNotifier: +---------------- + enabled() is obsolete. Use isEnabled() instead. + + +QWidget: +-------- + enable(), disable() and isDisabled() are obsolete. + Use setEnabled(TRUE/FALSE) and !isEnabled() instead. + + setMinimumSize(), setMaximumSize(), minimumSize(), maximumSize() are obsolete + use setMinSize(), setMaxSize(), minSize(), maxSize() instead. + + enableUpdates() obsolete, use isUpdatesEnabled()/setUpdatesEnabled(). + + id() is obsolete, it has been renamed to winId(). + +***************** All other changes from 0.95 to 0.96 ********************** + +moc +---------- + Gives a warning if no output is generated. + + +qglobal.h: +---------- + INT32 and UINT32 typedefs changed to work with DEC Alpha. + + +QApplication: +------------- + clipboard() is new. + + +QButtonGroup: +------------- + Exclusive group setting added (isExclusive and setExclusive). + find() is new. + + +QColor: +------- + New type QRgb (uint), used for RGB triplet. + + +QLineEdit: +---------- + You can now mark text, and copy and paste to/from the clipboard. + + +QPaintDevice: +--------- + The bitblt function now takes an ignoreMask parameter. It has a default + value, so no old code will be broken. + +QPrinter: +------------ + fixed minor bugs in handling of polygons and beziers. + + +QWidget: +-------- + New protected virtual functions styleChange(), backgroundColorChange(), + backgroundPixmapChange(), paletteChange() and fontChange(). + These functions are called from setStyle(), setBackgroundColor() etc. + You can reimplement them to if you need to know when widget properties + changed and to optimize updates. + + The destroyed() signal has been moved to QObject. + diff --git a/dist/changes-0.98 b/dist/changes-0.98 new file mode 100644 index 0000000000..a36abeb9e1 --- /dev/null +++ b/dist/changes-0.98 @@ -0,0 +1,98 @@ +Here is a list of (major) changes in Qt from 0.96 to 0.98. +As usual, we fixed some bugs and improved the documentation. + + +*************** Changes that might affect runtime behavior ***************** + +QWidget: +-------- + setMinimumSize() and setMaximumSize() now force the widget to + a legal size. resize() and setGeometry() obey the widget's + minimum/maximum size. + + The default behaviour of QWidget::closeEvent is now to hide the widget, + not to delete it as before (which was potentially dangerous). This means + that if you have a top level widget and the user closes it via the close + box, it will now hide itself if you have not reimplemented closeEvent(). + See the QWidget::closeEvent() and QCloseEvent documentation for details. + + (There are other changes in QWidget, see below) + + +*************** Changes that might generate compile errors ***************** +************** when compiling old code ***************** + +Disabled copy constructors and operators= +----------------------------------------- + Copy constructors and operators= are disabled in the classes that cannot + be copied (this includes all classes that inherit from QObject). This + will let the compiler find bugs in your code, you'll get compile time + errors where you most probably would have gotten core dumps before. + This change has been done in the following classes: + + QAccel QApplication QBuffer QButton QButtonGroup QCheckBox QClipboard + QComboBox QConnection QDataStream QDialog QFile QFileDialog QFrame + QGroupBox QIODevice QImageIO QLCDNumber QLabel QLineEdit QListBox + QMenuBar QMenuData QMenuItem QMessageBox QMetaObject QObject + QPSPrinter QPaintDevice QPainter QPicture QPopupMenu QPrintDialog + QPrinter QPushButton QRadioButton QRangeControl QScrollBar QSignal + QSocketNotifier QTableView QTextStream QTimer QWidget QWindow + + The other classes all have sensible copy constructors and operators=. + +QDate: +------ + These were protected, now private: + static const char *monthNames[]; + static const char *weekdayNames[]; + uint jd; + +QListBox: +--------- + The internals of QListBox are completely reworked. Definition of custom + QListBoxItems is now much easier. This is *not* compatible with the old + way of defining custom QLBItems. See the QListBoxItem documentation for + details. + +QTime: +------ + This was protected, now private: + uint ds; + +*************** Type changes that might generate warnings: ***************** + +none + +***************** Obsoleted functions ********************** + +none + +***************** All other changes from 0.96 to 0.98 ********************** + +moc: +---- + Moc previously gave a syntax error when the word "class" was found + in a string outside a class declaration. This bug has now been + fixed. + + More moc arguments, check the manpage for details. + +QFont: +------ + Two new convenience functions; bold() and setBold(). + +QLabel: +------- + setMargin() and margin() are new. setMargin() specifies a minimum margin + when the label contents are justified. + +QWidget: +-------- + You can specify a custom widget frame for top level widgets, including + no frame at all. See the widget constructor doc. for details. + + Qt now has enter and leave events. Reimplement the virtual functions + void enterEvent( QEvent * ) and void leaveEvent( QEvent * ) to receive + events when the mouse cursor leaves or enters the visible part of the + widget. + diff --git a/dist/changes-0.99 b/dist/changes-0.99 new file mode 100644 index 0000000000..80be555ea0 --- /dev/null +++ b/dist/changes-0.99 @@ -0,0 +1,60 @@ +Here is a list of user-visible changes in Qt from 0.98 to 0.99. +As usual, we fixed some bugs and improved the documentation. + +Qt 0.99 includes makefiles for Linux, Solaris, SunOS, FreeBSD, OSF/1, +Irix, BSD/OS, SCO and HP-UX. + + +*************** Changes that might affect runtime behavior ***************** + +none + +*************** Changes that might generate compile errors ***************** +************** when compiling old code ***************** + +QVector: +-------- + +Removed operator const type**(). + +*************** Type changes that might generate warnings: ***************** + +none + +***************** Obsoleted functions ********************** + +none + +***************** All other changes from 0.98 to 0.99 ********************** + +QApplication: +------------- +Added beep() to make a sound. + + +QFileInfo +--------- +Added readLink() to return the name of the file a symlink points to, +fixed bug in isSymlink(). + + +QPrinter: +--------- +The X11 version now supports landscape printing and different paper sizes. + + +QTableView: +----------- +The functions horizontalScrollBar and verticalScrollBar gives access +to the internal scroll bars so you can connect to their signals. + + +QWidget: +-------- +Added sizeHint virtual function which is implemented in subclasses to +return a recommended size. + +Added new function setFixedSize() to set both the minimum and maximum sizes +at the same time. + +Added clearFocus() function to take keyboard focus from the widget. diff --git a/dist/changes-1.0 b/dist/changes-1.0 new file mode 100644 index 0000000000..cf9f7a14d5 --- /dev/null +++ b/dist/changes-1.0 @@ -0,0 +1,62 @@ +Here is a list of user-visible changes in Qt from 0.99 to 1.0. +As usual, we fixed some bugs and improved the documentation. + + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +QComboBox: +---------- +The combo box is resized to the largest item when automatic resizing +is enabled. In 0.99 it resized itself to the current item. + + + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +none + + + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +none + + + +**************************************************************************** +* Obsoleted functions * +**************************************************************************** + +All pre-1.0 obsoleted functions are now removed. + + + +**************************************************************************** +* All other changes from 0.99 to 1.0 * +**************************************************************************** + +QBitmap: +-------- +Added constructor that takes a file name. Loads an image from file. + + +QDialog: +-------- +QDialog inherits QWidget instead of QWindow. + + +QPixmap: +-------- +Added constructor that takes a file name. Loads an image from file. + + +QTimer: +------- +Added static function singleShot(). Convenient function. diff --git a/dist/changes-1.1 b/dist/changes-1.1 new file mode 100644 index 0000000000..ff9d2a768c --- /dev/null +++ b/dist/changes-1.1 @@ -0,0 +1,110 @@ +Here is a list of user-visible changes in Qt from 1.0 to 1.1. As +usual, we fixed some bugs, made some more speedups, and improved the +documentation. + + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +We've added keyboard interface to more widgets, and changed the +default focus policy radically. For example, by default you can TAB +to button, but it does not grab focus when you click it. The new +QWidget::setFocusPolicy() function can be used to change focus policy +for all widgets. + +The font matching algorithm has been tweaked in order to provide more +predictable fonts in more cases. For some users (such as those with a +75dpi X server and only 100dpi fonts installed) it may change the +output of some programs. + +sizeHint() and hence default size has been tweaked for some widgets; +QMenuBar and QPushButton in particular. + + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +We've renamed "declare" in qgeneric.h to Q_DECLARE due to naming +conflicts. Though we try to provide backward compatibility, there may +be problems for a few programs. + + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +none + + +**************************************************************************** +* Obsoleted functions * +**************************************************************************** + +none + + +**************************************************************************** +* New classes * +**************************************************************************** + +QTabDialog (and QTabBar) provide a tabbed dialog. examples/pref shows +simple usage of QTabDialog. + +QMultiLineEditor is the long-awaited multi-line editor. + +QGridLayout provides grid-like geometry management for any widget, +with flexible row/column elasticity, minimum and maximum sizes. + +QBoxLayout provides more complex and powerful geometry management: +boxes and widgets stacked inside other boxes, and finally a top-level +box connected to a widget. + +QToolTip provides tool tips for any widget. + + +**************************************************************************** +* Other changes from 1.0 to 1.1 * +**************************************************************************** + +Added QApplication::setColorMode() and colorMode(). + +Added QColor::setAllocContext() and friends; these functions enable +applications to allocate discardable colors and then discard them. + +Removed some GNU-make features from the makefiles. + +Added a QPalette constructor to construct an entire palette from a single +background color, for convenience. + +moc output now has a version number #define. + +AIX support added. IRIX and NetBSD fixed. + +Rewrote a couple of functions to work around compiler bugs, or +purify/boundschecker overzealousness. + +Fixed that ugly man-page SYNOPSIS bug. + +Added the static function QMessageBox::query(). + +QRect::unite() now produces the desired results if exactly one of the +rectangles is invalid. + +QObject::parent() is now public. + +QPainter::drawWinFocusRect() draws a Windows 95-style focus rectangle. +(A focus rectangle can not be drawn using ordinary Windows drawing +functions.) + +QApplication::processEvents() added to cater for long-running +computations; it processes one round of window system events and +timers and then returns. + +QComboBox has been extended to provide an editable combo box and Motif +2.x compatible look and feel. + +We've also added a host of new workarounds for bugs in Borland C++, +Microsoft VC++, DEC CXX and HP CC. diff --git a/dist/changes-1.2 b/dist/changes-1.2 new file mode 100644 index 0000000000..d4d2c2ca15 --- /dev/null +++ b/dist/changes-1.2 @@ -0,0 +1,119 @@ +Here is a list of user-visible changes in Qt from 1.1 to 1.2. As +usual, we fixed some bugs, made some more speedups, and improved the +documentation. + + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +QGridLayout::addWidget() and addMultiCellWidget(): The align parameter +is now interpreted correctly. (Previously up/down and right/left were +reversed.) If you have worked around this bug, your widgets may now be +incorrectly aligned. + +QWidget: Every widget is now guaranteed move and resize events. The +event is deferred until the first show(). This may cause problems in +rare cases involving event filters. + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +none + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +none + +**************************************************************************** +* Deprecated functions * +**************************************************************************** + +QApplication::setColorMode() and colorMode() will be obsoleted. Use +setColorSpec() and colorSpec() instead. + +qchecksum() will be obsoleted. Please use qChecksum() instead. + +**************************************************************************** +* New classes * +**************************************************************************** + +QSlider is a widget to input values from a range. If you have been +using a standalone QScrollBar, you will probably want to switch to a +QSlider. + +OpenGL/Mesa support: QGLWidget, QGLContext and QGLFormat. To use these +classes you need to build the Qt/OpenGL library (qgl) in qt/opengl/src. + +**************************************************************************** +* Other changes from 1.1 to 1.2 * +**************************************************************************** + +QApplication::setColorSpec() can specify private colormaps or +non-default visuals + +New function QButton::setAutoRepeat(). + +QComboBox: New function currentText(), two new insertion policies: +AfterCurrent and BeforeCurrent. + +QCursor: added new global cursor blankCursor. + +QFont::key(), new function for caching. + +QFontMetrics::QFontMetrics( const QFont& ) new constructor gives +fontmetrics directly for a font. This is much faster than using +QWidget::fontMetrics() or QPainter::fontmetrics(). + +QImage: image load/save functions: + QImage( const char *filename ) + imageFormat(), load(), loadFromData(), save() + operator>>(), operator<<() + XPM support, QImage( const *xpm[] ) + Alpha channel support: + hasAlphaBuffer(), setAlphaBuffer() + createAlphaMask(), + Automatic mask generaton: createHeuristicMask() + Filling the entire image: fill() + +QLCDNumber now supports filled segments: + setSegmentStyle(), segmentStyle() + +QLabel now supports accellerated labels: + setBuddy(), buddy() and a new constructor. + +QLineEdit new functions: + show/hide frame: setFrame(), frame() + password entry mode: setEchoMode(), echoMode() + +QMouseEvent: x() and y() convenience functions. + +QPainter: new constructor QPainter( const QPaintDevice* ) does automatic +begin() and end(). New function flush(). + +QPixmap new functions: + serialNumber() for caching purposes. + selfMask() QPixmap( const char *xpm[] ) + createHeuristicMask() + +QPopupMenu: Added functions to enable checkmarks: + setCheckable(), isCheckable() + +QScrollBar: sizeHint() implemented. + +QTabBar now supports keyboard input. New function currentTab(). + +QTabDialog: new function setOKButton(). + +Added support for XFree86 on OS/2. + +New examples: + examples/tooltip demonstrates dynamic tooltips + examples/table demonstrates QTableView + examples/hello is a different program + +examples/xshape has been removed. diff --git a/dist/changes-1.30 b/dist/changes-1.30 new file mode 100644 index 0000000000..255d89c810 --- /dev/null +++ b/dist/changes-1.30 @@ -0,0 +1,278 @@ +Here is a list of user-visible changes in Qt from 1.2 to 1.30. As +usual, we fixed some bugs, made some more speedups, and improved the +documentation. + +Keyboard accelerators and traversal are significantly improved. + +Two new extensions included with Qt 1.30. They are not part of the library: + +Netscape plugin support. You can now write portable Netscape plugins +using Qt. See the qt/extensions/nsplugin directory in the distribution. + +The ImageIO extension library gives a framework for adding new image +formats, including PNG and JPEG in this release. See the qt/extensions/imageio +directory in the distribution. + +The OpenGL extension for Qt now resides in qt/extensions. + + +**************************************************************************** +* New classes * +**************************************************************************** + +* QProgressBar displays a progress bar. + +* QProgressDialog uses QProgressBar to give the user feedback during long + operations, as well as a means of aborting. + +* QMovie supports animated GIFs and incremental loading of images. + +* QHBoxLayout and QVBoxLayout are convenience classes giving a simpler + interface to QBoxLayout. + +* QValidator provides a mechanism for validating input. + + +**************************************************************************** +* Enhancements from 1.2 to 1.30 * +**************************************************************************** + +QFont now supports charsets latin1 through latin9. + +New command-line arguments: -style motif and -style windows are +accepted, as well as -style=motif and -style=windows, -visual, -ncols, +-cmap. + +QMultiLineEdit is usable for much bigger documents than in 1.2 + +More sizeHint() functions added, some existing ones tweaked. + +Many widgets have improved look and feel, particularly changes to +Windows GUI style to match Windows more closely. + +Improved Postscript output. + +Color handling has been improved; better 32-to-8 conversion; Qt +prefers to use Macintosh/Netscape color cube in 8-bit mode; more and +better dithering support. + +GIF and PPM support. + +QMessageBox has a number of new static functions to replace the +venerable message(): information(), warning(), critical() and about(). + +QPopupMenu can now display icon and text in the same item. + +QPopupMenu::exec() to pop up a synchronous popup menu. + +QListBox now supports multi selection. + +QWidget::setBackgroundMode() gives a powerful way of managing widget +backgrounds, to reduce flicker. + +QWidget::setIcon() now works under both X11 and Windows. + +The file dialog now remembers the previously selected directory. + +QApplication::setWinStyleHighlightColor() sets the highlight color in +windows style. + +QApplication::setDoubleClickInterval() sets the double click timeout + +The layout example is new and more informative. + +There is a new openGL example; extension/opengl/examples/box/ shows +how to control an openGL widget using Qt user interface components. + + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +Tab/Shift-Tab handling has been improved a lot; this means that +widgets which couldn't get keyboard focus before now can. + +Some widgets (buttons, tab bars, tab dialogs) semi-automatically set +up keyboard accelerators. ( setText("E&xit") will give Alt-X as an +accelerator.) In some very rare cases, this will cause changes of +behaviour. + +The QColor::light() function now works, and anything which relied on +its buggy behaviour might be a little darker than expected until changed, +usually just recompiling (the default argument has also changed). + +The colors used have been tuned a bit; pixmaps that "know" the RGB +values of colorGroup().background() and the like will look just a tiny +bit wrong. + +QApplication calls setlocale to the local environment, except for +LC_NUMERIC which is set to the C locale. This means that input/output +of floating point numbers will always use '.' as the decimal separator, +while all other locale dependant operations will use the default locale. + + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +none + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +none + +**************************************************************************** +* Deprecated functions * +**************************************************************************** + +QApplication::setColorMode() + - see QApplication::setColorSpec(int) +QRegion::xor() + - see QRegion::eor() +QMessageBox::message() + - see QMessageBox::information/warning/critical +QMultiLineEdit::getCursorPosition() + - see QMultiLineEdit::cursorPosition() +QTabDialog::setOKButton() + - see QTabDialog::setOkButton() + +**************************************************************************** +* New public/protected functions added to existing classes * +**************************************************************************** + +QAccel::repairEventFilter() +QApplication::activeModalWidget() +QApplication::activePopupWidget() +QApplication::allWidgets() +QApplication::doubleClickInterval() +QApplication::hasGlobalMouseTracking() +QApplication::processEvents(int) +QApplication::processOneEvent() +QApplication::setDoubleClickInterval(int) +QApplication::setGlobalMouseTracking(bool) +QApplication::setWinStyleHighlightColor(QColor const &) +QApplication::winStyleHighlightColor() +QApplication::x11ProcessEvent(_XEvent *) +QBoxLayout::className() const +QButton::accel() const +QButton::animateClick() +QButton::enabledChange(bool) +QButton::setAccel(int) +QComboBox::clearValidator() +QComboBox::setStyle(GUIStyle) +QComboBox::setValidator(QValidator *) +QComboBox::validator() const +QDir::convertSeparators(char const *) +QFrame::sizeHint() const +QGridLayout::addColSpacing(int, int) +QGridLayout::addRowSpacing(int, int) +QGridLayout::className() const +QImage::convertDepth(int, int) const +QImage::create(QSize const &, int, int, QImage::Endian) +QImage::createAlphaMask(int) const +QImage::inputFormats() +QImage::outputFormats() +QImage::pixel(int, int) const +QImage::pixelIndex(int, int) const +QImage::setPixel(int, int, unsigned int) +QImage::valid(int, int) const +QImageIO::inputFormats() +QImageIO::outputFormats() +QLabel::movie() const +QLabel::setMovie(QMovie const &) +QLayout::className() const +QLineEdit::clearValidator() +QLineEdit::setValidator(QValidator *) +QLineEdit::sizeHint() const +QLineEdit::validator() const +QListBox::clearSelection() +QListBox::focusOutEvent(QFocusEvent *) +QListBox::highlighted(char const *) +QListBox::isMultiSelection() const +QListBox::isSelected(int) const +QListBox::selected(char const *) +QListBox::selectionChanged() +QListBox::setMultiSelection(bool) +QListBox::setSelected(int, bool) +QListBox::toggleCurrentItem() +QMenuBar::heightForWidth(int) const +QMenuBar::leaveEvent(QEvent *) +QMenuBar::separator() const +QMenuBar::setSeparator(QMenuBar::Separator) +QMenuData::changeItem(QPixmap const &, char const *, int) +QMenuData::insertItem(QPixmap const &, char const *, QObject const *, char const *, int) +QMenuData::insertItem(QPixmap const &, char const *, QPopupMenu *, int, int) +QMenuData::insertItem(QPixmap const &, char const *, int, int) +QMessageBox::about(QWidget *, char const *, char const *) +QMessageBox::aboutQt(QWidget *, char const *) +QMessageBox::buttonText(int) const +QMessageBox::critical(QWidget *, char const *, char const *, char const *, char const *, char const *, int, int) +QMessageBox::critical(QWidget *, char const *, char const *, int, int, int) +QMessageBox::icon() const +QMessageBox::iconPixmap() const +QMessageBox::information(QWidget *, char const *, char const *, char const *, char const *, char const *, int, int) +QMessageBox::information(QWidget *, char const *, char const *, int, int, int) +QMessageBox::setButtonText(int, char const *) +QMessageBox::setIcon(QMessageBox::Icon) +QMessageBox::setIconPixmap(QPixmap const &) +QMessageBox::setStyle(GUIStyle) +QMessageBox::standardIcon(QMessageBox::Icon, GUIStyle) +QMessageBox::warning(QWidget *, char const *, char const *, char const *, char const *, char const *, int, int) +QMessageBox::warning(QWidget *, char const *, char const *, int, int, int) +QMultiLineEdit::cursorPoint() const +QMultiLineEdit::cursorPosition(int *, int *) const +QMultiLineEdit::getMarkedRegion(int *, int *, int *, int *) const +QPainter::drawPoints(QPointArray const &, int, int) +QPainter::drawWinFocusRect( int, int, int, int, const QColor & ) +QPalette::detach() +QPicture::data() const +QPicture::isNull() const +QPicture::setData(char const *, unsigned int) +QPicture::size() const +QPixmap::convertFromImage(QImage const &, int) +QPixmap::load(char const *, char const *, int) +QPixmap::loadFromData(unsigned char const *, unsigned int, char const *, int) +QPopupMenu::exec() +QPopupMenu::setActiveItem(int) +QRegion::eor(QRegion const &) const +QSize::transpose() +QTabBar::setCurrentTab(QTab *) +QTabBar::setCurrentTab(int) +QTabBar::setShape(QTabBar::Shape) +QTabBar::shape() const +QTabBar::tab(int) +QTabBar::tabList() +QTabDialog::addTab(QWidget *, QTab *) +QTabDialog::hasOkButton() const +QTabDialog::selected(char const *) +QTabDialog::setTabBar(QTabBar *) +QTabDialog::showPage(QWidget *) +QTabDialog::styleChange(GUIStyle) +QTabDialog::tabBar() const +QTabDialog::tabLabel(QWidget *) +QTableView::minViewX() const +QTableView::minViewY() const +QTableView::updateTableSize() +QToolTip::font() +QToolTip::palette() +QToolTip::setFont(QFont const &) +QToolTip::setPalette(QPalette const &) +QWidget::backgroundMode() const +QWidget::create(unsigned int, bool, bool) +QWidget::destroy(bool, bool) +QWidget::focusProxy() const +QWidget::focusWidget() const +QWidget::isVisibleToTLW() const +QWidget::setBackgroundMode(QWidget::BackgroundMode) +QWidget::setFixedHeight(int) +QWidget::setFixedWidth(int) +QWidget::setFocusProxy(QWidget *) +QWidget::setMaximumHeight(int) +QWidget::setMaximumWidth(int) +QWidget::setMinimumHeight(int) +QWidget::setMinimumWidth(int) +QWidget::setTabOrder(QWidget *, QWidget *) +QWidget::update(QRect const &) diff --git a/dist/changes-1.31 b/dist/changes-1.31 new file mode 100644 index 0000000000..b6b2d65233 --- /dev/null +++ b/dist/changes-1.31 @@ -0,0 +1,34 @@ +1.31 is a bug-fix release of Qt and only contains minor changes compared +to Qt 1.30 + +Here is a list of the bug-fixes made in Qt from 1.30 to 1.31. + +Changing the font of a QButton, QPushButton, QCheckBox or QRadioButton now +works correctly. + +QRadiobutton: Correct toggling in a QButtonGroup when activated by an + accelerator. + +QPopupMenu: Items updated correctly when activated by an accelerator. + +QProgressBar: Base color is no longer fixed to white. + +QProgressDialog: setLabel() and setCancelButton() now ensure that a given + widget is shown and is a child of QProgressDialog. + +QWidget: setEnabled( FALSE ) now moves focus correctly. + +QLineEdit and +QMultiLineEdit: In keyPressEvent() backspace no longer inserts an + unprintable character with some rare keyboard layouts. + +QMenubar: Mouse presses on items without any popup menu are now + always recognized. + +Changes to fix compile problems under IRIX. + +Changes to fix compile problems on some versions of AIX. + +Changes to fix compile problems with aCC on HP-UX. + +Minor documentation fixes. diff --git a/dist/changes-1.39-19980327 b/dist/changes-1.39-19980327 new file mode 100644 index 0000000000..3c5843d401 --- /dev/null +++ b/dist/changes-1.39-19980327 @@ -0,0 +1,963 @@ +src/widgets/qlabel.cpp 2.21 agulbra +9 -5 + + new sizeHint(); "yes\nyes" is as tall as "Yes\nYes" + + +src/tools/qstrlist.h 2.7 hanord +10 -9 (1997/10/16) + + Fixed STL crash reported by ust@egd.igd.fhg.de + + +src/kernel/qregion.cpp 2.5 agulbra +3 -3 (1997/10/19) +src/kernel/qregion.h 2.6 agulbra +2 -2 + + USL C++ understands xor + + +src/kernel/qkeycode.h 2.5 hanord +13 -2 (1997/10/22) + + Added function keys F25..F35 for X only + + +src/widgets/qpushbt.cpp 2.33 hanord +5 -9 + + Always clear button background in Windows style + + +src/widgets/qpushbt.cpp 2.32 hanord +8 -8 + + Fixed background color for windows style + + +src/kernel/qcur_win.cpp 2.5 hanord +15 -5 + + Fix the cursor bug on Win95 + + +src/kernel/qobject.cpp 2.36 eiriken +3 -3 +src/kernel/qwid_win.cpp 2.39 eiriken +19 -17 + + Fixed bugs in setMaximumSize and setMinimumSize + + +src/widgets/qlabel.cpp 2.23 agulbra +11 -2 +src/widgets/qlabel.h 2.5 agulbra +2 -1 + + add clear() + + +src/kernel/qapp.cpp 2.38 eiriken +8 -2 (1997/10/31) + + Added warning in QApplication::palette() if called before a QApplication + is created. + + +src/kernel/qcolor.h 2.8 hanord +6 -7 + + Fixed the color== operator + + +src/kernel/qcol_win.cpp 2.16 hanord +13 -41 +src/kernel/qcolor.cpp 2.12 hanord +118 -36 +src/kernel/qcolor.h 2.7 hanord +7 -6 + + Moved platform independent functions into qcolor.cpp + Optimized setNamedColor for #RRGGBB style color names. + Doc warns that RGB bit format may change in the future. + setRgb(QRgb) optimized. + Added static class member color_init (not a global file variable) + + +src/kernel/qapp_win.cpp 2.64 hanord +67 -50 + + Detects the Windows version using GetVersionEx. + Moved the timer function to the appropriate section. + + +src/kernel/qclb_x11.cpp 2.4 agulbra +6 -5 + + call XInternAtoms() once instead of XInternAtom N times. should + improve start-up time by about 3-5 times the ping time to the server. + + +src/widgets/qlistbox.h 2.12 agulbra +2 -1 (1997/11/09) + + don't let down-arrow set the current item to be half-visible + + +src/kernel/qpainter.cpp 2.17 hanord +61 -5 (1997/11/12) +src/kernel/qpainter.h 2.12 hanord +2 -1 + + Added new begin() which takes a paint device and a widget to copy pen, font + etc. from. + Fixed inverted dense pattern on Windows. + + +src/widgets/qslider.cpp 2.45 paul +3 -2 + + fixing bug when setting value in constructor followed by resetting value + to zero. + + +src/kernel/qimage.cpp 2.65.2.1 agulbra +4 -4 + + avoid segfaults for image handlers where either read or + write is 0. enables gif image handlers. + + +src/qt.pro 2.6 agulbra +4 -2 (1997/11/20) +src/kernel/qdragobject.cpp 2.1 agulbra initial checkin +src/kernel/qdragobject.h 2.1 agulbra initial checkin +src/kernel/qevent.h 2.6 agulbra +59 -2 +src/widgets/qlined.cpp 2.54 agulbra +92 -3 +src/widgets/qlined.h 2.19 agulbra +3 -1 + + QDragObject and related goodies. not ready for prime time, but hey! + + +src/widgets/qcombo.cpp 2.68 agulbra +52 -2 +src/widgets/qcombo.h 2.20 agulbra +5 -1 + + new function setListBox() - allows custom combos like the ones in ACT + + +src/kernel/qapp_win.cpp 2.65 warwick +4 -3 +src/kernel/qwid_win.cpp 2.43 warwick +51 -19 + + Reimplement QWidget::recreate(), using almost same code as X11 version. + + +src/kernel/qptr_win.cpp 2.21.2.1 hanord +8 -8 (1997/11/25) + + Fixed bad dense patterns + + +src/widgets/qchkbox.cpp 2.17 warwick +16 -7 (1997/11/28) +src/widgets/qradiobt.cpp 2.21 warwick +18 -7 + + Check pixmap in sizeHint() + + +src/kernel/qpainter.h 2.14 hanord +3 -1 (1997/12/02) + + Added xForm and xFormDev with index,npoints arguments + + +src/kernel/qpainter.cpp 2.19 hanord +399 -2 +src/kernel/qptr_x11.cpp 2.31 hanord +45 -333 + + Moved platform-independent xForm functions into qpainter.cpp. + Fixed bugs in drawPoints, drawPolyline, drawLineSegments and + drawPolygon where index > 0 or npoints < array size. + Added xForm(pointarray,index,size) and similar xFormDev(). + Now Purify should shut up. + Removed some tests for cpen.style() != NoPen. Makes some code + somewhat slower, but makes QPainter more consistent. + + +src/kernel/qptd_x11.cpp 2.9 hanord +11 -3 +src/kernel/qptr_x11.cpp 2.30 hanord +11 -5 + + Set graphics exposures to FALSE except when bitBlt from widget to widget + + +src/kernel/qpm_win.cpp 2.29 hanord +12 -12 + + When converting an image to a pixmap, don't create a new pixmap unless + the depth or dimension changes. + + +src/widgets/qlined.cpp 2.56 agulbra +64 -41 +src/widgets/qlined.h 2.21 agulbra +6 -3 + + various small fixes, mostly to draw correctly. added setFont() and + setEnabled() to update correctly, I guess we need setStyle() and + setPalette() too. + + +src/dialogs/qmsgbox.cpp 2.40 warwick +8 -6 (1997/12/08) + + Correct layout for text smaller than icon. + + +src/widgets/qprogbar.cpp 2.15 warwick +22 -8 + + Ensure display is up-to-date when a progress bar is re-used. + + +src/kernel/qptr_x11.cpp 2.32 warwick +4 -2 + + Fix out-of-bounds clipping. + + +src/kernel/qapp_win.cpp 2.67 hanord +23 -8 + + Get the app name even for console applications (when WinMain isn't called) + + +src/kernel/qasyncimageio.cpp 1.23 warwick +57 -26 +src/kernel/qasyncimageio.h 1.12 warwick +2 -1 + + Handle nasty GIFs. + + +src/widgets/qspinbox.cpp 2.24 aavit +170 -25 (1997/12/09) +src/widgets/qspinbox.h 2.14 aavit +17 -8 + + Improved QSpinbox - now easier to subclass; and "Auto" choice added. + + +src/tools/qregexp.cpp 2.6 hanord +15 -12 + + Fixed serious bug: regular expression with characters > 127 now works. + + +src/kernel/qprn_x11.cpp 2.6 warwick +3 -3 + + QPrinter::newPage() previous always returned FALSE. Fixed. + + +src/widgets/qscrbar.cpp 2.30 agulbra +6 -6 + + be a bit kinder and gentler about the hot zone in windows style. the + old limit (30 pixels to either side of the bar) was too tight + + +src/kernel/qapp_win.cpp 2.68 hanord +6 -3 (1997/12/15) + + Fixed the modal loop problem related to synch popups with signals + + +src/widgets/qlined.cpp 2.57 agulbra +8 -8 (1998/01/05) + + don't allow paste from ****'ed line edits + + +src/kernel/qasyncimageio.cpp 1.25 warwick +14 -6 (1998/01/06) + + Be more forgiving about broken GIF - as forgiving as netscape + + +src/kernel/qasyncimageio.cpp 1.24 warwick +5 -2 + + Protection against more broken GIFs. + + +extensions/xt/doc.conf 1.1 warwick initial checkin (1998/01/07) +extensions/xt/doc/annotated.doc 1.1 warwick initial checkin +extensions/xt/doc/classes.doc 1.1 warwick initial checkin +extensions/xt/doc/examples.doc 1.1 warwick initial checkin +extensions/xt/doc/index.doc 1.1 warwick initial checkin +extensions/xt/examples/mainlyMotif/editor.cpp 1.1 warwick initial checkin +extensions/xt/examples/mainlyMotif/editor.pro 1.1 warwick initial checkin +extensions/xt/examples/mainlyQt/editor.cpp 1.1 warwick initial checkin +extensions/xt/examples/mainlyQt/editor.pro 1.1 warwick initial checkin +extensions/xt/examples/mainlyXt/editor.cpp 1.1 warwick initial checkin +extensions/xt/examples/mainlyXt/editor.pro 1.1 warwick initial checkin +extensions/xt/src/qxt.cpp 1.1 warwick initial checkin +extensions/xt/src/qxt.h 1.1 warwick initial checkin +extensions/xt/src/qxt.pro 1.1 warwick initial checkin + + Qt Xt/Motif Extension, examples, docs. + + +src/kernel/qevent.cpp 2.7 paul +48 -9 (1998/01/08) +src/kernel/qevent.h 2.9 paul +17 -1 +src/kernel/qgmanagr.cpp 2.22 paul +97 -10 +src/kernel/qgmanagr.h 2.7 paul +3 -1 +src/kernel/qlayout.cpp 2.27 paul +2 -23 +src/kernel/qwid_win.cpp 2.44 paul +19 -3 +src/kernel/qwidget.cpp 2.85 paul +10 -2 + + New events ChildInserted, ChildRemoved and LayoutHint. Not tested on Windows. + Use new events in GM. + + +src/qt.pro 2.11 paul +2 -0 +src/widgets/qsplitter.cpp 1.1 paul initial checkin +src/widgets/qsplitter.h 1.1 paul initial checkin + + New widget QSplitter + + +src/kernel/qpntarry.cpp 2.12 warwick +4 -4 + + Fix quad bezier for small curves + + +src/kernel/qwidget.cpp 2.87 agulbra +71 -16 +src/kernel/qwidget.h 2.38 agulbra +5 -2 +src/kernel/qwindefs.h 2.20 agulbra +2 -1 + + added setAutoMinimumSize(). fixed a couple of documentation errors. + + +src/kernel/qwid_win.cpp 2.45 warwick +4 -3 (1998/01/13) + + Fix case of recreate(0,...) on tlw. + + +src/widgets/qbutton.cpp 2.40.2.1 agulbra +7 -7 + + paint correctly when there is a background color + + +src/widgets/qlined.cpp 2.58 paul +18 -8 (1998/01/14) + + Correct cursor when end(). Better blinking + + +src/dialogs/qtabdlg.cpp 2.36 agulbra +172 -213 +src/dialogs/qtabdlg.h 2.17 agulbra +2 -1 +src/kernel/qgmanagr.cpp 2.23 agulbra +22 -21 +src/widgets/qtabbar.cpp 2.30 agulbra +12 -15 +src/widgets/qwidgetstack.cpp 2.1 agulbra initial checkin +src/widgets/qwidgetstack.h 2.1 agulbra initial checkin + + The new class QWidgetStack encapsulates a bunch of widgets of the same + size, where the one on top of the stack is visible. It provides slots + to raise any of the widgets to the top of the stack and so on. + + QTabDialog now uses QWidgetStack. A couple of hacks went away, and it + now uses QBoxLayout to manage its children. Some more minor changes + are desirable here. + + QTabBar now uses autoMinimumSize() appropriately, and is closer to the + new Windows look and feel (ie. it lost the bold stuff). QTabDialog is + adapted accordingly. + + QGManager now has a one-line VERY INEFFICENT fix that SORELY NEEDS + OPTIMIZATION to make layout hint events propagate outwards correctly. + There's about twenty hashes on the relevant line. This change is the + whole point of the check-in: Most things that use QWidgetStack will + really need this fix. Paul, optimize it, please? + + +src/kernel/qobject.cpp 2.42 agulbra +13 -2 + + show geometry and visibility too in dumpObjectTree() + + +src/qt.pro 2.12 agulbra +10 -0 +src/widgets/qmainwindow.cpp 2.1 agulbra initial checkin +src/widgets/qmainwindow.h 2.1 agulbra initial checkin +src/widgets/qstatusbar.cpp 2.1 agulbra initial checkin +src/widgets/qstatusbar.h 2.1 agulbra initial checkin +src/widgets/qtoolbar.cpp 2.1 agulbra initial checkin +src/widgets/qtoolbar.h 2.1 agulbra initial checkin +src/widgets/qtoolbutton.cpp 2.1 agulbra initial checkin +src/widgets/qtoolbutton.h 2.1 agulbra initial checkin + + several new classes. very rough and ready, but they're good enough to + talk about and play with. + + +src/widgets/qframe.cpp 2.11 paul +33 -5 +src/widgets/qframe.h 2.4 paul +8 -2 + + New function setMargin() + + +examples/showimg/showimg.cpp 2.18 warwick +25 -6 (1998/01/21) +examples/showimg/showimg.h 2.6 warwick +3 -1 +src/kernel/qimage.h 2.22 warwick +5 -1 + + QImage::smoothScale(int with, int height) + + +src/widgets/qpopmenu.h 2.10 agulbra +3 -2 + + new signal aboutToShow(), like the one in QTabDialog. + + +src/tools/qstring.cpp 2.16 warwick +44 -3 (1998/01/23) + + Make QString implicitly shared. Activates in Qt 2.00. + Try enabling this protection next time you have some weird bug. + + +src/kernel/qclb_x11.cpp 2.6 hanord +155 -46 + + INCR paste works. + + +src/qt.pro 2.13 agulbra +2 -0 +src/widgets/qwhatsthis.cpp 2.1 agulbra initial checkin +src/widgets/qwhatsthis.h 2.1 agulbra initial checkin + + what's this? + it's not perfect, but it definitely is nice. + + +extensions/imageio/src/qpngio.cpp 1.6 warwick +9 -4 (1998/01/27) + + Don't set alpha if not necessary. + + +src/kernel/qpm_win.cpp 2.31 hanord +5 -11 + + Preserves mask when converting an image to a pixmap + + +src/kernel/qapp.cpp 2.42 agulbra +7 -7 + + corrected dark shadow colour - has been too dark since warwick fixed + QColor::dark(). + + +src/kernel/qprn_win.cpp 2.6 hanord +11 -5 + + Printing now works on DeskJet 890c (StretchDIBits didn't work) + We now do StretchBlt. + + +src/widgets/qpopmenu.h 2.12 warwick +2 -1 (1998/02/06) + + Allow position in QPopupMenu::exec(...) + + +src/kernel/qpntarry.cpp 2.13 warwick +14 -15 + + QPointArray::makeArc() now works with negative "alen" angle. + - QPainter::drawArc() uses this for arcs under transformation. + + +src/widgets/qbttngrp.cpp 2.8 aavit +34 -10 +src/widgets/qbttngrp.h 2.3 aavit +2 -1 + + bugfix: Untoggling of other buttons in an exclusive group + if a button was set with setChecked() did not work. + + +src/widgets/qslider.cpp 2.47 agulbra +15 -28 + + made valueChanged() work correctly with middle-button dragging when + !tracking(). simplified the mouse state machine a little. + + +src/tools/qdir.cpp 2.16 hanord +4 -8 (1998/02/11) +src/tools/qfile.cpp 2.13 hanord +36 -2 +src/tools/qfile.h 2.3 hanord +4 -1 + + Added QFile::remove() which removes a file + + +src/widgets/qlined.cpp 2.60 agulbra +12 -2 (1998/02/19) +src/widgets/qlined.h 2.23 agulbra +5 -3 + + add clear(), make setText() and insert() public + + +src/widgets/qlistview.cpp 2.52 agulbra +33 -2 +src/widgets/qlistview.h 2.25 agulbra +3 -1 + + added a sizeHint() + + +src/tools/qdir.cpp 2.17 agulbra +4 -4 +src/tools/qfileinf.cpp 2.7 agulbra +5 -4 + + do what the docs say for absFilePath() (ie. no /usr/../usr/bin/ls names) + + +src/widgets/qtablevw.cpp 2.41 agulbra +31 -23 + + scrollLast*Cell and clipToCell could not be combined. now they can. + + +src/widgets/qframe.cpp 2.13 warwick +4 -4 (1998/02/20) + + Fix Box and H/VLine frames with margin() != 0. + + +src/qt.pro 2.15 warwick +2 -0 +src/widgets/qlabelled.cpp 1.1 warwick initial checkin +src/widgets/qlabelled.h 1.1 warwick initial checkin + + QLabelled widget (experimental) + + +src/kernel/qapp.cpp 2.45 agulbra +28 -13 +src/kernel/qapp_win.cpp 2.73 agulbra +14 -13 + + deliver mouse events to application-wide event filters even if the + receiver object is disabled. this allows tooltips to work for + disabled widgets. + + +src/widgets/qcombo.h 2.23 agulbra +3 -2 + + make eventFilter() public. this may break binary compatibility on + msvc++, if anyone's built a dll yet. + + +src/widgets/qradiobt.cpp 2.23 agulbra +7 -17 + + support exclusive button group behaviour even when one of the buttons + is not a QRadioButton. + + +src/qt.pro 2.16 paul +6 -0 +src/widgets/qgrid.cpp 1.1 paul initial checkin +src/widgets/qgrid.h 1.1 paul initial checkin +src/widgets/qhbox.cpp 1.1 paul initial checkin +src/widgets/qhbox.h 1.1 paul initial checkin +src/widgets/qvbox.cpp 1.1 paul initial checkin +src/widgets/qvbox.h 1.1 paul initial checkin + + New layout widgets + + +src/tools/qdstream.h 2.4 warwick +2 -2 + + QDataStream::eof() now returns TRUE if no device is set (as documented). + + +src/tools/qfile.cpp 2.14 warwick +36 -19 +src/tools/qiodev.cpp 2.8 warwick +8 -5 + + Test the file in QFile::open(FILE*) to see if it is seekable (not a + char device, fifo, or socket), rather than assuming stdin/out/err are not. + Set type to Sequential for such files, not default Direct. + + Don't use feof(fh) to mean at()==size(). QFile::atEnd() now works the + same as QIODevice and QBuffer. + + setStatus(IO_ReadError) in appropriate places (wasn't ever set for files). + Reading EOF is considered an error in the QIODevice model (see QBuffer). + + +src/kernel/qasyncimageio.cpp 1.26 warwick +37 -30 +src/kernel/qasyncimageio.h 1.13 warwick +2 -2 + + Work for even weirder GIFs. + + +src/tools/qfile.cpp 2.16 agulbra +5 -4 (1998/02/25) + + -1 in case of error... + + +src/qt.pro 2.17 paul +2 -0 +src/widgets/qbuttonrow.cpp 1.1 paul initial checkin +src/widgets/qbuttonrow.h 1.1 paul initial checkin + + New layout widget + + +examples/aclock/GNUmakefile 2.1 hanord initial checkin +examples/aclock/Makefile 2.2 hanord +6 -53 +examples/aclock/aclock.pro 1.4 hanord +6 -6 +examples/application/GNUmakefile 1.1 hanord initial checkin +examples/application/application.pro 1.2 hanord +6 -6 +examples/biff/GNUmakefile 2.1 hanord initial checkin +examples/biff/Makefile 2.2 hanord +6 -54 +examples/biff/biff.pro 1.4 hanord +6 -6 +examples/connect/GNUmakefile 2.1 hanord initial checkin +examples/connect/Makefile 2.2 hanord +6 -46 +examples/connect/connect.pro 1.4 hanord +5 -5 +examples/cursor/GNUmakefile 2.1 hanord initial checkin +examples/cursor/Makefile 2.2 hanord +6 -46 +examples/cursor/cursor.pro 1.4 hanord +5 -5 +examples/dclock/GNUmakefile 2.1 hanord initial checkin +examples/dclock/Makefile 2.2 hanord +6 -54 +examples/dclock/dclock.pro 1.4 hanord +6 -6 +examples/desktop/GNUmakefile 2.1 hanord initial checkin +examples/desktop/Makefile 2.2 hanord +6 -46 +examples/desktop/desktop.pro 1.4 hanord +5 -5 +examples/dirview/GNUmakefile 1.1 hanord initial checkin +examples/drawdemo/GNUmakefile 2.1 hanord initial checkin +examples/drawdemo/Makefile 2.2 hanord +6 -52 +examples/drawdemo/drawdemo.pro 1.4 hanord +5 -5 +examples/forever/GNUmakefile 2.1 hanord initial checkin +examples/forever/Makefile 2.3 hanord +6 -42 +examples/forever/forever.pro 1.4 hanord +5 -5 +examples/hello/GNUmakefile 2.1 hanord initial checkin +examples/hello/Makefile 2.8 hanord +6 -61 +examples/hello/hello.pro 1.5 hanord +6 -5 +examples/layout/GNUmakefile 1.1 hanord initial checkin +examples/layout/Makefile 1.11 hanord +7 -50 +examples/layout/layout.pro 1.5 hanord +5 -4 +examples/life/GNUmakefile 2.1 hanord initial checkin +examples/life/Makefile 2.2 hanord +6 -57 +examples/life/life.pro 2.3 hanord +8 -8 +examples/menu/GNUmakefile 2.1 hanord initial checkin +examples/menu/Makefile 2.4 hanord +6 -55 +examples/menu/menu.pro 2.3 hanord +5 -5 +examples/movies/GNUmakefile 1.1 hanord initial checkin +examples/movies/Makefile 1.11 hanord +6 -50 +examples/movies/movies.pro 1.4 hanord +5 -5 +examples/network/GNUmakefile 1.1 hanord initial checkin +examples/network/Makefile 1.7 hanord +6 -82 +examples/picture/GNUmakefile 2.1 hanord initial checkin +examples/picture/Makefile 2.2 hanord +6 -49 +examples/picture/picture.pro 1.2 hanord +6 -3 +examples/pref/GNUmakefile 1.1 hanord initial checkin +examples/pref/Makefile 1.4 hanord +6 -53 +examples/pref/pref.pro 1.4 hanord +6 -6 +examples/progress/GNUmakefile 1.1 hanord initial checkin +examples/progress/Makefile 1.9 hanord +6 -47 +examples/progress/progress.pro 1.3 hanord +5 -5 +examples/qmag/GNUmakefile 2.1 hanord initial checkin +examples/qmag/Makefile 2.2 hanord +6 -52 +examples/qmag/qmag.pro 2.3 hanord +5 -5 +examples/qwerty/GNUmakefile 1.1 hanord initial checkin +examples/qwerty/Makefile 1.6 hanord +5 -66 +examples/qwerty/qwerty.pro 1.4 hanord +6 -6 +examples/scrollview/GNUmakefile 1.1 hanord initial checkin +examples/scrollview/Makefile 1.4 hanord +6 -56 +examples/scrollview/scrollview.pro 1.3 hanord +5 -5 +examples/sheet/GNUmakefile 2.1 hanord initial checkin +examples/sheet/Makefile 2.3 hanord +6 -59 +examples/showimg/GNUmakefile 2.1 hanord initial checkin +examples/showimg/Makefile 2.12 hanord +6 -58 +examples/showimg/showimg.pro 2.7 hanord +6 -9 +examples/table/GNUmakefile 1.1 hanord initial checkin +examples/table/Makefile 1.5 hanord +5 -67 +examples/table/table.pro 1.4 hanord +6 -6 +examples/tetrix/GNUmakefile 2.1 hanord initial checkin +examples/tetrix/Makefile 2.5 hanord +6 -70 +examples/tetrix/tetrix.pro 2.4 hanord +14 -14 +examples/tictac/GNUmakefile 2.1 hanord initial checkin +examples/tictac/Makefile 2.2 hanord +6 -54 +examples/tictac/tictac.pro 2.3 hanord +6 -6 +examples/timestmp/GNUmakefile 2.1 hanord initial checkin +examples/timestmp/Makefile 2.2 hanord +6 -46 +examples/tooltip/GNUmakefile 1.1 hanord initial checkin +examples/tooltip/Makefile 1.3 hanord +6 -53 +examples/tooltip/tooltip.pro 1.3 hanord +6 -6 +examples/validator/GNUmakefile 1.1 hanord initial checkin +examples/validator/Makefile 1.3 hanord +6 -38 +examples/widgets/GNUmakefile 2.1 hanord initial checkin +examples/widgets/Makefile 2.4 hanord +6 -67 +examples/widgets/widgets.pro 2.3 hanord +5 -9 +examples/xform/GNUmakefile 2.1 hanord initial checkin +examples/xform/Makefile 2.4 hanord +6 -52 +examples/xform/xform.pro 2.3 hanord +6 -5 +src/GNUmakefile 2.1 hanord initial checkin +src/Makefile 2.22 hanord +6 -156 + + New makefile system + + +src/widgets/qframe.cpp 2.14 agulbra +6 -6 + + no reason to call drawContents() in [HV]Line mode + + +src/kernel/qfont.cpp 2.18 warwick +3 -2 +src/kernel/qfontdta.h 2.8 warwick +2 -1 +src/kernel/qfontmet.h 2.6 warwick +9 -3 +src/kernel/qpainter.cpp 2.20 warwick +564 -2 +src/kernel/qpainter.h 2.16 warwick +2 -1 +src/kernel/qptr_x11.cpp 2.34 warwick +2 -546 + + QPainter::drawText(...tf...) now takes into account the left and + right bearings of the font. The bounding rectangle of text may now + be slightly larger (particularly italic text). QFontMetrics has + the additional functionality allowing this. + + +src/kernel/qaccel.cpp 2.8 agulbra +70 -2 (1998/02/28) + + added common accelerator keys for later inclusion into docs + + +src/kernel/qfont.cpp 2.21 warwick +110 -2 (1998/03/01) +src/kernel/qfontmet.h 2.8 warwick +7 -1 +src/kernel/qpainter.cpp 2.22 warwick +43 -26 +src/kernel/qpainter.h 2.17 warwick +5 -1 +src/widgets/qchkbox.cpp 2.18 warwick +23 -29 +src/widgets/qpushbt.cpp 2.35 warwick +5 -5 +src/widgets/qradiobt.cpp 2.24 warwick +24 -29 + + QFontMetrics::size() and QFontMetrics::boundingRect() with all the + functionality of QPainter::boundingRect() - code now shared. + + Use QFontMetrics::size() in button size hints, thus allowing multi-line + button labels. Position checkbox/radiobutton top-left. + + +src/kernel/qpm_x11.cpp 2.30 eiriken +78 -3 (1998/03/02) + + Fix convertToImage() for pixmaps with other than 8-bit-per-channel. + + +src/kernel/qpixmap.cpp 2.24 hanord +7 -33 +src/kernel/qpixmap.h 2.16 hanord +21 -2 +src/kernel/qpm_win.cpp 2.32 hanord +110 -51 +src/kernel/qpm_x11.cpp 2.31 hanord +165 -84 +src/kernel/qptd_win.cpp 2.7 hanord +102 -29 +src/kernel/qptd_x11.cpp 2.10 hanord +41 -11 + + Implemented masked bitBlt for Windows 95. + Added QPixmap::setOptimization() which replaces the old optimize function. + E.g. setOptimization(QPixmap::BestOptim) to get much faster masked bitBlts. + Removed the dirty system, instead delete cached data whenever the pixmap + is changed. + + +src/kernel/qprinter.h 2.3 eiriken +6 -1 +src/kernel/qprn_win.cpp 2.7 eiriken +17 -7 +src/kernel/qprn_x11.cpp 2.7 eiriken +10 -5 +src/kernel/qpsprn.cpp 2.9 eiriken +8 -10 + + Take display vs. font resolution into account for printer font metrics. + + +src/kernel/qpshdr.txt 2.3 agulbra +91 -3 +src/kernel/qpsprn.cpp 2.10 agulbra +644 -88 + + added iso-8859-1 support + + also added better font support. try to print palatino, and the printer + goes "hm, is palatino installed? if not, perhaps garamond is installed? + if not, is times installed? if not, well, courier MUST work". + + finally, if I understand the postscript book correctly I think I made + two-font postscript text output a little faster. the code now attempts + to use variables for fonts and call findfont/makefont just once per font + change per page. + + this code is not perfect. the hacky stuff that does font substitution + needs tweaking, and at present the code believes that all the world is + iso-8859-1. will fix that. + + postscript is fun. + + +src/widgets/qmenudta.cpp 2.10 warwick +4 -4 + + Fix this->changeItem(this->pixmap(), "crashme") + + +src/kernel/qapp_win.cpp 2.74 agulbra +7 -2 (1998/03/10) + + Set WState_Visible correctly when the window is (de)iconified. + + +src/kernel/qdrawutl.cpp 2.16 warwick +5 -3 (1998/03/11) +src/kernel/qpmcache.cpp 2.3 warwick +77 -5 +src/kernel/qpmcache.h 2.3 warwick +3 -1 +src/kernel/qptr_x11.cpp 2.36 warwick +5 -3 +src/tools/qgcache.cpp 2.5 warwick +10 -2 + + Fix extremely-unlikely-to-be-triggered undeleted cached pixmaps. + Provide safer QPixmapCache find() and insert(). + + +src/widgets/qbutton.h 2.14 agulbra +3 -2 (1998/03/12) + + add toggle() + + +src/tools/qregexp.cpp 2.7 agulbra +23 -18 + + implement [] in wildcard mode + + +src/kernel/qobject.cpp 2.44 agulbra +29 -11 +src/kernel/qobject.h 2.9 agulbra +5 -1 +src/widgets/qbuttonrow.cpp 1.3 agulbra +8 -6 +src/widgets/qframe.cpp 2.16 agulbra +4 -4 +src/widgets/qheader.cpp 2.30 agulbra +6 -4 +src/widgets/qlcdnum.cpp 2.9 agulbra +7 -5 +src/widgets/qmainwindow.cpp 2.9 agulbra +4 -3 +src/widgets/qscrbar.cpp 2.33 agulbra +14 -14 +src/widgets/qslider.cpp 2.48 agulbra +4 -4 +src/widgets/qtablevw.cpp 2.42 agulbra +10 -8 +src/widgets/qtoolbar.cpp 2.10 agulbra +4 -4 + + provide QObject::name( const char * defaultName ). + + use name( "unnamed" ) in all the debug() calls, to avoid segfaults + where printf() won't handle null pointers. + + +src/tools/qstring.cpp 2.18 agulbra +5 -9 + + toDouble() of a null string now sets ok to FALSE + + +src/widgets/qcombo.cpp 2.73 agulbra +54 -49 +src/widgets/qcombo.h 2.25 agulbra +3 -1 + + tweaked size hint for toolbar use. provide functions to change the + line-edit without changint the combo's contents. + + +src/kernel/qapp_win.cpp 2.78 warwick +13 -2 + + Don't let Windows beep on WM_SYSCHAR events. + Beep on unaccepted accelerations. + + +src/kernel/qpainter.cpp 2.29 hanord +96 -17 +src/kernel/qptr_x11.cpp 2.40 hanord +2 -70 + + Fixed QPainter::drawPixmap() bug (mono bitmaps with self-masks) + Moved platform indep. code to qpainter.cpp + Put back CtorBegin + + +src/widgets/qbttngrp.cpp 2.9 agulbra +14 -2 +src/widgets/qbttngrp.h 2.5 agulbra +3 -1 + + added setButton() - very useful when you want to force one member of + an exclusive button group to on but not keep around pointers to + umpteen radio buttons. + + +src/kernel/qprinter.cpp 2.5 agulbra +31 -6 +src/kernel/qprinter.h 2.5 agulbra +6 -2 + + added setPageOrder() + + +src/kernel/qobject.cpp 2.45 agulbra +18 -2 + + give better warnings in case of connect() mismatches. + + +src/dialogs/qprndlg.cpp 2.4 agulbra +258 -112 +src/dialogs/qprndlg.h 2.5 agulbra +9 -2 + + it's finished. please have a look. and please do debug. I don't + know about any bugs now, but I'm sure there are some. + + +src/widgets/qcombo.cpp 2.75 agulbra +15 -6 + + magic hack to make combos usable in dialogs. (QDialog breaks the + combo Enter key press.) + + +src/dialogs/qprndlg.cpp 2.3 agulbra +543 -187 +src/dialogs/qprndlg.h 2.4 agulbra +24 -10 +src/kernel/qprn_x11.cpp 2.8 agulbra +4 -2 + + new better-looking print dialog and a new static function to configure + a QPrinter (replaces QPrinter::setup() - kernel/* should not use + dialogs/*). + + noteworthy points: + + - the new static function appears to write over something it + shouldn't. I don't see why, but it does seem to cause crashes + later on. the old function works. I'm committing so I can run + purify on solaris. + - the dialog lacks accelerators. + - I haven't put in solaris /etc/lp/ support yet. should be fairly + easy, but I haven't done it. + - the layout will benefit from Warwick's alternative space + distribution + - the awful message in qprndlg.h is gone gone gone. + + +src/dialogs/qprndlg.cpp 2.5 agulbra +119 -23 (1998/03/15) + + /etc/lp support + + +src/widgets/qcombo.cpp 2.76 agulbra +2 -3 + + don't ignore key events, just don't accept them. + + +src/kernel/qapp.cpp 2.48 agulbra +3 -2 +src/kernel/qfont.cpp 2.27 agulbra +11 -5 + + look at $LANG and try to pick an application font that suits $LANG. + the application font used is 12-point helvetica. if the locale isn't + in the list I built from XFree86's locale.alias, I assume 8859-1 is + okay. + + copy character set from defFont in the relevant QFont constructor. + + this code assumes that helvetica includes the appropriate character + set. + + +examples/qmag/qmag.cpp 2.13 warwick +39 -2 + + Crazy hard-disk chewing MultiSave option. Great when you want to make + animated GIFs for your web pages. + + +src/dialogs/qprndlg.cpp 2.8 warwick +4 -4 +src/kernel/qsize.cpp 2.6 warwick +9 -3 +src/kernel/qsize.h 2.6 warwick +9 -3 + + Add QSize::expandedTo(), and boundedTo(). + + +src/kernel/qwidget.cpp 2.92 agulbra +7 -6 + + remove the widget's willingness to accept focus-in events very early + in the destructor + + +src/tools/qgdict.cpp 2.11 warwick +56 -11 (1998/03/17) +src/tools/qgdict.h 2.3 warwick +3 -1 + + Add QDict::resize(int). + + +src/widgets/qlined.cpp 2.64 agulbra +46 -9 +src/widgets/qlined.h 2.25 agulbra +6 -2 + + add setSelection() and setCursorPosition() + + +src/widgets/qcombo.cpp 2.77 agulbra +86 -11 +src/widgets/qcombo.h 2.26 agulbra +4 -1 + + setAutoCompletion() - works really nicely. + + +src/kernel/qiconset.cpp 2.1 agulbra initial checkin +src/kernel/qiconset.h 2.1 agulbra initial checkin + + QIconSet first checking. QIconSet is neat: You give it one or more + icons, and it completes the set so you get large and small disabled, + active and normal icons. QToolButton uses it, QMenuData will soon. + + +src/kernel/qpainter.cpp 2.31 agulbra +18 -2 +src/kernel/qpainter.h 2.22 agulbra +2 -1 + + added drawImage() by request of eng. did NOT implement the QPrinter + shortcut he asked for. + + +src/kernel/qapp.cpp 2.49 warwick +10 -6 (1998/03/19) + + Ensure mouserelease goes to widget that got mousepress. + Document -ncols better. + + +examples/qdir/GNUmakefile 1.1 warwick initial checkin +examples/qdir/Makefile 1.1 warwick initial checkin +examples/qdir/qdir.cpp 1.1 warwick initial checkin + + Tests QFileDialog features. + + +extensions/nsplugin/src/qnp.cpp 1.18 warwick +4 -1 + + Work for multi-visual displays. + + +extensions/opengl/examples/box/.cvsignore 1.2 aavit +0 -1 +extensions/opengl/examples/box/glbox.cpp 1.4 aavit +15 -6 +extensions/opengl/examples/box/glbox.h 1.5 aavit +2 -1 +extensions/opengl/examples/gear/gear.cpp 1.5 aavit +26 -35 +extensions/opengl/src/qgl.cpp 1.18 aavit +127 -41 +extensions/opengl/src/qgl.h 1.8 aavit +80 -77 + + New features in OpenGL extension: + 1) virtual initalizeGL() method in QGLWidget; facilitates easier GL initialization. + 2) Added support for using shared OpenGL display lists + 3) Added sharedbox example showing this feature. + + diff --git a/dist/changes-1.39-19980406 b/dist/changes-1.39-19980406 new file mode 100644 index 0000000000..63b3dbbc26 --- /dev/null +++ b/dist/changes-1.39-19980406 @@ -0,0 +1,286 @@ +src/kernel/qpainter.cpp 2.127 agulbra +37 -6 (1998/03/30) + + sort of parse $LANG + + +src/kernel/qpainter.cpp 2.35 warwick +5 -4 (1998/03/30) + + Fix TAB expansion in QPainter::drawText (and hence QMultiLineEdit). + + +src/widgets/qlined.cpp 2.68 agulbra +3 -3 + + didn't repaint cursor properly when moving the cursor leftwards + + +src/kernel/qfnt_x11.cpp 2.34 warwick +20 -13 (1998/03/31) + + Some fonts don't have per_char information. + + +src/kernel/qrgn_win.cpp 2.6 hanord +11 -9 (1998/04/01) + + Bug fixes for the new getRects and boundingRect functions + + +src/kernel/qregion.h 2.8 hanord +4 -1 +src/kernel/qrgn_win.cpp 2.5 hanord +42 -2 +src/kernel/qrgn_x11.cpp 2.5 hanord +50 -2 + + New QRegion functions: + boundingRect() returns the bounding rectangle of the region + getRects() returns an array of the rectangles that make up the region + + +src/widgets/qmainwindow.cpp 2.13 agulbra +46 -3 (1998/04/02) +src/widgets/qmainwindow.h 2.9 agulbra +9 -4 +src/widgets/qtoolbar.cpp 2.15 agulbra +20 -5 +src/widgets/qtoolbar.h 2.7 agulbra +5 -2 +src/widgets/qtoolbutton.cpp 2.20 agulbra +25 -17 + + button pixmap size change support + + +src/kernel/qiconset.cpp 2.5 agulbra +18 -4 +src/kernel/qiconset.h 2.3 agulbra +4 -3 +src/widgets/qpushbt.cpp 2.37 agulbra +62 -3 +src/widgets/qpushbt.h 2.7 agulbra +5 -1 +src/widgets/qtoolbutton.cpp 2.19 agulbra +31 -5 +src/widgets/qtoolbutton.h 2.4 agulbra +6 -2 + + new functionality, menu buttons + + +src/kernel/qgmanagr.cpp 2.30 paul +18 -2 +src/kernel/qgmanagr.h 2.11 paul +3 -2 +src/widgets/qhbox.cpp 1.9 paul +53 -2 +src/widgets/qhbox.h 1.6 paul +6 -1 + + pack() added, addStretch() now work + + +src/kernel/qpainter.cpp 2.37 warwick +36 -8 (1998/04/03) +src/kernel/qpainter.h 2.23 warwick +11 -1 + + Add more QPainter::drawImage calls (but still not implement QPrinter stuff) + + +src/widgets/qmainwindow.cpp 2.14 warwick +4 -4 +src/widgets/qmainwindow.h 2.10 warwick +2 -2 + + Allow WFlags to QMainWindow. + + +src/kernel/qregion.cpp 2.7 warwick +4 -2 +src/kernel/qrgn_x11.cpp 2.6 warwick +4 -3 + + Disable BOP + + +src/widgets/qscrollview.cpp 2.23 warwick +7 -5 +src/widgets/qscrollview.h 2.13 warwick +2 -2 + + Emit signal earlier. + + +src/widgets/qscrollview.cpp 2.22 warwick +34 -16 +src/widgets/qscrollview.h 2.12 warwick +3 -1 + + Low level hook for painting on existing painter. + Direct position set function. + + +src/kernel/qimage.cpp 2.80 warwick +64 -6 + + Optimize a very common case. + + +examples/showimg/showimg.cpp 2.21 warwick +67 -9 +examples/showimg/showimg.h 2.8 warwick +7 -0 + + Use new QImage bitBlt + + +src/dialogs/qprndlg.cpp 2.15 agulbra +35 -2 +src/dialogs/qprndlg.h 2.8 agulbra +2 -1 +src/kernel/qprinter.cpp 2.7 agulbra +53 -8 +src/kernel/qprinter.h 2.6 agulbra +6 -2 + + added QPrinter::ColorMode and corresponding stuff in the printer + dialog. + + +src/kernel/qimage.cpp 2.79 warwick +183 -3 +src/kernel/qimage.h 2.25 warwick +16 -1 +src/kernel/qpaintd.h 2.6 warwick +5 -1 +src/kernel/qpainter.cpp 2.36 warwick +12 -2 +src/kernel/qpixmap.h 2.19 warwick +3 -1 + + bitBlt for QImages + - copy image subarea to position in paintdevice or an image + + +src/kernel/qgmanagr.cpp 2.31 paul +89 -25 + + handle empty layouts in a slightly better way + + +src/dialogs/qprndlg.cpp 2.17 agulbra +14 -5 + + move focus intelligently when the users clicks 'print to file' or + 'print to printer' + + +src/dialogs/qfiledlg.cpp 2.51 agulbra +64 -4 +src/dialogs/qfiledlg.h 2.13 agulbra +5 -1 + + new function, addWidgets(). very limited extensibility, designed so + that it's easier to reimplement it as syntax sugar if/when we put in a + proper extension method. + + +src/dialogs/qprndlg.cpp 2.16 agulbra +7 -12 + + no A3 + + +src/dialogs/qfiledlg.cpp 2.52 agulbra +11 -7 + + save a little memory, be a little bug-free + + +src/widgets/qcombo.cpp 2.81 agulbra +24 -19 + + use 1-pixel frame around lineedit in motif style. + + +src/widgets/qmainwindow.cpp 2.15 agulbra +82 -14 +src/widgets/qmainwindow.h 2.11 agulbra +7 -4 +src/widgets/qtoolbar.cpp 2.16 agulbra +46 -11 +src/widgets/qtoolbar.h 2.8 agulbra +8 -2 +src/widgets/qtoolbutton.cpp 2.21 agulbra +4 -4 + + various improvements in look&feel, stretchable space, stretchable widgets + + +src/kernel/qpainter.cpp 2.38 hanord +72 -64 (1998/04/04) +src/kernel/qpainter.h 2.24 hanord +14 -4 +src/kernel/qptr_x11.cpp 2.43 hanord +115 -2 + + Added QPainter::drawTiledPixmap, not for Windows yet + + +src/kernel/qpainter.cpp 2.39 hanord +6 -2 +src/kernel/qpainter.h 2.25 hanord +8 -2 +src/kernel/qptr_x11.cpp 2.44 hanord +5 -6 + + Added overloaded drawTiledPixmap( const QRect &r, const QPixmap &pm ) + + +src/widgets/qlistview.cpp 2.87 warwick +5 -5 +src/widgets/qscrollview.cpp 2.25 warwick +266 -96 +src/widgets/qscrollview.h 2.15 warwick +19 -5 + + Allow arbitrary child objects positioned at int coords in QScrollView. + + +src/widgets/qlistview.cpp 2.86 warwick +5 -5 +src/widgets/qscrollview.cpp 2.24 warwick +35 -11 +src/widgets/qscrollview.h 2.14 warwick +3 -2 + + Fix refresh problen in QScrollView. + + +examples/widgets/widgets.cpp 2.39 warwick +4 -0 + + Show bug in recreate + + +examples/scrollview/scrollview.cpp 1.8 warwick +49 -5 + + Test new arbitrary-number-of-children code. + + +src/qt.pro 2.20 warwick +2 -0 + + fix dependencies + + +src/widgets/qstatusbar.cpp 2.4 agulbra +4 -2 + + less flicker + + +src/widgets/qmainwindow.cpp 2.16 agulbra +10 -18 +src/widgets/qtoolbar.cpp 2.17 agulbra +6 -5 + + move motif style away from what the OSF probably would have done, + closer towards what Netscape and Microsoft has done. + + +src/kernel/qptr_x11.cpp 2.45 hanord +8 -11 + + tilepixmap optimized for the common case (no mask) + +src/widgets/qmenudta.cpp 2.13 eiriken +101 -2 (1998/04/05) +src/widgets/qmenudta.h 2.10 eiriken +12 -1 + + Added new insertItem functions + + +src/widgets/qmlined.cpp 2.89 eiriken +14 -1 +src/widgets/qmlined.h 2.33 eiriken +3 -1 + + Added setFixedVisibleLines + + +src/widgets/qscrollview.cpp 2.29 warwick +10 -4 +src/widgets/qscrollview.h 2.17 warwick +2 -1 + + Fix child deletion. + + +src/widgets/qscrollview.cpp 2.32 warwick +2 -2 +src/widgets/qtoolbutton.cpp 2.22 warwick +12 -2 + + Focus indication in toolbutton. + + +src/kernel/qfocusdata.h 2.1 warwick initial checkin +src/kernel/qwidget.cpp 2.97 warwick +24 -15 +src/kernel/qwidget.h 2.47 warwick +4 -2 +src/widgets/qscrollview.cpp 2.31 warwick +59 -7 +src/widgets/qscrollview.h 2.18 warwick +3 -1 + + Focus traversal among QScrollView children. + + +examples/scrollview/scrollview.cpp 1.9 warwick +19 -20 +src/widgets/qlistview.cpp 2.88 warwick +18 -18 +src/widgets/qscrollview.cpp 2.27 warwick +38 -61 +src/widgets/qscrollview.h 2.16 warwick +2 -1 + + Negate position sense. + + +src/dialogs/qprndlg.cpp 2.18 hanord +4 -3 +src/kernel/qprn_x11.cpp 2.9 hanord +4 -4 + + QPrinter::setup() uses the QPrintDialog::getPrinterSetup() function + + +src/kernel/qptr_win.cpp 2.31 hanord +108 -2 + + Tiled pixmap implemented, but no optimization yet + +src/widgets/qlined.cpp 2.69 agulbra +21 -3 + + handle double-click correctly + handle c-k + +src/widgets/qlistview.cpp 2.90 eiriken +17 -2 (1998/04/06) +src/widgets/qlistview.h 2.42 eiriken +2 -1 +src/widgets/qstatusbar.cpp 2.5 eiriken +8 -7 + + Added rightButtonPressed signal and removed the resizer + diff --git a/dist/changes-1.39-19980414 b/dist/changes-1.39-19980414 new file mode 100644 index 0000000000..11e9b37d13 --- /dev/null +++ b/dist/changes-1.39-19980414 @@ -0,0 +1,173 @@ +examples/qdir/qdir.cpp 1.2 warwick +4 -3 (1998/04/06) + + better captions + + +src/widgets/qscrollview.cpp 2.34 warwick +11 -1 + + clean up in destructor code. + + +src/widgets/qlined.cpp 2.70 agulbra +6 -4 + + don't start drags just now + + +examples/scrollview/scrollview.cpp 1.10 warwick +2 -2 + + make it Big + + +src/kernel/qapp_x11.cpp 2.127 agulbra +37 -6 +src/kernel/qfont.h 2.9 agulbra +3 -2 + + sort of parse $LANG + + +examples/application/main.cpp 1.2 warwick +3 -2 + + use setMainWidget + + +extensions/opengl/src/qgl.pro 1.8 warwick +1 -1 (1998/04/08) + + Building libqgl doesn't need -lqgl + + +src/dialogs/qfiledlg.cpp 2.54 agulbra +74 -21 +src/dialogs/qfiledlg.h 2.14 agulbra +5 -3 + + allow setting of initial file name when using statics. + +src/dialogs/qfiledlg.cpp 2.55 agulbra +11 -11 + + allow setting thename of a nonexistent file as initial default in + getSaveFileName() + + +src/kernel/qpsprn.cpp 2.13 agulbra +4 -4 + + avoid at-least-a-warning-at-most-an-UMR. + + +src/moc/moc.pro 1.9 warwick +1 -1 + + include qt include + + +extensions/opengl/src/qgl.pro 1.9 warwick +1 -1 + + more -lqgl + + +src/tools/qglobal.h 2.48 agulbra +4 -1 + + openbsd + + +src/widgets/qsplitter.h 1.7 agulbra +3 -3 + + remove semicolon after Q_OBJECT + + +src/dialogs/qfiledlg.cpp 2.53 agulbra +15 -3 + + say "Readable, writable" and so on instead of ASHR (shades of MS-DOS) + + +src/widgets/qlcdnum.cpp 2.11 agulbra +17 -2 +src/widgets/qlcdnum.h 2.7 agulbra +3 -1 + + sizeHint(). decent minimum size using the golden mean. + + +src/moc/GNUmakefile 2.4 warwick +11 -3 +src/moc/moc.pro 1.8 warwick +1 -1 +src/moc/moc.t 1.11 warwick +1 -1 +src/moc/moc.t 1.10 warwick +1 -1 + + yacc flags + + +src/kernel/qpainter.cpp 2.40 warwick +4 -4 (1998/04/09) +src/widgets/qmlined.cpp 2.90 warwick +4 -2 +src/widgets/qscrollview.cpp 2.35 warwick +39 -33 + + Fixed cursor position in QMultiLineEdit. + Fixed focus navigation in QScrollView. + + +src/widgets/qscrollview.cpp 2.36 agulbra +8 -3 + + be a little more careful about event processing - removeChild() was + called from QScrollViewData destructor and didn't like that. + + +src/kernel/qprn_x11.cpp 2.10 agulbra +62 -77 +src/kernel/qpsprn.cpp 2.14 agulbra +1525 -157 +src/kernel/qpsprn.h 2.5 agulbra +17 -9 + + added support for character encodings other than iso 8859-1. the + header is computed dynamically; the fonts and encodings used on the + first few pages are put in the header, any other fonts and encodings + are added to the output stream as necessary. removed the need for a + temporary file. rewrote the font name cache so two QPSPrinter objects + printing at the same time won't conflict. put back in the header size + compression. + + +src/widgets/qcombo.cpp 2.82 warwick +3 -3 (1998/04/13) + + Correct sizeHint. + + +src/widgets/qscrollview.cpp 2.37 warwick +22 -18 +src/widgets/qscrollview.h 2.19 warwick +1 -2 + + Improve focus tabbing. + + +src/kernel/qwidget.cpp 2.98 warwick +60 -16 +src/kernel/qwidget.h 2.48 warwick +3 -1 + + Inherit *parents* palette, not application palette *** CHANGED BEHAVIOUR *** + Generalize isEnabledToTLW and isVisibleToTLW + + +src/widgets/qtablevw.cpp 2.44 warwick +8 -28 + + Propagate palette changes to scrollbars. + Combine common code. + + +src/widgets/qlistview.cpp 2.91 warwick +24 -6 +src/widgets/qlistview.h 2.43 warwick +5 -3 + + Provide parent() of list view item. + + +src/widgets/qlistbox.cpp 2.61 warwick +45 -3 +src/widgets/qlistbox.h 2.15 warwick +6 -2 + + Update maxItemWidth on font change. + Add sizeHint() + +src/kernel/qregion.cpp 2.8 hanord +84 -51 (1998/04/14) +src/kernel/qregion.h 2.9 hanord +12 -3 +src/kernel/qrgn_win.cpp 2.11 hanord +39 -25 +src/kernel/qrgn_x11.cpp 2.11 hanord +48 -29 + + Removed the internal (and slow) byte array. + Uses the region rectangles for saving complex regions. + + +src/widgets/qchkbox.cpp 2.20 warwick +5 -4 +src/widgets/qradiobt.cpp 2.25 warwick +9 -4 + + Small sizeHint when no text or pixmap. + + +src/kernel/qptr_win.cpp 2.32 agulbra +5 -2 +src/kernel/qptr_x11.cpp 2.46 agulbra +5 -2 + + clip properly in drawPixmap(). diff --git a/dist/changes-1.39-19980506 b/dist/changes-1.39-19980506 new file mode 100644 index 0000000000..35d9ed0072 --- /dev/null +++ b/dist/changes-1.39-19980506 @@ -0,0 +1,555 @@ +doc/classes.doc 1.5 warwick +3 -3 + + 4 columns, not 3. + + +doc/headers.doc 1.5 warwick +4 -2 + + Multicolumns. + + +doc/moc.doc 2.11 eiriken +11 -4 + + Corrected nested classes bug + + +examples/application/application.cpp 1.4 agulbra +2 -3 + + updated for new qtoolbar api + + +examples/scrollview/scrollview.cpp 1.11 warwick +25 -9 + + Use older style. + + +extensions/opengl/examples/sharedbox/GNUmakefile 1.1 hanord initial checkin +extensions/opengl/examples/sharedbox/Makefile 1.2 hanord +6 -90 + + new makefiles + + +extensions/opengl/examples/sharedbox/sharedbox.pro 1.2 hanord +1 -1 + + Added "opengl" to CONFIG + + +src/dialogs/qfiledlg.cpp 2.56 paul +3 -3 + + make it compile on windows + + +src/dialogs/qfiledlg.cpp 2.57 warwick +6 -5 + + Implement "initial selection" for Win-specific calls. + + +src/dialogs/qfiledlg.cpp 2.58 agulbra +21 -2 + + insert the root drives in the paths combo + + +src/dialogs/qfiledlg.cpp 2.59 agulbra +11 -11 + + alight size stuff correctly + list all drives under windows + + there's an aborted attempt at handling double-click in multi-column + view in there, too. I'll think about it and complete it asap. + + +src/dialogs/qfiledlg.cpp 2.60 agulbra +21 -8 + + draw the icons again. + + +src/dialogs/qfiledlg.cpp 2.61 agulbra +23 -6 + + output date and time in a better format. handle column width better. + + +src/dialogs/qfiledlg.cpp 2.62 agulbra +190 -23 +src/dialogs/qfiledlg.h 2.15 agulbra +20 -1 + + more polish. in this round: + - correct handling of double-click and arrow keys in the multi-column + list (partly done using an evil hack, see mouseDoubleClickEvent()) + - the ability to install file type icons (the default draws a + directory icon, nothing else) + - correct enter handling in the paths and types combo boxes + - correct tab order + + +src/dialogs/qfiledlg.cpp 2.63 agulbra +21 -26 + + setEnabled( cd up button ) + tweak accessibility texts + + +src/dialogs/qfiledlg.cpp 2.64 hanord +3 -3 + + Adds cast to avoid compiling problem for MSVC++ + + +src/dialogs/qfiledlg.cpp 2.65 agulbra +29 -7 + + experimental filename completion. hacky and a little buggy in certain + odd and harmless cases. + + +src/dialogs/qfiledlg.h 2.16 agulbra +4 -5 + + remove unnecessary friend declaration + + +src/dialogs/qprndlg.cpp 2.19 agulbra +3 -3 + + work around broken gcc warning + + +src/kernel/qapp_win.cpp 2.84 warwick +5 -2 + + Work-around focus problem with recreate. + + +src/kernel/qapp_win.cpp 2.85 warwick +5 -4 + + Robustness. + + +src/kernel/qapp_x11.cpp 2.128 warwick +9 -9 +src/kernel/qclb_x11.cpp 2.9 warwick +4 -4 +src/kernel/qcol_x11.cpp 2.26 warwick +13 -12 +src/kernel/qimage.cpp 2.83 warwick +11 -10 +src/kernel/qnpsupport.cpp 2.7 warwick +3 -3 +src/kernel/qpm_x11.cpp 2.33 warwick +12 -12 +src/kernel/qpsprn.cpp 2.16 warwick +3 -3 +src/kernel/qrgn_x11.cpp 2.12 warwick +3 -3 +src/kernel/qt_xdnd.cpp 2.7 warwick +5 -5 +src/kernel/qwid_x11.cpp 2.89 warwick +21 -19 +src/tools/qdatetm.cpp 2.12 warwick +4 -4 + + Avoid warnings. + + +src/kernel/qapp_x11.cpp 2.130 warwick +3 -3 + + strcasecmp -> qstricmp + + +src/kernel/qapp_x11.cpp 2.131 agulbra +14 -3 +src/kernel/qclipbrd.cpp 2.7 agulbra +2 -6 +src/kernel/qdnd_win.cpp 2.3 agulbra +23 -1 +src/kernel/qdnd_x11.cpp 2.3 agulbra +84 -8 +src/kernel/qdragobject.cpp 2.11 agulbra +24 -23 +src/kernel/qdragobject.h 2.7 agulbra +6 -3 + + some more stuff works + + +src/kernel/qapp_x11.cpp 2.132 eiriken +4 -3 +src/kernel/qcol_x11.cpp 2.27 eiriken +6 -4 +src/kernel/qimage.cpp 2.84 eiriken +11 -7 +src/kernel/qmetaobj.cpp 2.7 eiriken +6 -4 +src/kernel/qmovie.cpp 1.31 eiriken +8 -5 +src/kernel/qpm_x11.cpp 2.34 eiriken +6 -4 +src/kernel/qwid_win.cpp 2.52 eiriken +4 -4 +src/kernel/qwid_x11.cpp 2.91 eiriken +4 -4 +src/kernel/qwidget.cpp 2.101 eiriken +6 -4 + + Check for delete[] 0 to avoid purify warnings. + + +src/kernel/qclb_x11.cpp 2.8 hanord +5 -2 + + Debugging code commented out + + +src/kernel/qclipbrd.h 2.4 agulbra +2 -1 +src/kernel/qfocusdata.h 2.2 agulbra +2 -2 +src/widgets/qlistview.h 2.45 agulbra +3 -3 +src/widgets/qsplitter.h 1.8 agulbra +2 -2 + + "friend class", not "friend" + + +src/kernel/qdnd_win.cpp 2.2 agulbra +2 -2 +src/kernel/qdnd_x11.cpp 2.2 agulbra +3 -3 +src/kernel/qevent.h 2.13 agulbra +2 -2 + + return a proper object for the drag data, not a reference to a + probably-deleted object. + + +src/kernel/qdnd_x11.cpp 2.4 agulbra +24 -18 +src/kernel/qdragobject.h 2.8 agulbra +1 -2 + + another little bit. + + +src/kernel/qdnd_x11.cpp 2.5 agulbra +6 -24 + + drop some of the debugging messages + + +src/kernel/qevent.cpp 2.13 aavit +9 -6 + + Doc. + + +src/kernel/qfnt_win.cpp 2.26 warwick +4 -4 + + Typo. Will fix (unreported) strange problems with some fonts on Windows. + + +src/kernel/qgmanagr.cpp 2.32 warwick +26 -22 + + Flatten. + + +src/kernel/qimage.cpp 2.82 warwick +6 -3 +src/widgets/qlistbox.cpp 2.62 warwick +14 -2 +src/widgets/qlistview.cpp 2.98 warwick +4 -4 +src/widgets/qscrollview.cpp 2.41 warwick +5 -5 + + docs + + +src/kernel/qpaintdc.h 2.5 eiriken +4 -2 +src/kernel/qpainter.cpp 2.44 eiriken +38 -11 +src/kernel/qprn_win.cpp 2.8 eiriken +31 -13 +src/kernel/qpsprn.cpp 2.18 eiriken +46 -30 +src/kernel/qpsprn.h 2.6 eiriken +4 -1 +src/kernel/qptr_win.cpp 2.34 eiriken +4 -2 +src/kernel/qregion.h 2.10 eiriken +2 -1 + + drawImage support in QPrinter + + +src/kernel/qpainter.cpp 2.41 warwick +17 -2 + + Fix OpaqueMode in drawText(...QRect...). + + +src/kernel/qpainter.cpp 2.42 warwick +5 -9 + + fix. + + +src/kernel/qpainter.cpp 2.43 warwick +2 -12 + + Revert drawText semantics changed. + + +src/kernel/qpainter.cpp 2.45 hanord +6 -2 +src/kernel/qprn_win.cpp 2.9 hanord +5 -4 + + Fixed Windows-specific typos, now compiles + + +src/kernel/qprn_x11.cpp 2.11 agulbra +14 -6 + + avoid getdtablesize(), and set FD_CLOEXEC on just the X connection + instead of on all open files. + + +src/kernel/qpsprn.cpp 2.15 agulbra +6 -6 + + mention the defining rfc for koi8-r + + +src/kernel/qpsprn.cpp 2.17 warwick +438 -428 + + Avoid a HUGE C string, save some memory. + + +src/kernel/qptd_x11.cpp 2.12 warwick +4 -4 + + Restore speed of normal-optimized pixmaps to Qt 1.3x height. + + +src/kernel/qptd_x11.cpp 2.13 hanord +7 -9 + + Warwick's change ACK'd + + +src/kernel/qptr_win.cpp 2.32 agulbra +5 -2 +src/kernel/qptr_x11.cpp 2.46 agulbra +5 -2 + + clip properly in drawPixmap(). + + +src/kernel/qptr_x11.cpp 2.47 eiriken +21 -17 + + Fixed infinite loop bug in internal function drawTile and + renamed variables to make the code readable. + + +src/kernel/qregion.cpp 2.8 hanord +84 -51 +src/kernel/qregion.h 2.9 hanord +12 -3 +src/kernel/qrgn_win.cpp 2.11 hanord +39 -25 +src/kernel/qrgn_x11.cpp 2.11 hanord +48 -29 + + Removed the internal (and slow) byte array. + Uses the region rectangles for saving complex regions. + + +src/kernel/qregion.cpp 2.9 warwick +14 -2 + + Implement missing function. + + +src/kernel/qsignalmapper.cpp 1.2 warwick +2 -2 +src/kernel/qsignalmapper.h 1.2 warwick +2 -2 + + fix function name + + +src/kernel/qsignalmapper.cpp 1.3 warwick +2 -2 +src/widgets/qtablevw.cpp 2.45 warwick +3 -3 + + oops + + +src/kernel/qwid_win.cpp 2.51 agulbra +7 -2 + + if recreating a widget with no children that accept focus, and which + does not accept focus itself, to be a top-level widget, set up a focus + chain. hopefully this will fix a focus bug on windows. + + +src/kernel/qwidget.cpp 2.100 agulbra +4 -4 +src/kernel/qwidget.cpp 2.99 agulbra +9 -7 + + try a little harder to make QWidget::focusWidget() return something. + this should make focus in top-level widgets created by recreate() + behave like in top-level widgets created by new. + + +src/moc/moc.1 2.6 eiriken +20 -5 + + Corrected nested classes bug. + + +src/moc/moc.y 2.21 eiriken +3 -5 + + Removed warning "unexpected ':'" in nested classes. + + +src/qt.pro 2.21 warwick +2 -1 + + Dependencies under Windows. + + +src/qt.pro 2.23 warwick +2 -0 +src/kernel/qsignalmapper.cpp 1.1 warwick initial checkin +src/kernel/qsignalmapper.h 1.1 warwick initial checkin + + QSignalMapper - like a button group superclass. + + +src/tools/qdir.cpp 2.19 agulbra +36 -4 +src/tools/qdir.h 2.7 agulbra +3 -1 + + added new QDir::drives() + + this breaks windows horribly, because I simply couldn't remember the + function call to use there. haavard, add a few lines of code in the + morning, will you? + + +src/tools/qdir.cpp 2.20 agulbra +18 -10 + + implement drives() for windows. now to test. + + +src/tools/qfile.cpp 2.20 warwick +10 -10 + + Casts from off_t to int. + + +src/tools/qglobal.h 2.49 warwick +4 -1 + + GNU Hurd + + +src/tools/qglobal.h 2.50 warwick +4 -1 + + DG Unix + + +src/tools/qtstream.cpp 2.12 warwick +14 -4 +src/widgets/qscrollview.cpp 2.42 warwick +7 -1 + + doc + + +src/widgets/qchkbox.cpp 2.20 warwick +5 -4 +src/widgets/qradiobt.cpp 2.25 warwick +9 -4 + + Small sizeHint when no text or pixmap. + + +src/widgets/qcombo.cpp 2.83 agulbra +10 -2 + + make sure highlighted() is emitted whenever current changes, as per + val gough's bug report. + + +src/widgets/qframe.cpp 2.17 agulbra +13 -2 + + added a hack to make kscd binaries keep working. put in a nice + #if QT_VERSION >= 200 so the hack won't stay too long. + + +src/widgets/qlabel.cpp 2.28 warwick +6 -3 + + Flicker-free when no background. + + +src/widgets/qlined.cpp 2.71 warwick +3 -3 + + Efficiency. + + +src/widgets/qlined.cpp 2.73 agulbra +2 -10 + + disable some buggy code + + +src/widgets/qlined.h 2.26 agulbra +5 -4 + + make validateAndSet() public. It's not a trvial function, but it + appears that event filters can reasonably want to use it. + + +src/widgets/qlistview.cpp 2.100 agulbra +30 -28 + + slightly better pixmap support + + +src/widgets/qlistview.cpp 2.101 agulbra +27 -9 + + added an evil hack to make sizeHint() return more realistic values + before the automagic column resizing magic has done its job. + + +src/widgets/qlistview.cpp 2.102 agulbra +3 -3 + + the list view is now the viewport's focus proxy, rather than the other + way around. + + +src/widgets/qlistview.cpp 2.103 agulbra +6 -7 + + fixed some logical/actual confusion. + + +src/widgets/qlistview.cpp 2.92 agulbra +22 -13 + + hamdle quick drags correctly, as per dimitri van heesch's bug report. + + +src/widgets/qlistview.cpp 2.93 warwick +3 -3 +src/widgets/qlistview.h 2.46 warwick +2 -2 + + paintBranches is non-const + + +src/widgets/qlistview.cpp 2.94 warwick +6 -7 + + Remove unnecessary initial repaints. + + +src/widgets/qlistview.cpp 2.95 agulbra +16 -12 + + try to draw a little more efficiently by using OpaqueMode, and by + never inserting list view items into the repaint dict twice. exposes + a QPainter::drawText() bug. + + +src/widgets/qlistview.cpp 2.96 agulbra +178 -53 +src/widgets/qlistview.h 2.47 agulbra +13 -5 + + added column alignment (worked first try) and real pixmap support + (untested - I try not to push my luck) + + +src/widgets/qlistview.cpp 2.97 agulbra +13 -11 + + draw focus rectangle in the correct place + + +src/widgets/qlistview.cpp 2.99 warwick +9 -12 + + Revert change that required drawText semantics changed. + + +src/widgets/qlistview.h 2.44 agulbra +2 -1 + + avoid hiding text(int) with text() in qchecklistitem + + +src/widgets/qmainwindow.cpp 2.17 agulbra +35 -34 +src/widgets/qmainwindow.h 2.12 agulbra +4 -3 + + handle children being deleted + + +src/widgets/qmenubar.cpp 2.48 warwick +9 -3 +src/widgets/qpopmenu.cpp 2.67 warwick +4 -2 + + Accept keys so they don't propagate. + + +src/widgets/qmenubar.cpp 2.49 warwick +2 -5 +src/widgets/qpopmenu.cpp 2.68 warwick +2 -4 + + undo accept() + + +src/widgets/qmenubar.cpp 2.50 agulbra +3 -4 + + remove unused variable + + +src/widgets/qpopmenu.cpp 2.70 agulbra +13 -16 +src/widgets/qpopmenu.cpp 2.69 agulbra +10 -3 + + minor tweak of right/left submenu position algorithm + + +src/widgets/qpopmenu.cpp 2.71 warwick +5 -2 + + Add a reminder. + + +src/widgets/qscrollview.cpp 2.39 warwick +86 -67 + + Docs. + Remove over-optimization. + + +src/widgets/qscrollview.cpp 2.40 warwick +3 -3 + + Simplify. + + +src/widgets/qscrollview.cpp 2.43 warwick +45 -12 + + Propagate mouse events. + + +src/widgets/qscrollview.h 2.20 warwick +6 -1 + + Propagate mouse evetns. + + +src/widgets/qtoolbutton.cpp 2.23 warwick +4 -3 + + Make receiver/slot optional. + + +src/widgets/qvalidator.cpp 2.18 agulbra +19 -6 + + validate number of decimals. amy watson. diff --git a/dist/changes-1.39-19980529 b/dist/changes-1.39-19980529 new file mode 100644 index 0000000000..6c40f61a35 --- /dev/null +++ b/dist/changes-1.39-19980529 @@ -0,0 +1,232 @@ + +src/dialogs/qfiledlg.cpp 2.67 aavit +24 -1 + + Fixed non-modality bug in GetOpen/SaveFileName on Windows. + + +src/dialogs/qprndlg.cpp 2.21 agulbra +14 -11 + + avoid double-delete of invisible QButtonGroup objects + + +src/dialogs/qprndlg.cpp 2.22 eiriken +4 -3 +src/tools/qregexp.cpp 2.9 eiriken +4 -3 +src/widgets/qheader.cpp 2.36 eiriken +5 -3 +src/widgets/qmenubar.cpp 2.51 eiriken +6 -4 +src/widgets/qwhatsthis.cpp 2.12 eiriken +3 -3 + + More tests before delete [] to avoid purify warnings. + + +src/kernel/qapp_win.cpp 2.86 agulbra +10 -19 +src/kernel/qapp_x11.cpp 2.134 agulbra +35 -44 + + move the pending-events iterator to the next event before dispatching + the current one. prevents recursion if enter_loop() is called within + the event handler. + + +src/kernel/qapp_x11.cpp 2.133 warwick +12 -4 +src/kernel/qevent.h 2.16 warwick +27 -1 +src/kernel/qwidget.cpp 2.103 warwick +9 -2 + + Provide Event_Hide and Event_Show. + + +src/kernel/qasyncimageio.cpp 1.31 warwick +32 -16 +src/kernel/qasyncimageio.h 1.16 warwick +7 -1 +src/kernel/qasyncio.cpp 1.8 warwick +3 -2 +src/kernel/qimage.cpp 2.88 warwick +11 -2 +src/kernel/qpainter.cpp 2.47 warwick +10 -4 + + QAsyncImageIO classes are now public. + + +src/kernel/qdragobject.cpp 2.12 agulbra +10 -4 + + stop the drag when appropriate + + +src/kernel/qevent.cpp 2.14 agulbra +24 -2 +src/kernel/qevent.h 2.15 agulbra +2 -1 + + added new convenience function provides( const char * mimeType ) + + +src/kernel/qevent.h 2.14 agulbra +2 -2 + + return a real QByteArray + + +src/kernel/qpainter.cpp 2.48 warwick +4 -4 + + Fix bitBlt with negative width/height. + + +src/kernel/qpicture.cpp 2.4 eiriken +13 -2 + + Added support for drawImage() + + +src/kernel/qprn_x11.cpp 2.12 agulbra +18 -10 + + close open files before exec'ing lpr. + + +src/kernel/qpsprn.cpp 2.20 eiriken +100 -24 +src/kernel/qpsprn.h 2.7 eiriken +3 -2 +src/kernel/qptr_x11.cpp 2.48 eiriken +4 -3 +src/kernel/qrgn_x11.cpp 2.13 eiriken +3 -3 + + QPrinter now supports clipping of any arbitrary region. + The catch is that resolution is 72 dpi. + + Fixed bug in save()/restore() over page boundaries + + +src/kernel/qpsprn.cpp 2.23 agulbra +6 -3 + + setPen() immediately before drawPoly(most things) did not work. now + it does. + + +src/kernel/qptr_x11.cpp 2.49 warwick +13 -2 + + Probably fix aix-g++ internal compiler error. + + +src/kernel/qregion.cpp 2.10 eiriken +7 -5 +src/kernel/qregion.h 2.11 eiriken +2 -3 + + Rename getRects() to rects() + + +src/kernel/qregion.cpp 2.12 hanord +18 -56 + + New region serializing code, writes only raw rectangles. + In Qt pre 2.0, we write a sort of recursive structure for backward + compatibility. It's large and inefficient. In Qt 2.0, we start using + a much slimmer structure and the reading code for this has already + been added for Qt 1.40. I.e. Qt 1.3x programs won't be able to read + regions serialized with Qt 2.x. + + +src/kernel/qregion.h 2.12 hanord +2 -7 +src/kernel/qrgn_win.cpp 2.13 hanord +12 -44 +src/kernel/qrgn_x11.cpp 2.15 hanord +15 -50 + + Simplified the implementation, now it works with rects only, + + +src/kernel/qwid_win.cpp 2.53 agulbra +4 -3 +src/kernel/qwid_x11.cpp 2.92 agulbra +4 -3 + + update() with w == 0 || h == 0 is a no-op, so exit quickly + + +src/kernel/qwid_win.cpp 2.54 agulbra +6 -2 +src/kernel/qwid_x11.cpp 2.93 agulbra +8 -2 +src/kernel/qwidget.cpp 2.104 agulbra +3 -10 +src/widgets/qmainwindow.cpp 2.20 agulbra +16 -6 + + make isVisible() return TRUE during showEvent(), to match + e.g. resizeEvent(). make QMainWindow fix its geometry when toolbars + are hidden and shown. + + +src/kernel/qwidget.h 2.49 agulbra +2 -6 + + removed autoMinimumSize + + +src/widgets/qbttngrp.cpp 2.10 agulbra +3 -3 + + don't delete buttons in the list + + +src/widgets/qbuttonrow.cpp 1.6 paul +1 -1 +src/widgets/qbuttonrow.h 1.4 paul +1 -1 +src/widgets/qgrid.cpp 1.9 paul +1 -1 +src/widgets/qgrid.h 1.7 paul +1 -1 +src/widgets/qhbox.cpp 1.10 paul +1 -1 +src/widgets/qhbox.h 1.7 paul +1 -1 +src/widgets/qlabelled.cpp 1.5 paul +1 -1 +src/widgets/qlabelled.h 1.4 paul +1 -1 +src/widgets/qvbox.cpp 1.5 paul +1 -1 +src/widgets/qvbox.h 1.5 paul +1 -1 + + removing the layout widgets from the library, moved to examples/layouts + + +src/widgets/qheader.cpp 2.38 paul +121 -62 +src/widgets/qheader.h 2.18 paul +6 -11 + + Implemented setClickEnabled, setResizeEnabled and setMovingEnabled + + +src/widgets/qlined.cpp 2.74 aavit +8 -5 +src/widgets/qspinbox.cpp 2.30 aavit +52 -19 +src/widgets/qspinbox.h 2.17 aavit +3 -1 + + lineedit: better sizehint() + spinbox: added valuechanged( const char* ) signal + + +src/widgets/qlined.cpp 2.75 agulbra +11 -6 + + start drags when appropriate + fold multi-line paste to one line instead of truncating to the \n + + +src/widgets/qlistview.cpp 2.109 agulbra +17 -12 +src/widgets/qlistview.h 2.48 agulbra +4 -4 + + addColumn() return the column number + + +src/widgets/qmainwindow.cpp 2.18 warwick +18 -2 +src/widgets/qmainwindow.h 2.13 warwick +2 -1 + + Show/Hide event filters + + +src/widgets/qmainwindow.cpp 2.19 agulbra +19 -17 +src/widgets/qmainwindow.h 2.14 agulbra +11 -11 + + make set* private as they're not really meaningful any more. + +src/widgets/qmainwindow.cpp 2.22 agulbra +17 -1 + + be slightly more clever about autodetecting menu and status bar. + + +src/widgets/qscrollview.cpp 2.45 warwick +8 -4 + + Only enable WPaintClever in viewport if specifically requested. + + +src/widgets/qstatusbar.cpp 2.8 agulbra +9 -4 + + make sure the status bar is tall enough for text, even when there's + nothing in it. + + +src/widgets/qtablevw.cpp 2.46 agulbra +4 -4 + + last{Row,Col}Visible() could return >= num{Row,Col}s. no more. + + +src/kernel/qapp_x11.cpp 2.137 eiriken +5 -2 + + Fixed bug when there are no events in the X queue and there are posted + events. The posted events will now be handled. + + +src/kernel/qwidget.cpp 2.106 eiriken +5 -2 + + Fixed bug in destruction of main widget. The application now + actually quits. + +src/kernel/qapp.cpp 2.55 hanord +8 -4 + + The QApplication contructor now accepts argc=0 and argv=0. diff --git a/dist/changes-1.39-19980611 b/dist/changes-1.39-19980611 new file mode 100644 index 0000000000..d99b6363cd --- /dev/null +++ b/dist/changes-1.39-19980611 @@ -0,0 +1,194 @@ +doc/binary.doc 1.2 warwick +23 -26 + + Include margins into header graphic + + +doc/examples.doc 2.15 agulbra +19 -2 +examples/dirview/dirview.cpp 1.8 agulbra +2 -2 +src/widgets/qlistview.cpp 2.112 agulbra +163 -28 +src/widgets/qlistview.h 2.49 agulbra +4 -4 + + rename children() to childCount() + add two images to the docs + update dirview and add it to the docs + + +src/dialogs/qfiledlg.cpp 2.68 hanord +8 -12 + + Rewrote setFilter to use QString and mid() - simpler code. + Borland C++ complained about modifying const char *. + + +src/dialogs/qfiledlg.cpp 2.69 agulbra +9 -7 +src/dialogs/qmsgbox.cpp 2.48 agulbra +3 -1 +src/dialogs/qprndlg.cpp 2.26 agulbra +213 -2 +src/widgets/qwidgetstack.cpp 2.6 agulbra +8 -3 + + Call setPalettePropagation() and setFontPropagation() in the + initialization. Note that QWidgetStack now defaults to use + AllChildren. + + +src/dialogs/qmsgbox.cpp 2.47 hanord +3 -3 + + icon widget gets widget name "icon" (previously none) + buttons get widget names button1, button2 (previously space before number) + + +src/dialogs/qprndlg.cpp 2.24 agulbra +163 -7 + + parse /etc/lp/member and /etc/printers.conf. we still probably don't + detect the printers on irix and digital unix (except through sheer + good luck - I suppose there is a chance that digital or sgi might + choose to be compatible with something). + + +src/dialogs/qprndlg.cpp 2.25 agulbra +10 -10 + + one more minor cleanup. + + looks like the code we have works on both irix and digital unix. + + +src/kernel/qapp_win.cpp 2.88 hanord +2 -3 + + Posted event fix + + +src/kernel/qapp_win.cpp 2.89 agulbra +2 -2 +src/kernel/qapp_x11.cpp 2.138 agulbra +3 -3 + + don't delete events destined for other objects in target-specific + sendPostedEvents() + + +src/kernel/qasyncimageio.cpp 1.33 warwick +42 -42 +src/kernel/qasyncimageio.h 1.17 warwick +15 -15 + + New names. + + +src/kernel/qdnd_x11.cpp 2.14 agulbra +8 -5 +src/kernel/qdragobject.cpp 2.14 agulbra +21 -9 + + right cursor + + +src/kernel/qdnd_x11.cpp 2.15 agulbra +6 -9 + + comment out old debug messages; delete some + + +src/kernel/qdragobject.cpp 2.15 agulbra +4 -6 + + ignore totally unexpected events + + +src/kernel/qfnt_win.cpp 2.28 agulbra +4 -4 +src/kernel/qfont.cpp 2.34 agulbra +2 -4 + + be slightly more robust about setting the character encoding to the + defFont's. + + +src/kernel/qfont.cpp 2.31 agulbra +115 -63 + + overhauled class documentation; man function descriptions probably + also need an overhaul. + + +src/kernel/qfont.cpp 2.32 agulbra +56 -65 + + fixed some typos; removed some misleading text from the function + descriptions. + + +src/kernel/qgmanagr.cpp 2.34 paul +22 -66 + + Rolled back "empty layout" change, since it broke existing code. + + +src/kernel/qiconset.cpp 2.9 paul +16 -8 + + Handle mask better when generating disabled pixmaps + + +src/kernel/qprn_x11.cpp 2.14 agulbra +12 -1 + + if the application hasn't specified a non-default print program, try + HARD to find a decent lpr or lp. + + +src/kernel/qpsprn.cpp 2.25 agulbra +12 -7 + + discussed the "sometimes cannot print to /usr/bin/lpr even though + every other program works perfectly" bug with the code. + + also shrunk the output by a few bytes by removing extraneous newlines + and one comment. + + +src/tools/qdatetm.cpp 2.14 agulbra +19 -5 + + QDateTime::addSecs() used to not work across midnight or backwards. + + +src/tools/qglobal.h 2.51 agulbra +4 -2 + + detect unixware 7; detect bool on more irix stuff + + +src/widgets/qbttngrp.cpp 2.12 agulbra +5 -1 + + mention the existence of set*Propagation() + + +src/widgets/qbutton.cpp 2.60 agulbra +16 -17 +src/widgets/qbutton.h 2.16 agulbra +3 -2 + + make setDown() public; this breaks binary compatibility on MSVC++ + + The way to start a context menu on press used to be to make a + synthetic QMouseEvent indicating a release, and sendEvent() that. + not terribly nice. + + +src/widgets/qheader.cpp 2.41 paul +6 -1 + + Fix "Index out of range" bug. + + +src/widgets/qlined.cpp 2.78 agulbra +3 -6 + + when pasting multi-line stuff, fold to one line. + + +src/widgets/qlined.cpp 2.79 paul +2 -2 + + Fix "index out of range" bug when typing past maxLength. + + +src/widgets/qpopmenu.cpp 2.75 aavit +2 -2 + + minimal improvement of checkmark look in windows style. + + +src/widgets/qsplitter.cpp 1.13 agulbra +12 -12 + + more doc; mention setFixed() + + +src/widgets/qtoolbar.cpp 2.21 agulbra +46 -12 + + paint a tool bar handle in motif style too + + +src/widgets/qtoolbar.cpp 2.22 paul +3 -2 + + Don't override max/min sizes for children + + +src/widgets/qtoolbutton.cpp 2.27 agulbra +24 -22 + + handle text label correctly; check for null pointer; minor doc + improvements diff --git a/dist/changes-1.39-19980616 b/dist/changes-1.39-19980616 new file mode 100644 index 0000000000..831dd876f7 --- /dev/null +++ b/dist/changes-1.39-19980616 @@ -0,0 +1,810 @@ +doc/metaobjects.doc 2.9 warwick +3 -3 +doc/tutorial.doc 2.13 warwick +4 -4 +examples/aclock/aclock.h 2.3 warwick +2 -2 +examples/aclock/main.cpp 2.3 warwick +2 -2 +examples/application/application.cpp 1.12 warwick +8 -8 +examples/application/main.cpp 1.6 warwick +2 -2 +examples/biff/biff.cpp 2.3 warwick +2 -2 +examples/biff/biff.h 2.3 warwick +2 -2 +examples/biff/main.cpp 2.3 warwick +2 -2 +examples/connect/connect.cpp 2.5 warwick +2 -2 +examples/cursor/cursor.cpp 2.3 warwick +2 -2 +examples/dclock/dclock.cpp 2.4 warwick +2 -2 +examples/dclock/dclock.h 2.3 warwick +2 -2 +examples/dclock/main.cpp 2.3 warwick +2 -2 +examples/desktop/desktop.cpp 2.4 warwick +2 -2 +examples/dirview/dirview.cpp 1.9 warwick +2 -2 +examples/dirview/main.cpp 1.7 warwick +2 -2 +examples/drawdemo/drawdemo.cpp 2.7 warwick +5 -5 +examples/forever/forever.cpp 2.4 warwick +2 -2 +examples/hello/hello.cpp 2.5 warwick +2 -2 +examples/hello/main.cpp 2.6 warwick +2 -2 +examples/layout/layout.cpp 1.6 warwick +6 -6 +examples/layouts/layouts.cpp 1.5 warwick +6 -6 +examples/layouts/qtbuttonrow.cpp 1.4 warwick +4 -3 +examples/layouts/qthbox.cpp 1.4 warwick +2 -2 +examples/life/life.cpp 2.5 warwick +4 -4 +examples/life/lifedlg.cpp 2.8 warwick +5 -5 +examples/life/main.cpp 2.3 warwick +2 -2 +examples/menu/menu.cpp 2.15 warwick +4 -4 +examples/movies/main.cpp 1.11 warwick +4 -4 +examples/network/connection.cpp 1.7 warwick +2 -2 +examples/network/finger.cpp 1.7 warwick +6 -6 +examples/network/prime.cpp 1.6 warwick +5 -5 +examples/network/primed.cpp 1.8 warwick +4 -4 +examples/network/primespeed.cpp 1.5 warwick +5 -5 +examples/network/server.cpp 1.8 warwick +2 -2 +examples/network/share.cpp 1.6 warwick +4 -4 +examples/picture/picture.cpp 1.6 warwick +3 -3 +examples/pref/main.cpp 1.7 warwick +2 -2 +examples/pref/pref.cpp 1.20 warwick +5 -5 +examples/progress/progress.cpp 1.13 warwick +4 -4 +examples/qdir/qdir.cpp 1.6 warwick +3 -3 +examples/qmag/qmag.cpp 2.16 warwick +5 -5 +examples/qwerty/main.cpp 1.6 warwick +2 -2 +examples/qwerty/qwerty.cpp 1.11 warwick +7 -7 +examples/qwerty/qwerty.h 1.8 warwick +2 -2 +examples/scrollview/scrollview.cpp 1.15 warwick +6 -6 +examples/sheet/main.cpp 2.5 warwick +2 -2 +examples/sheet/sheet.cpp 2.5 warwick +2 -2 +examples/sheet/sheetdlg.cpp 2.5 warwick +2 -2 +examples/sheet/sheetdlg.h 2.3 warwick +2 -2 +examples/sheet/table.cpp 2.4 warwick +2 -2 +examples/sheet/table.h 2.4 warwick +3 -3 +examples/showimg/main.cpp 2.18 warwick +2 -2 +examples/showimg/showimg.cpp 2.24 warwick +5 -5 +examples/table/main.cpp 1.4 warwick +3 -3 +examples/table/table.h 1.5 warwick +2 -2 +examples/tetrix/qdragapp.cpp 2.3 warwick +5 -4 +examples/tetrix/qdragapp.h 2.3 warwick +2 -2 +examples/tetrix/qtetrix.cpp 2.7 warwick +3 -3 +examples/tetrix/qtetrix.h 2.4 warwick +3 -3 +examples/tictac/main.cpp 2.3 warwick +2 -2 +examples/tictac/tictac.cpp 2.8 warwick +6 -6 +examples/tictac/tictac.h 2.3 warwick +2 -2 +examples/timestmp/timestmp.cpp 2.4 warwick +3 -3 +examples/tooltip/main.cpp 1.5 warwick +2 -2 +examples/tooltip/tooltip.cpp 1.6 warwick +2 -2 +examples/validator/main.cpp 1.5 warwick +2 -2 +examples/validator/motor.cpp 1.9 warwick +3 -3 +examples/validator/vw.cpp 1.8 warwick +4 -4 +examples/widgets/widgets.cpp 2.43 warwick +13 -13 +examples/xform/xform.cpp 2.9 warwick +8 -8 +extensions/imageio/src/qjpegio.cpp 1.5 warwick +2 -2 +extensions/imageio/src/qpngio.cpp 1.7 warwick +2 -2 +extensions/nsplugin/examples/grapher/grapher.cpp 1.10 warwick +3 -3 +extensions/nsplugin/examples/qtimage/qtimage.cpp 1.6 warwick +2 -2 +extensions/nsplugin/examples/trivial/trivial.cpp 1.7 warwick +1 -1 +extensions/nsplugin/src/qnp.cpp 1.19 warwick +9 -9 +extensions/opengl/examples/box/globjwin.cpp 1.4 warwick +4 -4 +extensions/opengl/examples/box/main.cpp 1.4 warwick +1 -1 +extensions/opengl/examples/gear/gear.cpp 1.6 warwick +1 -1 +extensions/opengl/examples/sharedbox/globjwin.cpp 1.2 warwick +4 -4 +extensions/opengl/examples/sharedbox/main.cpp 1.2 warwick +1 -1 +extensions/xt/examples/mainlyMotif/editor.cpp 1.3 warwick +2 -2 +extensions/xt/examples/mainlyQt/editor.cpp 1.2 warwick +2 -2 +extensions/xt/examples/mainlyXt/editor.cpp 1.2 warwick +2 -2 +extensions/xt/src/qxt.cpp 1.3 warwick +6 -6 +extensions/xt/src/qxt.h 1.2 warwick +2 -2 +src/qt.pro 2.26 warwick +110 -110 +src/qtinternal.pro 2.7 warwick +5 -5 +src/dialogs/qfiledialog.cpp 2.71 warwick +12 -12 +src/dialogs/qfiledialog.h 2.18 warwick +4 -4 +src/dialogs/qfiledlg.cpp 2.71 warwick +1 -1 +src/dialogs/qfiledlg.h 2.18 warwick +2 -146 +src/dialogs/qfontdialog.cpp 2.13 warwick +7 -7 +src/dialogs/qmessagebox.cpp 2.49 warwick +5 -5 +src/dialogs/qmessagebox.h 2.26 warwick +4 -4 +src/dialogs/qmsgbox.cpp 2.49 warwick +1 -1 +src/dialogs/qmsgbox.h 2.26 warwick +1 -132 +src/dialogs/qprintdialog.cpp 2.28 warwick +10 -10 +src/dialogs/qprintdialog.h 2.9 warwick +4 -4 +src/dialogs/qprndlg.cpp 2.28 warwick +1 -1 +src/dialogs/qprndlg.h 2.9 warwick +2 -63 +src/dialogs/qprogdlg.cpp 2.27 warwick +1 -1 +src/dialogs/qprogdlg.h 2.14 warwick +2 -75 +src/dialogs/qprogressdialog.cpp 2.27 warwick +6 -6 +src/dialogs/qprogressdialog.h 2.14 warwick +6 -6 +src/dialogs/qtabdialog.cpp 2.41 warwick +7 -6 +src/dialogs/qtabdialog.h 2.19 warwick +4 -4 +src/dialogs/qtabdlg.cpp 2.41 warwick +1 -1 +src/dialogs/qtabdlg.h 2.19 warwick +1 -84 +src/kernel/qaccel.cpp 2.13 warwick +2 -2 +src/kernel/qapp.cpp 2.57 warwick +1 -1 +src/kernel/qapp.h 2.27 warwick +1 -205 +src/kernel/qapp_os2.cpp 2.5 warwick +4 -3 +src/kernel/qapp_win.cpp 2.90 warwick +1 -1 +src/kernel/qapp_x11.cpp 2.141 warwick +1 -1 +src/kernel/qapplication.cpp 2.57 warwick +13 -11 +src/kernel/qapplication.h 2.27 warwick +5 -5 +src/kernel/qapplication_win.cpp 2.90 warwick +9 -7 +src/kernel/qapplication_x11.cpp 2.141 warwick +13 -11 +src/kernel/qasyncio.cpp 1.9 warwick +2 -2 +src/kernel/qclb_win.cpp 2.7 warwick +1 -1 +src/kernel/qclb_x11.cpp 2.13 warwick +1 -1 +src/kernel/qclipboard.cpp 2.9 warwick +4 -4 +src/kernel/qclipboard.h 2.5 warwick +4 -4 +src/kernel/qclipboard_win.cpp 2.7 warwick +4 -4 +src/kernel/qclipboard_x11.cpp 2.13 warwick +5 -5 +src/kernel/qclipbrd.cpp 2.9 warwick +1 -1 +src/kernel/qclipbrd.h 2.5 warwick +2 -55 +src/kernel/qcol_win.cpp 2.18 warwick +1 -1 +src/kernel/qcol_x11.cpp 2.31 warwick +1 -1 +src/kernel/qcolor.cpp 2.15 warwick +2 -2 +src/kernel/qcolor.h 2.10 warwick +2 -2 +src/kernel/qcolor_win.cpp 2.18 warwick +2 -2 +src/kernel/qcolor_x11.cpp 2.31 warwick +4 -4 +src/kernel/qconnect.cpp 2.5 warwick +1 -1 +src/kernel/qconnect.h 2.5 warwick +2 -46 +src/kernel/qconnection.cpp 2.5 warwick +3 -3 +src/kernel/qconnection.h 2.5 warwick +4 -4 +src/kernel/qcur_os2.cpp 2.3 warwick +2 -2 +src/kernel/qcur_win.cpp 2.7 warwick +1 -1 +src/kernel/qcur_x11.cpp 2.11 warwick +1 -1 +src/kernel/qcursor.cpp 2.8 warwick +2 -2 +src/kernel/qcursor_win.cpp 2.7 warwick +3 -3 +src/kernel/qcursor_x11.cpp 2.11 warwick +3 -3 +src/kernel/qdialog.cpp 2.19 warwick +5 -4 +src/kernel/qdnd_win.cpp 2.6 warwick +2 -2 +src/kernel/qdnd_x11.cpp 2.18 warwick +8 -7 +src/kernel/qdragobject.cpp 2.17 warwick +4 -3 +src/kernel/qdrawutil.cpp 2.18 warwick +3 -3 +src/kernel/qdrawutil.h 2.7 warwick +4 -4 +src/kernel/qdrawutl.cpp 2.18 warwick +1 -1 +src/kernel/qdrawutl.h 2.7 warwick +2 -91 +src/kernel/qevent.h 2.17 warwick +2 -2 +src/kernel/qfnt_win.cpp 2.30 warwick +1 -1 +src/kernel/qfnt_x11.cpp 2.39 warwick +1 -1 +src/kernel/qfont.cpp 2.35 warwick +11 -11 +src/kernel/qfont.h 2.10 warwick +2 -2 +src/kernel/qfont_win.cpp 2.30 warwick +5 -5 +src/kernel/qfont_x11.cpp 2.39 warwick +2 -2 +src/kernel/qfontdata.h 2.11 warwick +4 -4 +src/kernel/qfontdta.h 2.11 warwick +2 -65 +src/kernel/qfontinf.h 2.7 warwick +1 -79 +src/kernel/qfontinfo.h 2.7 warwick +4 -4 +src/kernel/qfontmet.h 2.14 warwick +1 -95 +src/kernel/qfontmetrics.h 2.14 warwick +4 -4 +src/kernel/qgmanager.cpp 2.36 warwick +5 -5 +src/kernel/qgmanager.h 2.13 warwick +4 -4 +src/kernel/qgmanagr.cpp 2.36 warwick +1 -1 +src/kernel/qgmanagr.h 2.13 warwick +2 -84 +src/kernel/qiconset.cpp 2.10 warwick +2 -2 +src/kernel/qimage.cpp 2.91 warwick +3 -3 +src/kernel/qlayout.h 2.18 warwick +2 -2 +src/kernel/qmetaobj.cpp 2.9 warwick +1 -1 +src/kernel/qmetaobj.h 2.4 warwick +2 -66 +src/kernel/qmetaobject.cpp 2.9 warwick +5 -4 +src/kernel/qmetaobject.h 2.4 warwick +5 -5 +src/kernel/qmovie.cpp 1.33 warwick +3 -3 +src/kernel/qmutex.h 1.5 warwick +2 -2 +src/kernel/qnpsupport.cpp 2.11 warwick +6 -6 +src/kernel/qobjcoll.h 2.6 warwick +1 -1 +src/kernel/qobjdefs.h 2.4 warwick +1 -78 +src/kernel/qobject.cpp 2.51 warwick +5 -4 +src/kernel/qobject.h 2.10 warwick +2 -2 +src/kernel/qobjectdefs.h 2.4 warwick +4 -4 +src/kernel/qobjectdict.h 2.1 warwick initial checkin +src/kernel/qobjectlist.h 2.1 warwick initial checkin +src/kernel/qpaintd.h 2.7 warwick +1 -170 +src/kernel/qpaintdc.h 2.6 warwick +2 -97 +src/kernel/qpaintdevice.h 2.7 warwick +6 -6 +src/kernel/qpaintdevice_win.cpp 2.10 warwick +5 -5 +src/kernel/qpaintdevice_x11.cpp 2.15 warwick +6 -6 +src/kernel/qpaintdevicedefs.h 2.6 warwick +5 -5 +src/kernel/qpaintdevicemetrics.cpp 2.4 warwick +3 -3 +src/kernel/qpaintdevicemetrics.h 2.3 warwick +7 -7 +src/kernel/qpainter.cpp 2.53 warwick +7 -7 +src/kernel/qpainter.h 2.26 warwick +5 -5 +src/kernel/qpainter_win.cpp 2.37 warwick +5 -5 +src/kernel/qpainter_x11.cpp 2.52 warwick +4 -4 +src/kernel/qpalette.cpp 2.18 warwick +2 -2 +src/kernel/qpalette.h 2.14 warwick +2 -2 +src/kernel/qpdevmet.cpp 2.4 warwick +1 -1 +src/kernel/qpdevmet.h 2.3 warwick +2 -37 +src/kernel/qpic_win.cpp 2.3 warwick +1 -1 +src/kernel/qpic_x11.cpp 2.3 warwick +1 -1 +src/kernel/qpicture.cpp 2.6 warwick +3 -3 +src/kernel/qpicture.h 2.5 warwick +2 -2 +src/kernel/qpixmap.cpp 2.26 warwick +2 -2 +src/kernel/qpixmap.h 2.20 warwick +2 -2 +src/kernel/qpixmap_win.cpp 2.35 warwick +3 -3 +src/kernel/qpixmap_x11.cpp 2.37 warwick +3 -3 +src/kernel/qpixmapcache.cpp 2.7 warwick +3 -3 +src/kernel/qpixmapcache.h 2.4 warwick +4 -4 +src/kernel/qpm_win.cpp 2.35 warwick +1 -1 +src/kernel/qpm_x11.cpp 2.37 warwick +1 -1 +src/kernel/qpmcache.cpp 2.7 warwick +1 -1 +src/kernel/qpmcache.h 2.4 warwick +2 -31 +src/kernel/qpntarry.cpp 2.16 warwick +1 -1 +src/kernel/qpntarry.h 2.7 warwick +1 -155 +src/kernel/qpoint.cpp 2.4 warwick +3 -3 +src/kernel/qpoint.h 2.3 warwick +2 -2 +src/kernel/qpointarray.cpp 2.16 warwick +6 -6 +src/kernel/qpointarray.h 2.7 warwick +4 -4 +src/kernel/qprinter.cpp 2.9 warwick +3 -3 +src/kernel/qprinter.h 2.7 warwick +2 -2 +src/kernel/qprinter_win.cpp 2.11 warwick +2 -2 +src/kernel/qprinter_x11.cpp 2.16 warwick +6 -6 +src/kernel/qprn_win.cpp 2.11 warwick +1 -1 +src/kernel/qprn_x11.cpp 2.16 warwick +1 -1 +src/kernel/qpsprinter.cpp 2.26 warwick +4 -4 +src/kernel/qpsprinter.h 2.8 warwick +5 -5 +src/kernel/qpsprn.cpp 2.26 warwick +1 -1 +src/kernel/qpsprn.h 2.8 warwick +2 -70 +src/kernel/qptd_os2.cpp 2.3 warwick +2 -2 +src/kernel/qptd_win.cpp 2.10 warwick +1 -1 +src/kernel/qptd_x11.cpp 2.15 warwick +1 -1 +src/kernel/qptr_os2.cpp 2.4 warwick +2 -2 +src/kernel/qptr_win.cpp 2.37 warwick +1 -1 +src/kernel/qptr_x11.cpp 2.52 warwick +1 -1 +src/kernel/qrect.cpp 2.8 warwick +3 -3 +src/kernel/qregion.cpp 2.14 warwick +3 -3 +src/kernel/qregion_win.cpp 2.15 warwick +2 -2 +src/kernel/qregion_x11.cpp 2.16 warwick +2 -2 +src/kernel/qrgn_os2.cpp 2.4 warwick +2 -2 +src/kernel/qrgn_win.cpp 2.15 warwick +1 -1 +src/kernel/qrgn_x11.cpp 2.16 warwick +1 -1 +src/kernel/qsemimodal.cpp 2.6 warwick +2 -2 +src/kernel/qsignal.cpp 2.5 warwick +2 -2 +src/kernel/qsize.cpp 2.9 warwick +3 -3 +src/kernel/qsocketnotifier.cpp 2.7 warwick +3 -3 +src/kernel/qsocketnotifier.h 2.4 warwick +4 -4 +src/kernel/qsocknot.cpp 2.7 warwick +1 -1 +src/kernel/qsocknot.h 2.4 warwick +2 -60 +src/kernel/qt_x11.cpp 2.4 warwick +1 -1 +src/kernel/qthread.h 1.5 warwick +2 -2 +src/kernel/qtimer.cpp 2.9 warwick +4 -3 +src/kernel/qwid_os2.cpp 2.6 warwick +3 -2 +src/kernel/qwid_win.cpp 2.56 warwick +1 -1 +src/kernel/qwid_x11.cpp 2.96 warwick +1 -1 +src/kernel/qwidcoll.h 2.5 warwick +1 -1 +src/kernel/qwidget.cpp 2.111 warwick +10 -8 +src/kernel/qwidget.h 2.50 warwick +5 -5 +src/kernel/qwidget_win.cpp 2.56 warwick +11 -9 +src/kernel/qwidget_x11.cpp 2.96 warwick +10 -8 +src/kernel/qwidgetintdict.h 2.1 warwick initial checkin +src/kernel/qwidgetlist.h 2.1 warwick initial checkin +src/kernel/qwindefs.h 2.23 warwick +1 -313 +src/kernel/qwindowdefs.h 2.23 warwick +5 -5 +src/kernel/qwmatrix.cpp 2.5 warwick +3 -3 +src/kernel/qwmatrix.h 2.3 warwick +3 -3 +src/moc/GNUmakefile 2.5 warwick +13 -13 +src/moc/Makefile 2.10 warwick +42 -42 +src/moc/moc.pro 1.10 warwick +4 -4 +src/moc/moc.y 2.23 warwick +5 -5 +src/tools/qbitarray.cpp 2.7 warwick +5 -5 +src/tools/qbitarray.h 2.5 warwick +4 -4 +src/tools/qbitarry.cpp 2.7 warwick +1 -1 +src/tools/qbitarry.h 2.5 warwick +2 -134 +src/tools/qbuffer.h 2.5 warwick +2 -2 +src/tools/qcollect.cpp 2.5 warwick +1 -1 +src/tools/qcollect.h 2.3 warwick +2 -46 +src/tools/qcollection.cpp 2.5 warwick +3 -3 +src/tools/qcollection.h 2.3 warwick +4 -4 +src/tools/qdatastream.cpp 2.14 warwick +3 -3 +src/tools/qdatastream.h 2.6 warwick +5 -5 +src/tools/qdatetime.cpp 2.15 warwick +6 -6 +src/tools/qdatetime.h 2.4 warwick +4 -4 +src/tools/qdatetm.cpp 2.15 warwick +1 -1 +src/tools/qdatetm.h 2.4 warwick +2 -180 +src/tools/qdir.cpp 2.22 warwick +3 -3 +src/tools/qdir.h 2.8 warwick +2 -2 +src/tools/qdstream.cpp 2.14 warwick +1 -1 +src/tools/qdstream.h 2.6 warwick +2 -117 +src/tools/qfile.cpp 2.22 warwick +2 -2 +src/tools/qfile.h 2.5 warwick +2 -2 +src/tools/qfiledef.h 2.8 warwick +3 -153 +src/tools/qfiledefs.h 2.8 warwick +2 -2 +src/tools/qfileinf.cpp 2.11 warwick +1 -1 +src/tools/qfileinf.h 2.3 warwick +2 -96 +src/tools/qfileinfo.cpp 2.11 warwick +6 -6 +src/tools/qfileinfo.h 2.3 warwick +5 -5 +src/tools/qgcache.h 2.3 warwick +2 -2 +src/tools/qgdict.cpp 2.16 warwick +2 -2 +src/tools/qgdict.h 2.5 warwick +2 -2 +src/tools/qglist.cpp 2.5 warwick +2 -2 +src/tools/qglist.h 2.3 warwick +2 -2 +src/tools/qglobal.cpp 2.15 warwick +2 -2 +src/tools/qglobal.h 2.52 warwick +2 -2 +src/tools/qgvector.cpp 2.7 warwick +2 -2 +src/tools/qgvector.h 2.3 warwick +2 -2 +src/tools/qintcach.h 2.3 warwick +1 -168 +src/tools/qintcache.h 2.3 warwick +4 -4 +src/tools/qiodev.cpp 2.11 warwick +1 -1 +src/tools/qiodev.h 2.5 warwick +2 -128 +src/tools/qiodevice.cpp 2.11 warwick +3 -3 +src/tools/qiodevice.h 2.5 warwick +4 -4 +src/tools/qstring.cpp 2.21 warwick +2 -2 +src/tools/qstrlist.h 2.11 warwick +2 -2 +src/tools/qstrvec.h 2.4 warwick +2 -2 +src/tools/qtextstream.cpp 2.15 warwick +4 -4 +src/tools/qtextstream.h 2.7 warwick +5 -5 +src/tools/qtstream.cpp 2.15 warwick +1 -1 +src/tools/qtstream.h 2.7 warwick +2 -216 +src/widgets/qbttngrp.cpp 2.13 warwick +1 -1 +src/widgets/qbttngrp.h 2.6 warwick +2 -61 +src/widgets/qbutton.cpp 2.61 warwick +3 -3 +src/widgets/qbutton.h 2.17 warwick +2 -2 +src/widgets/qbuttongroup.cpp 2.13 warwick +3 -3 +src/widgets/qbuttongroup.h 2.6 warwick +5 -5 +src/widgets/qcheckbox.cpp 2.23 warwick +5 -5 +src/widgets/qcheckbox.h 2.6 warwick +4 -4 +src/widgets/qchkbox.cpp 2.23 warwick +1 -1 +src/widgets/qchkbox.h 2.6 warwick +2 -47 +src/widgets/qcombo.cpp 2.87 warwick +1 -1 +src/widgets/qcombo.h 2.27 warwick +2 -132 +src/widgets/qcombobox.cpp 2.87 warwick +8 -8 +src/widgets/qcombobox.h 2.27 warwick +3 -3 +src/widgets/qframe.cpp 2.19 warwick +2 -2 +src/widgets/qgroupbox.cpp 2.12 warwick +3 -3 +src/widgets/qgroupbox.h 2.4 warwick +4 -4 +src/widgets/qgrpbox.cpp 2.12 warwick +1 -1 +src/widgets/qgrpbox.h 2.4 warwick +2 -46 +src/widgets/qheader.cpp 2.45 warwick +3 -3 +src/widgets/qheader.h 2.19 warwick +2 -2 +src/widgets/qlabel.cpp 2.32 warwick +2 -2 +src/widgets/qlcdnum.cpp 2.13 warwick +1 -1 +src/widgets/qlcdnum.h 2.8 warwick +2 -95 +src/widgets/qlcdnumber.cpp 2.13 warwick +4 -4 +src/widgets/qlcdnumber.h 2.8 warwick +5 -5 +src/widgets/qlined.cpp 2.81 warwick +1 -1 +src/widgets/qlined.h 2.28 warwick +2 -138 +src/widgets/qlineedit.cpp 2.81 warwick +7 -7 +src/widgets/qlineedit.h 2.28 warwick +4 -4 +src/widgets/qlistbox.cpp 2.69 warwick +4 -4 +src/widgets/qlistbox.h 2.16 warwick +2 -2 +src/widgets/qlistview.cpp 2.117 warwick +3 -3 +src/widgets/qmainwindow.cpp 2.27 warwick +4 -3 +src/widgets/qmenubar.cpp 2.54 warwick +3 -3 +src/widgets/qmenubar.h 2.11 warwick +2 -2 +src/widgets/qmenudata.cpp 2.16 warwick +5 -5 +src/widgets/qmenudata.h 2.11 warwick +4 -4 +src/widgets/qmenudta.cpp 2.16 warwick +1 -1 +src/widgets/qmenudta.h 2.11 warwick +1 -182 +src/widgets/qmlined.cpp 2.93 warwick +1 -1 +src/widgets/qmlined.h 2.36 warwick +2 -189 +src/widgets/qmultilined.cpp 2.93 warwick +6 -6 +src/widgets/qmultilined.h 2.36 warwick +5 -5 +src/widgets/qpopmenu.cpp 2.78 warwick +1 -1 +src/widgets/qpopmenu.h 2.14 warwick +2 -110 +src/widgets/qpopupmenu.cpp 2.78 warwick +6 -6 +src/widgets/qpopupmenu.h 2.14 warwick +6 -6 +src/widgets/qprogbar.cpp 2.19 warwick +1 -1 +src/widgets/qprogbar.h 2.9 warwick +2 -65 +src/widgets/qprogressbar.cpp 2.19 warwick +5 -5 +src/widgets/qprogressbar.h 2.9 warwick +4 -4 +src/widgets/qpushbt.cpp 2.41 warwick +1 -1 +src/widgets/qpushbt.h 2.8 warwick +2 -70 +src/widgets/qpushbutton.cpp 2.41 warwick +6 -6 +src/widgets/qpushbutton.h 2.8 warwick +4 -4 +src/widgets/qradiobt.cpp 2.28 warwick +1 -1 +src/widgets/qradiobt.h 2.8 warwick +2 -55 +src/widgets/qradiobutton.cpp 2.28 warwick +6 -6 +src/widgets/qradiobutton.h 2.8 warwick +4 -4 +src/widgets/qrangecontrol.cpp 2.6 warwick +3 -3 +src/widgets/qrangecontrol.h 2.3 warwick +4 -4 +src/widgets/qrangect.cpp 2.6 warwick +1 -1 +src/widgets/qrangect.h 2.3 warwick +2 -76 +src/widgets/qscrbar.cpp 2.38 warwick +1 -1 +src/widgets/qscrbar.h 2.6 warwick +2 -115 +src/widgets/qscrollbar.cpp 2.38 warwick +3 -3 +src/widgets/qscrollbar.h 2.6 warwick +6 -6 +src/widgets/qscrollview.cpp 2.46 warwick +5 -4 +src/widgets/qscrollview.h 2.21 warwick +2 -2 +src/widgets/qslider.cpp 2.52 warwick +2 -2 +src/widgets/qslider.h 2.23 warwick +2 -2 +src/widgets/qspinbox.cpp 2.35 warwick +3 -3 +src/widgets/qspinbox.h 2.20 warwick +2 -2 +src/widgets/qsplitter.cpp 1.16 warwick +2 -2 +src/widgets/qstatusbar.cpp 2.14 warwick +3 -3 +src/widgets/qtableview.cpp 2.49 warwick +5 -5 +src/widgets/qtableview.h 2.10 warwick +4 -4 +src/widgets/qtablevw.cpp 2.49 warwick +1 -1 +src/widgets/qtablevw.h 2.10 warwick +2 -241 +src/widgets/qtoolbar.cpp 2.23 warwick +5 -4 +src/widgets/qtoolbutton.cpp 2.28 warwick +3 -3 +src/widgets/qtooltip.cpp 2.47 warwick +4 -4 +src/widgets/qwellarray.cpp 1.4 warwick +4 -3 +src/widgets/qwellarray.h 1.5 warwick +2 -2 +src/widgets/qwhatsthis.cpp 2.15 warwick +3 -3 +src/widgets/qwidgetstack.cpp 2.7 warwick +3 -2 +tutorial/t1/main.cpp 2.1 warwick +2 -2 +tutorial/t10/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t10/main.cpp 2.3 warwick +4 -4 +tutorial/t11/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t11/main.cpp 2.3 warwick +4 -4 +tutorial/t12/cannon.cpp 2.3 warwick +1 -1 +tutorial/t12/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t12/main.cpp 2.3 warwick +4 -4 +tutorial/t13/cannon.cpp 2.3 warwick +1 -1 +tutorial/t13/gamebrd.cpp 2.1 warwick +3 -3 +tutorial/t13/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t13/main.cpp 2.3 warwick +1 -1 +tutorial/t14/cannon.cpp 2.3 warwick +1 -1 +tutorial/t14/gamebrd.cpp 2.2 warwick +3 -3 +tutorial/t14/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t14/main.cpp 2.3 warwick +1 -1 +tutorial/t2/main.cpp 2.1 warwick +2 -2 +tutorial/t3/main.cpp 2.1 warwick +2 -2 +tutorial/t4/main.cpp 2.1 warwick +2 -2 +tutorial/t5/main.cpp 2.1 warwick +4 -4 +tutorial/t6/main.cpp 2.1 warwick +4 -4 +tutorial/t7/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t7/main.cpp 2.1 warwick +4 -4 +tutorial/t8/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t8/main.cpp 2.1 warwick +4 -4 +tutorial/t9/lcdrange.cpp 2.1 warwick +2 -2 +tutorial/t9/main.cpp 2.3 warwick +4 -4 + + The Big Renaming of '98 + + +doc/tutorial.doc 2.14 agulbra +4 -4 + + new header files + + +examples/validator/motor.cpp 1.8 agulbra +2 -71 +examples/validator/motor.h 1.7 agulbra +2 -29 +examples/validator/vw.cpp 1.7 agulbra +11 -11 +examples/validator/vw.h 1.4 agulbra +3 -3 + + some fixes for current QSpinBox + + +extensions/nsplugin/src/qnp.pro 1.2 warwick +1 -1 + + tmake workaround + + +src/dialogs/qfiledialog.cpp 2.70 agulbra +46 -1 +src/dialogs/qfiledialog.h 2.17 agulbra +3 -1 +src/dialogs/qfiledlg.cpp 2.70 agulbra +46 -1 +src/dialogs/qfiledlg.h 2.17 agulbra +3 -1 + + support multile file types + + +src/dialogs/qfiledlg.h 2.19 warwick +0 -0 +src/dialogs/qmsgbox.h 2.27 warwick +0 -0 +src/dialogs/qprndlg.h 2.10 warwick +0 -0 +src/dialogs/qprogdlg.h 2.15 warwick +0 -0 +src/dialogs/qtabdlg.h 2.20 warwick +0 -0 +src/kernel/qapp.h 2.28 warwick +0 -0 +src/kernel/qclipbrd.h 2.6 warwick +0 -0 +src/kernel/qconnect.h 2.6 warwick +0 -0 +src/kernel/qdrawutl.h 2.8 warwick +0 -0 +src/kernel/qfontdta.h 2.12 warwick +0 -0 +src/kernel/qfontinf.h 2.8 warwick +0 -0 +src/kernel/qfontmet.h 2.15 warwick +0 -0 +src/kernel/qgmanagr.h 2.14 warwick +0 -0 +src/kernel/qmetaobj.h 2.5 warwick +0 -0 +src/kernel/qobjdefs.h 2.5 warwick +0 -0 +src/kernel/qpaintd.h 2.8 warwick +0 -0 +src/kernel/qpaintdc.h 2.7 warwick +0 -0 +src/kernel/qpdevmet.h 2.4 warwick +0 -0 +src/kernel/qpmcache.h 2.5 warwick +0 -0 +src/kernel/qpntarry.h 2.8 warwick +0 -0 +src/kernel/qpsprn.h 2.9 warwick +0 -0 +src/kernel/qsocknot.h 2.5 warwick +0 -0 +src/kernel/qwindefs.h 2.24 warwick +0 -0 +src/tools/qbitarry.h 2.6 warwick +0 -0 +src/tools/qcollect.h 2.4 warwick +0 -0 +src/tools/qdatetm.h 2.5 warwick +0 -0 +src/tools/qdstream.h 2.7 warwick +0 -0 +src/tools/qfiledef.h 2.9 warwick +0 -0 +src/tools/qfileinf.h 2.4 warwick +0 -0 +src/tools/qintcach.h 2.4 warwick +0 -0 +src/tools/qiodev.h 2.6 warwick +0 -0 +src/tools/qtstream.h 2.8 warwick +0 -0 +src/widgets/qbttngrp.h 2.7 warwick +0 -0 +src/widgets/qchkbox.h 2.7 warwick +0 -0 +src/widgets/qcombo.h 2.28 warwick +0 -0 +src/widgets/qgrpbox.h 2.5 warwick +0 -0 +src/widgets/qlcdnum.h 2.9 warwick +0 -0 +src/widgets/qlined.h 2.29 warwick +0 -0 +src/widgets/qmenudta.h 2.12 warwick +0 -0 +src/widgets/qmlined.h 2.37 warwick +0 -0 +src/widgets/qpopmenu.h 2.15 warwick +0 -0 +src/widgets/qprogbar.h 2.10 warwick +0 -0 +src/widgets/qpushbt.h 2.9 warwick +0 -0 +src/widgets/qradiobt.h 2.9 warwick +0 -0 +src/widgets/qrangect.h 2.4 warwick +0 -0 +src/widgets/qscrbar.h 2.7 warwick +0 -0 +src/widgets/qtablevw.h 2.11 warwick +0 -0 + + Move compatibility files out of the way. + + +src/dialogs/qprintdialog.cpp 2.27 agulbra +67 -1 +src/dialogs/qprndlg.cpp 2.27 agulbra +67 -1 + + val's irix 6.3 printer discovery code + + +src/kernel/qapp.cpp 2.56 agulbra +14 -6 +src/kernel/qapplication.cpp 2.56 agulbra +14 -6 +src/kernel/qasyncimageio.cpp 1.34 agulbra +53 -15 +src/kernel/qregion.cpp 2.13 agulbra +1 -8 +src/kernel/qregion.h 2.13 agulbra +1 -4 +src/widgets/qheader.cpp 2.44 agulbra +4 -5 + + Reginald Stadlbauer's alpha's egcs said to do this. it doesn't like + static objects with non-default constructors. + + +src/kernel/qapp_os2.cpp 2.6 warwick +1 -1 +src/kernel/qcol_os2.cpp 2.4 warwick +1 -1 +src/kernel/qcur_os2.cpp 2.4 warwick +1 -1 +src/kernel/qfnt_os2.cpp 2.3 warwick +1 -1 +src/kernel/qpic_os2.cpp 2.3 warwick +1 -1 +src/kernel/qpm_os2.cpp 2.3 warwick +1 -1 +src/kernel/qptd_os2.cpp 2.4 warwick +1 -1 +src/kernel/qptr_os2.cpp 2.5 warwick +1 -1 +src/kernel/qrgn_os2.cpp 2.5 warwick +1 -1 +src/kernel/qwid_os2.cpp 2.7 warwick +1 -1 + + Remove OS2 code. + + +src/kernel/qapp_x11.cpp 2.139 hanord +2 -4 +src/kernel/qapplication_x11.cpp 2.139 hanord +2 -4 + + Fixed keyboard release event bug when the key press was done outside the + window (Morten Eriksen bug report). + + +src/kernel/qapp_x11.cpp 2.140 warwick +5 -5 +src/kernel/qapplication_x11.cpp 2.140 warwick +5 -5 +src/kernel/qfnt_x11.cpp 2.37 warwick +9 -23 +src/kernel/qfont_x11.cpp 2.37 warwick +9 -23 +src/kernel/qimage.cpp 2.90 warwick +13 -13 +src/kernel/qnpsupport.cpp 2.10 warwick +2 -1 +src/kernel/qwidget.cpp 2.109 warwick +17 -16 + + Fix pointer-to-int casts that 64-bit compiler don't like. + + +src/kernel/qcol_x11.cpp 2.30 hanord +2 -2 +src/kernel/qcolor_x11.cpp 2.30 hanord +2 -2 +src/widgets/qheader.cpp 2.42 hanord +2 -2 + + Don't do big changes in 1.40, wait until 1.49 + + +src/kernel/qdialog.cpp 2.18 warwick +20 -4 + + Stay on-screen when centering relative to parent. This code should + be shared. + + +src/kernel/qdnd_x11.cpp 2.15 agulbra +6 -9 + + comment out old debug messages; delete some + + +src/kernel/qdnd_x11.cpp 2.16 agulbra +8 -5 + + workaround for gcc/alpha brokenness. + + +src/kernel/qdnd_x11.cpp 2.17 warwick +9 -9 +src/kernel/qpainter.cpp 2.52 warwick +14 -11 +src/kernel/qwid_x11.cpp 2.95 warwick +2 -2 +src/kernel/qwidget_x11.cpp 2.95 warwick +2 -2 +src/widgets/qwellarray.cpp 1.3 warwick +10 -1 +src/widgets/qwellarray.h 1.4 warwick +2 -1 + + Avoid HPUX warnings. + + +src/kernel/qdragobject.cpp 2.15 agulbra +4 -6 + + ignore totally unexpected events + + +src/kernel/qdragobject.cpp 2.16 agulbra +2 -2 + + stop warning + + +src/kernel/qfnt_win.cpp 2.29 warwick +3 -3 +src/kernel/qfnt_x11.cpp 2.38 warwick +4 -4 +src/kernel/qfont_win.cpp 2.29 warwick +3 -3 +src/kernel/qfont_x11.cpp 2.38 warwick +4 -4 + + Fix width(char) for signed characters. + + +src/kernel/qgmanager.cpp 2.35 paul +48 -20 +src/kernel/qgmanager.h 2.12 paul +3 -1 +src/kernel/qgmanagr.cpp 2.35 paul +48 -20 +src/kernel/qgmanagr.h 2.12 paul +3 -1 +src/kernel/qlayout.cpp 2.32 paul +36 -22 + + Better debug output. + + +src/kernel/qimage.cpp 2.92 warwick +3 -3 +src/kernel/qlayout.cpp 2.34 agulbra +10 -25 +src/kernel/qpainter.cpp 2.50 agulbra +6 -12 +src/tools/qregexp.cpp 2.11 agulbra +3 -3 +src/widgets/qstatusbar.cpp 2.12 agulbra +4 -4 + + doc + + +src/kernel/qlayout.cpp 2.31 agulbra +75 -24 +src/widgets/qlistview.cpp 2.114 agulbra +7 -2 + + some docs + + +src/kernel/qlayout.cpp 2.33 agulbra +183 -34 +src/widgets/qlistview.cpp 2.115 agulbra +93 -22 +src/widgets/qlistview.h 2.50 agulbra +4 -1 +src/widgets/qwhatsthis.cpp 2.14 agulbra +152 -29 + + doc, doc, doc. this round pushes qt over 3250 documented functions. + the next milestone is five megs of html doc (sixty-odd k left). + + +src/kernel/qobjcoll.h 2.7 warwick +4 -20 +src/kernel/qwidcoll.h 2.6 warwick +3 -14 + + Broken in rename. + + +src/kernel/qobjcoll.h 2.8 warwick +1 -1 +src/kernel/qwidcoll.h 2.7 warwick +1 -1 + + Moved. + + +src/kernel/qpainter.cpp 2.51 warwick +2 -2 + + Improve robustness. + + +src/kernel/qprinter_x11.cpp 2.15 agulbra +2 -1 +src/kernel/qprn_x11.cpp 2.15 agulbra +2 -1 + + #include ; necessary for some unixes + + +src/kernel/qwidget.cpp 2.110 agulbra +2 -2 + + make tab focus change work (at all!) in dialogs + + +src/tools/qfileinf.cpp 2.10 agulbra +17 -8 +src/tools/qfileinfo.cpp 2.10 agulbra +17 -8 + + double the speed of isSymLink() (and hence the file dialog's repaint) + in one easy change. + + +src/tools/qgdict.cpp 2.15 warwick +2 -2 + + 64-bit pointer to long fix. + + +src/tools/qstring.cpp 2.20 warwick +2 -2 + + Obscure safety improvement. + + +src/widgets/qcombo.cpp 2.86 agulbra +2 -2 +src/widgets/qcombobox.cpp 2.86 agulbra +2 -2 +src/widgets/qlabel.cpp 2.31 agulbra +2 -2 + + fix logic to decide when to locate the listbox above the combo itself + instead of below. + + +src/widgets/qheader.cpp 2.43 agulbra +2 -3 + + remove a "this should not happen" debug() because that situation + should happen. can happen, anyway. + + +src/widgets/qlined.cpp 2.80 warwick +24 -6 +src/widgets/qlined.h 2.27 warwick +2 -1 +src/widgets/qlineedit.cpp 2.80 warwick +24 -6 +src/widgets/qlineedit.h 2.27 warwick +2 -1 +src/widgets/qmlined.cpp 2.92 warwick +36 -7 +src/widgets/qmlined.h 2.35 warwick +2 -1 +src/widgets/qmultilined.cpp 2.92 warwick +36 -7 +src/widgets/qmultilined.h 2.35 warwick +2 -1 + + Make WindowsStyle under X11 still meet the X11 user's expectations + regarding auto-copy, while allowing the highlight-and-paste action + familiar to Windows users. A compromise. + + Also make qmlined more similar to qlined. + + +src/widgets/qlistbox.cpp 2.68 warwick +2 -2 + + Use maximumSize() correctly. + (fixes kdisplay background problem) + + +src/widgets/qlistview.cpp 2.116 agulbra +25 -12 + + tweak mouse state machine a little. make it harder to select a + non-selectable item. doc fixes. + + +src/widgets/qmainwindow.cpp 2.25 agulbra +3 -5 +src/widgets/qmainwindow.cpp 2.24 agulbra +245 -26 +src/widgets/qmainwindow.h 2.15 agulbra +2 -1 + + if a dock contained only hidden toolbars, layout would be wrong. + also contains ifdef-ed out broken docking code. + + +src/widgets/qmainwindow.cpp 2.26 warwick +3 -1 +src/widgets/qsplitter.cpp 1.15 warwick +3 -1 +src/widgets/qstatusbar.cpp 2.13 warwick +3 -1 + + New documentation images. + + +src/widgets/qmainwindow.h 2.16 agulbra +2 -3 + + setRightJustification is now a slot + + +src/widgets/qmenudata.cpp 2.15 warwick +4 -2 +src/widgets/qmenudta.cpp 2.15 warwick +4 -2 + + Warning about setCheckable in setItemChecked. + + +src/widgets/qpopmenu.cpp 2.76 warwick +4 -9 +src/widgets/qpopupmenu.cpp 2.76 warwick +4 -9 + + Fix "need more than one off-menu click to cancel" bug. + Make Escape only pop down one popup (as per Windows and Motif). + + +src/widgets/qpopmenu.cpp 2.77 warwick +4 -2 +src/widgets/qpopupmenu.cpp 2.77 warwick +4 -2 + + Correct drop-down-on-no-selection behaviour. + + +src/widgets/qspinbox.cpp 2.33 agulbra +5 -7 + + minor changes; this really need to take the validator into + consideration when the user has typed but I can't fix that now. + + +src/widgets/qspinbox.cpp 2.34 agulbra +18 -3 +src/widgets/qspinbox.h 2.19 agulbra +3 -1 + + handle setEnabled() correctly + + +src/widgets/qsplitter.cpp 1.14 paul +10 -10 + + Fixed off-by-one error + + +src/widgets/qtabbar.h 2.11 agulbra +2 -1 + + one variable wasn't initialized. initialize it. + + +src/widgets/qtooltip.cpp 2.46 agulbra +3 -3 + + stay up for ten seconds, not four. + + +src/widgets/qvalidator.cpp 2.20 agulbra +7 -4 + + "-" is a valid state for both validator; allows typing of -42 in the + natural way if -42 is valid. + diff --git a/dist/changes-1.39-19980623 b/dist/changes-1.39-19980623 new file mode 100644 index 0000000000..0a40bf9400 --- /dev/null +++ b/dist/changes-1.39-19980623 @@ -0,0 +1,545 @@ +doc/annotated.doc 1.5 warwick +6 -3 + + Try new tabled annotated list. + + +doc/tutorial.doc 2.14 agulbra +4 -4 + + new header files + + +examples/application/application.cpp 1.13 warwick +2 -2 +examples/layout/layout.cpp 1.7 warwick +2 -2 +examples/network/finger.cpp 1.8 warwick +2 -2 +examples/pref/pref.cpp 1.21 warwick +2 -2 +examples/qwerty/qwerty.h 1.9 warwick +2 -2 +examples/scrollview/scrollview.cpp 1.16 warwick +2 -2 +examples/widgets/widgets.cpp 2.44 warwick +2 -2 +src/widgets/qmultilinedit.cpp 2.94 warwick +2 -2 + + Rename fix - "qmultilinedit.h" not "qmultilined.h" + + +examples/application/application.cpp 1.14 agulbra +32 -18 + + use QWhatsThis + + +examples/application/application.cpp 1.15 warwick +7 -6 +examples/application/application.h 1.5 warwick +2 -1 + + Use persistent QPrinter. + + +examples/dragdrop/.cvsignore 1.1 warwick initial checkin +examples/dragdrop/dragdrop.pro 1.1 warwick initial checkin +examples/dragdrop/main.cpp 1.6 warwick +20 -7 +src/qt.pro 2.28 warwick +3 -3 + + upd + + +examples/dragdrop/GNUmakefile 1.1 warwick initial checkin +examples/dragdrop/Makefile 1.1 warwick initial checkin +examples/dragdrop/main.cpp 1.2 warwick +2 -1 + + Quit. + + +examples/dragdrop/dropsite.cpp 1.1 agulbra initial checkin +examples/dragdrop/dropsite.h 1.1 agulbra initial checkin +examples/dragdrop/main.cpp 1.1 agulbra initial checkin + + kind of like simple.c, except not 2000 lines + + +examples/dragdrop/dropsite.cpp 1.2 warwick +22 -3 +examples/dragdrop/main.cpp 1.3 warwick +3 -3 + + Fixes, more debug options. + + +examples/dragdrop/dropsite.cpp 1.3 warwick +36 -34 +examples/dragdrop/main.cpp 1.4 warwick +2 -2 + + Better feedback, more examples. + + +examples/dragdrop/dropsite.cpp 1.4 warwick +5 -3 + + Visualize DragLeave events. + + +examples/dragdrop/dropsite.cpp 1.5 warwick +15 -43 +examples/dragdrop/dropsite.h 1.2 warwick +1 -7 +examples/dragdrop/main.cpp 1.5 warwick +2 -10 + + Remove format choice - QImageDragObject deals with that. + + +examples/dragdrop/dropsite.cpp 1.6 warwick +4 -5 +src/kernel/qdragobject.cpp 2.25 warwick +11 -6 +src/kernel/qdragobject.h 2.12 warwick +3 -2 + + Set MIME format in QStoredDragObject constructor. + + +examples/dragdrop/dropsite.cpp 1.7 warwick +10 -3 +examples/dragdrop/dropsite.h 1.3 warwick +2 -1 + + Use Event_DragEnter + + +examples/movies/main.cpp 1.12 warwick +4 -4 + + Warnings, robustness. + + +examples/showimg/.cvsignore 2.1 warwick +5 -0 + + Ignore images + + +extensions/nsplugin/examples/Makefile 1.1 warwick initial checkin +extensions/xt/doc.conf 1.4 warwick +1 -1 + + Oddsnends + + +extensions/nsplugin/src/qnp.cpp 1.20 warwick +19 -20 + + show() not required now. + + +extensions/nsplugin/src/qnp.pro 1.2 warwick +1 -1 + + tmake workaround + + +src/compat/qmlined.h 1.2 warwick +1 -1 + + edit not ed + + +src/compat/qobjcoll.h 1.1 warwick initial checkin +src/compat/qwidcoll.h 1.1 warwick initial checkin +src/kernel/qobjcoll.h 2.8 warwick +1 -1 +src/kernel/qwidcoll.h 2.7 warwick +1 -1 + + Moved. + + +src/dialogs/qfiledialog.cpp 2.72 agulbra +79 -54 + + avoid one more static + + +src/dialogs/qfiledialog.cpp 2.73 agulbra +3 -3 + + use the right column width in multi-column mode + + +src/dialogs/qfiledialog.cpp 2.74 agulbra +1 -2 + + commit -without- debug feature + + +src/dialogs/qfiledialog.cpp 2.75 agulbra +22 -8 + + handle "type name of directory then press enter" case by switching to + that directory + + +src/dialogs/qfiledialog.cpp 2.76 agulbra +10 -7 + + minor tweak to make the ok button change less often + + +src/dialogs/qfiledialog.cpp 2.77 agulbra +2 -2 + + slightly better row height in the multi-column view + + +src/kernel/qapp.cpp 2.56 agulbra +14 -6 +src/kernel/qapplication.cpp 2.56 agulbra +14 -6 +src/kernel/qasyncimageio.cpp 1.34 agulbra +53 -15 +src/kernel/qregion.cpp 2.13 agulbra +1 -8 +src/kernel/qregion.h 2.13 agulbra +1 -4 +src/widgets/qheader.cpp 2.44 agulbra +4 -5 + + Reginald Stadlbauer's alpha's egcs said to do this. it doesn't like + static objects with non-default constructors. + + +src/kernel/qapplication_win.cpp 2.91 warwick +10 -1 +src/kernel/qdnd_x11.cpp 2.20 warwick +1 -7 +src/kernel/qdragobject.h 2.9 warwick +1 -4 +src/kernel/qwidget.cpp 2.112 warwick +4 -11 +src/kernel/qwidget_win.cpp 2.57 warwick +20 -3 +src/kernel/qwidget_x11.cpp 2.97 warwick +12 -4 +src/kernel/qwindowdefs.h 2.24 warwick +5 -1 + + Drag&dropery. + + +src/kernel/qapplication_win.cpp 2.93 warwick +4 -2 +src/kernel/qdnd_win.cpp 2.10 warwick +483 -135 +src/kernel/qdnd_x11.cpp 2.24 warwick +21 -1 +src/kernel/qdragobject.cpp 2.18 warwick +5 -5 +src/kernel/qevent.cpp 2.17 warwick +1 -21 +src/kernel/qimage.cpp 2.93 warwick +73 -34 +src/kernel/qwidget_win.cpp 2.59 warwick +4 -3 + + Windows Drap & Drop. + + +src/kernel/qasyncimageio.cpp 1.35 agulbra +2 -2 + + make cleanup() static + + +src/kernel/qasyncimageio.cpp 1.37 warwick +4 -2 +src/kernel/qasyncimageio.cpp 1.36 warwick +30 -7 +src/kernel/qdragobject.cpp 2.22 warwick +7 -5 +src/kernel/qimage.cpp 2.96 warwick +4 -1 +src/kernel/qimage.cpp 2.95 agulbra +8 -9 +src/kernel/qimage.cpp 2.92 warwick +3 -3 +src/tools/qdir.cpp 2.24 agulbra +7 -1 + + doc + + +src/kernel/qclipboard_x11.cpp 2.14 agulbra +26 -20 + + avoid statics that are troublesome on the alpha + + +src/kernel/qdialog.cpp 2.20 agulbra +39 -18 + + frameGeometry() is normally not meaningful before show(), so I + switched to a different way of ensuring that the dialog's default + position is entirely on-screen. may not work perfectly with + Enlightenment :) + + +src/kernel/qdnd_win.cpp 2.11 warwick +5 -1 +src/kernel/qdnd_x11.cpp 2.25 warwick +56 -1 +src/kernel/qdragobject.cpp 2.19 warwick +8 -59 + + Move QDragManager::eventFilter code to X11-specifics. + + +src/kernel/qdnd_win.cpp 2.12 warwick +44 -31 + + Follow DnD API changes. + Add leave event. + + +src/kernel/qdnd_win.cpp 2.13 warwick +8 -3 +src/kernel/qevent.h 2.19 warwick +15 -5 + + DragEnter events and final DragLeave to DropEvent targets. + + +src/kernel/qdnd_win.cpp 2.14 warwick +2 -6 + + spacing + + +src/kernel/qdnd_win.cpp 2.7 warwick +989 -12 + + First inclusion from tests/olednd code. + + +src/kernel/qdnd_win.cpp 2.9 warwick +162 -98 + + DND. + + +src/kernel/qdnd_x11.cpp 2.17 warwick +9 -9 +src/kernel/qpainter.cpp 2.52 warwick +14 -11 +src/kernel/qwid_x11.cpp 2.95 warwick +2 -2 +src/kernel/qwidget_x11.cpp 2.95 warwick +2 -2 +src/widgets/qwellarray.cpp 1.3 warwick +10 -1 +src/widgets/qwellarray.h 1.4 warwick +2 -1 + + Avoid HPUX warnings. + + +src/kernel/qdnd_x11.cpp 2.19 agulbra +29 -25 + + egcs/alpha workarounds. + + +src/kernel/qdnd_x11.cpp 2.22 agulbra +2 -2 +src/kernel/qwidget_x11.cpp 2.98 agulbra +2 -2 + + don't segfault on first registerDropType() + + +src/kernel/qdnd_x11.cpp 2.23 paul +5 -3 + + Ignore windows without clients. + + +src/kernel/qdnd_x11.cpp 2.26 warwick +18 -1 +src/kernel/qdragobject.cpp 2.20 warwick +1 -16 + + Move DND cursor into X11-specifics. + + +src/kernel/qdnd_x11.cpp 2.27 warwick +16 -10 +src/kernel/qdragobject.cpp 2.23 warwick +130 -71 +src/kernel/qdragobject.h 2.11 warwick +14 -25 + + Multi-format QDragObject API. + + +src/kernel/qdnd_x11.cpp 2.28 agulbra +47 -18 + + updated to match windows version + + +src/kernel/qdragobject.cpp 2.21 warwick +99 -14 +src/kernel/qdragobject.h 2.10 warwick +45 -3 + + QImageDragObject + Mark out problem areas for fixing. + + +src/kernel/qdragobject.cpp 2.24 agulbra +2 -2 +src/kernel/qlayout.cpp 2.35 agulbra +3 -3 +src/kernel/qpixmapcache.cpp 2.8 agulbra +2 -1 +src/tools/qgcache.cpp 2.7 agulbra +12 -8 +src/widgets/qpushbutton.cpp 2.43 agulbra +3 -3 + + speling + + +src/kernel/qdragobject.cpp 2.26 warwick +9 -17 +src/kernel/qdragobject.h 2.13 warwick +3 -4 + + Simplify QStoredDragObject. + + +src/kernel/qevent.h 2.20 agulbra +9 -3 + + added no-answer-necessary rectangle to drag move event + + +src/kernel/qfocusdata.h 2.3 warwick +11 -3 +src/widgets/qscrollview.cpp 2.48 warwick +12 -7 +src/widgets/qscrollview.cpp 2.47 warwick +6 -4 + + Focus wrapping. + + +src/kernel/qfont.cpp 2.36 agulbra +19 -7 + + more alpha/egcs/linux workarounds + + +src/kernel/qfont_x11.cpp 2.40 warwick +3 -3 + + Go gray. + + +src/kernel/qimage.cpp 2.94 warwick +22 -1 +src/kernel/qimage.h 2.28 warwick +2 -1 +src/kernel/qpixmap.cpp 2.27 warwick +24 -1 +src/kernel/qpixmap.h 2.21 warwick +5 -2 + + Convenient input from QByteArray. + + +src/kernel/qimage.cpp 2.97 warwick +2 -2 +src/kernel/qpixmap.cpp 2.28 warwick +2 -2 + + Fix. + + +src/kernel/qmovie.cpp 1.34 warwick +11 -2 + + Code to be added and tested later. + + +src/kernel/qmovie.cpp 1.35 warwick +5 -9 +src/kernel/qmovie.h 1.11 warwick +3 -2 + + Provide QDataSource source to QMovie. + + +src/kernel/qobjcoll.h 2.7 warwick +4 -20 +src/kernel/qwidcoll.h 2.6 warwick +3 -14 + + Broken in rename. + + +src/kernel/qprinter_x11.cpp 2.17 agulbra +4 -3 + + roll back to 1.33 version + + +src/kernel/qwidget.cpp 2.113 paul +3 -2 + + Send queued-up childEvents before the first resize event + + +src/kernel/qwidget.h 2.51 warwick +3 -1 + + Separate sys-dep extra data create/delete. + + +src/qt.pro 2.27 warwick +1 -0 +src/dialogs/qfiledlg.cpp 2.72 warwick +2 -1 +src/kernel/qapplication_win.cpp 2.92 warwick +4 -4 +src/kernel/qdnd_win.cpp 2.8 warwick +115 -505 +src/kernel/qdnd_x11.cpp 2.21 warwick +2 -2 +src/kernel/qevent.h 2.18 warwick +2 -2 +src/kernel/qwidget_win.cpp 2.58 warwick +3 -1 + + Drag&Dropery. + + +src/qt.pro 2.29 warwick +2 -0 +src/kernel/qfocusdata.cpp 2.1 warwick initial checkin +src/kernel/qfocusdata.h 2.4 warwick +6 -12 +src/kernel/qwidget.cpp 2.114 warwick +3 -1 +src/widgets/qscrollview.cpp 2.49 warwick +5 -8 + + Make QFocusData clean and public. + + +src/tools/qdir.cpp 2.23 agulbra +2 -2 + + avoid a static. saves some memory. + + +src/tools/qglobal.cpp 2.16 agulbra +6 -4 + + void statics + + +src/widgets/qbutton.cpp 2.62 agulbra +5 -9 + + emit toggled() and clicked() even if this is a toggle button and will + not toggle off. + + +src/widgets/qbutton.cpp 2.63 agulbra +4 -4 + + correct toggling-when-in-group behaviour + + +src/widgets/qheader.cpp 2.46 paul +4 -4 + + Fix off by one error that caused "index out of range". + + +src/widgets/qlistview.cpp 2.118 agulbra +19 -12 + + much faster scrolling in unsorted mode; use about half as much memory + per item; free the items properly + + +src/widgets/qlistview.cpp 2.119 agulbra +2 -2 + + unsort/sort correctly + + +src/widgets/qlistview.cpp 2.120 agulbra +3 -3 + + finalize QListViewItem in the right way + + +src/widgets/qlistview.cpp 2.121 agulbra +35 -17 + + cut memory usage by another fifty per cent in the common case. QLVI + now uses 150-200 bytes of memory, down from ~800 last week. + + default to the correct height (including itemMargin()). + + change itemMargin default to one pixel, from two. + + use itemMargin both on the left and on the right edge of each column. + + ensure that children are sorted correctly in QLV::firstChild(), as + they are in QLVI::firstChild(). + + +src/widgets/qlistview.h 2.51 agulbra +2 -2 + + make setItemMargin() virtual. who put in a non-virtual setter + function? + + +src/widgets/qmenudata.cpp 2.17 agulbra +8 -6 + + DWIM: call setCheckable() in setItemChecked() if necessary + + +src/widgets/qmultilinedit.h 2.37 warwick +3 -3 + + EDIT, not ED. + + +src/widgets/qpopupmenu.cpp 2.79 warwick +2 -4 + + Roll-back my menu-stays-up "fix". + + +src/widgets/qpopupmenu.cpp 2.80 warwick +7 -2 + + Worse but better fix for allow both popup and pulldown/pushup menus. + + +src/widgets/qpushbutton.cpp 2.42 agulbra +16 -57 + + use alternative (windows-like) motif indication of default button + status, rather than the nextstep/xforms/gtk-like indication. + + +src/widgets/qsplitter.cpp 1.17 paul +6 -5 +src/widgets/qsplitter.h 1.9 paul +3 -2 + + Changed QSplitter::setFixed() to start counting at 0 instead of 1. + + *** WILL BREAK OLD CODE *** + + Also introduced FirstWidget and SecondWidget enum values to make setFixed() + calls more readable. + + +src/widgets/qsplitter.cpp 1.18 paul +160 -141 +src/widgets/qsplitter.h 1.10 paul +16 -17 + + Reworked QSplitter API. Splitter now detects its children, addFirstWidget etc + disappears. + *** WILL BREAK OLD CODE *** + + +src/widgets/qtooltip.cpp 2.48 agulbra +4 -4 + + tweak periods a bit + + +src/widgets/qtooltip.cpp 2.49 agulbra +4 -3 + + paranoia fix: don't let buggy programs introduce an infinte loop by + calling tip() with the "wrong" rectangle. + + +src/widgets/qwidgetstack.cpp 2.8 agulbra +4 -1 +src/widgets/qwidgetstack.h 2.5 agulbra +5 -1 + + aboutToShow() + + +src/widgets/qwidgetstack.cpp 2.9 agulbra +69 -12 +src/widgets/qwidgetstack.h 2.6 agulbra +4 -2 + + added decent docs. + added a visibleWidget() access function + added an aboutToShow() signal. + fixed "value of NaN" bug (0 vs. -1) + diff --git a/dist/changes-1.39-19980625 b/dist/changes-1.39-19980625 new file mode 100644 index 0000000000..c71578f251 --- /dev/null +++ b/dist/changes-1.39-19980625 @@ -0,0 +1,119 @@ + +examples/application/application.cpp 1.14 agulbra +32 -18 + + use QWhatsThis + + +examples/application/application.cpp 1.15 warwick +7 -6 +examples/application/application.h 1.5 warwick +2 -1 + + Use persistent QPrinter. + + +examples/dragdrop/dropsite.cpp 1.8 warwick +44 -24 + + Improved usage #1. + + +examples/dragdrop/dropsite.cpp 1.9 warwick +36 -81 +examples/dragdrop/dropsite.h 1.4 warwick +7 -9 +src/qt.pro 2.30 warwick +2 -0 +src/kernel/qclipboard_x11.cpp 2.15 warwick +10 -8 +src/kernel/qdnd_win.cpp 2.15 warwick +1 -18 +src/kernel/qdnd_x11.cpp 2.33 warwick +62 -67 +src/kernel/qdragobject.cpp 2.29 warwick +73 -27 +src/kernel/qdragobject.h 2.16 warwick +18 -12 +src/kernel/qdropsite.cpp 2.1 warwick initial checkin +src/kernel/qdropsite.h 2.1 warwick initial checkin +src/kernel/qwidget.h 2.52 warwick +3 -2 +src/kernel/qwidget_win.cpp 2.60 warwick +17 -7 +src/kernel/qwidget_x11.cpp 2.99 warwick +22 -12 +src/kernel/qwindowdefs.h 2.25 warwick +7 -3 +src/widgets/qlineedit.cpp 2.85 warwick +3 -3 + + Don't declare MIME types for drop sites in advance, just enable drops. + + +examples/examples.pro 2.9 agulbra +1 -0 + + add dragdrop to examples makefile + + +examples/movies/main.cpp 1.13 agulbra +9 -2 + + add use of setFilters(). + + +examples/splitter/splitter.cpp 1.1 paul initial checkin +examples/splitter/splitter.pro 1.1 paul initial checkin + + Simple QSplitter example + + +src/dialogs/qprintdialog.cpp 2.29 warwick +57 -60 + + Fixed QPrinter->QPrintDialog state-transfer bugs. + + +src/kernel/qapplication_x11.cpp 2.142 agulbra +7 -12 +src/kernel/qdnd_x11.cpp 2.37 agulbra +22 -23 +src/kernel/qdragobject.cpp 2.32 agulbra +5 -25 +src/kernel/qdragobject.h 2.19 agulbra +1 -4 + + Completely reworked drag'n'drop. + + +src/kernel/qimage.cpp 2.99 agulbra +7 -6 +src/kernel/qimage.cpp 2.98 agulbra +18 -14 +src/kernel/qmovie.cpp 1.38 agulbra +8 -7 +src/kernel/qmovie.cpp 1.37 agulbra +12 -3 + + discuss patent issues + + +src/widgets/qlineedit.cpp 2.82 agulbra +2 -3 + + reject drags that don't provide text/plain + + +src/widgets/qlistview.cpp 2.122 warwick +3 -3 + + Fix multiple-calls-to-setText() unreported bug. + + +src/widgets/qlistview.cpp 2.123 paul +16 -21 +src/widgets/qlistview.h 2.52 paul +2 -2 + + Make setPixmap() override default pixmap + + +src/widgets/qlistview.cpp 2.124 agulbra +16 -17 + + adjust drawing of focus rectangle for trees + + +src/widgets/qlistview.cpp 2.126 agulbra +1 -2 +src/widgets/qlistview.cpp 2.125 agulbra +6 -2 + + try even harder to not sort unless sorting is actually requested. + + +src/widgets/qmultilinedit.cpp 2.95 agulbra +4 -4 + + doc correction + + +src/widgets/qsplitter.cpp 1.19 paul +48 -45 + + fixing odds and ends after the API change + + +src/widgets/qsplitter.cpp 1.23 warwick +5 -4 + + Position internalsplitter in middle of mouse when dragging. + + +src/widgets/qsplitter.cpp 1.24 warwick +48 -45 + + Make bitmaps correspond to splitter dimensions. + diff --git a/dist/changes-1.39-19980706 b/dist/changes-1.39-19980706 new file mode 100644 index 0000000000..80e814a5e6 --- /dev/null +++ b/dist/changes-1.39-19980706 @@ -0,0 +1,320 @@ +doc/indices.doc 2.17 agulbra +4 -4 +doc/misc.doc 2.29 agulbra +4 -4 +doc/qcache.doc 2.4 agulbra +598 -304 +doc/qdict.doc 2.5 agulbra +4 -3 + + documented QCache/QIntCache and the iterators, fixed some types + + +doc/indices.doc 2.18 agulbra +7 -7 +extensions/imageio/doc/index.doc 1.6 agulbra +3 -3 +extensions/nsplugin/doc/annotated.doc 1.2 agulbra +2 -2 +extensions/nsplugin/doc/classes.doc 1.2 agulbra +2 -2 +extensions/opengl/src/qgl.cpp 1.20 agulbra +5 -6 +extensions/xt/doc/annotated.doc 1.2 agulbra +2 -2 +extensions/xt/doc/classes.doc 1.2 agulbra +2 -2 +src/tools/qtextstream.cpp 2.16 agulbra +1 -2 + + finished merge of qt/extensions documentation in one directory. + + +doc/indices.doc 2.20 aavit +3 -3 +doc/qcache.doc 2.8 aavit +9 -1 +examples/application/application.cpp 1.16 aavit +17 -17 +examples/widgets/widgets.cpp 2.45 aavit +29 -5 +extensions/nsplugin/src/qnp.cpp 1.22 aavit +5 -5 +extensions/opengl/doc.conf 1.14 aavit +7 -0 +extensions/opengl/src/qgl.cpp 1.23 aavit +4 -4 +extensions/xt/doc/index.doc 1.4 aavit +18 -8 +extensions/xt/src/qxt.cpp 1.5 aavit +3 -3 +src/dialogs/qmessagebox.cpp 2.50 aavit +5 -5 + + Improved doc of extensions. + + +doc/qcache.doc 2.9 aavit +47 -8 + + Documented the remaining functions in qcache et al. + + +examples/dragdrop/dropsite.cpp 1.12 paul +76 -22 +examples/dragdrop/dropsite.h 1.5 paul +14 -2 +examples/dragdrop/main.cpp 1.7 paul +8 -3 + + How to make your own dragobject class + + +examples/dragdrop/dropsite.cpp 1.9 warwick +36 -81 +examples/dragdrop/dropsite.h 1.4 warwick +7 -9 +src/qt.pro 2.30 warwick +2 -0 +src/kernel/qclipboard_x11.cpp 2.15 warwick +10 -8 +src/kernel/qdnd_win.cpp 2.15 warwick +1 -18 +src/kernel/qdnd_x11.cpp 2.33 warwick +62 -67 +src/kernel/qdragobject.cpp 2.29 warwick +73 -27 +src/kernel/qdragobject.h 2.16 warwick +18 -12 +src/kernel/qdropsite.cpp 2.1 warwick initial checkin +src/kernel/qdropsite.h 2.1 warwick initial checkin +src/kernel/qwidget.h 2.52 warwick +3 -2 +src/kernel/qwidget_win.cpp 2.60 warwick +17 -7 +src/kernel/qwidget_x11.cpp 2.99 warwick +22 -12 +src/kernel/qwindowdefs.h 2.25 warwick +7 -3 +src/widgets/qlineedit.cpp 2.85 warwick +3 -3 + + Don't declare MIME types for drop sites in advance, just enable drops. + + +examples/examples.pro 2.10 hanord +1 -0 + + Added splitter + + +examples/examples.pro 2.9 agulbra +1 -0 + + add dragdrop to examples makefile + + +examples/layouts/layouts.cpp 1.6 aavit +2 -3 + + return value from main to avoid compiler warning + + +extensions/nsplugin/src/qnp.cpp 1.21 agulbra +34 -24 +extensions/opengl/src/qgl.cpp 1.22 agulbra +7 -1 +extensions/xt/src/qxt.cpp 1.4 agulbra +6 -2 + + use new \extension in qdoc + + +src/dialogs/qprintdialog.cpp 2.30 aavit +2 -2 +src/widgets/qspinbox.cpp 2.36 aavit +22 -29 +src/widgets/qspinbox.h 2.21 aavit +1 -3 + + spinbox: better looking in windows mode (more like win32) + + +src/kernel/qapplication_x11.cpp 2.142 agulbra +7 -12 +src/kernel/qdnd_x11.cpp 2.37 agulbra +22 -23 +src/kernel/qdragobject.cpp 2.32 agulbra +5 -25 +src/kernel/qdragobject.h 2.19 agulbra +1 -4 + + protect another little bit against the other application crashing + + +src/kernel/qclipboard_x11.cpp 2.16 agulbra +2 -2 + + avoid double delete in certain cases. would cause segfault. + + +src/kernel/qdnd_win.cpp 2.16 warwick +98 -59 +src/kernel/qdropsite.cpp 2.2 warwick +3 -3 +src/kernel/qwidget_win.cpp 2.61 warwick +1 -2 + + Update for X11 changes. + + +src/kernel/qdnd_win.cpp 2.17 warwick +22 -5 +src/kernel/qdnd_x11.cpp 2.36 warwick +5 -3 +src/kernel/qdragobject.cpp 2.30 warwick +63 -7 +src/kernel/qdragobject.h 2.17 warwick +10 -3 + + Renaming; make space in API for Copy vs. Move + + +src/kernel/qdnd_x11.cpp 2.32 agulbra +13 -12 +src/kernel/qdnd_x11.cpp 2.31 agulbra +33 -8 + + support accept/ignore rectangles properly. + + +src/kernel/qdnd_x11.cpp 2.34 agulbra +7 -2 +src/widgets/qlineedit.cpp 2.86 agulbra +13 -13 + + isAccepted() of one drag enter/move is the default state for the next + (until the target changes). + + +src/kernel/qdnd_x11.cpp 2.35 warwick +20 -13 + + Fix lost-leaves. + + +src/kernel/qdnd_x11.cpp 2.38 agulbra +23 -22 + + always give the right cursor + + +src/kernel/qdnd_x11.cpp 2.39 hanord +2 -2 + + Patch from Bernd Unger to compile on irix-n64 + + +src/kernel/qdnd_x11.cpp 2.40 hanord +5 -5 +src/widgets/qheader.cpp 2.47 hanord +5 -5 +src/widgets/qstatusbar.cpp 2.15 hanord +12 -12 +src/widgets/qtoolbar.cpp 2.24 hanord +14 -15 +src/widgets/qtoolbutton.cpp 2.29 hanord +4 -4 +src/widgets/qwellarray.cpp 1.5 hanord +8 -10 + + Removed Sun CC warnings. All these warnings come from use of local + variables inside member functions clashing with private variable names + in the class. I think this is a correct warning, because if somebody + wants to access a private variable from a member function where it's + already used as a local variable, he will be somewhat confused. + + +src/kernel/qdragobject.cpp 2.34 hanord +3 -2 + + Avoid array-bounds error when copying text + + +src/kernel/qdragobject.cpp 2.35 hanord +15 -18 +src/kernel/qdragobject.h 2.20 hanord +7 -7 + + QStoredDrag::setEncodedData takes a const byte array. + parent changed to dragSource everywhere. + + +src/kernel/qimage.cpp 2.102 agulbra +9 -5 +src/kernel/qpixmap.cpp 2.31 agulbra +22 -32 + + mention the QPixmap/QImage differences prominently. other minor doc + changes. + + +src/kernel/qimage.cpp 2.99 agulbra +7 -6 +src/kernel/qimage.cpp 2.98 agulbra +18 -14 +src/kernel/qmovie.cpp 1.38 agulbra +8 -7 +src/kernel/qmovie.cpp 1.37 agulbra +12 -3 + + warn about unisys $#@! and about possible removal of gif support in a + future version of qt. + + +src/kernel/qpainter_win.cpp 2.38 hanord +2 -3 +src/kernel/qpainter_x11.cpp 2.53 hanord +2 -3 + + Fixed UMR in drawText to external device. Could be serious and crash. + + +src/kernel/qprinter_x11.cpp 2.18 agulbra +38 -11 + + OS/2 fixes from miyata. + + +src/kernel/qpsprinter.cpp 2.28 agulbra +67 -19 + + oops. we broke kmail by not supporting QFont::AnyCharSet at all. + fixed. + + also contains two other fixes that I'd delayed committing: use + colorimage only where available, else image. produce 78-character + lines, not lines of several thousand characters. + + +src/kernel/qpsprinter.cpp 2.29 agulbra +49 -28 + + make the dicts slightly bigger so more level 1 printers are happy. + avoid a memory leak in drawPixmap(). + + +src/kernel/qwidget.cpp 2.116 hanord +2 -2 + + Does destroy() AFTER deleteExtra(), because deleteExtra() calls + deleteSysExtra() which unregisters OLE stuff on Windows (and needs the Win + ID). + + +src/moc/moc.1 2.7 hanord +11 -3 +src/moc/moc.l 2.3 hanord +57 -7 +src/moc/moc.y 2.24 hanord +22 -12 + + Warwick's support for #ifdef and #ifndef added + + +src/qt.pro 2.33 hanord +8 -7 + + Changed DEPENDPATH to relative, makes makefiles movable. + Sorted a couple of filenames. + + +src/qt.pro 2.34 hanord +1 -1 + + Changed version number to 1.40 + + +src/tools/qglobal.h 2.53 agulbra +3 -3 + + 1.40. yes it's true. + + +src/tools/qglobal.h 2.55 agulbra +3 -3 + + make one final snapshot + + +src/widgets/qbuttongroup.cpp 2.14 agulbra +3 -3 + + roll back my "don't delete twice" fix: it was a "don't delete once" + fix, in fact. oops. + + +src/widgets/qheader.cpp 2.49 agulbra +2 -1 + + memory leak gone + + +src/widgets/qlabel.cpp 2.34 agulbra +6 -9 + + respect buddy's focus policy and other accessibility. + + +src/widgets/qlineedit.cpp 2.83 agulbra +4 -4 + + use enter event and accept drops in the entire rectangle. + + +src/widgets/qlineedit.cpp 2.84 agulbra +8 -1 + + ...and the drop should happen in the right place. oooh, this is so + polished :) + + +src/widgets/qlineedit.cpp 2.88 agulbra +2 -2 + + avoid memory leak when dragging out of qle + + +src/widgets/qlineedit.cpp 2.89 agulbra +5 -1 + + #ifdef out dnd support. it works on x11, not quite on windows. + besides, having QLineEdit work differently from typical windows + widgets and cannot be changed is a bad policy. + + +src/widgets/qlistview.cpp 2.129 agulbra +3 -2 + + don't accept() enter/return key presses. qdialog. + + +src/widgets/qlistview.cpp 2.130 agulbra +8 -9 + + avoid a couple of memory leaks + + +src/widgets/qprogressbar.cpp 2.21 aavit +10 -1 +src/widgets/qtableview.cpp 2.51 aavit +2 -2 + + Progressbar: allow changing of guistyle before show(). Should really + implement styleChanged(); in 2.0. + Tableview: Avoid infinite loop. + + +src/widgets/qspinbox.cpp 2.38 aavit +2 -2 +src/widgets/qwidgetstack.cpp 2.11 aavit +13 -9 + + Widgetstack: be robust when got no children. spinbox: comment + + +src/widgets/qsplitter.cpp 1.24 warwick +48 -45 + + Make bitmaps correspond to splitter dimensions. diff --git a/dist/changes-1.40 b/dist/changes-1.40 new file mode 100644 index 0000000000..1f5f98675e --- /dev/null +++ b/dist/changes-1.40 @@ -0,0 +1,291 @@ +Here is a list of user-visible changes in Qt from 1.33 to 1.40. + +Qt 1.40 supports drag and drop, with a simple, platform independent +API. There are eleven new widget classes in 1.40. Asynchronous I/O +support is now in the official Qt API. + +Since Qt no longer supports any platforms that only supports 8.3 +format file names, the file names of the Qt source and include files +have been made simpler. #include instead of qcombo.h, +etc. The old names are still present for compatibility. + +The new Qt Xt/Motif Extension allows Qt widgets and applications to +coexist with old Xt/Motif-based applications and widgets. + +There are more than one hundred new functions added to existing +classes and, as usual, we fixed some bugs, made some more speedups, +and improved the documentation. + + +**************************************************************************** +* New classes * +**************************************************************************** + +* New widgets + + QHeader - Table header + QListView - Multicolun listview/treeview + QMainWindow - Application main window + QScrollView - Scrolling area (successor of QwViewPort) + QSpinBox - Spin button + QSplitter - Paned window + QStatusBar - Status bar + QToolBar - Container for tool buttons (and other widgets) + QToolButton - Fancy push button with auto-raise + QWhatsThis - Light weight help system + QWidgetStack - Stack of widgets + +* Support classes + + QFileIconProvider - Provides icons for the file dialog + QIconSet - Set of icons for different states + QListViewItem - Content of a QListView + QCheckListItem - Checkable list view item + +* Drag and drop related classes + + QDragObject + QStoredDrag + QTextDrag + QImageDrag + QDragManager + QDropSite + +* Asynchronous I/O + + QAsyncIO + QDataPump + QDataSink + QDataSource + QDataStream + QIODeviceSource + QImageConsumer + QImageDecoder + QImageFormat + QImageFormatType + + +* New Events + + QShowEvent + QHideEvent + QDragMoveEvent + QDragEnterEvent + QDragResponseEvent + QDragLeaveEvent + QDropEvent + QChildEvent + + + +**************************************************************************** +* Enhancements from 1.33 to 1.40 * +**************************************************************************** + +The file and print dialogs are far better. + +Layouts will now automatically readjust if child widgets change +maximum/minimum sizes, or are deleted. + +QFont now supports KOI8R + +The reference documentation of the extensions is now integrated with +the main reference documentation in the qt/html directory. + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +None known. + + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +none + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +none + +**************************************************************************** +* Deprecated functions * +**************************************************************************** +Old function: Replaced by: +------------- ----------- +QPixmap::isOptimized QPixmap::optimization +QPixmap::optimize QPixmap::setOptimization +QPixmap::isGloballyOptimized QPixmap::defaultOptimization +QPixmap::optimizeGlobally QPixmap::setDefaultOptimization + + +**************************************************************************** +* New global functions +**************************************************************************** + + bitBlt( QImage* dst, int dx, int dy, const QImage* src, + int, int, int, int, int conversion_flags ); + + bitBlt( QPaintDevice *dst, int, int, const QImage* src, + int, int, int, int, int conversion_flags ); + +**************************************************************************** +* New public/protected functions added to existing classes * +**************************************************************************** + +QApplication::sendPostedEvents( QObject *receiver, int event_type ) [static] + +QButton::setDown() +QButton::toggle() + +QButtonGroup::setButton( int id ) +QButtonGroup::buttonToggled( bool on ) + +QComboBox::setListBox( QListBox * ) +QComboBox::listBox() + +QComboBox::setAutoCompletion( bool ) +QComboBox::autoCompletion() + +QComboBox::clearEdit() +QComboBox::setEditText( const char * ) + +QDict::resize() + +QDir::drives() [static] +QDir::remove() + +QFileDialog::getExistingDirectory() [static] +QFileDialog::setIconProvider() [static] +QFileDialog::iconProvider() [static] +QFileDialog::setSelection( const char* ) +QFileDialog::setMode( Mode ) +QFileDialog::mode() +QFileDialog::setFilter( const char * ) +QFileDialog::setFilters( const char ** ) +QFileDialog::setFilters( const QStrList & ) +QFileDialog::addWidgets( QLabel *, QWidget *, QPushButton * ) [protected] + +QFont::isCopyOf( const QFont & ) + +QFontMetrics::minLeftBearing() +QFontMetrics::minRightBearing() +QFontMetrics::inFont(char) +QFontMetrics::leftBearing(char) +QFontMetrics::rightBearing(char) +QFontMetrics::boundingRect( int x, int y, int w, int h, int flags, + const char *str, int, int, int *, char ** ) +QFontMetrics::size( int flags, char *str, int, int, int *, char ** ) + +QFrame::margin() +QFrame::setMargin( int ) + +QGManager::unFreeze() +QGManager::remove( QWidget *w ) +QGManager::setName( QChain *, const char * ) + +QGridLayout::numRows() +QGridLayout::numCols() +QGridLayout::expand( int rows, int cols ) + + +QImage::copy(int x, int y, int w, int h, int conversion_flags=0) +QImage::copy(QRect&) +QImage::allGray() +QImage::isGrayscale() +QImage::convertDepthWithPalette( int, QRgb* p, int pc, int cf=0 ) +QImage::smoothScale(int width, int height) +QImage::loadFromData( QByteArray data, const char *format=0 ) + +QIntDict::resize() + +QLabel::clear() + +QLCDNumber::sizeHint() const + +QLineEdit::setEnabled( bool ) +QLineEdit::setFont( const QFont & ) +QLineEdit::setSelection( int, int ) +QLineEdit::setCursorPosition( int ) +QLineEdit::cursorPosition() const +QLineEdit::validateAndSet( const char *, int, int, int ) +QLineEdit::insert( const char * ) +QLineEdit::clear() +QLineEdit::repaintArea( int, int ) [protected] + +QListBox::setFixedVisibleLines( int lines ) +QListBox::sizeHint() +QListBox::ensureCurrentVisible( int ) + +QMenuData::insertItem( const char *text, + const QObject *receiver, const char *member, + int accel, int id, int index = -1 ) +QMenuData::insertItem( const QPixmap &pixmap, + const QObject *receiver, const char *member, + int accel, int id, int index = -1 ) +QMenuData::insertItem( const QPixmap &pixmap, const char *text, + const QObject *receiver, const char *member, + int accel, int id, int index = -1 ) +QMenuData::findItem( int id, QMenuData ** parent ) + + +QMovie::QMovie(QDataSource*, int bufsize=1024) + +QMultiLineEdit::setFixedVisibleLines( int lines ) + +QObject::tr( const char * ) +QObject::name( const char * defaultName ) + +QPainter::QPainter( const QPaintDevice *, const QWidget * ) +QPainter::begin( const QPaintDevice *, const QWidget * ) +QPainter::xForm( const QPointArray &, int index, int npoints ) +QPainter::xFormDev( const QPointArray &, int index, int npoints ) +QPainter::drawImage() +QPainter::drawTiledPixmap() +QPainter::drawPicture( const QPicture & ) + +QPalette::isCopyOf( const QPalette & ) + +QPixmap::loadFromData( QByteArray data, + const char *, + int ) +QPixmap::optimization() +QPixmap::setOptimization( Optimization ) +QPixmap::defaultOptimization() +QPixmap::setDefaultOptimization( Optimization ) + +QPopupMenu::exec( const QPoint &, int ) +QPopupMenu::aboutToShow() + +QPrinter::setPageOrder( PageOrder ) +QPrinter::pageOrder() +QPrinter::setColorMode( ColorMode ) +QPrinter::colorMode() + +QPtrDict::resize() + +QPushButton::setIsMenuButton( bool ) +QPushButton::isMenuButton() + +QRegion::QRegion( int x, int y, int w, int h, RegionType = Rectangle ) +QRegion::boundingRect() +QRegion::rects() + +QSize::expandedTo() +QSize::boundedTo() + +QWidget::isEnabledTo(QWidget*) +QWidget::isEnabledToTLW() +QWidget::fontPropagation() +QWidget::setFontPropagation( PropagationMode ) +QWidget::palettePropagation() +QWidget::setPalettePropagation( PropagationMode ) +QWidget::isVisibleTo(QWidget*) +QWidget::setAcceptDrops( bool on ) +QWidget::acceptDrops() +QWidget::focusData() [protected] + diff --git a/dist/changes-1.41 b/dist/changes-1.41 new file mode 100644 index 0000000000..31ccc55e9e --- /dev/null +++ b/dist/changes-1.41 @@ -0,0 +1,76 @@ +Here is a list of user-visible changes in Qt from 1.40 to 1.41 + +QT is now available as a DLL on Windows. + +Many bugfixes have been added. The Windows keys are supported on X11, +and the file dialog has been improved a little. + +Drag and drop has been considerably improved, both on Windows and X11. + +QPrinter now knows many more paper sizes. + +It now possible to create masked (nonrectangular) widgets. + +QScrollBar now supports insanely big ranges. + +QSlider now supports page step as well as line step. + +**************************************************************************** +* New classes * +**************************************************************************** + +None. + +**************************************************************************** +* Enhancements from 1.33 to 1.40 * +**************************************************************************** + + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +None. + + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +None + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +None + +**************************************************************************** +* Deprecated functions * +**************************************************************************** + +None. + + +**************************************************************************** +* New global functions * +**************************************************************************** + +None. + +**************************************************************************** +* New public/protected functions added to existing classes * +**************************************************************************** + +QFileDialog::getOpenFileNames() +QProgressDialog::setMinimumDuration( int ) +QProgressDialog::minimumDuration() const +QMouseEvent::globalPos() const +QMouseEvent::globalX() const +QMouseEvent::globalY() const +QFont::rawName() const +QWidget::setMask(const QRegion& region) +QWidget::setMask(QBitmap bitmap) +QWidget::clearMask() +QListView/QListViewItem: Various functions to create children in specified order diff --git a/dist/changes-1.42 b/dist/changes-1.42 new file mode 100644 index 0000000000..7e47a53691 --- /dev/null +++ b/dist/changes-1.42 @@ -0,0 +1,71 @@ +Here is a list of user-visible changes in Qt from 1.41 to 1.42. The +usual bugfixes have been added. + +**************************************************************************** +* New classes * +**************************************************************************** + +None. + +**************************************************************************** +* Enhancements from 1.41 to 1.42 * +**************************************************************************** + +The Windows version now builds as a DLL. + +The file dialog has various UI tweaks. + +More sanity checks have been added. + +On X11, the postscript output from a few programs will be much smaller +than it used to be. + +Windows 98 is now treated as a separate version of Windows, like NT +and Windows 95. + +The keyboard interface of buttons groups/dialogs has been improved. + +QMultiLineEdit avoids flicker in some cicumstances where it would +flicker up to now. + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +QKeyEvent now behaves as documented: isAccepted() is TRUE by default +where it would sometimes default to FALSE. Some dialogs may depend on +the bug. The most likely symptom of such buggy dialogs is that the +Enter/Return key does not work, and the most likely fix for such bugs +is to insert "e->ignore();" at the start of keyPressEvent(QKeyEvent*e) +in such dialogs. + +**************************************************************************** +* Changes that might generate compile errors * +* when compiling old code * +**************************************************************************** + +None + +**************************************************************************** +* Type changes that might generate warnings: * +**************************************************************************** + +None + +**************************************************************************** +* Deprecated functions * +**************************************************************************** + +None. + + +**************************************************************************** +* New global functions * +**************************************************************************** + +None. + +**************************************************************************** +* New public/protected functions added to existing classes * +**************************************************************************** + diff --git a/dist/changes-2.0.1 b/dist/changes-2.0.1 new file mode 100644 index 0000000000..4a224bfe76 --- /dev/null +++ b/dist/changes-2.0.1 @@ -0,0 +1,101 @@ +Changes in Qt 2.0.1 +------------------- + +Qt 2.0.1 is a bugfix release, forward and backward compatible with Qt 2.0. +While all changes are behind the API, some bugfixes may cause differences +in runtime behaviour - such fixes are marked in yellow with a "*". + + +General improvements +-------------------- + +PNG/IO Fix crash on empty images. + +QAccel Fix accelerators using Shift with other metakeys. + +QFileInfo Fix for AIX/gcc. + +QFontDatabase Fix centered text for extreme-bearing fonts. + +QHeader Resizing cells of horizontal header is now more flicker-free. + +*QLayout Fix deletion of child layouts. Let minimumSize() override +Fixed sizePolicy(). + +QLcdNumber Reduced flicker. + +QLineEdit Home etc. now clear selection even if the cursor doesn't move. + +QListBox Draw focus rect correctly. Fix keyboard navigation. + +QListView Make resizing flicker-free. No selection on release. + +QMainWindow Fix crash in addToolBar(). + +QMap Work on more compilers. + +QMenuBar Less flicker. + +QPainter Fix QFontMetrics::width(QChar). Speedup drawText/boundingRect. + +*QScrollView Put the scrollbars inside the frame in WindowsStyle. + +QSplitter Fix bug where a handle could be moved past the next. + +QString Fix QString::replace(QRegExp(),...). Speed ups. Fix fill() +with zero length crash. + +QTL AIX fixes. + +QTextBrowser Fixed type=detail popup. + +*QTextCodec Use the defacto KOI8 standard if no charset specified for +ru_ locale. + +QValueList AIX, aCC fixes. + +msg2qm More robust. + + + +Windows-specific fixes +---------------------- + +QApplication Fix Key_Enter (was always Key_Return). Fix numeric +accelerators. + +QFontDatabase Fix italic fonts in Window font dialog. + +*QMime Use CRLF with text clip/dnd on Windows. + +QPainter Avoid failure when painting pixmap xformed into nothing. +Improved drawing of scaled fonts on win95/98. + +*QPixmap Fix mask on QPixmap::convertToImage(). + +QPrinter Fix setup() on Win95/98. + +QToolTip Use system settings for tool tips on Windows. + +*QWidget Fix QWidget::scroll(rect) for non-topleft rectangles. + + +X11-specific fixes +------------------ + +DnD Fix Escape during DnD. + +*QApplication Generate MouseMove event on XCrossingEvent. Support more +XIM servers (eg. VJE Delta). Use 11pt font as default rather than 12pt +on larger than 95DPI displays. + +*QFont Correct DPI for fontsets (as for regular fonts). Prefer unscaled +(ie. perfect-match bitmaps) over scaled fonts. + +*QPaintDevice Round DPI. + +QWidget QWidget::showMaximized() works on X11 now. Fixed ReparentNotify +handling. + +Xt extension Fixes. + diff --git a/dist/changes-2.00 b/dist/changes-2.00 new file mode 100644 index 0000000000..1dcfea7933 --- /dev/null +++ b/dist/changes-2.00 @@ -0,0 +1,151 @@ +Qt 2.0 introduces a wide range of major new features as well as +substantial improvements over the 1.x series. The documentation has +been significally extended and improved. + +This file will only give an overview of the main changes since version +1.44. A complete list would simply be too large to be useful. For +more detail see the online documentation which is included in this +distribution, and also available on http://doc.trolltech.com/ + +The Qt version 2.x series is not binary compatible with the 1.x +series. This means programs compiled with Qt version 1.x must be +recompiled to work with Qt 2.0. + +Qt 2.0 is mostly, but not completely, source compatible with Qt 1.x. +See the document "Porting from Qt 1.x to Qt 2.0" in the Online +Reference Documentation for information on how to port an existing Qt +1.x-based program to Qt 2.0. Note in particular the automatic porting +script included - it does a lot of the work for you. + +As for 1.x, the API and functionality of Qt is completely portable +between Microsoft Windows and X11. And between Windows 95, 98 and NT: +Unlike most toolkits, Qt lets a single executable work on all three. + +**************************************************************************** +* New major features * +**************************************************************************** + + +* Support for international software development: + QTranslator and the QObject::tr() function + QTextCodec (and subclasses) + QString is now a 16-bit Unicode string with good support for + legacy 8-bit interoperation. (The old 8-bit string class + from Qt 1.x has been renamed to QCString.) + QChar - a Unicode character + +* Rich Text + QTextView - formatted text and images + QTextBrowser - navigate formatted text and images + QStyleSheet - define your own XML formatting tags + QSimpleRichText - display rich text anywhere + +* Convenient and powerful new collection classes: + QMap - QDict with arbitrary keys + QValueList - QList of types other than pointers + QStringList - QValueList with helper functions + +* Dialogs + QColorDialog - user picks a color + QFontDialog - user picks a font + QWizard - framework for leading users through steps + +* Layout + QGrid/QHBox/QVBox - grid and boxes of widgets automatically assembled + QHGroupBox/QVGroupBox - easy framed groups of widgets + QSizePolicy - a widget's abilities to change size in different ways + +* Custom layouts + New, much simpler and more powerful API for creating custom layouts + +* PNG Support + PNG support is now included in the core library + +* Support for generalized configurable GUI styles: + QStyle and subclasses + +* Session management + QSessionManager - saving state when the system shuts down + +* Extended coordinate system + QPoint, QPointArray, QSize and QRect now have 32-bit coordinates + +* Cleaner namespace + Global functions, enums and macros now either start with a 'q' or + have been moved into the new namespace class "Qt" + +**************************************************************************** +* List of removed classes * +**************************************************************************** + +* QGManager + Use the new custom layout API. + +* QPointVal, QPointData + Use QPoint. + +* QUrlDrag + Changed to QUriDrag + +* QWindow + Use QWidget + +**************************************************************************** +* List of new classes * +**************************************************************************** + +* QCDEStyle +* QChar +* QColorDialog +* QCommonStyle +* QConstString +* QCString +* QDragEnterEvent +* QDragLeaveEvent +* QDropSite +* QFontDialog +* QGLayoutIterator +* QGrid +* QHBox +* QHButtonGroup +* QHGroupBox +* QHideEvent +* QLayoutItem +* QLayoutIterator +* QMimeSource +* QMimeSourceFactory +* QMotifStyle +* QPlatinumStyle +* QSessionManager +* QShowEvent +* QSimpleRichText +* QSizeGrip +* QSizePolicy +* QSortedList +* QSpacerItem +* QStringList +* QStyle +* QStyleSheet +* QStyleSheetItem +* Qt +* QTab +* QTabWidget +* QTextBrowser +* QTextCodec +* QTextDecoder +* QTextEncoder +* QTextIStream +* QTextOStream +* QTextView +* QTranslator +* QUriDrag +* QVBox +* QVButtonGroup +* QVGroupBox +* QWheelEvent +* QWidgetItem +* QWindowsStyle +* QWizard + +For details, see e.g http://doc.trolltech.com/qcdestyle.html (or any +other class name, lowercased). diff --git a/dist/changes-2.00beta1 b/dist/changes-2.00beta1 new file mode 100644 index 0000000000..5dccbad577 --- /dev/null +++ b/dist/changes-2.00beta1 @@ -0,0 +1,61 @@ + +The Qt version 2.x series is not binary compatible with the 1.x +series. This means programs compiled with Qt version 1.x must be +recompiled to work with Qt 2.0. + +Qt 2.0 is mostly, but not completely, source compatible with Qt 1.x. +See the document "Porting from Qt 1.x to Qt 2.0" in the Online +Reference Documentation for information on how to port an existing +Qt 1.x-based program to Qt 2.0. + + +**************************************************************************** +* New classes * +**************************************************************************** + + +* Support for generalized configrable styles: + + QStyle and subclasses + +* Support for international software development: + + QTranslator and the QObject::tr() function + QTextCodec (and subclasses) + QString - a Unicode string + QChar - a Unicode character + +* Convenient and powerful new collection classes: + QMap - QDict with arbitrary keys + QValueList - QList of types other than pointers + QStringList - QValueList with helper functions + +* Dialogs + QColorDialog - user picks a color + QFontDialog - user picks a font + QWizard - framework for leading users through steps + +* Layout + QGrid/QHBox/QVBox - grid and boxes of widgets automatically assembled + QHGroupBox/QVGroupBox - easy framed groups of widgets + +* PNG Support + PNG support is always compiled into Qt + +* Rich Text + QTextView - formatted text and images + QTextBrowser - navigate formatted text and images + QStyleSheet - define your own XML formatting tags + QSimpleRichText - display rixh text anywhere + +* Session management + QSessionManager - safe state when system shuts down + + +**************************************************************************** +* Major changes in existing classes * +**************************************************************************** + +QString is now 16-bit Unicode. + +QPoint, QPointArray, QSize and QRect now have 32-bit coordinates. \ No newline at end of file diff --git a/dist/changes-2.00beta2 b/dist/changes-2.00beta2 new file mode 100644 index 0000000000..943c3685cf --- /dev/null +++ b/dist/changes-2.00beta2 @@ -0,0 +1,85 @@ +Qt 2.0 Beta2 is not binary compatible with Beta1, this means that any +programs linked with Beta1 must be recompiled. + +The most important fixes since Beta 1: + +configure + Fixed the libzlib typo. + Added -lflags argument. + +Platforms + Fixes for Borland C++, Solaris and AIX + +QFileDialog + Several user interface improvements + +QPrinter + Plain text printing works again. + Multiple page printing fixed. + +QWidget + New widget flag WStyle_Dialog + + +Major changes since 1.4x: + +The Qt version 2.x series is not binary compatible with the 1.x +series. This means programs compiled with Qt version 1.x must be +recompiled to work with Qt 2.0. + +Qt 2.0 is mostly, but not completely, source compatible with Qt 1.x. +See the document "Porting from Qt 1.x to Qt 2.0" in the Online +Reference Documentation for information on how to port an existing +Qt 1.x-based program to Qt 2.0. + + +**************************************************************************** +* New classes * +**************************************************************************** + + +* Support for generalized configrable styles: + + QStyle and subclasses + +* Support for international software development: + + QTranslator and the QObject::tr() function + QTextCodec (and subclasses) + QString - a Unicode string + QChar - a Unicode character + +* Convenient and powerful new collection classes: + QMap - QDict with arbitrary keys + QValueList - QList of types other than pointers + QStringList - QValueList with helper functions + +* Dialogs + QColorDialog - user picks a color + QFontDialog - user picks a font + QWizard - framework for leading users through steps + +* Layout + QGrid/QHBox/QVBox - grid and boxes of widgets automatically assembled + QHGroupBox/QVGroupBox - easy framed groups of widgets + +* PNG Support + PNG support is always compiled into Qt + +* Rich Text + QTextView - formatted text and images + QTextBrowser - navigate formatted text and images + QStyleSheet - define your own XML formatting tags + QSimpleRichText - display rixh text anywhere + +* Session management + QSessionManager - safe state when system shuts down + + +**************************************************************************** +* Major changes in existing classes * +**************************************************************************** + +QString is now 16-bit Unicode. + +QPoint, QPointArray, QSize and QRect now have 32-bit coordinates. \ No newline at end of file diff --git a/dist/changes-2.00beta3 b/dist/changes-2.00beta3 new file mode 100644 index 0000000000..08f222aac3 --- /dev/null +++ b/dist/changes-2.00beta3 @@ -0,0 +1,35 @@ +Qt 2.0 Beta3 is not binary compatible with Beta2, this means that any +programs linked with Beta2 must be recompiled. + +The most important fixes since Beta 2: + +platforms + 64-bits, FreeBSD and gcc 2.7 fixes + +QLayoutIterator/QGLayoutIterator + The custom layout API has been changed: void removeCurrent() + has been replaced by QLayoutItem* takeCurrent(). + +QLabel + The functions setMargin() and margin() have been renamed to + setIndent() and indent, to avoid collision with QFrame::setMargin(). + +QAccel + Non-latin1 accelerators are now supported. + +QTranslator/findtr/msg2qm/mergetr + All reported bugs fixed and improvements made. + +Rich Text + Many improvements and fixes such as supressed warnings in the + QBrowser example. Support for logical font sizes. + +QApplication + lastWindowClosed() now works with virtual desktops. Desktop settings + on Windows improved. + +QScrollView / QMultiLineEdit + Speedups with a new widget flag: WNorthWestGravity. + +QPopupMenu / QMenuBar + Speedups, less flicker. diff --git a/dist/changes-2.1.0 b/dist/changes-2.1.0 new file mode 100644 index 0000000000..a0794cf86f --- /dev/null +++ b/dist/changes-2.1.0 @@ -0,0 +1,314 @@ +Qt 2.1 introduces new features as well as many improvements over the +2.0.x series. This file will only give an overview of the main changes +since version 2.0.2. A complete list would simply be too large to be +useful. For more detail see the online documentation which is included +in this distribution, and also available on +http://doc.trolltech.com/ + +The Qt version 2.1 series is binary compatible with the 2.0.x +series - applications compiled for 2.0 will continue to run with 2.1. + +As with previous Qt releases, the API and functionality of Qt is +completely portable between Microsoft Windows and X11. It is also portable +between Windows 95, 98 and NT; unlike most toolkits, Qt lets a single +executable work on all three. + +**************************************************************************** +* Overview * +**************************************************************************** + +As usual, large sections of the documentation have been revised and +lots of new documentation has been added. + +Much work went into existing classes, based on all the feedback we got +from our users. A warm thank you to you all at this point, we honestly +hope to satisfy most of your wishes with the new release. + +Among the things that got a lot of polishing is the new geometry +management system that was introduced with the 2.x series. Some +classes, such as QBoxLayout, have been rewritten and many size hints +and size policies were optimized. As usual with newly introduced +systems, the occasional bug has been fixed as well. As a result, +layout in Qt-2.1 is not only nicer but also faster. + +Big parts of the file dialog have been rewritten. It is now +synchronized in terms of features with the common Windows dialog, +including fancy drag'n'drop and in-place renaming. You can customize +both parts of the dialog, the front-end with info and preview widgets, +the back-end with different network protocols (see the QFileDialog and +QNetworkProtocol documentation for details). + +Especially interesting for dynamic Qt applications is the newly +introduced property system. Many interesting things, from scripting up +to graphical user interface builders, become easier. The technology +requires a new macro Q_PROPERTY and a new revision of Qt's meta object +compiler (moc). See the Qt documentation for details. + +Due to strong customer demand, we added a cross-platform way to easily +implement multi-document interfaces (known as 'MDI'). The widget is +called QWorkspace and makes this task trivial. + +On X11, text dropping from Motif drag'n'drop applications has been +added, to make your Qt applications inter-operable with those Motif +applications that survived Y2K. + +The rich text system, first introduced in Qt-2.0, has been +revised. Apart from great speed improvements, it now supports HTML +tables as well as floating images. + +QMultiLineEdit, the text input field in Qt, got the missing word wrap +functionality. It's probably the last big extension we will add to +that widget. In Qt 3.0, it will be replaced by a fancier, faster and +more powerful QTextEdit widget that also deals with different colors +and fonts in a way similar to the existing QTextView. + +Qt follows the respective GUI style guides even more closely. This +includes honoring desktop settings, and keyboard shortcuts such as +Ctrl-Z/Y for undo/redo in line edit and multi-line edit +controls. Dialog handling for both modal and non-modal dialogs has +been improved to follow the platform conventions precisely. + +With QIconView, we added a powerful new visualization widget similar +to QListView and QListBox. It contains optinally labelled pixmap items +that the user can select, drag around, rename, delete and more. + +Compared to the previous release, we have managed to reduce overall +memory consumption while improving execution speed and features. + +Below is a list of the major new features in existing classes as well +as short descriptions of all new classes and the changes in some of +the extensions shipped with Qt. + + +**************************************************************************** +* New major features in existing classes * +**************************************************************************** + +QApplication - new function wakeUpGuiThread() to simplify using threads + with Qt. + +QArray - added sorting and binary search. + +QColor - custom color support added. qRgb(r,g,b) helper function + now sets an opaque alpha value instead of a transparent + one. + +QComboBox - support for text items with icons. + +QFileDialog - many new features including fancy drag'n'drop + and in-place renaming. + Methods like setInfoPreviewWidget()and + setContentsPreviewWidget() make it easy to customize + the dialog extensively. With QUrlOperator and the + QNetworkProtocol abstraction, the dialog can operate + transparently by various different network protocols, + such as HTTP and FTP (see the Network Extension). + +QFocusEvent - carries a reason() for the event. Possible reasons are + Mouse, Tab, ActiveWindow, ShortCut and other. The + addition makes line edit controls behave properly. + +QHeader - added optional visual sort indicator. Revisited API that + operates on sections only (solves the 'logical' vs. 'actual' + index confusion). A reworked 'table' example shows how + to use QHeader in combination with a scrollview to create + a simple spreadsheet. + +QListBox - many signals and functions added for convenience and + greater flexibility. + +QListView - various selections modes similar to QListBox, many + new functions and signals added for convenience and + greater flexibility. + +QMainWindow - implemented draggable and hidable toolbars. A menubar + can be made draggable by simply putting it in a toolbar. + +QMetaObject - Parts of the API made public. The meta object allows + applications to access information about an object's + properties as well as its signals and slots. + +QMultiLineEdit - added different word wrap modes: WidgetWidth, + FixedPixelWidth and FixedColumnWidth. + +QObject - property access functions property() and setProperty(). + +QPen - added adjustable cap and join styles. + +QPopupMenu - added support for tear-off menus, custom items + and widget items. + A new function setItemParameter() makes it possible + to distinguish between several menu items connected to + one single slot. + +QPrinter - Now allows printing to the default printer without doing + setup() first. + +QProgressDialog - auto-reset and auto-close modes. + +QPushButton - added a menu button mode with setPopup(). + +QScrollView - support for auto-scrolling on drag move events (drag + auto scroll mode). + +QSignal - optional additional integer parameter for the emitted + signal. + +QSimpleRichText - added adjustSize() function that implements a clever + size hint. Vertical break support for printing. inText() + hit test. + +QSpinBox - different button symbols, currently UpDownArrows and + PlusMinus. + +QSplitter - supports three resize modes now, Stretch, KeepSize + and FollowSizeHint. + +QString - new functions setUnicode(), setUnicodeCodes(), setLatin1(), + startsWith() and endsWith() + +QStringList - new functions fromStrList(), split(), join() and grep(). + +QStyle - some extensions for menu button indicators, default + button indicators, variable scrollbar extends and toolbar + handles. + +QStyleSheet - a couple of tags added to the default sheet, such as + U, NOBR, HEAD, DL, DT, DD and table support (TABLE, TR, + TD, TH). Many attributes added to existing tags. + +QTextView - basic table support. Contents is selectable, selections + can be pasted/dragged into other widgets. + +QToolBar - stretchable depending on the orientation (setHorizontalStretchable() + and setVerticalStretchable(). Added orientationChanged() signal. + +QToolButton - added optional delayed menu with setPopup() and + setPopupDelay(). Auto-raise behaviour adjustable. + +QWidget - new widget flag WStyle_ContextHelp that adds a + context-help button to the window titlebar. The + button triggers "What's This?"-help. The flag works + with MS-Windows and future versions of X11 desktops + such as KDE-2.0. + + - New function showFullScreen(). + + - Enabling and disabling with setEnabled() propagates to + children. + + - Changed isVisible(). It now returns whether a widget + is mapped up to the toplevel widget (the previous + implementation only returned isVisibleTo(parentWidget()). + + - New property 'backgroundOrigin' that lets a widget draw + its background relatively to its parent widget's coordinate + system. This makes pseudo-transparency possible, without + the overhead of a real widget mask. + + +**************************************************************************** +* New clases * +**************************************************************************** + +QCustomMenuItem - an abstract base class for custom menu items in + popup menus. + +QFontDataBase - provides information about the available fonts. Not really + a new class (it was used internally for the QFontDialog), + but for the first time public API. + +QGuardedPtr - a template class that provides guarded pointers to + QObjects. + +QIconView - a sophisticated new widget similar to QListView and + QListBox. An iconview contains optinally labelled pixmap + items that the user can select, drag around, rename, delete + and more. The widget is highly optimized for speed and + large amounts of icons. + +QInputDialog - a convenience dialog to get some simple input values from + the user. + +QMetaProperty - stores meta data about properties. Part of the meta + object system. + +QNetworkProtocol- base class for network protocols, provides + a common API for network protocols. + +QUrl/ +QUrlOperator - provides an easy way to work with URLs. + +QVariant - a tagged union for the most common Qt data types. + +QValueStack - a value-based stack container. + +QWorkspace - provides a workspace that can contain decorated + windows as opposed to frameless child widgets. + QWorkspace makes it easy to implement a multi-document + interface (MDI). + +QBig5Codec - provides support for the Big5 Chinese encoding. + + +**************************************************************************** +* Changes which may affect runtime behaviour * +**************************************************************************** + +QDataStream / QPicture + To accomodate for improved functionality, the stream serialization format + of QString and QPen has changed in Qt 2.1. The format version + number has been increased to 3. Compatibility has been kept, so + applications built with this version of Qt are automatically able to read + QDataStream and QPicture data generated by earlier Qt 2.x versions. But if + your application needs to generate data that must be readable by + applications that are compiled with earlier versions of Qt, you must use + QDataStream::setVersion() (if the data contains QString or QPen objects). + See the documentation of this function for further discussion. + +QPainter::drawPolygon() + An outline is no longer drawn in the brush color if NoPen is specified. + This matches the behaviour on Windows and ensures that the area + painted in this case is the same pixels defined by a QRegion made + from the polygon. To get the old behaviour, you can call + painter.setPen(painter.brush()) prior to painting, which will also + work on Windows. + +QPushButton::sizeHint() + The size hint of auto-default push buttons has been slightly + increased in order to reserve space for a default button indicator + frame. This is necessary for a proper Motif or Platinum emulation. If + this change destroys your geometry management, a auto-default button + is probably not what you wanted anyway. Simply call + setAutoDefault(FALSE) on these push buttons to get the old behaviour. + +QWidget + Font and palette propagation has changed totally (from "almost + brain-dead" to working). In practice, the only changes we've seen are + to the better. + +QColor + qRgb(r,g,b) now sets a default opaque alpha value of 0xff instead of + a transparent 0x00 alpha value formerly. Use qRgb(r,g,b,a) if you do + need a transparent alpha value. + +QPalette + It turned out that the old normal/active/disabled set of color groups + didn't work very well, except in the simplest hello-world examples, + that it couldn't be fixed without nasty hacks, and that during five + years nobody had discovered the bugs. So, we've dropped our broken + attempt at Tcl/Tk L&F compatibility, and added support for Windows + 2000 and Macintosh L&F compatibility instead. The Macintosh and + Windows 2000 looks differentiate between the window with focus and + other windows. Qt calls the color groups QPalette::active() and + QPalette::inactive() respectively. + +QGridLayout/QBoxLayout + setMargin() now also works on child layouts. As a result of this + change, the geometry() of a layout now includes margin(). This may + effect programs that use QLayout::geometry(). + +QToolButton + The now adjustable auto-raise behaviour defaults to TRUE only when + a button is used inside a QToolBar. That's usually what you want. If not, + call setAutoRaise(FALSE). diff --git a/dist/changes-2.1.1 b/dist/changes-2.1.1 new file mode 100644 index 0000000000..bb653fee6a --- /dev/null +++ b/dist/changes-2.1.1 @@ -0,0 +1,71 @@ + +Qt 2.1.1 is a bugfix release. It keeps both forward and backward +compatibility (source and binary) with Qt 2.1. + + +**************************************************************************** +* General * +**************************************************************************** + +- Many documentation improvements + +- Various compilation problems relating to particular versions of xlC, +MipsPRO, Solaris, Japanese Windows, old X11 libraries, and gcc 2.7.2 +fixed + +- 64bit HP build targets added + +- Qt OpenGL Extension updated; see details in qt/extensions/opengl/CHANGES + +- As usual, many minor bugfixes, too small to be mentioned here. + + +**************************************************************************** +* Specific * +**************************************************************************** + +QToolbar: fix of layout-saving when moving out of dock + +QAccel: Support for non-alphanumeric keys + +QPrinter: Better tolerance for PS interpreter peculiarities + +QPainter: drawText() with rasterOp on Windows + +QIconView: Drawing fixes + +QDate: Ensure invalid status when created with invalid values + +Motif Dnd: Fix possible crash + +QWorkSpace: Proper minimize/maximize activation + +QListBox: Optimization: better performance for lists with thousands of + elements. Selection problem fixed. + +QFont: Fontset matching fix for X11 + +QMultiLineEdit: Wordwrap/selection workaround + +QTabBar: Refresh layout after style change. Optimization. + +QTimer: Zero-timers on Windows speedup + +QFileDialog: Correct caption on Windows + +QComboBox: Accept only left button. Do proper font propagation. + +QMenuBar: Accept only left button + +QDialog: Modal dialogs after QApplication::exec() returns + +QWidget: Optimization: fewer server round-trips + +QCheckBox: Fixed mask drawing + +QSpinBox: Accept '-' key, for negative values + +Dnd: Allow disabling on X11 + +QFontDatabase: Use QApplication's charset as default, + and fixed garbage on Win2000 diff --git a/dist/changes-2.2.0 b/dist/changes-2.2.0 new file mode 100644 index 0000000000..d5444a84cc --- /dev/null +++ b/dist/changes-2.2.0 @@ -0,0 +1,223 @@ + +Qt 2.2 introduces new features as well as many improvements over the +2.1.x series. This file will only give an overview of the main changes +since version 2.1. A complete list would simply be too large to be +useful. For more detail see the online documentation which is +included in this distribution, and also available on +http://doc.trolltech.com/ + +The Qt version 2.2 series is binary compatible with the 2.1.x and +2.0.x series - applications compiled for 2.0 or 2.1 will continue to +run with 2.2. + +As with previous Qt releases, the API and functionality of Qt is +completely portable between Microsoft Windows and X11. It is also +portable between Windows 95, 98, NT and 2000. + +**************************************************************************** +* Overview * +**************************************************************************** + +The greatest new feature in the 2.2 release is the Qt Designer, a +visual GUI design tool. It makes it possible to cut down on +development time even further through WYSIWYG dialog design. The +designer makes use of improved runtime flexibility and a revised +property system. Please see $QTDIR/doc/html/designer.html for a +feature overview. + +Qt 2.2 integrates now fully on MS-Windows 2000. This includes fade +and scroll effects for popup windows and title bar gradients for MDI +document windows in the MDI module. As with all Qt features, we +provide the same visual effects on Unix/X11. + +Two new classes QAction and QActionGroup make it much easier to +create sophisticated main windows for today's applications. A QAction +abstracts a user interface action that can appear both in menus and +tool bars. An action group makes it easier to deal with groups of +actions. It allows to add, remove or activate its children with a +single call and provides "one of many" semantics for toggle +actions. Changing an action's properties, for example using +setEnabled(),setOn() or setText(), immediately shows up in all +representations. + +Few people consider the original OSF Motif style the most elegant or +flashy GUI style. Therefore several attempts have been made to come up +with a slightly improved Motif-ish look and feel. One of them is the +thinner CDE style, that was supported by Qt since version 2.0. In the +2.2 release, we now added support for SGI's very own Motif version on +IRIX workstations. With its more elegant bevelling of 3D elements and +mouse-under highlight effects, it is quite appealing. For Linux users, +we added a Motif plus style, that resembles the bevelling used by the +GIMP toolkit (GTK+). Optionally, this style also does hovering +highlight on buttons. + +Last but not least we added support for multi-threaded +applications. The classes involved are QThread to start threads, +QMutex to serialize them and QCondition to signal the occurrence of +events between threads ("condition variables"). + +Another major change was done regarding distribution. In order to +address the steady growth of functionality in the Qt library, we +split the source code into distinct modules that can be compiled +in (or left out) separately. This also makes it possible for us to +keep the cost of entry into the commercial Qt world as low as possible. + +The modules available in Qt 2.2 are: + +- Tools: platform-independent Non-GUI API for I/O, encodings, containers, + strings, time & date, and regular expressions. + +- Kernel: platform-independent GUI API, a complete window-system API. + +- Widgets: portable GUI controls. + +- Dialogs: ready-made common dialogs for selection of colors, files, + printers, fonts, and basic types, plus a wizard framework, message + boxes and progress indicator. + +- OpenGL 3D Graphics: integration of OpenGL with Qt, making it very + easy to use OpenGL rendering in a Qt application. + +- Network: advanced socket and server-socket handling plus + asynchronous DNS lookup. + +- Canvas: a highly optimized 2D graphic area. + +- Table: a flexible and editable table widget + +- IconView: a powerful visualization widget similar to QListView and + QListBox. It contains optionally labelled pixmap items that the user + can select, drag around, rename, delete and more. + +- XML: a well-formed XML parser with SAX interface plus an + implementation of the DOM Level1 + +- Workspace: a workspace window that can contain decorated document + windows for Multi Document Interfaces (MDI). + + +Network, Canvas, Table and XML are entirely new modules. + +Below is a list of the major new features in existing classes as well +as short descriptions of all new classes. + + +**************************************************************************** +* New major features in existing classes * +**************************************************************************** + +QApplication: - "global strut", an adjustable minimum size for interactable + control elements like the entries in a listbox, useful for + touch-screens. Popup window effects ( setEffectEnabled() ) + and more threading support ( guiThreadTaken(), lock(), + unlock(), locked() ). + +QCheckBox: - "tristate" is now a property. + +QClipboard: - text() supports subtypes. + +QComboBox: - "editable" is now a property that is changeable at runtime + +QDialog: - support for extensible dialogs ("More...") with + setExtension() and setOrientation(). Optional size grip. + +QFont: - new functions styleStrategy() and setStyleHint() + +QIconSet: - new constructor that takes both a small and a large pixmap + +QKeyEvent: - numeric keypad keys now set a Keypad flag + +QLabel: - support for scaled pixmap contents, "pixmap" as property + +QLayout: - improved flexibility with setEnabled(), access to the + laid out menu bar with menuBar(). + +QListView: - "showSortIndicator" as property. New function + QListViewItem::moveItem() to simplify drag and drop. + +QMovie: - new functions pushSpace(), pushData(), frameImage() + +QMultiLineEdit: - new functions pasteSubType() and copyAvailable() + +QObject: - new function normalizeSignalSlot(), tr() now supports a comment. + +QPicture: - streaming to and from QDataStream + +QPopupMenu: - new signal aboutToHide() + +QRegExp: - new functions setPattern() and find() + +QRegion: - new function setRects() + +QScrollView: - new property "staticBackground" to define a pixmap + background that does not scroll with the contents. + +QStatusBar: - "sizeGripEnabled" as property + +QStyle: - themable menu bars with drawMenuBarItem(). New functions + buttonMargin(), toolBarHandleExtent(), sliderThickness() + +QTabWidget: - new functions currentPageIndex(), setCurrentPage(), new + signal currentChanged(). Similar extensions to QTabBar + and QTabDialog + +QTranslator: - new algorithmen for faster lookup. No more risk of + "hash collisions" when many translators are loaded. + +QVariant: - new subtype QSizePolicy. Necessary for QWidget's + new sizePolicy property. + +QWidget: - new properties "sizePolicy", "ownPalette", "ownFont", + "ownCursor" and "hidden". The size policy is now adjustable + at runtime with setSizePolicy(). Added convenience slot + setDisabled(). Fast geometry mapping functions mapTo() and + mapFrom(). On X11, support for a new background mode + X11ParentRelative. + +QWizard: - runtime changable titles with setTitle(), new signal + selected() + +QWorkspace: - support for more widget flags like WType_Tool. Titlebar + blending effects on MS-Windows 98/2000. + + +**************************************************************************** +* New classes * +**************************************************************************** + +QAction - Abstracts a user interface action that can appear both in + menus and tool bars. Changing an action's properties, for + example using setEnabled(),setOn() or setText(), + immediately shows up in all representations. + +QActionGroup - Combines actions to a group. An action group makes it easier + to deal with groups of actions. It allows to add, remove or + activate its children with a single call and provides + "one of many" semantics for toggle actions. + +QDial - A rounded rangecontrol (like a speedometer or + potentiometer). Both API- and UI-wise the dial is very + similar to a QSlider. + +QDom - [XML Module] DOM Level 1 Tree + +QMotifPlusStyle - This class implements a Motif-ish look and feel with more + sophisticated bevelling as used by the GIMP toolkit (GTK+) + for Unix/X11. + +QMutex: - Provides access serialization between threads. + +QSemaphore: - A robust integer semaphore. Another way of thread + serialization. + +QThread - Baseclass for platform-independent threads. + +QWaitCondition - Provides signalling of the occurrence of events between + threads ("condition variables") + +QCanvas - [Canvas Module] a highly optimized 2D graphic area. + +QTable - [Table Module] a flexible and editable table widget + +QXML - [XML Module] XML parser with SAX interface + diff --git a/dist/changes-2.2.1 b/dist/changes-2.2.1 new file mode 100644 index 0000000000..1df0851464 --- /dev/null +++ b/dist/changes-2.2.1 @@ -0,0 +1,160 @@ + +Qt 2.2.1 is a maintainance release. It keeps backward binary compatibility +with Qt 2.1 and both forward and backward source compatibility with Qt 2.2.x. + +Qt 2.2.0 had a binary compatibility problem with the following: + + bool QRect::contains( const QRect &r, bool proper=FALSE ) const + +Qt 2.2.1 corrects this. Programs compiled with 2.1.x now continue +running with 2.2.1. Programs compiled with versions other than 2.2.0 +may not run with 2.2.0, so upgrading to 2.2.1 is additionally important. + + +**************************************************************************** +* General * +**************************************************************************** + +- Various compilation problems on particular platforms fixed + +- Many improvments in QThread. More platforms supported + (e.g. HPUX 11.x), uses native threads on Solaris rather than + compatibility posix threads + +- A few newly discovered memory leaks and free memory reads fixed + +- As usual, many minor bugfixes, too small to be mentioned here. + + +**************************************************************************** +* Designer * +**************************************************************************** + +- in KDE mode: don't show all KDE widgets in the toolbars, since we do + not have icons for them (yet). They are accessible through the menu + structure, though. + +- Introduced concept of a global /etc/designerrc and a templatePath + for the sake of Linux Standard Base (LSB) and the way Linux + ditributors like to package the Qt Free Edition. + +- Support for tab names in a QTabWidget, and page names in a QWizard. + +- Support for button IDs in a button group, makes it possible to utilize + one single slot for all buttons in a group. + +**************************************************************************** +* Library * +**************************************************************************** + +QClipboard: X11 only: fixed occasional crashes, possibly corrupted + list of provided types and hangups of several seconds under + certain circumstances. + +QFileDialog: Fixed update when renaming a file to an existing file + Unix only: Reset error status after attempting to read an + empty file + Fixed magical resetting of the "Open" label + Fixed duplicate entries in the history combobox + +QFont: Fixes for Hewbrew, Arabic and Thai encodings + Added support for Ukrainian encodings + X11 only: loading fonts for a locale other than the + current now possible (allows displaying japanese characters + in a latin1 application without relying on the existence of + a unicode font) + +QHeader: removing labels fixed, important for QTable and QListView + +QIconView: drawing problem with missleading font metrices and + bounding rectangles fixed + +QInputDialog, +QMessageBox: use the main widget's or parent's icon if available + +QLayout: synchronize the behaviour of sublayouts and subwidgets with + layouts. + +QLineEdit: Update cursor position if QValidator::fixup() truncates the + string + +QMainWindow: Fixed calculated minimum size. Sometimes, the minimum width + of the central widget was disregarded. + +QMenuBar: Sizing fixed for frameless menubars in toolbars in + Motif-based styles + +QMotifPlusStyle: correct drawing of triangular tabs + +QMovie: keep frameImage() during EndOfMovie signal + +QDom: add comments when reading a xml file into the dom + +QPrinter: MS-Windows only: Fixed invalidation when setup dialog was + cancelled + +QSgiStyle: Small drawing problem with QTabBar fixed. + Fixed drawing of special prefix in menu items + +QSizePolicy: setHeightForWidth() was broken, works now + +QTextCodec: significant speedups for latin1 conversion + +QTextStream: small speed improvements for readLine() + Added codec for ukrainian (koi8-u) encoding + +QWheelEvent: Support for the MSH_MOUSEWHEEL extension on MS-Windows 95 + +QWidget: X11 only: Fixed possible mouse lock-ups when re-entering + the event loop on mouse events for widgets of type + WType_Popup. + X11 only: set input context when setting the active + window + X11 only: when dialogs were closed, the main window looked + like it lost focus with some window managers. This has been + fixed now. + +QWidgetStack: potential flicker issue fixed + +QWorkspace: normalize minimized children when they get focus + removed occasional flashing (e.g. when maximizing child + windows) + Look and feel adjustments to emulate MS-Windows even + closer + Documented that the active window can be 0 if there is no + active window + Slightly modifed the button decorations to be more general + and less KDE2 specific + + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +QLayout: + +We synchronized the behaviour of sublayouts and subwidgets with +layouts. This shows great effect in the designer, were you usually +operate on container subwidgets in the design phase, but get a +complete layout in the preview mode or the generated code. For +example, the influence of a spacer item on a sublayout's size policy +has been reduced. The modifications may slightly affect the layout of +some dialogs. + + +**************************************************************************** +* Qt/Embedded-specific changes * +**************************************************************************** + +- Rotated displays & fonts +- QCOP, a simple interprocess messaging system +- Threading support +- Auto-detected mouse +- VGA16 support +- Improved thick lines +- Optimize some double-painting +- Allow setting of custom 8bpp colors: QApplication::qwsSetCustomColors() +- Fix masked widget drawing and clicking +- Fix mouse grabbing for popups + + diff --git a/dist/changes-2.2.2 b/dist/changes-2.2.2 new file mode 100644 index 0000000000..5f271fe6c7 --- /dev/null +++ b/dist/changes-2.2.2 @@ -0,0 +1,154 @@ + +Qt 2.2.2 is a bugfix release. It keeps both forward and backward +compatibility (source and binary) with Qt 2.2.1 + + +**************************************************************************** +* General * +**************************************************************************** + +OpenGL: More Problems with the auto-detection of OpenGL + libraries have been fixed. + + +**************************************************************************** +* Designer * +**************************************************************************** + +uic: Added workaround for the QListView::Manual vs. + QScrollView::Manual enumeration clash. + Fixed backslashes inside strings. + Obeys user defined layout names. + +RC2UI: Converts Microsoft Dialog Resources (.rc) to + Qt Designer Dialog Userinterface Description Files (.ui). + You find it in $QTDIR/tools/designer/integration/rc2ui. + See the README file there. + +**************************************************************************** +* Library * +**************************************************************************** + +QAction: Fixed possible crash in removeFrom(). + +QApplication: X11 only: Add possibility to input text in more than + one encoding. + +QCanvas: Deletes items at canvas destruction time. Without a + canvas, items are not deletable anyway as they need to + access their canvas during destruction. + Some performance optimizations. + +QCanvasItem: More accurate rectangle collision detection. + +QClipboard: X11 only: 64bit cleanness when transferring data + with format==32 using dnd/clipboard. + +QColorDialog: MS-Windows only: Tries harder to use a nice icon. + +QDialog: Keypard-Enter triggers default button. + +QFile: Unix only: Safe access to files in the proc filesystem. + +QFileDialog: Fixed reentrancy problem when used with qFtp. + MS-Windows only: Tries harder to use a nice icon. + +QFontCache: Fixed possible crash in the rare case that the font + cache runs over. + +QGLWidget: MS-Windows only: Fix for GL context switching. + +QIconView: Fixed possible crash. + +QImage: Increased number of colors when writing XPM files from + 64^2 to 64^4. + Fixed 16-bit pixel(). + +QImageIO: MS-Windows only: exported qInitJpegIO function. + Fixed crash with libpng 1.0.8. + Fixed huge memory leak with PNG files. + +QLCDNumber: Sensible precision when displaying doubles. + +QLineEdit: Accepts text drops other than text/plain. + Fixed psosible crash when deleting a line edit while its + context menu is visible. + +QListView: Less flicker. Improved performance on insertItem(). + +QMainWindow: Deletes its layout first on destruction time to avoid + possible crashes with subclasses. + +QMotifPlusStyle:Tuned drawing of tabs. + +QPainter: Fixed rounded rectangle drawing with rotation and + viewport transformation turned on. + Ignores '\r' in drawText. + +QPopupMenu: Ensure to emit the aboutToShow() signal only once + for submenus. + +QPrinter: Unix only: Fixed output for when printing some but not all pages + of multi-page output. + Unix only: Fixed an infinite loop in the image compression + algorithm for some images. + Unix only: Added MIBs for 8859-13, -14 and -15. + MS-Windows only: Fixed system print dialog for Win9x. + +QPrintDialog: MS-Windows only: Tries harder to use a nice icon. + +QProgressBar: Fixed drawing problem with really large progress ranges. + +QPushButton: Implemented "flat" property as advertised. + +QPrinter: MS-Windows only: Keep the current printer name. + +QRichText: Fixed line breaking for asian scripts. Support for + chinese punctuation. + Obeys tags inside links. + +QString: Allows 'G' in sprintf. + +QTextCodec: Recognizes "he" and "he_IL" as 8859-8 locales. + Added latin4 locales. + Improved Thai support. + X11 only: fixed crashes when LANG=ko. + Improved conversion performance. + +QWidget: X11 only: fixed a crash in case XmbTextListToTextProperty + fails for a certain locale. + Visiblity fix when reparenting a widget to 0. + X11 only: Improved transient placement for embedded + windows. + X11 only: Maintains XDND state when reparented. + X11 only: No more crashes in setActiveWindow() with + or without XIM support. + X11 only: small ICCCM compatibility issue with subsequent + hide and show fixed. + +QWorkspace: Tab-focus remains inside a document window. + Fixed problem with menubars inside document windows. + Obeys initial child geometry. + Uses the children's size hint when cascading. + +QXmlInputSource:Fix for stream devices that do not support + direct access. + +**************************************************************************** +* Third party * +**************************************************************************** + +None + +**************************************************************************** +* Changes that might affect runtime behavior * +**************************************************************************** + +None + +**************************************************************************** +* Qt/Embedded-specific changes * +**************************************************************************** + + - Drawing speed-ups, especially rectangles, alpha blitting, horizontal lines. + - More control of qconfig.h diff --git a/dist/changes-3.0.0 b/dist/changes-3.0.0 new file mode 100644 index 0000000000..1f6ad5bf38 --- /dev/null +++ b/dist/changes-3.0.0 @@ -0,0 +1,720 @@ +Qt 3.0 adds a wide range of major new features as well as substantial +improvements over the Qt 2.x series. Some internals have undergone +major redesign and new classes and methods have been added. + +The Qt version 3.x series is not binary compatible with the 2.x +series. This means programs compiled with Qt version 2.x must be +recompiled to work with Qt 3.0. + +In addition to the traditional Qt platforms Linux, Unix and the +various flavours of MS-Windows. Qt 3.0 for the first time introduces a +native port to MacOS X. Like all Qt versions, Qt/Mac is source +compatible with the other editions and follows closely the platform's +native look and feel guidelines. + +We have tried to keep the API of Qt 3.0 as compatible as possible with +the Qt 2.x series. For most applications, only minor changes will be +needed to compile and run them successfully using Qt 3.0. + +One of the major new features that has been added in the 3.0 release +is a module allowing you to easily work with databases. The API is +platform independent and database neutral. This module is seamlessly +integrated into Qt Designer, greatly simplifying the process of +building database applications and using data aware widgets. + +Other major new features include a plugin architecture to extend Qt's +functionality, for styles, text encodings, image formats and database +drivers. The Unicode support of Qt 2.x has been greatly enhanced, it +now includes full support for scripts written from right to left +(e.g. Arabic and Hebrew) and also provides improved support for Asian +languages. + +Many new classes have been added to the Qt Library. Amongst them are +classes that provide a docking architecture (QDockArea/QDockWindow), a +powerful rich text editor (QTextEdit), a class to store and access +application settings (QSettings) and a class to create and communicate +with processes (QProcess). + +Apart from the changes in the library itself a lot has been done to +make the development of Qt applications with Qt 3.0 even easier than +before. Two new applications have been added: Qt Linguist is a tool to +help you translate your application into different languages; Qt +Assistant is an easy to use help browser for the Qt documentation that +supports bookmarks and can search by keyword. + +Another change concerns the Qt build system, which has been reworked +to make it a lot easier to port Qt to new platforms. You can use this +platform independent build system - called qmake - for your own +applications. + +And last but not least we hope you will enjoy the revisited and widely +extended documentation. + + +Qt/Embedded +---------- + +Qt/Embedded 3.0 provides the same features as Qt 3.0, but currently +lacks some of the memory optimizations and fine-tuning capabilities of +Qt/Embedded 2.3.x. We will add these in the upcoming maintainance +releases. + +If you develop a new product based on Qt/Embedded, we recommend +switching to 3.0 because of the greatly improved functionality. +However, if you are planning a release within the next two months and +require memory optimizations not available with Qt/Embedded 3.0, we +suggest using Qt/Embedded 2.3.x. + + +The Qt Library +======================================== + +A large number of new features has been added to Qt 3.0. The following +list gives an overview of the most important new and changed aspects +of the Qt library. + + +Database support +---------------- + +One of the major new features in Qt 3.0 is the SQL module that +provides cross-platform access to SQL databases, making database +application programming with Qt seamless and portable. The API, built +with standard SQL, is database-neutral and software development is +independent of the underlying database. + +A collection of tightly focused C++ classes are provided to give the +programmer direct access to SQL databases. Developers can send raw SQL +to the database server or have the Qt SQL classes generate SQL queries +automatically. Drivers for Oracle, PostgreSQL, MySQL and ODBC are +available and writing new drivers is straightforward. + +Tying the results of SQL queries to GUI components is fully supported +by Qt's SQL widgets. These classes include a tabular data widget +(for spreadsheet-like data presentation with in-place editing), a +form-based data browser (which provides data navigation and edit +functions) and a form-based data viewer (which provides read-only +forms). This framework can be extended by using custom field editors, +allowing for example, a data table to use custom widgets for in-place +editing. The SQL module fully supports Qt's signals/slots mechanism, +making it easy for developers to include their own data validation and +auditing code. + +Qt Designer fully supports Qt's SQL module. All SQL widgets can be +laid out within Qt Designer, and relationships can be established +between controls visually. Many interactions can be defined purely in +terms of Qt's signals/slots mechanism directly in Qt Designer. + + +Explicit linking and plugins +------------------------- + +The QLibrary class provides a platform independent wrapper for runtime +loading of shared libraries. + +Specialized classes that make it possible to extend Qt's functionality +with plugins: QStylePlugin for user interface styles, QTextCodecPlugin +for text encodings, QImageFormatPlugin for image formats and +QSqlDriverPlugin for database drivers. + +It is possible to remove unused components from the Qt library, and +easy to extend any application with 3rd party styles, database drivers +or text codecs. + +Qt Designer supports custom widgets in plugins, and will use the +widgets both when designing and previewing forms (QWidgetPlugin). + + +Rich text engine and editor +--------------------------- + +The rich text engine originally introduced in Qt 2.0 has been further +optimized and extended to support editing. It allows editing formatted +text with different fonts, colors, paragraph styles, tables and +images. The editor supports different word wrap modes, command-based +undo/redo, multiple selections, drag and drop, and many other +features. The engine is highly optimized for proccesing and displaying +large documents quickly and efficiently. + + +Unicode +------- + +Apart from the rich text engine, another new feature of Qt 3.0 that +relates to text handling is the greatly improved Unicode support. Qt +3.0 includes an implementation of the bidirectional algorithm (BiDi) +as defined in the Unicode standard and a shaping engine for Arabic, +which gives full native language support to Arabic and Hebrew speaking +people. At the same time the support for Asian languages has been +greatly enhanced. + +The support is almost transparent for the developer using Qt to +develop their applications. This means that developers who developed +applications using Qt 2.x will automatically gain the full support for +these languages when switching to Qt 3.0. Developers can rely on their +application to work for people using writing systems different from +Latin1, without having to worry about the complexities involved with +these scripts, as Qt takes care of this automatically. + + +Docked and Floating Windows +--------------------------- + +Qt 3.0 introduces the concept of dock windows and dock areas. Dock +windows are widgets, that can be attached to, and detached from, dock +areas. The most common kind of dock window is a tool bar. Any number of +dock windows may be placed in a dock area. A main window can have dock +areas, for example, QMainWindow provides four dock areas (top, left, +bottom, right) by default. The user can freely move dock windows and +place them at a convenient place in a dock area, or drag them out of +the application and have them float freely as top level windows in +their own right. Dock windows can also be minimized or hidden. + +For developers, dock windows behave just like ordinary widgets. QToolbar +for example is now a specialized subclass of a dock window. The API +of QMainWindow and QToolBar is source compatible with Qt 2.x, so +existing code which uses these classes will continue to work. + + +Regular Expressions +------------------- + +Qt has always provided regular expression support, but that support +was pretty much limited to what was required in common GUI control +elements such as file dialogs. Qt 3.0 introduces a new regular +expression engine that supports most of Perl's regex features and is +Unicode based. The most useful additions are support for parentheses +(capturing and non-capturing) and backreferences. + + +Storing application settings +---------------------------- + +Most programs will need to store some settings between runs, for +example, user selected fonts, colors and other preferences, or a list +of recently used files. The new QSettings class provides a platform +independent way to achieve this goal. The API makes it easy to store +and retrieve most of the basic data types used in Qt (such as basic +C++ types, strings, lists, colors, etc). The class uses the registry +on the Windows platform and traditional resource files on Unix. + + +Creating and controlling other processes +---------------------------------------- + +QProcess is a class that allows you to start other programs from +within a Qt application in a platform independent manner. It gives you +full control over the started program. For example you can redirect +the input and output of console applications. + + +Accessibility +--------------- + +Accessibility means making software usable and accessible to a wide +range of users, including those with disabilities. In Qt 3.0, most +widgets provide accessibility information for assistive tools that can +be used by a wide range of disabled users. Qt standard widgets like +buttons or range controls are fully supported. Support for complex +widgets, like e.g. QListView, is in development. Existing applications +that make use of standard widgets will become accessible just by using +Qt 3.0. + +Qt uses the Active Accessibility infrastructure on Windows, and needs +the MSAA SDK, which is part of most platform SDKs. With improving +standardization of accessibility on other platforms, Qt will support +assistive technologies on other systems too. + + +XML Improvements +---------------- + +The XML framework introduced in Qt 2.2 has been vastly improved. Qt +2.2 already supported level 1 of the Document Object Model (DOM), a +W3C standard for accessing and modifying XML documents. Qt 3.0 has +added support for DOM Level 2 and XML namespaces. + +The XML parser has been extended to allow incremental parsing of XML +documents. This allows you to start parsing the document directly +after the first parts of the data have arrived, and to continue +whenever new data is available. This is especially useful if the XML +document is read from a slow source, e.g. over the network, as it +allows the application to start working on the data at a very early +stage. + + +SVG support +----------- + +SVG is a W3C standard for "Scalable Vector Graphics". Qt 3.0's SVG +support means that QPicture can optionally generate and import static +SVG documents. All the SVG features that have an equivalent in +QPainter are supported. + + +Multihead support +----------------- + +Many professional applications, such as DTP and CAD software, are able +to display data on two or more monitors. In Qt 3.0 the QDesktopWidget +class provides the application with runtime information about the +number and geometry of the desktops on the different monitors and such +allows applications to efficiently use a multi-monitor setup. + +The virtual desktop of Windows 98 and 2000 is supported, as well as +the traditional multi-screen and the newer Xinerama multihead setups +on X11. + + +X11 specific enhancements +------------------------- + +Qt 3.0 now complies with the NET WM Specification, recently adopted +by KDE 2.0. This allows easy integration and proper execution with +desktop environments that support the NET WM specification. + +The font handling on X11 has undergone major changes. QFont no longer +has a one-to-one relation with window system fonts. QFont is now a +logical font that can load multiple window system fonts to simplify +Unicode text display. This completely removes the burden of +changing/setting fonts for a specific locale/language from the +programmer. For end-users, any font can be used in any locale. For +example, a user in Norway will be able to see Korean text without +having to set their locale to Korean. + +Qt 3.0 also supports the new render extension recently added to +XFree86. This adds support for anti-aliased text and pixmaps with +alpha channel (semi transparency) on the systems that support the +rendering extension (at the moment XFree 4.0.3 and later). + + +Printing +-------- + +Printing support has been enhanced on all platforms. The QPrinter +class now supports setting a virtual resolution for the painting +process. This makes WYSIWYG printing trivial, and also allows you to +take full advantage of the high resolution of a printer when painting +on it. + +The postscript driver built into Qt and used on Unix has been greatly +enhanced. It supports the embedding of true/open type and type1 fonts +into the document, and can correctly handle and display Unicode. +Support for fonts built into the printer has been enhanced and Qt now +knows about the most common printer fonts used for Asian languages. + + +Networking +----------- + +A new class QHttp provides a simple interface for HTTP downloads and +uploads. + + +Compatibility with the Standard Template Library (STL) +------------------------------------------------------ + +Support for the C++ Standard Template Library has been added to the Qt +Template Library (QTL). The QTL classes now contain appropriate copy +constructors and typedefs so that they can be freely mixed with other +STL containers and algorithms. In addition, new member functions have +been added to QTL template classes which correspond to STL-style +naming conventions (e.g., push_back()). + + +Qt Designer +======================================== + +Qt Designer was a pure dialog editor in Qt 2.2 but has now been +extended to provide the full functionality of a GUI design tool. + +This includes the ability to lay out main windows with menus and +toolbars. Actions can be edited within Qt Designer and then plugged +into toolbars and menu bars via drag and drop. Splitters can now be +used in a way similar to layouts to group widgets horizontally or +vertically. + +In Qt 2.2, many of the dialogs created by Qt Designer had to be +subclassed to implement functionality beyond the predefined signal and +slot connections. Whilst the subclassing approach is still fully +supported, Qt Designer now offers an alternative: a plugin for editing +code. The editor offers features such as syntax highlighting, +completion, parentheses matching and incremental search. + +The functionality of Qt Designer can now be extended via plugins. +Using Qt Designer's interface or by implementing one of the provided +interfaces in a plugin, a two way communication between plugin and Qt +Designer can be established. This functionality is used to implement +plugins for custom widgets, so that they can be used as real widgets +inside the designer. + +Basic support for project management has been added. This allows you +to read and edit *.pro files, add and remove files to/from the project +and do some global operations on the project. You can now open the +project file and have one-click access to all the *.ui forms in the +project. + +In addition to generating code via uic, Qt Designer now supports the +dynamic creation of widgets directly from XML user interface +description files (*.ui files) at runtime. This eliminates the need of +recompiling your application when the GUI changes, and could be used +to enable your customers to do their own customizations. Technically, +the feature is provided by a new class, QWidgetFactory in the +UI-library. + + +Qt Linguist +======================================== + +Qt Linguist is a GUI utility to support translating the user-visible +text in applications written with Qt. It comes with two command-line +tools: lupdate and lrelease. + +Translation of a Qt application is a three-step process: + + 1) Run lupdate to extract user-visible text from the C++ source + code of the Qt application, resulting in a translation source file + (a *.ts file). + 2) Provide translations for the source texts in the *.ts file using + Qt Linguist. + 3) Run lrelease to obtain a light-weight message file (a *.qm file) + from the *.ts file, which provides very fast lookup for released + applications. + +Qt Linguist is a tool suitable for use by translators. Each +user-visible (source) text is characterized by the text itself, a +context (usually the name of the C++ class containing the text), and +an optional comment to help the translator. The C++ class name will +usually be the name of the relevant dialog, and the comment will often +contain instructions that describe how to navigate to the relevant +dialog. + +You can create phrase books for Qt Linguist to provide common +translations to help ensure consistency and to speed up the +translation process. Whenever a translator navigates to a new text to +translate, Qt Linguist uses an intelligent algorithm to provide a list +of possible translations: the list is composed of relevant text from +any open phrase books and also from identical or similar text that has +already been translated. + +Once a translation is complete it can be marked as "done"; such +translations are included in the *.qm file. Text that has not been +"done" is included in the *.qm file in its original form. Although Qt +Linguist is a GUI application with dock windows and mouse control, +toolbars, etc., it has a full set of keyboard shortcuts to make +translation as fast and efficient as possible. + +When the Qt application that you're developing evolves (e.g. from +version 1.0 to version 1.1), the utility lupdate merges the source +texts from the new version with the previous translation source file, +reusing existing translations. In some typical cases, lupdate may +suggest translations. These translations are marked as unfinished, so +you can easily find and check them. + + +Qt Assistant +======================================== + +Due to the positive feedback we received about the help system built +into Qt Designer, we decided to offer this part as a separate +application called Qt Assistant. Qt Assistant can be used to browse +the Qt class documentation as well as the manuals for Qt Designer and +Qt Linguist. It offers index searching, a contents overview, bookmarks +history and incremental search. Qt Assistant is used by both Qt +Designer and Qt Linguist for browsing their help documentation. + + +qmake +======================================== + +qmake is a cross-platform make utility that makes it possible to build +the Qt library and Qt-based applications on various target platforms +from one single project description. It is the C++ successor of +'tmake' which required Perl. + +qmake offers additional functionallity that is difficult to reproduce +in tmake. Trolltech uses qmake in its build system for Qt and related +products and we have released it as free software. + + + +Detailed changes +============= + +Qt 3.0 went through 6 beta releases. These are the detailed changes +since Beta 6 only. For other changes, please see the changes notes +of the respective beta releases. + + +Qt 3.0 final is not binary compatible with Beta6; any programs linked +against Beta6 must be recompiled. + +Below you will find a description of general changes in the Qt +Library, Qt Designer and Qt Assistant. Followed by a detailed list of +changes in the API. + +**************************************************************************** +* General * +**************************************************************************** + +**************************************************************************** +* Library * +**************************************************************************** + +- QApplication + make sure we process deferred deletes before leaving the event + loop. This fixes some ocassions of memory leaks on exit. + win32: some improvements for modality and dockwindow handling + x11 only: read non-gui QSettings when running without GUI. + + +- QCheckListItem + Make the checkboxes respect the AlignCenter flag. Also make + the boxes look better in case they are not placed in the first + column. + +- QComboBox + if we have a currentItem and then we set the combobox to be + editable then set the text in the lineedit to be of the + current item. + +- QCommonStyle + QToolButton: spacing between a toolbutton's icon and its label. + QProgressBar: text color fixed. + +- QCursor + added the What's This? cursor to the collection. + +- QDataTable + fixed broken context menus. + +- QDate + fixed addMonth() overflow. + +- QDesktopWidget + win32 only: works now also for cases where the card handles + multiple monitors and GetSystemMetrics returns a single screen + only. + +- QDomAttr + fixed a memory leak in setNodeValue() + +- QDomNodeMap + added count() as a Qt-style alias for length() + +- QDragObject + default to the middle of the pixmap as a hot spot, this looks + nicer. + +- QFileDialog (internal dialog) + make viewMode() return the correct value even after the dialog + is finished. Fixed getOpenFileName and getSaveFileName for + non-existant directories. Make sure that when it's in + directory mode that the filters reflect this, and change the + label from file name to directory. + win32 only: Improved modality when using the native file + dialog. + +- QFont + x11 only: speed up fontloading with even more clever + caching. Make sure we can match scaled bitmap fonts by + default. Do not load a backup font for a script that is not + default. Make sure the pixel size is correct, even for fonts + that are unavailable. Try even harder to find a fontname that + is not understood. Some RENDER performance optimizations. + +- QFontDialog + make sure the content is set up correctly when initializing + the dialog. + +- QGLWidget + IRIX only: fixed reparent/resize bug, QGLContext::setContext() + is incredibly sensitive on different X servers. + +- QHeader + fixed missing updates on height resp. width changes like the + occur when changing the application font. + +- QIconView + fixed updates of non-auto-arranged views. + +- QImage + no gamma correction by default. + x11 only: some alignment issue with the alpha masked fixed. + +- QIODevice + fixed return value of QIODevice::readLine() for sequential + access. + +- QKeyEvent + win32 only: generate Direction_R/L events for bidirectional + input. + +- QLabel + handle setPixmap( *pixmap() ) gracefully. Apply the WordBreak + alignment flag to both plaintext and richtext. Improved alignment of + richtext labels. Removed some sizepolicy magic, QLabel now + works fine with Preferred/Preferred in all modes. + +- QLineEdit + fixed a crash when doing undo and a validator is set. Emit + textChanged() also if the text changed because of undo or redo. + +- QListBox + fixed RMB context-menu offset. + +- QListView + do not start renaming an item is CTRL or SHIFT is + pressed. Start renaming on mouse release, not mouse press, so + click + click + move on the same item does not start a rename + operation. + +- QMainWindow + show dock-menu also when clicking on the menubar. + +- QPainter + win32 only: improved printing performance through printer font + caching. + boundingRect(): ignore 0-width in the constrain rectangle. + +- QPicture + added overload for load() that takes a QIODevice. + +- QPrintDialog (internal dialog) + fixed enabling of the first page and last page labels. + +- QPrinter + win32 only: make setColorMode() work, some unicode fixes. Make + collate the default. Enable the collate checkbox without + losing the page selection if you want to print multiple + pages. Make the collateCopies property work that it knows + checks/unchecks the collate checkbox in the printing + dialog. Make settings also work when the print dialog is not + shown at all. + +- QProcess + added a new communication mode that duplicates stderr to + stdout (i.e. the equivalent of the shell's 2>&1). + +- QPSPrinter (unix) + fixed collate. + +- QRangeControl + simplified code. + +- QRichText + Propagate WhiteSpaceMode to subitems with + WhiteSpaceModeNormal. Hide DisplayModeNone + items without additional newline. Fixed links inside non-left + aligned tables. Fixed some bidi layout problems. Fixed last + line layout in right-aligned paragraphs. For plain text, + always use the palette's text color. + +- QScrollView + safer destruction. + +- QSettings + win32 only: fixed a dead lock situation when writing + to LOCAL_MACHINE, but reading from CURRENT_USER. + +- QSGIStyle + fixed drawing of checkable menu items. + +- QSimpleRichText + use the specified default font. + +- QSlider + optimized drawing in the new style engine. + +- QString + QString::replace() with a regular expression requires a + QRegExp object, passing a plain string will cause a compile + error. + +- QStyleSheet + additional parameter 'whitespacemode' for + QStyleSheet::convertFromPlainText(). Support for superscript + ('sup') and subscript ( 'sub' ). + +- QTabBar + react properly on runtime font changes, less flicker. + +- QTable + take the pixmap of a header section into account when + adjusting the size. + +- QTabWidget + use the embedded tabbar as focus proxy. + +- QThread + win32 only: possible crash with the thread dictionary fixed. + +- QValidator + In Q{Int,Double}Validator, consider '-' as Invalid rather than + Intermediate if bottom() >= 0. + +- QWidget + made showFullScreen() multihead aware. + win32 only: Better size and position restoring when switching + between fullscreen, maximized and minimized. + x11 only: improvements to XIM, overthespot works correctly + now. + +- QWorkspace + smarter placement of the minimize button when there is no + maximize button. Make titlebars of tool windows a bit smaller. + Improved styleability. Do not maximize a widget that has a + maximum size that is smaller than the workspace. + + + +**************************************************************************** +* Other * +**************************************************************************** + +- moc + fixed generation of uncompilable code in conjunction with + Q_ENUMS and signal/slots. + +- unicode + allow keyboard switching of paragraph directionality. + +- installation + install $QTDIR/doc/html/ instead of $QTDIR/doc/ + install Qt Designer templates as well. + +- improved build on + HP-UX with cc. + Solaris 8 with gcc 3.0.1. + AIX with xlC and aCC. + +- inputmethods + x11 only: do not reset the input context on focus changes. + +- uic + smaller improvements, handle additional form signals. + +- Qt Designer + make it possible to add new signals to a form without + subclassing. Minor fixes. + +- Qt Assistant + fixed Shift-LMB selection bug. Fixed new window and window + restoration on restart. + +- Qt Linguist + change fourth parameter of QApplication::translate() from bool + to enum type. This affects MOC (new revision) and lupdate (new + syntax to parse). Change Qt Linguist's XML file format (.ts) + to be consistent with QApplication: (rather than + ) to match QApp::defaultCodec(); encoding="UTF-8" + (rather than utf8="true") to match QApp::translate(). Fixed + window decoration on restart. Use 'finished', 'unfinished' and + 'unresolved' instead of the (!), (?) symbols on printouts. + +- QMsDev + merge "Add UIC" and "New Dialog". Better user interface and + general cleanup. Wwrite (and merge) qmake pro file with active + project. Load qmake pro files into Visual Studio. + + diff --git a/dist/changes-3.0.0-beta1 b/dist/changes-3.0.0-beta1 new file mode 100644 index 0000000000..2c73e7744b --- /dev/null +++ b/dist/changes-3.0.0-beta1 @@ -0,0 +1,1239 @@ +Qt 3.0 adds a lot of new features and improvements over the Qt 2.x +series. Some internals have undergone major redesign and new classes +and methods have been added. + +We have tried to keep the API of Qt 3.0 as compatible as possible with +the Qt 2.x series. For most applications only minor changes will be +needed to compile and run them successfully using Qt 3.0. + +One of the major new features that has been added in the 3.0 release +is a module allowing you to easily work with databases. The API is +platform independent and database neutral. This module is seamlessly +integrated into Qt Designer, greatly simplifying the process of +building database applications and using data aware widgets. + +Other major new features include a component architecture allowing you +to build cross platform components, 'plugins' with Qt. You can use +your own and third party plugins your own applications. The Unicode +support of Qt 2.x has been greatly enhanced, it now includes full +support for scripts written from right to left (e.g. Arabic and +Hebrew) and also provides improved support for Asian languages. + +Many new classes have been added to the Qt Library. Amongst them are +classes that provide a docking architecture (QDockArea/QDockWindow), a +powerful rich text editor (QTextEdit), a class to store and access +application settings (QSettings) and a class to create and communicate +with processes (QProcess). + +Apart from the changes in the library itself a lot has been done to +make the development of Qt applications with Qt 3.0 even easier than +before. Two new applications have been added: Qt Linguist is a tool to +help you translate your application into different languages; Qt +Assistant is an easy to use help browser for the Qt documentation that +supports bookmarks and can search by keyword. + +Another change concerns the Qt build system, which has been reworked +to make it a lot easier to port Qt to new platforms. You can use this +platform independent build system for your own applications. + + +The Qt Library +======================================== + +A large number of new features has been added to Qt 3.0. The following +list gives an overview of the most important new and changed aspects +of the Qt library. A full list of every new method follows the +overview. + + +Database support +---------------- + +One of the major new features in Qt 3.0 is the SQL module that +provides cross-platform access to SQL databases, making database +application programming with Qt seamless and portable. The API, built +with standard SQL, is database-neutral and software development is +independent of the underlying database. + +A collection of tightly focused C++ classes are provided to give the +programmer direct access to SQL databases. Developers can send raw SQL +to the database server or have the Qt SQL classes generate SQL queries +automatically. Drivers for Oracle, PostgreSQL, MySQL and ODBC are +available and writing new drivers is straightforward. + +Tying the results of SQL queries to GUI components is fully supported +by Qt's SQL widgets. These classes include a tabular data widget +(for spreadsheet-like data presentation with in-place editing), a +form-based data browser (which provides data navigation and edit +functions) and a form-based data viewer (which provides read-only +forms). This framework can be extended by using custom field editors, +allowing for example, a data table to use custom widgets for in-place +editing. The SQL module fully supports Qt's signal/slots mechanism, +making it easy for developers to include their own data validation and +auditing code. + +Qt Designer fully supports Qt's SQL module. All SQL widgets can be +laid out within Qt Designer, and relationships can be established +between controls visually. Many interactions can be defined purely in +terms of Qt's signals/slots mechanism directly in Qt Designer. + + +Component model - plugins +------------------------- + +The QLibrary class provides a platform independent wrapper for runtime +loading of shared libraries. Access to the shared libraries uses a +COM-like interface. QPluginManager makes it trivial to implement +plugin support in applications. The Qt library is able to load +additional styles, database drivers and text codecs from plugins which +implement the relevant interfaces, e.g. QStyleFactoryInterface, +QSqlDriverInterface or QTextCodecInterface. It is possible to remove +unused components from the Qt library, and easy to extend any +application with 3rd party styles, database drivers or text codecs. + +Qt Designer supports custom widgets in plugins, and will use the +widgets both when designing and previewing forms. + +QComponentFactory makes it easy to register any kind of component in a +global database (e.g. the Windows Registry) and to use any registered +component. + + +Rich text engine and editor +--------------------------- + +The rich text engine originally introduced in Qt 2.0 has been further +optimized and extended to support editing. It allows editing formatted +text with different fonts, colors, paragraph styles, tables and +images. The editor supports different word wrap modes, command-based +undo/redo, multiple selections, drag and drop, and many other +features. The engine is highly optimized for proccesing and displaying +large documents quickly and efficiently. + + +Unicode +------- + +Apart from the rich text engine, another new feature of Qt 3.0 that +relates to text handling is the greatly improved Unicode support. Qt +3.0 includes an implementation of the bidirectional algorithm (BiDi) +as defined in the Unicode standard and a shaping engine for Arabic, +which gives full native language support to Arabic and Hebrew speaking +people. At the same time the support for Asian languages has been +greatly enhanced. + +The support is almost transparent for the developer using Qt to +develop their applications. This means that developers who developed +applications using Qt 2.x will automatically gain the full support for +these languages when switching to Qt 3.0. Developers can rely on their +application to work for people using writing systems different from +Latin1, without having to worry about the complexities involved with +these scripts, as Qt takes care of this automatically. + + +Docked and Floating Windows +--------------------------- + +Qt 3.0 introduces the concept of Dock Windows and Dock Areas. Dock +windows are widgets, that can be attached to, and detached from, dock +areas. The commonest kind of dock window is a tool bar. Any number of +dock windows may be placed in a dock area. A main window can have dock +areas, for example, QMainWindow provides four dock areas (top, left, +bottom, right) by default. The user can freely move dock windows and +place them at a convenient place in a dock area, or drag them out of +the application and have them float freely as top level windows in +their own right. Dock windows can also be minimized or hidden. + +For developers, dock windows behave just like ordinary widgets. QToolbar +for example is now a specialized subclass of a dock window. The API +of QMainWindow and QToolBar is source compatible with Qt 2.x, so +existing code which uses these classes will continue to work. + + +Regular Expressions +------------------- + +Qt has always provided regular expression support, but that support +was pretty much limited to what was required in common GUI control +elements such as file dialogs. Qt 3.0 introduces a new regular +expression engine that supports most of Perl's regex features and is +Unicode based. The most useful additions are support for parentheses +(capturing and non-capturing) and backreferences. + + +Storing application settings +---------------------------- + +Most programs will need to store some settings between runs, for +example, user selected fonts, colors and other preferences, or a list +of recently used files. The new QSettings class provides a platform +independent way to achieve this goal. The API makes it easy to store +and retrieve most of the basic data types used in Qt (such as basic +C++ types, strings, lists, colors, etc). The class uses the registry +on the Windows platform and traditional resource files on Unix. + + +Creating and controlling other processes +---------------------------------------- + +QProcess is a class that allows you to start other programs from +within a Qt application in a platform independent manner. It gives you +full control over the started program, for example you can redirect +the input and output of console applications. + + +Accessibility (not part of the beta1 release) +--------------------------------------------- + +Accessibility means making software usable and accessible to a wide +range of users, including those with disabilities. In Qt 3.0, most +widgets provide accessibility information for assistive tools that can +be used by a wide range of disabled users. Qt standard widgets like +buttons or range controls are fully supported. Support for complex +widgets, like e.g. QListView, is in development. Existing applications +that make use of standard widgets will become accessible just by using +Qt 3.0. + +Qt uses the Active Accessibility infrastructure on Windows, and needs +the MSAA SDK, which is part of most platform SDKs. With improving +standardization of accessibility on other platforms, Qt will support +assistive technologies on other systems, too. + +The accessibility API in Qt is not yet stable, which is why we decided +not to make it a part of the beta1 release. + + +XML Improvements +---------------- + +The XML framework introduced in Qt 2.2 has been vastly improved. Qt +2.2 already supported level 1 of the Document Object Model (DOM), a +W3C standard for accessing and modifying XML documents. Qt 3.0 has +added support for DOM Level 2 and XML namespaces. + +The XML parser has been extended to allow incremental parsing of XML +documents. This allows you to start parsing the document directly +after the first parts of the data have arrived, and to continue +whenever new data is available. This is especially useful if the XML +document is read from a slow source, e.g. over the network, as it +allows the application to start working on the data at a very early +stage. + + +SVG support +----------- + +SVG is a W3C standard for "Scalable Vector Graphics". Qt 3.0's SVG +support means that QPicture can optionally generate and import static +SVG documents. All the SVG features that have an equivalent in +QPainter are supported. + + +Multihead support +----------------- + +Many professional applications, such as DTP and CAD software, are able +to display data on two or more monitors. In Qt 3.0 the QDesktopWidget +class provides the application with runtime information about the +number and geometry of the desktops on the different monitors and such +allows applications to efficiently use a multi-monitor setup. + +The virtual desktop of Windows 98 and 2000 is supported, as well as +the traditional multi-screen and the newer Xinerama multihead setups +on X11. + + +X11 specific enhancements +------------------------- + +Qt 3.0 now complies with the NET WM Specification, recently adopted +by KDE 2.0. This allows easy integration and proper execution with +desktop environments that support the NET WM specification. + +The font handling on X11 has undergone major changes. QFont no longer +has a one-to-one relation with window system fonts. QFont is now a +logical font that can load multiple window system fonts to simplify +Unicode text display. This completely removes the burden of +changing/setting fonts for a specific locale/language from the +programmer. For end-users, any font can be used in any locale. For +example, a user in Norway will be able to see Korean text without +having to set their locale to Korean. + +Qt 3.0 also supports the new render extension recently added to +XFree86. This adds support for anti aliased text and pixmaps with +alpha channel (semi transparency) on the systems that support the +rendering extension (at the moment XFree 4.0.3 and later). + + +Printing +-------- + +Printing support has been enhanced on all platforms. The QPrinter +class now supports setting a virtual resolution for the painting +process. This makes WYSIWYG printing trivial, and also allows you to +take full advantage of the high resolution of a printer when painting +on it. + +The postscript driver built into Qt and used on Unix has been greatly +enhanced. It supports the embedding of true/open type and type1 fonts +into the document, and can correctly handle and display Unicode. +Support for fonts built into the printer has been enhanced and Qt now +knows about the most common printer fonts used for Asian languages. + + +QHttp +----- + +This class provides a simple interface for HTTP downloads and uploads. + + +Compatibility with the Standard Template Library (STL) +------------------------------------------------------ + +Support for the C++ Standard Template Library has been added to the Qt +Template Library (QTL). The QTL classes now contain appropriate copy +constructors and typedefs so that they can be freely mixed with other +STL containers and algorithms. In addition, new member functions have +been added to QTL template classes which correspond to STL-style +naming conventions (e.g., push_back()). + + +Qt Designer +======================================== + +Qt Designer was a pure dialog editor in Qt 2.2 but has now been +extended to provide the full functionality of a GUI design tool. + +This includes the ability to lay out main windows with menus and +toolbars. Actions can be edited within Qt Designer and then plugged +into toolbars and menu bars via drag and drop. Splitters can now be +used in a way similar to layouts to group widgets horizontally or +vertically. + +In Qt 2.2, many of the dialogs created by Qt Designer had to be +subclassed to implement functionality beyond the predefined signal and +slot connections. Whilst the subclassing approach is still fully supported, +Qt Designer now offers an alternative: a plugin for editing +slots. The editor offers features such as syntax highlighting, +completion, parentheses matching and incremental search. + +The functionality of Qt Designer can now be extended via plugins. +Using Qt Designer's interface or by implementing one of the provided +interfaces in a plugin, a two way communication between plugin and Qt +Designer can be established. This functionality is used to implement +plugins for custom widgets, so that they can be used as real widgets +inside the designer. + +Basic support for project management has been added. This allows you +to read and edit *.pro files, add and remove files to/from the project +and do some global operations on the project. You can now open the +project file and have one-click access to all the *.ui forms in the +project. + +In addition to generating code via uic, Qt Designer now supports the +dynamic creation of widgets directly from XML user interface +description files (*.ui files) at runtime. This eliminates the need of +recompiling your application when the GUI changes, and could be used +to enable your customers to do their own customizations. Technically, +the feature is provided by a new class, QWidgetFactory in the +QResource library. + + +Qt Linguist +======================================== + +Qt Linguist is a GUI utility to support translating the user-visible +text in applications written with Qt. It comes with two command-line +tools: lupdate and lrelease. + +Translation of a Qt application is a three-step process: + + 1) Run lupdate to extract user-visible text from the C++ source + code of the Qt application, resulting in a translation source file + (a *.ts file). + 2) Provide translations for the source texts in the *.ts file using + Qt Linguist. + 3) Run lrelease to obtain a light-weight message file (a *.qm file) + from the *.ts file, which provides very fast lookup for released + applications. + +Qt Linguist is a tool suitable for use by translators. Each +user-visible (source) text is characterized by the text itself, a +context (usually the name of the C++ class containing the text), and +an optional comment to help the translator. The C++ class name will +usually be the name of the relevant dialog, and the comment will often +contain instructions that describe how to navigate to the relevant +dialog. + +You can create phrase books for Qt Linguist to provide common +translations to help ensure consistency and to speed up the +translation process. Whenever a translator navigates to a new text to +translate, Qt Linguist uses an intelligent algorithm to provide a list +of possible translations: the list is composed of relevant text from +any open phrase books and also from identical or similar text that has +already been translated. + +Once a translation is complete it can be marked as "done"; such +translations are included in the *.qm file. Text that has not been +"done" is included in the *.qm file in its original form. Although Qt +Linguist is a GUI application with dock windows and mouse control, +toolbars, etc., it has a full set of keyboard shortcuts to make +translation as fast and efficient as possible. + +When the Qt application that you're developing evolves (e.g. from +version 1.0 to version 1.1), the utility lupdate merges the source +texts from the new version with the previous translation source file, +reusing existing translations. In some typical cases, lupdate may +suggest translations. These translations are marked as unfinished, so +you can easily find and check them. + + +Qt Assistant +======================================== + +Due to the positive feedback we received about the help system built +into Qt Designer, we decided to offer this part as a separate +application called Qt Assistant. Qt Assistant can be used to browse +the Qt class documentation as well as the manuals for Qt Designer and +Qt Linguist. It offers index searching, a contents overview, bookmarks +history and incremental search. Qt Assistant is used by both Qt +Designer and Qt Linguist for browsing their help documentation. + + +QMake +======================================== + +To ease portability we now provide the qmake utility to replace tmake. +QMake is a C++ version of tmake which offers additional functionallity +that is difficult to reproduce in tmake. Trolltech uses qmake in its +build system for Qt and related products and we have released it as +free software. + + +Qt Functions +======================================== + +QAction +------- + +All new functions: + void addedTo( QWidget *actionWidget, QWidget *container ); + void addedTo( int index, QPopupMenu *menu ); + +QActionGroup +------------ + +New mode "uses drop down", where members are shown in a separate +subwidget such as a combobox or a submenu (enable with +setUsesDropDown(TRUE) ) + +All new functions: + void add(QAction*); + void addSeparator(); + void addedTo( QWidget *actionWidget, QWidget *container, QAction *a ); + void addedTo( int index, QPopupMenu *menu, QAction *a ); + void setUsesDropDown( bool enable ); + bool usesDropDown() const; + + +QApplication +------------ + +Added the setStyle(const QString&) overload that takes the name of the +style as its argument. This loads a style plugin via a QStyleFactory. + +desktop() now returns a QDesktopWidget that provides access to +multi-head information. Prior to 3.0, it returned a normal QWidget. + +New functions to define the library search path for plugins +(setLibraryPaths, ...). + +New functions to define reverse layout for bidirectional languages +(setReverseLayout, ...). + +All new functions: + bool hasPendingEvents() + + void setLibraryPaths(const QStringList &); + QStringList libraryPaths(); + void addLibraryPath(const QString &); + void removeLibraryPath(const QString &); + + void setReverseLayout( bool b ); + bool reverseLayout(); + int horizontalAlignment( int align ); + + + +QClipboard +---------- + +On systems that support it, for example X11, QClipboard now +differentiates between the primary selection and the data in the clipboard. + +All new functions: + bool supportsSelection() const; + bool ownsClipboard() const; + void setSelectionMode(bool enable); + bool selectionModeEnabled() const; +New signals: + void selectionChanged() + + + +QCursor +------- + +Now inherits Qt namespace. Enum values like ArrowCursor, +UpArrowCursor, CrossCursor etc. are now part of that namespace. + + +QDataStream +----------- + +Added missing operators for Q_LONG and Q_ULONG + + +QDateTime / QDate / QTime +------------------------- + +More sophisticated toString() function that takes a DateFormat, where +DateFormat can be either TextDate (the default), ISODate (ISO 8601) or +LocalDate (locale dependent). + +All new functions: + QDate addMonths( int months ) const; + QDate addYears( int years ) const; + QDate fromString( const QString& s, Qt::DateFormat f = Qt::TextDate ); + static QString shortMonthName( int month ); + static QString longMonthName( int month ); + static QString shortDayName( int weekday ); + static QString longDayName( int weekday ); + static void setShortMonthNames( const QStringList& names ); + static void setLongMonthNames( const QStringList& names ); + static void setShortDayNames( const QStringList& names ); + static void setLongDayNames( const QStringList& names ); + +QDialog +------- + +Merged with QSemiModal. Calling show() on a modal dialog will return +immediately, not enter a local event loop. Showing a modal dialog in +its own event loop is achieved using exec(). + +exec() is now a public slot. + +Usability: For widgets supporting What's This help, QDialog +automatically offers a context menu containing a "What's This?" entry. + + +QEvent +------ + +Mouse events are now propagated up to the toplevel widget if no widget +accepts them and no event filter filters them out. In previous Qt +versions, only key events were propagated. + +All events carry a flag 'spontaneous' to determine whether the even +came from the outside or was generated by code within the +applications. Previously, only show and hide events had this flag. + +Enter/Leave event generation has been fixed. Previously, a widget +received a leave event when the mouse pointer entered one of its +children. This was both unnatural and contradictive to the +documentation. + +QWheelevent now carries an orientation to differentiate between +horizontal and vertical wheels. + +QFocusEvent: new reason 'Backtab' (previously only 'Tab' was +available). This makes it possible to discover from what direction on +the tab-focus chain the widget was entered. + +New events: QContextMenuEvent, QIMEvent + + +QFile +----- + +Ported from int to Q_LONG to prepare for large file sizes on 64 bit +systems. + +Filter handling made more flexible. + + +QFileDialog +----------- + +All new Functions: + void setSelectedFilter( const QString& ); + void setSelectedFilter( int ); +New signals: + void filesSelected( const QStringList& ); + void filterSelected( const QString& ); + +If you try to specify an invalid file when using getOpenFileName(s), an error message +will appear and the file will not be accepted. In 2.x, this function behaved differently +because users were using getOpenFileName(s) as a Save File Dialog; you should use +getSaveFileName() when you require a Save File Dialog. + + +QCanvas Module +-------------- + + New classes: + QCanvasSpline - a multi-bezier spline + + QCanvasItemList + void update(); + + QCanvas: + QRect rect() const; + void setUnchanged( const QRect& area ); + void drawArea(const QRect&, QPainter* p, bool double_buffer); + void drawViewArea( QCanvasView* view, QPainter* p, const QRect& r, bool dbuf ); + QRect changeBounds(const QRect& inarea); + + QCanvasView: + const QWMatrix &worldMatrix() const; + const QWMatrix &inverseWorldMatrix() const; + void setWorldMatrix( const QWMatrix & ); + QCanvasSprite: + int leftEdge() const; + int topEdge() const; + int rightEdge() const; + int bottomEdge() const; + int leftEdge(int nx) const; + int topEdge(int ny) const; + int rightEdge(int nx) const; + int bottomEdge(int ny) const; + +QCanvasSprite can now be set to animate its frames without the need to +subclass. + + +QFont, QFontDatabase, QFontInfo, QFontMetrics +--------------------------------------------- + +The QFont::CharSet enum has been removed and replaced with the +QFont::Script enum. With this change, a QFont is not associated with a +specific character set. Instead, QFont uses Unicode Scripts for +loading fonts. On platforms where most fonts do not use the Unicode +encoding (currently only X11), multiple locale and character-set +dependent fonts can be loaded for the individual Unicode Scripts. + +Another new feature of QFont is a much more flexible substitution +mechanism. Each family can have a list of appropriate substitutes. The +font substitution feature allows you to specify a list of substitute +fonts. Substitute fonts are used when a font cannot be loaded, or if +the specified font doesn't have a particular character (X11 only). + +For example (on X11), you select the font Lucida, which doesn't have +Korean characters. For Korean text, you want to use the Mincho font +family. By adding Mincho to the list, any Korean characters not found +in Lucida will be used from Mincho. Because the font substitutions are +lists, you can also select multiple families, such as Song Ti (for use +with Chinese text). + +QFontInfo and QFontMetrics had small API changes related to the +disappearance of QFont::CharSet. In terms of functionality, the +behavior of these classes is unchanged. + +QFontDatabase had several API cleanups related to the disappearance of +QFont::CharSet. Most QFontDatabase member functions take one less +argument, yet compatibility functions still exist to keep old source +code working. + +Family and style names returned from QFontDatabase are now processed +and formatted in a way that is suitable for display to users. Family +and foundry names are capitalized and foundry names are enclosed in +square brackets after the family name. For example, the Helvetica +font family might have 3 different foundries: Adobe, Cronyx and +Phaisarn. In 2.x, QFontDatabase listed them like this: + + adobe-helvetica + cronyx-helvetica + phaisarn-helvetica + +Starting with 3.0, QFontDatabase lists them like this: + + Helvetica [Adobe] + Helvetica [Cronyx] + Helvetica [Phaisarn] + + +QFrame +------ + +Two new frame shapes for more sophisticated style features: +MenuBarPanel and ToolBarPanel. + + +QGrid +----- + +The member type + + enum Direction { Horizontal, Vertical }; + +has been eliminated, as it is redundant: use Qt::Orientation instead. +Old code referring to QGrid::Horizontal or QGrid::Vertical will still +work, as QGrid counts Qt among its ancestors. + + +QGroupBox +--------- + +More functionality of the built-in layout is exposed: + + int insideMargin() const; + int insideSpacing() const; + void setInsideMargin( int m ); + void setInsideSpacing( int s ); + + +QHeader +------- + +New property: bool stretching + +New functions: + bool isStretchEnabled( int section ); + void setStretchEnabled( bool b, int section ); + + +QIconSet +-------- + +In addition to the mode - which can be either Normal, Disabled or +Active - QIconSet now supports different pixmaps for a state, i.e. On +or Off. The functions pixmap() and setPixmap() have been extended +accordingly. + +The default constructor no longer initializes the iconset to +contain a null pixmap. QIconSet::isNull() returns TRUE for un- +initialized iconsets, and pixmap() still returns a null pixmap for +pixmaps that couldn't be generated. + + +QIconView +--------- + +Extended findItem() to support ComparisonFlags. Support for +soft-hyphens when doing word wrap. + +New signal: + contextMenuRequested( QIconViewItem*, const QPoint& pos); + + +QIconViewItem +------------- + +Added support for explicit rtti. + +New function: + int rtti() const; + + + +QListBox +-------- + +Extended findItem() to support ComparisonFlags. + +New signal: + void contextMenu( QListBoxItem *, const QPoint & ); + + +QListBoxItem +------------ + +Added support for explicit rtti. + +New function: + int rtti() const; + + + +QListView +--------- + +It was never really hard to implement drag and drop with QListView, +but since many applications demand this functionality today, we +decided to add it to the listview itself. + +In addition, in-place editing and per-item tooltips have been added. +Extended findItem() to support ComparisonFlags + +New properties: + bool showToolTips + ResizeMode resizeMode + +New signals: + contextMenuRequested( QIconViewItem*, const QPoint& pos); + void dropped( QDropEvent *e ); + void itemRenamed( QListViewItem *item, int col, const QString & ); + void itemRenamed( QListViewItem *item, int col ); + +New functions: + void setResizeMode( ResizeMode m ); + ResizeMode resizeMode() const; + QDragObject *dragObject(); + void startDrag(); + void startRename(); + + +QListViewItem +------------- + +Added support for explicit rtti. + +New functions: + void setDragEnabled( bool allow ); + void setDropEnabled( bool allow ); + bool dragEnabled() const; + bool dropEnabled() const; + bool acceptDrop( const QMimeSource *mime ) const; + void setVisible( bool b ); + bool isVisible() const; + void setRenameEnabled( int col, bool b ); + bool renameEnabled( int col ) const; + void startRename( int col ); + void setEnabled( bool b ); + bool isEnabled() const; + int rtti() const; + + void dropped( QDropEvent *e ); + void dragEntered(); + void dragLeft(); + void okRename( int col ); + void cancelRename( int col ); + + +QLabel +------ + +In addition to text, rich text, pixmaps and movies, QLabel can now +display QPicture vector graphics. + +New functions: + + QPicture *picture() const; + void setPicture( const QPicture & ); + + +QLineEdit +--------- + +New property: bool dragEnabled + +New signal: + contextMenuRequested( QIconViewItem*, const QPoint& pos); + +New functions: + void cursorForward( bool mark, int steps = 1 ); + void cursorBackward( bool mark, int steps = 1 ); + void cursorWordForward( bool mark ); + void cursorWordBackward( bool mark ); + bool dragEnabled(); + void setDragEnabled( bool b ); + + +QMainWindow +----------- + +Added a dock window architecture. Previous versions of QMainWindow +could only deal with toolbars, now they handle generalized dock +windows. QToolBar inherits QDockWindow. + + +New property: + bool dockWindowsMovable; + +New signals: + void dockWindowPositionChanged( QDockWindow * ); + +New functions: + void setDockEnabled( Dock dock, bool enable ); + bool isDockEnabled( Dock dock ) const; + bool isDockEnabled( QDockArea *area ) const; + void setDockEnabled( QDockWindow *tb, Dock dock, bool enable ); + bool isDockEnabled( QDockWindow *tb, Dock dock ) const; + bool isDockEnabled( QDockWindow *tb, QDockArea *area ) const; + + void addDockWindow( QDockWindow *, Dock = Top, bool newLine = FALSE ); + void addDockWindow( QDockWindow *, const QString &label, Dock = Top, bool newLine = FALSE ); + void moveDockWindow( QDockWindow *, Dock = Top ); + void moveDockWindow( QDockWindow *, Dock, bool nl, int index, int extraOffset = -1 ); + void removeDockWindow( QDockWindow * ); + + QDockArea *dockingArea( const QPoint &p ); + QDockArea *leftDock() const; + QDockArea *rightDock() const; + QDockArea *topDock() const; + QDockArea *bottomDock() const; + + bool isCustomizable() const; + bool appropriate( QDockWindow *dw ) const; + QPopupMenu *createDockWindowMenu( DockWindows dockWindows = AllDockWindows ) const; + + bool showDockMenu( const QPoint &globalPos ); + + +QMetaObject +----------- + +###TODO + + +QMimeSourceFactory +------------------ + +New static functions: + QMimeSourceFactory* takeDefaultFactory(); + static void addFactory( QMimeSourceFactory *f ); + + +QNetworkProtocol +---------------- + +Spelling fix in Error::ErrListChildren enum. + + +QRegExp +------- + +QRegExp now has a more complete regular expression engine similar to +Perl's, with full Unicode and backreference support. + +New functions: + bool minimal() const; + void setMinimal( bool minimal ); + bool exactMatch( const QString& str ); + bool exactMatch( const QString& str ) const; + int search( const QString& str, int start = 0 ); + int search( const QString& str, int start = 0 ) const; + int searchRev( const QString& str, int start = -1 ); + int searchRev( const QString& str, int start = -1 ) const; + int matchedLength(); + QStringList capturedTexts(); + QString cap( int nth = 0 ); + int pos( int nth = 0 ); + + +QSessionManager +--------------- + +Renamed the misnamed setProperty() overloads to setManagerProperty() +to resolve the conflict with the now virtual QObject::setProperty(). + + +QString +------- + +New functions: + bool endsWith( const QString & ); + int similarityWith( const QString & ); + +### TODO + +QStyle +------ + +### TODO + +QTabBar +------- + +The extended QTabWidget support in Qt Designer made two more +functions handy to have: + QTab * tabAt( int ) const; + int indexOf( int ) const; + + + +QToolBar +-------- + +Inherits QDockWindow now, previously only QWidget. + + +QToolButton +----------- + +New property: + QIconSet iconSet + +New functions: + QIconSet iconSet() const; + virtual void setIconSet( const QIconSet & ); + +QWidget +------- + +New functions: + + const QColor & eraseColor() const; + virtual void setEraseColor( const QColor & ); + const QPixmap * erasePixmap() const; + virtual void setErasePixmap( const QPixmap & ); + + + +QWizard +------- + +New property: QString titleFont + +New functions: + QFont titleFont() const; + void setTitleFont( const QFont & ); + int indexOf( QWidget* ) const; + + +QWMatrix +-------- + +New function: + bool isIdentity() const; + + +QGL Module +---------- + +QGLWidget +New functions: + QGLFormat requestedFormat() const; + QImage grabFrameBuffer( bool withAlpha = FALSE ); + + +QWorkspace Module +----------------- + +A new property scrollBarsEnabled makes it possible to add on-demand +scrollbars to the workspace. We define this property in Qt Designer to +make designing forms larger than the available space on the desktop +more comfortable. + +New property: + bool scrollBarsEnabled + + +QXML Module +----------- +Many new functions have been added: + QDomImplementation + QDomDocumentType createDocumentType( const QString& qName, const QString& publicId, const QString& systemId ); + QDomDocument createDocument( const QString& nsURI, const QString& qName, const QDomDocumentType& doctype ); + QDomNode + QDomNode insertBefore( const QDomNode& newChild, const QDomNode& refChild ); + QDomNode insertAfter( const QDomNode& newChild, const QDomNode& refChild ); + QDomNode replaceChild( const QDomNode& newChild, const QDomNode& oldChild ); + QDomNode removeChild( const QDomNode& oldChild ); + QDomNode appendChild( const QDomNode& newChild ); + bool hasChildNodes() const; + QDomNode cloneNode( bool deep = TRUE ) const; + void normalize(); + bool isSupported( const QString& feature, const QString& version ) const; + QString namespaceURI() const; + QString localName() const; + bool hasAttributes() const; + QDomDocument + bool setContent( const QCString& text, bool namespaceProcessing=FALSE ); + bool setContent( const QByteArray& text, bool namespaceProcessing=FALSE ); + bool setContent( const QString& text, bool namespaceProcessing=FALSE ); + bool setContent( QIODevice* dev, bool namespaceProcessing=FALSE ); + QDomNamedNodeMap + QDomNode namedItemNS( const QString& nsURI, const QString& localName ) const; + QDomNode setNamedItemNS( const QDomNode& newNode ); + QDomNode removeNamedItemNS( const QString& nsURI, const QString& localName ); + + QDomElement + QString attributeNS( const QString nsURI, const QString& localName, const QString& defValue ) const; + void setAttributeNS( const QString nsURI, const QString& qName, const QString& value ); + void setAttributeNS( const QString nsURI, const QString& qName, int value ); + void setAttributeNS( const QString nsURI, const QString& qName, uint value ); + void setAttributeNS( const QString nsURI, const QString& qName, double value ); + void removeAttributeNS( const QString& nsURI, const QString& localName ); + QDomAttr attributeNodeNS( const QString& nsURI, const QString& localName ); + QDomAttr setAttributeNodeNS( const QDomAttr& newAttr ); + QDomNodeList elementsByTagNameNS( const QString& nsURI, const QString& localName ) const; + bool hasAttributeNS( const QString& nsURI, const QString& localName ) const; + + + QXmlAttributes + void clear(); + void append( const QString &qName, const QString &uri, const QString &localPart, const QString &value ); + + QXmlInputSource: + void setData( const QByteArray& dat ); + void fetchData(); + QString data(); + QChar next(); + void reset(); + QString fromRawData( const QByteArray &data, bool beginning = FALSE ); + + QXmlSimpleReader: + bool parse( const QXmlInputSource& input, bool incremental ); + bool parseContinue(); + + QXmlEntityResolver: + bool startEntity( const QString& name ); + bool endEntity( const QString& name ); + + + +New classes +----------- + +QAquaStyle (only on MacOS X) +QCleanupHandler +QComponentFactory +QComponentFactoryInterface +QComponentServerInterface +QContextMenuEvent +QDesktopWidget +QDockArea +QDockWindow +QErrorMessage +QFeatureListInterface +QHttp [network] +QInterfaceListInterface +QInterfacePtr +QIMEvent +QLibrary +QLibraryInterface +QStyleFactory +QStyleInterface +QTextCodecInterface +QUnknownInterface +QUuid +QRegExpValidator +QTextEdit + + +Renamed Classes +--------------- + +QArray has been renamed QMemArray +QCollection has been renamed QPtrCollection +QList has been renamed QPtrList +QListIterator has been renamed QPtrListIterator +QQueue has been renamed QPtrQueue +QStack has been renamed QPtrStack +QVector has been renamed QPtrVector + +The include file names have changed accordingly (e.g., ). + + +New Modules +----------- + +SQL + QDataBrowser + QDataTable + QDataView + QDateTimeEdit + QEditFactory + + +Obsolete classes +---------------- + + QSemiModal, use QDialog instead. + QMultiLineEdit, use QTextEdit instead. + QTableView, use QScrollView or QTable instead. + QAsyncIO, QDataSink, QDataSource, QDataPump and QIODeviceSource + + +Obsolete functions +------------------ + QActionGroup::insert( QAction * ), use QActionGroup::add( QAction* ) instead. + QApplication::setWinStyleHighlightColor( const QColor &c ), use setPalette() instead + QApplication::winStyleHighlightColor(), use palette() instead + QDir::encodedEntryList( int filterSpec, int sortSpec ), use QDir::entryList() instead + QDir::encodedEntryList( const QString &nameFilter, int filterSpec, int sortSpec ), use QDir::entryList() instead + QMainWindow::addToolBar( QDockWindow *, Dock = Top, bool newLine = FALSE ); + QMainWindow::addToolBar( QDockWindow *, const QString &label, Dock = Top, bool newLine = FALSE ); + QMainWindow::moveToolBar( QDockWindow *, Dock = Top ); + QMainWindow::moveToolBar( QDockWindow *, Dock, bool nl, int index, int extraOffset = -1 ); + QMainWindow::removeToolBar( QDockWindow * ); + QMainWindow::toolBarsMovable() const; + QMainWindow::toolBars( Dock dock ) const; + QMainWindow::lineUpToolBars( bool keepNewLines = FALSE ); + QRegExp::match( const QString& str, int index = 0, int *len = 0, + bool indexIsStart = TRUE ); + QToolButton::setOnIconSet( const QIconSet & ) + QToolButton::setOffIconSet( const QIconSet & ) + QToolButton::onIconSet() const + QToolButton::offIconSet() const + QToolButton::setIconSet( const QIconSet & set, bool on ) + QToolButton::iconSet( bool on ) const + QXmlInputSource::QXmlInputSource( QFile& file ), use QXmlInputSource( QIODevice *dev ) instead. + QXmlInputSource::QXmlInputSource( QTextStream& stream ), use QXmlInputSource( QIODevice *dev ) instead. + +Removed functions: + QWidget::setFontPropagation + QWidget::setPalettePropagation + QMenuBar::setActItem + QMenuBar::setWindowsAltMode + QCheckListItem::paintBranches + QString::visual + QString::basicDirection + QRegExp::find( const QString& str, int index ) const; - has been renamed QRegExp::search() + QFont::charSet() const, not needed anymore + QFont::setCharSet( QFont::CharSet ), not needed anymore + QPushButton::upButton(), not relevant anymore + QPushButton::downButton(), not relevant anymore + QSpinBox::upButton(), not relevant anymore + QSpinBox::downButton(), not relevant anymore + + +Removed preprocessor directives +------------------------------- + + qcstring.h no longer contains the following defines: + + #define strlen qstrlen + #define strcpy qstrcpy + #define strcmp qstrcmp + #define strncmp qstrncmp + #define stricmp qstricmp + #define strnicmp qstrnicmp + + These directives were meant to automagically replace calls to the + above listed standard C functions with the equivalent Qt wrappers. + The latter pre-check the input parameters for null pointers as those + might cause crashes on some platforms. + + Although convenient, this trick turned out to sometimes conflict with + third-party code, or, simply be nullified by standard system and + library headers depending on version and include order. + + The name of some debugging macro variables has been changed. + + DEBUG becomes QT_DEBUG + NO_DEBUG becomes QT_NO_DEBUG + NO_CHECK becomes QT_NO_CHECK + CHECK_STATE becomes QT_CHECK_STATE + CHECK_RANGE becomes QT_CHECK_RANGE + CHECK_NULL becomes QT_CHECK_NULL + CHECK_MATH becomes QT_CHECK_MATH + + The name of some other debugging macro functions has also been changed + but source compatibility should not be affected if the macro variable + QT_CLEAN_NAMESPACE is not defined: + + ASSERT becomes Q_ASSERT + CHECK_PTR becomes Q_CHECK_PTR + + For the record these undocumented macro variables that are not part of + the API have been changed: + + _OS_*_ becomes Q_OS_* + _WS_*_ becomes Q_WS_* + _CC_*_ becomes Q_CC_* + + +[Qt 3.0] + diff --git a/dist/changes-3.0.0-beta2 b/dist/changes-3.0.0-beta2 new file mode 100644 index 0000000000..0d55b124b4 --- /dev/null +++ b/dist/changes-3.0.0-beta2 @@ -0,0 +1,363 @@ +Qt 3.0 Beta2 is not binary compatible with Beta1, this means that any +programs linked with Beta1 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 +======================================== + +Wacom Tablet Support +-------------------- + +Support for Wacom brand tablets has been introduced on Irix and +Windows. These devices generate a QTabletEvent that can be handled by +QWidget::tabletEvent(). The QTabletEvent holds information about +pressure, X and Y tilt, and which device is being used (e.g. stylus or +eraser). Note: at present, there are known issues with the Windows +version. + +Documentation +------------- + +Overall enhancements including fixed typos and the addition of several +images and code examples. + +QStyle (and derived classes) +---------------------------- + +The style API has been completely rewritten in Qt 3.0. The main reason +for doing this was because it was getting inconsistent, hard to +maintain and extend. Most of the old 2.x functions have been replaced +by a small set of more general functions. The new API is: + + - much more consistent + - less work have to be done to create custom styles + - easier to extend and maintain binary compatibility + +The old API relied upon a host of virtual functions that were +re-implemented in the different styles. These functions were used to +draw parts of, or entire widgets. The new API uses a small set of more +general functions. Enumerated values are passed as parameters to these +functions to specify which parts of a control or widget is to be drawn +(e.g drawPrimitive( PE_ArrowUp, ...)). + +To create custom styles with the new API, simply subclass from the +preferred base style and re-implement the function that draws the part +of the widget you want to change. If you for example want to change +the look of the arrows that are used in QWindowsStyle, subclass from +it and re-implement the drawPrimitive() function. Your drawPrimitive() +function may look something like this: + +void QMyStyle::drawPrimitive( PrimitiveElement pe, ... ) +{ + switch( pe ) { + case PE_ArrowUp: + // draw up arrow + break; + case PE_ArrowDown: + // draw down arrow + break; + default: + // let the base class handle the rest of the drawing + QWindowsStyle::drawPrimitive( ... ); + break; + } +} + +For more information about the new style API, please read the QStyle +documentation. + + +Qt Designer +======================================== + + - Improved indentation algorithm for the code editor. + - Allow multiple code editors to be open. This makes copy and paste + much easier. + + +Qt Functions +======================================== + +QCanvas +------- + + - QCanvas does not react on windowActivationChange() anymore. + - 64 bit cleanup. + +QChar +----- + + - The Unicode character is stored host ordered now. Main advantage is + that you can directly cast a QChar array to an array of unsigned shorts. + +QCom +---- + + - Introduced QS_OK, QS_FALSE, QE_NOINTERFACE, QE_INVALIDARG and + QE_NOIMPL as possible QRESULT return values. + +QDate, QTime and QDateTime +-------------------------- + + - New function for outputting free form strings and new DateFormat + enum Qt::LocalDate. + +New functions: + QString toString( const QString& format ); + +QDir +---- + + - entryInfoList() returns 0 for non-existing directories on Windows + as the documentation claims and the Unix version already does. + - On Windows, QDir tries a more failsafe way to determine the home + directory. + +QDom +---- + + - QDomNode::hasChildNodes() now works as documented. + - QDomDocument::toString() includes now namespaces in its output. + - QDomDocument::QDomDocument() constructor now allows adding children + to the document. + +QFileDialog +----------- + + - Various fixes in file type filter and handling of file names and + directories. + +QEvent +------ + + - New event type DeferredDelete. See QObject changes below. + +QGL +--- + + - Fix for Irix in respect of installing colormaps. + - Swapped arguments of QGLColormap::setEntries() in order to be able + to use a meaningful default argument. + +New class: + QGLColormap - class for manipulating colormaps in GL index mode. + +QGridView +--------- + +A new class that provides an abstract base for fixed-size grids. + +QIconSet +-------- + +New function: + void clearGenerated(); + +QImage +------ + + - Handlers for image formats can be dynamically loaded as a plug-in by + using the QImageFormatInterface. + +QLabel +------ + + - setIndent() behaves like documented. + +QLineEdit +--------- + +New function: + int characterAt( int xpos, QChar *chr ) const; + +QLibrary +-------- + +Enabled plug-in loading with static Qt library (Windows). + +QMovie +------ + + - Does pixmap caching now. Reduces load e.g. on the X Server in the + case of animated gifs. + +QObject +------- + + - Added a deferredDelete() function that will cause the object to + delete itself once the event loop is entered again. + + - A second type of destroyed signal - one that passes a pointer to + the destroyed object as a parameter - will be emitted in QObject's + destructor. + +New signal: + void destroyed( QObject* obj ); + +New slot: + void deferredDelete(); + +QPainter +-------- + + - So far clipping had always been done in the device coordinate + system. The newly introduced ClipMode allows clipping regions to be + set via setClipRect() and setClipRegion() in painter coordinates. + +New enum: + enum ClipMode { ClipDevice, ClipPainter }; + +Extended functions: + QRegion clipRegion( ClipMode = ClipDevice ) const; + void setClipRect( const QRect &, ClipMode = ClipDevice ) + void setClipRect( int x, int y, int w, int h, ClipMode = ClipDevice ); + void setClipRegion( const QRegion &, ClipMode = ClipDevice ); + +QPrintDialog +------------ + + - Allow overriding the default print dialog. This way it's possible + to better cope with the variety of existing print systems (API not + finalized, yet). + - The dialog reads current QPrinter on every invocation now. + +New functions: + static void setGlobalPrintDialog( QPrintDialog * ); + virtual bool setupPrinters ( QListView *printers ); + +QPrinter +-------- + + - X11 version only: Introduced Qt settings switch 'embedFonts' that + allows disabling font embedding to reduce size of PostScript output. + +QProcess +-------- + + - Added function to retrieve the pid (Unix) or PROCESS_INFORMATION + (Windows) from a running process. + - Extra parameter for environment settings in start() and launch() + functions. + +New/extended functions: + PID processIdentifier(); + virtual bool start( QStringList *env=0 ); + virtual bool launch( const QString& buf, QStringList *env=0 ); + virtual bool launch( const QByteArray& buf, QStringList *env=0 ); + +New signal: + void launchFinished(); + +QServerSocket +------------- + + - Set the SO_REUSEADDR option so that the server can be restarted. + +QSocket +------- + + - Make deletion of QSocket instances safe if it is in response to a + signal emitted by the object itself. + +SocketDevice +------------ + + - Optional boolean parameter to be able to distinguish between + timeout and connection closed by peer when waitForMore() returns. + +Extended functions: + int waitForMore( int msecs, bool *timeout=0 ) const; + +QStyleSheet +----------- + + - Added helper function that escapes HTML meta-characters. + +New function: + QString escape( const QString& plain); + +QSql +---- + + - The source of the SQL driver plug-ins have been moved to + $QTDIR/plugins/src/sqldrivers/. + - The postgres driver checks the version number of the server. So there is + no need for different drivers: QPSQL6 no longer exists -- use QPSQL7 + instead. + - Postgres driver supports now 3 PostgreSQL back ends: 6.x, 7.0.x and 7.1.x + - Better handling of errors coming from the database. + - SQL driver for Microsoft SQL Server and Sybase Adaptive Server (TDS). + - Added caching for forward-only cursors. + - Avoid crashes on the unloading of SQL plugins that occurred on some + platforms. + - QSqlResults can be forward only to improve performance + (QSqlResult::setForwardOnly()). + - QSqlDatabase passes the port number to the SQL driver. + +QTable +------ + + - No longer calls processEvents() in columnWidthChanged() and + rowHeightChanged() in order to avoid any side effects. + - Ensure that mousePressEvent doesn't emit contextMenuRequested(), + unless it is called from the contextMenu event handler. + - For more useful subclassing the new functions listed below have + been added. + +New functions: + bool isEditing() const; + EditMode editMode() const; + int currEditRow() const; + int currEditCol() const; + +QTextCodec +---------- + + - Fixes for characters in the 0x80..0xff range. + +QTextEdit +--------- + + - The rich text engine has seen many internal improvements and + additions to the QTextEdit class. + +New functions: + virtual void scrollToBottom(); + virtual void removeSelection( int selNum = 0 ); + virtual bool getParagraphFormat(...); + virtual void insertParagraph( const QString &text, int para ); + virtual void removeParagraph( int para ); + virtual void insertAt( const QString &text, int para, int index ); + QRect paragraphRect( int para ) const; + int paragraphAt( const QPoint &pos ) const; + int charAt( const QPoint &pos, int *para ) const; + +QUrlOperator +------------ + + - More precise error messages. + +QWidget +------- + + - Added a read-only property containing the widget's background brush. + +New function: + virtual const QBrush& backgroundBrush() const; + +QWMatrix +-------- + + - New functions for mapping of geometric elements via matrix + multiplication semantics. + +New functions: + QRect mapRect( const QRect & ); + QPoint operator * (const QPoint & ) const; + QRegion operator * (const QRect & ) const; + QRegion operator * (const QRegion & ) const; + QPointArray operator * ( const QPointArray &a ) const; diff --git a/dist/changes-3.0.0-beta3 b/dist/changes-3.0.0-beta3 new file mode 100644 index 0000000000..cc49e6e47c --- /dev/null +++ b/dist/changes-3.0.0-beta3 @@ -0,0 +1,278 @@ +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 .ui of a form, a .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 .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 + + .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 ) diff --git a/dist/changes-3.0.0-beta4 b/dist/changes-3.0.0-beta4 new file mode 100644 index 0000000000..a3f44a5569 --- /dev/null +++ b/dist/changes-3.0.0-beta4 @@ -0,0 +1,688 @@ +Qt 3.0 Beta4 is not binary compatible with Beta3; any programs linked +against Beta3 must be recompiled. + +Below you will find a description of general changes in the Qt +Library and Qt Designer followed by a detailed list of changes in the +API. + + +The Qt Library +======================================== + +Documentation +------------- + +The extensive revision of the documentation is almost complete. +We have added new navigation options, including a shorter list +of classes entitled Main Classes. + +Translations +------------ + +Qt now includes French and German translations of the Qt library, as +well as a template for translating Qt. These files are found in the +translations directory of Qt, in both .ts and .qm formats. + +Style Fixes +----------- + +Qt 3.0.0 beta2 introduced a new QStyle API. This new API has changed +between beta3 and beta4. These changes will affect both widget +writers and style writers. The QStyle entry below explains what has +changed. + +Beta4 also introduces some fixes for bugs introduced during the port +to the new API in various widgets, notably QComboBox and QSlider. + +LiveConnect Plugin +------------------ + +A few bugs were fixed in the LiveConnect Plugin so that the grapher +example works again on Windows. + + +Qt Designer +======================================== + + - General usability improvements and bug fixes, and improved file + and project handling. + - Updated designer manual to cover the .ui.h mechanism. + - New auto-indentation algorithm in the code editor. + + +Qt Assistant +======================================== + + - Added a Settings dialog and made more features customizable. + - Sessions are now saved and restored. + - A brief introduction to using Qt Assistant is now included. + + +Qt Linguist +======================================== + + - Phrase books are now provided in tools/linguist/phrasebooks. + - Added support for Qt Designer's .ui.h mechanism to lupdate. + - Support for a larger subset of .pro file syntax in lupdate and + lrelease. + + +Qt Functions +======================================== + +QApplication +------------ + + - Ignore drag-and-drop events for disabled widgets. + - Always send ChildRemoved events, even if no ChildInserted event + was sent. + - Mouse events for popup menus are now sent to event filters. + +QCanvasItem +----------- + + - The functions visible(), selected() and active() have been renamed + setVisible(), setSelected() and setActive(). + +New functions: + bool isVisible() const; + bool isSelected() const; + bool isActive() const; + +Removed functions: + bool visible() const; + bool selected() const; + bool active() const; + +QCanvasText +----------- + + - Fixed alignment flags. + +QChar +----- + +New function: + bool isSymbol() const; + +QCheckBox +--------- + + - Fixed a bug in pixmap caching which could result in using the + wrong pixmap. + +QCheckListItem +-------------- + + - After a mouse click, the list view ignores the following double + click as in Windows XP. + +QClipboard +---------- + + - Made clipboard operations faster on X11. + +QColorDialog +------------ + + - Never show scrollbars in the color array. + +QComboBox +--------- + + - Comboboxes are now drawn correctly in all styles. + - Fixed bug with auto completion. There was undefined behavior with + non-editable comboboxes when changing focus. + +New function: + virtual void setCurrentText( const QString& ); + +New property: + QString currentText + +QDataBrowser +------------ + + - The setCursor() function is obsolete and will be removed for Qt 3 + release due to the incompatibility with some compilers. Use + setSqlCursor() instead. + +QDataTable +---------- + + - Dates and times in tables can now be displayed in different + display formats. + - The setCursor() function is obsolete and will be removed for Qt 3 + release due to the incompatibility with some compilers. Use + setSqlCursor() instead. + +QDateEdit +--------- + + - The default separator and the day-month-year order respect the + user's settings. + - Pressing the separator key now skips to the next section. + - Fixed a usability flaw related to some months being longer than + others. + +New functions: + QString separator() const; + virtual void setSeparator( const QString& s ); + +QDateTime +--------- + + - Always initialize the tm struct completely. This fixes a problem + on some versions of Unix. + +QDir +---- + + - QDir::homeDirectory() now always returns an existing directory on + Windows. + +QDockWindows +------------ + + - Fixed dockwindows created in non-dock areas. + - Fixed constructor if InDock and the parent is a QMainWindow. + +QDom... +------- + + - Fixes in the conversion of the DOM tree to a string. + +QDomNodeList +------------ + + - Fixed a crash. + +QFileDialog +----------- + + - Select contents of the line edit at startup (if any) so that the + user can overwrite the provided file name right away. + +QFileInfo +--------- + + - In adition to lastModified() and lastRead(), provide created(). + +New function: + QDateTime created() const; + +QFont +----- + + - Provide more correct font metrics under X11. + - Worked around X11 limits on length of strings to draw and on + coordinate sizes. + - Fixed sone point vs. pixel size issues under X11. + - Added PreferAntialias and NoAntialias flags to StyleStrategy enum + type. + +QFtp +---- + + - Fixed a QSocket bug that made QFtp crash if the connection was + refused. + - Fixed operationRename() and operationRemove(). + - Set the right state when finished. + +QGIFFormat +---------- + + - Support GIF files with broken logical screen size. + +QHeader +------- + + - Added support for '\n' in header labels. + - Improved placement of icon. + +QHttp +----- + + - If the status code of the reply is an error code, it is now also + reflected in the status of the network operation. The error + handling in general was improved. + +QImageIO +-------- + + - Allow gamma correction to be set programmatically. + +New functions: + void setGamma( float gamma ); + float gamma() const; + +QKeyEvent +--------- + + - Worked around an X11 bug in isAutoRepeat(). + +QKeySequence +------------ + +A new class that encapsulates a key sequence as used by accelerators. + +QLabel +------ + + - Made the WordBreak alignment property work with rich text labels + in addition to plain text labels. + +QLayout +------- + + - Fixed crashes with deleting widgets managed by the layout. + - Fixed problems with reparenting widgets managed by the layout. + - Respect maximumHeight() of items in heightForWidth(). + +QLibrary +-------- + + - Plugins now return the version number, threading model and debug + vs. release mode of the Qt library used in ucm_initialize(). If + there is any kind of incompatibility, cancel the loading. + +QLineEdit +--------- + + - Update the "edited" flag and the accessibility data better than + before. + - Fixed setMaxLength(). + - Fixed context menu problem on Windows. + +New functions: + bool isUndoAvailable() const; + bool isRedoAvailable() const; + +QListViewItem +------------- + + - Fixed setVisible(TRUE) which triggered an update too soon. + +QMenuBar +-------- + + - Cancel alt-activation of menubar on mouse press/release. + - On wheel events, all popup menus are now closed instead of hidden. + Hiding popup menus confused QMenuBar. + +QObject +------- + + - Have QObject dispatch events to customEvents(). + +QPainter +-------- + + - Renamed the enum type ClipMode to CoordinateMode. The enum values + ClipDevice and ClipPainter are now called CoordDevice and + CoordPainter. + - Fixed escaping of ampersand character, so "&&", "&&&", etc., now + work as they did in Qt 2.x. + +New functions: + void drawPixmap( const QRect& r, const QPixmap& pm ); + void drawImage( const QRect& r, const QImage& img ); + +QPicture +-------- + + - Respect the size of a loaded SVG document. + - Solved a replay-transformed-picture problem. + - Fixed format version number. + +QPluginManager +-------------- + + - Fixed crash when loading a plugin fails. + +QPopupMenu +---------- + + - Custom menu items that are separators now see their size hint + respected. + - Fixed crash when drawing an empty popup menu. + +QPrinter +-------- + + - Better printing in different resolutions under both Windows and + X11. + - Support for collation under Windows and X11. + - Correct bounding rectangles for texts in all printer modes. + - Fixed pixmap printing on Windows. + - Fixed PostScript font names for fonts with foundries. + - Support for PostScript printing of scaled images. + +New functions: + bool collateCopiesEnabled() const; + void setCollateCopiesEnabled( bool enable ) const; + bool collateCopies() const; + void setCollateCopies( bool on ); + int winPageSize() const; /* Windows only */ + +QProcess +-------- + + - The function hangUp() was renamed to tryTerminate() to make the + purpose more clear. Furthermore, under Unix, the signal that is + sent was changed from SIGHUP to SIGTERM. + - The function kill() and the function tryTerminate() (formerly + hangUp()) were made slots. + +New slots: + void tryTerminate(); + void kill(); + +Removed functions: + void hangUp(); + void kill(); + +QProgressBar +------------ + + - Draw the progress bar correctly with respect to the properties + "percentageVisible", "indicatorFollowsStyle" and + "centerIndicator". + +QPtrVector +---------- + + - Support null items without triggering an assert. + +QPushButton +----------- + + - Fixed the sizeHint() of buttons with an icon. + +QRegExp +------- + + - Fixed a subtle bug in regular expressions mixing anchors and + alternation. + +QRegion +------- + + - Don't crash when creating a QRegion from an empty point array. + +QRichText +--------- + + - Improved alignment support, including nested alignments. + - Improved table margin support. + - Improved page break algorithm. + - Do not eat '\n' in preformatted items. + - Do not draw the internal trailing space at the end of a paragraph. + - Fixed link underlining in table cells and other subdocuments. + - Use larger vertical margin between paragraphs. + - Display paragraph spacing even when printing. + - Support vertical table cell alignment. + - Fix for floating items and table cell size calculation. + - Improved allignment handling. + - Offset fixes for tabs. + - Better
support. + - Fixed
tag. + - Fix for the
tag and centering tables. + - Fixed   and . + - Fixed off-by-one bug in gotoWordLeft() and gotoWordRight(). + - Better positioning of super- and subscripts. + - Faster printing of large tables by using a clipping rectangle. + - Improved high-resolution printing. + - Correct sizes for images when printing. + - Fixed list painting when printing. + - Use right background for printing. + +QScrollBar +---------- + + - Made setValue() a slot. + +New slot: + void setValue( int ); + +Removed function: + void setValue( int ); + +QSettings +--------- + + - Added support for QStringLists without requiring a distinct + separator. + - Added support for null strings, empty lists and null strings in + lists. + - Fixed bug with values ending with a backslash. + - On Unix, don't overwrite files if the user doesn't have permission. + +QSimpleRichText +--------------- + + - Implemented vertical breaks and floating elememts. + - Fixed bug with borders and clipping in printing. + - Fixed bug in adjustSize() cache. + +QSizePolicy +----------- + + - Stretch factors were added to QSizePolicy. + - Added a new size policy: Ignored. + +New functions: + uint horStretch() const; + uint verStretch() const; + void setHorStretch( uchar sf ); + void setVerStretch( uchar sf ); + +QSpinBox +-------- + +New slot: + virtual void selectAll(); + +QSqlDatabase +------------ + + - QSqlDatabase now provides access to meta-data. Meta-data is stored + in two new classes, QSqlFieldInfo and QSqlRecordInfo. See the + class documentation for details. + +New Functions: + QSqlRecordInfo recordInfo ( const QString & tablename ) const + QSqlRecordInfo recordInfo ( const QSqlQuery & query ) const + + +QSqlFieldInfo +------------- + +A new class that stores meta data associated with a SQL field. + +QSqlRecordInfo +-------------- + +A new class that is keeping a set of QSqlFieldInfo objects. + +QStatusBar +---------- + + - Don't cut off the bottom line of the border of the status bar. + - Respect maximumHeight() of items in the status bar. + +QString +------- + + - QString now provides section(), a function that parses simple + fields. + - The function similarityWith() has been removed from the API. If + you need it, write to qt-bugs@trolltech.com. + +New functions: + QString section( QChar sep, int start, int end, + int flags = SectionDefault ) const; + QString section( char sep, int start, int end = 0xffffffff, + int flags = SectionDefault ) const; + QString section( const char *substr, int start, int end = 0xffffffff, + int flags = SectionDefault ) const; + QString section( QString substr, int start, int end = 0xffffffff, + int flags = SectionDefault ) const; + QString section( const QRegExp ®xp, int start, int end = 0xffffffff, + int flags = SectionDefault ) const; + +Removed function: + int similarityWith( const QString& target ) const; + +QStyle +------ + + - Changed "void **" technique to QStyleOption technique. This + affects the interface of most of the QStyle member functions. + Please read the QStyle class documentation for details. + +QStyleOption +------------ + +A new class that encapsulates extra data sent to the style API. + +QTabBar +------- + + - The accelerators are now working correctly after changing a tab. + +QTable +------ + + - Fixed crash related to popup menu and cell edition. + - Fixed not-drawing hidden cells. + +QTextCodec +---------- + + - Added MIME names for codecs. + - Improved locale detection. + - Fixed the ISO 8859-6.8x (Arabic) font encoding. + +New function: + const char *mimeName() const; + +QTextStream +----------- + + - Fixed bug with stateful QTextEncoders. + +QTextEdit +--------- + + - Respect disabling updates. + - Fixed link underlining in table cells and other subdocuments. + - Draw cursor on focus in. + - Emit cursorPositionChanged() where it previously was missing. + - Fixed sync(). + +New functions: + bool isUndoAvailable() const; + bool isRedoAvailable() const; + bool isUndoRedoEnabled() const; + virtual void setUndoRedoEnabled( bool enabled ) const; + +New property: + bool undoRedoEnabled + +QThread +------- + + - Fixed QThread::sleep() on Unix. + +QTime +----- + + - fromString() with format Qt::ISODate now recognizes milliseconds + if they are specified. + - Make elapsed() a const function. + +QTimeEdit +--------- + + - The default time separator respects the user's settings. + - Pressing the separator key now skips to the next section. + +New functions: + QString separator() const; + virtual void setSeparator( const QString& s ); + +QTooltip +-------- + + - Hide active tooltips when the user switches to another application. + - Fixed tooltips with Windows effects enabled. + +QUrl +---- + + - Fixed password encoding. + +New function: + bool hasPort() const; + +QValidator +---------- + + - Let QValidator, QIntValidator, QDoubleValidator and + QRegExpValidator have QObject parents rather than only QWidget + parents. + +QVariant +-------- + + - Added QBitArray support. + - The QDateTime type now supports asDate() and asTime(). + - The QByteArray type now supports toString(). + +New functions: + QVariant( const QBitArray& ); + const QBitArray toBitArray() const; + QBitArray& asBitArray(); + +QWhatsThis +---------- + + - Added support for hyperlinks in "What's This?" help windows. + +QWidget +------- + + - Fixed crashes related to LayoutHint events. + +QWizard +------- + + - Made removePage() behave as documented. + - Fixed back() so that it skips irrelevant pages like next(). + +QWorkspace +---------- + + - Make sure that the widget state is set before the first titlebar + painting is triggered. + - Use the right pixmap for titlebar. + - Respects widget flags better for titlebars in QCommonStyle. + - Fixed move and resize in the system menu bar of workspace + children. + +QXml +---- + + - Made the "prefix" xmlns map to the namespace name + http://www.w3.org/2000/xmlns/. + - Fixed default namespaces. + +QXmlAttributes +-------------- + + - Added count() as equivalent to length() to be consistent with Qt + conventions. + +New function: + int count() const; diff --git a/dist/changes-3.0.0-beta5 b/dist/changes-3.0.0-beta5 new file mode 100644 index 0000000000..174a1b3e3a --- /dev/null +++ b/dist/changes-3.0.0-beta5 @@ -0,0 +1,316 @@ +Qt 3.0 beta 5 is not binary compatible with beta 4; any programs +linked against beta 4 must be recompiled. + +Below you will find a description of general changes in the Qt +Library and Qt Designer followed by a detailed list of changes in the +API. + + +The Qt Library +======================================== + +Documentation +------------- + +The extensive revision of Qt classes' documentation is complete. The +front page of the Qt documentation (index.html) has been redesigned +to provide better access to other documentation than class +documentation. + +OpenGL Module +------------- + +Qt beta 5 provides some fixes which will make rendering GL widgets to +pixmaps work on a wider range of X servers. + +QDateTimeEdit +------------- + +The QDateTimeEdit, QDateEdit and QTimeEdit widgets have been moved +from the SQL module to the Qt core widget set. All users of Qt can +now use these widgets. + + +Qt Designer +======================================== + + - Some bugs related to the .ui.h feature were fixed. + + - The generation of code related to QSqlCursor has been fixed. + + - When removing a slot implementation from the Qt Designer + interface, do not accidentally remove a preceding comment. + + - Improved the C++ code indenter in the editor for some C++ + constructs, including try-catch blocks. + + +Qt Linguist +======================================== + + - Fixed problem with loading phrase books containing non-ASCII + characters. + + +Qt Classes +======================================== + +QApplication +------------ + + - Fixed a clipboard bug related to drag-and-drop on X11. + +QColorDialog +------------ + + - Fixed repaint problem. + +QComboBox +--------- + + - Never inserts empty strings in the list. + - Use the drop-down listbox's size hint in the combobox if the + listbox has been set manually. + +QComponentInterface +------------------- + + - This class has been renamed QComponentInformationInterface. + +QComponentServerInterface +------------------------- + + - This class has been renamed QComponentRegistrationInterface. + +QDataBrowser +------------ + + - The setCursor() function is obsolete and has been removed due to + problems with some compilers. Use setSqlCursor() instead. + +QDataTable +---------- + + - Fixed a rare crash when the database is deleted while its popup is + still open. + - Made setColumnWidth() a public slot like in the base class. + - The setCursor() function is obsolete and has been removed due to + problems with some compilers. Use setSqlCursor() instead. + +QDateTimeEdit +------------- + + - Fixed the minimumSizeHint() for better behavior in a layout. + +QDom +---- + + - Added a sanity check. + +QFileDialog +----------- + + - Fixed a crash in MotifPlus style. + - Use the existing file-icon provider rather than the default + Windows one if one is set. + +QFont +----- + + - Fixed background color for more than 8 bits per channel. + - Added the font's pixel size to the value returned by key(). + +QFtp +---- + + - Correcty sets the default password to "anonymous". + +QGL +--- + + - Added robustness on X11 for invalid pixmap parameters. + +QImage +------ + + - Fixed loading of BGR BMP files. + - Changed the signature of the constructor to accept "const char * + const *" objects without a cast. + +QLatin1Codec +------------ + + - Provide the missing mimeName(). + +QLibrary +-------- + + - Construct Unix-specific filenames correctly. + +QLineEdit +--------- + + - Fixed offset for right-aligned text. + +QListView +--------- + + - Fixed a bug with in-place renaming. + +QMime +----- + + - Fixed infinite loop when searching for a mime-source. + +QMutex +------ + + - Unlock the Qt library mutex when enter_loop() is called the first + time, rather than when exec() is called. A programmer might call + QDialog::exec() and never QApplication::exec(), and then she will + wait for the mutex. + +QPixmap +------- + + - Do transformations correctly on big-endian systems. + +QPrinter +-------- + + - Respect the PRINTER environment variable on X11, as stated in the + documentation. + - Work around a display-context bug on Windows 95 and 98. + +QProcess +-------- + +New functions: + void clearArguments(); + int communication() const; + void setCommunication( int c ); + +QProgressBar +------------ + + - Fixed bug in repainting when a background pixmap is set. + +QPtrList +-------- + + - Reverted a semantics change introduced in beta 4 when deleting the + current item. + +QRegExp +------- + + - Fixed matchedLength() when used with exactMatch(). This bug + affected QRegExpValidator. + +QRichText +--------- + + - Added support for "color" attribute in
tag. + - Fixed selectedText(). + +QSqlCursor +---------- + + - Don't generate calculated fields. + +QStatusBar +---------- + + - Made addWidget() and removeWidget() virtual. + +QSpinBox +-------- + + - Fixed the minimumSizeHint() for better behavior in a layout. + +QStyle +------ + + - Allow separator custom menu items to use a different size than + specified by the style. + +Qt +-- + + - Renamed Qt::Top, Qt::Bottom, Qt::Left, Qt::Right to Qt::DockTop, + Qt::DockBottom, Qt::DockLeft, Qt::DockRight. + +QTable +------ + + - Fixed currentChanged() and valueChanged() emits. + +QTextEdit +--------- + + - Moved eventFilter() from the public slots section to the public + section of the class definition. + - Reformat after changing tab-stop size. + - Implemented undo for clear(). + +New function: + void zoomTo( int size ); + +QTextIStream +------------ + + - Fixed QTextIStream with a QString. + +QToolBar +-------- + + - Fall back to text property in extension popup if no pixmap label + has been set. + - Made mainWindow() const. + +QToolButton +----------- + + - Fixed the minimumSizeHint() for better behavior in a layout. + +QToolTip +-------- + + - Fixed the transparent tooltip effect a la Windows 2000. + +QUrl +---- + + - Fixed the return value of QUrl::dirPath() on Windows. + - Set ref to nothing when merging URLs. + +QUrlOperator +------------ + + - Added a default parameter for single copy to specify the "to" file + name and not just the file path. + +New function: + QPtrList copy( const QString& from, + const QString& to, bool move, bool toPath ); + +QValueList +---------- + + - Added a return value to remove(), as stated in the documentation. + +QWidget +------- + + - Fixed a bug in QPainter on X11 that caused a crash when paint + events were dispatched from other paint events. + - Fixed showMaximized() and deferred map handling. + - When specifying WDestructiveClose as a widget flag, + QWidget::close() does not immediately delete the widget anymore, but + calles QObject::deferredDelete() + + +QWorkspace +---------- + + - Fixed cascade(). diff --git a/dist/changes-3.0.0-beta6 b/dist/changes-3.0.0-beta6 new file mode 100644 index 0000000000..dbed1756c9 --- /dev/null +++ b/dist/changes-3.0.0-beta6 @@ -0,0 +1,272 @@ +Qt 3.0 Beta6 is not binary compatible with Beta5; any programs linked +against Beta5 must be recompiled. + +Below you will find a description of general changes in the Qt +Library, Qt Designer and Qt Assistant. Followed by a detailed list of +changes in the API. + + +The Qt Library +======================================== + +QCom postponed +-------------- + +Previous Qt 3.0 betas introduced a module called QCom that provides a +COM-like component system. The feedback we received on this module +during the 3.0 beta phase has been mixed. Many users think this module +lacks the intuitiveness and compactness that they have learned to +expect from a Qt API. Therefore, we have made the difficult decision +to withdraw the QCom API from the Qt 3.0 release. We will continue to +develop this API until it is evolved enough for our customers, and +will include the improved version in a later release. + +We apologize for any inconvenience the QCom API change has +caused. This decision was made as part of our ongoing efforts to +maintain the soundness and quality of Qt. + +Please note that the new plugin functionality in 3.0 will still be +provided. This includes using custom widgets in Qt Designer, as well +as runtime addition of styles, codecs, SQL drivers, and image format +handlers. This functionality is now available through a substantially +simplified API. + +Also also note that it will still be convenient to add custom plugin +capabilities to Qt 3.0 applications, since the new QLibrary class will +still be available. This class takes care of the low-level, +platform-dependent issues regarding loading of DLLs and obtaining +pointers to the functions exported by the DLLs. + + +Qt Designer +======================================== + + - Improvements to the Designer reference manual. + + - Improved the C++ code indenter in the editor for numbers and + handling of parenthesis. + + +Qt Assistant +======================================== + + - Added a context menu with common commands. + + - Allow multiple windows to be opened and added the common shortcut + that Shift+Click on a link opens the link in a new window. + + +Qt Functions +======================================== + +QAccel +------ + + - Try harder to ensure that accelerators continue to work when a top + level widget is reparented into another window. + +QColor +----- + + - X11 only: better heuristic to decide if you use black or white when a + color could not be allocated. + - win32 only: improve color allocation on 8bit displays, e.g. when + using a terminal server. + +QComboBox +--------- + + - Added a new function to be able to set a custom line edit. + +New function: + virtual void setLineEdit( QLineEdit *edit ); + +QCString +-------- + + - Implemented a dummy out-of-line destructor for QCString to help the + compiler to optimize the number of conflicts as the location of a vtable + is now known. + +QCursor +------- + + - win32 only: Added a constructor that takes a platform specific handle. + +New function: + QCursor( HCURSOR ); (win32 only) + +QDateTime and QDateTimeEdit +--------------------------- + + - win32 only: better handling of localization settings. + +QDockWindow +----------- + + - Remeber last size of an undocked window, so when it is docked and + undocked again, use this size again. + +QDom +---- + + - Fixed an infinite loop in QDomDocument::toString(). + +QFileDialog +----------- + + - Improved handling of "~" to make it work as a directory. + +QFileInfo +--------- + + - win32 only: permissions respects the read-only attribute now. + +QIconView +--------- + + - Added a function to find out whether an item in a view is currently + being renamed. + - Fixed a crash. + +New function: + bool isRenaming() const; + +QInputDialog +------------ + + - Improved the handling of double input formats. + +QListView +--------- + + - Added a function to find out whether an item in a view is currently + being renamed. + - Fixed a possible infinite loop. + - Improved spacing handling for columns that can show a sort indicator. + +New function: + bool isRenaming() const; + +QMainWindow +----------- + + - Make menuAboutToShow() protected to allow customized dock menus. + - Fixed spacing problem for menu bars. + +QMap +---- + + - Fixed infinite looping in count( const Key& k ). + +QObject +------- + + - The slot deferredDelete() was renamed to deleteLater() to be more + intuitive. Code that used deferredDelete() has to be adjusted for the + new name. + +New function: + void deleteLater(); + +QPainter +-------- + + - Fixed bounding rectangle when printing richtext. + - Restore brush origin in QPainter::restore(). + +QPixmap +------- + + - X11 with render extension only: better support for alpha blending: + - QPixmap::xForm() keeps now the alpha channel information + - alpha channel information is kept when copying QPixamps + - alpha blending works with QMovie + - tiling pixmaps with alpha channel works now + +QPrinter +-------- + + - Unix only: fixed dashed line drawing when using high resolution + printing. + - Better printing detection on Irix. + +QRadioButton +------------ + + - Fixed focus problem for radio buttons in a button group. + +QSqlCursor +---------- + + - Fixed primeInsert() to work if the primary key of the edit buffer has + changed. + - Changing primary index keys now also works if the cursor's position + moved in the meantime. + +QStyle +------ + + - Added a base value (CC_CustomBase) for custom defined primitives, + controls, etc. -- this allows custom widgets to use the new style + engine. + - Fixed spacing problem for custom menu items. + - Improved the look of the Motif plus and the SGI style. + +QTable +------ + + - Fixed a crash when drag source is the current table editor widget. + - Fixed a bug that prevented having different colors in different cells. + +QTabletEvent +------------ + + - Improved Watcom tablet support to allow multiple devices to be used. + +QTextEdit +--------- + + - Better handling for font sizes in the font tag. + - Parse the qt tag again. + - Fixed text() for read-only documents. + - Improved right mouse button menu handling. + - New function to pass the position to the createPopupMenu() function for + improved flexibility. + +New function: + virtual QPopupMenu *createPopupMenu( const QPoint& pos ); + +QThread +------- + + - Unix only: Make sure that the seconds and nano-seconds in the sleep + functions are within the limits. + +QUrlInfo +-------- + + - Added the concept of invalid QUrlInfo objects. This is useful in + conjunction with QUrlOperator::info(). + +New function: + bool isValid() const; + +QWizard +------- + + - Set the previous pages nextEnabled to TRUE if we add a page to the end + of a wizard. + +QWMatrix +-------- + + - mapRect() returns always a valid QRect now. + +QWorkspace +---------- + + - Update the titlebar when toggling shaded/non-shaded. + - Update the titlebar to be deactivated when the application's activation + status changes. + - Improve placement of document windows. diff --git a/dist/changes-3.0.1 b/dist/changes-3.0.1 new file mode 100644 index 0000000000..26fb022da5 --- /dev/null +++ b/dist/changes-3.0.1 @@ -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 diff --git a/dist/changes-3.0.2 b/dist/changes-3.0.2 new file mode 100644 index 0000000000..211c8ef122 --- /dev/null +++ b/dist/changes-3.0.2 @@ -0,0 +1,325 @@ +Qt 3.0.2 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.0.1 + + +**************************************************************************** +* General * +**************************************************************************** + +- Improved building of Qt on SCO OpenServer 5.0.5, Sun WorkShop 4.2, MIPSpro +7.2 and VC++.NET + +- Added support for NIS to the build system + +- BiDi on X11: direction key events for right-to-left are configurable +in QSettings via qt/useRtlExtensions. In 3.0.1 they were always turned +on. + +- basic table support with XFree86 + +- unicode on X11: fix keysymbols 0x1000000-0x100ffff + +- moc: Generate correct code for N::B which inherits M::B. Don't warn +on throw() specifications. + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAbstractLayout + Fixed heightToWidth handling. + +- QApplication + X11 only: Stop compressing keys when a non printable key is + pressed. Fixed handling backtab (shift+tab) on HPUX. Better support + for currency symbol keys like the Euro key. Also fixed a crash when + tablet support is set up, but without a device attached. + Mac only: Adjust the desktop widget size when the display size + changes. + +- QAquaStyle + Better highlight color detection for the inactive case. + +- QCanvas + Let QCanvasPolygon::areaPoints() return a detached QPointArray + for safeness. + +- QColorDialog + Save and restore the custom colors via QSettings between Qt + applications. + +- QComboBox + Layout the popup listbox correctly before showing it. + +- QContextMenuEvent + X11 only: Both the mouse press event and the context menu + are always sent now. + +- QClipboard + Mac only: Fixed pasting text from non-Qt applications to Qt + applications. + +- QDataTable + Faster key event handling. Fixed crash when cancelling cell + editing. Fixed autoEdit mode. + +- QDesktopWidget + X11 only: Fixed screenNumber() in Xinerama mode. + +- QDateEdit + Gray out background if the widget is disabled. Fixed small + static memory leak on exit. + +- QDialog + On show(), send a tab-focus event to the focus widget, so that + e.g. in lineedits, all the text is selected when becoming visible. + Windows only: Position dialogs on the same screen as the mouse if + there is no parent widget that can be used. + +- QDockWindow + Use correct minimum size, taking frame into account. Less + flicker on (de)activation. undock() doesn't undock the window + if the TornOff dockarea is disabled. + +- QDragObject + Fixed crash when a drag object is created without parent. + +- QFileDialog + Fixed an endless loop. + Windows only: In getExistingDirectory(), use QFileDialog and not + the Windows system one when the dirOnly flag is FALSE + Mac only: Fixed filtering when using the native Mac filedialog. + +- QFileInfo + Windows only: Fixed isWriteable() to check Windows permissions as + well. + +- QFont + Windows only: Fixed boundingBox() when called in a widget + constructor. Internal fixes for invalid HDCs. More + accurate exactMatch(). Fixed GDI resource leak. + X11 only: Fixed calculating the point size of default font, so + the default font on systems with only bitmap fonts doesn't look + ugly. Support for Ukranian fonts. + +- QFontDataBase + Win9x only: Fixed problem with multiple entries. + +- QGLWidget + X11 only: Fixed pixmap rendering with TrueColor visuals + on X servers with a default PseudoColor visual (introduced in + 3.0.1). Fixed context sharing (introduced in 3.0.1). + +- QGroupBox + More predictable focus handling. + +- QHttp + Enable downloading from non-default websites. + +- QIconView + Initialise internal variable. + +- QImage + Fixed xForm() for bigendian bitmaps. Accept dots in XM + #define. + +- QImageIO + Correctly limit quality parameter when writing PNG and JPEG + files. + +- QLabel + Smarter minimumSizeHint() for word-break labels. + +- QLayout + Fixed possible crash when deleting/adding layout items. More + robust on runtime layout changes. + +- QLibrary + Windows only: Use an internal cache and refcount to avoid loading + the same library multiple times into the memory on Windows NT. + +- QLineEdit + Ctrl-V now calls the virtual paste() rather than duplicating + its functionality. Override accelerators for keypad keys. + +- QListBox + Center pixmaps in listbox items properly. Fixed isSelected(). + +- QListView + Fix focus rects for QCheckList items that have a Controller as + a parent. Also, fix drawing of selected checklist boxes so + that the focus rect doesn't overlap it. Keep checklist items + working after the user swapped columns. Fixed drawing check + marks and the vertical branch lines for listview items with + multiple lines of text. Optimized the clear() function. + Improved the sorting for the case that entries have the same key. + +- QMenuBar + Fixed painting problems on content changes. + mostly X11: when the focus widget is unfocused, the menubar + should stop waiting for an alt release. On X11, when you use + an alt-key shortcut to switch desktops back and forth, then + you will get the menubar in altmode when you return to that + desktop + Mac only: Fixed keyboard modifiers. + +- QMovie + Animated gifs with a frame delay of 0 work nicer. Initialize + internal cache variable. + +- QMutex + Made tryLock() work on recursive mutexes. + +- QPainter + Return translated coordinates in pos(). Fixed translation in + calls to clipRegion(CoordPainter). + +- QPopupMenu + More fixes for the animate and fade effects. Fixed opening of + menus that was impossible under certain circumstances. Fixed + painting problems on content changes. + +- QPixmap + Make grabWidget() work with internally double-buffered widgets + X11 and Mac: Fixed a memory leak. + +- QPrinter + Win32 only: Resolution fix. + +- QRichText + Fixed crash bug when clearing a document. Fixed various layout + bugs, esp. with HTML tables. Fixed a memory leak. Fixed a + crash when placing a cursor on a hidden paragraph. Arabic and + Hebrew fixes. Make moving the cursor to the next word not + stumble upon multiple whitespaces. + +- QScrollBar + Make sure middle clicking a scrollbar doesn't allow the slider + to move outside the groove. + +- QSettings + In readEntry(), report 'ok' in all cases. Make sure the + default value is returned correctly for bool entries that + do not exist in the settings files. Both readNumEntry() + and readDoubleEntry() report a false ok parameter if the + conversion fails + win32 only: Fixed default values + +- QSgiStyle + Minor visual improvements. + +- QSlider + Make setting a new size policy in Designer work. + +- QSound + Stop sound playing when distroying a QSound object. + Windows only: QSound::stop() really stops the sound now. + +- QSqlCursor + Fixed setMode(). + +- QSqlDriver + Escape '\' characters in strings. Fix the QOCI8 driver so that + it compiles with the Oracle9i client libs. Major speedup fix + for the QMYSQL3 driver. + +- QSqlRecord + Fixed crash when accessing values of non-existing fields. + +- QString + mid() works safely now for len > length() && len != + 0xffffffff. Some speed optimizations. Replace non-latin1 + characters with '?' in unicodeToAscii(). + +- QStyle + Added a style hint for a blinking text cursor when text is + selected. + +- QStyleFactory + Windows only: Don't load style plugins for static Qt builds. + +- QTable + Use correct style flags for QCheckTableItem drawing. The + internal event filter no longer consumes FocusIn/FocusOut, + meaning those events are accessible for subclasses now. Fixed + redraw problem with dynamically resized cells. Always return + the right text for items (fixed a caching problem). Fixed + emitting valueChanged(). Fixed a redraw problem with multispan + cells. + +- QTextCode + Support for @euro locales. + +- QTextEdit + The internal event filter no longer consumes FocusIn/FocusOut, + meaning these events accessible for subclasses now. Override + accelerators for keypad keys. Reduced memory consumption for + contents with many paragraphs. Emit selectionChanged() when + the selected text has been removed. Emitting the linkClicked() + signal may result in the cursor hovering over a new, valid link + - check this and set the appropriate cursor shape. Overwrite + mode fixed. Always emit currentAlignmentChanged() when the + paragraph alignment changed. Ignore key events which are not + handled. Fixed right-alignment in BiDi mode. Key_Direction_L/R + will now affect the whole document for non-richtext content. + X11 only: Fixed copy on mouse release. Lower impact of an + XFree memory leak. + Mac only: Always draw selections extended to the full width of the + view. + +- QTextStream + Speed optimization for QTextStream::write(). + +- QToolBar: + Hint about explicit show() call for child widgets to ensure + future operability. + +- QToolTip + Fixed wordbreaking when using both rich text and plain text + tooltips. Fixed placement of tooltips for multi-head and Xinerama + systems. + +- QVariant + In toDateTime(), allow conversion from QDate. + +- QWhatsThis + X11 only: Fixed positioning on dualhead setups. + Windows XP only: Improved drawing. + +- QWidget + X11 only: fixed a show() problem that occurred + after few reparents from and to toplevel. + Mac only: Fixed showNormal(). + +- QWindowsStyle + Minor visual improvements (popupmenu checkitems, listview + branches). + +- QWorkspace + Obey minimumSizeHint() of document widgets. Do not emit + windowActivated() for the already active document window. + +- QUrlOperator + Relaxed checks for directories. + + +**************************************************************************** +* Extensions * +**************************************************************************** + +**************************************************************************** +* Other * +**************************************************************************** + + +**************************************************************************** +* Qt/Embedded-specific changes * +**************************************************************************** + +**************************************************************************** +* Qt/Mac-specific changes * +**************************************************************************** + +Optimizations and fixes in QPainter and QFont fixed creation and +raising of top level widgets fixed hovering over titlebar problems. diff --git a/dist/changes-3.0.4 b/dist/changes-3.0.4 new file mode 100644 index 0000000000..e7089a70b1 --- /dev/null +++ b/dist/changes-3.0.4 @@ -0,0 +1,214 @@ +Qt 3.0.4 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.0.3 + + +**************************************************************************** +* General * +**************************************************************************** + +- Qt 3.0.4 builds on VC++.NET. + + +**************************************************************************** +* Library * +**************************************************************************** + +- QApplication + Send wheel events for blocked widgets to the focus widget instead. + Windows only: Fixed problems with Korean input methods. Reset + the mouse state even when we ignore the next button release. + +- QColor: + Fixed marking colors created with an invalid color string as + invalid. + +- QComboBox: + QComboBox's listbox now takes the combobox's palette. + +- QDataTable: + Fixed the scrollbar behaviour when browsing result sets from + clients that do not return a query size. Make the table + adopt the filter and sort settings from the cursor when + setSqlCursor() is called. + +- QDateTimeEdit: + Update the date/time edit even if the new date/time is + invalid. + +- QDialog: + Respect the minimum and maximum size of the extension grow + width/height in showExtension( TRUE ). Don't delete the object + immediately for WDestructiveClose, instead use deleteLater() + to allow queued events to be processed. + +- QDir: + Fixed crash when calling entryList() for non-existing + directories. + +- QDnD: + Mac only: Prevent crash when dropping onto a transparent part + of a widget. + +- QDockWindow: + Accelerators of the mainwindow now continue to work if a floating + dockwindow becomes active. + +- QFileDialog: + Windows only: Fixed displaying shared Windows directories + (e.g. \\Machine\Folder). Worked around a problem which made + QFileDialog hang. + +- QFontDataBase: + Enumerate all fonts correctly on Windows; also made it faster. + +- QGridLayout: + Do not crash when a widget inserted with addMultiCellWidget() + is deleted. + +- QHeader: + Fixed setOffset() for vertical headers. + +- QIconView: + Fixed when clicking and dragging from the edge of an icon, so + that the icon will drag immediately rather than when the mouse + next passes over it. + +- QKeyEvent: + Correctly deliver a KeyRelease event with isAutoRepeat + set to FALSE after releasing an auto-repeated key. + +- QLabel: + Fixed so that the label uses paletteForegroundColor() and not + the the colorgroup's 'text' color, when displaying richtext. + +- QListBox: + Performance improvements. + +- QListView: + When typing in a listview to search for an item, don't select + items in Extended selection mode. Speed improvements for + selectAll() or (un)selecting a large number of items (e.g by + pressing Shift+End) in big listviews (starting from 150.000 + items). + +- QOCIDriver: + Allow access to tables not owned by the current user. Use + Oracle synonyms for table names. Tables can also be specified + as 'OWNER.TABLE'. + +- QPainter: + Don't delete the tabarray set in setTabArray() in the first + drawText() call. + +- QPopupMenu: + Fixed re-use of menus. + +- QPrintDialog: + Layout group boxes properly. Fixed function cast in NIS code + so that it works on all compiler-platform pairs. Allow NIS on + any Unix, not just Solaris. + +- QPrinter: + Windows only: Implemented printing of rotated pixmaps and + images. + +- QProcess: + Unix and Mac only: Make sure that the processExited() signal + is emitted only once for each process. This also fixes a crash + that occurred on very rare occasions. + +- QProgressBar: + Fixed crash bug when totalSteps() was 1. Fixed some painting + bugs. + +- QPSPrinter: + Improvements in printing Japanese. Big speed improvements. + +- QRichText: + Improved speed of loading plain text and rich text + documents. Fixed some internal links which didn't work + correctly. Fixed minimumWidth and usedWidth calculations for + table layouts of nested tables. Fixed <br> tags within list + items. Fixed some memory leaks and cleanup on exit. Now works + with fonts that specify sizes in pixels. + +- QScrollBar: + Release the control, when the scrollbar got hidden while a + control was pressed. + +- QSimpleRichText: + Make sure the painter's properties don't get changed in + setWidth(). + +- QSpinBox: + Don't fire the autorepeat timer before valueChanged() is + completed, if the up or down button is pressed. + +- QSqlDriver: + Export DB driver classes under Windows if compiled into the + lib. + +- QSqlQuery: + Reset the last error before a new query is executed. + +- QTable: + If a row or column is hidden, setRowHeight() and + setColumnWidth() no longer cause an immediate resize; instead + they store the value for later use, i.e. for when the row or + column is shown. Fixed a problem which reset table header + sections after inserRows()/insertColumns() calls. showRow() + and showColumn() now do nothing if a row/column is already + visible. Windows only: Fixed the problem that combobox table + items never got smaller than a certain size. + +- QTextEdit: + Cleaner modified() and setModified() handling (doesn't rely on + internal signals anymore, so it is now safe to call + setModified() from a slot connected to textChanged()). Fixed + selecting text if a margin was set using setMargins(). Fixed + crash when calling removeSelectedText() with a selNum larger + than 0. Only auto-create a bullet list when typing - or * at + the beginning of a line if textFormat() is RichText, not + AutoFormat. + +- QTitleBar: + Don't paint all titlebars in a QWorkspace activated when a + dockwindow is the active window. + +- QToolBar: + Don't show the extension button when the extension menu would + not contain any items. + +- QUrlOperator + Fixed a crash. + +- QWaitCondition: + Fixed a problem with wait() using invalid timeout values. + +- QWorkspace: + Also show scrollbars (if enabled), when moving a document + window out of the workspace to the left at the top. Never show + scrollbars if a document window is maximized. + + + +**************************************************************************** +* Extensions * +**************************************************************************** + +**************************************************************************** +* Other * +**************************************************************************** + +Qt Config: + X11 only: The default X input methods are now configurable + through qtconfig. + +**************************************************************************** +* Qt/Embedded-specific changes * +**************************************************************************** + +**************************************************************************** +* Qt/Mac-specific changes * +**************************************************************************** + diff --git a/dist/changes-3.0.7 b/dist/changes-3.0.7 new file mode 100644 index 0000000000..ec084d6f18 --- /dev/null +++ b/dist/changes-3.0.7 @@ -0,0 +1,375 @@ +Qt 3.0.7 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.0.6. + +**************************************************************************** +* General * +**************************************************************************** + +Smaller documentation fixes. Some build issues fixed. Upgraded libpng +to 1.0.15. + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction + Avoid emitting activated() twice for actions in a + toolbar. Possibility to remove an iconset from an action by + specifying a null iconset. + +- QApplication + Fixed a font sharing problem with setFont(). Fixed window + close with modality. Don't overwrite an explicitely set font + with the default font when using the static methods before + calling the constructor. When the programmer/user explicitly + sets the style (either with QApplication::setStyle or -style + command line option), do not reset the style on settings + changes. + Windows only: Serialize calls to OutputDebugString, as this + API is not reentrant. Emit aboutToQuit() when the user logs + off. Send a focusOut event to the focus widget when the user + tries to switch applications via Alt+Tab. + Windows95/98/Me: Fixed enter/leave handling. Among others this + makes tooltips work more reliable. + X11 only: Spit out warning then the user passes an invalid + Display* argument. Fixed figuring out the depth of the visual + in case a private colormap is supplied. Some startup + performance improvements with QSettings. Mark the internal + wakeUpGuiThread() pipe with FD_CLOEXEC. Call XFilterEvent + before the public X11 event filters to avoid applications + filtering out events that are necessary for input methods to + operate. + +- QBuffer + Make IO_Truncate not detach the explicitely shared byte array. + +- QButton + In setPixmap(), avoid relayouting if the new pixmap doesn't + change the size. + +- QCanvasEllipse + Windows only: Workaround a Windows limitation that doesn't + support 2x2 ellipse rendering without a pen. Don't try to + double buffer invalid areas. + +- QClipboard + Flush the clipboard contents when the application object is + destroyed. + X11 only: another race condition fixed. Handle paste + operations with empty data. + +- QComboBox + Accept enter/return key press events on the line edit. Fixed + vertical alignment of text when a global strut is set. Clip + drawing of large items. Fixed problem with items not being + highlighted the first time the popup is shown. + +- QCommonStyle + Fixed SR_CheckBoxFocusRect for empty checkboxes (now inside + the indicator) + +- QComplexText + Added correct positioning specs for all of thai and lao. Some + reordering fixes. + +- QCustomEvent + Removed bogus warning on illegal type ids. + +- QDataTable + Don't display a single empty row if result set is empty and + QuerySize cannot be determined. Don't resize the table after a + refresh() if the size is already known. + In closeEvent(), accept the event only when isHidden() + +- QDateTime + Fixed addYears() for days missing in certain years. + +- QDns + Slightly more reliable now, fixed a memory leak. + +- QDockArea + Fixed resizing of a QDockWindow is no longer affected by + another closed QDockWindow in the same QDockArea. + +- QDom + Fixed memory consumption when QDomElement::setAttribute() is + called multiple times to change the value of an + attribute. Fixed a memory leak in QDomDocument::importNode(). + +- QDragManager + X11 only: Fixed a dangling pointer case when the current + widget was deleted. Raise cursor decoration. + Windows only: Made dropping of URLs work on Japanese Windows98 + +- QEffects + More robust through deferred deletion. Some code improvements. + X11 only: disable effects on displays with <16bpp (rather then + falling back to the scrolling). + +- QFileDialog + Fixed problems with '#' in path. Fixed creation on + non-existing directories. Make previewMode() check if + the preview widgets are visible. Enable renaming in + ExistingFiles mode. Fix drag'n'drop for the first click into + the listbox. Don't auto-complete when saving a file. Enabled + drag'n'drop of files for all modes. + +- QFont + Windows only: Fixed boundingRect(QChar) for non true type + fonts. Fixed some positioning issues with Thai diacritics. + Win95 only: Make symbol fonts work. + X11 only: Fixed some issues with diacritics in non unicode + encoded fonts. + +- QFontDialog + Fixed getFont() in case no default font is specified. + +- QFrame + Fixed erasing the margin region for flicker-optimized + subclasses (e.g. QLineEdit). Turn on focus and mouse-over + style flags for frame painting. + +- QHeader + Some speed improvements for the sake of QTable and + QListView. Fix redrawing problems when moving header sections. + +- QIconView + Fixed contentsContextMenuEvent(). Only call + QIconViewItem::dragLeft() when the cursor has left the + bounding rect and only call QIconViewItem::dragEnter() when + the cursor has entered the bounding rect. Some performance + improvements. + +- QInputContext + X11 only: Improved XFontSet cache (also for cases where the X + server does not know the locale). + +- QKeyEvent + Windows only: Fixed internal ascii to keycode conversion for + codes > 0x80. + +- QLineEdit + Fixed doubleclick selection to only use spaces as word + seperators. Don't validate twice in a row if fixup() did + nothing. Fixed support for background pixmaps. Improved undo + mechanism. Respect maxLength() in setText(). + +- QListBox + Fixed null-pointer crash in extended selection mode. + +- QListView + Improved auto scrolling. Restrict drop events to items that + have drop enabled and accept the event. Added more + null-pointer checks to prevent crashes when reimplementing + insertItem. Try harder to draw the focus rectangle with an + appropriate contrast. Do not resize a stretachable column in + widthChanged(). Fixed selecting when auto scrolling. + +- QLocalFs + The network protocol for local file systems sets sets the + right permissions for the QUrlInfo objects if you do a + QUrlOperator::listChildren(). + +- QMainWindow + Fixed orientation handler calls. + +- QMenuBar + Fixed resizing when it was emptied. Caused some strange + problems in QMainWindow widgets. Allow stealing of focus in + alt-mode. Activate alt-mode only with the plain Alt key, not + AltGr. + +- QMimeSourceFactory + Windows only: If a path starts with \\ then it's an absolute + path pointing to a network drive + +- QMovie + For animated GIFs, use a minimum delay of 10ms. This is + compatible with both IE and Mozilla and avoids huge loads on + application and X-Server. + +-QPainter + Fixed pos() in combination with transformations save/restore + pairs. Fixed a bug in the BiDi algorithm. + X11 only: some problems when drawing rotated text on Solaris + fix (due to floating point arithmetrics). Fixed a matrix + related crash on Tru64. + Windows only: Draw end pixel in lineTo only for 0-width + pens. Avoid painting with invalid transformations. + +- QPaintDeviceMetrics + Windows only: Fixed numColors() for 32 bit displays. + +- QPixmap + Windodws only: Fixed array bounds read error in win32 + function in convertFromImage. + +- QPopupMenu + Avoid flickering when showing a just created menu + immediately. If there is a custom QWhatsThis installed for the + whole menu but no whatsThis set for the item, use the custom + QWhatsThis to get the help text. + MacOS only: improved scrollable popups + +- QPrintDialog + Unix only: Continue parsing the nsswitch.conf file using + additional services when /etc/printers.conf is not found. + Windows only: Handle lack of default printers more + gracefully. Fix reentrancy issues when reading printer dialog + settings. + +- QPrinter + Unix only: Fixes for 64 bit safety. + Windows only: fixed a possible double-freeing of memory of a + hdc passed to the Windows Common Dialog. + +- QProcess + Windows only: Less command quoting for clients that use + GetCommandLine() directly. Make tryTerminate() robust in case + the process does not run. Make it possible to start batch + files with spaces in the filename. Make it safe to call + qApp->processEvents() in a slot connected to + QProcess::readyReadStdout(). + +- QPSPrinter + Fixed codec for korean postscript fonts (ksc5601.1987-0, not + the listbox. Don't auto-complete when saving a fileeucKR). + +- QRichText + Fixed a case-sensitive compare for alignment. Fixed a free'd + memory access problem with floating items on destruction. + +- QScrollView + If a contents mouse event is accepted, don't propagate as + a normal mouse event. + +- QSemaphore + Fixed race condition in operator -=. + Unix only: a bit more robust. + +- QSettings + Unix only: Fixed requesting subkeylists for single + subkeys. Don't read in QSettings stuff in non-gui mode if + desktop-settings-aware is set to false. + +- QSlider + Emit sliderMoved() after the slider was moved. + +- QSocket + If the read retruns 0, safely assume assume that the peer + closed the connection. Fixed readyRead sometimes not being + emitted. + +- QSpinBox + Fixed setValue so it will ignore input but yet + not interpreted text + +- QSqlDatabase + Fixed a crash on manual deletion of the QApplication object. + +- QSqlDriver + Various fixes and improvements for Oracle, Postgres, MySQL + +- QSqlForm + Fixed crash in clearValues() on empty fields. + +- QString + Fixed setNum(n,base) with n == LONG_MIN and n != 10. Make + toLong() and toULong() 64bit clean (problems on Tru64). + +- QStyle + Make more use of Style_HasFocus. Enforce a usable size for + subcontrols for small scrollbars. Improve titlebar drawing + (e.g. no gradient on 95/NT). Allow drawing of list view + expand controls without branches . + In Windows style: increase default PM_MaximumDragDistance + value. + Windows only: fixed PM_ScrollBarExtent + +- QStyleSheet + More accurate mightBeRichText() heuristic. Fixed setMargin() + to only set left/right/top/bottom as documented, not the + firstline margin. + +- QSvgDevice + Fixed curve command mixup. Some bounding rect fixes. Fixed + output coordinates for drawArc, drawPie and drawChord. Proper + x-axis-rotation and other angle fixes for arcs, pies and + chords. Respect text alignments. No background for Bezier + the listbox. Don't auto-complete when saving a filecurves. + +- QTabBar + Move focus to the current tab if the tab with focus is being + removed. + +- QTable + Fixed contentsContextMenuEvent(). Fixed + adjustRow()/adjustColumn() for multi line sections. Support + for QApplicaton::globalStrut(). Speed improvements for + setNumRows(). Improved sizeHint() to include the left/top + header. Fix for mouse release handling. Update geometry of + cell widgets when changing rowHeight/colWidth. Fixed + QTableItem::sizeHint() for items with wordwrap. Catch + hideColumn() on tables with too few columns. Fixed an endless + recursion when swapping header sections. + +- QTableItem + Fixed multiple calls to setSpan(). + +- QTextCodec: + Initialize locale before loading textcodec plugins. Fixed a + bug in the unicode -> jisx0208 conversion table. + +- QTextEdit + Reset cursor on undos that leave us with an empty + textedit. Quote quotes when exporting rich text. Fixed + possible crash when appending empty paragraphs like + "<p>". Some drawing problems fixed. Made removeParagraph() and + friends work in read-only mode. Fixed cursor blinking with + setEnabled() / setDisabled(). When exporting HTML, quote the + src attribute of img tags tags that contains spaces. Made + setFormat() much faster in case undo/redo is disabled. Fixed + double deletion crash when clearing a document with floating + custom items. + +- QToolButton + In sizeHint() don't reserve space for icons if button has + only a textlabel. Made popups more robust (e.g. if the slot + connected to the popup menu results in the destruction of the + toolbutton) + +- QVariant + Fixed canCast() for Bool -> String conversion. Fixed + operator== for maps. + +- QWaitCondition + Windows only: Fixed multiple waits() + +- QWheelEvent + X11 only: Support for two-wheel mice. This relies on the + X-Server option "ZAxisMapping" "4 5 6 7" + On Windows, we have not found a reliable way to distringuish + the two wheels. Some drivers use larger deltas, something that + breaks with other drivers. + +- QWidget + Make focusWidget() return the focus widget even if it has no + focus policy. In setEnabled(FALSE) always clear the focus. + Made grabWidget() more robust. Fixed isEnabledTo(). + X11 only: set WM_WINDOW_ROLE instead of WINDOW_ROLE. + Windows only: fixed widget-origin pixmap backgrounds. + +- QWidgetStack + More fixes to reduce flicker. + +- QWorkspace + Traditional activeWindow() fixes. Make maximizing a window while + the workspace is invisible work. If the already active window + is clicked on, transfer focus to the child. Restore focus to + old subcontrol when changing the active MDI window. Make sure + a MDI window is not resized below a child widget's minimum + size. Do not allow resizing windows when we have an active + popup window. + +- QXmlSimpleReader + Fixed a memory leak for incremental parsing. diff --git a/dist/changes-3.1.0 b/dist/changes-3.1.0 new file mode 100644 index 0000000000..f08094670c --- /dev/null +++ b/dist/changes-3.1.0 @@ -0,0 +1,334 @@ +Qt 3.1 introduces many significant new features and many improvements +over the 3.0.x series. This file provides an overview of the main +changes since version 3.0.x. For further details see the online +documentation which is included in this distribution, and also +available at http://doc.trolltech.com/. + +The Qt version 3.1 series is binary compatible with the 3.0.x series: +applications compiled for 3.0 will continue to run with 3.1. + + +**************************************************************************** +* General * +**************************************************************************** + +Qt Script for Applications +-------------------------- +Qt 3.1 is the first Qt release that can be used with Qt Script for +Applications (QSA). QSA provides a scripting engine, an IDE for +creating and editing scripts and script forms, and bindings to the Qt +API. Script-enabling a Qt application is not difficult and the IDE +makes it easy for resellers and end-users to write their own scripts. +QSA is due for release after Qt 3.1. + + +Qt Designer +----------- +Qt Designer, the visual GUI builder, has undergone several usability +improvements. A new dialog for creating and editing signals and slots +connections has been created: it is much easier to use and much faster +for setting up multiple connections. The widgets are now presented in +an easy-to-use toolbox rather than in toolbars (although you can still +have the toolbars if you want). The property editor now handles common +properties in multiple widgets simultaneously. By popular demand, +WYSIWYG support for QWidgetStack has been added. Rich text is now +supported with a rich text editor. And the code editor can be used for +ordinary member functions as well as for slots. + + +Qt Assistant +------------ +Qt Assistant, the Qt documentation browser, can now be used with +custom documentation sets. This new functionality combined with the +new QAssistantClient class means that you can use Qt Assistant as a +help browser for your own applications. Qt Assistant has also been +enhanced by the addition of a fast full text search engine. + + +Motif +----- +The general industry-wide move away from Motif is leaving more and +more companies in need of a migration solution. But converting large +legacy applications in one step is often impractical. To minimize +risks and to manage the workload companies often want to port code on +a module by module basis. Qt 3.1 includeds a completely new Motif +module that supports hybrid applications in which Qt code and Motif +code coexist. (This obsoletes the earlier rudimentary Qt Xt/Motif +extension.) + + +ActiveX +------- +With the release of Qt 3.1, customers who use Qt for Microsoft Windows +development can now use Qt with ActiveX. The new ActiveQt module +provides a simple API for COM and ActiveX. The module can be used to +create applications which host ActiveX controls, and also to create +applications that serve ActiveX controls (e.g. Internet Explorer +plugins). + + +Qt/Mac +------ +The introduction of Qt/Mac, a Mac OS X port of Qt, with Qt 3.0 has +proved a great success. This port has undergone many improvements in +Qt 3.1, especially with respect to Appearance Manager, anti-aliased +text and user settings. The Qt OpenGL support is greatly improved, and +uses the hardware-accelerated drivers. + + +Qt/Embedded +----------- +Graphics, mouse and keyboard drivers can now be compiled as plugins. + + +Qt library +---------- +In addition to the new additions and enhancements referred to above, +as with all major Qt releases, Qt 3.1 includes hundreds of +improvements in the existing class library. Here is a brief summary of +the most significant changes: + +- QTextEdit has a new text format: LogText. This is a performance and + memory optimized format especially designed for the fast display of + large amounts of text. The format supports basic highlighting, + including bold and colored text. + +- The new QSyntaxHighlighter class makes it both easy and efficient to + add syntax highlighting capabilities to a QTextEdit. + +- QHttp and QFtp in earlier Qt's were implementations of the + QNetworkProtocol. Both have been extended to stand in their own + right. If you missed some flexibility in the network protocol + abstractions of earlier Qt's, the new QHttp and QFtp classes should + provide the solution. + +- QAccel, used to handle keyboard shortcuts, now gracefully copes with + shortcut clashes. If a clash occurs, a new signal, + activatedAmbiguously(), is emitted. Classes that use QAccel, like + QButton's subclasses and QPopupMenu, make use of this new + functionality. Futhermore QAccel can now handle multi-key sequences, + for example, Ctrl+X,Ctrl+F. + +- QClipboard has been extended to simplify data exchange between + programs. + +- Thread support: almost all methods in the tools classes have been + made reentrant. QApplication::postEvent() and a few other methods + are now thread-safe if Qt is compiled as a multi-threaded library. + (The documentation now states if a class or function is thread-safe + or reentrant.) + +- A QMutexLocker class has been added to simplify the locking and + unlocking of mutexes. + +- Input methods: A selectionLength() function has been added to + QIMEvent. Japanese compositions are now handled correctly. Support + for AIMM based input methods (those working on non-Asian versions of + Win95/98/Me) has been added. + +- Large File support: Qt's internals have been modified to support + Large Files (> 2GB). QFileDialog will now correctly display and + select large files. + +- SQL module: Support for prepared query execution and value binding + has been added. Among other benefits, this makes it possible to + write large BLOBs (> 2 KB) to Oracle databases, and to write Unicode + strings to SQL Server databases. + +- Support for XIM on Solaris. + +Build process +------------- +The build process has been improved: + +- The configure script does not need QTDIR to be set anymore. + +- Improved support for building Qt on MSVC.NET. + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAccel: + Corrected illegal accelerator state when using multiple + keysequences. (Resulted in no accelerator being triggered when + there's a partial match). Only triggers on enabled + accelerators and their enabled items. Eats all keys in a + keysequence, not just the first and last. + +- QCString: + Speed-optimized replace(). + +- QDataStream: + Applies to printable data streams only: If the version number + of the device is less than 4, use the same streaming format + that was used in Qt 2.3 and earlier. + +- QDataTable: + Respect read-only columns. Make it possible to swap columns. + +- QDockWindow: + Added a standard widget constructor (taking a QWidget *parent, + const char *name and WFlags). Improved docking behavior. + +- QFileDialog: + Windows only: make Qt's filedialog work properly with network + paths. + +- QFontMetrics: + Windows only: Fixed QFontMetrics::boundingRect( QChar c ) to + work for non-TrueType fonts. + +- QHeader: + Optimized the sectionSizeHint() calculation, which in turn + speeds up all QHeader size/label calculations. + +- QIconFactory: + Avoid infinite loops when recursively calling + QPixmap::pixmap(). + +- QIconView: + Fixed navigation and selection with arrow keys. Some speedups + when repainting. + +- QKeySequence: + Treat Unicode characters in string defined sequences + correctly. So, now letters like Æ, Ø and Å should work as + accelerators, even through translation files. + +- QLayout: + alignmentRect() respects the layout's maximum size. + +- QLineEdit: + Added a lostFocus() signal. Double-clicking only uses spaces + as word bounderies for the selection now, not dots, commas, + etc. Support double-click+mousemove selection. + +- QListBox: + Fixed the item which is passed into the contextMenuRequested() + signal (this was sometimes wrong). Don't select items that are + not selectable. + +- QListView: + Shift selection in Extended mode now follows Windows + Shift-selection standard. Erase empty area when drawing + listviews without columns. Only drops on drop-enabled items + that accept drops. + +- QListViewItem: + Optimized size claculation for multi-line items. + +- QMainWindow: + Base the minimumSizeHint() on the sizeHint()s of the left hand + dock area (instead of the minimumSize()). + +- QMenuBar: + Fixed broken Alt release detection. Fixed flickering. Fixed + empty menubars resizing properly. + +- QObject: + Fixed return value of disconnect(). Fixed disconnect()ing + SIGNALs from SIGNALs and disconnect()ing multiple SLOTs with + the same name from a SIGNAL. + +- QProcess: + Unix only: Don't eat the file descriptors if a lot of + processes (with short runtimes) are started immediately after + each other. + +- QPSQLDriver: + Make the driver compile with the standard PostgreSQL source + distribution under Windows. Better handling of network, + datetime and geometrical datatypes. + +- QRegion: + Fixed setRects() to calculate the bounding rectangle + correctly. + +- QScrollView: + Doesn't reposition the view when the user is scrolling the + view. + +- QSpinBox: + Fixed setValue() so that any not-yet-interpreted input is + ignored when setting a new value. + +- QString: + Support QTextCodec::codecForCStrings(). Support + std::string<==>QString conversion when STL support is on. + +- QSyntaxHighlighter: + Added function rehighlight(). Improved internals to be more + efficient (less calls to highlightParagraph() necessary). + +- QTable: + Fixed Tab/BackTab handling to always work. Fixed + setColumnLabels() and setRowLabels(). + +- QTableItem (and subclasses): + Now supports global struts. (See QApplication::globalStrut().) + +- QTDSDriver: + Added support for binary datatypes. + +- QTextCodec: + Added QTextCodec::codecForCStrings and QTextCodec::codecForTr. + +- QTextEdit: + Fixed a painting error which resulted in areas of the textedit + not being erased correctly. Make sure repainting is done after + changing the underline-links setting. Renamed 'allowTabs' + property to 'tabChangesFocus' (inverted value). Added a new + property 'autoFormatting'. When exporting HTML also quote + quotes. Fixed a background erasing bug which messed up the + view. + +- QUrl: + Recognize Windows drive letters not only in the form of "c:/" + but also in the form "c:" (without the '/'). + +- QWidget: + Fixed some visibility issues. + +**************************************************************************** +* Qt Designer * +**************************************************************************** + +- Now displays the classname of "gray box" custom widgets in the gray + box on the form. + +- Accept tildes (~) in the project settings. + +- A new command line tool conv2ui (in qt/tools/designer/tools) has + been added, to convert dialog description files from different file + formats to .ui files without the need to invoke Qt Designer. This + tool uses the same plugins as Qt Designer for loading other dialog + description files. + +- An import filter for .kdevdlg files has been added. + +- Actions in the action editor are now sortable. + +- Improved usability of more dialogs (in-place renaming, drag'n'drop, + etc.) + +- Preserve creation order of forward declarations, variables, etc. + +- Save comments for actions. + +- uic: Fixed generating code for QStringList properties. + +**************************************************************************** +* Qt Assistant * +**************************************************************************** + +- Fixed some accelerator conflicts. + +**************************************************************************** +* Qt Linguist * +**************************************************************************** + +- Handle trailing backslash in strings correctly in lupdate. + +******************************** END *************************************** diff --git a/dist/changes-3.1.0-b1 b/dist/changes-3.1.0-b1 new file mode 100644 index 0000000000..527992ff2c --- /dev/null +++ b/dist/changes-3.1.0-b1 @@ -0,0 +1,692 @@ +Qt 3.1 introduces many significant new features and many improvements +over the 3.0.x series. This file provides an overview of the main +changes since version 3.0.5. For further details see the online +documentation which is included in this distribution, and also +available at http://doc.trolltech.com/. + +The Qt version 3.1 series is binary compatible with the 3.0.x series: +applications compiled for 3.0 will continue to run with 3.1. + + +**************************************************************************** +* General * +**************************************************************************** + +Qt Script for Applications +-------------------------- +Qt 3.1 is the first Qt release that can be used with Qt Script for +Applications (QSA). QSA provides a scripting engine, an IDE for +creating and editing scripts and script forms, and bindings to the Qt +API. Script-enabling a Qt application is not difficult and the IDE +makes it easy for resellers and end-users to write their own scripts. +QSA is due for release after Qt 3.1. + + +Qt Designer +----------- +Qt Designer, the visual GUI builder, has undergone several usability +improvements. A new dialog for creating and editing signals and slots +connections has been created: it is much easier to use and much faster +for setting up multiple connections. The widgets are now presented in +an easy-to-use toolbox rather than in toolbars (although you can still +have the toolbars if you want). The property editor now handles common +properties in multiple widgets simultaneously. By popular demand, +WYSIWYG support for QWidgetStack has been added. Rich text is now +supported with a rich text editor. And the code editor can be used for +ordinary member functions as well as for slots. + + +Qt Assistant +------------ +Qt Assistant, the Qt documentation browser, can now be used with +custom documentation sets. This new functionality combined with the +new QAssistantClient class means that you can use Qt Assistant as a +help browser for your own applications. Qt Assistant has also been +enhanced by the addition of a fast full text search engine. + + +Motif +----- +The general industry-wide move away from Motif is leaving more and +more companies in need of a migration solution. But converting large +legacy applications in one step is often impractical. To minimize +risks and to manage the workload companies often want to port code on +a module by module basis. Qt 3.1 includeds a completely new Motif +module that supports hybrid applications in which Qt code and Motif +code coexist. (This obsoletes the earlier rudimentary Qt Xt/Motif +extension.) + + +ActiveX +------- +With the release of Qt 3.1, customers who use Qt for Microsoft Windows +development can now use Qt with ActiveX. The new ActiveQt module +provides a simple API for COM and ActiveX. The module can be used to +create applications which host ActiveX controls, and also to create +applications that serve ActiveX controls (e.g. Internet Explorer +plugins). + + +Qt/Mac +------ +The introduction of Qt/Mac, a Mac OS X port of Qt, with Qt 3.0 has +proved a great success. This port has undergone many improvements in +Qt 3.1, especially with respect to Appearance Manager, anti-aliased +text and user settings. The Qt OpenGL support is greatly improved, and +uses the hardware-accelerated drivers. + + +Qt/Embedded +----------- +Graphics, mouse and keyboard drivers can now be compiled as plugins. + + +Qt library +---------- +In addition to the new additions and enhancements referred to above, +as with all major Qt releases, Qt 3.1 includes hundreds of +improvements in the existing class library. Here is a brief summary of +the most significant changes: + +- QTextEdit has a new text format: LogText. This is a performance and + memory optimized format especially designed for the fast display of + large amounts of text. The format supports basic highlighting, + including bold and colored text. + +- The new QSyntaxHighlighter class makes it both easy and efficient to + add syntax highlighting capabilities to a QTextEdit. + +- QHttp and QFtp in earlier Qt's were implementations of the + QNetworkProtocol. Both have been extended to stand in their own + right. If you missed some flexibility in the network protocol + abstractions of earlier Qt's, the new QHttp and QFtp classes should + provide the solution. + +- QAccel, used to handle keyboard shortcuts, now gracefully copes with + shortcut clashes. If a clash occurs, a new signal, + activatedAmbiguously(), is emitted. Classes that use QAccel, like + QButton and QPopupMenu, make use of this new functionality. + Futhermore QAccel can now handle multi-key sequences, for example, + Ctrl+X,Ctrl+F. + +- QClipboard has been extended to simplify data exchange between + programs. + +- Thread support: almost all methods in the tools classes have been + made reentrant. QApplication::postEvent() and a few other methods + are now thread-safe if Qt is compiled as a multi-threaded library. + (The documentation now states if a class or function is thread-safe + or reentrant.) + +- A QMutexLocker class has been added to simplify the locking and + unlocking of mutexes. + +- Input methods: A selectionLength() function has been added to + QIMEvent. Japanese compositions are now handled correctly. Support + for AIMM based input methods (those working on non-Asian versions of + Win95/98/Me) has been added. + +- Large File support: Qt's internals have been modified to support + Large Files (> 2GB). QFileDialog will now correctly display and + select Large Files. + +- SQL module: Support for prepared query execution and value binding + has been added. Among other benefits, this makes it possible to + write large BLOBs (> 2 KB) to Oracle databases, and to write Unicode + strings to SQL Server databases. + + +Build process +------------- +The build process has been improved: + +- The configure script does not need QTDIR to be set anymore. + + +**************************************************************************** +* Library * +**************************************************************************** + +New classes +================== + +- QBackInsertIterator +- QEventLoop +- QIconFactory +- QMutexLocker +- QSyntaxHighlighter + + +QAction +------------------ +New functions: + void setVisible( bool ) + bool isVisible() const + + +QCanvas +------------------ +New functions: + void invalidate() + bool isValid() const + + +QColorDialog +------------------ +New functions: + static void setStandardColor( int, QRgb ) + + +QAccel +------------------ +New signals: + void activatedAmbiguously( int id ) + + +QApplication +------------------ +The event loop has been moved to the QEventLoop class, making it +easier to integrate other toolkits with Qt. + +New functions: + QEventLoop *eventLoop() const + void setEventLoop( QEventLoop * ) + QString sessionKey() const + + +QClipboard +------------------ +New functions: + void clear( Mode mode ) + bool supportsSelection() const + bool ownsSelection() const + bool ownsClipboard() const + QString text( Mode mode ) const + QString text( QCString& subtype, Mode mode ) const + void setText( const QString &, Mode mode ) + QMimeSource *data( Mode mode ) const + void setData( QMimeSource*, Mode mode ) + QImage image( Mode mode ) const + QPixmap pixmap( Mode mode ) const + void setImage( const QImage &, Mode mode ) + void setPixmap( const QPixmap &, Mode mode ) + + +QDesktopWidget +------------------ +New functions: + const QRect& screenGeometry( QWidget *widget ) const + const QRect& screenGeometry( const QPoint &point ) const + const QRect& availableGeometry( int screen ) const + const QRect& availableGeometry( QWidget *widget ) const + const QRect& availableGeometry( const QPoint &point ) const + + +QFileDialog +------------------ +Large Files (> 2GB) are now correctly displayed and selected. + + +QFileInfo +------------------ +QFileInfo now supports Large Files (> 2GB) internally. To maintain +binary compatibility the QFileInfo API cannot be adapted before Qt 4 +and will truncate file sizes and offsets to 4 GB. + +New functions: + bool isHidden() const + + +QFile +------------------ +QFile now supports Large Files (> 2GB) internally. To maintain binary +compatibility the QFile API cannot be adapted before Qt 4 and will +truncate file sizes and offsets to 4 GB. + + +QDir +------------------ +QDir now supports Large Files (> 2GB). + + +QImEvent +------------------ +New functions: + in selectionLength() const + + +QIconSet +------------------ +New functions: + void installIconFactory( QIconFactory *factory ) + + +QImage +------------------ +New functions: + static QImage fromMimeSource( const QString& abs_name ) + + +QMetaObject +------------------ +New functions: + QStrList enumeratorNames( bool super ) const + int numEnumerators( bool super ) const + static bool hasMetaObject( const char *class_name ) + + +QMenuData +------------------ +New functions: + bool isItemVisible( int id ) const + void setItemVisible( int id, bool visible ) +Both functions are inherited by QMenuBar and QPopupMenu + + +QPaintDevice +------------------ +New functions (x11 only): + static Qt::HANDLE x11AppRootWindow() + static int x11AppDepth( int screen ) + static int x11AppCells( int screen ) + static Qt::HANDLE x11AppRootWindow( int screen ) + static Qt::HANDLE x11AppColormap( int screen ) + static void *x11AppVisual( int screen ) + static bool x11AppDefaultColormap( int screen ) + static bool x11AppDefaultVisual( int screen ) + static int x11AppDpiX( int ) + static int x11AppDpiY( int ) + static void x11SetAppDpiX( int, int ) + static void x11SetAppDpiY( int, int ) + + +QPicture +------------------ +New functions: + void setBoundingRect( const QRect &r ) + + +QPixmap +------------------ +New functions: + bool hasAlpha() const + static QPixmap fromMimeSource( const QString& abs_name ) + + +QPrinter +------------------ +New functions: + void setMargins( uint top, uint left, uint bottom, uint right ) + void margins( uint *top, uint *left, uint *bottom, uint *right ) const + +Improvements: + Handle masked images and pixmaps correctly. Add code to handle + asymmetrical printer margins correctly. + + +QSessionManager +------------------ +New functions: + QString sessionKey() const + + +QStyleOption +------------------ +New functions: + QStyleOption( QCheckListItem* i ) + QCheckListItem* checkListItem() const + +New enums values: + PE_CheckListController, PE_CheckListIndicator, + PE_CheckListExclusiveIndicator, PE_PanelGroupBox + CE_MenuBarEmptyArea + CE_DockWindowEmptyArea + PM_CheckListButtonSize + CT_TabBarTab, CT_Slider, CT_Header, CT_LineEdit + SH_GroupBox_TextLabelVerticalAlignment + + +QThread +------------------ +New functions: + void terminate() + + +QTranslator +------------------ +New functions: + bool load( const uchar *data, int len ) + + +QVariant +------------------ +New functions: + QVariant( const QPen& ) + const QPen toPen() const + QPen& asPen() + bool isNull() const + +New enum values: + KeySequence, Pen + + +QWidget +------------------ +All top-level widgets will now try to find an appropriate application +icon when they're not given one, trying in this order + 1. Parent widget's icon + 2. Top-level widget's icon + 3. Application main widget's icon + +New functions: + bool isFullScreen() const + void setSizePolicy( QSizePolicy::SizeType hor, QSizePolicy::SizeType ver, bool hfw = FALSE ) + +New enum values: + AncestorOrigin + + +QWMatrix +------------------ +Two different transformation modes for painter transformations are now +available. See the QWMatrix documentation for details. + +New functions: + QPointArray mapToPolygon( const QRect &r ) const + double det() const + static void setTransformationMode( QWMatrix::TransformationMode m ) + static TransformationMode transformationMode() + +New enums: + TransformationMode { Points, Areas } + + +QFtp +------------------ +While still remaining a subclass of QNetworkProtocol, QFtp can be now +used directly for more advanced FTP operations. The QFtp documentation +provides details of the extensions to the API. + + +QHttp +------------------ +While still remaining a subclass of QNetworkProtocol, QHttp can be now +used directly for more advanced HTTP operations. The QHttp +documentation provides details of the extensions to the API. + +Related new classes: + QHttpHeader + QHttpResponseHeader + QHttpRequestHeader + + +QSqlDriver +------------------ +New enum values: + Unicode, PreparedQueries, OracleBindingStyle, ODBCBindingStyle + + +QSqlQuery +------------------ +New functions: + bool isForwardOnly() const + void setForwardOnly( bool forward ) + bool exec() + bool prepare( const QString& query ) + void bindValue( const QString& placeholder, const QVariant& val ) + void bindValue( int pos, const QVariant& val ) + void addBindValue( const QVariant& val ) + + +QTableSelection +------------------ +New functions: + QTableSelection( int start_row, int start_col, int end_row, int end_col ) + + +QTable +------------------ +New properties: + int numSelections + +New functions: + void selectCells( int start_row, int start_col, int end_row, int end_col ) + void selectRow( int row ) + void selectColumn( int col ) + void updateHeaderStates() + void setRowLabels( const QStringList &labels ) + void setColumnLabels( const QStringList &labels ) + + +QCString +------------------ +New functions: + QCString &replace( char c, const char *after ) + QCString &replace( const char *, const char * ) + QCString &replace( char, char ) + +New global functions: + QByteArray qCompress( const uchar* data, int nbytes ) + QByteArray qUncompress( const uchar* data, int nbytes ) + QByteArray qCompress( const QByteArray& data ) + QByteArray qUncompress( const QByteArray& data ) +Improvements: + Speed optimisations in lots of the old search and replace + functions. + + +QDate +------------------ +New functions: + int weekNumber( int *yearNum = 0 ) const + static QDate currentDate( Qt::DateTimeSpec ) + + +QTime +------------------ +New functions: + static QTime currentTime( Qt::DateTimeSpec ) + + +QDateTime +------------------ +New functions: + static QDateTime currentDateTime( Qt::DateTimeSpec ) + + +QPtrList +------------------ +New functions: + bool replace( uint i, const type *d ) + + +QRegExp +------------------ +New functions: + QString errorString() + static QString escape( const QString& str ) + int numCaptures() const + + +QSettings +------------------ +New functions: + QSettings( Format format ) + void setPath( const QString &domain, const QString &product, Scope = User ) + void beginGroup( const QString &group ) + void endGroup() + void resetGroup() + QString group() const + +New enums: + Format { Native = 0, Ini } + Scope { User, Global } + + +QChar +------------------ +Updated Unicode tables to Unicode-3.2 + + +QString +------------------ +New functions: + QString &append( const QByteArray & ) + QString &append( const char * ) + QString &prepend( const QByteArray & ) + QString &prepend( const char * ) + QString &remove( QChar c ) + QString &remove( char c ) + QString &remove( const QString & ) + QString &remove( const QRegExp & ) + QString &remove( const char * ) + QString &replace( uint index, uint len, QChar ) + QString &replace( uint index, uint len, char c ) + QString &replace( QChar c, const QString & ) + QString &replace( char c, const QString & after ) + QString &replace( const QString &, const QString & ) + QString &replace( QChar, QChar ) + QString &operator+=( const QByteArray &str ) + QString &operator+=( const char *str ) + static QString fromUcs2( const unsigned short *ucs2 ) + const unsigned short *ucs2() const + +Improvements: + find(), findRev() and contains() use either a fast hashing + algorithm (for short strings) or an optimized Boyer-Moore + implementation for long strings. Lots of smaller performance + optimisations. + + +QTextStream +------------------ +New functions: + QTextCodec *codec() + + +QTimeEdit +------------------ +New properties: + Display display + +New functions: + uint display() const + void setDisplay( uint ) + +New enums: + Display { Hours, Minutes, Seconds, AMPM } + + +QFrame +------------------ +New enum values: + GroupBoxPanel + + +QGroupBox +------------------ +New properties: + bool flat + +New functions: + bool isFlat() const + void setFlat( bool b ) + + +QListBox +------------------ +New functions: + QListBoxItem* selectedItem() const + + +QListView +------------------ +New functions: + int sortColumn() const + + +QSlider +------------------ +New functions: + void addLine() ( as slot) + void subtractLine() (as slot) + + +QTextBrowser +------------------ +New functions: + void sourceChanged( const QString& ) + void anchorClicked( const QString&, const QString& ) + + +QTextEdit +------------------ +QTextEdit offers another TextFormat (LogText), which is optimized +(speed and memory) for displaying large read-only texts normally used +for logging. + +New properties: + bool allowTabs + +New functions: + QString anchorAt( const QPoint& pos, AnchorAttribute a ) + void setAllowTabs( bool b ) + bool allowTabs() const + void insert( const QString &text, uint insertionFlags = CheckNewLines | RemoveSelected ) + +New signals: + void clicked( int parag, int index ) + void doubleClicked( int parag, int index ) + +New enums: + TextInsertionFlags { RedoIndentation, CheckNewLines, RemoveSelected } + +New enum values: + AtWordOrDocumentBoundary + + +QToolButton +------------------ +New properties: + TextPosition textPosition + +New functions: + TextPosition textPosition() const + void setTextPosition( TextPosition pos ) + +New enums: + TextPosition { Right, Under } + + +QTooltip +------------------ +New functions: + static void setWakeUpDelay( int ) + + +QWhatsThis +------------------ +New functions: + static void setFont( const QFont &font ) + + +QDomDocument +------------------ +New functions: + QString toString( int ) const + QCString toCString( int ) const + + +QFont on X11 +------------------ +Improvements: + Safe handling of huge font sizes. Added support for the new + Xft2 font library on XFree-4.x. + + +QRegion on X11 +------------------ +Improvements: + Removed the 16 bit size limitation + +**************************************************************************** diff --git a/dist/changes-3.1.0-b2 b/dist/changes-3.1.0-b2 new file mode 100644 index 0000000000..f5c8c14a71 --- /dev/null +++ b/dist/changes-3.1.0-b2 @@ -0,0 +1,220 @@ +Qt 3.1 introduces many significant new features and many improvements +over the 3.0.x series. For an overview of the main changes between +3.0.x and 3.1, look at the changes-3.1.0-b1 file. This file describes +the changes between Qt 3.1 beta1 and Qt 3.1 beta2. + + +**************************************************************************** +* General * +**************************************************************************** + +The binary incompatibilities that were introduced in Qt 3.1 beta1 +have been fixed. + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction + Don't update when nothing has changed. + +- QActionGroup + Syncronize comboboxes correctly for groups with + separators. Set the initial currentItem of comboboxes to the + action that is on when adding the group. Emit activated signal + for non-toggle actions selected from a combobox. Apply the + state of the action group for new widgets. + +- QApplication + Correctly set the accept() flag on accel events. Obsoleted + processOneEvent(), we have a better way for integrating + eventloops now. (See QEventLoop's documentation.) + Windows only: reserve more space for very long application + filenames. + +- QCheckTableItem + Use the colorgroup passed in for the background color and not + the viewport's. + +- QColor + Windows only: Fix palette allocation and ManyColor mode on + Windows. + +- QComboBox + Emit activated() signals from the wheel event handler. + +- QComboTableItem + Make sure stringlist is updated even if setStringList() is + called while an editor exists. + +- QDataTable + Windows only: If edit confirmation was switched on and + the user cancelled an update by clicking in a different field, + the current row was needlessly changed. + +- QDateTimeEdit/QTimeEdit + Now supports wraparound for time editing. + +- QDesktopWidget + Windows only: Allow explicit creation of QDesktopWidgets. + +- QDns + Fix a crash when a QDns object is deleted in a slot connected + to its resultsReady() signal. + +- QDockWindow + Windows only: Don't pass window activation around + unnecessarily when the activation is ignored anyway. Also + fixed repaint errors while dragging dock windows. Remove + floating windows from the mainwindow's internal lists when + deleting. + +- QEventLoop + Renamed processNextEvent(flags,bool) to processEvents(flags) + and introduced new ProcessEvents flag, WaitForMore. Remove + processOneEvent since it is redundant. + +- QFileDialog + Windows only: Disable NTFS permission lookup during filedialog + population. This can take a long time, and the information is + not really required. + +- QGLContext + Added a workaround to get overlays to work on ATi FireGL + cards. + +- QGLWidget + Added support for rendering text into a GL context with the + renderText() calls. + +- QHeader + Draw the sort arrow at the right position with multi-line + header labels. Scale the correct sections when the header + sections are reordered. Respect orientation() in sizeHint(). + +- qHeapSort() + Fixed to only require operator<, instead of a mix of + operator<, <=, and >. + +- QIconView + Optimize updates on focus/window activation changes. + +- QLibrary + Windows only: only append ".dll" extension if no extension has + been provided. + +- QListBox + Don't call ensureCurrentVisible() in resizeEvent() unless the + current item was visible when you started resizing. + +- QListView + Don't draw the cell if the cell wouldn't be visible due to + having a width or height of 0. Don't call cancelRename() when + the rename was OK'd. When showing a tooltip make sure it's + only for that column and not for the whole item. + +- QMacStyle + Many improvements to follow the native style more closely. + +- QMainWindow + Close all floating dockwindows of the mainwindow in the close + event. + +- QMenuData + Make removeItem(int id) work on trees like the other functions + that take IDs as arguments. + +- QObject + Make sender() a safer function to use: + - it cannot be dangling anymore (points to 0 if the sender was + deleted or disconnected) + - it maintains its value after other signals have been emitted + Fixed compatibility problem in connect(). Remove quadratic + behaviour in insertChild() + +- QPicture + Proper streaming for null pictures. + +- QPixmap + X11 only: allow grabWindow() to work on a screen other than + the default screen. + +- QPopupMenu + Draw submenu items disabled if the submenu is disabled. Fix + null-pointer dereferencing for dynamically changing menus. + +- QProcess + Windows only: make the tryTerminate() function work for + windows applications (it still does not work for + consoleapplications, though). + +- QSocket + Don't crash if the readBlock() returned 0. + +- QSplitter + addWidget() now reparents the widget if necessary. + +- QTable + Set the table of the item to the table in insertItem(), so + takeItem()/insertItem() can be used to move items between + tables. + +- QWidget + Clear WDestructiveClose before calling deleteLater() on + widgets. Event processing during destruction might otherwise + have another close event come along, which would issue another + deleteLater() call. Added a new function toggleShowHide(bool show). + Simplified visible() handling and added a convenience property + "shown" and a write function for "hidden". Save WFlags in + showFullScreen() and restore them so flags are remembered + correctly. + +- QWindowsStyle + Make the Windowsstyle obey the system's scrollbar widths. + +- qUncompress() + Don't hang forever if the expected size passed in is 0. Return + an empty bytearray if something went wrong instead of garbage + data. + + + + +**************************************************************************** +* Qt Designer * +**************************************************************************** + +- Improved the look of the Toolbox + +- Many small usibility improvements in the special editors for widgets + (drag'n'drop, in-place renaming, etc.). + +- New icon look. + +- Accept class names with "::" and generate correct namespace code in + uic. + +- Reduced startup time. + +- Fixed a crash when loading .ui files using QWidgetFactory. + +- Cleaned up some old dialogs and removed obsolete settings. + +- Improved the .dlg import plugin. + +- Button text properties can be edited in a multi-line editor now, + since all buttons support multi-line labels. + +**************************************************************************** +* Qt Assistant * +**************************************************************************** + +- Added commandline option -removeContentFile. + +- New icon look. + +**************************************************************************** +* Qt Linguist * +**************************************************************************** + +- New icon look. diff --git a/dist/changes-3.1.1 b/dist/changes-3.1.1 new file mode 100644 index 0000000000..41a5742ee1 --- /dev/null +++ b/dist/changes-3.1.1 @@ -0,0 +1,212 @@ +Qt 3.1.1 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.1.0 + + +**************************************************************************** +* General * +**************************************************************************** + +- The build issues with the Professional Edition have been solved. + +- The build problems reported on Solaris and HP-UX have been addressed. + +- Detection of Xft2 support has been added. + +- The installer and reconfigure tools on Windows have been fixed. + +- Look'n'Feel improvements have been made in the Qt/Mac version. + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAccel + Fixed for single key accelerators. Made Shift modifier work + for all key combinations, unless an accelerator with Shift is + defined. + +- QAction + Remove iconset when a null-iconset is being set. + +- QApplication + Don't overwrite explicitly set font with the default font when + using the static methods before calling the constructor. + X11 only: Support custom color maps on 8-bit visuals. + +- QCheckBox + Draw focus indicator into indicator if the text label is empty. + +- QClipboard + X11 only: Null-terminate encoded strings. + +- QComboBox + Made sure the current item is selected in the list. Call + focusIn/OutEvent handlers when the lineedit changes focus. + +- QDataTable + Update the current cell when selecting rows. + +- QDialog + Don't find a place for dialogs that have been explicitly + moved. + +- QDir + Improved filtered lookup. + +- QDockWindow + Emit visibilityChanged signal only if visibility relative to + the dock area has changed. + +- QEventLoop + Implement this API on Windows and Mac. + +- QFileDialog + Fix visibility of preview widgets. Renaming files now also + works in ExistingFiles mode. + +- QFont + X11 only: Fixed width calculation for undefined characters. + +- QFrame + Erase the margin region for flicker-optimized subclasses. + +- QFtp + Don't try to connect multiple times to the server. + +- QHttp + Fix special case for "Content-Length: 0" transfers. + +- IME (Input Methods) + Windows only: Accept the input when the widget loses focus. + +- QLibrary + Mac only: Implement path searching to look in standard loader places + for plugins. + +- QLineEdit + Draw background pixmap with the correct offset. Fixed + undo/redo. + Mac only: Support for native navigation and selection with keyboard. + +- QListBox + Fixed null-pointer crash in QFileDialog. + +- QListView + Fixed null-pointer crash when reimplementing insertItem. + +- QMenuBar + Improved focus handling. + +- QMime + Support URLs on Japanese Win98. + Windows only: Support URLs on network drives. + +- QOCIDriver + Improved handling for datatype mismatches + +- QODBCDriver + Don't report Unicode support on Win9x/Me. Support + high-precision values. Support fetchLast in forward-only + databases + +- QPainter + Make endpixel rendering consistent on all platforms. Draw + focus rectangles with better contrast. Fixed text rendering + with wordbreak. + +- QPixmap + Mac only: Support alpha channels when converting from a + QImage. + +- QPopupMenu + Fixed offset errors and keyboard navigation for invisible + items. Allow overlapping of menus with desktop elements (e.g. + taskbar). Avoid flicker for context menus. + +- QPrinterDialog + Unix only: Try harder to find all printers. + +- QProcess + Windows only : Start batch files with spaces in filename. + +- QScrollView + Don't propagate accepted contents mouse events. + +- QSettings + X11 only: Don't read Qt specific settings if application is + not desktop-settings-aware. + Windows only: Handle null-terminations correctly on + Win95/98/Me. Fixed a resource leak. + +- QSqlCursor + Improved performance for multiple inserts + +- QString + Pass base parameter to recursive calls in setNum(). + +- QStyle + Make better use of the style flags. + +- QTabBar + Fixed focus handling for dynamically created tab widgets. + +- QTable + Make sizeHint implementation depend on header + visibility. Update the geometry of cell widgets in + setRowHeight() and setColumnWidth(). + +- QTableItem + Fixed sizeHint() for items with wordwrap and items with + newlines in the text. + +- QTextCodecFactory + Load plugins correctly. + +- QTextEdit + Fixed rendering of selections in inactive windows. Return the + string with format tags in LogText mode. Non-breaking + whitespaces (0xA0) are no longer converted to spaces in text(). + +- QWheelEvent + X11 only: Support second mouse wheel (since there is no + documented API for this on Windows). + +- QWidget + Fix showHidden(). Propagate palettes and fonts correctly to + children. Don't block modeless children of modal dialogs. + +- QWorkspace + Don't return invalid pointers to closed MDI clients. + + +**************************************************************************** +* Tools * +**************************************************************************** + +- moc and uic + Delete output files before aborting. + +- uic + Don't print debug messages from generated code. Fixed column + and row labeling. Don't generate code for database specific + properties. + +- Qt Designer + Fixed reported crashes. + +- Qt Assistant + Flush stdout to make sure that clients get the correct port + number. + + +**************************************************************************** +* Extensions * +**************************************************************************** + +- ActiveQt + Fixed null-pointer crashes for QVariant parameters. Try harder + to convert types. Fixed Qt control placement and property + handling in Visual Basic. Improved workaround for Word + type library problems. Integrated hosted controls in tab focus + chain. Support property overloading in Qt controls. diff --git a/dist/changes-3.1.2 b/dist/changes-3.1.2 new file mode 100644 index 0000000000..79e01364d0 --- /dev/null +++ b/dist/changes-3.1.2 @@ -0,0 +1,631 @@ + +Qt 3.1.2 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.1.1 + + +**************************************************************************** +* General * +**************************************************************************** + +Some build fixes on different platforms. Many small documentation +fixes. + +XFree86 only: Tablet support now also looks for devices called "pen", +not just "stylus" and "eraser". + +Animations: Less CPU-consuming roll effects. +X11 only: Disable effects on displays with <16bpp (rather than +falling back to the scrolling). + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAccel + Allow localization of status bar messages. Try harder to + distinguish between an accelerator and the identical + accelerator with Shift in case on of them is currently + disabled. + +- QAccessible + Send accessibility notification for selection changes in + menubars and popup menus. Send accessibility + notifications for QListBox currentItem/selection changes. + +- QActionGroup + Implement visibility for drop-down actiongroups. + +- QApplication + Return focus to the widget that had it before a popup opened + even if the focus is passed on during the show event handling. + When the programmer/user explicitly sets the style (either + with QApplication::setStyle or the -style command line + option), do not reset the style on settings changes. Creating + a second QApplication reads the settings again. + Windows only: Emit aboutToQuit() when the user logs off. Send + a focusOut event to the focus widget when the user tries to + switch applications using Alt+Tab. Fixed setting of + desktop-wide fade and scroll effects. + Windows95/98/Me: Fixed enter/leave handling. Among other + benefits this makes tooltips work more reliably. + X11 only: Various fixes for input methods, e.g. Korean + 'ami'. Some startup performance improvements with + QSettings. Mark the internal wakeUpGuiThread() pipe with + FD_CLOEXEC. Call XFilterEvent before the public X11 event + filters to avoid applications filtering out events that are + necessary for input methods to operate. Removed old en_US + locale workaround for Solaris. Close all open popups when + clicking on a screen different from the popup's screen. Do not + force 256 colors on 8-bit display (used to be a workaround for + a vnc bug). + Mac only: Popupmenus that are dismissed by clicking outside of their + bounds will no longer send the event to the widget clicked on (to avoid + selection changing when canceling a context menu). QContextMenuEvents + will be sent in the same style as Windows/X11 to make the platforms + more consistent, additionally mapping of Ctrl+Click to RightButton has + been added to allow easy context menu handling. Added warnings when a + Qt application is run outside of an application bundle (in GUI mode) + this will prevent accidental starving from events. Correct state when a + modal dialog is shown (to disable the menubar) is used now, and is + emulated to feel like Carbon applications. Fixed bug so that + QApplication::processEvents() can be called before + QApplication::exec(). Window activation will not change when a popup + menu is displayed. Toolbar toggle button will only toggle the top dock + in a QMainWindow. European text composition is supported now to take + advantage of TextInput modules available on Mac OS X. Window activation + has been improved to allow interleaving windows of different classes + correctly (to decrease differences between X11/Windows and Mac). + +- QBuffer + IO_Truncate no longer detaches the explicitly shared byte array. + +- QButton + In setPixmap(), avoid laying out again if the new pixmap does + not change the size. Use QSharedDoubleBuffer only if it is + enabled (this avoids repainting errors). + +- QButtonGroup + Improve hit testing for cursor navigation. + +- QCanvas + Do not try to double buffer invalid areas. + +- QCanvasEllipse + Windows only: Workaround a Windows limitation that does not + support 2x2 ellipse rendering without a pen. Do not try to + double buffer invalid areas. + +- QColorDialog + Allow the setting of all 48 standard colors. + +- QComboBox + Close any popup menus or listboxes when disabling the combobox. + Fix text alignment when large pixmaps were inserted into the + combobox. + +- QComplexText + Added correct positioning specs for all of Thai and Lao. Some + reordering fixes. + +- QCursor + Mac only: Correct interpretation of mask/data of a QCursor so that the + mask will can be used as documented. + +- QDate + Fixed addYears() for days missing in certain years. + +- QDateTimeEdit + Compute an improved layout for the QDateEdit and QTimeEdit + components of the QDateTimeEdit (based on the size hints). Set + the size policy of the QDateTimeEdit to (Minimum, Fixed). + In time edit: If the display is AM/PM, do not accept 13-24 as + valid input for the hours. Go to the min/max value when + stepping down/up goes out of the valid range. + +- QDesktopWidget + Mac only: Fixes to availableGeometry(). + +- QDialog + Fixed a visibility issue with setExtension(). + X11 only: Modal dialogs that have no parent set their + WM_TRANSIENT_FOR hint to the main application widget (not + root). Do not raise the active modal widget if another one + gets focus. This used to be an incorrect workaround for a + now-obsolete problem where CDE would not keep modal dialogs + above their parents. + Do not reposition laid out dialogs that restore their geometry + in a polish() reimplementation. + +- QDict + Handle zero sized hash tables. + +- QDns + Slightly more reliable now, fixed a memory leak. + +- QDockArea + Fixed resizing of a QDockWindow is no longer affected by + another closed QDockWindow in the same QDockArea. If a QDockWindow + has changed its sizeHint layout items use now the new size. + +- QDockWindow + When undocking a window, use the last undocked size if we have + one. + X11 only: Make sure the moving frame is drawn on the correct screen. + Windows only: Fixed some focus issues. + +- QDom + Create entity references for unknown entities. + +- QDragManager + X11 only: Raise cursor decoration. Improved Motif drop support + to support non-textual data. + Windows only: Do not send any drag events if we don't have a receiver. + Windows 2000 only: Ignore illegal requests for error-clipboard + format when dropping files onto Explorer. + +- QEventLoop + Window only: Fixed mutex lock problem. Fixed processEvents() + with ExcludeUserInput. Fixed QSocketNotifiers not being + removed when the notifier gets deleted and the event + loop is blocking. + Unix only: Fixed a 64 bit problem. + Mac only: Fixed hasPendingEvents() for non-gui apps. + +- QFileDialog + Fix drag'n'drop for the first click into the listbox. Do not + auto-complete when saving a file. Enabled drag'n'drop of files + for all modes. In Directory* mode, do not set the filter to a + non-existent directory if one is specified. + Windows only: Fixed icon lookup. + Win 98/Me only: Make sure getExistingDirectory() doesn't + modify the current directory. + Mac only: Encoding fixes. + +- QFont + Win95 only: Make symbol fonts work. + X11 only: Don't change the Xft enabled/disabled setting + at runtime. Avoid some X server roundtrips when loading fonts. + +- QFontDialog + Fixed getFont() in case no default font is specified. + +- QFrame + Turn on focus and mouse-over style flags for frame painting. + +- QFtp + If the server does not expect a password (i.e. if you are + already logged in after you sent the username), do not send + the password since this might lead to errors. + +- QGLWidget + X11 only: Xft fonts won't work with glXUseXFont() - so do not + try to use them. + Win32 only: Fixed text rendering to pixmap issues. + Mac only: Improved responsiveness when resizing opengl widgets. + Mac only: Optimized swapping between accelerated and + non-accelerated case. + Mac 10.2 only: Improved performance in the case of overlapping + opengl widgets. + +- QHBoxLayout + Handle direction changes in user code. + +- QHeader + Improved sizeHint() takes the arrows of sorted columns + into account. Fix redrawing problems when moving header + sections. Ignore grip-margin in mouse handling for + non-resizable sections. + +- QHttp + Fixed a memory leak. (With thanks to valgrind's developer for + this useful tool). Improved head() implementation to actually + use HEAD requests. Accepts responses from web servers that + return \n instead of \r\n as line separators. Fixed a rare + infinite loop issue. + +- QIconView: + Clip item drawing to current container to fix drawing of + pixmaps with alpha channels. + +- QImageIO + jpegio: Fixed potential buffer overrun. + gif: Fixed a crash for invalid gif files. + +- QInputContext + X11 only: Try harder to provide the input method with an + appropriate - and available - fontset. + +- QInputDialog + Fixed size hint when using height-for-width rich text. + +- QKeySequence + Fixed operator==() for some special cases. + +- QLabel + When the the label is disabled, use identical color roles for both + rich text and plain text. + +- QLibrary + Mac only: Return failure response when a library cannot be opened + due to missing symbols. + +- QLineEdit + Do not truncate the text when we validateAndSet a text which + is longer than maxLength, but disallow the input. Respect + maxLength() in setText(). Make displayText() and selectedText() + not strip non-breaking spaces anymore. Fixed memory leak when + adding and deleting line edits. Undo now clears the current + selection. Undo/redo now works when overwriting the selection. + Fixed memory leak on constructing/destructing line edits. Give + line edit ownership of the popup menu returned by the default + createPopupMenu() implementation. + +- QListView + Fixed background brush origin when using double buffering. Do + not resize a stretchable column in widthChanged(). Fixed + selecting when auto-scrolling. Initialize multi-selection + anchor. Accept drops outside items when acceptDrops() is true. + Use anchor correctly in Extended selection mode (also for + mouseMove). Make right clicking on a selected item not change + the selection. The AlignHCenter flag of a QCheckListItem now + behaves like for normal QListViewItems. Speed up opening and + closing of invisible items. Fixed a memory leak in removeColumn() + Single selection mode: If the selected item is taken out of the + listview, unselect it and emit selectionChanged(). Fixed + deselecting in multi-selection modes. Right release outside an + item in a listview no longer clears the selection if + ControlButton is set. + +- QListViewItem + Invalidate column sorting in moveToJustAfter(). + +- QLocalFs + The network protocol for local file systems sets sets the + right permissions for the QUrlInfo objects if you do a + QUrlOperator::listChildren(). + +- QMainWindow + Fixed orientation handler calls. + +- QMap + Fixed conversion from std::map. + +- QMenuBar + Mac only: Fix for destruction of menu bars. + Mac only: Use process name instead of argv. + +- QObject + Always emit the destroyed() signal, even when signals are + blocked. + +- QPaintDevice + Mac only: Fixed raster op. for bitBlt. + +- QPainter + X11 only: Fix for rotated rectangles. Fixed drawPolygon() with + winding being false. + Mac only: drawText() fixes. + Mac only: Fix for drawPie(). + +- QPicture + Warn about and catch save operations on still active devices. + +- QPixmap + Made grabWidget() more robust. + X11 only: Fixed a bug in grabWindow(), fixes in + convertFromImage() for MonoOnly. + +- QPointArray + The makeArc() function is now inclusive in respect of the start and + end points. + +- QPopupMenu + If there is a custom QWhatsThis installed for the whole menu + but no whatsThis set for the item, use the custom QWhatsThis + to get the help text. Improved size for multi-column popups. + Mac only: Improved scrollable popups + Mac only: Fix handling of popupmenu dismissing mouse presses. + +- QPrintDialog + Fix reentrancy issues when reading printer dialog settings. + Windows only: Handle lack of default printers more + gracefully. + +- QPrinter + Windows only: Fix reentrancy issues and make sure that all + handles are updated correctly. Improved bottom and right + margin calculation. Fixed some problems with image printing. + Mac only: Support for high resolution printing. Support 1-bit + masking for pixmaps. + +- QProcess + If the process's file descriptor is closed for stdout or + stderr, but the line in the buffer does not end with a \n or + \r\n, it is still possible to read this data using readLine(). + Windows only: Make it safe to call qApp->processEvents() in a + slot connected to QProcess::readyReadStdout(). Fixed start() + with no arguments. Use a non-blocking file descriptor for + writes to stdin. Avoid leaking of handles. + +- QPSPrinter + Fixed codec for Korean PostScript fonts (ksc5601.1987-0, not + the listbox. Do not auto-complete when saving a + fileeucKR). Fixed memory leak. + +- QRichText + Improved Asian line breaking: Avoid breaking before + punctuation and closing braces and after opening braces. Fixed + a freed memory access problem with floating items on + destruction. When copying rich application/x-qrichtext, include + format information for the initial characters until the first + complete span. Make text="color" attributes in qt and body + tags work again. + +- QScrollView + Restored the Qt 3 default sizeHint() that depends on the + scroll view's content, restricted within a 'sane' range (this + has no impact on most child classes, which already reimplement + sizeHint()). + +- QSemaphore + Fixed race condition in operator-=(). + Unix only: A bit more robust. + +- QSettings + Implement scoping for file-based settings (Unix and + Ini-modes). Support storing and reading null strings. Other + fixes. + X11 only: Fixed rehash issues when using multiple screens. + Windows and Mac: Completed Ini mode. + +- QSocket + If the read retruns 0, safely assume that the peer closed the + connection. Fixed readyRead sometimes not being + emitted. Fixed a select bug when the other end terminates + the connection. Some 64 bit fixes. + +- QSound + Mac only: Implemented stop(). + +- QSplitter + Make sizes() return 0 for collapsed widgets. + +- QSqlDriver + All drivers: Fixed crashes when accessing out of bound + fields. Clear the openError() flag when opening a connection + successfully. + MySQL only: Make use of mysql_use_result() in forward-only mode. + TDS only: Return NULL QVariants for NULL fields. + ODBC only: Do not require the SERVER keyword to be in a + connection string. Fix Unicode issues with MS Access. Allow + MS Access people to create a connection string without + creating a DSN entry first. + +- QSqlQuery + Real values in queries containing placeholders were in some + cases incorrectly replaced in emulated prepared queries. + Added support for forward only queries in MySQL. + +- QStatusBar + Make sure QStatusBar updates the minimum height when a child + widget triggers a relayout (e.g. from size/font/etc. changes). + +- QString + Safer QString->std::string conversion (handles null-string + case). Fixed 64-bit issue in toLong() and toULong(). Make + prepend(), append() and operator+=() work with a QByteArray + argument that is not 0-terminated. Since this + fix is done in inline functions, you must recompile your + application to benefit from it. Make QString(const + QByteArray&) respect the array's size where a codec for + C strings is defined. Performance improvements for lower() + and upper(). Fix toDouble() when string contains trailing + whitespace. + +- QSvgDevice + No background for Bezier curves. Fixed omission of font-family + attribute in SVG generator. Fixed bounding rect mapping. + +- QStyle (and subclasses) + Usable size for subcontrols for small scrollbars. Fixed MDI + document window titlebar clipping. + XP style: Support non-default group boxes. Corrected tab + widget border drawing. More compliant dock window + appearance. Fixed translations for QCheckTableItem and + QComboTableItem. + Windows style: Use the highlighted text color role for arrows + in menus. Allow drawing of list view expand controls without + branches. + SGI style: Use correct background brush on pushbuttons with + popdown arrows. + Mac style (Mac only): Comboboxes will now be smaller (and closer to + Aqua Style suggested sizes). Expansion widgets (in a listview) will + now draw in the correct background color to allow non-white listviews. + +- QSpinBox + Stop spinning when users press a button other than the + left one. Support Key_Enter in addition to Key_Return as the + documentation always stated. + +- QTabBar + Let arrow buttons react correctly on style changes. + +- QTabDialog + Fix reverse layout for right to left languages. + +- QTable + Catch hideColumn() on tables with too few columns. Fixed an + endless recursion when swapping header sections. Fixed SingleRow + selection when using the vertical header. Emit the + sizeChange() signal when resizing a table header section with + a double click. Fixed set*MovingEnabled() when the selection + mode is NoSelection. Fix selection drawing for focusStyle == + FollowFocus. Fixed a memory leak. + +- QTableItem + Use virtual text() method for calculations instead of accessing the + data member directly. Do not crash when destroying a table item that + is not in a table. + +- QTextCodec: + Fixed a bug in the Unicode -> jisx0208 conversion table. + +- QTextEdit + Made setFormat() much faster when undo/redo is + disabled. Fixed double deletion crash when clearing a document + with floating custom items. AccelOverride events with Shift + pressed now work the same as for a normal key press. + LogText mode: Allow spaces in the font color tag. Fixed + background redraw issue. Stop scrollbar from disappearing + due to laying out the document incorrectly. + +- QThread + Unix only: Do not rely on PTHREAD_MUTEX_INITIALIZER and + PTHREAD_COND_INITIALIZER. Fixed timeout calculation in + sleep(). + +- QTimeEdit + Typing in input for the first time now overwrites the existing + value. + +- QToolButton + Fixed width calculation for multiline text. + +- QTooltip + Try hard to avoid tooltips for widgets in inactive + windows. Use screen geometry rather than available geometry + for positioning. Avoid the mouse cursor covering part of the + tooltip. + +- QTranslator + Notify main windows when installing an empty translator. + +- QUrlOperator + Make setNameFilter() work with FTP. + +- QValueVector + Fix operator==() to work as expected if the two vectors do not have + the same size. + +- QVariant + Fixed canCast() for Bool -> String and ByteArray -> String conversion. + Fixed operator==() for maps. Fixed the asDouble() function to + detach first before a conversion is done. After streaming into + a QVariant isNull() now returns false. + +- QWaitCondition + Unix only: Make sure the mutex is destroyed after it is + unlocked. + +- QWhatsThis + Use screen geometry rather than available geometry + for positioning. + +- QWidget + In adjustSize(), process LayoutHint events for all widgets, + not only this widget. Fixed a visibility issue with + reparent(). Fixed recursive update of child widgets with + background origin not being WidgetOrigin. Fixed isEnabledTo(). + Windows only: Fixed mapFromGlobal() / mapToGlobal() for + widgets that are not visible. + X11 only: Set the WM_CLIENT_LEADER and SM_CLIENT_ID properties + according to the ICCCM (section 5.1). We accomplish this by + creating a hidden toplevel window to act as the client leader, + and all toplevel widgets will use this window as the client + leader. Fixed calling show() on minimized windows. Fixes to + grabWindow() for platforms that support different color depths + on one display. + Windows only: Handle frameGeometry() changes when users change + the titlebar font. + Mac only: Reparent fixes so that visiblity of a toplevel window + will be retained as well as to avoid painting errors when reparented + onto a different window. Fixed painting errors when a widget is + interactively moved off screen. showNormal() will now toggle + correctly when a window is minimized, additionally toggling between + showMaximized()/showNormal() will operate as expected. Qt will now + try to prevent placing a window partially offscreen. This will not + over-ride explicit window positioning, but it will correct default + placement. + +- QWidgetStack + Make removeWidget() safe when there are several widgets + with the same id. + +- QWorkspace + If the active window is clicked on, transfer focus to + the child. Restore focus to old subcontrol when changing the + active MDI window. Make sure a MDI window is not resized below + a child widget's minimum size. Do not allow resizing windows + when we have an active popup window. Another fix to the + windowActivated() signal. Fixed resize handling for fixed-size + windows. + +- QXmlSimpleReader + Fixed a memory leak for incremental parsing. + + +**************************************************************************** +* Tools * +**************************************************************************** + +- Qt Designer + Some small usability improvements and crash fixes. Fixed + editing properties of multiple selected widgets for custom + widgets. Fixed some problems with pixmaps, when using a pixmap + function. Allow entering ':' in the class name in the + form settings dialog (for namespaces). Do not show deleted + toolbars in the object explorer. Fixed inserting widgets into + toolbars. Fixed displaying nested widget stacks in the object + explorer. Added an option to enable auto saving. Fixed some + issues with auto-indent in the C++ editor plugin. Fixed + problems with slots which have namespaces in their function + arguments. Do not save invalid pixmaps. whatsThis properties + can now be edited with the richtext editor. + +- Qt Assistant + Fixed crash when printing to file was cancelled. Fixed + mimesource settings when a link is opened in a new window. + Added missing translator. Fixed reloading pages when the + font was changed. Added accelerator for exiting Assistant. + Full text search now supports Unicode. Search accepts special + characters like '_'. Added option for disabling the first run + initialization. Now it is possible to open a link or new + window directly from the sidebar. + +- moc + Make 'moc -p foo bar/baz.h' generates #include "foo/baz.h" + instead of #include "foo/bar/baz.h". Also avoid redundant "./" + at the beginning. Accept identifiers trailing the function + signature to allows sneaking in compiler specific attributes + via a macro. + +- qmake + Qmake will no longer put the version number on plugins. These are + not a necessary part of the filename. A parser bug got into qmake + causing (right hand side) functions from being evaluated properly, + additionally the argument parser has been improved to allow functions + calling functions. Qmake now has support for ProjectBuilder 2.1, it + will no longer respect OBJECTS_DIR in ProjectBuilder (as this exposed + a bug in ProjectBuilder itself). It will automatically detect qt-mt + (when linking against Qt) so "CONFIG += thread" is not necessary, + however this will not turn on Q_THREAD_SUPPORT. A new test operator + has been added 'equals()' to allow testing for equality to a variable. + In 'project mode' qmake will now detect TRANSLATIONS files + automatically. + +- uic + Some small fixes in code generation. + +**************************************************************************** +* Extensions * +**************************************************************************** + +- Netscape Plugin + The Netscape Plugin is supported again, now on both Netscape 4.x and + current versions based on the Mozilla code. + +- ActiveQt + Activate socket notifiers and process config requests even if + Qt does not own the event loop. + diff --git a/dist/changes-3.2.0 b/dist/changes-3.2.0 new file mode 100644 index 0000000000..6d99213f10 --- /dev/null +++ b/dist/changes-3.2.0 @@ -0,0 +1,327 @@ + +Qt 3.2 introduces new features as well as many improvements over the +3.1.x series. This file gives an overview of the main changes since +version 3.1.2. For more details, see the online documentation which +is included in this distribution. The documentation is also available +at http://doc.trolltech.com/ + +The Qt version 3.2 series is binary compatible with the 3.1.x series. +Applications compiled for 3.1 will continue to run with 3.2. + +**************************************************************************** +* General * +**************************************************************************** + +Qt library +---------- + +New classes have been added to the Qt Library including a +class to add splash screens to applications (QSplashScreen), a toolbox +widget that provides a column of tabbed widgets (QToolBox), and a +class to manage per-thread data storage (QThreadStorage). + +The SQL module received a fair bit of attention this time. The most +notable improvements include a native IBM DB2 driver, complete support +for stored procedures including the possibility to access +out-parameters, and native support for 64 bit fields without having to +convert to or from strings. We also added support for setting +connection parameters. This way you can, for example, conveniently +open an SSL connection to a MySQL or PostgreSQL database. If you need +even more customization, e.g. for an Oracle database, you can set up +the connection yourself and instantiate a Qt driver object on top of +it. An extended SQL cursor class has been added that makes it more +convenient to display result sets from general SQL queries +(QSqlSelectCursor). QSqlDatabase::tables() is now capable to return +tables, views and/or system tables. In addition, you can add custom +database drivers without compiling them as plugins +(see QSqlDatabase::registerSqlDriver()). + +QLineEdit, the one-line text editor, now supports validation input +masks. The feature complements the previous QValidator concept and +allows e.g. restriction of input to the IP address format (mask +"990.990.990.990;_"), or to ISO date format (mask "0000-90-90;0"). + +Qt's unicode code support has been extended. Most notably, full +support for Indic scripts has been added, covering writing systems +such as Devanagari, Tamil and Bengali. The group of right to left +writing systems has been extended with support for Syriac. Both +improvements are available on both Windows with Uniscribe installed, +and on Unix/X11 when using XFT with OpenType fonts. + +All tool classes that support STL-like iterators with begin() and +end(), contain two extra functions constBegin() and constEnd(). The +const versions always return const iterators, and thus can be a little +bit faster with Qt's implicitly shared containers. + +QPainter's complex drawText() function has been highly +optimized. Despite its support for complex unicode scripts, it now +performs better than its less unicode-capable counterpart in Qt 2.3. + +QPixmap now supports pixmaps with alpha channel (semi transparency) on +all Windows versions except Windows 95 and Windows NT 4.0. + +The print dialog now supports "selection" as a print range as well as +the possibility to enable/disable all different printer options +individually. + +On Windows, the Qt installation includes a toolbar for Visual Studio.NET +that provides an integration of the Qt tools (ie. Qt Designer) with the +IDE. + +Many classes were improved; see the detailed overview that follows. + +Qt Motif Extension +------------------ + +Dialog handling has matured and has been extended since the +extension's introduction in Qt 3.1. The documentation and code +examples have been improved, including a walkthrough that covers the +complete migration of a real-world Motif example to Qt. The process +contains four intermediate steps where the application utilizes both +toolkits. + +ActiveQt Extension +------------------ + +Type handling has been extended on both the container and the server +side. The new supported types are byte arrays and 64bit integers. The +QAxServer module supports aggregation, as well as QObject subclasses as +return and parameter types of slots, and allows error reporting through +COM exceptions. +The Designer integration has been extended to support property dialogs +implemented by the control server. +Controls developed with ActiveQt support aggregation, which makes it +possible to use them in containers that require this form of containment to +be supported. ActiveQt also supports masked controls in containers that +support this for window'ed controls. + +Qt Designer +----------- + +The popup menu editor has been rewritten. The new editor provides the +the ability to add, edit and remove menus and menu items directly in +the menubar and in the popup menu. Navigation and editing can be done +using either the mouse or the keyboard. + +The property editor now allows editing of properties with or'd values +(sets). + +Designer also supports the new QToolBox widget in a similar fashion to +QTabWidget, etc. + +Qt Assistant +------------ + +Profiles have been introduced to allow applications to extend the use +of Qt Assistant as a help system. Profiles describe the documentation +to use so that only application specific documentation will be +referenced in an end user installation. Profiles also allow some +customization of the look in Qt Assistant. For detailed information, +see the helpdemo example in $QTDIR/examples/helpdemo. + +Profiles replace the content files and categories system. The +following command line options are removed since they no longer serve +any purpose: addContentFile, removeContentFile, category, and +disableFirstRun. + +Qt Assistant has multiple tabs for browsing, therefore enabling +multiple pages to be browsed without opening a new window. + +It is possible to specify a default home page. + +It is possible to specify a PDF reader so that urls to PDF files can +be opened from Qt Assistant. + +Compilers +--------- + +Note: Qt 3.2 is the last version to officially support IRIX MIPSpro +o32 and Sun CC 5.0. A script, $QTDIR/bin/qt32castcompat, is provided +for 3.2 which needs to be run for these compilers. + +Miscellaneous +------------- + +Users of the 3.2.0 beta releases please note: The QWidgetContainerPlugin +interfaces was removed from the final release due to some serious issues. + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction / QActionGroup + Simplified constructors so that it is no longer necessary to + specify texts for buttons and menu items separately. + For action groups, we fixed the enable/disable behavior. If + an action inside an action group is explicitly disabled, it is + no longer implicitly enabled together with the group. + This is identical to enabling/disabling widgets and their + children. + +- QApplication + Added the aboutQt() slot for convenience. + +- QAssistantClient + Added the new function, setArguments(), that invokes Qt + Assistant in different modes. + +- QAxBase + Added the new function, asVariant(), that passes a COM + object through dynamicCall(). + +- QAxBindable + Added the new function, reportError(), that sends error + information to the ActiveX client. + +- QColor + Added the new static function, colorNames(), that retrieves a + list of all color names known to Qt. + +- QDeepCopy + Now also supports QDir, QFileInfo, and QStringList. + +- QDom + Now has long and ulong support for setAttribute() and + setAttributeNS(). + +- QFont + Added the new properties: stretch and overline. Added the new + function, resolve(), that copies unspecified attributes from + one font to another. + +- QFontDataBase + Added a new overload for families() that restricts the + returned list to fonts supporting a specific QFont::Script, + e.g. QFont::Greek, QFont::Devanagari or QFont::Arabic. + +- QFontInfo / QFontMetrics + Added new constructors that force the info and metrics objects + to use a given QFont::Script. + +- QGLWidget + Added a new constructor that takes a QGLContext + parameter. Makes the undocumented setContext() obsolete. + +- QHeader + Added getters for the sort indicator (sortIndicatorSection() + and sortIndicatorOrder() ). + +- QImage + Added a new overload for save() that writes to a given + QIODevice*. + +- QListView + Added tristate support to check list items + (QCheckListItem::setTristate()). Added the new function, + setSelectionAnchor(), to set the list view's selection anchor + explicitly. + +- QLineEdit + Added input masks: setInputMask(), inputMask(), and + hasAcceptableInput(). Added new function selectionStart() + which returns the index of the first selected character in the + line edit. + +- QMacStyle + Added customizable focus rectangle policy. + +- QMessageBox + Added the new static function, question(), that complements + the existing information(), warning() and fatal() functions. + +- QMotifDialog [Qt Motif Extension] + Now has two distinct modes of operation: 1) it allows a Motif + dialog to have a Qt parent, and 2) it allows a Qt dialog to have + a Motif parent. + +- QMYSQLDriver + Better support for MySQL/embedded. + +- QPixmapCache + Added the new function, remove(), to explicitly remove a + pixmap from the cache. + +- QPrinter + Added the new functions: setPrintRange(), printRange(), + setOptionEnabled(), and optionEnabled(). For Windows only, + added the new function, setWinPageSize(), that allows setting + DEVMODE.dmPaperSize directly. + +- QPtrList + Added STL-like iterators with begin(), end(), and erase(). + +- QScrollBar + Maintains a user defined size policy when the direction + changes. + +- QSplashScreen [new] + This new widget class provides a splash screen to be shown + during application startup. + +- QSplitter + Added the new properties: opaqueResize, childrenCollapsible, + and handleWidth. + +- QSqlError + Added a couple of convenience functions: text(), which returns + the concatenated database and driver texts. showMessage(), + which will pop up a QMessageBox with the text that text() + returns. + +- QSqlQuery + Added overloads for the bindValue() call which makes it + possible to specifiy what role a bound value should have: In, + Out or InOut. + +- QSqlSelectCursor [new] + This new QSqlCursor subclass provides browsing of general SQL + SELECT statements. + +- QSqlDatabase + Added overloaded tables() call which can return tables, views + and/or system tables. + +- QPSQLDriver + Calling tables() with no arguments will only return table names, + instead of table and view names as in Qt 3.1. + The new tables() call in QSqlDatabase can be used to get + table and/or view names. + +- QString + Added 64 bit support. Added the new functions: multiArg(), + reserve(), capacity(), squeeze(). Added case insensitive + overloads for startsWith() and endsWidth(). + +- QStringList + Added the new function gres(). + +- QStyle + Added support for toolbox, header, MDI frame, table grid line + color, line edit password character, and message box question. + +- QSyntaxHighlighter + Added the new function, currentParagraph(). + +- QTabWidget + Added support for custom widgets to be placed beside + the tab bar: setCornerWidget() and cornerWidget(). + +- QTextEdit + In Log mode, added the new functions: setMaxLogLines() and + maxLogLines(). Implemented insertAt() for LogText mode. + +- QThreadStorage [new] + This new tool class provides per-thread data storage, also + referred to as thread local storage or TLS. + +- QToolBox [new] + This new widget class provides a column of tabbed widgets, one + above the other, with the current page displayed below the + current tab. + +- QVariant + Added support for LongLong and ULongLong. + +- QWidget + Added a new widget flag, WNoAutoErase, that combines the now + obsolete WResizeNoErase and WRepaintNoErase flags. diff --git a/dist/changes-3.2.0-b1 b/dist/changes-3.2.0-b1 new file mode 100644 index 0000000000..cdd351448c --- /dev/null +++ b/dist/changes-3.2.0-b1 @@ -0,0 +1,296 @@ + +Qt 3.2 introduces new features as well as many improvements over the +3.1.x series. This file gives an overview of the main changes since +version 3.1.2. For more details, see the online documentation which +is included in this distribution. The documentation is also available +at http://doc.trolltech.com/ + +The Qt version 3.2 series is binary compatible with the 3.1.x series. +Applications compiled for 3.1 will continue to run with 3.2. + +**************************************************************************** +* General * +**************************************************************************** + + +Qt library +---------- + +New classes have been added to the Qt Library including a +class to add splash screens to applications (QSplashScreen), a toolbox +widget that provides a column of tabbed widgets (QToolBox), and a +class to manage per-thread data storage (QThreadStorage). + +The SQL module received a fair bit of attention this time. The most +notable improvements include a native IBM DB2 driver, complete support +for stored procedures including the possibility to access +out-parameters, and native support for 64 bit fields without having to +convert to or from strings. We also added support for setting +connection parameters. This way you can, for example, conveniently +open an SSL connection to a MySQL or PostgreSQL database. If you need +even more customization, e.g. for an Oracle database, you can set up +the connection yourself and instantiate a Qt driver object on top of +it. An extended SQL cursor class has been added that makes it more +convenient to display result sets from general SQL queries +(QSqlSelectCursor). In addition, you can add custom database drivers +without compiling them as plugins (see +QSqlDatabase::registerSqlDriver()). + +QLineEdit, the one-line text editor, now supports validation input +masks. The feature complements the previous QValidator concept and +allows e.g. restriction of input to the IP address format (mask +"990.990.990.990;_"), or to ISO date format (mask "0000-90-90;0"). + +Qt's unicode code support has been extended. Most notably, full +support for Indic scripts has been added, covering writing systems +such as Devanagari, Tamil and Bengali. The group of right to left +writing systems has been extended with support for Syriac. Both +improvements are available on both Windows with Uniscribe installed, +and on Unix/X11 when using XFT with OpenType fonts. + +All tool classes that support STL-like iterators with begin() and +end(), contain two extra functions constBegin() and constEnd(). The +const versions always return const iterators, and thus can be a little +bit faster with Qt's implicitly shared containers. + +QPainter's complex drawText() function has been highly +optimized. Despite its support for complex unicode scripts, it now +performs better than its less unicode-capable counterpart in Qt 2.3. + +QPixmap now supports pixmaps with alpha channel (semi transparency) on +all Windows versions except Windows 95 and Windows NT. + +The print dialog now supports "selection" as a print range as well as +the possibility to enable/disable all different printer options +individually. + +Many classes were improved; see the detailed overview that follows. + +Qt Motif Extension +------------------ + +Dialog handling has matured and has been extended since the +extension's introduction in Qt 3.1. The documentation and code +examples have been improved, including a walkthrough that covers the +complete migration of a real-world Motif example to Qt. The process +contains four intermediate steps where the application utilizes both +toolkits. + +ActiveQt Extension +------------------ + +Type handling has been extended on both the container and the server +side. The new supported types are byte arrays and 64bit integers. The +QAxServer module supports QObject subclasses as return and parameter +types of slots, and allows error reporting through COM exceptions. +The Designer integration has been extended to support property dialogs +implemented by the control server. + +Qt Designer +----------- + +The popup menu editor has been rewritten. The new editor provides the +the ability to add, edit and remove menus and menu items directly in +the menubar and in the popup menu. Navigation and editing can be done +using either the mouse or the keyboard. + +The new QWidgetContainerPlugin class provides support for complex +custom container widgets in Designer, such as the custom tab widget, +etc. + +The property editor now allows editing of properties with or'd values +(sets). + +Designer also supports the new QToolBox widget in a similar fashion to +QTabWidget, etc. + +Qt Assistant +------------ + +Profiles have been introduced to allow applications to extend the use +of Qt Assistant as a help system. Profiles describe the documentation +to use so that only application specific documentation will be +referenced in an end user installation. Profiles also allow some +customization of the look in Qt Assistant. For detailed information, +see the helpdemo example in $QTDIR/examples/helpdemo. + +Profiles replace the content files and categories system. The +following command line options are removed since they no longer serve +any purpose: addContentFile, removeContentFile, category, and +disableFirstRun. + +Qt Assistant has multiple tabs for browsing, therefore enabling +multiple pages to be browsed without opening a new window. + +It is possible to specify a default home page. + +It is possible to specify a PDF reader so that urls to PDF files can +be opened from Qt Assistant. + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction / QActionGroup + Simplified constructors so that it is no longer necessary to + specify texts for buttons and menu items separately. + For action groups, we fixed the enable/disable behavior. If + an action inside an action group is explicitly disabled, it is + no longer implicitly enabled together with the group. + This is identical to enabling/disabling widgets and their + children. + +- QApplication + Added the aboutQt() slot for convenience. + +- QAssistantClient + Added the new function, setArguments(), that invokes Qt + Assistant in different modes. + +- QAxBase + Added the new function, asVariant(), that passes a COM + object through dynamicCall(). + +- QAxBindable + Added the new function, reportError(), that sends error + information to the ActiveX client. + +- QColor + Added the new static function, colorNames(), that retrieves a + list of all color names known to Qt. + +- QDeepCopy + Now also supports QDir, QFileInfo, and QStringList. + +- QDom + Now has long and ulong support for setAttribute() and + setAttributeNS(). + +- QFont + Added the new properties: stretch and overline. Added the new + function, resolve(), that copies unspecified attributes from + one font to another. + +- QFontDataBase + Added a new overload for families() that restricts the + returned list to fonts supporting a specific QFont::Script, + e.g. QFont::Greek, QFont::Devanagari or QFont::Arabic. + +- QFontInfo / QFontMetrics + Added new constructors that force the info and metrics objects + to use a given QFont::Script. + +- QGLWidget + Added a new constructor that takes a QGLContext + parameter. Makes the undocumented setContext() obsolete. + +- QHeader + Added getters for the sort indicator (sortIndicatorSection() + and sortIndicatorOrder() ). + +- QImage + Added a new overload for save() that writes to a given + QIODevice*. + +- QListView + Added tristate support to check list items + (QCheckListItem::setTristate()). Added the new function, + setSelectionAnchor(), to set the list view's selection anchor + explicitly. + +- QLineEdit + Added input masks: setInputMask(), inputMask(), and + hasAcceptableInput(). + +- QMessageBox + Added the new static function, question(), that complements + the existing information(), warning() and fatal() functions. + +- QMotifDialog [Qt Motif Extension] + Now has two distinct modes of operation: 1) it allows a Motif + dialog to have a Qt parent, and 2) it allows a Qt dialog to have + a Motif parent. + +- QPixmapCache + Added the new function, remove(), to explicitly remove a + pixmap from the cache. + +- QPrinter + Added the new functions: setPrintRange(), printRange(), + setOptionEnabled(), and optionEnabled(). For Windows only, + added the new function, setWinPageSize(), that allows setting + DEVMODE.dmPaperSize directly. + +- QPtrList + Added STL-like iterators with begin(), end(), and erase(). + +- QScrollBar + Maintains a user defined size policy when the direction + changes. + +- QSplashScreen [new] + This new widget class provides a splash screen to be shown + during application startup. + +- QSplitter + Added the new properties: opaqueResize, childrenCollapsible, + and handleWidth. + +- QSqlError + Added a couple of convenience functions: text(), which returns + the concatenated database and driver texts. showMessage(), + which will pop up a QMessageBox with the text that text() + returns. + +- QSqlQuery + Added overloads for the bindValue() call which makes it + possible to specifiy what role a bound value should have: In, + Out or InOut. + +- QSqlSelectCursor [new] + This new QSqlCursor subclass provides browsing of general SQL + SELECT statements. + +- QString + Added 64 bit support. Added the new functions: multiArg(), + reserve(), capacity(), squeeze(). Added case insensitive + overloads for startsWith() and endsWidth(). + +- QStringList + Added the new function gres(). + +- QStyle + Added support for toolbox, header, MDI frame, table grid line + color, line edit password character, and message box question. + +- QSyntaxHighlighter + Added the new function, currentParagraph(). + +- QTabWidget + Added support for custom widgets to be placed beside + the tab bar: setCornerWidget() and cornerWidget(). + +- QTextEdit + In Log mode, added the new functions: setMaxLogLines() and + maxLogLines(). + +- QThreadStorage [new] + This new tool class provides per-thread data storage, also + referred to as thread local storage or TLS. + +- QToolBox [new] + This new widget class provides a column of tabbed widgets, one + above the other, with the current page displayed below the + current tab. + +- QVariant + Added support for LongLong and ULongLong. + +- QWidget + Added a new widget flag, WNoAutoErase, that combines the now + obsolete WResizeNoErase and WRepaintNoErase flags. + +- QWidgetContainerPlugin [new] + This new plugin class complements QWidgetPlugin for custom + container widgets, i.e. widgets that can host child + widgets. diff --git a/dist/changes-3.2.0-b2 b/dist/changes-3.2.0-b2 new file mode 100644 index 0000000000..98910a87b0 --- /dev/null +++ b/dist/changes-3.2.0-b2 @@ -0,0 +1,121 @@ + +Qt 3.2 introduces new features as well as many improvements over the +3.1.x series. This file gives an overview of the main changes since +version 3.1.2. For more details, see the online documentation which +is included in this distribution. The documentation is also available +at http://doc.trolltech.com/ + +The Qt version 3.2 series is binary compatible with the 3.1.x series. +Applications compiled for 3.1 will continue to run with 3.2. + +**************************************************************************** +* General * +**************************************************************************** + +ActiveQt +-------- + +Controls developed with ActiveQt support aggregation, which makes it +possible to use them in containers that require this form of containment to +be supported. ActiveQt also supports masked controls in containers that +support this for window'ed controls. + +Compilers +--------- + +Note: Qt 3.2 is the last version to officially support IRIX MIPSpro +o32 and Sun CC 5.0. A script, $QTDIR/bin/qt32castcompat, is provided +for 3.2 which needs to be run for these compilers. + +**************************************************************************** +* Library * +**************************************************************************** + +- QApplication + Win32 only: Stop compressing mouse move events when a change + in the key state is detected. Allow multiple QApplication + objects be created sequentially by resetting the pointers to + static objects on destruction. + +- QClipboard + X11 only: Various fixes. + +- QDockWindow + Various layout fixes. + +- QFont related classes + Many fixes and improvements. + +- QGLWidget + X11 only: Various fixes to make pixmap rendering work better + with accelerated nVidia drivers. + +- QImage + Fixed writing of QImages. + +- QLayout + Fixed layout to take the menu bar's minimum width into + consideration and correctly propagate spacing() from parent to + child layouts. + +- QLineEdit + Replace all non-printable characters with spaces when + drawing. Added new function selectionStart() which returns + the index of the first selected character in the line edit. + +- QListBox + Improved item search based on keystrokes. + +- QListView + Don't move the inline item editor out of the visible area for + wide items. Ignore +/- indicator for columns other than the + first one. Fixed keyboard handling in Multi selection + mode. Improve drawing of extremely long item texts. + +- QListViewItem + Respects icons vertical alignment properly. + +- QMYSQLDriver + Better support for MySQL/embedded. Bind TEXT blob fields as + strings instead of byte arrays. + +- QPainter + Qt/Embedded only: Fixed printing issues. + +- QPrinter + Mac only: Fixed printing issues. + +- QSocketDevice + Windows only: Fixed setBlocking(TRUE) to work properly. + +- QString + Fixed toShort() and toUShort() to behave correctly when passed + a null pointer as 'ok' value. + +- QStyleFactory + Return the correct style name from the factory for the + WindowsXP style. + +- QTable + Replace old contents when editing. Take hidden rows into + account when activating cells. Clear the cell widget when + clearing a cell. + +- QTextBrowser + Fixed table headers to be bold. + +- QTextEdit + Implemented insertAt() for LogText mode. Fixed undoAvailable + and redoAvailable to be emitted correctly from the context + menu. Fixed tripleclick selection in QTextEdit. + +- QToolButton + Prevent nested openings of the tool button popups. + +- QWindowsXPStyle + Various paint bug fixes. + +- QWorkspace + Fixed workspace to keep the active window when + tiling. Improved icon handling for maximized and minimized + windows. diff --git a/dist/changes-3.2.1 b/dist/changes-3.2.1 new file mode 100644 index 0000000000..c5a2915d4f --- /dev/null +++ b/dist/changes-3.2.1 @@ -0,0 +1,143 @@ +Qt 3.2.1 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.2.0 + + +**************************************************************************** +* General * +**************************************************************************** + +Compilers +--------- + +Small fixes to build with gcc-3.4. Build fix for the DB2 Sql driver +on Borland. Work around a compiler bug in Sun Forte 6. Fix a build +issue for 64bit HP/UC. + +Qt Motif Extension +------------------ + +Document a known problem related to clipboard and selection handling +between Qt and Motif components. See the Qt Motif Extension +documentation for a more detailed description of the problem. + +Qt Designer +----------- +Correctly remove connections to deleted actions from the meta +database. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +- QApplication + Update arguments passed to the constructor correctly when + arguments have already been processed. +- QDockWindow + Fix a regression against 3.1.2 with minimized dock windows. +- QDom + Fix a bug in ownerDocument() +- QFontDialog + Fix to small usability regressions from 3.1.2. +- QLineEdit + Fix regression against 3.1.2: textChanged signal after + setText("") should contain a non null string. +- QMotifDialog [Qt Motif Extension] +- QMotifWidget [Qt Motif Extension] + Fix incorrect usage of XtSetArg(). In certain cases, some + variables would be incorrectly modified, resulting in + out-of-bounds memory access and/or crashes. +- QPainter/QFontMetrics + Fix some problems related to line breaking and size + calculation of multi line text layouts. +- QSplitter + Fix a problem with setCollapsible. +- QSqlCursor + Fix updates in tables without a primary key. +- Sql + Fix crash in odbc and db2 drivers when using binary fields. +- QTable + Fix possible crash in the QTable destructor. +- QWidgetStack + Fix a slight behavioral change in the sizeHint between 3.1.2 + and 3.2. +- QApplication::reverseLayout + Fix some problems with dockwindows/toolbars in reverse layout + mode. +- QListView + Fix emitting of dropped(). + +Platform Specific Issues +------------------------ + +Windows: + +- QFont + Fix possible memory corruption when printing. + Windows 98: Fix a problem with displaying of russian + text using the default font. +- QPainter + Fix a regression printing text in high resolution mode. +- QPrinter + Fix a problem in setPageSize(). + Windows 95/98/Me: Fix a possible crash. +- QWaitCondition and QThread + Fix two possible race conditions. +- XP style + Fix resource leak. +- QString + QString::sprintf() work around a memory leak in the Windows C + runtime. +- Dnd + Fix problem with dragging URLs. + Reverted back accept(), ignore(), acceptAction() to 3.1.x behavior. +- IME framework + Better positioning of the IME composition window. + +Mac: + +- QStyle: + Smaller fixes to the Mac Style. + Some fixes for Panther. +- QFont + Fixes for arabic; speed improvements. + Make the NoAntialias flag work. + +X11: + +- QFont + Fix possible crash with broken open type fonts. +- QWidget + Fix possible crash in setMicroFocusHint(). +- QPrinter + Fix possible crash when drawing text with opaque background. + Fix crash if printer tries to print to a nonexistant printer. +- QRegion + Fix drawing problem when using some complex clip + regions on the painter. +- IME framework + Fix a possible performance problem and server side memory + leak. +- DnD + Fix regression against 3.1.1 when dragging across multiple + screens. + +Embedded: + +- QApplication + Fix mouse event delivery bug with modal dialogs and touch + screens. +- QRegion + An empty rectangle will now create an empty region, like on + the other platforms. +- QPixmap + Preserve alpha channel in xform(). +- QFont + Make setPixelSize() work correctly. +- QImage + Fix loading of BMP images. +- Build system + Make the -no-zlib option work correctly. diff --git a/dist/changes-3.2.2 b/dist/changes-3.2.2 new file mode 100644 index 0000000000..e6d142494a --- /dev/null +++ b/dist/changes-3.2.2 @@ -0,0 +1,155 @@ +Qt 3.2.2 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.2.1 + + +**************************************************************************** +* General * +**************************************************************************** + +Compilers +--------- + +Make Qt work on Windows 9x compiled with Borland. + +Meta Object Compiler +-------------------- + +Generate safer code for signals with pointer-to-pointer arguments. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +- QButton + Make sure button pops up when mouse leaves the button. +- QEffects + Don't crash when widget is destroyed during effect. +- QFont + Load the correct font for characters that have the 'Unicode' + script assigned to them (e.g. the em-dash). + Fix exact match for raw mode fonts. + Fix conversion from unicode to gb2312 to make Chinese appear + correctly again when using xlfd fonts. +- QLineEdit + Proper behavior when dragging text inside the same line edit. + Make sure the cursor is immediately displayed upon entering a + line edit. +- QListView + Update the scroll bars correctly when double clicking on the + edge of the header. +- QPainter + Fix case in text rendering, where overfull lines did not get + layouted correctly. + Fix the last known problems in Indic rendering. +- QProcess + Make canReadLine...() work in a busy loop. +- QPrinter + Set the default paper source properly. +- QPSPrinter + Handle broken true type fonts better. + Handle true type fonts with spaces in the family name. +- QRichText + Fix a crash when zooming. + Fix possible memory leak. +- QScrollBar + Propagate context menu events that are not handled by the + scroll bar. + +- QString + Support non-'C' locales for string-to-double conversion. +- QSql + Oracle crash fix in some really weird situations. +- QTable + Handle icons correctly when swapping columns/rows. + Fix case where a dialog containing a table could hang when + opening. + Do not crash when QTableHeader::updateSelections() is called, + without a current selection. +- QTextEdit + Fixed crash in setCurrentFont() when in LogText mode. + Fixed backward searches for the first character or word in a + document. +- QTextEngine + Fix memory leaks. +- QWidgetResizeHandler + Improve user interaction. +- QXmlSimpleReader + Fix reading of events after a skippedEntity(). + +Platform Specific Issues +------------------------ + +Windows: + +- QFontDatabase + Report fixedPitch attribute for fonts correctly. + Handle fonts with a hyphen in the name properly. +- QGLContext + Thread safety fix for makeCurrent(). +- QPixmap + Detect alpha channel in pixmaps correctly. + Fix crash on Windows 9x using alpha blended pixmaps with + MemoryOptim. + Fix memory leak when detaching copies from pixmaps with + alpha channels. + Make sure that sizes are correct after xForm(). + Fix drawing of a masked pixmap into a pixmap with an alpha + channel. +- QPrinter + Fix printer output of the drawPixmap()/drawImage() functions + that take a rectangle as a parameter. + Block all application windows modally when the system printer + dialog is open. +- QWidget + Speedup case where tablet support is enabled in library, but + no tablet device is present. +- QWindowsXPStyle + Fix gradient background of QLabels within QTabWidgets. + Fix "password" character for systems without extended font + support. + +Mac: + + Improved documentation of Mac-specific issues. A number of + general improvements, style fixes, optimizations and bugfixes + have been made for Qt/Mac in 3.2.2. Some of the most visible + are: + +- QSizeGrip + Handle hide/show better. +- QSocket + More responsive handling of incoming data reads. +- QWidget + Create widget even if widget flag combinations make no sense. + Widget clipping fixes for OpenGL. + Widget masking fixed. + Fix the problem of a window being set active in show() and + then losing its activation when returning from a second event + loop. + +X11: + +- Drag'n'drop + Stability improvements. +- QApplication + Make sure that mouse events have proper coordinates when mouse + enters widget. +- QFont + Make sure that screen and printer metrics are the same for + bitmapped fonts. + Avoid crashes with invalid fonts. +- QPicture + Fix text drawing. + +Embedded: + +- QWSPcMouseHandler + Fix buffer overrun when reading from mouse device. + Also look for mouse in /dev/inputs/mice when autodetecting. + +- QPainter + Fix rotated text on 4, 8 and 16 bpp screens. diff --git a/dist/changes-3.2.3 b/dist/changes-3.2.3 new file mode 100644 index 0000000000..a88e93085f --- /dev/null +++ b/dist/changes-3.2.3 @@ -0,0 +1,150 @@ +Qt 3.2.3 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.2.2 + + +**************************************************************************** +* General * +**************************************************************************** + +Compilers +--------- + +Work around Solaris, AIX, and HP-UX bug affecting +QString::operator=(const QString &) when linking statically. + +Fix gcc 3.4 compile problems. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +- QJpegIO + Fix memory leak when writing JPEG files. + +- QLineEdit + Preserve null and empty strings correctly in setText(). + +- QMessageBox + Preserve undocumented behavior in 3.1: expand tabs. + +- QMimeSourceFactory + Don't crash when a factory uses a pointer to a QMimeSource + which is owned by another factory. + +- QMovie + Respect the background color of a movie when loading + animations with transparent pixels. + Fix color mode if reading 1-bpp images or frames. + +- QPainter + Fill the complete bounding rect when rendering text with an + opaque painter. + +- QRichtext + Fix special case where <nobr>\nfoo had an extra space. + Fix line breaking for Latin text. + +- QTextEdit + Improve speed of syntax highlighting. + +- QToolBar + Do not grow in height when put inside a normal widget. + +- QWheelEvent + Wheel events are now only sent to the focus widget if the + widget under the mouse doesn't handle the event. + +- QWMatrix + Fix operator *(QRegion) when the world matrix is (-1 0 0 1 0 0) + or similar. + + +Platform-Specific Issues +------------------------ + +Windows: + +- QPrinter + Fix resource leak when printing on Windows 9x. + Fix crash for Win98 with HP OfficeJet Pro 1150C. + +- QTextBrowser + Fixed weight problem in setFont(). + +- QUriDrag + Fix bugs with encoding and separators. + +Mac: + +Mac OS X 10.3 (Panther) changes: + +- QMacStyle + Draw push button text vertically-centered. + +- QSplashScreen + Make the splash screen centered. + +- QWidget + Tooltips are displayed in the correct place in Panther. + Applications that save and restore their geometry will not + "walk up" the screen. + +General Mac OS X changes: + +Fix crash on exit problem (e.g. with Qt Designer). + +- QApplication + Fix mouse release problem when Control is used to emulate + mouse button 2. + +- QDesktopWidget + Fix problem with popup windows and dual monitors. + +- QFont + Improve fixed pitch font handling. + +- QMenuBar + Fix crash with empty menus. + Make sure that when we show the application menu, the items we + merged in from the other popup menu's are properly + enabled/disabled. + Fix case where clicking menu bar would stop timers firing. + +X11: + +- QApplication + Avoid endless client message loops when replying to + _NET_WM_PING events. + +- QFont + Fix crash when using high latin characters with GNU unifont. + Fix scale factor for printing (rounding error). + +- QPainter + Fix an endless loop and a bug in the shape engine for Hangul + Jamo. (Affects only ancient Korean texts.) + +- QPrinter + Work around bugs in Xft that cause memory corruption in the + postscript printer when downloading certain fonts. + +- QSound + Fixed crash when deleting a QSound object while it was + playing. + + +Embedded: + +Fixed bug when applications connect then disconnect immediately. +Added experimental code to handle 1-bpp and 4-bpp displays for +big-endian architectures (turned off by default). + +- QEventLoop + Make processEvents(ExcludeUserInput) work. + +- QPrinter + Fix font metrics when printing with QPrinter::HighResolution. diff --git a/dist/changes-3.3.0 b/dist/changes-3.3.0 new file mode 100644 index 0000000000..8523592f39 --- /dev/null +++ b/dist/changes-3.3.0 @@ -0,0 +1,313 @@ +Qt 3.3 introduces many new features as well as many improvements over +the 3.2.x series. For more details, see the online documentation which +is included in this distribution. The documentation is also available +at http://doc.trolltech.com/ + +The Qt version 3.3 series is binary compatible with the 3.2.x series. +Applications compiled for 3.2 will continue to run with 3.3. + +**************************************************************************** +* General * +**************************************************************************** + +Qt library +---------- + +Qt 3.3 is .NET enabled. This release shows how to use classes +developed with Qt in a .NET environment. It includes an analysis of +the different interoperability infrastructures provided by the .NET +framework. An example demonstrates how to use both a manual approach +with Microsoft's managed extensions to the C++ language, and also +automated solutions based on COM and the ActiveQt framework to reuse +native Qt classes and widgets in .NET projects. To learn more about Qt +and .NET read the "Using Qt objects in Microsoft .NET" walkthrough +found in the ActiveQt framework documentation. + +Qt 3.3 now supports IPv6 in addition to IPv4. New functions have been +added for IPv6 support to QSocketDevice, QHostAddress and QDNns. + +Qt now includes a new tool class called QLocale. This class converts +between numbers and their string representations in various languages. +QLocale supports the concept of a default locale which allows a locale +to be set globally for the entire application. + +Support for new 64bit platforms and compilers has been added for Qt +3.3. Qt now supports Itanium on both Linux (Intel C++ compiler) and +Windows (MSVC and Intel C++ Compiler). Qt 3.3 now also officially +supports FreeBSD. + +Qt 3.3 also supports precompiled headers for Windows, Mac OS X and +X11. To use precompiled headers when compiling your Qt application +simply add PRECOMPILED_HEADER and then specify the header file to +precompile in your .pro file. To learn more about precompiled headers +see the "Using Precompiled Headers" chapter in the qmake User Guide. + +Two new database drivers have been added to the SQL module, InterBase +and SQLite. This makes it possible to write database applications that +do not require a database server. SQLite is provided in the Qt 3.3 +distribution and can be enabled with either -qt-sql-sqlite or +-plugin-sql-sqlite. The InterBase plugin also works with Firebird, the +open source version of InterBase. + +QWidget has a new function setWindowState() which is used to make a +widget maximized, minimized, etc. This allows individual settings for +the minimized/maximized/fullscreen properties. + +Support for semi-transparent top-level widgets on Mac OS X and Windows +2000/XP has also been added. + +A new example, qregexptester, has been added that makes it easy to +test QRegExps on sample strings. + +Qt 3.3 includes in addition to this, numerous bug fixes and +improvements. Special thanks goes to KDE for their reports and +suggestions. + + +Qt/Embedded +----------- + +Added support for SNAP graphics drivers from SciTech Software. This +gives access to accelerated drivers for more than 150 graphics +chipsets. + + +Qt/Mac +------ + +QAccessible support has been introduced (implemented in terms of Apple's +Universal Access API). + +Added support for Xcode project files in qmake. + +Added Tablet support for Mac OS X. + +Numerous visual improvements. + + +Qt/X11 +------ + +Added support for Xft2 client side fonts on X servers without the +RENDER extension. + +Added a new configure option (-dlopen-opengl) which will remove the +OpenGL and Xmu library dependencies in the Qt library. The functions +used by Qt in those libraries are resolved manually using dlopen() +when this option is used. + +Improved support for the Extended Window Manager Hints. + + +Qt/Windows +---------- + +Added support for Windows Server 2003 (Win64/Itanium). + + +Qt Motif Extension +------------------ + +Clipboard operations now work between Qt and Motif widgets in the same +application. Click-to-focus works with Motif widgets that are children +of a QMotifWidget. + + +ActiveQt Extension +------------------ + +Two new functions, QAxFactory::startServer() and +QAxFactory::stopServer(), can be used to start and stop an +out-of-process ActiveQt server at runtime. The new functions +QAxFactory::serverDirPath() and QAxFactory::serverFilePath() return +the location of the COM server binary. Server binaries no longer +need to implement a main() entry point function. A default +implementation is used for out-of-process servers. IClassFactory2 +is supported for the development of licensed components, and +QAxFactory supports the creation of non-visual COM objects. Class +specific information can be provided directly in the C++ class +declaration using the Q_CLASSINFO macro to control how objects and +controls are registered and exposed. New helper classes and macros +are avialable to make it even easier to expose object classes (see the +QAxServer documentation for details). + +COM objects developed with ActiveQt are now supported in a wider range +of clients, including Microsoft Office applications and .NET. Examples +that demonstrate how to use the Qt objects from the examples in .NET +languages like C# are included. QStringList is supported as a type, +and QRect, QSize and QPoint are now supported datatypes for control +properties and as reference parameters. Saving the controls to a +storage or stream now includes the version number of the QDataStream +used for the serialization (note that this might break existing +storages). + +The QAxContainer library is now static even for shared configurations +of Qt. This simplifies deployment and allows using both QAxServer and +QAxContainer in one project, i.e. an OLE automatable application that +uses COM objects itself. The semantics of QAxBase::setControl() have +been extended to allow creating of COM objects on remote machines via +DCOM, to create controls requiring a license key and to connect to +already running objects. The implementation of QAxBase::dynamicCall() +has been improved to support passing of parameter values directly in +the function string. Three new classes, QAxScript, QAxScriptManager +and QAxScriptEngine, can be used to script COM objects from within Qt +applications using Windows Script Host. + +SAFEARRAY(BSTR) parameters are supported as QStringList. Calling COM +object methods with out-parameters of type short, char and float is +now supported (the parameters are of type int& and double& in the Qt +wrapper), and QVariants used for out-parameters don't have to be +initialized to the expected type. Calling QByteArray functions in +out-of-process controls no longer returns an error code. The control's +client side is set to zero when the container releases the control. + + +Qt Designer +----------- + +Qt Designer, Qt's visual GUI builder, has received some speed +optimizations, along with minor improvements to the menu editor. + + +Qt Assistant +------------ + +Qt Assistant now saves the states of the tab bars between runs. This +enables users to start browsing where they ended their previous +assistant session. + +Shortcuts for Find Next (F3) and Find Previous (Shift+F3) have been +implemented. + + +Compilers +--------- + +Qt 3.3 adds support for two new compilers. The Intel C++ compiler is +supported on Windows, Linux and FreeBSD. GNU gcc is supported on +Windows using MinGW. + +Qt 3.3 no longer officially supports the Sun WorkShop 5.0 compiler or the +SGI MIPSpro o32 mode. + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction + Added a setDisabled() slot similar to QWidget::setDisabled. + Added an activate() slot which activates the action and + executes all connected slots. + QActions::menuText() escapes ampersand characters ('&') when + using the value of the text property. + +- QButtonGroup + Added QButtonGroup::selectedId property to allow mapping with + SQL property sets. + +- QCursor + Added new enum value Qt::BusyCursor. + X11 only: Added QCursor constructor taking a X11 cursor handle. + +- QDom + The QDom classes are now reentrant. + +- QEvent + Added new event type WindowStateChange, obsoleting ShowNormal, + ShowMinimized, ShowMaximized and ShowFullScreen. + +- QHeader + The sizeChange() signal is emitted when the section sizes are + adjusted by double clicking. + +- QHostAddress + Added new constructor for IPv6 and new functions + isIPv6Address() and toIPv6Address(). Obsoleted the functions + isIp4Addr() and ip4Addr(), replacing them with isIPv4Address() + and toIPv4Address(). + +- QIconView + Improved keyboard search to behave like QListView. + +- QListView + Improved alignment for text in QListViewItems. Right aligned + text now has the ellipsis on the left. + Keyboard search now uses the sort column as the column to + start searching in. + Improved branch drawing. + +- QLocale [new] + This new tool class converts between numbers and their string + representations in various languages. + +- QMacStyle + Allow disabling of size constraints. + +- QMovie + Added JNG support. + +- QPixmap + Support full alpha-maps for paletted (8-bit) images. + Support 16-bit grayscale PNG images with transparency. + +- QPushButton + A push button with both an iconset and text left-aligns the + text. + +- QSocketDevice + Added setProtocol() and protocol() for IPv6 support. + +- QSound + Windows: Support loop related APIs. + +- QSplashScreen + Less intrusive stay-on-top policy. + +- QSql + Support for InterBase and SQLite. + +- QStatusBar + Draw messages with the foreground() color of the palette, + rather than with the text() color. + +- QString + Added support for %lc and %ls to sprintf(). %lc takes a + Unicode character of type ushort, %ls takes a zero-terminated + array of Unicode characters of type ushort (i.e. const + ushort*). Also added support for precision (e.g. "%.5s"). + Changed arg() to support "%L1" for localized conversions. + Windows only: QString::local8Bit() now returns an empty + QCString when called on a null QString to unify behavior + with the other platforms. + +- QStyle + Add a new primitive element: PE_RubberBand. + Added PM_MenuBarItemSpacing and PM_ToolBarItemSpacing pixel metrics. + +- QTextDrag + decode() now autodetects the encoding of text/html content. + +- QTextEdit + Reduced memory consumption by 20 bytes per line. + Added a getter for the currently set QSyntaxHighlighter. + +- QTextBrowser + Qt now automatically detects the charset of HTML files set + with setSource(). + +- QVariant + Comparison between variants where one of the variants is a + numeric value will compare on the numeric value. Type casting + between different variants is more consistent. + +- QWidget + Added setWindowOpacity() and windowOpacity() to support + transparent top-level widgets on Windows and Mac. + Added windowState() and setWindowState() to allow individual + setting of the minimized/maximized/fullscreen properties. + +- QWindowsStyle + Qt supports toggling of the accelerator underlines using the + Alt-key on Windows 98, 2000 and later. On other platforms this + change has no effect. diff --git a/dist/changes-3.3.0-b1 b/dist/changes-3.3.0-b1 new file mode 100644 index 0000000000..8a7433b849 --- /dev/null +++ b/dist/changes-3.3.0-b1 @@ -0,0 +1,284 @@ +Qt 3.3 introduces many new features as well as many improvements over +the 3.2.x series. For more details, see the online documentation which +is included in this distribution. The documentation is also available +at http://doc.trolltech.com/ + +The Qt version 3.3 series is binary compatible with the 3.2.x series. +Applications compiled for 3.2 will continue to run with 3.3. + +**************************************************************************** +* General * +**************************************************************************** + +Qt library +---------- + +Qt 3.3 is .NET enabled. This release shows how to use classes +developed with Qt in a .NET environment. It includes an analysis of +the different interoperability infrastructures provided by the .NET +framework. An example demonstrates how to use both a manual approach +with Microsoft's managed extensions to the C++ language, and also +automated solutions based on COM and the ActiveQt framework to reuse +native Qt classes and widgets in .NET projects. To learn more about Qt +and .NET read the "Using Qt objects in Microsoft .NET" walkthrough +found in the ActiveQt framework documentation. + +Qt 3.3 now supports IPv6 in addition to IPv4. New functions have been +added for IPv6 support to QSocketDevice, QHostAddress and QDNns. + +Qt now includes a new tool class called QLocale. This class converts +between numbers and their string representations in various languages. +QLocale supports the concept of a default locale which allows a locale +to be set globally for the entire application. + +Support for new 64bit platforms and compilers has been added for Qt +3.3. Qt now supports Itanium on both Linux (Intel) and Windows +(VC++). Qt 3.3 now also officially supports FreeBSD. + +Qt 3.3 also supports precompiled headers for both Windows and Mac OS +X. To use precompiled headers when compiling your Qt application +simply add PRECOMPH and then specify the header file to precompile in +your .pro file. To learn more about precompiled headers see the +"Using Precompiled Headers" chapter in the qmake User Guide. + +Two new database drivers have been added to the SQL module, InterBase +and SQLite. This makes it possible to write database applications that +do not require a database server. SQLite is provided in the Qt 3.3 +distribution and can be enabled with either -qt-sql-sqlite or +-plugin-sql-sqlite. The InterBase plugin also works with Firebird, the +open source version of InterBase. + +QWidget has a new function setWindowState() which is used to make a +widget maximized, minimized, etc. This allows individual settings for +the minimized/maximized/fullscreen properties. + +Support for semi-transparent top-level widgets on Mac OS X and Windows +2000/XP has also been added. + +Qt 3.3 includes in addition to this, numerous bug fixes and +improvements. Special thanks goes to KDE for their reports and +suggestions. + + +Qt/Embedded +----------- + +Added support for SNAP graphics drivers from SciTech Software. This +gives access to accelerated drivers for more than 150 graphics +chipsets. + + +Qt/Mac +------ + +Added support for Xcode project files in qmake. +Added Tablet support for Mac OS X. +Numerous visual improvements. + + +Qt/X11 +------ + +Added support for Xft2 client side fonts on X servers without the +RENDER extension. + +Added a new configure option (-dlopen-opengl) which will remove the +OpenGL and Xmu library dependencies in the Qt library. The functions +used by Qt in those libraries are resolved manually using dlopen() +when this option is used. + +Improved support for the Extended Window Manager Hints. + + +Qt/Windows +---------- + +Added support for Windows Server 2003 (Win64/Itanium). + + +Qt Motif Extension +------------------ + +Clipboard operations now work between Qt and Motif widgets in the same +application. Click-to-focus works with Motif widgets that are children +of a QMotifWidget. + + +ActiveQt Extension +------------------ + +Two new functions, QAxFactory::startServer() and +QAxFactory::stopServer(), can be used to start and stop an +out-of-process ActiveQt server at runtime. The new functions +QAxFactory::serverDirPath() and QAxFactory::serverFilePath() return +the location of the COM server binary. Server binaries no longer +need to implement a main() entry point function. A default +implementation is used for out-of-process servers. IClassFactory2 +is supported for the development of licensed components, and +QAxFactory supports the creation of non-visual COM objects. Class +specific information can be provided directly in the C++ class +declaration using the Q_CLASSINFO macro to control how objects and +controls are registered and exposed. New helper classes and macros +are avialable to make it even easier to expose object classes (see the +QAxServer documentation for details). + +COM objects developed with ActiveQt are now supported in a wider range +of clients, including Microsoft Office applications and .NET. Examples +that demonstrate how to use the Qt objects from the examples in .NET +languages like C# are included. QStringList is supported as a type, +and QRect, QSize and QPoint are now supported datatypes for control +properties and as reference parameters. Saving the controls to a +storage or stream now includes the version number of the QDataStream +used for the serialization (note that this might break existing +storages). + +The QAxContainer library is now static even for shared configurations +of Qt. This simplifies deployment and allows using both QAxServer and +QAxContainer in one project, i.e. an OLE automatable application that +uses COM objects itself. The semantics of QAxBase::setControl() have +been extended to allow creating of COM objects on remote machines via +DCOM, to create controls requiring a license key and to connect to +already running objects. The implementation of QAxBase::dynamicCall() +has been improved to support passing of parameter values directly in +the function string. Three new classes, QAxScript, QAxScriptManager +and QAxScriptEngine, can be used to script COM objects from within Qt +applications using Windows Script Host. + +SAFEARRAY(BSTR) parameters are supported as QStringList. Calling COM +object methods with out-parameters of type short is now supported (the +parameters are of type int& in the Qt wrapper), and QVariants used for +out-parameters don't have to be initialized to the expected type. +Calling QByteArray functions in out-of-process controls no longer +returns an error code. The control's client side is set to zero when +the container releases the control. + + +Qt Designer +----------- + +Qt Designer, Qt's visual GUI builder, has received some speed +optimizations, along with minor improvements to the menu editor. + + +Qt Assistant +------------ + +Qt Assistant now saves the states of the tab bars between runs. This +enables users to start browsing where they ended their previous +assistant session. + +Shortcuts for Find Next (F3) and Find Previous (Shift+F3) have been +implemented. + + +Compilers +--------- + +Qt 3.3 adds support for two new compilers. The Intel C++ compiler is +supported on Linux and FreeBSD. GNU gcc is supported on Windows using +MinGW. + +Qt 3.3 no longer officially supports the Sun CC 5.0 compiler or the +IRIX MIPSpro o32 mode. + + +**************************************************************************** +* Library * +**************************************************************************** + +- QAction + Added a setDisabled() slot similar to QWidget::setDisabled. + Added an activate() slot which activates the action and + executes all connected slots. + Added showStatusMessage() and whatsThisClicked() signals. + +- QButtonGroup + Added QButtonGroup::selectedId property to allow mapping with + SQL property sets. + +- QCursor + Added new enum value Qt::BusyCursor. + +- QDom + The QDom classes are now reentrant. + +- QEvent + Added new event type WindowStateChange, obsoleting ShowNormal, + ShowMinimized, ShowMaximized and ShowFullScreen. + +- QHeader + The sizeChange() signal is emitted when the section sizes are + adjusted by double clicking. + +- QHostAddress + Added new constructor for IPv6 and new functions + isIPv6Address() and toIPv6Address(). Obsoleted the functions + isIp4Addr() and ip4Addr(), replacing them with isIPv4Address() + and toIPv4Address(). + +- QListView + Improved alignment for text in QListViewItems. Right aligned + text now has the ellipsis on the left. + Keyboard search now uses the sort column as the column to + start searching in. + Improved branch drawing. + +- QLocale [new] + This new tool class converts between numbers and their string + representations in various languages. + +- QMacStyle + Allow disabling of size constraints. + +- QMovie + Added JNG support. + +- QPixmap + Support full alpha-maps for paletted (8-bit) images. + Support 16-bit grayscale PNG images with transparency. + +- QSocketDevice + Added setProtocol() and protocol() for IPv6 support. + +- QSound + Windows: Support loop related APIs. + +- QSplashScreen + Less intrusive stay-on-top policy. + +- QSql + Support for InterBase and SQLite. + +- QStatusBar + Draw messages with the foreground() color of the palette, + rather than with the text() color. + +- QString + Added support for %lc and %ls to sprintf(). %lc takes a + Unicode character of type ushort, %ls takes a zero-terminated + array of Unicode characters of type ushort (i.e. const + ushort*). Also added support for precision (e.g. "%.5s"). + Changed arg() to support "%L1" for localized conversions. + +- QStyle + Add a new primitive element: PE_RubberBand. + +- QTextEdit + Reduced memory consumption by 20 bytes per line. + Added a getter for the currently set QSyntaxHighlighter. + +- QVariant + Comparison between variants where one of the variants is a + numeric value will compare on the numeric value. Type casting + between different variants is more consistent. + +- QWidget + Added setWindowOpacity() and windowOpacity() to support + transparent top-level widgets on Windows and Mac. + Added windowState() and setWindowState() to allow individual + setting of the minimized/maximized/fullscreen properties. + +- QWindowsStyle + Qt supports toggling of the accelerator underlines using the + Alt-key on Windows 98, 2000 and later. On other platforms this + change has no effect. diff --git a/dist/changes-3.3.1 b/dist/changes-3.3.1 new file mode 100644 index 0000000000..55ea305873 --- /dev/null +++ b/dist/changes-3.3.1 @@ -0,0 +1,141 @@ +Qt 3.3.1 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.0 + + +**************************************************************************** +* General * +**************************************************************************** + +Added support for animated cursors on Mac OS X. + +Compilers +--------- + +Fixed SQLite compilation on Solaris. + +Fixed problem with precompiled headers (PCH) and Platform SDK on +Windows by removing winsock2.h dependency. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +Fixed drag and drop for modal dialogs. + +- QAction + Propagate visibility state correctly to actions added to an + invisible actiongroup. + +- QHttp + Handle both upper and lower case in response headers. + +- QLineEdit + Fixed drawing problems that affected very long strings and + the handling of trailing spaces. + +- QObject + Fixed connectNotify() and disconnectNotify() for some special + cases. + +- QPixmap + Avoid calling detach() when setting a null mask on a pixmap. + +- QString + sprintf() again interprets strings, %s, as UTF-8 strings, not + as Latin1 strings. + +- QTabBar + Tabbars are now correctly left aligned again. + +- QTable + Fixed shift selections after editing. + +- QTextEdit + Emits cursorPositionChanged() when cursor position changes + when find() has been called. + LogText mode: Changing fonts after appending text now + recalculates the scrollbars properly. + Optimized createPopupMenu(). + +- QVariant + Added missing detach() calls in QVariant::as...() functions + (e.g. asInt()). + +- QWidget + setWindowState() fixed for WindowMaximized and + WindowFullScreen. showMaximized() and showFullScreen() now + work for laid out widgets that have not been explicitly + resized. + windowOpacity() correctly initialized. + +Platform-Specific Issues +------------------------ + +Windows: + +Fixed overflow error that sometimes affected the font engine. +Fixed font drawing problems for some international versions of Win9x; +also improved handling of spaces before Chinese characters. + +- QApplication + Fixed libraryPaths() to return the correct location of the + application executable, independently of whether it has been + called before the QApplication constructor or afterwards. + +- QFileInfo + Fixed readLink() for special cases. + +- QSound + Fixed isFinished() to work correctly. + +- QStyle + Fixed QWindowsXPStyle drawing flat toggle buttons. + +- QWidget + Turn off layered painting if window opacity is set back to + 1.0; making widget redrawing fast again. + +Mac: + +Fixed crash on exit problem with Qt Designer. +Fixed compilation of networking modules for Professional edition. +Fixed overflow error that sometimes occurred in the font engine. +Fixed modal dialogs and contextMenuRequested() signals. + +- QMenuBar + Add separator after the "Abouts". + Fixed memory corruption. + +- QMessageBox + Improved handling of text and button size. + +- QPainter + Improved raster operations when using colors. + Improved polygon region handling and drawPolyLine(). + +- QStyle + Fixed QAquaStyle to use setWindowOpacity(). + Fixed QMacStyle drawing of flat toggle buttons. + +- QWidget + Fixed showFullScreen() to not hide the toolbar. + +X11: + +Fixed skipping of certain (bitmap) fonts for Xft2 when building up the +font database. + +- QPrinter + Fixed regression with margins and Landscape. + +Embedded: + +- QPixmap + Fixed crash bug with transformed driver when using masked + pixmaps where width > height. + In xForm(), pre-fill the resulting pixmap with a transparent + color instead of white. diff --git a/dist/changes-3.3.2 b/dist/changes-3.3.2 new file mode 100644 index 0000000000..72213deed6 --- /dev/null +++ b/dist/changes-3.3.2 @@ -0,0 +1,390 @@ +Qt 3.3.2 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.1 and Qt 3.3.0. + + +**************************************************************************** +* General * +**************************************************************************** + +Compilers +--------- + +MinGW: It is now possible to build the WinXP style on MinGW. + +FreeBSD: Enable DragonFly to build Qt with its native compiler. + +Mac: Assistant builds with Professional edition when Fink is installed. + +AIX: Fixed compile problem with OpenType. + +Tru64: Correctly detects the Compaq C++ compiler. + +HP-UX 64: Fixed link failure for Designer. + +Intel: Fixed compile failure on icc version 8.0 p42+. + +Qt/Embedded: Compiles with gcc 3.4.0 (prerelease). + +Added macro QT_QLOCALE_USES_FCVT for systems with non-IEEE-compliant +floating point implementations (notably some versions of ARM +Linux). These systems are not autodetected; use +"-DQT_QLOCALE_USES_FCVT" as a parameter to ./configure. + +Qt Designer +----------- + +Allows saving of the column and label information for QDataTable, even +when Qt is compiled without the SQL module. + +Fixed data corruption in .pro files with whitespace. + +Fixed crash on closing a new, modified, unsaved C++ file. + +Fixed crash with QicsTable. + +Fixed corrupted .ui files caused by '<' or '>' in the object name. + +Fixed freeze when opening a modal Wizard Dialog from file. + +Fixed crash when adding a new separator using drag and drop. + +Qt Assistant +------------ + +Fixed the Settings font combobox to not re-add font entries. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +- QAction + Fixed bug when adding invisible/disabled actions to + visible/enabled action groups. + +- QCanvas + Cleans up old animations in setCanvas(). + +- QClipboard + Fixed potential double deletion in clean up. + +- QColorDialog + Fixed crash when running on very small screens (less than + 480x350). + +- QDateEdit + Fixed bug that would accept invalid dates when losing focus. + +- QDialog + Made showMaximized() and showFullScreen() work for dialogs + again. + +- QDns + Improved handling of literal IP addresses for both IPv4 and + IPv6. + Improved handling of disappearing/reappearing name servers. + +- QFont + Fixed handling of Oblique fonts. + +- QImage + Fixed crash when loading MNG animations. + +- QLabel + Fixed bug with labels without buddies that have '&' in the + text. + +- QLineEdit + Handles input method events according to the specification, + fixing severe problems with Korean input on Windows. This + change could show up problems with buggy input methods. + Fixed disappearing cursor for right-aligned text and Xft1. + +- QListBox + Fixed bug in itemAt() when listbox has wide line/framestyle. + +- QListView + Fixed problem with editor sometimes having zero width. + +- QLocale + Fixed crash on FreeBSD/Alpha. + +- QPainter + Fixed QPicture transformation bug. + + +- QPopupMenu + Fixed crash-on-exit bug when using floating menus. + +- QRegExp + Fixed bug with patterns of the form "^A|B". + +- QSocket + Fixed bug where connecting two QSockets simultaneously would + cause both to connect to the same address. + Fixed bug where ErrConnectionRefused would not be emitted in + rare cases. + +- QSql + Fixed data corruption in OCI driver. + Fixed data corruption with SQLite driver when using non-UTF-8 + databases with special characters. + Updated to work with SQLite version 2.8.13. + +- QString + Made string-to-number conversions interpret strings according + to the current locale. + Fixed the format of the %p sprintf flag. + Perform sanity check on the length parameter to fromUtf8(). + Fixed toDouble() to again return a value even when failing on + trailing whitespace. + Performance optimization for startsWith()/endsWith(). + +- QTable + Fixed crash caused by calling addLabel() on a horizontal header + when there are no columns in the table. + Fixed crash that occurs when deleting a QTable while editing + a cell. + Made it possible to override the grid line color. + Fixed selectionChanged() to be emitted correctly when dealing + with selections of multiple items. + +- QTabWidget + Fixed setAutoMask(). + +- QToolButton + Icon and label now move the same distance when pressed. + +- QTextEdit + Does not override Ctrl+Alt+key accelerators. + Performance optimization: do not call ensureCursorVisible() when + isUpdatesEnabled() is not true. + Fixed crash when using removeParagraph() to remove QTextTable + items. + Fixed data corruption when saving documents with overline or + strikeout. + +- QTextBrowser + Fixed Purify warning about array-bound reads. + +- QVariant + Fixed bug in detaching LongLong and ULongLong values. + +- QWidget + Made showMaximized()/showFullScreen()/showMinimized() work + correctly again. + Posts events from the windowing system as before. + +- QWizard + Does not show enabled Next button on the last page if the + Finish button was enabled on an earlier page. + +- QWorkspace + Scales down maximize icon correctly. + Fixed active window/focus bug. + Ensured that children added to invisible workspaces are + painted correctly. + Fixed flicker with tooltips for maximize, minimize and close + buttons. + +- QXml + Fixed bug causing data corruption when reading invalid XML + files. + + +Platform-Specific Issues +------------------------ + +Windows: + +- QApplication + Does not handle GUI messages for non-GUI appliations. + Disabled MenuItem highlight color for XP in non-themed + Classical Style. + +- QContextMenuEvent + Made right mouse button send menu event also for popup widgets + such as the QListBox in QComboBox. + +- QDesktopWidget + Made qApp->desktop()->size() give the correct size after a + display resolution change. + +- QFont + Loading a Japanese font using the English name now works when + running in a Japanese locale. + +- QLineEdit + Fixed drawing problems that affected very long strings and the + handling of trailing spaces when using Uniscribe. + +- QPainter + Fixed possible crash in setBrush(). + Draw bitmaps using painter's foreground color when painter is + using a complex transformation. + Fixed inter-letter spacings for scaled fonts. + +- QPrinter + Fixed crash when using buggy printer drivers. + +- QSound + Made setLoops(-1) work again (plays the sound in a loop). + Made setLoops(0) play no sound. + Made setLoops(1) set isFinished() correctly. + Fixed memory leak. + If a new sound is started then stop the existing one, and play + the new one. + +- QTextEngine + Performs auto-detection of Asian scripts even if Uniscribe is + not installed. + +- QWidget + Returns correct isMinimized/isMaximized state if an application + is started through a shortcut using "Minimized" or "Maximized". + +Mac: + +- QAccel + Solved the problem where we received two accel override events + for each keypress. + +- QApplication + Uses better technique for obtaining applicationFilePath(). + Allows non-GUI applications to run without the GUI. + Stopped using EnableSecureEventInput() because of + Jaguar/Panther compatibility problems. + Updates the text highlight color when the system changes it. + +- QClipboard + Fixed posting to the clipboard and access rights. + +- QComboBox + Ensures that the item list stays within the screen size. + +- QCursor + Uses native splitter cursors when available. + +- QFontMetrics + Fixed fontmetrics for Asian fonts. + +- QLineEdit + Uses secure keyboard input in Password mode, so that keyboard + events cannot be intercepted. + +- QMacStyle + Fixed painting of radio buttons to be perfectly circular. + +- QMenuBar + Fixed bug when using pixmaps without an alpha channel. + +- QPainter + Improved raster operations. + Made custom bitmap brushes work. + Draws text using painter's foreground color. + +- QPrinter + Ensures that the printer name and page range are correct after + setup. + Always uses the native print dialog. + Implemented setPageSize() and pageSize() properly. + Made QPrinter work when no printer is installed. + Fixed font width bug in postscript when font embedding is + disabled. + +- QSettings + Returns correct value for global settings when scope is User. + +- QSlider + Fixed drawing of tickmarks when minimum value is non-zero. + +- QStyle + Does not change pixmap of QToolbutton if the button is not + auto-raised. + +- QWidget + Fixed bug where the toolbar is partially hidden when showing a + mainwindow in fullscreen mode. + Made WStyle_StaysOnTop work in the same way as on the other + platforms. + Fixed bug in maximizing windows with a maximum size. + +- QWorkspace + Fixed bug giving frozen child windows when maximizing and + restoring. + +X11: + +Fixed crash bug when using X Input Method Chinput. + +- Drag and Drop + Ignores accelerator events when dragging. + +- QClipboard + Fixed bug where data()->format() would return the wrong value. + Fixed potential crashes with regards to iterators. + +- QFont + Avoids badly scaled fonts, and prefers exact matches. + Made sure symbol fonts get loaded correctly. + Made it possible to load Latin fonts that do not contain the + Euro symbol. + Fixed glyph width bug observed with some Khmer fonts. + Fixed crash with misconfigured Xft. + Fixed problem with font selection for Xft2 when having Latin + text with non-Latin locale. + Respects custom dpi settings for Xft. + Does not use Xft if we have FreeType1 but no XRender. + Fixed memory leak in the font engine when drawing transformed + fonts. + +- QGL + Fixed crash when rendering text in GL widgets. + +- QLocale + Tru64: Fixed crash when INFINITY is compared to another double. + Tru64: Uses DBL_INFINITY for Compaq C++ compiler. + +- QMimeSource + Does not re-enter the event loop in provides(). + +- QPainter + Fixed rendering of anti-aliased text on non-XRender enabled + displays. + +- QPrinter + Fixed setFromTo(). + Fixed printing of Arabic text with XLFD fonts. + +- QTextEdit + Fixed bug with extremely long lines. + +- QThread + Fixed bug that made program require superuser privileges on + some Linux machines. + +- QWidget + Fixed showFullScreen() and showMaximized() for window managers + that do not support extended window manager hints (EWMH). + +Embedded: + +- QFontInfo + Made QFontInfo work properly on Qt/Embedded. + +- QGfxVNC + Fixed crash if VNC viewer is closed while Qt/E is painting. + +- QWidget + Uses correct focus handling if the focus widget is hidden or + deleted while a popup is open. + +Linux virtual console switching: + Fixed race condition in handling of virtual console switching + that could cause a deadlock in some cases. + Switch consoles on key press event. + Fixed QWSServer::hideCursor()/showCursor() display locking bug + which could block client processes. diff --git a/dist/changes-3.3.3 b/dist/changes-3.3.3 new file mode 100644 index 0000000000..8dde96a628 --- /dev/null +++ b/dist/changes-3.3.3 @@ -0,0 +1,442 @@ +Qt 3.3.3 is a bugfix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.2, Qt 3.3.1 and Qt 3.3.0. + + +**************************************************************************** +* General * +**************************************************************************** + +Compilers +--------- +Added support for GNU gcc on AIX 64-bit. + +Fixed the issue of some compilers that produced bad output when +compiling qlocale.cpp with -O2. + +Fixed include path problem with MinGW. + +Meta Object Compiler (moc) +-------------------------- +Allow classnames containing the substring 'const' in signal +parameters. + +Qt Assistant +------------ +Fixed crash when an empty file is part of the profile. + +Qt Designer +----------- +Fixed occasional crash when closing the form window. + +Fixed bug that removed '@' characters from .pro files. + +Fixed bug resulting in invalid code for radio buttons with strong +focus. + +Fixed crash when custom widget plugins based on QComboBox were edited or +previewed in certain styles. + +Fixed bug in loading enum properties (e.g. slider tickmarks). + +Handle comments of the form '# {' correctly. + +Handle '$${}' variable expansion correctly. + +Fixed missing actions in drop down action groups created with the menu +editor. + +Made sure that the item labels for toolboxes can be translated. + +Added CTRL + Key_Q as a shortcut to quit. + +Do not add unnecessary blank lines in .pro files. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- +- Drag and drop + Handle filenames with '#' characters properly. + +- QAccel + Fixed bug where Alt + non-ASCII letter would require an additional + Shift. + +- QButtonGroup + Don't navigate out of the button group with the arrow keys. + +- QComboBox + Don't close the combobox when holding space down while clicking. + (Fixes GUI lock-up on Windows.) + +- QDateTimeEdit + Propagate enabled state correctly when adding a QDateEdit/QTimeEdit + to a disabled parent. + +- QDataStream + Fixed bug involving the output of doubles/floats in printable mode. + +- QFileDialog + Fixed crash when calling setContentsPreview() twice. + +- QFontDatabase + Made Tibetan text work even without OpenType tables. + When using XLFD fonts, make sure that the size selected actually + supports the script. + Fixed bug that caused fixed-pitch XLFD fonts to be reported as + variable pitch. + Fixed some issues in the CJK compatibility area, where we did + not always pick the correct CJK font. + Made isSmoothlyScalable() work when a font only exists in bold. + Fixed bug where font metrics for Asian fonts were wrong in some + circumstances. + Fixed bug involving certain open source Arabic fonts. + +- QFontDialog + Resize OK/Cancel buttons properly with large font sizes. + +- QFtp + Allow connection to FTP servers that return lower-case month + names. + +- QImage + Included fix for buffer overflow in libPNG. + Fixed bug that made copy constructor not copy the entire image. + Allow XPM images with colors that have more than one word in the + name. + Fixed crash when trying to load a corrupt/invalid BMP image. + Fixed crash when trying to load a corrupt/invalid GIF image. + Fixed crash when trying to load a JPEG image that is too big. + Fixed bug that caused dotsPerMeter() to be ignored when saving + JPEG images. + +- QLineEdit + Fixed memory leak for line edits with masks. + Fixed bug where QLineEdit::text() would return a null QString when + an input mask was set on an empty line edit. + Don't scroll when the text is wider than the widget. + +- QListView + Don't select a non-visible item when Right arrow key is pressed. + Fixed crash in setOpen(QListViewItem*, bool). + +- QLocale + Now supports string-to-int conversions with base up to 36. + Handle space as a separator for large numbers in toDouble(). + +- QMovie + Fixed offset bug. + +- QPainter + Don't crash if setWorldMatrix() is called on a painter that is not + active. + +- QPicture + Fixed bounding rect calculation. + +- QPixmap + Fixed rounding errors in xForm(). + +- QPopupMenu + Fixed updateSize(). + Fixed a crash when clearing and inserting new items while the tear + off is visible. + +- QRichText + Clear the focusIndicator paragraph when clearing the text. + Fixed bug with <td valign="middle">. + +- QSemaphore + Fixed possible starvation in operator-=(). + +- QSlider + Fixed mouse handling for vertical sliders in reverse mode. + +- QSocket + Preserve readBufferSize() when doing connectToHost(). + +- QSql + Fixed crash in ODBC-Driver in connection with Informix SE. + +- QSqlCursor + Fixed bug in del(true) + +- QSqlQuery + Fixed thread reentrancy bug. + +- QString + Made toFloat() fail if the number is too large for a float. + Fixed crash in fromUtf8 when argument is not 0-terminated. + Don't end up in an endless loop when setLength() is called with a + ridiculously large value (> 2^31). + +- QSvgDevice + Fixed some clipping issues. + +- QTable + Fixed memory leak in key event handling. + Fixed bug where calling setNumRows() or setNumCols() would not + change the sizeHint(). + Improved speed of deleting rows/columns in big tables. + +- QTextEdit + Hide the cursor again when a drag leaves the text edit. + Don't crash if the text edit is deleted while the popup menu is + active. + Fixed undo/redo bug in overwrite mode. + Fixed crash when entering text in overwrite mode when entire text is + selected, on a single line, and the cursor is at the start of the + text. + +- QTextEngine + Fixed a small bug in the bidi engine. + Fixed two small issues with Bengali rendering. + Fixed small issue with Khmer rendering. + Fixed an issue with ideographic space (U+0x3000). + +- QThread + Fixed bug on HP-UX when starting a thread with LowPriority. + Provide a safety mechanism when trying to use QThreadStorage from + non-QThread threads: spit out a warning and do nothing. + +- QToolBar + Create a disabled popup menu when a disabled combobox is added to + the extension menu. + +- QWidget + Fixed bug that would sometimes make showMaximized() fail. + +- QWidgetStack + Set background properly when the current page has a maximum size + that is less than the size of the QWidgetStack. + +- QWorkspace + Fixed problems involving widgets with size constraints. + Don't normalize minimized widgets when cascading and tiling. + +- QXml + Speed optimizations. + +Platform-Specific Issues +------------------------ +Windows: + +- Drag and drop + Ignore drag and drop events for modally shadowed windows. + +- Build system + Fixed qmake problem with QMAKE_EXTRA_WIN_TARGETS. + +- QApplication + Fixed restoring of windows when minimized using something other than + the window menu. + When restoring a modally blocked application after using "Minimize + All Windows" from the task bar, activate the modal dialog rather + than the blocked window. + Support Unicode application directories in applicationFilePath() + independently of the current locale. + Fixed accelerators with Ctrl+@ and Ctrl+[ to Ctrl+_ instead. + +- QAxWidget + Fixed bug that could lead to windows no longer responding to mouse + events. + Fixed bug that would eat a mouse release event in some cases. + +- QFileDialog + Don't let getOpenFileName() fail immediately, even if passed invalid + characters. + Fixed bug that gave spurious mouse move events to other widgets when + closing a file (or printer) dialog. + +- QFontDatabase + Select correct font when family is empty and style hint is set. + Fixed problem where Chinese fonts were a pixel smaller than with + older Qt versions. + +- QFtp + Improved performance by increasing buffer sizes. + +- QLocale + Obtain correct locale information on Win95, so that + QTextCodec::locale() works properly. + +- QPixmap + Fixed problems when alpha blending in 32bpp depth. + +- QPrinter + Fixed problems caused by printing without first calling setup() when + using certain printers. + +- QSettings + Fixed bug that would add unnecessary size to the registry on Win98 + in some circumstances. + +- QSocket + Worked around Windows bug which caused bytesAvailable() to be 1, + even if no data was available. + +- QSound + Removed race condition. + +- QTextEngine + Draw CJK compatibility characters in the 0xffxx range correctly. + Fixed crash on invalid UTF-8 when using the newest Uniscribe library + on XP. + +- QWidget + Don't clear the maximized state when moving a maximized window. + Don't move the widget to a silly position when showMinimized() is + called on a visible widget. + Let the size grip respect the same size limits as the window + manager. + Fixed bug where a widget with an empty region as mask would still + have one visible pixel. + +- QWindowsStyle + Always underline accelerator cues on Windows 98. + +- QWindowsXPStyle + Draw up/down buttons of QDateTimeEdit disabled when the widget is + disabled. + Draw toggle-toolbuttons as toggled even if they are not in a + toolbar. + +Mac: + +- Drag and drop + Fixed bug that would disrupt drag and drop when toggling + full-screen status. + Ignore drag and drop events for modally shadowed windows. + Show the correct cursor when copying. + +- QApplication + Fixed bug that could cause crash when allocating and deleting + QApplication repeatedly. + Properly animate the toolbar button. + +- QAquaStyle + Made sure that OK and Cancel buttons are big enough when icons are + added. + Fixed bug that would show focus rectangles around hidden widgets in + a QScrollView. + Fixed drawing errors in QComboBox and QSpinBox when building on + Panther and deploying on Jaguar. + Fixed bug that caused artifacts on the focus widget when embedded + inside a widget with a background pixmap. + +- QComboBox + Fixed crash when calling setListBox() and later popping up the popup + list. + Fixed size hint problems. + +- QFileDialog + Made the filter functionality work in getSaveFileName(). + +- QFontEngine + Fixed bug showing strikeout text. + +- QHeader + Fixed drawing errors when moving columns. + +- QListView + Don't draw the disclosure triangle for items that aren't visible. + +- QMenuBar + Disable the quit option when there is a modal dialog. + +- QPixmap + Made copyBlt() copy the alpha channel properly again. + +- QPrinter + Fixed page range bug. + +- QProgressBar + Show something for indeterminate progress bars. + +- QScrollView + Fixed colors for the scrollview frame. + +- QSettings + Fixed bug that caused settings files to end up in the wrong place. + +- QTableHeader + Fixed sizing bug. + +- QWidget + Don't disable children of WStyle_Tool widgets. + The window proxy icon is only set for document windows. + +X11: + +- QApplication + Made the '-inputstyle' command line option override the ~/.qt/qtrc + setting. + Fixed crash when using the QApplication( Display *,...) constructor + without any settings file in ~/.qt/. + Fixed bug when passing a Tk Visual* to the QApplication constructor. + +- QClipboard + Fixed race condition in clear(). + +- QFontDatabase + Fixed bug that caused some special TTF fonts to display incorrectly. + Fixed bug where Qt would not find some non-scalable fonts. + +- QFontEngine + Fixed bug that caused incorrect metrics and drawing in some cases + when a painter scales down very large fonts for display. + +- QMotif + Fixed crash when passing X11 command line parameters. + Fixed GUI freeze when using the system close menu on a QMotifWidget + window with some window managers. + +- QPainter + Fixed memory leak when more than 256 GCs are allocated. + +- QPrinter + Allow multiple space-separated options in + setPrinterSelectionOption(). + Fixed printing to A3 sized paper. + Fixed printing using certain PFB fonts (e.g. the ones generated from + TeX). + +- QWidget + Fixed restoration from fullscreen/maximize on non-EWMH supporting + window managers. + Do not clear the fullscreen/maximize state if the window manager + ignores a resize request from Qt. + Worked around bugs in window placement for the SGI 4Dwm window + manager. + +Embedded: + +Makeqpf tool + Use the same way of finding the font directory as the rest of Qt. + +- QVNCServer + It is now possible to have several different VNC servers active on + the same machine (and even in the same process). + Fixed bug connecting a little-endian client to a big-endian server. + +- QPainter + Fixed bug making thick vertical lines one pixel too wide. + Worked around compiler bug in gcc 3.3.1 and 3.3.3 (but apparently + not in 3.3.2), causing artifacts when drawing anti-aliased text on + 16-bpp displays in release mode. + +- QWidget + Avoid creating a paint event in setMask() if the new mask is the + same as the old. + +- QWSManager + Fixed crash when widget is deleted during a window system mouse + grab. + Only move window on left mouse press. + +- QWSServer + Avoid possible race condition in sendPropertyNotifyEvent() + when client quits. diff --git a/dist/changes-3.3.5 b/dist/changes-3.3.5 new file mode 100644 index 0000000000..8839f7692d --- /dev/null +++ b/dist/changes-3.3.5 @@ -0,0 +1,617 @@ +Qt 3.3.5 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.4, Qt 3.3.3, Qt 3.3.2, +Qt 3.3.1 and Qt 3.3.0. + +**************************************************************************** +* General * +**************************************************************************** + +Platforms +--------- + +- Qt now supports Mac OS X 10.4 (Tiger) + +Compilers +--------- + +- Added support for VS 2005 +- Added support for GCC 4 + +Windows Installer +----------------- + +- The environment variables no longer contain invalid paths. +- The user is warned if QTDIR is not set and the evaluation edition is + already installed, to avoid conflicts between the two packages. +- A bug was fixed where a '\0' was appended to the end of a path. +- Fixed the dependencies for image formats and styles. + +Qt Designer +----------- + +- Fixed a problem with long string literals on certain Visual Studio + C++ compilers. +- UIC now uses the include hints from the .ui file when generating + source files. +- The "paste" action is now enabled and disabled correctly. +- QWidgetFactory::supportsWidget() now returns true for QSplitter. +- Parse files with more than one '.' in the file name correctly. +- The project name is now displayed correctly also when the project is + created in a root directory. +- Fixed a bug where Windows end-of-line terminators would be included + in string literals, which broke translation. +- Several crashes were fixed related to cutting/copying/pasting menu + items. +- Fixed some problems with designer generating corrupted pro files. +- A crash was fixed for when designer loads a pro file with the same + file listed more than once. +- The action editor is now closed when there is no main window form. +- Stability fixes + +Qt Linguist +----------- + +- lupdate now understands strings longer than 16384 characters. +- Fixed escaping bugs for string that contain both ampersands and + double quotes. + +Qt Assistant +------------ + +- When printing, assistant now always uses the Active color group. +- Fixed a rendering bug for paragraphs that start with a line break. +- Support for setting the documentation root path, allowing + documentation files to be moved. +- When opening a link in a new window, assistant will now properly + scroll to the correct anchor after the window has been shown. +- Fixed full text search for documents not listed in the 'ref' + attribute of the <section> tag in the current .adp file. +- The state of the forward/backward buttons now work properly when the + tabs are changed. + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +Added security patches for zlib: CAN-2005-1849, CAN-2005-2096 +The FreeType library was upgraded from version 2.0.9 to 2.1.9 + +- Build system + Improved build keys for gcc 4 compilers, so plugins no longer + need rebuilding after upgrading gcc to a new patch release. + +- QCanvas + Fixed wrong text scaling and cut-off text. + Fixed drawing with a brush when double buffering is enabled. + +- QCommonStyle + Fixed the appearance of QSlider after setBackgroundOrigin has + been called. + Fixed an overflow in calculating the handle position for + QScrollBar. + +- QCString + Fixed a crash in qUncompress() if the resulting QByteArray was + too large to fit in memory. + Fixed potential security problems by using vsnprintf() instead + of the less secure vsprintf(). + +- QDataStream + Fixed a data corruption bug when using stream version Qt_3_1 and using + operator<<(qint64). + +- QDateTime + Fixed QDateTime::secsTo() when crossing daylight savings hours + boundaries. + +- QDockWindow + Undocked windows now remember their size also if the user + changes it. + +- QDom + The default constructor for QDocDocument now creates an empty + document that can be used to create elements. + A warning is now displayed when trying to construct or save an + invalid document. + Characters that are not allowed in XML are now escaped + properly when saving. + +- QFileDialog + Shortcuts now show the icons of what they point to. + Entry sorting is now locale-aware, as opposed to sorting based + on Unicode order. + You can now select files by pressing 'enter' when using + QFileDialog::getOpenFileNames(). + Fixed a missing repaint in contents preview after selecting a + file, then a directory, then the same file again. + dirPath() no longer chops off the last directory in a path. + +- QGVector + Fixed a bug that caused a memory leak and data corruption if + resize() failed. + +- QHeader + The header text is now rendered correctly next to the icon in + reverse layout mode. + +- QImage + Fixed comparison of images with alpha data, but with the alpha + channel disabled. + +- QKeySequence + Key sequences that ended with a ',' now work properly. + +- QLineEdit + Fixed the behavior of the delete key on the keypad. + Fixed support for transparent line edits. + Fixed a crash when opening the context menu in a QTextEdit + subclass that returns 0 for createPopupMenu(). + +- QListBox + Fixed a crash when removing the current item while selecting + items with a rubberband. + +- QListView + Fixed the behavior of the Home and End keys when QListView + contains disabled and hidden items. + Fixed a problem with the QListView::...Clicked() signals were + emitted also when the root decorated section was not in the + left-most column. + HTML control characters in QListView's tool tip text are now + escaped properly. + sortChildren() now also sorts children of items with no + siblings. + Fixed a missing redraw after removing columns. + contentsWidth() now returns the correct value after + setContentsWidth() has been called. + Fixed a crash after a sequence of deleting and selecting + items. + Fixed the size of headers with multi-line text. + Fixed a lock-up and possible crash caused by an internal state + restore on controllers with no children. + Fixed keyboard navigation when jumping to entries by pressing + the key for the first character in the text of an item. + +- QLocale + Fixed support for NaN, which failed on certain compilers. + Passing Q_LLONG to toString() now properly includes the group + symbols. + Fixed locale detection when locale environment variables are + not set. + Added workarounds for compiler optimization bugs when parsing + doubles. + +- QLocalFS + Fixed a crash when canceling a QUrlOperator transfer before + completion. + +- QMenuData + Fixed a crash when closing an MDI application while the menu + bar has Alt-focus. + +- QMessageBox + Message boxes now work correctly in right-to-left mode. + +- QPaintDevice + Fixed drawing errors when using bitBlt() on a printer. + +- QPainter + Fixed drawing of rectangles with a negative (or 0) width. + +- QPopupMenu + The height of new columns is now initialized properly when + menu items are shown in multiple columns. + +- QProcess + Close socket connections properly when a + process is created after creating the socket connection. + +- QPSPrinter + Generate PS font names correctly. + +- QPushButton + Fixed a crash caused by deleting the button while the popup + menu is shown. + +- QRichText + Tab stops are now adjusted correctly when printing in high + resolution mode. + Reduced the number of memory allocations when deleting large + blocks of text. + Fixed parsing of hexadecimal HTML entities + Fixed a bug where the font changed after calling setText() + repeatedly. + +- QScriptEngine + Fixed an issue with shaping of Hebrew text, which lead to + layout problems in QTextLayout. + Fixed rendering of Hebrew text with punctuation. + Fixed bugs in Gurmukhi shaping. + +- QScrollView + Fixed the size hint when scrollbars are set to be permanently + on. + Fixed a drawing error seen on certain graphics drivers when a + scroll view spans multiple screens. + Fixed a bug where wheel events' horizontal/vertical status + were not forwarded to viewportWheelEvent(). + Fixed a crash when mouse wheel events were sent to a scroll + view with disabled scroll bars. + +- QSettings + Fixed a bug when comparing keys with common prefixes. + +- QSGIStyle + Fixed the size of QComboBox. + +- QSizeGrip + Fixed a bug that caused the window to move when resizing to + the minimum size using the size grip. + +- QSocketDevice + Improved error reporting when the connection is unexpectedly + closed. + Fixed a bug where the socket would be closed if 0 was passed + as maxlen to readBlock(). + +- QString + Fixed a lock-up in QString::section(). + Let replace() behave as documented when the index is larger + than the length of the string. + +- QTable + Fixed positioning of QComboTableItems that span several rows. + +- QTextCodec + Fixed occasional crash in fromUnicode(). + Fixed Big5 support to comply with the standards. + +- QTextEdit + Fixed bug in undo/redo history when input methods are used. + Fixed a crash caused by inserting text with an input method + during a focus change. + Fixed the behavior of the delete key on the keypad. + Fixed setMaxLogLines() when there are already too many lines. + Fixed crash when clearing a QTextEdit when the IME is active. + Fixed crash when the text edit is deleted while dragging text. + +- QTextLayout + Fixed layout of lines that are too long and do not contain a + possible break point. + +- QTimeEdit + Fixed several issues with stepUp() and stepDown(). + +- QToolButton + Fixed a crash when assigning a tooltip to a tool button which + does not have QMainWindow as an ancestor. + +- QToolTip + Fixed an occasional crash. + +- QTranslator + Fixed a bug when calling messages() before tr() when using + compressed .qm files. + +- QUrlOperator + Fixed a crash when accessing invalid paths on an FTP server + using QFileDialog. + Fixed a bug where the source would be removed if the source + and destination were the same. + +- QVariant + Fixed a memory leak in clear(). + +- QWidget + Fixed excessive flicker when reparenting a widget that has + tool windows. + +- QWorkspace + Fixed flickering when switching between maximized windows. + Fixed a lock-up when modal dialogs were created with + QWorkspace as parent. + Fixed a bug where modeless dialogs with QWorkspace as parent + would be drawn with no title bar. + +- SQL, DB2 driver + Compile fixes. + Fixed a bug where QSqlCursor::insert() would fail to insert + two blob fields at the same time. + +- SQL, MySQL driver + Fixed a crash when using empty database names. + +- SQL, Oracle driver + Fixed truncation of numeric data types to 22 digits. + Fixed UTF-8 support by ensuring that there is enough space to + store the text. + +- SQL, ODBC driver + Fixed problems with sorting and comparing strings larger than + 8192 characters. + +- SQl, PostgreSQL driver + Temporary tables are now only visible for the connection that + created them. + +- SQL, TDS driver + Fixed problems with compiling the plugin with later versions + of the TDS library. + +- SVG support + Fixed support for SVG viewbox. + Added basic support for stroke-dasharray. + + +Platform-Specific Issues +------------------------ + +Windows: + +- ActiveQt + Unrelated types are no longer converted. + The control container is now only reset if the CLSID changes. + Fixed a bug where QAxObject::clear() did not reset the + metaobject when it was cached. + Fixed a memory leak. + Fixed a bug that caused flicker when navigating away from a + page embedding a control. + The VARIANT out-parameters in signals now map to "QVariant &" + and not "const QVariant &". + Signal parameters of type "bool" are marshalled to the bool + slot also when the control sends an integer parameter. + +- Drag & drop + Fixed a bug with sending single-color pixmaps. + Fixed a crash caused by reading a drag object after it has + been deleted (before the drop event). + Dragged pixmaps are now cleaned up before drawn to avoid + problems with broken alpha values and resetting masked pixels. + +- QApplication + Fixed a lockup caused by showing a dialog while resizing a + window. + QWidget::grabKeyboard() now also grabs the menu button. + Fixed a bug where mouse events were sent to the wrong widget + after calling QEventLoop::processEvents() with + ExcludeUserInput. + Windows Server 2003 can now also use the Windows XP style. + Fixed a memory leak in QEventLoop. + +- QColor + Fixed failed initialization of the Qt colors (e.g., Qt::red) when + using the MinGW compiler. + +- QFile + Fixed a bug where a read error was not handled properly. + +- QFileInfo + permission() now uses the correct file name on Windows 9x. + +- QFontDataBase + Added support for scalable fonts. + +- QFontEngine + Fixed a problem with symbol fonts. + Fixed support for user defined characters. + +- QLibrary + Fixed the directory separators. + Fixed some library loading errors. + +- QLocale + The locale() function now returns the correct ISO name instead + of a number. + +- QNPWidget (NPAPI) + Fixed a bug where the widget was not clipped properly by the + browser. + +- QPainter + Fixed a bug where QPainter failed to fill ellipses of size + 2x2. + Fixed a potential lock-up after failed GDI allocations. + +- QPrinter + Rich text tables are now printed correctly when the table + spans pages. + Fixed text printing errors on page 2 and out caused by the + background mode being reset to OPAQUE. + +- QProcess + The directory separators for the current working directory are + now converted properly, so that a UNC path can be used on + Windows. + +- QTranslator + Fixed an issue with isReadable() on NTFS. + +- QWindowsXPStyle + XP style now works when compiled as a plugin. + Fixed menu bar placement. + Fixed a bug in setting the background color of QTabWidget. + Fixed the position of the size grip in large QSizeGrip + widgets. + QGroupBox now uses the correct colors. + +- QWorkspace + Fixed bug where hidden windows would be shown after restoring + from maximized mode. + +- qmake + The Makefile generator now only searches for the latest + version of the Qt library, as opposed to searching all + libraries. + Dependency checking for pre-compiled headers were fixed. + Fixed support for listing .pro files in SUBDIRS in subdir .pro + files. + Fixed support for multiple -L and -I entries in QMAKE_LIBS. + +Mac: + +- Build system + When using Xcode, the optimization level is set to 0 in debug + mode. + Added support for Xcode 2.1 and up. + Fixed copying of target files when DESTDIR is set. + +- Drag & drop + Fixed a crash when deleting the drag object before dropping. + +- QApplication + The default font is now only set if the user has not set one. + Fixed a problem where popup menus would not go away after + releasing the mouse button outside the popup. + Added support for dual axis mouse wheels. + Fixed a bug in tablet identification. + Added support for tablet erasers. + Fixed a deadlock in postEvent() when there was contention for + a wakeup. + Fixed a crash when switching displays at the same time as + QApplication is destroyed. + Stability fixes. + +- QColorDialog + Fixed modality support. + +- QFileDialog + Let the file dialog remember the previous directory. + Fixed keyboard navigation when jumping to entries using the + first letter of a file name. + Fixed a memory leak. + +- QFontDatabase + Fall back to the "Geneva" font, which is guaranteed to be + available, instead of "Helvetica". + +- QFontEngine + Fixed a memory leak. + Fixed rendering of glyphs that modify previous glyphs, + including Indic text. + +- QMacStyle + Title bars are now shown as deactivated when the window is + deactivated. + Fixed a bug where buttons in button groups inside a container + would look like they were pressed. + Fixed a crash caused by drawing onto a non-pixmap background. + Fixed the width of QComboBox. + Improved drawing of size grips. + Improved drawing of sliders, and made QSlider slightly wider + by default. + +- QMenuBar + Fixed a lockup caused by menu items ending with an '&'. + Menu items with disabled popups are now also disabled. + +- QMessageBox + The resize handle is now shown. + +- QPainter + Fixed double transformation of ellipses with a transformed + width or height of 1. + +- QPixmap + Fixed a crash when loading a cursor from an embedded image. + The color depth is now set properly when converting a QBitmap. + +- QPrinter + Fixed a crash when using bitBlt() to copy a QBitmap onto a + printer. + +- QProcess + Fixed support for launching bundles. + +- QPushButton + Icons are now drawn properly. + +- QTextBrowser + Fixed a bug where a text browser popup triggered by a + hyperlink would pop up again when the user clicks inside the + first popup. + +- QToolButton + Fixed a painting problem when the button was pressed. + +- QWidget + Menubar popups no longer steal focus from QTextEdit. + Fixed collapsing of windows with no title bar decorations. + Several window activation bugs have been fixed. + Fixed a bug where modal dialogs would be modal to its own + children. + Fixed tablet support for multiple screens. + Fixed a memory leak. + +X11: + +- Build system + Removed aliasing/redefinitions of the 'which' command to fix + failures in the configure script on certain Unix systems. + Added some missing flags for the yacc tool on 64-bit Linux. + The -fn application command line option, which selects the + default application font, works again. + Fixed copying of target files when DESTDIR is set. + +- Drag and drop + Fixed a crash in the dragging application when the drop target + crashes. + Fixed a bug in finding the widget under the cursor while + dragging. + Some problems were fixed with the internal timestamp in the + drop event. + +- OpenGL + Fixed colors when rendering using glColor() onto an 8 bit + pixmap. + +- QApplication + Support the F11 and F12 keys on Sun keyboards. + +- QCanvasView + Support multiple shared views of a single canvas on multiple X11 + screens. + +- QClipboard + Fixed a rare crash related to cut & paste with the Motif + extension. + +- QFontDatabase + Fixed a bug where QFontInfo would return an empty family and + point size after trying to select a font that was not + installed on the system. + +- QFontEngine + Fixed a bug where scaling italic fonts would sometimes cut + overhangs. + +- QInputContext + Fixed a bug that led to a corrupted display in QLineEdit and + QTextEdit when using Japanese input methods with very long + input selections. + +- QPainter + Fixed a crash when setting a pen on an inactive painter. + +- QPrinter + Fixed printing on Tru64 by removing the -o argument to the lp + command. + +- QScriptEngine + Added support for Khmer fonts. + Fixed shaping of Telugu text. + Fixed a crash when scaling Japanese XLFD fonts by a factor of + 1000. + +Embedded: + +- QApplication + Fixed a memory leak. + +- VNC driver + Fixed a memory leak. + +- QWidget + Fixed a potential crash when reparenting widgets. diff --git a/dist/changes-3.3.6 b/dist/changes-3.3.6 new file mode 100644 index 0000000000..d9464ed2ea --- /dev/null +++ b/dist/changes-3.3.6 @@ -0,0 +1,27 @@ +Qt 3.3.6 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.5, 3.3.4, Qt 3.3.3, Qt 3.3.2, +Qt 3.3.1 and Qt 3.3.0. + +**************************************************************************** +* General * +**************************************************************************** + +Platforms +--------- + +- It is now possible to build Qt 3.3.6 on Intel Macs. A universal + Qt build however requires manual work by 'lipo'-ing a PPC Qt + and an Intel Qt together. + +Compilers +--------- + +- The build key when building Qt with gcc 4.x has changed. This means + you will have to either recompile your plugins or change the configure + script to not reduce the gcc version string to '4'. + + +Translations +------------ + +Various Qt translations contributed by Novell. diff --git a/dist/changes-3.3.7 b/dist/changes-3.3.7 new file mode 100644 index 0000000000..f95bf0c726 --- /dev/null +++ b/dist/changes-3.3.7 @@ -0,0 +1,12 @@ +Qt 3.3.7 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.6, 3.3.5, 3.3.4, Qt 3.3.3, +Qt 3.3.2, Qt 3.3.1 and Qt 3.3.0. + +**************************************************************************** +* General * +**************************************************************************** + +- QImage + Fixed a potential security issue which could arise when transforming + images from untrusted sources. + diff --git a/dist/changes-3.3.8 b/dist/changes-3.3.8 new file mode 100644 index 0000000000..540d63615d --- /dev/null +++ b/dist/changes-3.3.8 @@ -0,0 +1,273 @@ +Qt 3.3.8 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 3.3.7, Qt 3.3.6, Qt 3.3.5, 3.3.4, Qt 3.3.3, +Qt 3.3.2, Qt 3.3.1 and Qt 3.3.0. + +**************************************************************************** +* General * +**************************************************************************** + +Platforms +--------- + +- Oracle driver now builds on HP-UX + +Compilers +--------- + +Linguist +-------- + +- Fixed a bug where the translation area was not changed when the context was changed. + +Assistant +--------- + +- Fixed command line parsing when specifying the docPath option. + +Translations +------------ + +- Added support for Catalan. + +Third party components +---------------------- + +- libpng + + * Security fix (CVE-2006-3334): Buffer overflow allows context-dependent + attackers to cause a denial of service and possibly execute arbitrary + code via unspecified vectors related to chunk error processing. + + * Security fix (CVE-2006-5793): The sPLT chunk handling code + uses a sizeof operator on the wrong data type, which allows + context-dependent attackers to cause a denial of service (crash) + via malformed sPLT chunks that trigger an out-of-bounds read. + + * Security fix: Avoid profile larger than iCCP chunk. + One might crash a decoder by putting a larger profile inside the + iCCP profile than is actually expected. + + * Security fix: NULL pointer dereference. + + * Disabled MMX assembler code for Intel-Mac platforms to work + around a compiler bug. + + * Disabled MMX assembler code for x86_64 platforms. + +- freetype + + * Security fix (CVE-2006-0747): Integer underflow allows remote + attackers to cause a denial of service (crash) via a font file + with an odd number of blue values, which causes the underflow + when decrementing by 2 in a context that assumes an even number + of values. + + * Security fix (CVE-2006-1861): Multiple integer overflows allow + remote attackers to cause a denial of service (crash) and possibly + execute arbitrary code. + + * Security fix (CVE-2006-2661): A null dereference flaw allows + remote attackers to cause a denial of service (crash) via a + specially crafted font file. + + * Fixed memory leak. + + +**************************************************************************** +* Library * +**************************************************************************** + +General Fixes +------------- + +- QAccessible + Fixed a potential crash when a key object is destroyed. + +- QApplication + argc() no longer returns 1 if 0 was passed as argc to the constructor. + +- QDateTime + Made QDateTime::fromString(QString(), Qt::TextDate) work with locales + that have two-digit day names (e.g. Di 16. Jan). + +- QDns + Stability fixes for networks with missing DNS settings. + +- QFileDialog + Ensured that files are not accidentally replaced or lost during drag + and drop operations. + +- QFtp + Fixed a crash when uploading data from a closed QIODevice. + Fixed a potential crash when a FTP session gets deleted in a slot. + +- QGLWidget + renderText() no longer tries to convert the text passed in to + a local 8 bit encoding (via local8Bit()). latin1() is used instead. + +- QGridLayout + Fixed incorrect minimum size with rich text labels in grid layouts. + +- QHttp + Fixed an overflow that could occur when chunked downloading caused + erroneous allocations. + +- QListBox + Fixed a potential crash that could occur if a list box is deleted in + a slot connected to the returnPressed() signal. + +- QListView + Set internal startDragItem pointer to 0 in clear(). This can prevent + crashes during drag and drop operations. + Fixed a documentation error in setSelectable. + Fixed regression in activation of leaf-nodes of type QCheckBoxController. + +- QTable + Fixed a memory leak when F2 is pressed in an empty table. + Ensured that the focus rectangle is painted correctly. + Ensured that editors in cells spanning multiple rows or columns are + closed correctly. + +- QTextEdit + setDocument() no longer crashes when 0 is passed as an argument. + Fixed rendering of HTML tables with a fixed pixel width. + Fixed a potential crash when using undo/redo functionality. + Fixed a regression when searching for space using QTextEdit::find(). + +- SQL plugins + Ensured that mysql_server_end() is only called once in the MySQL plugin. + Fixed fetching of strings larger than 255 characters from a + Sybase server through ODBC. + Ensured that milliseconds are not stripped from ODBC time values. + +- QWidget + Fixed an issue where adjustSize() would incorrectly take the size of + top-level widgets into account. + + +Platform-Specific Issues +------------------------ + +Windows: + +- QAxServer + Fixed a regression in how the server registers type libraries. + +- Visual Studio 2005 + Fixed compilation issue with the x64 compiler. + Fixed the behavior of qmake when executed with "qmake -tp vc". + +- QFont + Fixed crash that would occur when creating a font from an invalid string. + Fixed metric problems. + +- Fixed possible infinite loop when drawing text. + +- Fixed an issue where flags specified by QMAKE_LFLAGS_RELEASE would not be + included in generated Visual Studio project files. + +- Fixed issue that caused wizards to use the wrong class in the QMsDev plugin + +- Fixed an unexpected remote close in QSocket for Windows servers with a high + load. + +- Fixed crash in QFileDialog. + +- Fixed a regression in QWindowsXPStyle where tab widget backgrounds were + incorrectly propagated into child scroll views. + +- Fixed issues related to using SJIS TextCodec with QSettings. + +- Fixed issue where a fixed size widget could change size after changing screen + resolution. + +- Fixed support for the Khmer writing system. + + +Mac OS X: + +- Made the endian preprocessor define dependent on the architecture. This means + that it is possible to build a universal Qt library on one machine. However, + qmake_image_collection.cpp is still dependent upon the machine it was + generated on. + +- QComboBox + Fixed an issue where the popup would stay open after the window had + been minimized. + +- QFont + Fixed support for QFont::setStretch(). + +- QMacStyle + Fixed centering of items in large comboboxes. + Fixed editable comboboxes so that they don't truncate text. + Added support for Panther-style tabs for tabs on the bottom of a tab + widget. + +- QPrinter + Fixed Intel endian bug in printing of pixmaps with a mask/alpha + channel. + Fixed regression where active tool windows would always be disabled + +- QGLContext + Fixed a tearing issue caused by incorrect vertical sync. + +- Fixed a rendering issue with transparent cursors on Intel macs. + +- Fixed a rendering issue with icons in the dock on Intel macs. + +- Fixed a crash when playing back a file that does not exist. + +- Fixed a regression where full keyboard access was not being honored. + +- Fixed a regression preventing static file dialogs from being opened in a + contextMenuEvent() handler. + +- Fixed a regression in navigating nested popup menus. + + +X11: + +- Fixed rendering of Japanese text with XLFD fonts. + +- Fixed rendering of text with stacking diacritics. + +- Rendering fixes for Indic scripts. + +- Fixed problem with applications hanging while querying the clipboard. This is + related to the KDE bug reported at http://bugs.kde.org/show_bug.cgi?id=80072. + +- Fixed a crash that could occur when Qt uses a DirectColor visual. + +- Fixed a rare crash in QPixmap::convertToImage() when XGetImage() fails. + +- Fixed issue where events were not being processed by Qt when using the Qt + Motif Extension. + +- The X input method language status window is no longer shown for popup menus + on Solaris. + +- Fixed incorrect use of colors when painting on the default (TrueColor) screen + when running a Qt application on a multi-screen display where the default + screen uses a TrueColor visual and the secondary screen a PseudoColor visual. + +- Fixed a bug where calling newPage() directly before destroying the QPrinter + caused the last page to be printed twice. + +- Fixed a bug on older Unix systems where incorrect font sizes could get used + when printing in HighResolution mode. + +- Fixed a crash when trying to load huge font files. + +- Ensured that fonts containing a '-' in the family name are correctly loaded. + +- Ensured that the QFont::NoAntialias flag is always honored. + +- Fixed incorrect shaping of some character combinations when writing Bengali. + +- Introduced workaround for some Arabic fonts with broken OpenType tables. + +- Fixed a bug where the wrong braces would get used when using the Hebrew Culmus + fonts. + +- Fixed crash in qtconfig when removing or shifting font substitution families. diff --git a/dist/changes-4.0.1 b/dist/changes-4.0.1 new file mode 100644 index 0000000000..f08aac6e43 --- /dev/null +++ b/dist/changes-4.0.1 @@ -0,0 +1,786 @@ +**************************************************************************** +* Important Notices * +**************************************************************************** + +Meta-Object System +------------------ + +Qt 4.0.0 introduced a change to the way type names outside the current +scope were handled in signals and slots declarations and connections +which differed from the behavior in Qt 3.x. + +Unfortunately, this could lead to signal-slot connections that were +potentially type-unsafe. Therefore, in Qt 4.0.1 type names must be fully +qualified in signal-slot declarations and connections. + +For example, in Qt 4.0.0, it was possible to write: + + connect(socket, SIGNAL(error(SocketError)), ...); + +In Qt 4.0.1, the above connection must be made in the following way: + + connect(socket, SIGNAL(error(QAbstractSocket::SocketError)), ...); + + +Library +------- + +Support for SGI Altix has been added for both gcc and Intel icc. + + +QX11EmbedContainer and QX11EmbedWidget are now exported classes. + +This change only affects developers using Qt/X11 with gcc >= 4.0 and +symbol visibility enabled. Applications built against Qt 4.0.1 that +use these classes cannot be linked against Qt 4.0.0. + + +**************************************************************************** +* Changes * +**************************************************************************** + +Qt Designer +----------- + +Fixed crash in designer when using fonts in custom widgets that +don't have a point size set but use a pixel size instead. + +Fixed initial positions of the form windows in the MDI mode. + +Ensured that the object inspector is updated when a page is added +to a widget stack. + +Ensured that the SDK is installed and the library symbols are +exported. + +Fixed crash when breaking a layout after deleting all widgets within. + +Fixed handling of nested action groups. + +Fixed mouse handling to match user expectations on different +platforms. + +Don't change system setting for double click interval. + +Disabled the richtext editor for the "statusTip" property. + +Improved widget handling, loading and saving for QFrame, QTabWidget, +and Q3GroupBox. + +Added a platform-neutral mechanism for saving key sequences. + +Used Qt's list of supported image formats rather than an incomplete +static list. + +Provided a way for plugins to access to the layout of container +widgets. + +Added support for editable byte arrays. + + +Qt Linguist +----------- + +Made lupdate handle cases where the compiler converts strings using +a different codec to that used by lupdate. + +Fixed bug in lupdate and lrelease's .pro file parser. + +Fixed lupdate's octal sequence handling. + +Fixed duplicate context when two contexts have the same hash value. + + +Qt 3 to 4 Porting Tool +---------------------- + +Fixed connnect statement that did not work with the new stricter moc. + +Fixed incorrect porting of enum values in switch statements. + +Fixed header file name replacements in include directives. + + +Meta Object Compiler (moc) +-------------------------- + +Fixed VC6 compilation of moc generated code with namespaced +superclasses. + +Fixed parsing of functions that throw exceptions. + +Fixed compilation of moc generated code with VC6 when inheriting +from classes inside namespaces. + +Improved the efficiency of signals with default arguments. + + +Qt Assistant +------------ + +Fixed the document list for full text search indexing. + +Fixed case sensitive completion in the find dialog combobox. + +Re-enabled the "add content file" option. + +Removed the "General" tab in the settings dialog. + +Fixed registry key handling and deletion of cache files. + +Made it possible to read titles in the tabs in assistant. + +Updated the QAssistantClient documentation. + +Added the QtAssistantClient headers to the other library headers +for installation. + +Fixed full text search for phrases. + + +General Fixes +------------- + +- Dialogs + Removed hard-coded margin and spacing values from built-in + dialogs. + +- QAbstractItemModel + Fixed crash caused by removing an item with expanded children. + Added some more see also links and defined QModelIndexList. + +- QAbstractItemView + Fixed rendering and selection issues with MultiSelection + mode. + Improved handling of persistent editors. + Improved performance of item insertion. + Improved signal handling and emission. + +- QAbstractSlider + Ensured that no changes occur if the orientation doesn't + change in a call to setOrientation(). + Introduced better keyboard control for sliders. + Fixed sliderPressed() and sliderReleased() signal emissions. + +- QAbstractSocket + Fixed race condition in connectToHost(). + Made bytesAvailable() return the unget buffer size as well + as the size of any pending data. + Made NetworkLayerProtocol non-internal. + +- QAbstractSpinBox + Fixed problems with locale and the "." and "," separators. + Improved handling of extra whitespace at the beginning and + end of user input. + +- QApplication + Made closeAllWindows() respect windows that reject the close + event. + Fixed crash caused by calling QApplication::setStyle() + before a qApp was created. + Improved handling of the last open window for most cases. + Improved event handling. + +- QBezier + Used a new algorithm for offsetting curves. + Improved performance by using a more sophisticated + algorithm and by making QBezier a POD type. + +- QBrush + Improved radial gradient rendering. + +- QColorDialog + Process the return key correctly. + +- QComboBox + Fixed behaviour of setMaxItems() to enable new items to be + inserted within the range allowed. + +- QCommonStyle + Ensured that mnemonics are always shown for buttons. + Fixed position of right corner widget when used on its own. + +- QDateTimeEdit + Improved the range of input allowed for numbers. + +- QDial + Fixed valueChanged() signal emission. + +- QDialog + Fixed Lower QSizeGrip in QDialog instead of raising it. + +- QDir + Fixed relative path handling on Windows. + Reverted empty string matching behavior to match Qt 3's + behavior. + Restored API compatibility with Qt 3. + +- QDirModel + Fixed accidental deletion of directories in read-only mode. + +- QDockWidget + Ensured that the size of a floating dock widget is the same + regardless of how it was floated. + Reintroduced double-clicking behavior to float a dock + widget. + Fixed incorrect moving behavior for floating widgets. + Ensured that dock widgets display a close icon only if they + can be closed. + +- QDockWidgetLayout + See QMainWindow. + +- QDomNodeList + Fixed handling of out-of-range items. + +- QDoubleSpinBox + Improved decimals handling and rounding behavior in + QDoubleSpinBox. + +- QFile + Fixed problems with carriage return and line feed handling + in readLine(). + Ensured that pos() returns the correct value if the file + shrinks. + +- QFileDialog + Fixed incorrect behavior where the dialog would go to the + root directory if the user tried to enter a non-existent + directory. + Fixed sorting by type behavior. + +- QFontDatabase + Fixed loading of special fonts. + Fixed sample characters for Chinese scripts. + +- QFontDialog + Switched the locations of the OK and Cancel buttons. + Made items in the font dialog read-only. + Improved handling of the OK and Cancel buttons when the + dialog is in reverse layout mode. + +- QGifHandler + Reintroduced GIF plugin support. + +- QGridLayout + Improved default size handling. + +- QHeaderView + Fixed section hiding behavior. + Fixed Out of bounds error and improper calculation of last + column. + Improved mouse handling and widget updating. + Fixed crashes caused by moving or removing sections, or by + updating the current section. + Improved signal behavior for resized or removed sections. + +- QHttp + Fixed proxy authentication. + Fixed broken behavior when scheduling many requests to + different hosts. + Fixed socket object ownership issues with setSocket() that + could lead to a crash. + +- QImage + Fixed smooth scaling for image formats other than RGB and + ARGB32. + +- QImageReader + Fixed the default implementation of imageCount() to return a + valid number of images. + +- QInputDialog + Switched the locations of the OK and Cancel buttons. + +- QIODevice + Fixed problems with carriage return and line feed handling + in readLine(). + Made bytesAvailable() return the unget buffer size as well + as the size of any pending data. + Fixed error handling when reading lines with QFile. + Fixed seek() behavior with regard to the unget buffer. + +- QItemDelegate + Improved layout handling, redrawing, signal emission, + and mouse click behavior. + +- QKeySequence + Fixed accidental HTML escaping of ampersands. + +- QLayout + Print out object names in warnings. + +- QLineEdit + Enabled textChanged() signal emission when using input + methods. + Improved return key press handling for users of the + returnPressed() signal. + Fixed context menu action handling. + Fixed editingFinished() signal emission behavior. + Fixed Ctrl-K and Ctrl-U behavior to cut text rather than + just deleting it. + Fixed line edit selection behavior to maintain any current + selection when the widget receives the keyboard focus. + +- QListView + Improved handling of hidden rows. + Fixed rendering when used in reverse mode. + +- QListWidget + Fixed the size policy for laying out items in the list. + Improved sorting performance. + Fixed persistent index handling when sorting. + +- QMainWindow + Fixed problems with multiple connections from QMainWindow + signals to QToolBar slots. + Fixed dock widget handling (adding a widget to all dock + areas) and incorrect dock area splitting behavior that + could lead to crashes in QMainWindow. + Made QMainWindow's status bar have an "Ignored" horizontal + size policy. + +- QMetaObject + Fixed meta objects that reported far too many enums. + Fixed the behavior of sender() to return the correct value + during queued activation. + +- QMetaType + Fixed whitespace handling in template specialization. + Fixed missing qt_metatype_id implementation for <void *>. + Added more support for compilation with QT_NO_DATASTREAM. + +- QMenu + Fixed keyboard navigation when mouse navigation is also + being used. + Fixed menu bar merging behavior. + +- QMenuBar + Fixed Alt key navigation. + +- QObject + Fixed incorrect exception handling. + +- QPaintEngine + Suppressed warnings when drawing "empty" text. + Fixed rendering of Underline, Overline, and StrikeOut for + text drawn using outlines. + +- QPainter + Improved handling of clip regions when restore() is called. + Improved text drawing performance. + +- QPaintDevice + Allowed construction of QImage before QApplication. + +- QPainterPath + Improved performance and rendering accuracy. + +- QPen + Fixed missing detach in setWidth(). + +- QPixmap + Improved drawing speed and mask handling. + +- QPlastiqueStyle + Improved visual feedback for scrollbar page buttons and + slider handle. + Improved Plastique style on non-XRender-enabled displays. + +- QProcess + Fixed endless loop of signal being emitted if model dialog + is used in slot. + Made bytesAvailable() return the unget buffer size as well + as the size of any pending data. + +- QProxyModel + Improved signal handling for propagated signals. + +- QResource + Fixed Latin-1 string handling. + Fixed unloading of resources. + +- QScrollArea + Fixed widget resizing so that widgets that are smaller than + the viewport remain visible. + +- QSettings + Made it possible to store QImage/QPixmap settings. + Fixed race conditions in QSettings with INI files. + Improved handling of non-terminated strings in INI files. + +- QSizeGrip + Made the Qt 3-style constructor public. + +- QSpinBox + Fixed problems with out-of-range integers and doubles. + +- QSqlQueryModel + Fixed integration between QSqlTableModel and MS Access. + Fixed signal emissions for tables with only one row. + +- QSqlTableModel + Fixed problems with multiple record insertion. + +- QStatusBar + Fixed status bar height without size grip. + +- QTabBar + Fixed handling of the current page index when adding the + first page to QTabWidget. + Improved tab bar icon handling to enable icons to be updated + without redrawing the entire tab bar. + +- QTableView + Improved text cursor handling and support for keyboard + modifiers. + Fixed problems with disappearing headers. + Disallowed selection of hidden rows and columns. + Fixed crashes involving empty models and tables with headers + but no rows or columns. + +- QTableWidget + Improved sorting and signal emission behavior. + +- QTabWidget + Fixed handling of the current widget to keep the tab bar + updated. + +- QTextBrowser + Removed temporary visible text selection when activating + anchors with Shift-click. + +- QTextCursor + Fixed selection behavior for words at the beginning of lines. + Fixed incorrect use of character formats when calling + insertFragment(). + Fixed incorrect text insertion where line feeds and carriage + returns would not be transformed into Unicode block + separators. + +- QTextDocument + Added support for page breaking. + Added support for relative font sizes. + Added support for <hr /> tags. + Fixed clipboard handling and drag and drop of text frames. + Fixed handling of closing HTML </center> tags. + Fixed crash (failing assertion) on import of nested empty + HTML tables. + Fixed data corruption in fromPlainText(). + Corrected the handling of image tags inside anchors. + Fixed introduction of empty spaces or lines before and after + tables. + Fixed misrendering of some nested HTML tables with variable + sized columns. + Fixed crash in table drawing due to out-of-bounds access. + Added support for the pageCountChanged() signal. + Improved performance and size of PostScript images when + printing high resolution or scaled images. + +- QTextEdit + Improved layout and selection handling. + Added configuration support for non-blinking cursors. + Improved keyboard handling. + Improved text insertion handling. + +- QTextFormat + Added support for horizontal rules. + Improved font handling. + +- QTextLayout + Allow line breaking at tabs. + Improved reporting of line widths for lines ending with a + QChar::LineSeparator. + Fixed reporting of the minimum width for layouts that have + NoWrap/ManualWrap as their wrap policy. + +- QTextStream + Fixed locking behavior when reading from stdin. + Fixed seek() behavior. + Improved Latin-1 string handling. + +- QTextTable + Improved performance and selection handling. + +- QToolBar + Fixed toolbar resizing behavior to handle icon size changes. + +- QTreeView + Improved handling of hidden rows, columns, and child items. + Fixed repainting issues with newly inserted child items + and selections. + Improved scrolling behavior. + Fixed crashes involving column handling and empty views. + Fixed sorting indicator behavior. + +- QTreeWidget + Improved item insertion performance. + Fixed clone() and operator=() for QTreeWidgetItem. + Fixed crash when removing or deleting items with children. + Improved sorting performance. + Fixed sorting indicator behavior. + Fixed persistent index handling when sorting. + +- QUrl + Improved the performance of removeDots(). + +- QWidget + Fixed problems with adding an action multiple times. + +- QXmlInputSource + Improved heuristics for determining character encodings. + +- Q3FileDialog + Fixed file selection handling. + + +Platform-Specific Issues +------------------------ + +Windows: + +- QApplication + Fixed Block modeless elements of client when ActiveX opens a + modal dialog + Enabled tablet support. + Improved event handling for popup widgets. + +- QAxWidget + Support a document site only if the COM object allows proper + initialization with a storage. + +- QFileDialog + Updated to use the latest native Windows dialogs. + +- QProcess + Fixed behavior of forwarded read channels. + +- QSettings + Fixed behavior of childKeys() with respect to the default + key. + +- QWindowsStyle + Fixed menu item size. + Improved drawing of default push buttons. + Fixed rendering of sliders to correctly differentiate + between those in enabled and disabled states. + +- QWindowsXPStyle + Fixed menu frame rendering. + Reduced the space allocate to menu items. + + +X11: + +- QApplication + Fixed incorrect initialization of screen and resolution. + Improved mouse button handling. + Fixed handling of withdrawn windows. + +- QBitmap + Fixed bitmap brush textures to ensure that they use the + correct color with XRender. + +- QFont + Fixed handle() to return useful values. + +- QFontDatabase + Fixed fonts for some writing systems not being loaded on X11 + +- QPaintEngine + Fixed multi-screen support. + Improved performance and rendering accuracy. + Fixed dot-dash patterns when drawing with large pen widths. + Improved text rendering on exported displays. + +- QWidget + Implemented support for window opacity. + Added support for widgets with 32 bit sizes. + Improved support for different active and inactive background + brushes. + Fixed window icons on X servers that have truecolor and + pseudocolor visuals with different depths. + Fixed text rendering on exported displays. + +- QXIMInputContext + Fixed crash in XIM code with newer x.org libraries. + Fixed support for switching input method styles. + +- QX11Embed + Exported QX11Embed (see the Important Changes section + above). + Improved handling of non-XEmbed clients. + Improved geometry and focus handling. + + +UNIX: + +- QPageSetupDialog + Reduced the size of the dialog. + +- QPrintDialog + Fixed initialization of color and grayscale radio buttons. + +- QProcess + Fixed incorrect notification of process termination on + Linux kernels up to and including the 2.4 series. + Made QProcess emit an error() when failing to launch a + program. + + +Mac OS X: + +- QApplication + Fixed widgetAt() to handle transparent widgets. + Handle keyboard events in the active window if no focus + window is available. + Changed wheel mouse scrolling speed to match that of + other applications. + +- QComboBox + Fixed rendering of combobox frames. + +- QDnD + Fixed URL handling. + +- QClipboard + Fixed Junk at end of pasted text on Qt/Mac. + +- QCursor + Fixed incorrect pixmap handling. + +- QFileDialog + Fixed sheet modality issues to prevent the dialog from being + hidden behind other windows. + +- QFont + Default to using the Geneva font. + Enable kerning and fix Arabic text handling. + +- QLibraryInfo + Fixed location of qt.conf in Mac OS X bundles. + +- QMacStyle + Improvements to rendering accuracy of comboboxes, tab bars, + workspace windows, tool buttons, and push buttons. + Fixed incorrect drawing of scrollbars with "inverted + appearance". + Fixed font-related crash for applications configured to + use the standard desktop settings. + +- QMenu + Improved menu bar handling on navigation dialogs. + +- QMenuBar + Improved menu bar hiding/wrapping behavior. + +- QPaintDevice + Removed byte order assumptions. + +- QPaintEngine + Improved brush handling, clipping, masking, and tiling + operations. + +- QPixmap + Improvements to pixmap copying and conversion, masking, and + alpha channel handling. + Removed byte order assumptions. + +- QPrintEngine + Made color printing the default behavior. + +- QSettings + Sync the application's setting on construction of a + QSettings object. + +- QSysInfo + Included enum values for Mac OS X codenames in the + MacVersion version enum. + +- QWidget + Improved mouse event handling. + Improved interoperability between modal widgets. + + +Tools +----- + +- uic3 + Fixed class name handling when used in "-convert" mode. + Fixed vertical space issues with .ui files converted from + Qt 3 to Qt 4. + Improved support for Qt3Support widgets. + Improved support for deprecated enums. + Added a generator for dependencies in Qt 3 .ui files. + +- rcc + Added better error reporting. + +- uic + Added code generation for tab attributes. + Fixed text codec handling. + Used UTF-8 as the default enconding in .ui files. + Fixed code generation for QWizard. + + +Documentation +------------- + +Porting: + +Removed QMovie from the list of implicitly shared classes that were +previously explicitly shared. + +Added .ui porting document to the 4.0.1 documentation. + +Added sections about QHBox, QVBox, and QGrid to the porting guide. + +Added QImageIO and QMovie to the porting guide. + +Added QRegExp and some QDir functions to the porting guide. + +Added QObject::objectTrees() to the porting guide. + +Added QPopupMenu to the porting guide. + + +General: + +Fix documentation of amortized container behavior. + +Added information about using specific compilers to build Qt. + +Removed QtMotif documentation because it is now part of Qt Solutions. + +Clarify parent-child relationship within QThreads. + +Documented potential file name clashes when using precompiled headers. + +Added a Windows XP gallery. + +Added pages to contain lists of classes for each Commercial Edition. + +Reintroduced the QAssistantClient documentation as part of the +QtAssistant module. + +Added missing Qt Designer API documentation. + +- QApplication + Documented correct use of QApplication::setStyle(). + +- QComboBox + Made removeItem() and setRootModelIndex() visible in the + documentation. + +- QMetaObject + Added missing documentation for QGenericArgument and + QGenericReturnArgument, making them visible in the + documentation, but not recommended for casual use. + +- QPainter + Make QPainter::setRedirected() visible and fix its + description. + +- QSqlDatabase + Document what happens when passing an existing connection + name to addDatabase(). diff --git a/dist/changes-4.1.0 b/dist/changes-4.1.0 new file mode 100644 index 0000000000..396a5b7dc4 --- /dev/null +++ b/dist/changes-4.1.0 @@ -0,0 +1,573 @@ +Qt 4.1 introduces many new features as well as many improvements and +bugfixes over the 4.0.x series. For more details, see the online +documentation which is included in this distribution. The +documentation is also available at http://doc.trolltech.com/ + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* General * +**************************************************************************** + +Qt library +---------- + +- Introduced widget backing store support, allowing semi-transparent + (alpha-blended) child widgets and faster widget painting, as well + as solving long-lasting issues with non-rectangular widgets. + +- Integrated support for rendering Scalable Vector Graphics (SVG) + drawings and animations (QtSvg module). + +- A Portable Document Format (PDF) backend for Qt's printing system. + +- A unit testing framework for Qt applications and libraries. + +- Modules for extending Qt Designer and dynamic user interface + building. + +- Additional features for developers using OpenGL, such as support + for pixel and sample buffers. + +- A flexible syntax highlighting class based on the Scribe rich text + framework. + +- Support for network proxy servers using the SOCKS5 protocol. + +- Support for OLE verbs and MIME data handling in ActiveQt. + +- Support for universal binaries on Mac OS X. + +Qt Designer +----------- + +- Added support for editing menu bars and tool bars. + +- Added support for adding comments to string properties. + +- Added new static QtUiTools library with improved + QUiLoader API for loading designer forms at run-time. + +- Added support for namespaces in uic generated code. + +- Added support for dock widgets in main windows. + +- Added support for editing table, tree and list widgets. + +- Improved palette editing and resource support. + +QTestLib +-------- + +- Added QTestLib, the Qt Unit Testing Library. See the "QTestLib" + chapter in the Qt documentation for more information. + +- Users of older versions of QtTestLib can use the updater utility in + tools/qtestlib/updater to convert existing autotests to work with + QTestLib. + +Boost +----- + +Added boost compatible syntax for declaring signals and slots. If you +define the macro QT_NO_KEYWORDS, "Q_SIGNALS" and "Q_SLOTS" are +recognized as keywords instead of the default "signals" and "slots". +Added a new keyword to qmake to enable this macro: CONFIG += no_keywords. + +ActiveQt +-------- + +QAxServer now supports mime-type handling - a ActiveX control can be +registered to handle a certain file extension and mime-type, in which +case QAxBindable::load and QAxBindable::save can be reimplemented to +serialize the object. + +Build system +------------ + +Added support for linking static plugins into the application. + +Qt 3 to 4 Porting Tool +---------------------- + +Q(V|H)BoxLayout and QGridLayout usage is now ported to use +Q3(V|H)BoxLayout/Q3GridLayout, to retain the margin/spacing behavior +as in Qt 3. + +Meta Object Compiler (moc) +-------------------------- + +- Added support for const signals. + +Qt Assistant +------------ + +- Added -docPath command line option for easy setting of the + document root path. + +QMake +----- + +- Added support for new FORMS3 profile variable to make it possible + to have Qt Designer forms from Qt 3 and Qt 4 in the same project. + +- Added support for precompiled headers on win32-g++ (MinGW) + +Compilers +--------- + +Added support for Solaris 10 on AMD64 with the compiler provided by +Sun. + + +**************************************************************************** +* Library * +**************************************************************************** + + +New classes +----------- + +- QTreeWidgetItemIterator + Added iterator to help iterating over items in a QTreeWidget. + +- QStringFilterModel + Allows you to provide a subset of a model to a view based on a + regular expression. + +- QSyntaxHighlighter + The QSyntaxHighlighter class allows you to define syntax + highlighting rules. + +- QAbstractFileEngine + A base class for implementing your own file and directory + handling back-end for QFile, QFileInfo and QDir. + +- QAbstractFileEngineHandler + For registering a QAbstractFileEngine subclass with Qt. + +- QFSFileEngine + The default file engine for regular file and directory access + in Qt. + +- Q3(H|V)BoxLayout and Q3GridLayout + Layout classes provided for compatibility that behave the same + as the Qt 4 classes but use a zero margin/spacing by default, + just like in Qt 3. + +- Added qFromLittleEndian, qToLittleEndian, qFromBigEndian and + qToBigEndian endian helper conversion functions (qendian.h) + +- Q_EXPORT_PLUGIN2 macro + Obsoletes Q_EXPORT_PLUGIN and allows static linking of + plugins. + +- Q3ComboBox + For enhanced backwards compatibility with Qt 3. + +- QGLPbuffer + For creating and managing OpenGL pixel buffers. + +- QNetworkProxy + For setting up transparent (SOCKS5) networking proxying. + +- QDirectPainter (Qtopia Core only) + Provides direct access to video framebuffer hardware. + + +General improvements +-------------------- + +- QByteArray + Added toLong() and + +- QColorDialog + Fix shortcut and focus for "Alpha channel" spinbox. + +- QLinkedList + Added conversion methods to convert from/to STL lists. + +- QMap/QHash + Fixed operator>>() to read back multiple values associated + to a same key correctly. + Added constFind(), for finding an item without causing a + detach. + +- QMap/QHash + Const-correctness in const_iterator's operator--(int). + +- QMainWindow + The saveState() and restoreState() functions no longer + fallback to using the windowTitle property when the objectName + property is not set on a QToolBar or QDockWidget; this + behavior was undocumented and has been removed. + +- QToolBar + Added Qt 3 compatibility signal visibilityChanged(bool). + +- QMetaType + Class is now fully reentrant. + Metatypes can be registered or queried from multiple threads. + Added qMetaTypeId<T>(), which returns the meta type ID of T at + compile time. + +- QMetaProperty + Added isResettable(). + +- QSql + Oracle plugin adds support for authentication using external + credentials. + Added isValid() to QSqlError. + +- QThread + Added setPriority() and priority(), for querying and setting + the priority of a thread. + +- QTreeWidgetItem/QTreeWidget + Added new constructors and addChildren(), insertChildren(), + takeChildren(), insertTopLevelItems(), addTopLevelItems to + speed up insertion of multiple items. + +- QTextDocument + Added the class QTextBlockUserData and added the possibility + of storing a state or custom user data in a QTextBlock + Added useDesignMetrics property, to enable the use of design + metrics for all fonts in a QTextDocument. + +- QTextFormat + Added support for setting the font pixel size. + Added UserObject to QTextFormat::ObjectTypes enum. + +- QMetaType + The value of QMetaTypeId<T>::Defined indicates whether a given + type T is supported by QMetaType. + +- QAbstractItemView + Added setIndexWidget() and indexWidget() which makes it + possible to set a widget at a given index. + + Added a QAbstractItemView::ContiguousSelection mode. + Added scrollToTop() and scrollToBottom(). + Changed signals pressed(), clicked() and doubleClicked() to + only emit when the index is valid. + +- QAbstractItemModel + Added a SizeHintRole that can be set for each item. The item + delegate will now check for this value before computing the + size hint based on other item data. + + Add QModelIndex::operator<() so we are able to use them in + QMap and other containers. + + Added qHash function for QModelIndex. + +- QTableWidget + Added cellWidget() and setCellWidget() which makes it possible + to set a widget at a specified cell. + + Added setCurrentCell(). + + Added QTableWidgetItem copy constructors. + + +- QTreeWidget + Added setItemWidget() and itemWidget() which makes it possible + to set a widget on an item. + +- QListWidget + Added setItemWidget() and itemWidget() which makes it possible + to set a widget on an item. + + Added QListWidgetItem copy constructors. + +- QMutableMapIterator + Added value() overloads to Java-style iterators that return + non-const references. + +- QTextTable + Added mergeCells() and splitCells() to be able to set the row + or column span on a table cell. + +- QStyle + Added standardIcon() which returns a default icon for standard + operations. + Added State_ReadOnly, which is enabled for read-only widgets. + + Renamed QStyleOption::init() to initFrom(). + - QGroupBox is now completely stylable (QStyleOptionGroupBox). + - QToolBar is now stylable according to its position in the + toolbar dock area (QStyleOptionToolBar). + - Indeterminate (busy) progress bars are now animated properly + in all styles. + - By popular request, the default toolbar icon size + (PM_ToolBarIconSize) in Windows and Plastique styles has + been changed to 24 x 24 (instead of 16 x 16 in Windows and + 32 x 32 in Plastique). + + Added PM_DockWidgetTitleMargin as pixel metric. + +- QHash + Make it possible to use QHash with a type that has no default + constructor. + +- QTableView + Made QTableView::setShowGrid() a slot, like in Qt 3. + Added setRowHeight() and setColumnWidth(). + +- QTableWidgetSelectionRange + Added rowCount() and columnCount() convenience functions. + +- QSettings + Added support for custom formats in QSettings. + +- QTextStream + Added status(), setStatus() and resetStatus() for improved + error handling. + Added read(qint64 maxlen), for reading parts of a text stream + into a QString. + +- QTextCursor + Added support for BlockUnderCursor selection type. + +- QHeaderView + Added defaultSectionSize property which tells the default size + of the header sections before resizing. + +- QScrollBar + Added context menu to the scrollbar with default navigation + options. + +- QScrollArea + Added ensureVisible(), which can scroll the scrollarea to make + sure a specific point is visible. + +- QDateTime + Added addMSecs(), which adds a number of milliseconds to the QDateTime. + +- QDateTimeEdit + Added support for more date/time formats. + Now allows multiple sections of the same type. + +- QButtonGroup + Added handling of buttons with IDs to the buttongroup like in + Qt 3. + +- QIODevice + Added peek() for peeking data from a device. + +- QTextEdit + Added property tabStopWidth which sets the tab stop width in + pixels. + append(const QString &) is now a public slot. + Added support for inserting Unicode control characters through + the context menu. + Added property acceptRichText, for whether or not the text + edit accepts rich text insertions by the user. + Added overwriteMode property. + +- QDataStream + Added skipRawData(). + Added support for QRegExp. + +- QProgressBar + Added support for vertical progress bars. + +- QImageIOHandler + The name() function has been obsoleted; use format() instead. + Added QImageIOHandler::Animation, for determining if the image + format supports animation. + Added QImageIOHandler::BackgroundColor, for setting the + background color for the image loader. + +- QImageReader + Added setBackgroundColor() and backgroundColor(), for setting + the background color of an image before it is read. + Added supportsAnimation(), for checking if the image format + supports animation. + +- QImageWriter + Added support for saving image text. + +- QLocale + Added dateFormat()/timeFormat() to query the date/time format + for the current locale. + Added toString() overloads for localized QTime and QDate + output. + Added decimalPoint(), groupSeparator(), percent(), + zeroDigit(), negativeSign() and exponential(), which provide a + means to generate custom number formatting. + +- QHostInfo + Added support for reverse name lookups. + +- QHostAddress + Added a QString assignment operator + Added convenience functions for initializing from a native + sockaddr structure. + Added support for the IPv6 scope-id. + +- QPrinter + Added property "embedFonts" for embedding fonts into the + target document. + Added support for printing to PDF. + Added support for custom print and paint engines + +- QPrintEngine + Added PPK_SuppressSystemPrintStatus, for suppressing the + printer progress dialog on Mac OS X. + +- QKeySequence + Added fromString() and toString() for initializing a key + sequence from, and exporting a key sequence to a QString. + +- QUrl + Added the port(int) function, which provides a default value + for the port if the URL does not define a port. + Support for decoding Punycode encoded hostnames in URLs. + Made the parser more tolerant for mistakes, and added a + ParsingMode flag for selecting strict or tolerant parsing. + Added support for the NAMEPREP standard in our i18n domain + name support. + +- QDir + Added the filter QDir::NoDotAndDotDot, for the + special directories "." and "..". + Added the filter QDir::AllEntries, for all entries + in a directory, including symlinks. + + +- QAbstractSocket + Added slots connectToHostImplementation() and + disconnectFromHostImplementation() to provide polymorphic + behavior for connectToHost() and disconnectFromHost(). + +- QMenuBar + Added setActiveAction(), which makes the provided action + active. + +- QProxyModel + This class has been obsoleted (see QAbstractProxyModel) + +- QWidget + Now supports three modes of modality: NonModal, WindowModal + and ApplicationModal. + Added Qt::WindowModality, obsoleted WA_ShowModal and + WA_GroupLeader. + Added Qt::WA_OpaquePaintEvent widget attribute, obsoleting + Qt::WA_NoBackground. + Added boolean autoFillBackground property. + Child widgets now always inherit the contents of their parent. + +- QPalette + Added QPalette::Window (obsoletes Background) and + QPalette::WindowText (obsoletes Foreground). + +- QHttpResponseHeader + Added two constructors and the function setStatusLine() for + generating a response header. + +- QBitArray + Added count(bool), for counting on and off-bits in a bit + array. + +- QVariant + Added support for QRegExp + +- QRegExpValidator + Added the property "regExp". + +- QTabBar + Added the property "iconSize", for setting the size of the + icons on the tabs. + +- QLineEdit + Added support for inserting Unicode control characters through + the context menu. + +- QString + Added toLong() and toULong(). + Support for std::string conversions with embedded \0 + characters. + +- QRegion + Added translate(), like QRect::translated(). + +- QProcess + Added systemEnvironment(), which returns the environment + variables of the calling process. + Added exitStatus(), and added a new finished() signal which + takes the exit status as a parameter. + +- QComboBox + Made setCurrentIndex() a slot. + +- QFontDataBase + Added styleString(), for retrieving the style string from a + QFontInfo. + Added support for Myanmar fonts. + +- QFontMetrics + Added xHeight(), which returns the 'X' height of the font. + +- QCoreApplication + Added arguments(), which returns a list of command line + arguments as a QStringList. + +- QTcpSocket + Added support for SOCKS5 via setProxy(). + +- QUdpSocket + Added property "bindMode", for binding several sockets to the + same address and port. + +- QPen + Added support for custom dash pattern styles and miter limits. + Added support for QDebug. + +- QDebug + Added support for QVector and QPair output. + +- QStringListModel + Added support for sorting. + +- QOpenGLPaintEngine + Gradients in the OpenGL paint engine are now drawn using + fragment programs, if the extension is available. Lots of + fixes, speedups and tweaks. + + +Platform-Specific changes +------------------------- + +Windows: + +- Painting + Added support for ClearType text rendering. + +- File Engine + Added support for long filenames/paths. + +X11: + +- QWidget + Added support for freedesktop.org startup notifications. + +Mac OS X: + +- Added support for universal binaries +- Improved support for the VoiceOver accessibility tool in Mac OS X 10.4 + and later + + +3rd-party libraries +------------------- + +- zlib + Upgraded to zlib 1.2.3. + +- FreeType + Upgraded to FreeType 2.1.10. + +- SQLite + Upgraded to SQLite 3.2.7 diff --git a/dist/changes-4.1.0-rc1 b/dist/changes-4.1.0-rc1 new file mode 100644 index 0000000000..fac0ce0ef4 --- /dev/null +++ b/dist/changes-4.1.0-rc1 @@ -0,0 +1,554 @@ +Qt 4.1 introduces many new features as well as many improvements and +bugfixes over the 4.0.x series. For more details, see the online +documentation which is included in this distribution. The +documentation is also available at http://doc.trolltech.com/ + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* General * +**************************************************************************** + +Qt library +---------- + + - Integrated support for rendering Scalable Vector Graphics (SVG) + drawings and animations (QtSvg module). + + - A Portable Document Format (PDF) backend for Qt's printing system. + + - A unit testing framework for Qt applications and libraries. + + - Modules for extending Qt Designer and dynamic user interface + building. + + - New proxy models to enable view-specific sorting and filtering of + data displayed using item views. + + - Additional features for developers using OpenGL, such as support + for pixel and sample buffers. + + - A flexible syntax highlighting class based on the Scribe rich text + framework. + + - Support for network proxy servers using the SOCKS5 protocol. + + - Support for OLE verbs and MIME data handling in ActiveQt. + +Qt Designer +----------- + +- Added support for editing menu bars and tool bars. + +- Added support for adding comments to string properties. + +- Added new static QtForm library with improved + QForm::Loader API for loading designer forms at run-time. + +- Added support for namespaces in uic generated code. + +- Added support for dock widgets in main windows. + +- Added support for editing table, tree and list widgets. + +- Improved palette editing and resource support. + +QTestLib +-------- + +- Added QTestLib, the Qt Unit Testing Library. See the "QTestLib" chapter + in the Qt documentation for more information. + +- Users of older versions of QtTestLib can use the updater utility in + tools/qtestlib/updater to convert existing autotests to work with QTestLib. + +Boost +----- + +Added boost compatible syntax for declaring signals and slots. If you +define the macro QT_NO_KEYWORDS "Q_SIGNALS" and "Q_SLOTS" are +recognized as keywords instead of the default "signals" and "slots". + +ActiveQt +-------- + +QAxServer now supports mime-type handling - a ActiveX control can be +registered to handle a certain file extension and mime-type, in which case +QAxBindable::load and QAxBindable::save can be reimplemented to serialize +the object. + +Build system +------------ + +Added support for linking static plugins into the application. + +Qt 3 to 4 Porting Tool +---------------------- + +Q(V|H)BoxLayout and QGridLayout usage is now ported to use +Q3(V|H)BoxLayout/Q3GridLayout, to retain the margin/spacing +behavior as in Qt 3. + +Meta Object Compiler (moc) +-------------------------- + +- Added support for const signals. + +Qt Assistant +------------ + +- Added -docPath command line option for easy setting of the + document root path. + +QMake +----- + +- Added support for new FORMS3 profile variable to make it possible + to have Qt Designer forms from Qt 3 and Qt 4 in the same project. + +- Added support for precompiled headers on win32-g++ (MinGW) + +Compilers +--------- + +Added support for Solaris 10 on AMD64 with the compiler provided by +Sun. + + +**************************************************************************** +* Library * +**************************************************************************** + + +New classes +----------- + +- QTreeWidgetItemIterator + Added iterator to help iterating over items in a QTreeWidget. + +- QSortingProxyModel + The QSortingProxyModel can contain another model and handles + the sorting of it. + +- QFilteringProxyModel + Allows you to provide a subset of a model to a view. + +- QStringFilterModel + Allows you to provide a subset of a model to a view based on a + regular expression. + +- QSyntaxHighlighter + The QSyntaxHighlighter class allows you to define syntax + highlighting rules. + +- QAbstractFileEngine + A base class for implementing your own file and directory handling + back-end for QFile, QFileInfo and QDir. + +- QAbstractFileEngineHandler + For registering a QAbstractFileEngine subclass with Qt. + +- QFSFileEngine + The default file engine for regular file and directory access in Qt. + +- Q3(H|V)BoxLayout and Q3GridLayout + Layout classes provided for compatibility that behave the same + as the Qt 4 classes but use a zero margin/spacing by default, + just like in Qt 3. + +- Added qFromLittleEndian, qToLittleEndian, qFromBigEndian and + qToBigEndian endian helper conversion functions (qendian.h) + +- Q_EXPORT_PLUGIN2 macro + Obsoletes Q_EXPORT_PLUGIN and allows static linking of + plugins. + +- Q3ComboBox + For enhanced backwards compatibility with Qt 3. + +- QGLPbuffer + For creating and managing OpenGL pixel buffers. + +- QNetworkProxy + For setting up transparent (SOCKS5) networking proxying. + +- QDirectPainter (Qtopia Core only) + Provides direct access to video framebuffer hardware. + + +General improvements +-------------------- + +- QByteArray + Added toLong() and toULong(). + +- QFileDialog + Fix shortcut and focus for "Alpha channel" spinbox. + +- QLinkedList + Added conversion methods to convert from/to STL lists. + +- QMap/QHash + Fixed operator>>() to read back multiple values associated + to a same key correctly. + Added constFind(), for finding an item without causing a detach. + +- QMap/QHash + Const-correctness in const_iterator's operator--(int). + +- QMainWindow + The saveState() and restoreState() functions no longer + fallback to using the windowTitle property when the objectName + property is not set on a QToolBar or QDockWidget; this + behavior was undocumented and has been removed. + +- QToolBar + Added Qt 3 compatibility signal visibilityChanged(bool). + +- QMetaType + Class is now fully reentrant. + Metatypes can be registered or queried from multiple threads. + Added qMetaTypeId<T>(), which returns the meta type ID of T at compile time. + +- QMetaProperty + Added isResettable(). + +- QSql + Oracle plugin adds support for authentication using external credentials. + Added isValid() to QSqlError. + +- QThread + Added setPriority() and priority(), for querying and setting + the priority of a thread. + +- QTreeWidgetItem/QTreeWidget + Added new constructors and addChildren(), insertChildren(), + takeChildren(), insertTopLevelItems(), addTopLevelItems to + speed up insertion of multiple items. + +- QTextDocument + Added the class QTextBlockUserData and added the possibility + of storing a state or custom user data in a QTextBlock + Added useDesignMetrics property, to enable the use of design metrics for + all fonts in a QTextDocument. + +- QTextFormat + Added support for setting the font pixel size. + Added UserObject to QTextFormat::ObjectTypes enum. + +- QMetaType + The value of QMetaTypeId<T>::Defined indicates whether a given type T is + supported by QMetaType. + +- QAbstractItemView + Added setIndexWidget() and indexWidget() which makes it + possible to set a widget at a given index. + + Added a QAbstractItemView::ContiguousSelection mode. + Added scrollToTop() and scrollToBottom(). + +- QAbstractItemModel + Added a SizeHintRole that can be set for each item. The item + delegate will now check for this value before computing the + size hint based on other item data. + + Add QModelIndex::operator<() so we are able to use them in + QMap and other containers. + + Added qHash function for QModelIndex. + +- QTableWidget + Added cellWidget() and setCellWidget() which makes it possible + to set a widget at a specified cell. + + Added setCurrentCell(). + + Added QTableWidgetItem copy constructors. + + +- QTreeWidget + Added setItemWidget() and itemWidget() which makes it possible + to set a widget on an item. + +- QListWidget + Added setItemWidget() and itemWidget() which makes it possible + to set a widget on an item. + + Added QListWidgetItem copy constructors. + +- QMutableMapIterator + Added value() overloads to Java-style iterators that return + non-const references. + +- QTextTable + Added mergeCells() and splitCells() to be able to set the row + or column span on a table cell. + +- QStyle + Added standardIcon() which returns a default icon for standard + operations. + Added State_ReadOnly, which is enabled for read-only widgets. + + Renamed QStyleOption::init() to initFrom(). + - QGroupBox is now completely stylable (QStyleOptionGroupBox) + - Indeterminate (busy) progress bars are now animated properly + in all styles. + + Added PM_DockWidgetTitleMargin as pixel metric. + +- QHash + Make it possible to use QHash with a type that has no default + constructor. + +- QTableView + Made QTableView::setShowGrid() a slot, like in Qt 3. + Added setRowHeight() and setColumnWidth(). + +- QTableWidgetSelectionRange + Added rowCount() and columnCount() convenience functions. + +- QSettings + Added support for custom formats in QSettings. + +- QTextStream + Added status(), setStatus() and resetStatus() for improved error handling. + Added read(qint64 maxlen), for reading parts of a text stream into a + QString. + +- QTextCursor + Added support for BlockUnderCursor selection type. + +- QHeaderView + Added defaultSectionSize property which tells the default size + of the header sections before resizing. + +- QScrollBar + Added context menu to the scrollbar with default navigation + options. + +- QScrollArea + Added ensureVisible(), which can scroll the scrollarea to make sure a + specific point is visible. + +- QDateTime + Added addMSecs(), which adds a number of milliseconds to the QDateTime. + +- QDateTimeEdit + Added support for more date/time formats. + Now allows multiple sections of the same type. + +- QButtonGroup + Added handling of buttons with IDs to the buttongroup like in + Qt 3. + +- QIODevice + Added peek() for peeking data from a device. + +- QTextEdit + Added property tabStopWidth which sets the tab stop width in + pixels. + append(const QString &) is now a public slot. + Added support for inserting Unicode control characters through the + context menu. + Added property acceptRichText, for whether or not the text edit + accepts rich text insertions by the user. + Added overwriteMode property. + +- QDataStream + Added skipRawData(). + Added support for QRegExp. + +- QProgressBar + Added support for vertical progress bars. + +- QImageIOHandler + The name() function has been obsoleted; use format() instead. + Added QImageIOHandler::Animation, for determining if the image format + supports animation. + Added QImageIOHandler::BackgroundColor, for setting the background + color for the image loader. + +- QImageReader + Added setBackgroundColor() and backgroundColor(), for setting the + background color of an image before it is read. + Added supportsAnimation(), for checking if the image format supports + animation. + +- QImageWriter + Added support for saving image text. + +- QLocale + Added dateFormat()/timeFormat() to query the date/time format for the + current locale. + Added toString() overloads for localized QTime and QDate output. + Added decimalPoint(), groupSeparator(), percent(), zeroDigit(), + negativeSign() and exponential(), which provide a means to generate + custom number formatting. + +- QHostInfo + Added support for reverse name lookups. + +- QHostAddress + Added a QString assignment operator + Added convenience functions for initializing from a native sockaddr + structure. + Added support for the IPv6 scope-id. + +- QPrinter + Added property "embedFonts" for embedding fonts into the target + document. + Added support for printing to PDF. + Added support for custom print and paint engines + +- QPrintEngine + Added PPK_SuppressSystemPrintStatus, for suppressing the printer + progress dialog on Mac OS X. + +- QKeySequence + Added fromString() and toString() for initializing a key sequence + from, and exporting a key sequence to a QString. + +- QUrl + Added the port(int) function, which provides a default value for the + port if the URL does not define a port. + Support for decoding Punycode encoded hostnames in URLs. + Made the parser more tolerant for mistakes, and added a ParsingMode + flag for selecting strict or tolerant parsing. + Added support for the NAMEPREP standard in our i18n domain name support. + +- QDir + Added the filter QDir::NoDotAndDotDot, for the + special directories "." and "..". + Added the filter QDir::AllEntries, for all entries + in a directory, including symlinks. + + +- QAbstractSocket + Added slots connectToHostImplementation() and + disconnectFromHostImplementation() to provide polymorphic behavior for + connectToHost() and disconnectFromHost(). + +- QMenuBar + Added setActiveAction(), which makes the provided action + active. + +- QProxyModel + This class has been obsoleted (see QAbstractProxyModel) + +- QWidget + Now supports three modes of modality: NonModal, WindowModal and + ApplicationModal. + Added Qt::WindowModality, obsoleted WA_ShowModal and WA_GroupLeader. + Added Qt::WA_OpaquePaintEvent widget attribute, obsoleting Qt::WA_NoBackground. + Added boolean autoFillBackground property. + Child widgets now always inherit the contents of their parent. + +- QPalette + Added QPalette::Window (obsoletes Background) and + QPalette::WindowText (obsoletes Foreground). + +- QHttpResponseHeader + Added two constructors and the function setStatusLine() for generating + a response header. + +- QBitArray + Added count(bool), for counting on and off-bits in a bit array. + +- QVariant + Added support for QRegExp + +- QRegExpValidator + Added the property "regExp". + +- QTabBar + Added the property "iconSize", for setting the size of the icons on + the tabs. + +- QLineEdit + Added support for inserting Unicode control characters through the + context menu. + +- QString + Added toLong() and toULong(). + Support for std::string conversions with embedded \0 characters. + +- QRegion + Added translate(), like QRect::translated(). + +- QProcess + Added systemEnvironment(), which returns the environment variables + of the calling process. + Added exitStatus(), and added a new finished() signal which takes the + exit status as a parameter. + +- QComboBox + Made setCurrentIndex() a slot. + +- QFontDataBase + Added styleString(), for retrieving the style string from a QFontInfo. + Added support for Myanmar fonts. + +- QFontMetrics + Added xHeight(), which returns the 'X' height of the font. + +- QCoreApplication + Added arguments(), which returns a list of command line arguments as a + QStringList. + +- QTcpSocket + Added support for SOCKS5 via setProxy(). + +- QUdpSocket + Added property "bindMode", for binding several sockets to the same + address and port. + +- QPen + Added support for custom dash pattern styles and miter limits. + Added support for QDebug. + +- QDebug + Added support for QVector and QPair output. + +- QStringListModel + Added support for sorting. + +- QOpenGLPaintEngine + Gradients in the OpenGL paint engine are now drawn using + fragment programs, if the extension is available. Lots of + fixes, speedups and tweaks. + + +Platform-Specific changes +------------------------- + +Windows: + +- Painting + Added support for ClearType text rendering. + +- File Engine + Added support for long filenames/paths. + +X11: + +- QWidget + Added support for freedesktop.org startup notifications. + +Mac OS X: + +- Improved support for the VoiceOver accessibility tool in Mac OS 10.4 + and later + + +3rd-party libraries +------------------- + +- zlib + Upgraded to zlib 1.2.3. + +- FreeType + Upgraded to FreeType 2.1.10. + +- SQLite + Upgraded to SQLite 3.2.7 diff --git a/dist/changes-4.1.1 b/dist/changes-4.1.1 new file mode 100644 index 0000000000..b18539d684 --- /dev/null +++ b/dist/changes-4.1.1 @@ -0,0 +1,693 @@ +Qt 4.1.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.1.0. + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* General * +**************************************************************************** + +Meta Object Compiler (moc) + Better handling of preprocessor statements in combination with + multi line comments. + Fixed problem where moc would generate meta information for + invalid signals/slots. + +Configure / Compilation + Fix build of dumpcpp-dependent projects in Visual Studio 6. + Fixed compilation for solaris-cc-64. + Respect the -no-sql-mysql flag. + Fixed compilation with -no-qt3support on Mac OS 10.3 + qmake now places PkgInfo in the "Contents" directory of the + .app bundle. + +Porting (qt3to4) + Fixed the issue where 'int red' would be translated to + 'Qt::red'. + Improved handling of macros created by moc. + +Qt Designer + uic3: Prevent generation of invalid font tags + uic: Fixed bug that caused retranslateUI() to add existing + items in combo box once again + Fixed dependency problem where qtDesigner modules would depend + on a private class. + Added missing generation of setColumnCount() and setRowCount() + for QTableWidget. + Fixed a platform incompatibility when saving icon properties on + Windows. + Fixed a crash when breaking the layout in a dock widget. + Fixed a crash when opening a new .ui file while in "Edit Tab + Order" mode. + Fixed a crash when adding a widget to a QDockWidget. + Improved preview of signal/slot connections. + Fixed an issue where moving widgets in a form resulted in lost + signal/slot connections and tab order to get. + Fixed corruption of shortcut properties in .ui files when + saving under some locales. + Fixed preview of QComboBox with item icons. + Fixed an issue preventing cancellation of 'New resource file' + if previous resource file was deleted. + Fixed use of F1 as help shortcut. + +Qt Assistant + Fixed problem with restoring window geometry on multi screen + configurations. + +Qt Linguist / Internationalization + Fixed tr() idioms, so that translation actually works. + Fixed encoding of translated text. + +Qt Translation + Added translation files for Simplified Chinese. + Fixed a problem with lupdate parsing output from uic. + +**************************************************************************** +* Library * +**************************************************************************** + +General improvements +-------------------- + +- QAbstractItemView + Fix selections when mouse-tracking is turned on. + Fixed selection issues after row resizing. + Fixed focus after pressing enter. + +- QAbstractItemModel + More consistent behavior in drag-and-drop code. + +- QAbstractSlider + Ensure changed-signals are only emitted when the value + actually changed. + +- QAbstractSocket + Fixed a crash if disconnected during waitForReadyRead(). + +- QAccessibleWidget + Fix an off-by-one navigation error in the accessibility + support for menu bar and menus. + +- QByteArray + Fixed leftJustified() and rightJustified() when array contains + \0's. + +- QComboBox + Fixed a crash when setting and deleting the model. + Fixed a crash when using a QListWidget as the view. + +- QCoreApplication + Fixes race condition during plugin loading. + +- QCommonStyle + Fixed wrong size hint of PM_MenuButtonIndicator. + +- QDateTime + Fixed a regression in fromString(). + Avoid potential hang when paring invalid date formats. + +- QDialog + Fixed an issue where setExtension()/showExtension() didn't + work in a constrained size mode. + +- QDir + cd() now fails when attempting to cd to a non-directory. + +- QDirModel + Improved stability when appending network drives. + Improved stability when handling symlinks with relative paths. + +- QDockWidget + Update toggleViewAction() when widget gets hidden with close + button. + +- QFile + Changed behavior of rename() to fail if a file of the same + name already exists. + +- QFileDialog + Make sure filter combo box gets enabled when changing from + Directory to ExistingFile mode. + Improve filename completion for files with the same name but + different extension. + Make sure the selection is updated when modifying the filename + by removing characters. + Allow typing in several file names in the file name line edit. + Improve handling of non-existent windows shares. + Improve handling of hidden directories. + Make it possible to create new folder when a folder called + "New Folder" already exists. + Improve usability by not changing the filename text when + directories are selected. + Improve usability by not autoselecting the first item when + changing directories. + Ensure that calling setDirectory() with a path shows the + directory when the path contains a file name. + Avoid unnecessary resolving of mount points, leading to + lockups on Unix. + Fixed potential crash when selecting an extension filter with + no matches in current directory. + Fixed a problem where using selectFilter() didn't update the + view. + +- QFileInfo + Fixed issue where copying a QFileInfo and calling refresh() + could result in file info data being cleared. + Fixed issue where calling readLink() would resolve link + targets incorrectly. + +- QGLWidget + Switching from full screen mode to normal mode no longer + results in incorrect window decorations. + Fixed overline, underline and strikethrough for text drawn + with renderText(). + +- QGridLayout + Respect specified alignment over default alignment. + +- QHeaderView + Respects dragDistance. + Respects TextColorRole. + Fixed painting problems caused by clicking both mouse buttons + at the same time. + Fixed painting flaws when using sort indicators. + Fixed issue where QStyleOptionHeader::End would not be set by + paintSection. + Only the left mouse button can now be used to move and resize + header sections. + Fixed incorrect header size after swapping header sections. + Fixed resize mode of header sections after section moves. + Fixed an assert when changing the selection model. + +- QHash / QSet + Make the operator==() not take the internal order of elements + into account when comparing. + +- QIcon + Fixed issue where creating QIcons with an invalid path could + result in a crash. + +- Improved handling of focus events when using input methods. + +- QInputDialog + Fixed handling of ampersands in labels. + +- QImage + Fixed drawing of QBitmap's onto a QImage. + +- QImageIOHandler + Made all supported image formats support the Size option. + +- QItemSelectionModel + Fixed an infinite loop in isRowSelected(). + +- QItemDelegate + Better handling of QStyleOptionViewItem::Bottom. + Increased the delegate horizontal margin. + +- QLayout + Warn instead of crash when adding two layouts to a widget. + +- QLocale + Add missing entry for "nb". + +- QList + Fixed a memory leak when repeatedly removing items from the + end and inserting items in the middle. + +- QListView + Fixed an assert when using QProxyModel as the model. + +- QMainWindow + Handle RTL layout for dockwidgets properly. + Make dockwidgets remember their sizes after being hidden. + Improved reliability when saving and restoring state. + +- QMenu + Fixed shortcut handling of already selected submenus. + Fix setting the window title on torn off menus. + Fix bug where exec() returned the wrong QAction on some cases. + +- QMenuBar + Improved widget placement in setCornerWidget(). + +- QMenuItem + Ensure space for both check mark and icon when using + QPlastiqueStyle. + +- QMYSQLDriver + Fix crash when formatValue() is called without connection. + +- QMessageBox + information() now works correctly when calling it after + returning from QApplication::exec() + +- QPaintEngine + Fixed an out of memory issue when drawing very long lines. + OpenGL : Make sure the image and pixmap cache is used. + OpenGL : Faster rect outlining for the most common case. + +- QPrintEngine + Better font underlining/overlining. + Support PDF font embedding, resulting in smaller PDF files and + selectable text. + Made our generated PDFs readable by Ghostscript. + Support pens that have patterns/pixmaps for PDFs. + Support landscape mode for PDFs. + +- QPixmap + Fixed issue where save() in some cases would return true on + failure. + +- QProgressBar + Fix incorrect progress in some cases. + +- QPushButton + Buttons reparented into a dialog parent through the layout are + now auto-default. + +- QRadioButton + Fixed a potential crash in QRadioButton Qt 3 support + constructors. + +- QSortFilterProxyModel + Improve stability when adding rows to source model. + Fixed issue where some nodes would show up as expandable even + if all it's children had been filtered. + Fixed a crash when deleting rows. + +- QSizeGrip + Fixed size grip painting when maximizing a QMainWindow in a + QWorkspace. + +- QSvgRenderer + Better handling of invalid files. + +- QSvg + Improve stroking with pen width 0. + Fix rectangle filling bug. + +- QSyntaxHighlighter + Fixed missing handling of blocks of text under certain + conditions. + Improved interaction with input methods. + +- QScrollArea + Fixed an issue where the scroll area sometimes would not + resize to compensate for content change. + +- QString + Fixed regression in fromLocal8Bit(). + +- QTextDocument + Support span style background-color. + Fix nested tables in html documents regression. + +- QTextLayout + Added support for soft-hyphens. + +- QToolButton + Make popup menus appear on the correct screen. + Fixed ToolButtonPopupMode when QToolButton has a + QAction. + +- QToolBar + Combo boxes now appears as submenus in a toolbar extension. + setIconSize() now works correctly. + Relative position within toolbars are now kept when saving and + restoring state. + +- QTextBrowser + Fix missing line break after paragraph. + +- QTextEdit + Improve handling of the TITLE tag. + Fixed navigating links via tab. + Improved handling of malformed html. + Fixed rendering for tables with thead/tbody/tfoot elements. + Improved copy and paste of content with whitespace + Make undo/redo update the cursor position. + Fixed lost cursorPositionChanged() signal in read-only mode. + Fixed memory leak when calling setHtml() repeatedly. + Significantly improved performance when appending and editing + text. + Improved performance when selecting all text. + Emit copyAvailable() on mouse selection. + +- QTableView + Fixed drawing of selections after moving columns. + Do not wrap to the top if Page Down is pressed. + Improve scrolling behavior. + QTableView now takes ownership of QHeaders set using + setHorizontalHeader() + Fixed issue where calling setModel(0) could result in a + crash. + +- QTreeView + Fixed scrolling-related item expand bug. + Improve scrolling behavior. + QTreeView now takes ownership of QHeaders set using + setHorizontalHeader() + Avoid crash when calling setRowHidden with no model. + Avoid crash when calling sizeHintForColumn() in some cases. + Improved performance when adding rows. + Fixed update of view when changing row heights. + Fixed a bug where calling setCurrentIndex() did not update the + view correctly. + Removed extra emit of the expanded() signal on already + expanded branches. + +- QTreeWidget + Fixed tristate check item behavior. + +- QTabWidget + Fixed bug that caused missing resize when dynamically adding + widgets. + Fixed text positioning in a tab with an icon. + + +- QTemporaryFile + Fixed issue where calling open() could potentially change the + file name. + +- QTextDocument + Improved stability when importing incorrectly formed html + tables. + Improved stability when importing closing tags without + corresponding opening tags. + +- QTextStream + Ensure valid codec converter state after calling seek(0). + Fixed issue where readAll() would not work with sequential + devices. + +- QTabBar + Improve handling of tab removal. + +- QUrl + Improve handling of hostnames containing digits. + Fix crash when calling hasQueryItem() on QUrl without any + query items. + Added support for parsing file names with '[' and ']' + characters. + +- QVariant + Improve operator==() behavior when comparing different types. + The QVariant(const char *) constructor is now unavailable when + QT_NO_CAST_TO_ASCII is set. Otherwise, it uses + QString::fromAscii to convert the const char * to a Unicode + QString to prevent loss of information. + +- QWidget + Fix regression in setMask(). + Fixed issue where incorrect minimum size was reported after + reparenting from a top level widget. + Fixed return value of normalGeometry() after the widget has + been maximized. + Fixed crash on application exit if the widget was created + before the widget mapper is initialized. + +- QXpmHandler + Fixed handling of non-transparent XPM images. + +- XMLInputReader + Fixed issue where entities in XML files were not + resolved. + +- QXmlSimpleReader + A significant (approx. 50x) speedup in QXmlSimpleReader when + parsing documents which contain internal or external entities. + +- Q3DataTable + Drivers not supporting the QuerySize feature would display one + row of data too little. + +- Q3IconView + Fixed selection appearance. + +- Q3TextEdit + Fixed focus indicator tabbing through tables. + Fixed coloring when inserting text after use of setColor(). + +- Q3TabDialog + Added missing selected() signal + +- Q3ListView + Fixed occasional crashes when deleting items. + Fixed wrong label after addLabel(QString()). + +- Q3ScrollView + Fixed default focus policy for deriving classes. + +- Q3ToolBar + Q3Action::setOn() now works correctly. + Adding an action now sets all action properties correctly. + +- Q3ActionGroup + Fix drop down drawing error. + +- Q3MainWindow + Fixed a regression in setUsesIconText(). + + +Platform-Specific changes +------------------------- + +Windows: + +- QApplication + Timers now continue to fire when windows enters a modal event + loop. + +- QAxServer + Fixed issue where updateRegistry() would report success, even + though the operation failed. + Fixed comparison of class attributes. + +- QAxWidget + Support parameters of type short* and char* in signal/slots. + +- QClipboard + Make sure the dataChanged() signal is emitted correctly. + +- QColordialog + Fixed various selection issues in WindowsXP style. + +- QDockWidget + Improve the look of title bar buttons. + Improved appearance of dock widget title and frame. + +- QFileDialog + Improve handling of path names with special characters. + Maintain modality chain when showing a native modal inside a + qt modal. + Speedup when browsing dirs containing broken shortcuts. + +- QHeaderView + Improved header highlighting in WindowsXP style. + +- QInputDialog + Calling setText() also selects all text to be consistent with + other platforms. + +- QLabel + Improved appearance when disabled. + +- QLineEdit + Make QLineEdit respect the XP color scheme. + +- QOpenGL + Added workaround for missing OpenGL sample buffers on the + Mobile Intel 915GM Express Chipset. + Fixed rendering into a QPixmap. + +- QPainter + Improve Type 1 font rendering. + Improved performance of font rendering. + Use the standard fallback fonts for Asian languages. + +- QPrinter + Fixed issue where the orientation for a QPrinter would be + ignored. + Fix PCL printer line drawing bug. + +- QPrintDialog + Fix unhandled exception when a print dialog is launched from + within Visual Studio. + +- QPrintEngine + Ensure correct pageRect() and paperRect() when printer + resolution is set manually. + +- QTableView + Improved checkbox coloring within selections. + +- QUdpSocket + Better handling when sending to an unbound port. + +- QWidget + Fix setWindowOpacity() flicker. + +- QWindowsXPStyle + Fixed QApplication::setStyle() if called before construction + of the application object. + +- QWorkSpace + Improve window resizing. + Improve title bar and button appearance in XP style. + Improved focus handling. + Fixed update of child masks on style change. + Fixed restore action not being enabled on maximize and + minimize. + Fixed a potential crash in maximizeWindow(). + +X11: + + Reintroduced qt_x11_set_global_double_buffer() for binary + compatibility. + Improved tablet event handling. + +- QApplication + The KeypadModifier is now set when NumLock is enabled. + +- QBitmap + Fixed text drawing errors under some fontconfig + settings. + +- QLibrary + isLibrary() now returns true for .a and .so on AIX. + +- qmake + Improved stability when modifying environment variables + Allow '/' as a path separator on all platforms. + +- QPaintEngine + Fixed issue where filling and stroking ellipses could leave + pixel gaps. + +- QPainter + Implemented Porter-Duff composition support. + Fix artifacts when drawing aliased primitives with an alpha + pen. + Fixed issue where rotating pixmaps could add a pixel row in + some cases. + Fixed drawing of arcs of less than 1 degree. + Made drawText() honor the Qt::TextWrapAnywhere flag. + +- QPrinter + Fixed cleanup of child processes. + +- QPrintDialog + Fixed problems when using "From page" and "To page" spin + boxes. + Made it impossible to choose "OK" when no printers are + configured. + +- QProcess + Fixed possible deadlock when calling startDetatched(). + +- QScrollArea + Catch double click also when size exceeds window system size + limits. + +- QTextEdit + Fixed an issue where the horizontal scrollbar did not show up. + +- QWorkspace + Fixed missing mouse event propagation to child widgets. + +Mac OS X: + + General fixes to the drag and drop support. + Improved performance when resizing widgets. + Fixed font issues for input methods with Japanese. + Fixed issue with pasting Japanese text. + Correctly set architecture and SDKROOT when creating a Xcode + project. + +- QCursor + Fix alpha pixmap cursors. + +- QDesktopWidget + Improve stability when changing users. + +- QDockWidget + Improve dock widget appearance. + +- QGroupBox + More conformant styling. + +- QHeaderView + Fix text truncating issue on headers. + +- QLabel + Fix labels painted incorrectly when using MacMetalStyle. + +- QMenu + Improved menu styling. + Improved popup appearance. + +- QPainter + Add support for SmoothPixmap transform. + +- QPushButton + Make Mac style obey the icon size set by setIconSize(). + Make sure buttons are not shown as default on inactive + windows. + +- QPrintEngine + Fixed truncated PDF generation of large documents. + +- QSplashScreen + Fix painting errors when using showMessage(). + +- QTextEdit + Fixed focus issues with Japanese input. + Fixed issue with pasting Unicode text between + applications. + +- QToolBar + Improve tool bar appearance. + +- QTextFormat + Fixed a crash when setting a font's pixel size to -1. + +- QWorkSpace + Improve workspace children appearance. + +- Q3TextEdit + Fixed a crash in paragraphRect() when all content had been + deleted. + +- Q3ListViewItem + Fixed a infinite loop when editing an item. + +Qtopia Core: + + Removed flickering when mouse cursor is above an animation. + Optimized use of shared memory. + Optionally use iwmmxt intrinsics to optimize painting. + Added a simple example on how to calibrate touch screen mouse + handlers. + +- Fonts + Handle BDF fonts without the PIXEL_SIZE property. + Added Chinese and Japanese fonts. + +- PDF + Support PDF font embedding. + +- qvfb + Fixed a crash when increasing the display size in the + configuration dialog. + +- QPixmap + Implement QPixmap::grabWindow(). + +3rd-party libraries +------------------- + +- FreeType + Fix memory leak. + diff --git a/dist/changes-4.1.11 b/dist/changes-4.1.11 new file mode 100644 index 0000000000..7c26a30690 --- /dev/null +++ b/dist/changes-4.1.11 @@ -0,0 +1,41 @@ +Qt 4.1.11 is an optimization release of 4.1.4. It maintains both forward and +backward compatibility (source and binary) with Qt 4.1.0. + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* Library * +**************************************************************************** + +General improvements +-------------------- + +- QByteArray + Optimized resize() on an empty array. + +- QDateTimeEdit + Improved usability by allowing steps rounded to 15 minutes blocks. + +- QFile + Optimized the unsetError() by only modifying state if it's really + changed. + +- QFSFileEngine + Optimized buffered file reads. + +- QSettings + Implemented delayed parsing of the settings file. + +- QString + Optimized the size of the QString(const char*) constructor. + +- SQLite driver + Upgraded to SQLite version 3.3.5. + Minimized the time a result set is kept on the server. + +Qtopia Core-Specific changes +------------------------- + +- Added 18 and 24 bit support to the Linux framebuffer screen driver. +- Optimized the Transformed screen driver. diff --git a/dist/changes-4.1.3 b/dist/changes-4.1.3 new file mode 100644 index 0000000000..59f0c71ad1 --- /dev/null +++ b/dist/changes-4.1.3 @@ -0,0 +1,879 @@ +Qt 4.1.3 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.1.0. + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* General * +**************************************************************************** + +Meta Object Compiler (moc) + +Configure / Compilation + Compile with NAS sound support enabled and no Qt 3 support. + Fixed some issues with resolving absolute paths when configuring + Qt using "-prefix". + +Porting (qt3to4) + qt3to4 now adds the needed include directive for + qPixmapFromMimeFactory(). + Added rule for QDeepCopy. + Improved handling of files with non-unix line endings. + +Qt Designer + Improved usability by letting the Find Icon dialog remember the last + path visited. + Fixed preview of DataTime and Date types. + Generate correct .ui code when saving forms containing Q3DateEdit, + Q3TimeEdit, Q3ProgressBar and Q3TextBrowser. + Fixed cursor position when editing text in QListWidget and QComboBox. + Fixed code generation for custom widgets containing a QComboBox. + Fixed a bug that prevented the windowTitle property for QDockWidgets + from being designable. + Fixed problem where Designer would fail to reflect QTreeWidget column + changes. + Fixed potential assert when font size is specified in points. + Fixed potential crash when breaking the layout of an empty splitter. + Ensured that Designer saves the used pixmap function. + Fixed potential crash on 64-bit platforms. + Ensured that windows show when restarting after a crash. + Improved geometry saving with multiple monitors. + Fixed a potential crash when using QVBoxLayout with certain widget + combinations. + Fixed a bug where breaking splitter layout would not work after + reopening the form. + +Qt Assistant + Assistant now sets the proper encoding attribute when saving files, + solving problems when viewing the page in some browsers. + Improved window placement on startup. + Improved performance of first-time keyword loading. + +Qt Linguist / Internationalization + Improved window placement on startup. + Fixed problem where .ts files for Qt 3 .ui files would be grayed out. + +uic + Fixed code generating bug for forms in namepsaces preventing + connections from being made. + Split large generated strings to avoid compiler errors. + Fixed a bug causing QLabel's font not to be set when using uic3. + Fixed a dependency issue when .ui files are in a subdirectory. + Ensured that "uic3 -convert" will convert connections. + Ensured that uic3 will convert QDataTable and QSqlCursor to Qt3 + support classes. + +Demos / Examples + Fixed a bug in the Tooltips example when moving the cursor from one + circle to the next. + Fixed a bug in the FTP example which caused the Download button to be + incorrectly enabled/disabled. + Fixed a crash in the FTP example. + Made it easier to change the Arthur Widget properties in Designer. + Fixed indexing issues in the Spreadsheet demo. + +**************************************************************************** +* Library * +**************************************************************************** + +General improvements +-------------------- + +- Fixed rendering of some GIF images. +- Popup and Tool widgets are now correctly blocked by sibling modal dialogs. +- Group-leader widgets are no longer blocked by non-child modal widgets. +- A parent modal dialog of a child modal dialog can no longer be brought on + top of the child. +- Made sure modal widgets are modal when opened on a closing parent. +- Fixed expose painting error when closing a child popup. +- Ensured that index widget pointers are maintained when a view is sorted. +- Ensured that closingDown() returns true when the application + objects are being destroyed. +- Fixed a potential crash in the PNG image handler. +- Improved stability of PDF font generation when embedding invalid fonts. + +- Q3ButtonGroup + Fixed incorrect behaviour when using setExclusive(false). + +- Q3DockWindow + Fixed placement when showing after being hidden. + Fixed issue where calling show() on a hidden Q3DockWindow would + make the dock window overlap the existing one. + +- Q3GroupBox + Removed empty row at the bottom. + +- Q3TextEdit + Fixed some input method issues. + +- Q3TextBrowser + Fixed a bug that prevented some Unicode HTML files from being + displayed. + +- Q3ToolBar + Ensured that toolbar separators are painted in all styles. + +- Q3IconView + Fixed a crash when disabling the view while an item is being edited. + +- Q3ListView + Fixed incorrect background color. + Fixed painting issues with disabled items. + Added support for tooltips. + +- Q3Table + Fixed a painting bug in the headers that occurred when a cell was + selected. + Ensured that checkbox backgrounds are filled. + Fixed issue where calling selectRow() would not deselect the current + row in SingleRow selection mode. + +- Q3Header + Fixed incorrect vertical text alignment. + Fixed issue where a header label would be lost after swapping two + column headers. + +- Q3UrlOperator + Fixed listChildren() for the case when setProtocol() hasn't been + called. + +- Q3WhatsThis + Fixed handling of dynamic "What's This?" texts. + +- Q3WidgetStack + Fixed a potential crash. + Fixed a bug preventing arrows from showing up in some cases. + +- QAbstractButton + Ensured that QAbstractButton::setPixmap() also sets the size of the + pixmap. + +- QAbstractItemView + Fixed QStatusTipEvents for item views. + Fixed a crash occurring when removing a row in a slot connected to + selectionChanged(). + Fixed issue where itemChanged() would be emitted twice. + Fixed issue where input methods would not work on editable itemviews. + Fixed potential crash. + Made sure the editor does not open when expanding and collapsing + branches in QTreeView. Note that this change introduces a system + dependent delay to differentiate between single and double clicks. + Made sure setIndexWidget() does not delete an old widget if one is + already set. + Fixed a bug causing fetchMore() to behave incorrectly with empty + models. + Fixed an issue that sometimes caused tab order to be incorrect after + editing items. + +- QAbstractSocket + Fixed potential crash when connecting to local sockets on BSD + systems. + +- QCheckBox + Only emit the stateChanged() signal when the state actually changes. + Improved performance. + +- QColorDialog + Improved usability. + +- QComboBox + Corrected escape of '&' in items. + Reset input context when showing the popup. + Fixed a missing update after model is reset. + Ensured that TextElideMode is respected. + +- QCommonStyle + Fixed incorrect values returned from sizeHintFromContents() for the + header sections. + +- QCheckBox + Fixed some painting issues when using CDE or Motif style. + +- QDatabase + Fixed bool values in prepared queries in the MYSQL driver. + Fixed use of stored procedures that returns a result set in MySQL + 5.x. + Fixed queries on tables with a LONG field type in Oracle databases. + Fixed reading of large blobs from an Interbase database. + +- QDir + Fixed infinite loop in rename() when renaming a directory without + write permission. + +- QDirModel + Fixed possible assert on broken links. + Fixed a bug preventing links to "/" on Unix system from working + correctly. + +- QFile + Corrected error reporting on flush() and close(). + Fixed caching issues causing wrong file sizes to be returned in some + cases. + Ensure that write() will fail when trying to write to a full disk. + +- QFileDialog + Fixed a bug that allowed selection of multiple files in + getOpenFileName(). + Ensured that the proper error message is given when deleting a + directory fails. + Fixed a bug preventing an update when changing the FileMode. + Added support to allow several new characters (such as @{},*~^) to be + used in dialog file filters. + Ensured that files are hidden when browsing in DirectoryOnly mode. + +- QFtp + Fixed crash that occurred if an FTP session got deleted in a slot. + +- QGridLayout + All addWidget() functions now invalidate the layout. + Fixed minimum size for layouts containing widgets that maintain + a height-for-width size policy. + +- QGroupBox + Fixed some painting issues appearing on all styles except Windows XP. + Fixed keyboard handling if checkable. + +- QHeaderView + Fixed a bug preventing tooltips from being shown. + Fixed a painting error occurring when the sort indicator was enabled + and the column width became smaller than the indicator width. + Fixed a usability issue when resizing small headers in a fixed-width + QTreeWidget. + Ensured that the header has the correct size when the font changes. + Fixed a painting error that occurred when the header was hidden. + Fixed a painting error that occurred when the user activated the + context menu while pressing the left mouse key. + Fixed a bug giving the last section a resize cursor event though it + cannot be resized. + Icons in header views now respect the layout direction. + Added support for setting a pixmap. + Prevented views from deleting a view it does not own. + +- QHttp + Fixed issue where setProxy() would only work for the first get() + call. + +- QIcon + Ensured that visible icons on QToolButtons and QMenus are updated + when the icon of a QAction changes. + Fixed issue where actualSize() would return a bigger size than the + requested size. + +- QImage + Fixed writing to a PNG file when the alpha value is premultiplied. + Fixed a bug where dotsPerMeter was not preserved after a call to + convertToFormat(). + Handle out of memory conditions gracefully. + +- QIODevice + Fixed return values for Qt 3 support members getch(), putch() and + ungetch(). + +- QItemDelegate + Proper painting in inactive windows. + Improved hit detection for QTreeWidgetItem checkboxes. + +- QItemSelectionModel + Emit currentChanged() when the current item is deleted. + Fixed a bug causing the selection to be lost when an item was + removed. + +- QLibrary + Added support for suffixes before library extensions. + +- QLineEdit + Made sure QT_NO_CLIPBOARD is respected. + Fixed incorrect background color when disabled. + +- QListView + Fixed setRowHidden(). + Made the decision to showing scrollbars independent of the previous + scrollbar state. + Ensured that setting the icon position programatically works as + intended. + +- QLocale + Fixed a bug causing toString() to return the wrong day of the week in + some cases. + +- QMainWindow + Fixed a crash when deleting the widget returned by + QMainWindow::statusBar(). + Fixed a bug causing wrong behavior when removing a QToolBar with + removeToolBar() + Fixed layout error when showing the status bar after the main window. + Fixed incorrect assert in QMainWindowLayout::dockWidgetArea(). + Fixed a bug making it impossible to have a dock widget under two + others in the same dock widget area. + Fixed a regression preventing insertToolBar() from inserting a + toolbar before an existing toolbar. + Ensured that QDockWidget's maximumWidth() is honored. + Ensured that window menu shortcuts are available before the window is + shown. + +- QMenu + Allowed setActiveAction() open a submenu, to be consistent with + QMenuBar. + Made it possible for the Alt key to be used to close a context menu. + Improved navigation behavior when using Home/End. + Improved navigation behavior when using up/down arrows on a menu with + no selected items. + Fixed crash when clicking on cleared or disabled submenus. + Ensured that only the currently highlighted submenu is visible. + +- QMenuBar + Improved calculation of sizeHint(). + Fixed a bug causing menu items after a spacer item to always appear + in the extension menu. + Changed activateItemAt() to behave more like its behavior in Qt 3. + +- QMotifStyle + Draw QSlider tick marks. + Fixed a bug preventing the focus frame background from being cleared. + +- QMovie + Improved frame delay calculations. + +- QObject + Fixed a crash when calling disconnect() on the last connection. + +- QPainter + Optimized drawing of dotted lines. + Fixed potential assert after calling setClipping(true). + +- QPainter + Fixed a bug causing contains(QPoint) to return the wrong result in some + cases. + Fixed some painting issues with drawArc(). + Improved performance of drawLine() and drawEllipse(). + +- QPen + Fixed a bug that caused the wrong dash patterns to be drawn when + changing styles. + +- QPicture + Fixed a DPI issue when drawing into a QLabel. + Made sure that the bounding rectangle is updated for all drawing + operations. + Improved stability when handling complex scenes. + Made sure SVG files saved by QPicture include namespace bindings in + the SVG tag. + +- QPlastiqueStyle + Improved usability in QSlider by making the hit rectangle for mouse + clicks wider. + Fixed animation of indeterminate progress bars. + Ensured that lines are drawn for the hierarchical relationships in + QTreeWidgets. + +- QPrinter + Optimized the size of PDF documents containing the same picture in + several places. + Ensured that systems with high resolution are correctly handled. + Fixed a bug preventing the setup() function from displaying the print + dialog. + Improved positioning of tiled pixmaps. + +- QPrintDialog + Fixed a crash that occurred when opening a page setup dialog on a PDF + printer. + +- QPushButton + Made sure that flat push buttons paint their contents. + +- QProcess + Ensured that the exit status is reset after a sub-process crash. + Fixed a bug causing the system to lock on X11 after calling + startDetached() 65536 times. + Enabled QProcess to be used outside the GUI thread. + +- QScrollArea + Fixed problem where focusing the next child in a scroll area would + make the top-left part of the child scroll out of view. + +- QSettings + Made it possible to use the "Default" registry entry on Windows. + +- QSortFilterProxyModel + Fixed a crash that occurred when deleting rows. + Improved stability by checking the model index for validity. + +- QStandardItemModel + Made sure that the column count is updated after calling + removeColumn(). + +- QSplashScreen + Made sure the font set with setFont() is actually used. + +- QSqlRelationalTableModel + Fixed a bug where inserting using the OnManualSubmit edit strategy + failed in some cases. + Fixed removeColumn() for columns that contain relations. + +- QSqlTableModel + Made the OnFieldChange edit strategy behave like OnRowChange when + inserting rows. + +- QStackedLayout + Fixed a bug causing a focus change when calling removeWidget(). + +- QSvgRenderer + Fixed rendering into a QPicture. + Fixed issue where id attributes containing certain characters would + not render correctly. + +- QSplashScreen + Fixed rendering of pixmaps with alpha channels. + +- QSplitter + Ensured that non-collapsible children are respected. + +- QSqlRelationalTableModel + Fixed handling of mixed-case field names for relations. + +- QSqlTableModel + Fixed a bug preventing the value 'false' from being set on a field of + boolean type. + +- QSyntaxHighlighter + Fixed a regression. + +- QTabBar + Ensured that currentChanged() is only emitted when the current index + actually changes. + +- QTabWidget + Ensured that QTabWidget has the same behavior as QStackedWidget when + inserting a page at index <= currentIndex(). + +- QTableView + Fixed selection handling in situations after rows/columns have been + moved. + Made decision to show scrollbars independent of the previous + scrollbar state. + Fixed a bug causing mouse clicks to be lost. + Fixed potential assertion when hiding columns in QTableView. + Fixed potential crash if indexes are invalid and sections have been + moved. + +- QTabWidget + Fixed drawing of icons. + +- QTextCodec + Fixed detection of locales with the '@' modifier. + +- QTextDocumentLayout + Made sure the right margin of a QTextBlock is filled with the + background color. + +- QTextEdit + Fixed a bug causing setPlainText() to emit textChanged() three times. + Fixed an infinte loop triggered when calling setHtml() inside + resizeEvent(). + Added support for pasting text with '\r' line feeds. + Fixed a bug causing tables loaded from HTML to be saved incorrectly. + Made it possible to delete images using the Backspace key. + Fixed some issues with justified text in combination with forced line + breaks. + Improved stability when setting a null cursor. + Increased accuracy when moving text by drag and drop. + +- QTextBrowser + Fixed incorrect mouse cursor after right-clicking a link. + Fixed incorrect mouse cursor in read-only mode. + Fixed issue where arrow cursor would override custom cursors. + Fixed potential crash when inserting HTML. + Improved support for relative links. + Improved parsing of internal document anchors. + +- QTextHtmlParser + Fixed a bug in the whitespace handling. + +- QTreeWidget + Fixed a bug that caused itemChanged() to be emitted with a null + pointer. + +- QTreeWidgetItemIterator + Fixed incorrect assert caused by creating an iterator for an empty + QTreeWidget. + +- QToolBar + Fixed potential crash when resizing a tool bar with certain types of + widgets. + Fixed a bug causing hidden widgets to be shown when the toolbar is + moved. + +- QToolTip + Enable word breaking in rich-text tool tips. + +- QTextStream + Fixed a bug causing aboutToClose() to be connected to a NULL slot + after calling unsetDevice(). + Fixed a bug causing read() or readLine() to sometimes return an empty + string. + +- QTreeView + Fixed some drag and drop issues. + Fixed a bug where the check state of an item was unchanged after an + itemClicked() signal was emitted. + Made decision to show scrollbars independent of the previous + scrollbar state. + Fixed a bug causing horizontal scrolling when only vertically + scrolling should occur. + Fixed painting of parent-child hierarchy decorations. + Fixed scrollbar visibility bug. + Fixed branch indicator painting error in right-to-left mode. + Fixed painting issues when using reverse layout on hidden headers. + Fixed a bug preventing the view from being scrolled when column 0 was + hidden. + Fixed a bug causing some custom index widgets to be incorrectly + placed. + +- QTreeWidget + Fixed selection handling in situations after sortItems() has been + called. + +- QUdpSocket + Fixed issue where unbuffered sockets would continuously emit + readyRead(). + +- QUrl + Fixed behavior of setPort() when -1 is given as the port number. + setEncodedUrl() now escapes '[' and ']' after the host in tolerant + mode. + Made handling of IP encoding more consistent. + +- QUtf16Codec + Fixed bug in covertFromUnicode() on big-endian machines. + +- QVariant + Fixed handling of variants of type "QList<QVariant>". + +- QWidget + Made sure that the application does not close if a widget with a + visible parent exists. + Fixed issue where scroll() would scroll child widgets in some cases. + Fixed painting issues when resizing very large child widgets. + Fixed a bug preventing setCursor() from working with platform- + dependent cursors. + +- QWorkspace + Ensured that the correct position is set when maximizing a child with + the NoBorder hint. + Fixed MDI title bar text wrapping in Plastique style. + Fixed some painting issues when resizing child windows. + Improved accuracy when resizing child windows. + +- QXml + Improved parsing of entities. + +Platform-Specific changes +------------------------- + +Windows: + +- Ensured that the correct default font is used on Windows 2000 and later + versions. This also fixes issues with international characters on some + systems. + +- Improved painting of rubber bands in Windows XP and Windows style. + +- Calling showMaximixed() on a QDialog without minimize and maximize buttons + now behaves properly. + +- Improved calculation of bounding rectangles for text. + +- Fixed a bug making it possible to open multiple context menus using the + context menu key. + +- Fixed writing of large files which failed on some systems. + +- Optimized painting of ellipses. + +- Fixed problem with release version of IDC. + +- Fixed window state bug when restoring minimized and maximized windows. + +- Fixed painting error on Windows XP style tabs in right-to-left mode. + +- Fixed incorrect toolbar button spacing in Windows XP and Windows style. + +- Fixed bug that caused QFontInfo::family() to return an empty string. + +- Ensured that tool windows are now resizable by default. + +- Improved precision for tablet coordinates. + +- Improved probing and detection for OpenGL overlay mode. + +- Improved the native look and feel of QComboBox. + +- Improved appearance of QToolButtons with menus. + +- Fixed issue where certain fonts would be incorrectly replaced when + printing. + +- Fixed issue where minimized fixed-size dialogs would not respond to user + input. + +- Fixed issue preventing bitmap fonts from being drawn using a scaled + painter. + +- Made sure that QMAKE_PRE_LINK is respected by qmake on Windows. + +- Fixed a bug causing tab widget contents to move when resized in Windows XP + style. + +- Q3FileDialog + Fixed potential crash in Q3FileDialog when resolving shortcuts. + +- QPainter + Fixed an issue where drawText() on a QPrinter would sometimes be + clipped away. + Fixed the behavior of drawEllipse() and drawLine() when used with + negative coordinates. + Fixed painting in OpaqueMode. + Fixed a bug preventing rectangles with negative coordinates from + being painted correctly by the raster engine. + +- QAxBase + Fixed a bug preventing proper interaction with Excel. + +- QAxWidget + Fixed conversion of short* and char* output parameters. + +- QFile + Made sure that copy() returns false when the copy target already + exists. + +- QFileInfo + Fixed crash that occurred when calling exists() on a invalid + shortcut. + Fixed absolute and canonical paths for files in the root directory. + +- QGLWidget + Fixed a bug causing renderPixmap() to fail on 16-bit color depths. + +- QLibrary + Enabled loading of filenames with non-standard suffixes. + +- QLocale + Added support for 'z' in time format strings. + +- QPrinter + Fixed setPageSize() to correctly update the page and paper + rectangles. + +- QTextBrowser + Made sure that QTextBrowser does not override + QApplication::setOverrideCursor(). + +- QWindowsStyle + Ensured that the platform specific icons provided by the system are + used when appropriate. + + +X11: + +- Fixed a bug in QFontDatabase which made isFixedPitch() return true for + certain non-fixed-pitch fonts, like "Sans Serif". + +- Correctly handle the .so file extension on HP/UX IA-64. + +- Fixed a crash that could occur when clicking a mouse button while dragging. + +- Improve QProcess resource usage by making sure it closes all unused pipes. + +- Made QFontEngine honor the autohinter setting from FontConfig. + +- Fixed a potential crash that could occur when drawing a large number of + polygons/trapezoids. + +- QtConfig + Fixed missing update of window decorations. + Fixed assert when editing font family substitutions. + +- Fixed X Error that occurred when closing applications using the Motif + style. + +- Ensured that -style command line arguments are respected when using + customized visuals. + +- Fixed issues with multiple painters on the same device. + +- Improved backward compatibility for XCursors. + +- Fixed a bug causing text to be clipped incorrectly when printed. + +- Fixed issue where Qt::KeyPadModifier was not being set for non-numeric + keypad keys. + +- Ensured that files written by QSettings will only get user-readable + permissions by default. + +- Ensured that QContextMenuEvent is also delivered when a popup menu is + already open. + +- Added missing support for clipping of bitmaps on non-XRender systems. + +- Fixed platform inconsistency with cosmetic pens. + +- Fixed a potential crash when starting a QProcess for a non-existant + process. + +- QPainter + Improved stability of QPainter::setClipPath(). + Fixed painting issues with transformed points drawn with an aliased + cosmetic pen. + +- QFontMetrics + Fixed a bug in boundingRect(). + Fixed a potential crash in the constructor when it is passed a zero + paint device. + + +Mac OS X: + +- Fixed issues with pasting of Japanese characters. + +- Fixed a bug that made the close button unavailable on modal windows. + +- Fixed icon rendering on x86 CPUs. + +- Fixed painting of QBitmap into a QPixmap. + +- Added the -framework and -F configure options. + +- Fixed a bug where the menu bar would not show all items. + +- Fixed several drag and drop issues. + +- Fixed a bug that caused the font size to change when clicking checkable + toolbar buttons. + +- Fixed a crash that occurred when using a Qt-plugin in a non-Qt application. + +- Fixed use of newlines in a QMessageBox. + +- Fixed painting of QGroupBox without any text. + +- Fixed rendering of Qt::FDiagPattern and Qt::BDiagPattern. + +- Fixed building with -no-qt3support. + +- Fixed painting of the sort indicator in item view headers. + +- Fixed text placement in QGroupBox. + +- Fixed icon placement in QPushButton when used with RTL scripts. + +- Fixed painting of read-only line edit widgets. + +- Fixed animation of the Composition Modes demo. + +- Fixed painting of QSpinBoxes smaller than 25 pixels. + +- Fixed a bug preventing the page ranges in the print dialog from being set. + +- Fixed a bug causing QPrinter::pageSize() to return incorrect sizes. + +- Fixed printer resolution setting. + +- Improved quality of PDF output. + +- Ensured that calling setDirtyRegion() from within dragMoveEvent() updates + item views correctly. + +- Fixed a bug resulting in painting and performance issues for embedded + QGLWidgets when using MacMetalStyle. + +- Fixed a bug that sometimes prevented widgets from being shown. + +- Ensured that the correct number of tick marks are painted on sliders. + +- Fixed issue where Qt::FramelessWindowHint widgets were not visible in + Expose. + +- Fixed a painting error that occurred when unchecking checkboxes. + +- Fixed a bug that caused file dialogs and frameless windows to appear + outside screen bounds. + +- Prevented windows from losing their shadows after using QRubberBand. + +- Fixed a potential crash in QPixmap::copy() when given an area outside image + bounds. + +- Improved QToolButton arrow appearance. + +- Fixed an issue causing QDateTime::toString(Qt::LocalDate) to return + incorrect dates. + +- Improved performance of QPainter::drawImage(). + +- Fixed sometimes incorrect drawing with QPainterPath. + +- Improved key translation for non-Latin keyboard layouts. + +- QGLWidget + Fixed update issues when QGLWidgets are embedded in a QTabWidget. + +- QLibrary + isLibrary() now supports .dylib libraries with version numbers. + +- QWidget + Fixed a platform inconsistency with isActiveWindow(). + +- Designer + Fixed some painting issues with widgets that are not laid out. + Allow dragging of widgets in Designer when the toolbox is hidden. + Fixed a bug preventing Designer from being hidden using + "Command + H". + + +Qtopia Core: + +- Added configure options to build decorations and mouse drivers as plugins. + +- Lots of new documentation. + +- Added support for 8 and 16 bit screens. + +- Fixed a bug that could result in painting errors after setting a new + decoration with QApplication::qwsSetDocoration(). + +- New skins for QVfb provided in the X11 package. + +- Fixed the transparent corners of the window decoration using the Plastique + style. + +- Removed dependency of shared memory when using QT_NO_QWS_MULTIPROCESS. + +- Fixed input method focus change problems. + +- Ensured that fonts are searched for using QLibraryInfo::LibrariesPath + instead of PrefixPath. + +- Ensured that the smooth font flag is respected when parsing the 'fontdir' + file. + +- Fixed crash on systems where Helvetica font is not available. + +- Reduced memory usage with large fonts. + +- Added support for QIODevice::canReadLine(). + +- Ensured that the Qtopia Core data directory owner is checked against the + effective user. + +- Fixed appearance of the title bar font when the application font has not + been set. + +- Ensured that the correct keycodes are generated for SysRq and PrtSc. + +- Added support for transformed screens to QDirectPainter. + +- Fixed issues with -title and -geometry command line arguments. + +- Improved sound support. diff --git a/dist/changes-4.1.4 b/dist/changes-4.1.4 new file mode 100644 index 0000000000..426959e606 --- /dev/null +++ b/dist/changes-4.1.4 @@ -0,0 +1,125 @@ +Qt 4.1.4 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.1.0. + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* General * +**************************************************************************** + +Configure / Compilation + Compile with -no-qt3support on Windows. + Compile on Linux with icc 9.1. + Compile on tru64-g++. + Compile MySQL plugin with client libraries below MySQL 4.1. + Compile SQLite on Tru64 V5.1B with gcc 3.3.4. + Compile ODBC plugin on 64-bit Windows. + Disable fastcall calling convention on faulty gcc compilers. + +Demos / Examples + Fixed a crash in the Torrent example. + Container extension example: Fixed regression that caused Designer + to crash when previewing a MultiPageWidget and changing the page. + +Designer + Generate unique object names for splitters. + +**************************************************************************** +* Library * +**************************************************************************** + +General improvements +-------------------- + +- Fixed crash in QGLWidget::makeCurrent() when called from a thread not + created with QThread. +- Fixed a crash that occurred when writing a PNG image when Qt is built + statically. +- Fixed Arabic shaping for some fonts. +- Limited the character string to 255 characters when writing Type1 fonts to + a PostScript file, in accordance with the PostScript specification. +- Fixed regression in painting of clipped, cosmetic lines with angles of + 0-45 degrees. +- Documented the rules for starting and stopping timers in multithreaded + applications. + +- QCommonStyle + Added protection against null pointer in pixelMetric() for + PM_TabBarTabVSpace. + +- QDirModel + Fixed crash when dragging and dropping a file into a directory. + +- QHeaderView + Fixed painting errors when scrolling a header that has a large + number of sections. + +- QListView + Fixed assert when hiding all the rows. + Fixed crash when setting the model to a null pointer. + +- QMainWindow + Fixed possible crash when calling setCentralWidget() multiple + times. + +- QPainter + Fixed a regression in drawPoint() that caused painting errors + when setting the pen width to 0 (e.g. cosmetic pen) and then + setting a scale. + +- QPlastiqueStyle + Fixed a regression that caused flat push buttons to be painted + like normal push buttons. + +- QSortFilterProxyModel + Emit modelReset() signal when setting a source model. + +- QTextEdit + Ensure that the cursor is visible after dragging & dropping text + +- QTreeView + Fixed potential assert when asking for the coordinates of a + non-existing item. + Fixed a regression that caused selections to be painted + incorrectly when the last column was hidden. + +- QWidget + Fixed crash when deleting the widget in closeEvent(). + +- QWorkspace + Fixed crash caused by setting the window title when windowWidget is + null. + +Platform-Specific changes +------------------------- + +Windows: + +- Fixed a bug that caused application text to be absent in Qt applications + on Windows NT 4.0. +- Fixed resource leak in non-accelerated GL contexts. + + +X11: + +- Improved performance of clipped bitmaps on systems that don't use XRender. +- Made QFont::setStretch() work when using FontConfig/FreeType fonts. +- Documented scrolling of transparent/opaque widgets. + + +QPaintEngine + Support OddEven fill rule. + +QPainter + Fixed a regression that caused drawImage() to ignore the width + and height of the source rectangle and draw the whole image without + any clipping. + + +Qtopia Core: + +- Fixed crash due to incorrect assembly code in implementation of + q_atomic_swp() for ARM. +- Set the Q_PACKED macro when using icc on ARM, so that the generated + code is binary compatible with gcc-generated code. diff --git a/dist/changes-4.1.5 b/dist/changes-4.1.5 new file mode 100644 index 0000000000..fefc91bc1b --- /dev/null +++ b/dist/changes-4.1.5 @@ -0,0 +1,14 @@ +Qt 4.1.5 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.1.0. + +The Qt version 4.1 series is binary compatible with the 4.0.x series. +Applications compiled for 4.0 will continue to run with 4.1. + +**************************************************************************** +* General * +**************************************************************************** + +- QImage + Fixed a potential security issue which could arise when transforming + images from untrusted sources. + diff --git a/dist/changes-4.2.0 b/dist/changes-4.2.0 new file mode 100644 index 0000000000..f42da271e5 --- /dev/null +++ b/dist/changes-4.2.0 @@ -0,0 +1,2506 @@ +Qt 4.2 introduces many new features as well as many improvements and +bugfixes over the 4.1.x series. For more details, see the online +documentation which is included in this distribution. The +documentation is also available at http://doc.trolltech.com/ + +The Qt version 4.2 series is binary compatible with the 4.1.x series. +Applications compiled for 4.1 will continue to run with 4.2. + +The Qtopia Core version 4.2 series is binary compatible with the 4.1.x +series except for some parts of the device handling API, as detailed +in Platform Specific Changes below. + + +**************************************************************************** +* General * +**************************************************************************** + + +New features +------------ + +- QCalendarWidget provides a standard monthly calendar widget with date + selection features. + +- QCleanlooksStyle provides the new Cleanlooks style, a clone of the GNOME + ClearLooks style, giving Qt applications a native look on GNOME desktops. + +- QCompleter provides facilities for auto completion in text entry widgets. + +- QDataWidgetMapper can be used to make widgets data-aware by mapping them + to sections of an item model. + +- QDesktopServices provides desktop integration features, such as support + for opening URLs using system services. + +- QDialogButtonBox is used in dialogs to ensure that buttons are placed + according to platform-specific style guidelines. + +- QFileSystemWatcher enables applications to monitor files and directories + for changes. + +- QFontComboBox provides a standard font selection widget for document + processing applications. + +- QGraphicsView and related classes provide the Graphics View framework, a + replacement for Qt 3's canvas module that provides an improved API, enhanced + rendering, and more responsive handling of large numbers of canvas items. + +- QGLFramebufferObject encapsulates OpenGL framebuffer objects. + +- QMacPasteboardMime handles Pasteboard access on Qt/Mac. This obsoletes + QMacMime as the underlying system has changed to support Apple's new + Pasteboard Manager. Any old QMacMime objects will not be used. + +- QNetworkInterface represents a network interface, providing information + about the host's IP addresses and network interfaces. + +- QResource provides static functions that control resource lookup and + provides a way to navigate resources directly without levels of + indirection through QFile/QFileEngine. + +- QSystemTrayIcon allows applications to provide their own icon in the + system tray. + +- QTimeLine gives developers access to a standard time line class with which + to create widget animations. + +- The QtDBus module provides inter-process communication on platforms + that support the D-BUS protocol. + +- The QUndo* classes in Qt's Undo framework provide undo/redo functionality + for applications. + +- Support for the Glib event loop to enable integration between Qt and non-Qt + applications on the GNOME desktop environment. + +- Improved Accessibility for item-based views and QTextEdit. + +- Support for main window animations and tabbed dock widgets. + +- Added an SVG icon engine to enable SVG drawings to be used by QIcon. + +- Widgets can now be styled according to rules specified in a style sheet, + using a syntax familiar to users of Cascading Style Sheets (CSS). Style + sheets are set using the QWidget::styleSheet property. + +- Introduced a new key mapper system which improves the shortcut system by + only testing the real possible shortcuts, such as Ctrl+Shift+= and Ctrl++ + on an English keyboard. + +- Improved and enhanced QMessageBox to support native look and feel on many + common platforms. + +- Experimental support for Qt usage reporting ("metered licenses") on Linux, + Windows and Mac OS X. Reporting is disabled by default. + +- A screen magnification utility, pixeltool, is provided. It is designed to help + with the process of fine-tuning styles and user interface features. + +- New qrand() and qsrand() functions to provide thread safe equivalents to + rand() and srand(). + + +General improvements +-------------------- + +- Item views + + * Selections are maintained when the layout of the model changes + (e.g., due to sorting). + + * Convenience views can perform dynamic sorting of items when the data + in items changes. + + * QStandardItem provides an item-based API for use with + QStandardItemModel and the model/view item view classes. + + * QStandardItemModel API provides a classic item-based approach to + working with models. + + * Single selection item views on Mac OS X cannot change their current + item without changing the current selection when using keyboard + navigation. + +- Plastique style has improved support for palettes, and now requires + XRender support on X11 for alpha transparency. + +- Tulip containers + + * Added typedefs for STL compatability. + + * Added function overloads to make the API easier to use. + +- Added the Q3TextStream class for compatiblity with Qt 3 and to assist with + porting projects. + +- OpenGL paint engine + + * Added support for all composition modes of QPainter natively using + OpenGL. + + * Fixed a case where very large polygons failed to render correctly. + + * Ensured that glClear() is only called in begin() if the + QGLWidget::autoFillBackground() property is true. + + * Ensured that a buffer swap is only performed in end() if + QGLWidget::autoBufferSwap() is true. + + * Improved text drawing speed and quality. + +- Raster paint engine + + * Fixed blending of 8 bit indexed images with alpha values. + + * Fixed drawing onto QImages that were wider than 2048 pixels. + + * Fixed alpha-blending and anti-aliasing on ARGB32 images. + + * Improved point drawing performance. + + * Fixed issue where lines were drawn between coordinates that were + rounded instead of truncated. + + * Ensured that setClipRegion(QRegion()) clips away all painting + operations as originally intended. + + +Third party components +---------------------- + +- Dropped support for MySQL version 3. + +- Updated Qt's SQLite version to 3.3.6. + +- Updated Qt's FreeType version to 2.2.1. + +- Updated Qt's libpng version to 1.2.10. + + +Build System +------------ + +- Auto-detect PostgreSQL and MySQL using pg_config and mysql_config on UNIX + based systems in the configure script + +- Added "-system-sqlite" option to configure to use the system's SQLite + library instead of Qt's SQLite version. + +- Added QT_ASCII_CAST_WARNINGS define that will output a warning on implicit + ascii to Unicode conversion when set. Only works if the compiler supports + deprecated API warnings. + +- Added Q_REQUIRED_RESULT to some functions. This macro triggers a warning + if the result of a function is discarded. Currently only supported by gcc. + + +- Qt/X11, Qt/Mac and Qtopia Core only: + + * Added all QT_NO_* defines to the build key. + + +- Qt/X11 and Qtopia Core only: + + * As in Qt 3, the configure script enables the -release option by + default, causing the Qt libraries to be built with optimizations. If + configured with the -debug option, the debug builds no longer result + in libraries with the _debug suffix. + + On modern systems, flags are added to the Qt build to also + generate debugging information, which is then stored in a + separate .debug file. The additional debug information does not + affect the performance of the optimized code and tools like gdb + and valgrind automatically pick up the separate .debug + files. This way it is possible to get useful backtraces even + with release builds of Qt. + + * Removed the last vestiges of the module options in the configure + script, previously they were available but did not function. + + * Implemented a -build option in the configure script to conditionally + compile only certain sections of Qt. + + * Made it possible to build Qt while having "xcode" set as your + QMAKESPEC on OSX. + + +- Windows only: + + * Populated the build key, as done on all the other platforms. + + * Fixed dependency generation in Visual Studio Solutions (.sln) + created by qmake. + + * Added missing platforms to the Visual Studio project generator (X64, + SH3DSP and EBC). + + * Made UIC3 use a temporary file for long command lines. + + * Removed the object file (.o) conflicts with MinGW that appeared when + embedding a native resource file which was named the same as a normal + source file. + + * Fixed mkspec detection when generating project files outside of QTDIR. + + * Removed compiler warnings with MinGW g++ 3.4.5. + + + +**************************************************************************** +* Library * +**************************************************************************** + + +- QAbstractButton + + * Returns QPalette::Button and QPalette::ButtonText for + backgroundRole() and foregroundRole(), respectively, rather than + QPalette::Background and QPalette::Foreground. + + * Ensured that nextCheckState() is called only when there is a state + change. + +- QAbstractItemModel + + * When dropping rows only insert rows that were actually dropped, not + the continuous row count from first to last. + + * Added a supportedDragActions property to be used by + QAbstractItemView when starting a drag. + + * When updating changed persistent indexes, ignore those that haven't + actually changed. + + * Fixed endian issue with createIndex(). + + * Added FixedString matching for match(). + + * Changed the sorting algorithm to use a stable sort. + + * Added persistentIndexList() function. + +- QAbstractItemView + + * Added possibility to copy elements to clipboard on read-only views. + + * Improved handling of QAbstractItemModel::supportedDropActions(). + + * Ensured that the current item is selected when using keyboard + search. + + * Ensured that the view starts with a valid current index. + + * Ensured that data is only committed in currentChanged() if the + editor is not persistent. + + * Fixed crash that occurred when a modal dialogs was opened when + closing an editor. + + * Added verticalScrollMode and horizontalScrollMode properties. + + * Added setItemDelegateForRow() and setItemDelegateForColumn(). + + * Ensured that existing models are disconnected properly when + replaced. + + * Ensured that the doubleClicked() signal is only emitted when the + left button has been double-clicked. + + * Changed setSelection(...) to work when given a non-normalized + rectangle. + + * Fixed regression for shift-selections in ExtendedSelection for + all views. + + * Added dragDropMode property and implemented move support in all of + the views and models. + + * For edit triggers SelectedClicked and DoubleClicked, only trigger + editing when the left button is clicked. + + * Trigger SelectedClicked editing on mouse release, not mouse press. + + * Suppressed the doubleClicked() signal in cases where the clicks + happened on two different items. + + * Enabled keyboard search to be programmatically reset by calling + keyboardSearch() with an empty string as argument. + + * Don't allow drops on items that don't have the Qt::ItemIsDropEnabled + flag set. + + * Added modelAboutToBeReset() and layoutAboutToBeChanged() signals. + + * Suppressed assertion in dropMimeData() for cases where mimeTypes() + returns an empty list. + + * Ensured consistent behavior of drag and drop when rootIndex() is a + valid model index. + + * Made it possible to check a checkbox with only a single click when + using the CurrentChanged edit trigger. + + * Ensured that WhatsThis events are propagated when the relevant item + doesn't have a valid "What's This?" value. + + * Added PositionAtCenter scrollHint. + + * Added support to allow items to be checked and unchecked using the + keyboard. + + * Added support for keypad navigation. + +- QAbstractProxyModel + + * Added default implementations for data(), headerData() and flags() + +- QAbstractScrollArea + + * Added ability to set a corner widget. + + * Added ability to set scroll bar widgets. + + * Added support for custom scroll bars. + +- QAbstractSpinBox + + * Added a hasAcceptableInput() property. + + * Ensured that fixup/validate are called for third party subclasses of + QAbstractSpinBox as well. + + * Fixed geometry issues when toggling frames on and off for spinboxes. + + * Added a property for correctionMode. + + * Added a property for acceleration. + +- QAbstractPrintDialog + + * Fixed handling of existing printer options so that storage of page + ranges using setFromTo() works as expected when printing in PDF format. + +- QAction + + * Added the setAutoRepeat(bool) function to disable auto-repeating + actions on keyboard shortcuts. + +- QApplication + + * Added saveStateRequest() and commitDataRequest() signals so that + QApplication does not need to be subclassed to enable session + management in an application. + + * Added the styleSheet property to get/set the application style sheet. + + * Support sending key events to non-widget objects. + + * Ensured that argc and argv as passed to the QApplication constructor + will always be zero-terminated on all platforms after QApplication + consumes command line options for itself. + +- QBrush + + * Added a constructor that accepts a QImage. + +- QButtonGroup + + * Added pressed() and released() signals. + + * Fixed a bug caused by removing buttons from button groups. Removed the + internal mapping as well. + + * Ensured that checkedButton() returns the correct value with + non-exclusive groups. + +- QClipboard + + * Added support for find text buffer. + +- QColor + + * Fixed corruption in setRed(), setGreen() and setBlue() for HSV/CMYK + colors. + +- QComboBox + + * Fixed drawing issues related to certain FocusPolicy values. + + * Ensured that the ItemFlags of an Item (ItemIsEnabled,...) are + respected. + + * Fixed cases where the popup could be shown completly on screen, but + weren't. + + * Added the InsertAlphabetically insert policy. + + * Fixed case where a QPixmap could not be displayed using a QIcon. + + * Fixed the type of the modelColumn property from bool to int. + + * Updated documentation to clarify the differences between activated(), + highlighted() and currentIndexChanged(), and describe what they + actually mean. + + * Updated the behavior to ensure that, if the combobox isn't editable, + the Qt::DisplayRole rather than the Qt::EditRole is used to query the + model. + +- QCoreApplication + + * Added flags to enable/disable application-wide features such as + delayed widget creation. + +- QCursor + + * Added support for the newly added Qt::OpenHandCursor and + Qt::ClosedHandCursor enum values. + +- QDate + + * Support dates all the way down to Julian Day 1 (2 January 4713 B.C.) + using the Julian calendar when appropriate. + +- QDateTime + + * Fixed parsing issue in fromString(const QString &, Qt::DateFormat). + +- QDateTimeEdit + + * Added the calendarPopup property to enable date selection using the + new QCalendarWidget class. + + * Added a setSelectedSection() function to allow the currently selected + section to be programmatically set. + +- QDesktopWidget + + * Remove a potential out-of-bounds read. + +- QDialog + + * Improved stability in cases where the default button is deleted. + +- QDir + + * Improved support for i18n file paths in QDir::tempPath(). + + * Improved support for UNC paths when the application is run from a + share. + + * Ensured that mkpath() properly supports UNC paths. + + * Obsoleted QDir::convertSeparators(). + + * Introduced QDir::toNativeSeparators() and QDir::fromNativeSeparators(). + + * Added a QDebug streaming operator. + +- QDirModel + + * Fixed conversion from bytes to larger units in QDirModel in the file + size display. + + * Remove hardcoded filtering of the '.' and '..' entries. + +- QErrorMessage + + * Made qtHandler() work in cases where the message handler is invoked + from threads other than the GUI thread. + +- QEvent + + * Added the KeyboardLayoutChange event type which is sent when the + keyboard layout changes. + +- QFile + + * Improved support for UNC paths when the application is run from a + share. + + * Added support for physical drives (e.g., "//./Physical01"). + + * Ensured that QFile::error() and QIODevice::errorString() are set + whenever possible when errors occur. + + * Renamed readLink() to symLinkTarget(). + +- QFileDialog + + * Fixed a case where view mode got disabled. + +- QFileInfo + + * Improved support for UNC paths when the application is run from a + share. + + * Improved support for drive-local relative paths, such as "D:". + + * Renamed readLink() to symLinkTarget(). + +- QFlags + + * Added the testFlag() convenience function. + +- QFont + + * Added NoFontMerging as a flag to QFont::StyleStrategy. + +- QFontDatabase + + * Added functions for handling application-local fonts at run-time: + addApplicationFont(), removeApplicationFont(), + applicationFontFamilies(), etc. + +- QFontDialog + + * Enabled support for custom window titles. + +- QFontMetrics/QFontMetricsF + + * Added the elidedText() function. + + * Added the averageCharWidth() function. + +- QFrame + + * Fixed a rendering issue when showing horizontal and vertical lines + created using Designer. + +- QFtp + + * Improved parsing of the modified date in list(). + + * Ensured that all data has been received when downloading, before the + data connection is closed. + + * Added support for FTP servers that reject commands with a 202 response. + +- QGLFormat + + * Added the openGLVersionFlags() function. + + * Added support for setting the swap interval for a context + (i.e., syncing to the vertical retrace). + + * Added support for setting red, green and blue buffer sizes. + +- QGLWidget + + * Fixed a resource leak that could occur when binding QImages with the + bindTexture() function. + + * Fixed renderText() to produce proper output when depth buffering is + enabled. + + * Fixed bindTexture() to respect premultiplied QImage formats. + + * Ensured that the updatesEnabled property is respected. + +- QGradient + + * Added default constructors and setter functions for all gradients and + their attributes. + +- QGridLayout + + * Do not segfault if cellRect() is called before setGeometry(), + even though the result is documented to be undefined. + + * Fixed maximum size handling when adding spacing. + +- QGroupBox + + * Activating a group box by a shortcut will now show the focus rectangle. + + * Added the clicked() signal + +- QHash + + * Prevent conversion of iterator or const_iterator to bool + (e.g., if (map->find(value))) because the conversion always returned + true. Qt 4.1 code that doesn't compile because of this change was most + probably buggy. + + * Added the uniqueKeys() function. + +- QHeaderView + + * Use the current resize mode to determine section sizes when + new rows are inserted. + + * Recover the internal state if other widgets steal the mouse release + event. + + * Ensure that moved sections can be removed without asserting. + + * Be more robust with regards to arguments sent to the rowsInserted slot. + + * Let the stretchLastSection property override the globalResizeMode in + the resizeSections() function. + + * Renamed ResizeMode::Custom to ResizeMode::Fixed. + + * Added the swapSections() convenience function. + + * Added a more "splitter-like" resize mode. + + * Added the possibility for the user to turn off stretch mode by + resizing the header section. This includes the stretchLastSection + property. + + * Added the minimumSectionSize property. + + * Get the section size hint from the Qt::SizeHintRole, if set. + + * Added the ResizeToContents resize mode. + + * Ensure that all header contents are centered by default. + + * Improved the internal structure to be more memory efficient. + +- QHostAddress + + * Added QDataStream streaming operators. + +- QHttp + + * Support percent-encoded paths when used with a proxy server. + + * Improved handling of unexpected remote socket close. + +- QHttpHeader + + * Improved support for case-insensitive header searching. + +- QIcon + + * Fixed issue where actualSize() might return a larger value than the + requested size. + + * Fixed improper pixmap caching + + * Added QDataStream operators for QIcon. + + * Added the Selected mode. + +- QImage + + * Added support for 16 bit RGB format. + + * Added QPoint overloads to various (int x, int y) functions. + + * Added support for faster/better rotation of images by 90/180/270 + degrees. + + * convertToFormat() now supports the color lookup table. + + * Improved algorithm for smooth scaling to produce better results. + +- QImageReader + + * Ensured that size() returns an invalid QSize if the image I/O handler + does not support the QImageIOHandler::Size extension. + + * Added support for reading negative BMP images. + + * Improved handling of invalid devices. + + * Added optimizations to ensure that the most likely formats and plugins + are tested first when reading unknown image formats. + + * Improved reading of BMP images from sequential QIODevices. + + * Support for scaledSize() with JPEG images. + + * It is now possible to query the supported options of an image by + calling supportedOptions(). + + * Stability fixes for the built-in XBM reader. + +- QImageWriter + + * Ensured that an error is reported when attempting to write an image + to a non-writable device. + + * It is now possible to query the supported options of an image by + calling supportedOptions(). + +- QIODevice + + * Fixed a casting bug in QIODevice::getChar(). + + * Improved reading performance significantly by using an internal buffer + when a device is opened in buffered mode. + + * Some behavioral differences have been introduced: + + + The following functions now need to call the base implementation + when reimplemented: atEnd(), bytesAvailable(), size(), canReadLine(). + + + pos() should return the base implementation directly. + + + QIODevice now handles the device position internally. seek() should + always end up calling the base implementation. + +- QItemDelegate + + * Use a widget's USER property to set and get the editor data. + + * Removed unnecessary assertions. + + * Added the clipping property to enable clipping when painting. + + * When the model specifies a font, resolve the font over the existing + one rather than replacing it. + + * Fixed issue with rendering of selected pixmaps. + + * Ensured that QItemEditorFactory is called with the variant's + userType() so that the factory can distinguish between multiple user + types. + + * Ensured that Key_Enter is propagated to the editor before data is + committed, so that the editor has a chance to perform custom input + validation/fixup. + + * Let the line edit grow to accomodate long strings. + + * Made it easer to subclass the item delegate. + + * Added support for keypad navigation. + +- QItemSelectionModel + + * Improved overall speed, particularly when isSelected() is used. + + * Added functions for getting the selected rows or columns. + + * Ensured that the current index is updated when it is being removed. + + * Ensure that QAbstractItemView::clearSelection() only clears the + selection and not the current index. + + * Added the hasSelection() function. + + * Fixed some connection leaks (connections were not disconnected) when + an QItemSelectionModel was deleted. This should also speed up some + special cases. + +- QKeySequence + + * Added a set of platform-dependent standard shortcuts. + + * Fixed incorrect parsing of translated modifiers. + +- QLabel + + * Added support for text selection and hyperlinks. + + * Improved handling of scaled pixmaps. + + * Made handling of QMovie safer to avoid object ownership issues. + +- QLibrary + + * Added support for hints to control how libraries are opened on UNIX + systems. + + * Added errorString() to report the causes of errors when libraries + fail to load. + + * Added easier way to debug plugin loading: Setting QT_DEBUG_PLUGINS=1 + in the environment will enable debug message printing on the + console. + + * Increased the number of acceptable file name suffixes used to + recognize library files. + +- QLineEdit + + * Ensured that the Unicode context menu gets shown if language + extensions are present. + + * Ensured that editingFinished() is not emitted if a validator is set + and the text cannot be validated. + + * Ctrl+A now triggers select all on all platforms. + + * Call fixup on focusOut() if !hasAcceptableInput(). + + * Added auto-completion support with the setCompleter() function. + + * Fixed painting errors when contents margins were set. + + * Invalid text set using setText() can now be edited where previously + it had to be deleted before new text could be inserted. + + * Use SE_LineEditContents to control the contents rect of each + QLineEdit. + +- QListView + + * Added the batchSize property. + + * Don't un-hide currently hidden rows when new rows are inserted. + + * Fixed partial repainting bug that occurred when alternatingRowColors + was enabled. + + * Ensured that the resize mode is not reset in setViewMode() if it was + already set. + + * Fixed crash that occurred when the first item was hidden and + uniformItemSizes was set. + + * Added the wordWrap property for wrapping item text. + + * Allow the user to select items consecutively when shift-selecting. + + * Ensured that only the top item is selected when the user clicks on + an area with several items are stacked on top of each other. + + * Optimized hiding and showing of items. + + * Fixed issue where dragging an item in Snap mode did not respect the + scroll bar offsets. + + * Fixed issue in Snap mode where a (drag and) drop did not always + query the item that existed in the corresponding cell for an enabled + Qt::ItemIsDropEnabled flag. + +- QListWidget/QTreeWidget/QTableWidget + + * Ensured the dataChanged() signal is emitted when flags are set on an + item. + + * Removed unnecessary assertions. + + * Added more convenience functions in QListWidget, QTableWidget and + QTreeWidget for selecting, hiding, showing, expanding and collapsing + nodes. + + * Ensured that changes to items are reported. + +- QLocale + + * Fixed bug in the string-to-number functions which sometimes caused + them to fail on negative numbers which contained thousand- + separators. + + * Implemented the numberOptions property for specifying how + string-to-number and number-to-string conversions should be + performed. + +- QMainWindow + + * Added support for tabbed dock widgets. + + * Enhanced look and feel of dock widget handling. When a dock widget + hovers over a main window, the main window animates the existing + dock widgets and main area to show how it will accept the dock + widget if dropped. + + * Fixed issues related to insertToolBarBreak(). + +- QMap + + * Prevent conversion of iterator or const_iterator to bool + (e.g., if (map->find(value))), because the conversion always + returned true. Qt 4.1 code that doesn't compile because of this + change was most probably buggy. + + * Added the uniqueKeys() function. + +- QMenu + + * Added the aboutToHide() signal. + + * Added the isEmpty() accessor function. + + * Clear menuAction() when setMenu(0) + + * Added support for widgets in menus via QWidgetAction. + + * Collapse multiple consecutive separators. This can be turned off + with the collapsibleSeparators property. + + * Made scrollable menus wrap, just like non-scrollable ones. + +- QMessageBox + + * Updated the API to allow more than 3 buttons to be used. + + * Added support to display buttons in the order required by + platform-specific style guidelines. + + * Added support for display of informative text using the + informativeText property. + + * Added the detailedText property to allow detailed text to be + displayed. + + * Improved sizing of message box (especially on Mac OS X). + + * Changed the behavior so that long text strings are automatically + wrapped. + + * Updated icon handling to use QStyle::standardIcon() where possible. + +- QMetaObject + + * Added the userProperty() and normalizedType() functions. + +- QMetaType + + * Ensured that all type names are normalized before registering them. + + * Added support for handling Qt's integer typedefs: qint8, qint16, + etc. + +- QModelIndex + + * Added the flags() convenience function. + +- QMutexLocker, QReadLocker, and QWriteLocker + + * These classes now track the state of the lock they are holding. + They will not unlock on destruction if unlock() has been called. + +- QObject + + * thread() will always return a valid thread, even if the object was + created before QApplication or in a non-QThread thread. + + * When thread() returns zero, events are no longer sent to the object. + (Previous versions of Qt would send posted events to objects with no + thread; this does not happen in Qt 4.2). + + * Added support for dynamically added properties via the new + property(), setProperty(), and dynamicPropertyNames() functions. + + * Fixed a crash that could occur when a child deleted its sibling. + +- QPainter + + * Fixed a crash the occurred when drawing cosmetic lines outside the + paint device boundaries. + + * Fixed a pixel artifact issue that occurred when drawing cosmetic + diagonal lines. + + * Fixed opaque backgrounds so that they are identical on all + platforms. + + * Optimized drawing of cosmetic lines at angles between 315 and 360 + degrees. + + * Added the setRenderHints() function. + + * Fixed a memory corruption issue in drawEllipse(). + +- QPixmap + + * Fixed crash caused by setting a mask or alpha channel on a pixmap + while it was being painted. + + * Changed load() and save() to no longer require a format string. + + * Ensured that grabWidget() works before the specified widget is first + shown. + +- QPluginLoader + + * Added errorString() to report the causes of errors when plugins fail + to load. + +- QPrinter + + * Added support for PostScript as an output format on all platforms. + + * Significantly reduced the size of the generated output when using + the PostScript and PDF drivers. + + * Fixed issue where fromPage()/toPage() returned incorrect values when + generating PDF files. + + * Ensured that setOutputFormat() preserves previously set printer + properties. + + * Updated setOutputFileName() to automatically choose PostScript or + PDF as the output format for .ps or .pdf suffixes. + +- QProcess + + * Added support for channel redirection to allow data to be redirected + to files or between processes. + +- QPushButton + + * Ensured that, when a menu is added to a push button, its action is + also added to enable keyboard shortcuts. + +- QRect, QRectF, QRegion + + * Renamed unite(), intersect(), subtract(), and eor() to united(), + intersected(), subtracted(), and xored() respectively. + + * Added QRegion::intersects(QRegion) and QRegion::intersects(QRect). + + * Fixed case where rect1 & rect2 & rect3 would return a non-empty + result for disjoint rectangles. + +- QRegExp + + * Added RegExp2 syntax, providing greedy quantifiers (+, *, etc.). + + * Marks (QChar::isMark()) are now treated as word characters, + affecting the behavior of '\b', '\w', and '\W' for languages + that use diacritic marks (e.g., Arabic). + + * Fix reentrancy issue with the regexp cache. + +- QScrollArea + + * Added the ensureWidgetVisible() function to facilitate scrolling to + specific child widgets in a scroll area. + +- QScrollBar + + * Ensured that a SliderMove action is triggered when the slider value is + changed through a wheel event. + +- QSet + + * Added QSet::iterator and QMutableSetIterator. + +- QSettings + + * Store key sequences as readable entries in INI files. + + * Detect NFS to prevent hanging when lockd isn't running. + +- QShortcut + + * Added the setAutoRepeat(bool) function to disable auto-repeating + actions on keyboard shortcuts. + +- QSize + + * Fixed potential overflow issue in scale(). + +- QSlider + + * Added support for jump-to-here positioning. + +- QSortFilterProxyModel + + * Handle source model changes (e.g., data changes, item insertion + and removal) in a fine-grained manner, so that the proxy model + behaves more like a "real" model. + + * Added sortRole, filterRole and dynamicSortFilter properties. + + * Perform stable sorting of items. + + * Fixed support for drag and drop operations where one item is dropped + on top of another. + + * Ensure that persistent indexes are updated when the layout of the + source model changes. + + * Made match() respect the current sorting and filtering settings. + + * Forward mimeTypes() and supportedDropActions() calls to source + models. + + * Added the ability to filter on all the columns. + + * Added the filterChanged() function to enable custom filtering to be + implemented. + +- QSqlQuery + + * Added execBatch() for executing SQL commands in a batch. Currently + only implemented for the Oracle driver. + + * Fixed a case where executedQuery() would not return the executed + query. + +- QSqlRelationalTableModel + + * Fixed issue related to sorting a relational column when using the + PostgreSQL driver. + + * revertAll() now correctly reverts relational columns. + +- QStackedLayout + + * Fixed crash that occurred when removing widgets under certain + conditions. + +- QStackedWidget + + * Fixed crash that occurred when removing widgets under certain + conditions. + + * Fixed issue where the size hint of the current widget would not be + respected. + +- QStandardItemModel + + * Added an item-based API for use with QStandardItem. + + * Reimplemented sort(). + + * Added the sortRole property. + +- QStatusBar + + * Added the insertWidget() and insertPermanentWidget() functions. + +- QString + + * Added support for case-insensitive comparison in compare(). + + * Added toUcs4() and fromUcs4() functions. + +- QStyle + + * Added the following style hint selectors: + SH_Slider_AbsoluteSetButtons, SH_Slider_PageSetButtons, + SH_Menu_KeyboardSearch, SH_TabBar_ElideMode, SH_DialogButtonLayout, + SH_ComboBox_PopupFrameStyle, SH_MessageBox_TextInteractionFlags, + SH_DialogButtonBox_ButtonsHaveIcons, SH_SpellCheckUnderlineStyle, + SH_MessageBox_CenterButtons, SH_Menu_SelectionWrap, + SH_ItemView_MovementWithoutUpdatingSelection. + + * Added the following standard pixmap selectors: + SP_DirIcon, SP_DialogOkButton, SP_DialogCancelButton, + SP_DialogHelpButton, SP_DialogOpenButton, SP_DialogSaveButton, + SP_DialogCloseButton, SP_DialogApplyButton, SP_DialogResetButton, + SP_DialogDiscardButton, SP_DialogYesButton, SP_DialogNoButton, + SP_ArrowUp, SP_ArrowDown, SP_ArrowLeft, SP_ArrowRight, SP_ArrowBack, + SP_ArrowForward. + + * Added PE_PanelScrollAreaCorner and PE_Widget as primitive element + selectors. + + * Added PM_MessageBoxIconSize and PM_ButtonIconSize as pixel metric + selectors. + + * Added SE_LineEditContents and SE_FrameContents as sub-element + selectors. + + * Added SE_FrameContents to control the contents rectangle of a + QFrame. + +- QSvgHandler + + * Improved style sheet parsing and handling. + + * Added support for both embedded and external style sheets. + + * Improved parsing of local url() references. + + * Improved coordinate system handling. + + * Fixed issue where the viewbox dimensions would be truncated to integer + values. + + * Fixed support for gradient transformations. + + * Fixed opacity inheritance behavior. + + * Added support for gradient spreads. + + * Fixed gradient stop inheritance behavior. + + * Fixed parsing of fill and stroke properties specified in style sheets. + + * Added support for reading and writing the duration of animated SVGs. + + * Fixed incorrect rendering of SVGs that do not specify default viewboxes. + + * Fixed radial gradient rendering for the case where no focal point is + specified. + +- QSyntaxHighlighter + + * Added various performance improvements. + +- Qt namespace + + * Added ForegroundRole and BackgroundRole, allowing itemviews to use + any QBrush (not just QColor, as previously) when rendering items. + + * Added NoDockWidgetArea to the ToolBarArea enum. + + * Added NoToolBarArea to the DockWidgetArea enum. + + * Added GroupSwitchModifier to the KeyboardModifiers enum. It + represents special keys, such as the "AltGr" key found on many + keyboards. + + * Added several missing keys to the Key enum: Key_Cancel, Key_Printer, + Key_Execute, Key_Sleep, Key_Play and Key_Zoom. + + * Added OpenHandCursor and ClosedHandCursor for use with QCursor. + +- QTabBar + + * QTabBar text can now be elided; this is controlled by the elideMode + property. + + * You can now turn on or off the "scroll buttons" for the tab bar with + the usesScrollButtons property. + + * Non-pixmap based styles will now fill the background of the tab with + the palette's window role. + +- QTabletEvent: + + * Ensured that QTabletEvents are dispatched with the proper relative + coordinates. + + * Added proximity as another type of a tablet event (currently only sent + to QApplication). + +- QTableView + + * Added API for spanning cells. + + * Ensured that cells are selected when the user right clicks on them. + + * Added a corner widget. + + * Added the setSortingEnabled property. + +- QTableWidget + + * Added the clearContents() function to enable the contents of the view + to be cleared while not resetting the headers. + + * QTableWidget now uses stable sorting. + + * Allow sorting of non-numerical data. + + * Add convenience table item constructor that takes an icon as well as + a string. + +- QTabWidget + + * Added missing selected() Qt3Support signal. + + * Clarified documentation for setCornerWidget(). + + * Ensured that the tab widget's frame is drawn correctly when the tab + bar is hidden. + + * Ensured that the internal widgets have object names. + + * Added iconSize, elideMode, and usesScrollButtons as properties (see + QTabBar). + +- QTcpSocket + + * Fixed a rare data corruption problem occurring on heavily loaded + Windows servers. + +- QTemporaryFile + + * Added support for file extensions and other suffixes. + + * Fixed one constructor which could corrupt the temporary file path. + +- QTextBrowser + + * Fixed various bugs with the handling of relative URLs and custom + protocols. + + * Added isBackwardAvailable(), isForwardAvailable(), and + clearHistory() functions. + +- QTextCodec + + * Allow locale-dependent features of Qt, such as QFile::exists(), to + be accessed during global destruction. + +- QTextCursor + + * Added columnNumber(), blockNumber(), and insertHtml() convenience + functions. + +- QTextDocument + + * Added convenience properties and functions: textWidth, idealWidth(), + size, adjustSize(), drawContents(), blockCount, maximumBlockCount. + + * Added support for forced page breaks before/after paragraphs and + tables. + + * Added CSS support to the HTML importer, including support for + CSS selectors. + + * Added defaultStyleSheet property that is applied automatically for + every HTML import. + + * Improved performance when importing HTML, especially with tables. + + * Improved pagination of tables across page boundaries. + +- QTextEdit + + * Fixed append() to use the current character format. + + * Changed mergeCurrentCharFormat() to behave in the same way as + QTextCursor::mergeCharFormat, without applying the format to the + word under the cursor. + + * QTextEdit now ensures that the cursor is visible the first time the + widget is shown or when replacing the contents entirely with + setPlainText() or setHtml(). + + * Fixed issue where the setPlainText() discarded the current character + format after the new text had been added to the document. + + * Re-added setText() as non-compatibility function with well-defined + heuristics. + + * Added a moveCursor() convenience function. + + * Changed the default margin from 4 to 2 pixels for consistency with + QLineEdit. + + * Added support for extra selections. + +- QTextFormat + + * Fixed the default value for QTextBlockFormat::alignment() to return + a logical left alignment instead of an invalid alignment. + + * Added UnderlineStyle formatting, including SpellCheckUnderline. + +- QTextStream + + * Added the pos() function, which returns the current byte-position + of the stream. + +- QTextTableCell + + * Added the setFormat() function to enable the cell's character format + to be changed. + +- QThread + + * Related to changes to QObject, currentThread() always returns a + valid pointer. (Previous versions of Qt would return zero if called + from non-QThread threads; this does not happen in Qt 4.2). + +- QToolBar + + * Introduced various fixes to better support tool buttons, button + groups and comboboxes in the toolbar extension menu. + + * Fixed crash that occurred when QApplication::setStyle() was called + twice. + +- QToolButton + + * Fixed an alignment bug for tool buttons with multi-line labels and + TextUnderIcon style. + +- QToolTip + + * Added the hideText() convenience function. + + * Added the showText() function that takes a QRect argument specifying + the valid area for the tooltip. (If you move the cursor outside this + area the tooltip will hide.) + + * Added a widget attribute to show tooltips for inactive windows. + +- QTranslator + + * Added support for plural forms through a new QObject::tr() overload. + + * Ensured that a LanguageChange event is not generated if the + translator fails to load. + + * Fixed a bug in isEmpty(). + + * Added Q_DECLARE_TR_FUNCTIONS() as a means for declaring tr() + functions in non-QObject classes. + +- QTreeView + + * Ensured that no action is taken when the root index passed to + setRootIndex() is the same as the current root index. + + * When hiding items the view no longer performs a complete re-layout. + + * Fixed possible segfault in isRowHidden(). + + * Significantly speed up isRowHidden() for the common case. + + * Improved row painting performance. + + * After expanding, fetchMore() is called on the expanded index giving + the model a way to dynamically populate the children. + + * Fixed issue where an item could expand when all children were + hidden. + + * Added support for horizontal scrolling using the left/right arrow + keys. + + * Added a property to enable the focus rectangle in a tree view to be + shown over all columns. + + * Added more key bindings for expanding and collapsing the nodes. + + * Added the expandAll() and collapseAll() slots. + + * Added animations for expanding and collapsing branches. + + * Take all rows into account when computing the size hint for a + column. + + * Added the setSortingEnabled property. + + * Fixed the behavior of the scrollbars so that they no longer + disappear after removing and re-inserting items while the view is + hidden. + + * Fixed memory corruption that could occur when inserting and removing + rows. + + * Don't draw branches for hidden rows. + +- QTreeWidget + + * Added the const indexOfTopLevelItem() function. + + * Improved item insertion speed. + + * Fixed crash caused by calling QTreeWidgetItem::setData() with a + negative number. + + * QTreeWidget now uses stable sorting. + + * Made construction of single column items a bit more convenient. + + * Added the invisibleRootItem() function. + + * Made addTopLevelItems() add items in correct (not reverse) order. + + * Ensured that the header is repainted immediately when the header + data changes. + +- QUiLoader + + * Exposed workingDirectory() and setWorkingDirectory() from + QAbstractFormBuilder to assist with run-time form loading. + +- QUrl + + * Added errorString() to improve error reporting. + + * Added hasQuery() and hasFragment() functions. + + * Correctly parse '+' when calling queryItems(). + + * Correctly parse the authority when calling setAuthority(). + + * Added missing implementation of StripTrailingSlash in toEncoded(). + +- QVariant + + * Added support for all QMetaType types. + + * Added support for QMatrix as a known meta-type. + + * Added support for conversions from QBrush to QColor and QPixmap, + and from QColor and QPixmap to QBrush. + + * Added support for conversions between QSize and QSizeF, between + QLine and QLineF, from long long to char, and from unsigned long + long to char. + + * Added support for conversions from QPointF to QPoint and from QRectF + to QRect. + + * Fixed issue where QVariant(Qt::blue) would not create a variant of + type QVariant::Color. + + * Added support for conversions from int, unsigned int, long long, + unsigned long long, and double to QByteArray. + +- QWhatsThis + + * Improved look and feel. + +- QWidget + + * Delayed creation: Window system resources are no longer allocated in + the QWidget constructor, but later on demand. + + * Added a styleSheet property to set/read the widget style sheet. + + * Added saveGeometry() and restoreGeometry() convenience functions for + saving and restoring a window's geometry. + + * Fixed memory leak for Qt::WA_PaintOnScreen widgets with null paint + engines. + + * Ensured that widget styles propagate to child widgets. + + * Reduced flicker when adding widget to layout with visible parent. + + * Fixed child visibility when calling setLayout() on a visible widget. + + * Speed up creation/destruction/showing of widgets with many children. + + * Avoid painting obscured widgets when updating overlapping widgets. + +- QWorkspace + + * Resolved issue causing the maximized controls to overlap with the + menu in reverse mode. + + * Fixed issue where child windows could grow a few pixels when + restoring geometry in certain styles. + + * Ensured that right-to-left layout is respected when positioning new + windows. + + * Fixed crash that occurred when a child widget did not have a title + bar. + + * Fixed issue where maximized child windows could be clipped at the + bottom of the workspace. + +- quintptr and qptrdiff + + * New integral typedefs have been added. + +- Q3ButtonGroup + + * Fixed inconsistencies with respect to exclusiveness of elements in + Qt 3. + + * Fixed ID management to be consistent with Qt 3. + +- Q3Canvas + + * Fixed several clipping bugs introduced in 4.1.0. + +- Q3CanvasView + + * Calling setCanvas() now always triggers a full update. + +- Q3Grid, Q3Hbox, Q3VBox + + * Fixed layout problem. + +- Q3IconView + + * Fixed a case where selected icons disappeared. + +- Q3ListBox + + * Fixed inconsistencies in selectAll() with respect to Qt 3. + + * Fixed possible crash after deleting items. + +- Q3ListView + + Fixed possible crash in Q3ListView after calling clear(). + + Fixed inconsistent drag and drop behavior with respect to Qt 3. + +- Q3Process + + * Stability fixes in start(). + +- Q3Socket + + * No longer (incorrectly) reports itself as non-sequential. + +- Q3Table + + * Improved behavior for combobox table elements. + + + +**************************************************************************** +* Database Drivers * +**************************************************************************** + +- Interbase driver + + * Fixed data truncation for 64 bit integers on 64 bit operating + systems. + +- MySQL driver + + * When using MySQL 5.0.7 or larger, let the server do the text + encoding conversion. + + * Added UNIX_SOCKET connection option. + + * Improved handling of TEXT fields. + +- OCI driver + + * Improved speed for meta-data retrieval. + + * Fixed potential crash on Windows with string OUT parameters. + + * Improved handling of mixed-case table and field names. + +- ODBC driver + + * Improved error reporting if driver doesn't support static result + sets. + + * Improved support for the Sybase ODBC driver. + +- SQLite driver + + * QSqlDatabase::tables() now also returns temporary tables. + + * Improved handling of mixed-case field names. + + + +**************************************************************************** +* QTestLib * +**************************************************************************** + +- Added "-silent" options that outputs only test failures and warnings. + +- Reset failure count when re-executing a test object + +- Added nicer output for QRectF, QSizeF, and QPointF + + + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + + +Qtopia Core +----------- + +- Fixed the -exceptions configure switch. + +- Fixed a build issue preventing the use of MMX instructions when + available. + +- Fixed leak of semaphore arrays during an application crash. + +- Fixed cases where the wrong cursor was shown. + +- Fixed cases where QWidget::normalGeometry() would return wrong value. + +- Allow widgets inside QScrollArea to have a minimum size larger than the + screen size. + +- Allow (0,0) as a valid size for top-level windows. + +- VNC driver + + * Fixed keyboard shortcut problem when using the VNC driver. + + * Fixed issue with the VNC driver that prevented client applications to + connect in some cases. + + * Fixed a leak of shared memory segments in the VNC driver. + + * Reduced CPU consumption in the VNC driver. + + * Implemented dynamic selection of the underlying driver for the VNC and + transformed screen drivers. + + * Improved error handling when clients connects to the server. + +- Graphics system + + * Introduced new API for accelerated graphics hardware drivers. + + * Implemented support for multiple screens. + + * QScreen has binary incompatible changes. All existing screen drivers + must be recompiled. + + * QWSWindow, QWSClient, QWSDisplay and QWSEvent have binary + incompatible changes. QWSBackingStore has been removed. + Existing code using these classes must be recompiled. + + * Added support for OpenGL ES in QGLWidget. + + * Implemented support for actual screen resolution in QFont. + + * Removed internal limitation of 10 display servers. + + * Improved memory usage when using screens with depths less than 16 + bits-per-pixel. + + * Fixed 16 bits-per-pixel screens on big-endian CPUs. + + * Optimized CPU usage when widgets are partially hidden. + + * Improved detection of 18 bits-per-pixel framebuffers. + + * Improved performance when using a rotated screen with 18 or 24 + bits-per-pixel depths. + + * Improved speed of drawing gradients. + + * Introduced the QWSWindowSurface as a technique to create + accelerated paint engines derived from QPaintEngine. + + * Implemented the Qt::WA_PaintOnScreen flag for top-level widgets. + + * Extended QDirectPainter to include non-blocking API and support for + overlapping windows. Existing code that subclasses QDirectPainter + must be recompiled. + + * Implemented QWSEmbedWidget which enables window embedding. + + * Removed hardcoded 72 DPI display limitation. + +- Device handling + + * QWSMouseHandler has binary incompatible changes. All existing mouse + drivers must be recompiled. + + * Fixed an issue of getting delayed mouse events when using the + vr41xx driver. + + * Improved event compression in the vr41xx mouse handler. + + * Improved algorithm for mouse calibration which works for all + screen orientations. + + * Fixed an issue causing mouse release events with wrong positions + when using a calibrated and filtered mouse handler on a rotated + screen. + + * Made the tty device configurable for the Linux framebuffer screen + driver. + + * Fixed a deadlock issue when using drag and drop and a calibrated + mouse handler. + + * Autodetection of serial mice is turned off to avoid disrupt serial + port communication. Set QWS_MOUSE_PROTO to use a serial mouse. + +- QVFb + + * Fixed an issue preventing QVFb from starting on some systems. + + * Added support for dual screen device emulation in QVFb. + +- QCopChannel + + * Added a flush() function so that the QWS socket can be flushed, + enabling applications to ensure that QCop messages are delivered. + + +Linux and UNIX systems +---------------------- + +- Printing + + * Improved CUPS support by sending PDF instead of Postscript to + CUPS on systems that have a recent CUPS library, improving the + print quality. + + * Added a new and improved QPrintDialog. + + * Improved font embedding on systems without FontConfig. + +- QApplication + + * When available, use Glib's mainloop functions to implement event + dispatching. + +- QPlastiqueStyle + + * Added support to enable KDE icons to be automatically used on + systems where they are available. + +- QTextCodec + + * Uses iconv(3) (when available) to implement the codec returned by + QTextCodec::codecForLocale(). The new codec's name is "System" + (i.e., QTextCodec::codecForLocale()->name() returns "System" + when iconv(3) support is enabled). + + +AIX +--- + +- The makeC++SharedLib tool is deprecated; use the "-qmkshrobj" compiler + option to generate shared libraries instead. + + +X11 +--- + +- Added support to internally detect the current desktop environment. + +- QAbstractItemView + + * Fixed assertion caused by interrupting a drag and drop operation + with a modal dialog on X11. + + * Ensured that release events dispatched when closing a dialog + with a double click, are not propagated through to the window + underneath. + +- QCursor + + * Fixed crash occuring when the X11 context had been released before + the cursor was destructed. + +- QGLWidget + + * Fixed crashes that could occur with TightVNC. + + * Improved interaction between QGLWidget and the Mesa library. + +- QMenu + + * Made it possible for popup menus to cover the task bar on KDE. + +- QMotifStyle + + * Ensured that the font set on a menu item is respected. + +- QX11EmbedContainer, QX11EmbedWidget + + * Added missing error() functions. + +- QX11PaintEngine + + * Increased speed when drawing polygons with a solid pixmap brush. + + * Fixed masked pixmap brushes. + + * Increased QImage drawing performance. + +- Motif Drop support + + * Support for drops from Motif applications has been refactored and is + now working properly. QMimeData reports non-textual data offered in + Motif Drops using a MIME type of the form "x-motif-dnd/ATOM", where + ATOM is the name of the Atom offered by the Motif application. + +- Font rendering + + * Improved stability when rendering huge scaled fonts. + + * Enabled OpenType shaping for the Latin, Cyrillic, and Greek + writing systems. + + * Improved sub-pixel anti-aliasing. + + * Improved font loading speed. + + +Mac OS X +-------- + +- Mac OS 10.2 support dropped. + +- QuickDraw support in QPaintEngine dropped; everything folded into the + CoreGraphics support. + +- All libraries in Qt are now built as frameworks when -framework mode is + selected (default) during the configuration process. + +- Many accessibility improvements, including better VoiceOver support. The + following widgets have had their accessibilty updated for this release: + QSplitter, QScrollBar, QLabel, QCheckBox, QRadioButton, QTabBar, + QTabWidget, QSlider, and QScrollBar. + +- Hidden files are now reported as hidden by QFileInfo, QDirModel, etc. + +- Windows now have a transparent size grips, an attribute for specifying an + opaque size grip was added. + +- Metrowerks generator has been removed. + +- Ensured that the anti-aliasing threshold setting is followed. + +- Added a standard "Minimize" menu item to Assistant's Window menu. + +- The documentation now has "Xcode-compatible" links so that it can be added + into Xcode's documentation viewer. This needs to be done by the developer + as regenerating Xcode's index takes quite a long time + +- QAbstractScrollArea + + * Improved look and feel by aligning the scroll bars with the size + grip. + +- QClipboard + + * Data copied to the clipboard now stays available after the + application exits. + + * Added support for the Find clipboard buffer. + + * Fixed encoding of URLs passed as MIME-encoded data. + +- QComboBox + + * Improved the popup sizing so it's always wide enough to display its + contents. + + * Improved the popup placement so it stays on screen and does not + overlap the Dock. + + * The minimumSizeHint() and sizeHint() functions now honor + minimumContentsLength. + +- QKeyEvent + + * The text() of a QKeyEvent is filled with the control character if + the user pressed the real Control key (Meta in Qt) and another key. + This brings the behavior of Qt on Mac OS X more in line with Qt on + other platforms. + +- QLibrary + + * Removed the dependency on dlcompat for library loading and resolving + in favor of native calls. This means that you can unload libraries + on Mac OS X 10.4 or later, but not on 10.3 (since that uses dlcompat + itself). + +- QMacStyle + + * QMacStyle only uses HITheme for drawing now (no use of Appearance + Manager). + + * Fixed placement of text on buttons and group boxes for non-Latin + locales. + + * Fixed rendering of small and mini buttons. + + * Attempt to be a bit smarter before changing a push button to bevel + button when the size gets too small. + + * Draws the focus ring for line edits when they are near the "top" of + the widget hierarchy. + + * Ensured that the tickmarks are drawn correctly. + + * Implemented the standardIconImplementation() function. + + * Fixed the look of line edits. + + * "Colorless" controls now look better. + + * Fixed the sort indicator. + + * Improved the look of text controls, such as QTextEdit, to fit in + better with the native style. + +- QMenu + + * Popups no longer show up in Expose. + + * Ensured that the proper PageUp and PageDown behavior are used. + +- QMenuBar + + * Added support for explicit merging of items using QAction::MenuRole. + + * Added support for localization of merged items. + +- QMessageBox + + * A message box that is set to be window modal will automatically + become a sheet. + + * Improved the look of the icons used to fit in with the native style. + +- QPainter + + * Fixed off-by-one error when drawing certain primitives. + + * Fixed off-by-many error when drawing certain primitives using a + scaling matrix. + + * Fixed clipping so that setting an empty clip will clip away + everything. + + * Fixed changing between custom dash patterns. + + * Added combinedMatrix() which contains both world and viewport/window + transformations. + + * Added the setOpacity() function. + + * Added MiterJoins that are compliant with SVG miter joins. + +- QPainterPath + + * Added the arcMoveTo() and setElementPosition() functions. + +- QPixmap + + * Added functions to convert to/from a CGImageRef (for CoreGraphics + interoperability). + + * Fixed various Qt/Mac masking and alpha transparency issues. + +- QPrinter + + * Made QPrinter objects resuable. + +- QProcess + + * Always use UTF-8 encoding when passing commands. + +- QScrollBar + + * Improved handling of the case where the scrollbar is to short to + draw all its controls. + +- QTextEdit + + * Improved the look of the widget to fit in with the native style. + +- QWidget + + * All HIViewRefs inside Qt/Mac are created with the + kWindowStandardHandlerAttribute. + + * Added the ability to wrap a native HIViewRef with create(). + + * Windows that have parents with the WindowStaysOnTopHint also get the + WindowStaysOnTopHint. + + +Windows +------- + +- Ensured that widgets do not show themselves in a hover state if a popup + has focus. + +- Fixed issues with rendering system icons on 16 bits-per-pixel displays. + +- Fixed issue where fonts or colors would be reset on the application + whenever windows produced a WM_SETTINGSCHANGE event. + +- Fixed a bug with Japanese input methods. + +- Compile SQLite SQL plugin by default, as on all the other platforms. + +- Fixed build issue when not using Precompiled Headers (PCH). + +- Made Visual Studio compilers older than 2005 handle (NULL == p) + statements, where p is of QPointer type. + +- Fixed HDC leak that could cause applications to slow down significantly. + +- Ensured that timers with the same ID are not skipped if they go to different + HWNDs. + +- Improved MIME data handling + + * Resolved an issue related to drag and drop of attachments from some + applications. + + * Resolved an issue where pasting HTML into some applications would + include parts of the clipboard header. + + * Improved support for drag and drop of Unicode text. + + * Made it possible to set an arbitrary hotspot on the drag cursor on + Windows 98/Me. + +- ActiveQt + + * Fixed issues with the compilation of code generated by dumpcpp. + + * Made ActiveQt controls behave better when inserted into Office + applications. + + * Ensured that slots and properties are generated for hidden functions and + classes. + + * Ensured that the quitOnLastWindowClosed property is disabled when + QApplication runs an ActiveX server. + + * Ensured that controls become active when the user clicks into a subwidget. + + * Added support for CoClassAlias class information to give COM class a + different name than the C++ class. + +- QAccessible + + * Ensured that the application does not try to play a sound for + accessibility updates when no sound is registered. + +- QAxBase + + * Fixed potential issue with undefined types. + +- QDir + + * Fixed bug where exists() would return true for a non-existent drive + simply because the specified string used the correct syntax. + + * Improved homePath() to work with Japanese user names. + +- QFileDialog + + * Added support for relative file paths in native dialogs. + + * Enabled setLabelText() to allow context menu entries to be changed. + + * Ensured that users are denied entry into directories where they + don't have execution permission. + + * Disabled renaming and deleting actions for non-editable items. + + * Added a message box asking the user to confirm when deleting files. + +- QFileInfo + + * Fixed absoluteFilePath() to return a path that begins with the + current drive label. + +- QGLWidget + + * Fixed usage of GL/WGL extension function pointers. They are now + correctly resolved within the context in which they are used. + +- QGLColormap + + * Fixed cases where the colormap was not applied correctly. + +- QMenu + + * Made it possible for popup menus to cover the task bar. + +- QPrinter + + * Added support for printers that do not have a DEVMODE. + + * Fixed a drawing bug in the PDF generator on Windows 98/Me. + + * Made it possible to programmatically change the number of copies + to be printed. + + * Fixed possible crash when accessing non-existent printers. + +- QProcess + + * Fixed lock-up when writing data to a dead child process. + +- QSettings + + * Fixed bug causing byte arrays to be incorrectly stored on + Win95/98/Me. + + * Allow keys to contain HKEY_CLASSES_ROOT and HKEY_USERS to allow all + registry keys to be read and prevent unintentional use of + HKEY_LOCAL_MACHINE. + + * Fall back to the local machine handle if a key does not start with a + handle name. + +- QUdpSocket + + * Introduced fixes for UDP broadcasting on Windows. + +- QWhatsThis + + * Improved native appearance. + +- QWidget + + * Top-level widgets now respect the closestAcceptableSize of their + layouts. + + * Ensured that getDC() always returns a valid HDC. + +- QWindowsStyle + + * We no longer draw splitter handles in Windows style. This resolves + an inconsistency with XP style, so that the two styles can use the + same layout interchangeably. Note that it is fully possible to style + splitter handles (if a custom style or handle is required) using + style sheets. + + * Disabled comboboxes now have the same background color as disabled + line edits. + +- QWindowsXPStyle + + * Made QPushButton look more native when pressed. + + * Improved the look of checked tool buttons. + + * Defined several values that are not present in MinGW's header files. + + + +**************************************************************************** +* Significant Documentation Changes * +**************************************************************************** + + +- Updated information about the mailing list to be used for porting issues + (qt-interest). + +- Demos / Examples + + * Added a new directory containing desktop examples and moved the + Screenshot example into it. + + * Added a new Chat client network example which uses QUdpSocket to + broadcast on all QNetworkInterface's interfaces to discover its + peers. + + * The Spreadsheet demo now uses the QItemDelegate, QCompleter, and + QDateTimeEdit with calendar popup. + + * An OpenGL button is added to some of the demos to toggle usage of + the OpenGL paint engine. + + * Fixed crash resulting from incorrect painter usage in the Image + Composition example + + + +**************************************************************************** +* Tools * +**************************************************************************** + + +Assistant +--------- + +- Middle clicking on links will open up new tabs. + +- Added "Find as you type" feature to search documentation pages. + +- Added "Sync with Table of Contents" feature to select the current page in + the contents. + +- Fixed issue where activating a context menu over a link would cause the + link to be activated. + +- Provides a default window title when not specified in a profile. + +- Fixed JPEG viewing support for static builds. + +- Fixed crash that could occur when opening Assistant with old and invalid + settings. + +- Fixed display of Unicode text in the About dialog. + + +Designer +-------- + +- Added QWidget and the new widgets in this release to Designer's widget + box. + +- Updated the dialog templates to use the new QDialogButtonBox class. + +- Backup files created by Designer no longer overwrite existing files. + +- Promoted widgets inherit the task menu items of the base class. + +- Enums are no longer ordered alphabetically in the property editor. + +- Fixed issue where shortcuts could be corrupted in certain situations. + +- Line endings in .ui files now match the standard line endings for the + platform the files are created on. + +- Ensured that a warning is displayed whenever duplicate connections are + made in the connections editor. + +- Added shortcuts for the "Bring to Front" and "Send to Back" form editor + actions. + +- Added new 22 x 22 icons. + +- Fixed selection of dock widgets in loaded forms. + +- Made QWidget::windowOpacity a designable property. + +- Numerous improvements and fixes to the action and property editors. + +- Windows only + + * The default mode is Docked Window. + +- Mac OS X only + + * Preview of widgets is no longer modal. + + * Passing really long relative paths into the resource will no longer + cause a crash. + + +Linguist +-------- + +- Added a new "Check for place markers" validation feature. + +- Added the "Search And Translate" feature. + +- Added the "Batch translation" feature. + +- Added support for editing plural forms. + +- Extended the .ts file format to support target language, plural forms, + source filename, and line numbers. + +- Added the "Translated Form Preview" feature. + +- Added placeholders for "hidden" whitespace (i.e., tabs and newlines) in + the translation editor. + + +lupdate +------- + +- Added the -extensions command-line option in order to recursively scan + through a large set of files with the specified extensions. + +- Made lupdate verbose by default (use -silent to obtain the old behavior). + +- Improved parsing of project files. + +- Fixed some issues related to parsing C++ source files. + + +lrelease +-------- + +- Made lrelease verbose by default (use -silent to obtain the old behavior). + +- Disabled .qm file compression by default (pass -compress to obtain the old + behavior). + + +moc +--- + +- Fixed support for enums and flags defined in classes that are themselves + declared in namespaces. + +- Added support for the -version and -help command line options (for + consistency with the other tools). + + +rcc +--- + +- Added support for the -binary option to generate resources that are + registered at run-time. + + +qmake +----- + +- Added support for an Objective C compiler on platforms that support it via + OBJECTIVE_SOURCES. Additionally, Objective C precompiled headers are + generated as necessary. + +- Added support for a qt.conf to allow easy changing of internal target + directories in qmake. + +- Added support for the recursive switch (-r) in shadow builds. + +- Introduced QMAKE_CFLAGS_STATIC_LIB to allow modified flags to be + passed to temporary files when compiling a static library. + +- Added a target.targets for extra qmake INSTALLS. The $files() function + is now completely consistent with wildcard matching as specified to + input file variables. + +- Added QMAKE_FUNC_* variables to EXTRA_COMPILERS for late evaluation + of paths to be calculated at generation time. $$fromfile() will no + longer parse input file multiple times. + +- Added support for -F arguments in LIBS line in the Xcode generator. + +- $$quote() has changed to only do an explicit quote, no escape sequences + are expanded. A new function $$escape_expand() has been added to allow + expansion of escape sequences: \n, \t, etc. + +- Added a $$QMAKE_HOST variable to express host information about the + machine running qmake. + +- Added a $$replace() function. + +- Ensured that PWD is always consulted first when attempting to resolve an + include for dependency analysis. + +- Added support for UTF-8 encoded text in .pro files. + +- Variables $$_PRO_FILE_ and $$_PRO_FILE_PWD_ added for features to detect + where the .pro really lives. + +- Added QMAKE_FRAMEWORK_VERSION to override the version inside a .framework, + though VERSION is still the default value. + +- Added support for custom bundle types on Mac OS X. + +- Added support for Mac OS X resources (.rsrc) in REZ_FILES. + + +qt3to4 +------ + +- qt3to4 now appends to the log file instead of overwriting it. + +- Fixed one case where qt3to4 was inserting UNIX-style line endings on + Windows. + +- Added the new Q3VGroupBox and Q3HGroupBox classes to ease porting. + +- Updated the porting rules for this release. + + +uic +--- + +- Added support for more variant types: QStringList, QRectF, QSizeF, + QPointF, QUrl, QChar, qlonglong, and qulonglong. + +- Fixed code generated by uic for retranslating item view widgets so that + the widgets are not cleared when they are retranslated. + +- Ensured that no code is generated to translate empty strings. + + +uic3 +---- + +- Added line numbers to warnings. + +- Ensured that warnings show the objectName of the widget in question. + +- Added support for word wrapping in labels when converting files from uic3 + format. + +- Ensured that the default layouts are respected when converting files from + uic3 format. + +- Ensured that double type properties are handled correctly. diff --git a/dist/changes-4.2.0-tp1 b/dist/changes-4.2.0-tp1 new file mode 100644 index 0000000000..b2a994d6c3 --- /dev/null +++ b/dist/changes-4.2.0-tp1 @@ -0,0 +1,20 @@ +Qt 4.2 introduces many new features as well as many improvements and +bugfixes over the 4.1.x series. For more details, see the online +documentation which is included in this distribution. The +documentation is also available at http://doc.trolltech.com/ + +The Qt version 4.2 series is binary compatible with the 4.1.x series. +Applications compiled for 4.0 or 4.1 will continue to run with 4.2. + +**************************************************************************** +* General * +**************************************************************************** + +Qt 4.2 contains a lot of changes, which will be fully documented in the +final release. + +For this tech preview, please concentrate on the new features and provide +feedback on the qt4-preview-feedback mailing list (see +http://lists.trolltech.com/ for details) + + diff --git a/dist/changes-4.2.1 b/dist/changes-4.2.1 new file mode 100644 index 0000000000..5cbcc2ca73 --- /dev/null +++ b/dist/changes-4.2.1 @@ -0,0 +1,14 @@ +Qt 4.2.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.2.0. + +The Qt version 4.2 series is binary compatible with the 4.1.x and 4.0.x series. +Applications compiled for 4.0 or 4.1 will continue to run with 4.2. + +**************************************************************************** +* General * +**************************************************************************** + +- QImage + Fixed a potential security issue which could arise when transforming + images from untrusted sources. + diff --git a/dist/changes-4.2.2 b/dist/changes-4.2.2 new file mode 100644 index 0000000000..25131a1a77 --- /dev/null +++ b/dist/changes-4.2.2 @@ -0,0 +1,827 @@ +Qt 4.2.2 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.2.0. + +The Qt version 4.2 series is binary compatible with the 4.1.x and 4.0.x +series. Applications compiled for 4.0 or 4.1 will continue to run with 4.2. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Configuration/Compilation + + * Fixed issues with unresolved zlib symbols on aix-g++ resulting from a + missing "-lz" in gui/Makefile. + + * Fixed compilation when an unsupported version of MySQL is auto-detected + by the configure script. + + * Fixed QtDBus linking errors when compiling with the Intel C++ Compiler + for Linux. + + * Fixed compilation when using Q_ARG and Q_RETURN_ARG macros with template + types. + + * Make Qt compile with QT_NO_TOOLTIP and QT_NO_STATUSBAR + +- Documentation + + * Added new overviews and substantially improved Qtopia Core-specific + documentation. + +- Demos / Examples + + * Fixed crash in the Settings Editor example resulting from entering + certain input to a QTreeWidget using QLineEdit as an inline editor. + + * Fixed crash in the Ported Canvas example that occurred when creating a + new canvas from one that was shrunk to its minimum size. + +- I/O + + * Fixed divide by zero when loading malformed BMP files. + +- Qt Assistant + + * Fixed a bug that prevented the view from scrolling to anchors within + pages. + +- Qt Designer + + * Fixed crash that could occur when pasting a QGridLayout into a + QTabWidget. + + * Fixed the signals & slots connection editor to automatically scroll to + the correct items. + + * Fixed blocking behavior that would occur when previewing modal forms. + + * Made OK the default button in the "Promote to Custom Widget" dialog. + + * Ensured that main window forms that include size grips are repainted + correctly when they are resized. + + * Fixed bug in Form Settings dialog - it wasn't possible to reset the + "Pixmap Function" field. + +- Qt Linguist + + * Fixed bug where lupdate would leave out the namespace part of the context. + + * Fixed bug in lupdate where the paths of the generated ts files was not + relative to the pro file. + + * Fixed bug in lupdate that caused strings that contained \r\n were not + translated. + + * Improved the user interface with some minor layout changes. + + * Improved handling of forms without layouts. + + * Fixed crash caused by navigating to the previous node when the current + node was the first and topmost node. + + * Fixed bug in the preview translation feature where forms that did not + have any layout got a height of 0. + + * Fixed bug where "Search and Translate" did not trigger a repaint on the + items that got translated, leading people to believe that + "Search and Translate" did not work. + + * Fixed a layout problem with the "Search and Translate" dialog. + +- qmake + + * Fixed crash that could occur when using the LIB_PATH variable if a .libs + directory is located on one of the paths held by the variable. + + * Improved generation of Xcode projects to avoid problems with qmake + project files that contain certain Qt-dependent declarations. + + * Improved support for Objective C sources in the Xcode project generator + to ensure that they are added to the project's target. + + +Third party components +---------------------- + +- libpng + + * Security fix (CVE-2006-5793): The sPLT chunk handling code + uses a sizeof operator on the wrong data type, which allows + context-dependent attackers to cause a denial of service (crash) + via malformed sPLT chunks that trigger an out-of-bounds read. + + * Security fix: Avoid profile larger than iCCP chunk. + One might crash a decoder by putting a larger profile inside the + iCCP profile than is actually expected. + + * Security fix: Avoid null dereference. + + * Disabled MMX assembler code for Intel-Mac platforms to work + around a compiler bug. + + +**************************************************************************** +* Library * +**************************************************************************** + +General improvements +-------------------- + +- Accessibility + + * Fixed a potential assert when navigating menus while assistive tools are + running. + + * Fixed a crash when getting accessibility information from an item view + without a model. + + * Fixed item view accessibility bug where QAccessibleInterface::text() + would return an empty string for child indexes larger + than one. + +- Item views + + * Fixed QHeaderView and QTableView overflow issues when the length + of all the rows or columns went over the maximum allowed integer value. + + * When reset is emitted by a QAbstractItemModel, QHeaderView will now + always update the header count(). + + * Fixed incorrect scrolling in QHeaderView when items are hidden. + + * Fixed bug where QHeaderView would disappear if the sections were moved + and the model was reset. + + * QDataWidgetMapper::mappedWidgetAt() now always returns the right + mapped index for a widget no matter in which order they were inserted + + * Fixed crash due to incorrect update of persistent model indexes in + QSortFilterProxyModel::layoutChanged(). + + * Fixed bug that could cause QSortFilterProxyModel::removeRows() and + QSortFilterProxyModel::removeColumns() to remove the wrong source model + items. + + * Fixed bug in QSortFilterProxyModel that caused stale proxy mappings to + remain when source model items were removed and later reinserted, + resulting in an incorrect proxy model. + + * Fixed bug in QSortFilterProxyModel that caused items to not appear + in a QTreeView when adding children to a formerly childless source item. + + * Fixed painting bug for spanning cells in QTableView when the item + background is transparent. + + * Fixed regression in QListWidget and QTreeWidget that caused persistent + indexes to not be updated when sorting items. + + * Enter key can now be used to start item editing when the edit trigger + is AnyKeyPressed. + + * Fixed regression where QAbstractItemView::setRootIndex() wasn't + always updating the view, causing possibly painting errors. + + * Fixed regression that caused incorrect propagation of Enter key press + from a QAbstractItemView in editing mode. + + * Date and time editors are now initialized correctly with the current + date and time. + + * QTableView tab focus handling has been improved. Although tab key + navigation is enabled by default, you can tab out of a view if the + model is either missing or unable to handle the key (e.g., an empty + model). + + * Fixed bug in QItemDelegate that would scale decoration pixmaps. + + * Fixed buge that would not let the column delegate create the editor + for an edited item. + + * Fixed bug where the QTableCornerButton would ignore the view + selectionMode. + + * Fixed compatibility issue with QTreeWidgetItem serialization + between Qt 4.2.x and Qt 4.(0/1).x. + + * Made sure the QTableWidget::cellEntered() signal is emitted + correctly. + + * Made sure that commitData() uses the row/column delegate + when these are set. + + * Fixed incorrect QTableView scrollbar ranges when rows were hidden. + + * Fixed QItemDelegate to let text be bottom aligned. + +- Graphics View + + * The background cache in QGraphicsView is now properly initialized to + the full viewport. + + * Fixed incorrect cursor updates when moving between items. + + * QGraphicsItem::setMatrix() now properly clears the original item before + repainting. + + * QGraphicsEllipseItem is now only drawn as a full ellipse at angles that + are multiples of 360 degrees (..., -720, -360, 360, 720, ...). + + * Fixed a crash when selecting one selectable item, then moving another + movable item. + + * Fixed a crash during item construction caused by a pure virtual function + call in QGraphicsItem. + + * Fixed mouse grabber book-keeping problems in QGraphicsScene which fell out + of sync when opening modal dialogs or popups from within a mouse event + handlers. + + * QGraphicsScene now forwards unhandled events to QObject, allowing the use + of timers in QGraphicsScene subclasses. + +- Meta-Object Compiler (moc) + + * Split long string literals in the generated code to work around + limitations in MSVC. + + * Fixed crash on *BSD that could occur on invalid input. + +- Painting + + * Improved numerical stability in the path stroker, fixing a crash when + stroking paths containing curve segments whose control points are + approximately on the same line. + + * Fixed raster paint engine memory corruption in QBitmap when source buffer + was smaller than the destination buffer. + + * Avoid rounding errors when drawing parts of a pixmap using the Quartz 2D + engine. + + * Added caching of QGradient's color table for the raster paint engine. + This means that if a gradient with the same stops and colors is used + again, it will be quickly fetched from the cache, avoiding the + expensive calculations of the color lookup table. + + * Fixed a crash on Windows and with QImage caused by specifying + Qt::CustomDashLine without an actual pattern. + + * Fixed a bug in the raster paint engine which would occasionally cause + pixel errors when drawing polygons. + + * Fixed memory corruption in the OpenGL paint engine when drawing complex + polygons with a cosmetic pen. + + * Fixed rendering of transformed brushes when drawing linear gradients + with the OpenGL paint engine where the transformations used were not + angle-preserving. + + * Improved handling of OpenGL errors. + + * Fixed bug in the raster paint engine where extra lines would be drawn + when drawing a path partially outside the viewport using a dashed pen. + + * Fixed an assert in QImage that was triggered when reading PNG files + with certain palettes. + + * Fixed an issue where stroking and drawing aliased QPainterPaths with a + non-cosmetic pen would produce incorrect results. + + * Fixed an issue where text was cut off when drawn onto a QImage. + + * Fixed an issue where text would be drawn onto a QPicture with an + incorrect position. + + * Fixed an issue where enabling/disabling clipping when drawing into a + QImage did not have any effect. + + * Fixed bug in QImage::createHeuristicMask where the color table was not + initialized properly. + +- Qt Resource Compiler (rcc) + + * Improved handling of relative paths in .qrc files. + +- Style Sheets + + * Made general performance improvements. + + * Fixed crash that could occur when a widget with a style sheet was + reparented into a widget with no style sheet. + + * Ensured that a widget's custom palette is not overwritten when not styled + using a style sheet. + + * Added support to allow colors to be specified with alpha components. + + * Added support for group box styling. + + * Removed broken support for automatic image scaling. + +- SQL plugins + + * Fixed incorrect translation of error strings in the Oracle plugin. + + * Made sure PQfreemem is called to free allocated buffers in PostgreSQL. + + * Fixed regression from Qt 4.1.4 behavior that prevented tables in schemas + from working correctly in the SQL data models. + + * Prevented possible trailing garbage for TEXT fields in the MySQL plugin. + +- Text handling + + * Fixed a bug in the Bidi algorithm. + +- QAbstractItemView + + * Made commitData() more robust by ignoring cases in which no valid index + is associated with the editor. + + * Ensured that the itemEntered() signal is emitted consistently on all + platforms. + +- QBrush + + * Ensured that transformations are correctly copied when brushes are copied. + +- QCalendarWidget + + * Fixed setting the text format, correcting repainting and date resetting + issues. + +- QComboBox + + * Fixed wrong scroll arrows for the popup menu. + +- QCompleter + + * Fixed issue where the highlighted() signal was emitted twice if + setModel() was called twice. + + * Made completers usable inside dialogs. + +- QDataStream + + * Fixed streaming of qreal on (embedded) platforms where qreal values are + not equivalent to double values; i.e., sizeof(qreal) != sizeof(double). + +- QDateTime/QDateTimeEdit + + * Fixed a bug that allowed you to type in larger numbers than 12 in 12-hour + fields. + + * Fixed a bug that occurred when QDate::shortMonthName() was longer than + 3 characters. + + * Improved the handling of left-to-right languages. + +- QDialogButtonBox + + * QDialogButtonBox now sets the default button to the first button with + the Accept role if no other button has explicitly been set as the + default when it is shown. This is to stop a regression where using the + autoDefault property with the Mac and Cleanlooks styles would set the + Cancel button as the default. + +- QDir + + * Fixed an assert in QDir::entryList() when reading file entries with + names containing invalid Unicode encodings. + +- QFileDialog + * Fixed bug that showed a non-existing folder for every space the user typed + after a dot (.) in the lineedit. + +- QFileSystemWatcher + + * Fixed compilation on Linux/HPPA. + +- QFSFileEngine + + * Fixed broken UNC path support. + +- QIODevice + + * Fixed a data corruption bug when reading large blocks from devices + opened in Text mode. + + * Fixed seeking to positions larger than the maximum allowed integer value. + +- QLineEdit + + * Fixed scrolling in line edits with custom paddings. + + * Fixed crash on Linux when the text contains QChar::LineSeparator. + +- QListView/QListWidget + + * Fixed bug with cursor navigation in cases where a grid size has been + set. + + * Ensured that the drop indicator is not shown in icon view mode to avoid + painting artifacts. + +- QLocale + + * Fixed crash on Mac OS X and Windows caused when one of the separator + strings was an empty string. + + * Fixed double to string conversion bug on embedded architectures. + +- QMainWindow + + * Fixed bug allowing non-floatable dock widgets to be floated when the + DockWidgetMoveable option is set. + + * Fixed several bugs in laying out docked QDockWidgets which have + minimumSize() and/or maximumSize() set. + + * Improved saving and restoring of the state of main windows and their dock + widgets when using saveState() and restoreState(). + + * Fixed handling of dock widgets that are non-closable to the user so that + they can be programmatically closed. + + * Fixed regression from Qt 4.1.4 behavior to ensure that palette changes + to main windows are also propagated to their children. + +- QMenuBar + + * Improved event handling to avoid sending events when a menu bar has no + parent widget. + +- QObject + + * Fixed memory leak when calling QObject::moveToThread(0). + +- QPainter + + * Fixed reentrancy issue that would otherwise lead to crashes if more than + one QImage is deleted at the same time (from different threads). + +- QPalette + + * Improved handling of the palette obtained from QApplication::palette() + in cases where QApplication::setStyle() has been called before a + QApplication instance has been constructed (as recommended by the + documentation). + +- QPluginLoader + + * Fixed a potential crash that could occur when calling staticInstances() + from a global destructor. + +- QProgressBar + + * Document that drawing of text in vertical progress bars is style-dependent. + +- QSqlRelationalTableModel + + * Ensured that the internal cache is correctly cleared when reverting + inserted rows. + +- QSvg + + * Improved parser robustness and parsing speed. + +- QTextCodec + + * Fixed race-condition in QTextCodec::codecForLocale(). + + * Fixed potential off-by-one string handling bug. + +- QTextDocument + + * Fixed support for pixel font sizes in imported HTML. + +- QTextOption + + * Ensured that the textDirection property is respected. + +- QTextStream + + * Ensured that readLine() no longer treats "\r\n" as being two lines if + called after QTextStream::pos(). + +- QToolButton + + * Fixed an issue where tool button popup menus were positioned incorrectly + on multi-screen setups. + +- QTreeView/QTreeWidget + + * Fixed possible assert when painting if there were layouts pending. + + * Fixed possible segfault when a model emits layoutChanged(). + + * Fixed erroneous expanding/collapsing of items when the user + double-clicked in the checkbox area of an item. + + * Fixed a crash in setRowHidden() caused by hiding then un-hiding items + in a hierarchy. + + * Fixed setSortingEnabled() which could could cause incorrect painting. + +- QVariant + + * Fixed behavior where conversion of invalid variants to integers would be + incorrectly reported as successful. + + * Fixed a crash in the compatibility function QVariant::asByteArray() + when called on a null variant. + +- QWidget + + * Made setWindowTitle() work on hidden widgets that are never shown. + (Fixing a bug in QtSingleApplication on Windows.) + + * Made QWidget::restoreGeometry() restore windows to the correct screen + on multi-screen systems. + + * Fixed a bug where the stacking order of widgets would get out of sync + and cause entire widgets, or parts of them, not to be updated properly. + + * Fixed QWidget::setParent() to not recreate the native window ID of + all child widgets when reparenting the parent to top-level. + + * Fixed incorrect resize handling of dock widgets that are resized to the + extent of the screen or to their maximum defined sizes. + +- QWorkspace + + * Fixed memory corruption that caused crashes inside Visual Studio. + +- QMessageBox + + * Made QMessageBox::setText() adjust the size of the text area + when setting a new text. + +- QXmlInputSource + + * Ensured that QXmlInputSource does not read in the whole document at once, + enabling arbitrarily large files to be parsed with QXmlSimpleReader. + +- Qt3 support + + * Fixed QPainter::xForm() and QPainter::xFormDev(). + + * Fixed crash in Q3IconView when selecting several items without releasing + the left mouse button, then clicking the right mouse button. + + * Fixed incorrect behavior of setLabel() to replace labels rather than + inserting more of them. + + * Ensured that Q3IconView is included in the Desktop Light package. + + * Fixed regression of a feature in Qt 4.1.4 by reintroducing support for + Q3Accel. + +- QDBus + + * Fixed getting and setting of invalid properties + so the don't cause errors in in libdbus-1. + + * Fixed bug where QtDBus could generate invalid XML in some cases. + + * Fixed bug where QtDBus can sometimes generate names that break + the standard. + + * Fixed crash in QtDBus when connecting a signal to a slot with + less parameters. + + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + + * Fixed positioning of text with stacking diacritics. + + * Added fixes for Indic text rendering. + + * Fixed rendering of Greek and other latin scripts with XLFD fonts. + + * Fixed encoding detection of XLFD fonts. + + * Fixed crash in QX11EmbedContainer. + + * Ensured that QPrinter doesn't generate PDF when printing to raw CUPS + printers. + + * Improved behavior of QPrintDialog so that, if CUPS is not installed or + reports that no printers are available, it falls back to the printers + set up for lpr/lprng. + + * Fixed paper size selection when printing with CUPS. + + * Suppressed/avoided the generation of floating point exceptions in the + X11 paint engine. + + * Fixed an endianess issue when drawing QImages. + + * Fixed X errors when scaling/copying null pixmaps. + + * Fixed an issue where bitmap/XLFD fonts where drawn garbled. + + * Fixed X error when resizing to its minimum size. + + * Fixed widgets painted all black if the system palette contains X11 + color names. + + * Fixed loading plugins built in debug mode and linked against the + default (release) build. + + * Fixed input of non-ascii chars in Qt widgets when application was + run with empty LANG environment variable. + + * Fixed QApplication::hasPendingEvents() returning true even if no + events were pending when using the Glib event dispatcher. + + * Fixed rare event loop dead-lock when posting many custom events to + a receiver in another thread. + +- QPlastiqueStyle + + * Disabled checked radio buttons and checkboxes are now rendered correctly. + + +Windows +------- + + * Fixed drawing of the 0xad character with symbol fonts. + + * Fixed stacking order of dialogs when a child is created before its + parent. + + * Fixed printing to PDF when no printers are installed. + + * Fixed "print to file" dialog only showing once after it has been canceled. + + * Fixed name clashes in enum values when running dumpcpp (ActiveQt). + + * Fixed a lock-up in QNetworkInterface for machines with multiple network + interfaces. + + * Fixed a lock-up in QAbstractSocket::waitForReadyRead() when 0 was passed + as a timeout value. + + * Fixed "Invalid HANDLE" exception when a non-Qt thread that owns Qt + objects terminates. + + * Fixed potential crash when calling QCoreApplication::applicationFilePath(). + + * Fixed compilation problem with precompiled headers in qt3support. PCH is + now disabled for qt3support. + + * Fixed issues with low-level keyboard handling for certain (international) + keyboard layouts where input of accented characters would only work + inconsistently. + + * Fixed bug in QWidget::setGeometry() caused by incorrectly taking the + geometry of the window decoration into account. + + * Made it possible to load files in a Japanese environment. + + * Improved the appearance of dock widgets on Windows XP. + + * Fixed the appearance of the window menu when triggered with Alt-Space. + +- QAxServer + + * Ensured that characters that some IStorage implementations don't support + are removed from stream names. + + * Fixed regression that prevented ActiveQt controls from being activated + once they had been closed. + +- QSettings + + * Fixed potential deadlocks that could occur when saving settings, + particularly if an error occurs while settings are being written. + +Mac OS X +-------- + + * Fixed a regression that made it impossible to drag images from non-Qt + application to Qt applications. + + * Fixed an issue with flickering/disappearing widgets when the + Qt::WA_MacMetalStyle attribute is set. + + * Updated the documentation to clarify QActionWidget behavior with regard + to adding a QActionWidget to a menu in the menu bar and using the same + menu as a popup. + + * Ensured that the correct QList<QUrl> is returned when dragging Finder + items to Qt applications. + + * Documented how to debug with debug frameworks. + + * Fixed text selection in the PDF generator. + + * Fixed a bug where the cursor would not switch to the arrow cursor over + child widgets with that cursor set. + + * Fixed incorrect handling of FramelessWindow modal dialogs to ensure that + they do not have title bars and cannot be moved. + + * Fixed a crash that could occur when enabling "Accessibility for assistive + devices" in System Preferences while a Qt application was running. + + * Fixed a painting error where a one-pixel border at the bottom-right + corner of widgets wasn't being (re)painted correctly. + + * Fixed an item view scrolling bug where cell widgets were scrolled + incorrectly. + + * Made handling of popup behavior depend on the window type to ensure that + they are raised above other windows correctly. + + * Fixed crashes caused by incorrect pointer handling for contexts. + + * Ensured that the resize cursor shape is shown when the mouse cursor is + positioned over the edges of floating dock widgets. + + * Fixed issue that caused menus to be opened behind widgets with the + WindowStaysOnTopHint hint set. + + * Fixed handling of the QAssistantClient class for framework builds. + +- QMacStyle + + * Fixed a crash that occurred when an invalid rectangle was given for an + inactive button. + + * Improved performance when rendering vertical gradients. + +- QSystemTrayIcon + + * Ensured that the enable state of actions are properly handled and that + aboutToShow() is emitted when appropriate. + + +- Qtopia Core + + * Fixed delivery of mouse events to overlapping popups. + + * VNC: Fixed use of the VNC driver with the Multi driver. + + * Fixed cursor state when switching between different screens. + + * Improved performance when using an accelerated mouse cursor. + + * Optimized linear gradient drawing using fixed point math for use on + platforms without floating point hardware. + + * QCustomRasterPaintDevice::metric(): Fixed default values of PdmWidth and + PdmHeight. + + * Fixed bug in QWidget::setMask(). + + * Fixed incorrect line edit editing behavior where the contents would be + cleared even for read-only line edits in certain situations. + + * Fixed calibration of rotated screens in the Mouse Calibration example. + + * Fixed setMode() in the LinuxFb, VNC and Transformed screen drivers. + + * Fixed crash when using QWSCalibratedMouseHandler with filter size < 3. + + * Fixed QScreen::alloc() for non-default color maps. + + * Fixed a bug preventing a QWSEmbedWidget from being displayed if the + remote widget was hidden before it was embedded. + + * Fixed screen area reservation when using the QDirectPainter class. + + * Fixed compilation of the MySQL driver when using the minimum + configuration. + + * Fixed left-to-right positioning for menu items in XP style. + +- QVFb + + * Fixed crash that could occur when switching between certain skins. + + * Fixed crash that could occur when recording. + + * Enabled saving of animations in locations other than in /tmp. + +- QWhatsThis + + * Fixed the unintentional double shadow effect for "What's This?" help. + + +**************************************************************************** +* QTestLib * +**************************************************************************** + + * Added missing documentation for the QVERIFY2 macro. diff --git a/dist/changes-4.2.3 b/dist/changes-4.2.3 new file mode 100644 index 0000000000..8041602b2b --- /dev/null +++ b/dist/changes-4.2.3 @@ -0,0 +1,373 @@ +Qt 4.2.3 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.2.0. + +The Qt version 4.2 series is binary compatible with the 4.1.x and 4.0.x +series. Applications compiled for 4.0 or 4.1 will continue to run with 4.2. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Configuration/Compilation + * Fixed architecture detection on UltraSPARC-T1 systems. + * Fixed compilation on embedded architectures when qreal is not double. + * Compile on OpenBSD. + +- Documentation + * Completed documentation for "Implementing Atomic Operations", + which is useful for people porting Qt to a new hardware architecture. + +- Translations + * Added a new unofficial Portuguese translation courtesy of Helder + Correia. + +- Qt Linguist + * Made the columns in the phrasebook resizeable. + +- lupdate + * Fixed bug in the .pro parser of lupdate. It should accept backslashes. + * Fixed a severe slowdown in lupdate. (~400x speedup.) + * Fixed traversal of subdirectories. + +- moc + * Don't create trigraphs in the generated code for C++ casts. + +- uic + * Fixed a bug that generated excessive margins for Q3GroupBox. + +Third party components +---------------------- + +- libpng + + * Security fix: Avoid null dereferences. + +**************************************************************************** +* Library * +**************************************************************************** + +General improvements +-------------------- + +- Graphics View + + * Calling QGraphicsScene::update() without arguments now correctly + updates the entire scene. + * Changing the background brush in QGraphicsScene now correctly updates + the entire scene + * Fixed a crash in QGraphicsScene due to stale pointers in the BSP tree. + * QGraphicsScene::createItemGroup() now allows you to create an empty + group (previously caused an assert in debug mode). + * Fixed rendering bugs with QGraphicsPixmapItem::offset(). + * Adding an item to a QGraphicsScene now always implicitly causes an + update. + * Fixed a crash caused by deleting a QGraphicsScene that is being viewed + by a QGraphicsView. + * Items with zero width or height (e.g., a horizontal or vertical line + with a zero-width cosmetic pen) are now rendered correctly. + * Fixed a crash in QGraphicsScene::destroyItemGroup(), and when removing + items from a group. + +- Item views + * Fixed data loss in QTreeWidget, QTableWidget and QListWidget that + occurred when performing a drag and drop copy operation on items + containing data in custom roles. + + * Fixed signal emission bugs in QSqlQueryModel and QSqlTableModel that + caused the view to contain invalid items when used with a + QSortFilterProxyModel. + + * Fixed a bug in word-wrapped text that could cause all new-line + characters, and the last line in string containing at least one + newline character, to be removed. + + * Fixed bug in QListView where the last item of a batch was not always + displayed. + +- QAction + * Fixed a possible crash when using alternate shortcuts on a QAction. + +- QByteArray + * Fixed a crash in toUpper(). + +- QCleanlooksStyle + * Indeterminate progress bars are now correctly animated. + +- QComboBox + * Fixed broken case sensitive completion. + * Changing the font on a QComboBox now changes the font on the popup as + well. + +- Q3TextEdit + * Fixed regression where some shortcuts didn't work on Mac OS X. + +- Q3Canvas + * Fixed potential memory overrun when determining a clipping chunk. + +- Q3Socket + * Fixed unexpected remote disconnection bugs (also QTcpSocket). + +- QFile + * Performance enhancements in QFile::copy(). + * Allow reading past the previous end of the file if the file grows. + * Reliably allow QFile::readLine() and QFile::readAll() to be used to + read from stdin on all platforms. + +- QFileDialog + * Fixed crash that could occur when the filter began with ';;'. + * Fixed assertion caused by calling setFilters() with an empty list. + * Fixed problem with file entries not being laid out correctly. + +- QGridLayout + * Fixed bug in handling of fixed size spacers spanning multiple + rows/columns + +- QLayout + * Fixed bug caused by setting minimumSize() and SizePolicy::Fixed on a + widget that implements minimumSizeHint() but not sizeHint(). + +- QLineEdit + * Fixed crash caused by moving the cursor over a QChar::LineSeparator + in the text. + +- QPainter + * Fixed bug in QPainter::drawPoints() when using the raster paint engine + which caused some points to be missing. + * Removed memory leak in raster paint engine when drawing complex + polygons/paths. + +- QProcess + * Fixed a crash that could occur when calling QProcess::waitForFinished() + from inside a slot connected to a signal emitted by QProcess. + * Fixed a race condition on Windows where QProcess::bytesToWrite() would + return a short byte count. + +- QTextDocument + * Fixed find() with backward searches. + * Match CSS style selector case insensitively. + * Fixed HTML import for tables with missing cells and rowspan/colspan + attributes. + +- QSortFilterProxyModel + * Fixed a crash caused by calling filterChanged(). + * Fixed a crash caused by removing items from the source model. + * Fixed a bug that could cause a model to enter an invalid state when + filtering items in a hierarchy, causing items in a QTreeView to + erroneously be collapsed. + * Fixed a bug that could cause invalid items to be added when inserting + new items to the source model. + +- QSyntaxHighlighter + * Fixed failing assertion that could occur when installing a syntax + highlighter before the document has created a layout. + +- QPluginLoader + * Fixed compilation of Q_EXPORT_PLUGIN when used with templates. + +- QTcpSocket + * Fixed a bug where QTcpSocket would time out when connecting to a + closed service on Windows. + * Fixed a race condition when calling waitFor...() functions with a very + short timeout value. + * Fixed unexpected remote disconnect problems on Windows. + * Improved the reliability of the waitFor...() functions with SOCKS5 + proxy support. + +- QTextLayout + * Fixed rendering of surrogate pairs and cursor navigation with them. + +- QTextEdit + * Fixed crash in QTextEdit::setExtraSelection() that could occur when + used with null cursors. + * Fixed scrollbar bug which could cause the bottom of the text to be + unreachable. + +- QTextStream + * Fixed QTextStream::readLine() so it can be used reliably with stdin on + all platforms, and updated the documentation to reflect this. + +- QMacStyle + * Ensured that tab bars are drawn correctly regardless of the font used. + +- QMenuBar + * Properly marked the "text heuristic matching" strings for translation. + +- QMenu + * Fixed incorrect scrolling on large menus on Mac OS X. + +- QPlastiqueStyle + * Ensured that indeterminate progress bars are now always animated and + fixed a rendering bug. + +- QPrinter + * Fixed a bug on X11 that caused the printer to generate too many + copies. + * Fixed a bug in the PostScript driver that could cause invalid + PostScript to be generated. + +- QSqlRelationalTableModel + * Ensured that the internal cache is cleared after + QSqlRelationalTableModel::submitAll() is called. + +- QSqlDriver + * Ensured that QSqlDriver::formatValue() doesn't cut off characters from + field names. + +- QTextTable + * Removed false assertion when deleting the first row or column in a + table. + * Fixed crash when splitting cells in the rightmost column of a table. + * Fixed issue where QTextTable::splitCells() would shift cells further + down in the table. + * Fixed crash in QTextTable::mergeCells() caused by merging an already + merged cell. + +- QToolTip + * Fixed QToolTip sizes when used with HTML tags like <BR>. + +- QUdpSocket + * Fixed a busy-wait causing the event loop to spin when writing a + datagram to an unbound port. + * QUdpSocket now reliably emits readyRead() in connected mode. + +- QUrl + * Fixed a crash that would occur as a result of calling errorString() on + an empty URL. + +- SQL plugins + * Prevent crashes in QSqlQuery after reopening a closed ODBC connection. + * Prevent crash when retrieving binary data from ODBC. + * The Interbase driver now returns a valid handle through + QSqlDriver::handle(). + +- QMutex + * Fixed race condition in QMutex::tryLock() that would prevent all + other threads from acquiring the mutex + +- QList + * Fixed crash when modifying a QList that must be detached from a + separate thread + +- QWidget + * Fixed case where a modal dialog could be stacked below its parent + window when the dialog was shown first + * Fixed an erroneous hideEvent() from being sent immediately after + window creation + * Fixed problem with missing text in QWidget::whatsThis(). + +- QWindowsStyle + * Fixed a crash that could occur when deleting a QProgressBar after its + style was changed. + +- QVariant + * Fixed assertion caused by streaming in a variant containing a float. + +- QAbstractItemView + * Fixed focus problem with cell widgets. + +- QTableView + * Fixed problem with context menus clearing the selections. + +- QHeaderView + * Fixed assertion that could occur when removing all sections when some + sections had been moved. + * Fixed a bug that could prevent the user from resizing the last + visible section if the "real" last section was invisible. + +- QListView + * Fixed crash when calling reset. + +- QTableWidget + * Fixed painting problem that could occur when rows were swapped. + +- QTreeView + * Fixed a crash that could appear when removing all the children of an + item. + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + * Fixed detection of Type1 symbol fonts. + * Fixed crash on exit in QSystemTrayIcon when QApplication is used + as the parent. + * Fixed animation GUI effects on tooltips, menus, and comboboxes. + * Fixed crashes in threaded programs when Qt uses the Glib main + loop. + * Fixed bug where an empty LANG environment variable could prevent input + of non-ASCII chars in Qt widgets. + * Fixed leak of initial style created by QApplication after calling + QApplication::setStyle(). + * Fixed erroneous event delivery to a widget that has been destroyed. + * Prevent shortcuts for keypad arrow keys from being activated when + Num Lock is on. + * Fixed bug which caused incorrect drawing of subrectangles of bitmaps. + * Fixed bug in rendering of the Bengali script. + +Windows +------- + * Fixed compilation with -no-stl. + * Fixed compilation with Windows SDK for Vista. + * Fixed an issue that could cause missing text when Cleartype was used. + * Fixed the hot-spot locations for OpenHandCursor and CloseHandCursor. + * Fixed infinite warning loop about adopted threads in applications with + many threads. + * Fixed assertion caused by hiding a child widget whose window has not + yet been created. + * Fixed QWindowsXPStyle so that it is possible to draw a + QStyle::CE_DockWidgetTitle without having an actual instance of + QDockWidget. + * Fixed crash when drawing text with large font sizes. + * Fixed support for the Khmer language. + * Fixed incorrect reporting of frameGeometry() after a window is closed. + * Fixed crash when handling spurious WM_CHAR from Remote Desktop Client. + * Fixed crash in JPEG plugin while loading. + * Fixed crash in QFileDialog::getExistingDirectory() when specifying + a parent that has not been shown yet. + +Mac OS X +-------- + * Fixed regression where dragging/copying Unicode text in Qt to another + application would only export the non-Unicode version. + * Fixed regression where releasing the mouse button would send two mouse + releas events to a widget. + * Fixed regression where the drop action would be reset after a native + "DragLeave" event was received. + * Wrapping a (non-Qt) window's content view and resizing before showing + the window for the first time now works correctly. + * Ensured that the content view is always created before we QWidgets are + added to a window - this allows better integration with Cocoa apps. + * Fixed regression where text/uri-list was inadvertently disabled for + clipboards. + * Fixed regression where setting the brushed metal style on a message + box would show the label in a non-metallic style. + * Fixed the open source binary package to have the correct definitions + for development. + +Qtopia Core +----------- + * Fixed a data corruption bug in QDataStream on ARM processors where + reading and writing doubles/qreals would be incompatible with streams + on other platforms. + Note: corrupt data streams generated with previous versions of Qtopia + Core on ARM platforms cannot be read with this version. + * Fixed a possible buffer overflow in the VNC driver. + * Fixed a memory leak in the windowing system. + * Fixed painting errors occuring with use of QT::WA_PaintOnScreen on + certain screen configurations. + * Improved performance when using a 16-bit brush as the background on a + 16-bit screen. + * Improved performance of 16-bit semi-transparent solid fills. + * Fixed crash that could occur when saving a 16-bit image in BMP or PPM + formats. + * Fixed bug where window icons would not be shown in Plastique style. + * Fixed bug in QWSServer::setMaxWindowRect() on rotated displays. + * Fixed crash with normalized Unicode characters and QPF fonts. + * Ensured that QWidget::minimumSize() does not become larger than the + screen size. + diff --git a/dist/changes-4.2CEping b/dist/changes-4.2CEping new file mode 100644 index 0000000000..530c650acc --- /dev/null +++ b/dist/changes-4.2CEping @@ -0,0 +1,73 @@ +Changes for Qt/CE 4.2.x "Ping" release. + +**************************************************************************** +* Features * +**************************************************************************** + +- Added QtNetwork + +- Added QFEATURES system + +- Added more examples/demos + +- configure.exe + * additions for QFEATURES + +- Native look and feel + * click&hold opens context menu + * only allow single application launch, second startup changes to running instance + * added experimental Windows CE 6 support + +**************************************************************************** +* Bug fixes * +**************************************************************************** + +- qmake + * fix Visual Studio project file generator for THUMB instructions + +- Styles + * removed big icon images to reduce library sizes + +- QColorDialog + * fix size issues for Windows CE + +- QDebug + * fix multiple output of lines when using Visual Studio + +- QFile + * fix creation/resolving links + +- QFontDatabase + * fix bug for multiple system fonts available on device + +- QFontEngine + * fix alignment issues for line edits + +- qgetenv/qputenv + * fix memory leak + +- QLocale + * fix timezone issues regarding standard SDK. + +- QMessageBox + * fix OK button bug + +- QSessionManager + * fix id creation + +- QTabWidget + * fix positioning bug + +- QWidget + * fix size related bugs + * fix window-animation when switching between menus (WindowsCEStyle) + +- QWindowsCEStyle + * various fixes + +- QWindowsMobileStyle + * smartphone fixes + +- winmain module + * fix leak + diff --git a/dist/changes-4.3.0 b/dist/changes-4.3.0 new file mode 100644 index 0000000000..f4e1d1a393 --- /dev/null +++ b/dist/changes-4.3.0 @@ -0,0 +1,2445 @@ +Qt 4.3 introduces many new features as well as many improvements and +bugfixes over the 4.2.x series. For more details, see the online +documentation which is included in this distribution. The +documentation is also available at http://doc.trolltech.com/4.3 + +The Qt version 4.3 series is binary compatible with the 4.2.x series. +Applications compiled for 4.2 will continue to run with 4.3. + +The Qtopia Core version 4.3 series is binary compatible with the 4.2.x +series except for some parts of the device handling API, as detailed +in Platform Specific Changes below. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Task Tracker: + + http://www.trolltech.com/developer/task-tracker + +Each of these identifiers can be entered in the task tracker to obtain +more information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Configuration/Compilation + * Fixed OpenBSD and NetBSD build issues. + +- Legal + * Added information about the OpenSSL exception to the GPL. + +- Documentation and Examples + * Added information about the TS file format used in Linguist. + * Moved platform and compiler support information from + www.trolltech.com into the documentation. + * Added an Accessibility overview document. + * Added new example to show usage of QCompleter with custom tree models. + +- Translations + * Added a Slovak translation of Qt courtesy of Richard Fric. + * Added a Ukrainian translation of Qt courtesy of Andriy Rysin. + * Added a Polish translation of the Qt libraries and tools courtesy of + Marcin Giedz, who also provided a Polish phrasebook for Qt Linguist. + * [155464] Added a German translation for Qt Designer. + +- Added support for the CP949 Korean Codec. + +- [138140] The whole Qt source compiles with the QT_NO_CAST_FROM_ASCII + and QT_NO_CAST_TO_ASCII defines and therefore is more robust when + using codecs. + +- Added support for HP-UX 11i (Itanium) with the aCC compiler + +- Changed dialogs to respond much better to the LanguageChange event. + (i.e. run time translation now works much better.) + +- Signals and slots + * [61295] Added Qt::BlockingQueuedConnection connection type, which + waits for all slots to be called before continuing. + * [128646] Ignore optional keywords specified in SIGNAL() and SLOT() + signatures (struct, class, and enum). + * Optimize emitting signals that do not have anything connected to them. + +- [121629] Added support for the MinGW/MSYS platform. + +- [102293] Added search path functionality (QDir::addSearchPath) + +- Almost all widgets are now styleable using Qt Style Sheets. + +Third party components +---------------------- + +- Updated Qt's SQLite version to 3.3.17. + +- Updated Qt's FreeType version to 2.3.4. + +- Updated Qt's libpng version to 1.2.16. + +- Added libtiff version 3.8.2 for the TIFF plugin. + +**************************************************************************** +* Library * +**************************************************************************** + +- QAbstractButton + * [138210] Ensured strictly alternating ordering of signals resulting + from auto-repeating shortcuts. Fixed a repeat timer bug that cause + cause infinite retriggering to occur. + * [150995] Fixed bug where non-checkable buttons take focus when + activating shortcuts. + * [120409] Fixed bug where the button was set to unpressed when the + right mouse button was released. + +- QAbstractItemView + * [111503] Ensured that focus is given back to the view when the Tab key + is pressed while inside an editor. + * [156290] Use slower scrolling when the ScrollMode is set to + ScrollPerItem. + * Ensured that the item view classes use the locale property when + displaying dates and numbers to allow easy customization. + * Fixed a repaint issue with the focus rectangle in cases where + selection mode is NoSelection. + * [147422] Detect when persistent editors take/lose focus and update the + view accordingly. + * [146292] Items are now updated even if they contain an editor. + * [130168] Auto-scrolling when clicking is now delayed to allow + double-clicking to happen. + * [139247] Fixed bug where clicking on a partially visible item was + triggering a scroll and the wrong item was then clicked. + * [137729] Use dropAction() instead of proposedAction() in + QAbstractItemView::dropEvent(). + * Fixed a bug that prevented keyboardSearch() from ignoring disabled + items. + * [151491] Ensured that we pass a proper MouseButtonPress event in + QAbstractItemView::mouseDoubleClickEvent(). + * [147990] Ensured that double-clicking does not open an editor when + the edit trigger is set to SelectedClicked. + * [144095] Ensured that sizeHintForIndex() uses the correct item + delegate. + * [140180] Ensured that clicking a selected item clears all old + selections when the view is using the ExtendedSelection selection mode + and SelectedClicked as an edit trigger. + * [130168] Fixed bug where double clicking on partially visible items + would not activate them. + * [139342] Allow editing to be started programatically, even if there + are no edit triggers. + * [130135] Added public slot, updateIndex(const QModelIndex &index). + +- QAbstractProxyModel + * [154393] QAbstractProxyModel now reimplements itemData(). + +- QAbstractSlider + * [76155] Fixed bug where the slider handle did not stop under the + mouse. + +- QAbstractSocket + * [128546] Fixed bug where an error was emitted with the wrong type. + +- QAccessible + * Added preliminary support for the upcoming IAccessible2 standard. + * Made improvements to most of the accessible interfaces. + * [154534] Ensured that our accessible interfaces honour + QWidget::setAccessibleName() and QWidget::setAccessibleDescription(). + * Avoid crash if QAccessibleInterface::object() returns 0. + (It is absolutely legal to return a null value.) + +- QApplication + * Added a flash() method for marking windows that need attention. + * [86725] Allow the -style command line argument to override a + style set with QApplication::setStyle() before QApplication + construction. + * [111892] Fixed a bug that caused Qt to steal all input when + connecting the QAction::hovered() signal to a slot that called + QMainWindow::setEnabled(false). + * [148512] Fixed QApplication::keyboardModifiers() to update + correctly when minimizing the window when Qt::MetaModifier is held + down. + * [148796] Fixed a bug that prevented Qt from detecting system font + changes. + * [154727] Prevent a crash when a widget deletes itself in an key + event handler without accepting the event. + * [156484] Fixed a bug where lastWindowClosed() was emitted for each + top-level window when calling QApplication::closeAllWindows(). + * [157667] Ensured that widgets with the Qt::WA_DeleteOnClose property + set are properly deleted when they are closed in the dropEvent() + handler following a drag that was started in the same application. + * [156410] Implemented QEvent::ApplicationActivate and + QEvent::ApplicationDeactivate on all platforms. Note that + QEvent::ApplicationActivated and QEvent::ApplicationDeactivated are + now deprecated. + +- QAtomic + * [126321] Fixed several flaws in the inline assembler implementations + for several architectures (ARM, i386, PowerPC, x86-64). + * [133043] Added support for atomic fetch-and-add. + +- QAuthenticator + * New Class. Needed for authentication support in the Network module. + Currently supports the Basic, Digest-MD5 and NTLM authentication + mechanisms. + +- QBitArray + * [158816] Fixed crash in operator~(). + +- QCalendarWidget + * Don't set maximum width for month/year buttons. + * Ensured that the QPalette::Text role is used for default text. + * Added a date editor which can be configured with the dateEditEnabled + and dateEditAcceptDelay properties. + * [137031] Ensured that grid lines are drawn properly when headers are + not visible. + * [151828] Ensured that the language can be set with + QCalendarWidget::setLocale(). + +- QChar + * Updated the Unicode tables to Unicode 5.0. + * Added foldCase() and toTitleCase() methods. + * Added public API to handle the full Unicode range. + +- QCleanlooksStyle + * [129506] Sliders now look and behave correctly in both reversed and + inverted appearance modes. + * [131490] Group boxes no longer reserve space for their titles when no + title is set. + * [134344] A sunken frame is now used to indicate checked menu items + with icons. + * [133691] Improved the appearance of spin boxes and buttons when used + against dark backgrounds. + * [154499] Fixed a rendering issue with disabled, checked push buttons. + * [154862] Fixed an issue causing combo boxes to sometimes show clipped + text. + * Slider appearance is now based on Clearlooks Cairo and the performance + on X11 has been improved. + * The appearance of tab bars when used with Qt::RightToLeft layout + direction has been improved. + * Dock widget titles are now elided if they are too long to fit in the + available space. + +- QClipboard + * Ensured that calling clear() on the Mac OS X clipboard really clears + its data. + * [143927] Don't drop alpha channel information when pasting pixmaps on + Mac OS X. + * The Mac OS X clipboard support now understands TIFF information and + can export images as TIFF as well. + * [145437] Fixed crash that could occur when calling setMimeData() twice + with the same data. + * QMacMime now does correct normalization of file names in a URL list + from foreign applications. + +- QColor + * [140150] Fixed bug where QColor::isValid() would return true for + certain invalid color strings. + * [120367] Added QColor::setAllowX11ColorNames(bool), which enables + applications to use X11 color names. + * Fixed internal errors in toHsv() due to inexact floating point + comparisions. + +- QColorDialog + * [131160] Enabled the color dialog to be used to specify an alpha color + on Mac OS X. + +- QColumnView + * A new widget that provide a column-based implementation of + QAbstractItemView. + +- QComboBox + * Significantly reduced the construction time of this widget. + * [155614] Speeded up addItem() and addItems(). + * [150768] Ensured that inserting items doesn't change the current text + on editable combo boxes. + * [150902] Ensured that only the left mouse button can be used to open + the popup list. + * [150735] Fixed pop-up hiding behind top-level windows on Mac OS X. + * [156700] Fixed bug where the popup could be closed when pressing the + scroll arrows. + * [133328] Fixed bug where disabled entries were not grayed out. + * [134085] Fixed bug where the AdjustToContents size policy had no + effect. + * [152840] Fixed bug where QComboBox would not automatically scroll to + the current item. + * [90172] Fixed bug where the sizeHint() implementation iterated over + all icons to detect their availability. + +- QCompleter + * Significantly reduced the construction time of this widget. + * Added support for lazily-populated models. + * [135735] Made QCompleter work when used in a QLineEdit with a + QValidator. + * Added the wrapAround property to allow the list of completions to + wrap around in popup mode. + * Added support for sharing of completers, making it possible for the + same QCompleter object to be set on multiple widgets. + * [143441] Added support for models that sort their items in descending + order. + +- QCoreApplication + * Added support for posted event priorities. + * [34019] Added the QCoreApplication::removePostedEvents() overload + for removing events of a specific type. + * Documented QCoreApplication::processEvents() as thread-safe; + calling it will process events for the calling thread. + * Optimized delivery of QEvent::ChildInserted compatibility events. + * [154727] Enabled compression of posted QEvent::DeferredDelete events + (used by QObject::deleteLater()) to prevent objects from being deleted + unexpectedly when many such events are posted. + * Ensured that duplicate entries in library paths are ignored. + +- QCryptographicHash + * New Class. Provides support for the MD4, MD5 and SHA1 hash functions. + +- QCursor + * [154593] Fixed hotspot bug for cursors on Mac OS X. + * [153381] Fixed crash in the assignment operator in cases where the + cursor was created before a QApplication instance. + +- QDataWidgetMapper + * [125493] Added addMapping(QWidget *, int, const QByteArray &) and + mappedPropertyName(QWidget *) functions. + +- QDateTime + * [151789] Allow passing of date-only format to QDateTime::fromString() + (according to ISO 8601). + * [153114, 145167] Fixed bugs that could occur when parsing strings to + create dates. + * [122047] Removed legacy behavior which assumed that a year between 0 + and 99 meant a year between 1900 and 1999. + * [136043] Fixed the USER properties. + +- QDateTimeEdit + * [111557, 141266] Improved the behavior of the widget with regard to + two-digit years. Made stepping work properly. + * [110034] Don't change current section when a WheelEvent is received. + * [152622] Don't switch section when a FocusInEvent is received if the + reason is Popup. + * Fixed a bug that would cause problems with formats like dd.MMMM.yyyy. + * [148522] Ensured that the dateRange is valid for editors that only + show the time. + * [148725] Fixed a bug with wrapping and months with fewer than 31 days. + * [149097] Ensured that dateTimeChanged() is emitted, even if only date + or time is shown. + * [108572] Fixed the behavior to ensure that typing 2 into a zzz field + results in a value of 200 rather than 002. + * Ensured that the next field is entered when a separator is typed. + * [141703] Allow empty input when only one section is displayed. + * [134392] Added a sectionCount property. + * [134392] Added sectionAt(), currentSectionIndex(), and + setCurrentSectionIndex() functions. + * Added a NoButtons value for the buttonSymbols property. + +- QDesktopWidget + * [135002] Ensured that the resized() signal is emitted after the + desktop is resized on Mac OS X. + +- QDial + * [151897] Ensured that, even with tracking disabled, the signal + sliderMoved() is always emitted. + * [70209] Added support for the inverted appearance property. + +- QDialog + * [131396] Fixed a crash in QDialog::exec() that could occur when the + dialog was deleted from an event handler. + * [124269] Ensured that the size grip is hidden for extended dialogs. + * [151328] Allow the use of buttons on the title bar to be explicitly + specified on Mac OS X. + +- QDialogButtonBox + * [154493] Moved the Action role before the Reject role on Windows to + conform with platform guidelines. + +- QDir + * [136380] QDir's permission filters on Unix now behave the same as on + Windows (previously the filters' behavior was reversed on Unix). + * [158610] Passing QDir::Unsorted now properly bypasses sorting. + * [136989] Ensured that removed dirs are reported as non-existent. + * [129488] Fixed cleanPath() for paths with the "foo/../bar" pattern. + +- QDirIterator + * New class. Introduced to provide a convenient way to examine the + contents of directories. + +- QDockWidget + * [130773] Ensure that dock widgets remember their undocked positions + and sizes. + * Added support for vertical title bars, which can be used to save space + in a QMainWindow. + * Added support for setting an arbitrary widget as a custom dock widget + title bar. + * [141792] Added the visibilityChanged() signal which is emitted when + dock widgets change visibility due to show or hide events, or when + being selected or deselected in a tabbed dock area. + * Added the dockLocationChanged() signal which is emitted when dock + widgets are moved around in a QMainWindow. + * [135878] Titlebars now support mnemonics properly. + * [138995] Dock widget titlebars now correctly indicate their activation + state. + * [145798] Ensured that calling setWindowTitle() on a nested, docked + dock widget causes the title in the tab bar to be updated. + +- QDomDocument + * [128594] Ensured that comment nodes are indented correctly when + serializing a document to a string. + * [144781] Fixed crash that would occur when the owner document of new + attributes was not adjusted. + * [107123] Ensured that appendChild() does not erroneously add two + elements to document nodes in certain cases. + +- QDoubleSpinBox + * [99254] Allow higher settings for decimals. + +- QDrag + * [124962] Added QDrag::exec() to allow the default proposed action to + be changed. + +- QFile + * [128352] Refactored the backend on Windows with major performance + improvements; in particular line and character reading is now much + faster. + * [146693] Fixed a lock-up in copy(). + * [148447] QFile now supports large files on Windows where support is + available. + * Generally improved support for stdin. + * Byte writing performance has improved on all platforms. + * [151898] Added support for reading lines with an embedded '\0' + character. + +- QFileDialog + * Updated the dialog to use native icons. + * Made general improvements to the dialog's performance. + * Added a sidebar to show commonly used folders. + * [134557] Added the ability to use a proxy model. + * Added dirEntered() and filterSelected() signals, previously found in + Qt 3's file dialog. + * [130353] Fixed Qt/Mac native file dialog pattern splitting + * [140332] Made the dialog respond much better to the LanguageChange + event. + * [154173] Fixed a memory deallocation error. + * Made the selected filter argument work for native Mac OS X file + dialogs. + +- QFileInfo + * Ensured that the value of Mac FS hidden flag is returned for symbolic + links and not their targets; i.e., hidden links are not followed. + * [128604] Introduced isBundle() for Mac OS X bundle types. + * [139106] Fixed bug that could cause drives to be reported as hidden + on Windows. + +- QFileSystemWatcher + * [155548] Reliability fixes. + * When in polling mode, send change notification when file permissions + change. + * [144049, 149637] Fixed a bug that prevented watching a directory + for notification on Windows. + * [143381] Fixed bug that caused addPath() and removePath() to fail when + passing an empty string. + +- QFocusFrame + * [128713, 129126] Made the focus frame visible in more situations on + Mac OS X. + +- QFont + * X11: Add a method to retrieve the FreeType handle from the QFont. + +- QFontComboBox + * [132826] Fixed a bug that could cause the popup list to be shown + off-screen. + * [155614] Speeded up addItem() and addItems(). + * [160110] Fixed crash that could occur when setting a pixel size for + the fonts. + +- QFontMetrics + * [152013] Fixed bug where boundingRect() gave sizes that were too large + when compiled using Visual Studio 6. + * [145980] Added tightBoundingBox() method. + +- QFrame + * [156112] Fixed bug where the default frame was not correct when + created without a parent and reparented afterwards. + * [150995] Fixed bug where setting the frame style did not invalidate + the size hint + +- QFSFileEngine + * Fixed bug in fileTime() on Win98 and WinME + * Ensured that the working directory of a Windows shortcut is set when + a link is created. + * Improved the reliability of buffered reads on platforms that cache + their EOF status. + +- QFtp + * [107381] Greatly improved LIST support; QFtp now supports more server + types. + * [136008] Improved tolerance for servers with no EPRT/EPSV support. + * [150607] Fixed a race condition when using ActiveMode for uploading. + +- QGL + * [158971] Fixed a resource leak in the GL texture cache. + +- QGLFramebufferObject + * Made it possible to configure the depth/stencil buffer in a + framebuffer object. + * Added support for floating point formats for the texture in a + framebuffer object. + +- QGLPixelBuffer + * [138393] Made QGLPixelbuffer work under Windows on systems without the + render_texture extension. + +- QGLWidget + * [145621] Avoided a QGLFormat object copy when checking the buffer + format with the doubleBuffer() function. + * [100519] Rewritten renderText(). It now supports Unicode text, and it + doesn't try to overwrite previously defined display lists. + +- QGraphicsItem + * [151271] Fixed crash that could occur when calling update on items + that are not fully constructed. + * Ensured that the selected state no longer changes state twice + for each mouse click. + * [138576] setParent() now correctly adds the child to the parent's + scene. + * [130263] Added support for partial obscurity testing with the + isObscured(QRectF) function. + * [140725] QGraphicsTextItem is now also selectable when editable. + * [141694] QGraphicsTextItem now calls ensureVisible() if it has input + focus. + * [144734] Fixed bugs in unsetCursor(). + * [144895] Improved bounding rectangle calculations for all standard + items. + * Added support for QTransform. + * [137055] Added QGraphicsItem::ItemPositionHasChanged and + ItemTransformHasChanged. + * Added several convenience functions. + * [146863] Added ItemClipsToShape and ItemClipsChildrenToShape clipping + flags. + * [139782] Greatly improved hit and selection tests. + * [123942] Added the ItemIgnoresTransformations flag to allow items to + bypass any inherited transformations. + * All QGraphicsItem and standard item classes constructors have now had + their scene arguments obsoleted. + * [150767] Added support for implicit and explicit show and hide. + Explicitly hidden items are no longer implicitly shown when their + parent is shown. + * [151522] Fixed crash when nesting QGraphicsItems that enabled child + event handling. + * [151265] Cursors now change correctly without mouse interaction. + * Added deviceTransform() which returns a matrix that maps between item + and device (viewport) coordinates. + * Added the ItemSceneChange notification flag. + * [128696] Enabled moving of editable text items. + * [128684] Improved highlighting of selected items. + +- QGraphicsItemAnimation + * [140522] Fixed special case interpolation bug. + * [140079] Fixed ambiguity in the position of insertions when multiple + items are inserted for the same step in an animation. + +- QGraphicsScene + * [130614] Added the invalidate() function for resetting the cache + individually for each scene layer. + * [139747] Fixed slow memory leaks caused by repeatedly scheduling + single-shot timers. + * [128581] Added the selectionChanged() signal which is emitted when + the selection changes. + * Introduced delayed item reindexing which greatly improves performance + when moving items. + * The BSP tree implementation has undergone several optimizations. + * Added new bspTreeDepth property for fixating the BSP tree depth. + * Optimization: Reduced the number of unnecessary index lookups. + * [146518] Added the selectionArea() function. + +- QGraphicsSceneWheelEvent + * [146864] Added wheel orientation. + +- QGraphicsView + * [136173] Hit-tests are now greatly improved for thin items. + * [133680] The scroll bars are now shown at their maximum extents + instead of overflowing when the transformed scene is larger than + the maximum allowed integer range. + * [129946] Changing the viewport no longer resets the acceptsDrops() + property. + * [139752] ScrollHandDrag is now allowed also in non-interactive mode. + * [128226] Fixed rubber band rendering bugs (flicker and transparency). + * [144276] The selection is no longer reset by scroll-dragging. + * Added support for QTransform. + * [137027] Added new viewportUpdateMode() property for better control + over how QGraphicsView schedules updates. + * Several convenience functions have been added. + * [146517] Added rubberBandSelectionMode() for controlling how items are + selected with the rubber band. + * [150344] Fixed the scroll bar ranges to prevent the scroll bars from + hiding parts of the scene. + * [150321] Added new optimizationFlags() property, allowing individual + features to be disabled in order to speed up rendering. + * The level of detail algorithm has been changed to improve support for + transformations that change the view's aspect ratio. + * [154942] Fixed background rendering in render(). + * [156922] render() now properly supports all transformations, source + and target rectangles. + * [158245] Calling setScene(0) now implicitly calls update(). + * [149317] Added NoViewportUpdate to the set of modes that can be set + for updating a view. + +- QGridLayout + * [156497] Fix a one-off error that could cause the bottom button in + a QDialogButtonBox to be cropped. + +- QHeaderView + * This widget now uses Qt::NoFocus as its default focus policy. + * [99569] Improved performance, providing up to a 2x speed increase for + some cases. + * [146292] Fixed bug that made it impossible to resize the last section + under certain circumstances. + * [144452] Fixed bug that caused setDefaultAlignment() to have no + effect. + * [156453] Fixed column resizing bug that could cause branches in one + column to be drawn in the next. + * [142640] Ensured that the Qt::SizeHintRole is used when available. + * [142994] Hidden items are now restored to their original size when + shown. + * [127430] Added saveState() and restoreState(). + * [105635] Added support for drag selecting. + +- QHostInfo + * [141946] No longer stops working after QCoreApplication is destroyed. + * [152805] Now periodically reinitializes DNS settings on Unix. + +- QHttp + * [139575] Fixed state for servers that use the "100 Continue" response. + * Added support for the HTTPS protocol. + * Improved proxy support. + * Added support for server and proxy authentication. + +- QIcon + * Added cacheKey() as a replacement for serialNumber(). + * Fixed the streaming operators. + +- QImage + * [157549] Fixed a crash that could occur when calling copy() with + negative coordinates. + * Added cacheKey() as a replacement for serialNumber(). + * [131852] Optimized rotations by 90 and 270 degrees. + * [158986] Fixed painting onto an images with the Format_RGB16 image + format. + * Fixed rotations by 90 and 270 degrees for images with the Format_RGB16 + image format. + * [152850] Fixed bugs in text() and setText(). + * Fixed a crash that could occur when passing a 0 pointer to the + constructor that accepts XPM format image data. + * [150746] Added a constructor that accepts an existing memory buffer + with non-default stride (bytes per line). + +- QImageReader + * [141781] Fixed support for double byte PPM files (>256 colors). + +- QImageWriter + * Added support to enable compression if a plugin supports it. + +- QInputDialog + * [115565] Disabled OK button for non-acceptable text (getInteger() and + getDouble()). + * [90535] Input dialogs now have a size grip + +- QIntValidator, QDoubleValidator + * Validators now use the locale property to recognize numbers + formatted for various locales. + +- QItemDelegate + * [145142] Ensured that text is not drawn outside the bounds of a cell. + * [137198] Fixed handling of cases where the decoration position is set + to be at the bottom of an item to prevent the text from being + incorrectly positioned. + * [142593] Take word wrap into account when calculating an item's size + hint. + * [139160] Ensured that the focus rectangle is shown, even for empty + cells. + +- QItemSelectionModel + * Made optimizations for some common cases. + * [143383] Fixed incorrect behavior of hasSelection(). + +- QLabel + * [133589] Fixed performance problems with plain text labels. + * Fixed support for buddies with rich text labels. + * [136918] Fixed setText() to not turn off mouse tracking when the text + used is plain text. + * [143063] Ensured that the mouse cursor is reset when a link is + clicked. + * [156912] Fixed bug where the mouse cursor shape was changed to the + pointing hand cursor, but would not be correctly cleared afterwards. + +- QLayout + * Added new features to Qt's layout system to enable: + - independent values for all of the four margins, + - independent horizontal spacing and vertical spacing in QGridLayout, + - non-uniform spacing between layout items, + - layout items to occupy parts of the margin or spacing when required + by the application or style. + +- QLibrary + * Fixed bug that caused QLibrary::load() to discard the real error + message if the error was something else than ERROR_MOD_NOT_FOUND. + (Win32) + * Fixed bug that prevented QLibrary::load() from loading a library with + no suffix (because LoadLibrary automagically appended the .dll suffix + on Win32). + * Corrected behavior of fileName() to ensure that, if we loaded a + library without specifying a suffix and the file found had the .dll + suffix, the fileName found is returned instead of the fileName + searched for (as was previously the case). + * [156276] Fixed behavior of unload() to return true only if the library + could be unloaded. + +- QLineEdit + * [156104] Ensured that input methods are disabled when not in the + Normal edit mode. + * [157355] Fixed drag and drop bug on Mac OS X that could occur when + dragging inside the widget. + * [151328] Ensured that the caret is removed when text is selected on + Mac OS X. + * [136919] Ensured that fewer non-printable characters are replaced + with spaces. + +- QList + * Fixed a race-condition in QList::detach() which could cause an + assertion in debug mode. + +- QListView + * [136614] Fixed the behavior of Batched mode to ensure that the last + item of the batch is displayed. + * Fixed some issues with jerky scrolling in ScrollPerItem mode if the + grid size was different to the delegate's size hint. + * [113437] Prevent noticeable flicker on slow systems in Batched mode + by laying out the first batch immediately. + * [114473] Added a new property to QListView: selectionRectVisible. + * Fixed a bug that could cause too many items to be selected. + * Fixed issue that could cause list views to have incorrect scroll bar + ranges if their grid sizes differed from their item sizes. + * [144378] Improved navigation for cases where an item is taller than + the viewport. + * [148846] Fixed an issue that prevented scroll bars from being updated + correctly when items were moved programmatically. + * [143306] Improved support for keyboard navigation and selection. + * [137917] Shift-click extended mode selection in icon mode now selects + the correct items. + * [138411] Fixed bug where hidden items would cause drawing problems + when pressing Ctrl+A. + +- QListWidget + * [146284] Ensured that the effect of SingleSelection mode is also taken + into account when setSelected() is called on items. + * [151211] Added removeCellWidget() and removeItemWidget() functions. + +- QLocale + * Updated the locale database to CLDR 1.4: more locales supported; + numerous fixes to existing locales. + +- QMacStyle + * [159270] Fixed drawing of icons on buttons with no text. + * [146364] Fixed drawing of multi-line text for items in a QToolBar. + * [145346] Removed unwanted wrapping of text in a QPushButton. + * Fixed drawing of "Flat" group boxes. + * [113472] Fixed drawing of text on vertical headers when resizing. + * [148509] Ensured that the correct font is used for buttons and labels + when the application is not configured to use the desktop settings. + * [106100] Improved the look of push buttons with menus. + * Made fixes to Qt's layout system that enable more native-looking + forms. + * [151739] Buttons with an icon are now centered correctly. + * [142672] Fixed font size bug on the drop down box for QComboBox. + * [148832] The button on a combo box is now showing as pressed when the + drop down menu is shown. + * [147377] Ensured that combo boxes now scale correctly on Mac OS X. + * [143901] Fixed the highlight color for widgets such as QComboBox so + that it follows the system settings on Mac OS X. + * [151852] Fixed size calculation for QPushButton with an icon. + * [133263] Removed the coupling of text size and button kind, enabling + them to be set independently. + * [133263] Ensured that QPushButton respects calls to setFont(). + * [141980] Text with small font sizes is now centered vertically correct + inside push buttons. + * [149631] Ensure that beveled button types are chosen if text doesn't + fit inside a button instead of cutting the text. + * [151500] Fixed incorrect QPushButton text clipping behavior. + * [147653] Fixed bug that caused the sort indicator to be drawn on top + of the text in QHeaderView. + * [139149] Fixed issues with CE_SizeGrip in right-to-left mode. + * [139311] Improved drawing of the title in QGroupBox. + * [128713] Ensured that drawing of the focus frame now follows pixel + metrics. + * [142274] Made QSlider tickmark drawing more like Cocoa. + * focusRectPolicy() is now obsolete. This is now controlled by the + Qt::WA_MacShowFocusRect attribute. + * widgetSizePolicy() is now obsolete. This is now controlled by the + Qt::WA_Mac*Size attribute. + * [129503] Ensured that a group box without a title no longer allocates + space for it. + * Ensured that a more appropriate width is used for push buttons. + * [132674] Ensured that tab bar drawing is correct when the tab's font + isn't as tall as the default. + * [126214] Ensured that the QSizeGrip is drawn correctly in brushed + metal windows. + * Improved styling of docked QDockWidgets. + +- QMainWindow + * [145493] Fixed a crash that could occur when calling setMainWindow(0) + on X11. + * [137013, 158094] Fixed bugs relating to the handling of size hints, + minimum/maximum sizes and size policies of QDockWidgets in main + windows. + * [147964] Animated tool bar areas adjust dynamically when a QToolBar is + dragged over them. + * Added the dockOptions property. This makes it possible to: + - specify that tabbed dock areas should have vertical tab bars, + - disable tabbed docking altogether, + - force tabbed docking, disallowing the placement of dock widgets + next to each other. + * Fixed bugs in saving and restoring main window state. + * [143026] Fixed support for hiding and showing toolbars on Mac OS X. + * [131695] Add unified toolbar support on Mac OS X. + +- QMdiArea +- QMdiSubWindow + * New classes. QMdiArea is a replacement for QWorkspace. + +- QMenu + * The addAction() overloads that accept a slot argument now honor the + slot's bool argument correctly. + * [129289] Added support for handling context menus from within a menu. + * [144054] Fixed scrolling logic. + * [132524] Allow setVisible() of separator items on Mac OS X native + menu items. + * [131408] Torn-off menus now have fixed sizes to prevent the window + system from resizing them. + * [113989] Added some fuzziness to the "snap to" detection. + * [155030] Do not disable command actions when merge is disabled. + * [131702] Tear-off menus no longer appear only once. + * [138464] Ensured that, if a popup menu does not fit on the right-hand + side of the screen, it is aligned with the right side of the parent + widget instead of the left side. + * [130343] Ensured that only the left mouse button triggers menu actions + on Windows. + * [139332] Fixed an issue that caused submenus to close when moving the + mouse over a separator. + * [157218] Ensured that torn-off menus are not closed when Alt is + pressed. + * [135193] Ensured that the size hint, maximum size and minimum size are + taken into account for each QWidgetAction. + * [133232] Improved handling of menus that are opened at specified + positions. + * [141856] Fixed bug where exec() would return NULL if the user pressed + a mnemonic shortcut. + * [133633] Fixed focus problem with keyboard navigation between menus + and widget actions. + * [134560] Fixed bug that prevented status tips from being shown for + actions in tool button menus. + * [150545] Fixed memory leak on Mac OS X. + * [138331] Fixed bug that could cause menus to stay highlighted after + the closing of a dialog. + * Menu shortcuts are now cleared if the corresponding QAction is cleared + on Mac OS X. + * Fixed bug that could cause changes to shortcut to not take effect on + Mac OS X. + * [12536] Don't allow Tab to be used to navigate menus on Mac OS X. + * [108509] Prevented shortcuts from stealing keyboard navigation keys. + * [134190] Added support for Shift+Tab to enable backwards navigation. + +- QMenuBar + * [135320] Make show() a no-op on Mac OS X to prevent the menu bar from + being visible at the same time as a native Mac menu bar. + * [115471] Fixed torn-off menu behavior to ensure that mouse events + are propagated correctly on second level tear-offs. + * [126856] Fixed an issue that could cause several menus to be open at + the same time. + * [47589] The position of the menu is now shifted horizontally when + there is not enough space (neither above nor below) to display it. + * [131010] Fixed bug where adding an action and setting its menu would + prevent the action from being triggered through its shortcut. + * [142749] Fixed bug where setEnabled(false) had no effect on Mac OS X. + * [141255] Made it possible to make an existing menu bar an application- + wide menu bar with setParent(0) on Mac OS X. + +- QMessageBox + * [119777] Ensured that pressing Ctrl+C in message boxes on Windows + copies text to the clipboard. + * Added setDefaultButton(StandardButton) and + setEscapeButton(StandardButton) functions. + +- QMetaObject + * Optimized invokeMethod() to avoid calling type() unnecessarily. + +- QMetaType + * [143011] Fixed isRegistered() to return false when the type ID does + not correspond to a user-registered type. + +- QModelIndex + * [144919] Added more rigorous identity tests for model indexes. + +- QMotifStyle + * [38624] Fixed the behavior when clicking on a menu bar item a + second time; the menu will now close in the same way that native + Motif menus do. + +- QMutex + * [106089] Added tryLock(int timeout), which allows a thread to specify + the maximum amount of time to wait for the mutex to become available. + * [137309] Fixed a rare deadlock that was caused by compiling with + optimizations enabled. + * Optimized recursive locking to avoid two unnecessary atomic operations + when the current thread already owns the lock. + * Optimized non-recursive mutexes by avoiding a call to pthread_self() + on Unix. + +- QNetworkInterface + * [146834] Now properly generates broadcast addresses on Windows XP. + +- QNetworkProxy + * Added support for transparent HTTP CONNECT client proxying. + * Added support for complex authenticators through QAuthenticator. + +- QObject + * Added a compile time check to ensure that the objects passed to + qobject_cast contain a Q_OBJECT macro. + * [133901] Improved the run time warnings from setParent() that is + output when trying to set a new parent that is in a different thread. + * [140106] Fixed a deadlock that could occur when deleting a QObject + from the destructor of a QEvent subclass. + * [133739] Fixed compiler warnings from g++ in findChildren<T>(). + * Documented the QEvent::ThreadChange that is sent by moveToThread(). + * [130367] Improved the run time warning that is output when creating + a QObject with a parent from a different thread. + * [114049] Made dumpObjectInfo() also dump connection information. + +- QPageSetupDialog + * [136041] Margins are now saved and used properly when printing. + +- QPainter + * Fixed stroking of non-closed polygons with non-cosmetic pens in the + OpenGL paint engine. + * [133980] Fixed stroking bug for RoundJoin and MiterJoin with paths + containing successive line segments with a 180 degree angle between + them. + * [141826] Fixed stroking with MiterJoin of paths with duplicated + control points. + * [139454, 139209] Fixed problem with SmoothTransformation that caused + images to fade out toward the edges in raster paint engine. + * Added the HighQualityAntialiasing render hint to enable pixel shaders + for anti-aliasing in the OpenGL paint engine. + * [143503] Fixed broken painting when using a QPainter on a + non-top-level widget where the world matrix is disabled then + re-enabled. + * [142471] Fixed dashed line drawing of lines that are clipped against + the device rectangle. + * [147001] Fixed bug with drawing of polygons with more than 65536 + points in the raster paint engine. + * [157639] Calling drawPolygon() from multiple threads no longer causes + an assertion. + * Optimized line and rectangle drawing in the raster paint engine. + * [159047] Fixed case where fillRect() would ignore the brush origin. + * [143119] Fixed bug where drawing a scaled image on another image would + cause black lines to appear on the edges of the scaled image. + * [159894] Fixed X11 errors when using brush patterns on multiple + screens. + * [148524] Fixed X11 errors when drawing bitmaps containing a color + table with alpha values. + * [141871] Optimized and fixed drawing of extremely large polygons. + * [140952] Fixed transformed text drawing on X11 setups that used + fontconfig without Xrender. + * [139611] Fixed smooth transformation of pixmaps for X11. + * [132837] Fixed text drawing on images with certain fonts on Mac OS X. + * [147911] Use font anti-aliasing when rotating small fonts on Windows. + * [127901] Optimized gradient calculations. + * [139705, 151562] Optimized clipping algorithms in the raster paint + engine. + * Optimized blending operations in the raster paint engine using MMX, + 3DNOW and SSE2. + * Optimized fillRect() for opaque brushes. + * Made general speed optimizations, especially in the OpenGL and raster + paint engines. + +- QPainterPath + * [136924] Correctly convert Traditional Chinese fonts (e.g., MingLiu) + to painter paths. + +- QPicture + * [142703] QPicture now correctly preserves composition mode changes. + * Fixed QPicture text size handling on devices with non-default DPI. + * [133727] Fixed text alignment handling when drawing right-to-left + formatted text into a QPicture. + * [154088] Fixed bugs that could occur when reading QPicture files + generated with Qt 3. + +- QPixmap + * Added cacheKey() as a replacement for serialNumber(). + * [97426] Added a way to invert masks created with createMaskFromColor(). + * Fixed a crash that could occur when passing a 0 pointer to the + constructor that accepts XPM format image data. + +- QPixmapCache + * [144319] Reinserting a pixmap now moves it to the top of the Least + Recently Used list. + +- QPlastiqueStyle + * [133220] Fixed QProgressBar rendering bugs. + +- QPrintDialog + * [128964] Made "Print" the default button. + * [138924] Ensured that the file name is shown in the file dialog when + printing to a file + * [141486] Ensured that setPrintRange() correctly updates the print + dialog on X11. + * [154690] Ensured that "Print last page first" updates the QPrinter + instance on X11. + * [149991] Added support for more text encodings in the PPD subdialog. + * [158824] Disable the OK button in the dialog if no printers are + installed. + * [128990] X11: Don't immediately create an output file when a file name + is entered in the print dialog. + * [143804] Ensured that the default printer is set to the one specified + by the PRINTER environment variable. + +- QPrinter + * Added the supportedPaperSources() function. + * [153735] Significantly speeded up generation of PDF documents with Asian + characters. + * [140759] Documented that the orientation cannot be changed on an active + printer on Mac OS X (native format). + * [136242] PostScript generator: Don't generate huge PostScript files for + pattern brushes. + * [139566] Added support for alpha blending when printing on Windows. + * [151495] Fixed image scaling problems when printing on Windows. + * [146788] Optimized drawTiledPixmap() on Windows. + * [152637] PDF generator: Ensured that the pageRect property is set up + correctly. + * [152222] PDF generator: Fixed bug that lead to fonts being too small on + Mac OS X. + * [151126] Ensured that ScreenResolution is respected on Mac OS X. + * [151141] PDF generator: Make PDFs using the default font on Mac OS X + searchable. + * [129297, 140555] PS/PDF generator: Drastically reduced the sizes of + generated files and speeded up generation when using simple pens. + * [143803] Correctly set the default printer name on X11. + * [134204] PDF generator: Ensured that the correct output is generated + when drawing 1-bit images + * [152068] PS generator: Ensured that the correct PostScript is generated + when embedding TrueType fonts with broken POST tables. + * [143270] X11: Ensure that sigpipe is ignored when printing to an + invalid printer using the PDF generator. + +- QProcess + * [97517] Added suport for specifying the working directory of detached + processes as well as retrieving the PID of such processes. + * [138770] Greatly improved the performance of stdin and stdout handling + on Windows. + * [154135] Fixed crashes and lock-ups due to use of non-signal-safe + functions on Unix. + * [144728] Fixed race conditions on Windows that would occur when + calling bytesWritten() while using the waitFor...() functions. + * [152838] Ensured that finished() is no longer emitted if a process + could not start. + +- QProgressBar + * [146855] Ensured that setFormat() now calls update() if the format + changes. + * [152227] Improved support for wide ranges across the entire integer + range. + * The setRange() function is now a slot. + * [137020] Ensured setValue() forces a repaint for %v. + +- QProgressDialog + * The setRange() function is now a slot. + * [123199] Ensured that the Escape key closes dialog even when the + cancel text is empty. + +- QPushButton + * [114245] Fixed some styling issues for push buttons with popup menus. + * [158951] Buttons with icons now center their content to be more + consistent with buttons that do not have icons in most styles. + * [132211] Fixed setDefault() behavior. + +- QReadWriteLock + * [106089] Added the tryLockForRead(int) and tryLockForWrite(int) + functions which allow a thread to specify the maximum amount of time + to wait for the lock to become available. + * [131880] Added support for recursive write locking. + +- QRectF + * [143550] Added the QRectF(topRight,bottomLeft) constructor. + +- QRegion + * Added several optimizations for common operations on X11 and Qtopia + Core. + +- QResource + * Allow a QByteArray to be used for run time resource registration. + +- QScrollArea + * [140603] Fixed flickering when the scroll widget is right-aligned. + +- QSemaphore + * Add the tryAcquire(int n, int timeout) function which allows a thread + to specify the maximum amount of time to wait for the semaphore to + become available. + +- QSettings + * [153758] Fixed various bugs that could occur when writing to and + reading from the Windows registry. + +- QSizeGrip + * Added support for size grips in TopLeftCorner/TopRightCorner on Windows. + * Added support for size grips on subwindows. + * [150109] Fixed bug where the position could change during resize. + * [156114] Fixed incorrect size grip orientation on X11. + +- QSlider + * Prevent the widget from getting into infinite loops when extreme + values are used. + +- QSocketNotifier + * [148472] Mac OS X now prevents the file descriptor from being closed + when a socket notifier is deregistered. + * [140018] Mac OS X will now invalidate the backing native socket + notifier upon deregistration. + * Optimized performance by avoiding some debugging code in release + builds. + +- QSortFilterProxyModel + * [151352] Ensured that the dataChanged() signal is emitted when + sorting. + * [154075] Added support to handle the insertion of rows in the source + model. + * [140152] Added a property to force the proxy model to use QString's + locale-aware compare method. + +- QSpinBox + * [141569] Disallow typing -0 in a QSpinBox with a positive range. + * [158445] Add the keyboardTracking property. When set to false, don't + send valueChanged() with every key press. + * [143504] Made undo/redo work correctly. + * [131165] Fixed highlighting according to the native look on Mac OS X. + +- QSplashScreen + * [38269] Added support for rich text. + +- QSplitter + * [139262] Fixed bug that caused the splitter to snap back and forth in + certain situations. + +- QSql + * Added NumericalPrecisionPolicy to allow numbers to be retrieved as + double or float. + +- QSqlDriver + * [128671] Added SimpleLocking to DriverFeature. + +- QSqlQueryModel + * [155402] Fixed bug where the rowsAboutToBeRemoved() and rowsRemoved() + signals were emitted when setQuery() was called on an already empty + model. + * [149491] Fixed bug where blank rows were inserted into the model if + the database driver didn't support the QuerySize feature and the + result set contained more than 256 rows. + +- QSqlRelationalTableModel + * [142865] Fixed support for Interbase and Firebird by not using 'AS' in + generated SQL statements. + +- QSqlTableModel + * [128671] Ensured that the model has no read locks on a table before + updating it. Fixes parallel access for in-process databases like + SQLite. + * [140210] Fixed bug where setting a sort order for a column caused no + rows to be selected with PostgreSQL and Oracle databases due to + missing escape identifiers in the generated SQL statement. + * [118547] Don't issue asserts when inserting records before calling + select() on the model. + * [118547] Improved error reporting. + +- QSslCertificate +- QSslCipher +- QSslError +- QSslKey +- QSslSocket + * New classes. Added support for SSL to QtNetwork. + +- QStandardItemModel + * Reduced the construction time when rows and columns are given. + * [133449] Improve the speed of setData() + * [153238] Moving an item will no longer cause that item to lose its + flags. + * [143073] Calling setItemData() now triggers the emission of the + dataChanged() signal. + +- QStatusbar + * [131558] Increased text margin and fixed a look and feel issue on + Windows. + +- QString + * fromUtf8() now discards UTF-8 encoded byte order marks just like the + UTF-8 QTextCodec. + * [154454] Fixed several UTF-8 decoder compliance problems (also affects + the UTF-8 QTextCodec). + * Removed old compatibility hack in fromUtf8()/toUtf8() to allow round + trip conversions of invalid UTF-8 text. + * Added support for full Unicode case mappings to toUpper() and + toLower(). + * Correctly implemented case folding with the foldCase() method. (Also + for QChar.) + * [54399] Added more overloads (taking up to 9 arguments) for arg(). + +- QStringListModel + * Made it possible for items to be dropped below the other visible items + on a view with a QStringListModel. + +- QStyle + * Added the SP_DirHomeIcon standard pixmap to provide the native icon + for the home directory. + * Added documentation to indicate that pixel metrics are not necessarily + followed for all styles. + * standardPixmap() has been obsoleted. Use standardIcon() instead. + * Added SP_VistaShield to support Vista UAC prompts on Windows Vista. + * [103150] Added SH_FocusFrame_AboveWidget to allow the focus frame to + be stacked above the widget it has focus on. + * The default password character is now a Unicode circle, the asterisk + is still used for QMotifStyle and its subclasses. + * [127454] CE_ToolBoxTab now draws two parts, CE_ToolBoxTabShape and + CE_ToolBoxTabLabel. This should make QToolBox more styleable. + * [242107] Added a QStyleOptionToolBoxV2 with tab position and selected + position enums. + +- QStyleOption + * [86988] Added an initializeFromStyleOption() function for the many + widgets that need to create a QStyleOption subclass for style-related + calls. + +- QSyntaxHighligher + * [151831] Fixed bug where calling rehighlight() caused highlighBlock() + to be called twice for each block of text. + +- QSystemTrayIcon + * [131892] Added support to allow messages to be reported via AppleScript + on Mac OS X. + * [151666] Increased the maximum tool tip size to 128 characters on the + Windows platforms that support it. + * [135645] Fixed an issue preventing system tray messages from working + on some Windows platforms. + * Addded the geometry() function to allow the global position of the + tray icon to be obtained. + +- QTabBar + * [126438] Added the tabAt(const QPoint &pos) function. + * [143760] Fixed a bug where scroll buttons were shown even when + disabled. + * [130089] Ensured that the tool tip help is shown on disabled tabs. + * [118712] Enabled auto-repeat on scroll buttons. + * [146903] Ensured that the currentChanged() signal is emitted when a + tab is removed + * Ensured that corner widgets are taken into account when calculating + tab position in the case where the tab bar is centered. + * [132091] Re-introduced the Qt 3 behavior for backwards scrolling of + tabs. + * [132074] Ensured that currentChanged() is always emitted when the + current tab is deleted. + +- QTableView + * No longer allow invalid spans to be created. + * [145446] Fixed bug where setting minimum height on horizontal header + caused the the table to be rendered incorrectly. + * [131388] Fixed case where information set using setRowHeight() was + lost on a subsequent call to insertRow(). + * [141750] Fixed issue where spanned table items were painted twice per + paint event. + * [150683] Added property for enabling/disabling the corner button. + * [135727] Added the wordWrap property. + * [158096] resizeColumnToContents(int i) now has the same behavior that + resizeColumnsToContents() uses for individual columns. + +- QTableWidget + * [125285] Ensured that dataChanged() is only emitted once when + setItemData() is used to set data for more than one role. + * [151211] Added removeCellWidget() and removeItemWidget(). + * [140186] Fixed bug where calling setAutoScroll(false) would have no + effect. + +- QTabWidget + * Tab widgets now take ownership of their corner widgets and allow + corner widgets to be unset. + * [142464] Fixed incorrect navigation behavior that previously made it + possible to navigate to disabled tabs. + * [124987] Ensured that a re-layout occurs when a corner widget is set. + * [111672] Added the clear() function. + +- QtAlgorithms + * [140027] Improved the performance of qStableSort() on large data sets. + +- QTcpSocket + * Added several fixes to improve connection reliability on Windows. + * Made a number of optimizations. + * Improved detection of ConnectionRefusedError on Windows and older + Unixes. + * Added support for proxy authentication. + +- QTemporaryFile + * [150770] Fixed large file support on Unix. + +- QTextBrowser + * [126914] Fixed drawing of the focus indicator when activating links. + * [82277] Added the openLinks property to prevent QTextBrowser from + automatically opening any links that are activated. + +- QTextCodec + * Improved the UTF-8 codec's handling of large, rare codepoints. + * [154932] The UTF-8 codec now keeps correct state for sequence + f0 90 80 80 f4 8f bf bd. + * [154454] Fixed several UTF-8 decoder compliance problems also + affecting QString::fromUtf8(). + * Fixed the UTF-8 codec's handling of incomplete trailing UTF sequences + to be the same as QString::fromUtf8(). + +- QTextCursor + * The definition of the block character format (obtained using the + blockCharFormat() and QTextBlock::charFormat() functions) has been + changed to be the format used only when inserting text into an empty + block. + If a QTextCursor is positioned at the beginning of a block and the + text block is not empty then the character format to the right of the + cursor (the first character in the block) is returned. + If the block is empty, the block character format is returned. + List markers are now also drawn with the character format of the first + character in a block instead of the invisible block character format. + +- QTextDecoder + * Added the hasFailure() function to indicate whether input was + correctly encoded. + +- QTextDocument + * [152692] Ensured that the print() function uses the document's default + font size. + * Added the defaultTextOption property. + * Setting a maximum block count implicitly now causes the undo/redo + history to be disabled. + * Made numerous fixes and speed-ups to the HTML import. + * [143296] Fixed HTML import bug where adding a <br> tag after a table + would cause two empty lines to be inserted instead of one. + * [144637, 144653] Ensured that the user state property of QTextBlock is + now preserved. + * [140147] Fixed layout bug where the document size would not be updated + properly. + * [151526] Fixed problem where the margins of an empty paragraph above a + table would be ignored. + * [136013] The "id" tag can now be used to specify anchors. + * [144129] Root frame properties are now properly exported/imported. + +- QTextDocumentFragment + * QTextDocumentFragment no longer stores the root frame properties, + the document title or the document default font when it is created + from a document or from HTML. Use QTextDocument's toHtml() and + setHtml() function if you want to propagate these properties to and + from HTML. + +- QTextEdit + * [152208] Ensured that the undo/redo enabled state is preserved across + setPlainText() and setHtml() calls. + * [125177] Added a print() convenience function that makes it possible + to support QPrinter::Selection as selection range. + * [126422] Fixed bug in copy/paste which could cause the background + color of pasted text to differ from that of the copied text. + * [147603] Fixed various cases where parts of a text document would be + inaccessible or hidden by the scroll bars. + * [148739] Fixed bug where setting the ensureCursorVisible property + would not result in a visible cursor. + * [152065] Fixed cases where currentCharFormatChanged() would not be + emitted. + * [154151] The undoAvailable() and redoAvailable() signals are no longer + emitted too many times when entering or pasting text. + * [137706] Made the semantics of the selectionChanged() signal more like + QLineEdit::selectionChanged(). + +- QTextFormat + * [156343] Fixed crash that could occur when streaming QTextFormat + instances. + +- QTextLayout + * Fixed support for justified Arabic text. + * [152248] Fixed assert in sub/superscript handling of fonts specified + in pixel sizes. + * Optimized text layout handling for pure Latin text. + * Ensured that OpenType processing is skipped altogether if a font does + not contain OpenType tables. + * Fixed some issues in the shaper for Indic languages. + * Upgraded the line breaking algorithm to the newest version + (http://www.unicode.org/reports/tr14/tr14-19.html). + * [140165] Changed boundingRect() to report the actual position of the + top left line instead of incorrectly reporting (0, 0) for the top-left + corner in every case. + * Fixed various problems with text kerning. + +- QTextStream + * [141391] Fixed bug that could occur when reusing a text stream with + the setString() method. + * [133063] atEnd() now works properly with stdin. + * [152819] Added support for reading and writing NaN and Inf. + * [125496] Ensured that uppercasebase and uppercasedigits work as + expected. + +- QTextTable + * [138905] Fixed bug where merging cells in a QTextTable would cause + text to end up in the wrong cells. + * [139074] Fixed incorrect export of cell widths to HTML when exporting + tables containing column spans. + * [137236] Fixed bug where a text table would ignore page breaks. + * [96765] Improved handling of page breaks for table rows spanning + several pages. + * [144291] Fixed crash that could occur when using setFormat() with an + old format after inserting or removing columns. + * [143501] Added support for vertical alignment of table cells. + * [136397, 144320, 144322] Various border styles and border brushes are + now properly supported. + * [139052] Made sure that empty text table cells get a visible + selection. + +- QtGlobal + * Added Q_FUNC_INFO, a macro that expands to a string describing the + function it is used in. + * [132145] Fixed Q_FOREACH to protect against for-scoping compiler bugs. + * Fixed a race condition in the internal Q_GLOBAL_STATIC() macro. + * [123910] Fixed crashes on some systems when passing 0 as the + message to qDebug(), qWarning(), and qFatal(). + +- QThread + * [140734] Fixed a bug that prevented exec() from being called more than + once per thread. + * Optimized the currentThread() function on Unix. + * Added the idealThreadCount() function, which returns the ideal number + of threads that can be run on the system. + +- QThreadStorage + * [131944] Refactored to allow an arbitrary number of instances to be + created (not just 256 as in previous versions). + * Updated documentation, as many caveats have been removed in Qt 4.2 and + Qt 4.3. + +- QTimeEdit + * [136043] Fixed the USER properties. + +- QTimeLine + * [145592] Fixed the time line state after finished() has been emitted. + * [125135] Added the resume() function to allow time lines to be resumed + as well as restarted. + * [153425] Fixed support for cases where loopCount >= 2. + +- QTimer + * Added the active property to determine if the timer is active. + +- QToolBar + * [128156, 138908] Added an animation for the case where a tool bar is + expanded to display all its actions when its extension button is + pressed. + +- QToolBox + * [107787] Fixed rendering bugs in reversed mode. + +- QToolButton + * [127814] Ensured that the popup delay respects style changes. + * [130358] Ensured that Hover events are sent to the associated QAction + when the cursor enters a button. + * [106760] Fixed bug where the button was drawn as pressed when using + MenuButtonPopup as its popup mode. + +- QToolTip + * [135988] Allow tool tips to be shown immediately below the cursor + * [148546] The usage of tool tip fading now adheres to the user settings + on Mac OS X. + * [145458] Tool tip fading now looks native on Mac OS X (fading out + rather than in). + * [145557] Fixed bug that caused tool tips to remain visible if the + cursor left the application quickly enough on Mac OS X. + * [143701] Fixed bug that caused tool tips to hide behind stay-on-top + windows on Mac OS X. + * [158794] Fixed bug on Mac OS X where isVisible() returned true even + if the tool tip was hidden. + +- QTreeView + * [158096] Added checks to prevent items from being dropped on their own + children. + * [113800] When dragging an item over an item that has child items, + QTreeView will now automatically expand after a set time. + * [107766] Added a style option (enabled in the Windows style) to + select the first child when the right arrow key is pressed. + * [157790] It was possible to get in a state where clicking on a branch + (+/- in some styles) to expand an item didn't do anything until + another location in the view was clicked. + * Made it possible to create a selection with a rectangle of negative + width or height. + * [153238] Ensured that drops on branches are interpreted as drops onto + the root node. + * [152868] Fixed setSelection() so that it works with negative + y-coordinates. + * [156522] Fixed repaint errors for selections in reversed mode. + * [155449] Prevented the tree from having huge columns when setting the + alignment before it is shown. + * [151686] Hidden rows are now filtered out of the user selection range. + * [146468] Fixed bug where the indexRowSizeHint could be incorrect in + the case where columns were moved. + * [138938] Fixed an infinite loop when calling expandAll() with no + column. + * [142074] Scroll bars are no longer shown when there are no items. + * [143127] Fixed bug that prevented the collapsed() signal from being + emitted when the animated property was set to true. + * [145199] Fixed crash that could occur when column 0 with expanded + items was removed and inserted. + * [151165] Added the indexRowHeight(const QModelIndex &index) function. + * [151156] Add support for hover appearance. + * [140377] Add the expandTo(int depth) function. + * Clicking in the empty area no longer selects all items. + * [135727] Added the wordWrap property. + * [121646] setSelection() now selects the item within the given + rectangle. + * Added the setRowSpanning(int row, const QModelIndex &parent) and + isRowSpanning(int row, const QModelIndex &parent) functions. + +- QTreeWidget + * [159078] Fixed drag and drop bug on Mac OS X that could occur when + dragging inside the widget. + * [159726] Fixed crash that could occur when dragging a QTreeWidgetItem + object with an empty last column. + * [154092] Fixed case where the drag pixmap could get the wrong position + when dragging many items quickly. + * [152970] Hidden items are no longer returned as selected from the + selectedItems() function. + * [151211] Added the removeCellWidget() and removeItemWidget() + functions. + * [151149] Made the header text left-aligned instead of center-aligned + by default. + * [131234] Made it possible to do lazy population by introducing the + QTreeWidgetItem::ChildIndicatorPolicy enum. + * [134194] Added the itemAbove() and itemBelow() functions. + * [128935] The disabled state of an item is now propagated to its + children. + * [103421] Added the QTreeWidgetItem::setExpandable() function. + * [134138] Added the QTreeWidgetItem::removeChild() function. + * [153361] Ensured that items exist before emitting itemChanged(). + * [155700] Fixed a crash in QTreeWidget where deleted items could still + be referenced by a selection model. + +- QUdpSocket + * [142853] Now continues to emit readyRead() if the peer temporarily + disappears. + * [154913] Now detects datagrams even when the sender's port is invalid. + +- QUndoStack + * [142276] Added the undoLimit property which controls the maximum + number of commands on the stack. + +- QUrl + * [134604] Fixed the behavior of the obsolete dirPath() function on + Windows. + +- QValidator + * [34933] Added support for scientific notation. + +- QVariant + * [127225] Unloading a GUI plugin will no longer cause a crash in + QVariant in a pure QtCore application. + +- QWaitCondition + * [126007] Made the behavior of wakeOne() consistent between Windows and + Unix in the case where wakeOne() is called twice when exactly 2 + threads are waiting (the correct behavior is to wake up both threads). + +- QWidget + * [139359] Added the locale property to make it easy to customize how + individual widgets display dates and numbers. + * [155100] Fixed a regression that could cause Qt::FramelessWindowHint + to be ignored for frameless windows. + * [137190] Ensured that windows with masks are now rendered correctly + with respect to window shadows on Mac OS X. + * [139182] Added the render() function to allow the widget to be + rendered onto another QPaintDevice. + * [131917] Fixed bug where minimum and maximum sizes were not respected + when using X11BypassWindowManagerHint. + * [117896] Fixed setGeometry() to be more consistent across Mac OS X, + Windows, X11 and Qtopia Core. + * [132827] Allow the focus to be given to a hidden widget; it will + receive the focus when shown. + * Reduced the overhead of repainting a widget with lots of children. + * Clarified the documentation for the Qt::WA_AlwaysShowToolTips widget + attribute. + * [154634] Ensured that the Qt::WA_AlwaysShowToolTips widget attribute + is respected for all widgets. + * [151858] Improved the approximation returned by visibleRegion(). + * [129486] Ensured that calling setLayout() on a visible widget causes + its children to be shown, making its behavior consistent with the + QLayout::addWidget() behavior. + +- QWindowsStyle + * [110784] Scroll bar and spin box arrows now scale with the widget size. + * Given certain panel and button frames a more native appearance. + * [142599] Ensured that a QDockWidget subclass is not required when + using the style to draw a CE_DockWidgetTitle. + +- QWindowsXPStyle + * [150579] Fixed the use of the wrong background color for QSlider. + * [133517] Fixed styling of the unused area in header sections. + * [48387] Fixed styling of MDI/Workspace controls. + * [109317] Fixed a rendering issue with tab widgets in the Silver color + scheme. + * [114120] Ensured that the frame property for combo boxes is respected. + * [138444] Fixed crash that could occur when passing 0 as the widget + argument to drawComplexControl(). + +- QWizard +- QWizardPage + * New classes. Based on QtWizard and QtWizardPage in Qt 4 Solutions. + Redesign of QWizard from Qt 3. + +- QXmlParseException + * [137998] Fixed incorrect behavior where systemId/publicId was never + reported. + +- QXmlSimpleReader + * QXmlSimpleReader no longer reads entire files into memory, allowing + it to handle large XML files. + +- Q3DateEdit + * [131577] Fix a bug that could occur when entering out-of-range years + in a Q3DateEdit. + +- Q3DockWindow + * [125117] Fixed some style issues with Windows XP and Plastique styles. + +- Q3GroupBox + * Added FrameShape, FrameShadow, lineWidth, and midLineWidth properties. + +- Q3ListView + * [150781] Fixed a crash in setOpen() (previously fixed in Qt 3). + +- Q3ScrollView + * [125149] Mouse events should not be delivered if the Q3ScrollView is + disabled. + This fixed the case where items were still selectable when Q3ListView + was disabled using the setEnabled() function. + +- Q3SqlCursor + * [117996] Improved support for tables and views that have fields with + whitespace in their names. + +- Q3TextEdit + * [136214] Fixed invalid memory reads when using undo/redo + functionality. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + +- Interbase driver + + * [127724] Added support for OUT values from stored procedures. (See the + SQL Database Drivers documentation for details.) + * [159123] Fixed crash that could occur when fetching data from + Interbase 2007 databases. + * [143474] Added support for SQL security-based roles. + * [134608] Fixed bug where queries in some cases returned empty VARCHAR + fields if they contained non-ASCII characters. + * [143471] Fixed bug that caused fetching of multisegment BLOB fields to + fail in some cases. + * [125053] Fixed bugs where NUMERIC fields were corrupted or returned as + the wrong type in some cases. + +- MySQL driver + * [156342] Fixed bug where BINARY and VARBINARY fields were returned as + QString instead of QByteArray. + * [144331] Fixed bug where a query would become unusable after executing + a stored procedure that returns multiple result sets. + +- OCI driver + + * Added support for low-precision retrieval of floating point numbers. + * [124834] Fixed bug where the binding strings failed on certain + configurations. + * [154518] Fixed bug where connections were not properly terminated, + which lead to resource leaks and connection failures. + +- ODBC driver + + * Increased performance for iterating a query backwards. + * [89844] Added support for fetching multiple error messages from an + ODBC driver. + * [114440] Fixed bug where binding strings longer that 127 characters + failed with Microsoft Access databases. + * [139891] Fixed bug where unsigned ints were returned as ints. + +- SQLite driver + * [130799] Improved support for attatched databases when used with + QSqlTableModel. + * [142374] Improved error reporting in cases where fetching a row fails. + * [144572] Fixed the implementation of escapeIdentifier() to improve + support for identifiers containing whitespace and reserved words when + used with the model classes. + +- PostgreSQL driver + + * [135403] Properly quote schemas in table names ("schema"."tablename"). + * [138424] Fixed resource leak that occurred after failed connection + attempts. + +- DB2 driver + + * [110259] Fixed bug where random characters were prepended to BLOB + fields when fetched. + * [91441] Fixed bug where binding strings resulted in only parts of the + strings being stored. + +**************************************************************************** +* QTestLib * +**************************************************************************** + + * [138388] Floating point numbers are now printed in printf's "%g" format. + * [145643] QEXPECT_FAIL does not copy or take ownership of "comment" + pointer. + * [156346] Gracefully handle calls to qFatal(). + * [154013] Don't count skips as passes. + * [145208] Display QByteArrays in convenient ways. + * Output well-formed XML. + +**************************************************************************** +* QDBus * +**************************************************************************** + +- Library + + * Added support for QList<QDBusObjectPath> and QList<QDBusSignature> + to allow them to be used without first having to register the types. + + * Added support for using QtDBus from multiple threads. + + * Made it possible to marshal custom types into QDBusArgument. + + * qdbuscpp2xml: + * [153102] Ensure that Q_NOREPLY is ignored. + * [144663] Fixed problems with executing qdbuscpp2xml on Windows. + * Don't require moc to be on a path listed in the PATH environment + variable. + + * QDBusInterface: + * Changed asserts in the QDBusInterface constructor to QDBusErrors. + * QDBusConnection: + * Added a separate slot for delivering errors when calling + callWithCallback(). + + +- Viewer + + * Moved QDBusViewer from demos to QDBus tools. + * Added ability to get and set properties. + * Added support for demarshalling D-Bus variants. + * Added a property dialog for entering arguments. + * Made QDBusObjectPath clickable in the output pane. + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + * [153346] Ensured that tablet events are not delivered while a drag and + drop operation is in progress. + * [141756] Ensured that the Plastique or Cleanlooks styles are not used + as default styles when Xrender is not available. + * [139455] Fixed QX11EmbedContainer race causing sudden unembedding of + clients. + * [96507] Added support for using _POSIX_MONOTONIC_CLOCK as the + timer source (also affects Qtopia Core). + * [128118] Fixed garbage output when calling QPixmap::grabWindow() + on a window on a non-default screen. + * [133119] Ensured that X11 color names are detected in the + RESOURCE_MANAGER property. + * [56319] Added support for _NET_WM_MOVERESIZE to QSizeGrip, which + cooperates with the window manager to do the resizing. + * Fixed QWidget::isMaximized() to return false when the window is + only maximized in a single direction. + * [67263] Fixed a bug that could cause applications to freeze while + querying the clipboard for data. + * [89224] Fixed the behavior of minimized Qt applications to show the + correct icon (instead of the standard OpenWindows icon) on Solaris. + * [116080] Ensured that the TIMESTAMP clipboard property is set using + XA_INTEGER (as defined in the ICCCM). + * [127556] Refactored timer accounting code to be more efficient and + less cumbersome to maintain. + * [132241] Add support for DirectColor visuals. Qt will now create and + initialize a colormap when using such visuals. + * [140737] Fixed QEventDispatcherGlib::versionSupported() to be much + simpler. + * Fixed a bug where QWidget::windowFlags() would not include + Qt::X11BypassWindowManagerHint for Qt::ToolTip and Qt::Popup windows. + * [146472] Fixed a bug where QWidget::setWindowFlags() would disable + drag and drop operations from outside Qt applications. + * [150352] Fixed painting errors after show(), hide(), then show() + under GNOME. + * [150348] Fixed a bug that would incorrectly set the Qt::WA_SetCursor + attribute on top-level windows. + * [135054] Fixed system palette detection code to use contrast that is + more similar to the desktop settings. + * [124689] Documented potential QDrag::setHotSpot() inefficiency on X11. + * [121547] Fixed QWidget::underMouse() to ensure that the value it + returns is correctly updated after the mouse button is released. + * [151742] Improved robustness when executing in an X11-SECURITY + reduced ssh-forwarded session. + * [142009] Fixed a bug that caused an application using the Qt Motif + Extension to freeze when trying to copy text into a QTextEdit. + * [124723] Fixed PseudoColor detection to correctly handle cases where + the colormap is not sequential. + * [140484] Don't use the GLib event dispatcher if GLib version is too + old. + * Fixed a bug where a window would get an incorrect size after the + second call to show(). + * [153379] Fixed shortcuts where the modifier also includes Mode_switch + in the modifier mask; for example, Alt+F on HP-UX. + * [154369] Fixed drag and drop to work properly after re-creating a + window ID. + * [151778] Fixed mouse enter/leave event platform inconsistencies. + * [153155] Added the QT_NO_THREADED_GLIB environment variable, which + tells Qt to use Glib only for the GUI thread. + * Fixed restoreGeometry() to ensure that full-screen windows are moved + to the correct position. + * [155083] Don't use legacy xlfd fonts if we have fontconfig available + on Solaris. + * [150348] Fixed bug where setCursor() would not work properly after a + setParent() call. + * Made Plastique the default style on X11. + +Windows +------- + * Added an experimental DirectX-based paint engine. + * [141503] Ensured that clicks inside tool windows won't cause them to + be activated if there is no child widget to take focus. + * [153315] Improved handling of Synaptic touchpad wheel messages. + * [150639] Added support for CF_DIBV5 format and improved support for + transparent images on the clipboard. + * [146862] Improved readability of progress bar text when shown in + the Highlight palette color. + * [146928] Fixed issue where shortcut events were discarded when auto- + repeat was disabled. + * [141079] Ensured that wheel events contain button information. + * [149367] Ensured that QMimeData::formats() returns all the available + formats in the object. + * [135417] Ensured that WM_SYSCOLORCHANGE does not trigger resetting of + fonts. + * [137023] Fixed a crash that could occur while translating mouse + events. + * [138349] Fixed incorrect focus handling with multiple top-level + widgets. + * [111211] Ensured that tool windows don't steal focus from their + parents while opening. + * [143812] Fixed a bug which can break the widget's ability to maximize + after saving and restoring its state. + * [111501] Ensured that SPI_SETWORKAREA messages trigger calls to + QDesktopWidget::workAreaResized(). + * [141633] Fixed command line parsing for GUI applications. + * [134984] Ensured that SockAct events are not triggered from + processEvents(ExcludeSocketNotifiers). + * [134164] Ensured that top-level widgets configured with + MSWindowsFixedSizeDialogHint are centered properly. + * [145270] Fixed mapFromGlobal() and mapToGlobal() for minimized or + invisible widgets. + * [132695] Fixed a potential crash that could occur when changing the + application style after the system theme had been changed. + * [103739] Workspace title bars now respect custom title bar heights in + the Windows XP style. + * [48770] Improved size grip behavior in top-level widgets. + * [113739] Fixed an issue that could occur when using QWidget::scroll() + with on-screen painting. + * [129589] Added support for moving the mouse cursor to the default + button in dialogs. + * [139120] Added support for resolving native file icons through + QFileIconProvider. + * [129927] Added the QWindowsVista style to support native look and feel + on Windows Vista. + * [106437] Removed the Windows XP style from the list of keys supplied + by QStyleFactory::keys() on platforms where it is not available. + * [109814] Improved UNC path support. + * [157261] Fixed crash that could occur when using Alt keycodes with + text handling widgets. + * [116307] Ensured that QEvent::WindowActivate is sent for tool windows. + * [150346] Fixed a bug that would cause an application to exit when its + last window (a modal dialog) was closed and a new window shown + immediately afterwards. + * [90144] Fixed a bug that caused QApplication::keyboardModifiers() to + return modifiers even after they had been released. + * [142767] Fixed a bug that allowed a QPushButton to become pressed even + though its mousePressEvent() handler function was never called. + * [151199] Usage of blocking QProcess API in a thread no longer hangs + the desktop. + * [144430] Made the shortcut system distinguish between Key_Return and + Key_Enter. + * [144663] Made sure qdbuscpp2xml can parse moc output on Windows. + * [126332] Made QDBus compile on Windows platforms. + * [133823, 160131] Fixed bug in the QWidget::scroll() overload that + accepts a rectangle argument. + +- ActiveQt + * Ensured that, when loading a typelib file to obtain information about + a control, the typelib is processed correctly. + * [158990] Ambient property change events are now emitted regardless of + the container's state. + * [150327] ActiveQt based controls will now return the correct Extents + depending on the size restrictions set on the widget. + * [141296] Ensured that the ActiveQt DLL is unloaded from the same + thread which loaded it. + +- Qt Style Sheets + * Added support for background clipping using the border-radius + property. + * Almost all widgets are now styleable using style sheets. + * Added support for the -stylesheet command line option to QApplication. + * Added support for styling through SVG. + * Added support to allow colors and brushes to be specified as + gradients. + +Mac OS X +-------- + + * qtconfig is no longer available on Mac OS X. All settings are read + from the system's configuration. + * [156965] Always offers a 'TEXT' type flavor for non-Pasteboard-aware + Mac Application pastes. + * [158087] Fixed various mouse event propagation bugs. + * Introduced Q_WS_MAC32/Q_WS_MAC64 for 64 vs. 32-bit detection compile + time infrastructure. + * [156431] Introduced WA_MacAlwaysShowToolWindow to allow windows to + behave as utility windows as opposed to floating windows. + * [155651] Qt will now follow the HIView focus chain to allow wrapped + HIViewRef's to take focus when appropriate. + * [149753] Qt will not deliver mouse release events to widgets that do + not process mouse press events (including widgets with the + WA_MacNoClickThrough attribute set). + * Introduced support for 64-bit Mac OS X builds. Only available on + Mac OS X 10.5 (Leopard). + * [145166] Ensured that CoreGraphics high quality interpolation is used + when using SmoothPixmapTransform. + * [134873] Ensured that the widget hierarchy is used to find a widget + with a cursor rather than using the frontmost widget. + * [132178] Enforced the requirement for double click detection that the + second click must be near the previous click to prevent false double + clicks being reported. + * [131327] Fixed mouse propagation for top-level widgets with the + WA_MacNoClickThrough attribute set. + * Now entirely QuickDraw clean. + * [155540] Ensured that asymmetic scales work with cosmetic pens. + * [141300] Fixed an issue that prevented QFontDatabase/QFontDialog from + showing all fonts installed on the system. + * Fixed writing system detection in QFontDatabase. + * [148876] Fixed bug that caused characters to be committed twice in the + Chinese Input method. + * Removed the use of an extra setFocus() in the event loop when a window + is activated. + * [152224] Fixed bug in QWidget's window state. + * [156431] Added the WA_MacAlwaysShowToolWindow widget attribute to + allow Mac users to create utility-window-style applications. + * [144110] Fixed resizing of sheets on Panther. + * [140014] Made it possible to drag QUrls on Panther. + * [155312] Fixed bug that could occur when dragging several URLs to + Finder and certain other applications. + * [155244] Fixed bug that could occur when dragging a URL to Finder. + * [153413] Fixed bug that could occur when dragging URLs between Qt applications. + * [152450] Fixed bug that could occur when dragging URLs to applications + such as the trash can. + * [151158] Fixed an issue that prevented widgets from receiving drag + events if a move event was ignored. + * [145876] Ensured that a drag move event is always received directly + after a drag enter event (according to the documentation). + * [156365] Fixed event bug when dragging URLs to receivers that only + refer to a drop location. + * [119251] Tool tips and dialogs no longer cause full-screen windows to + show their menu bar and the dock. + * [147640] Fixed QScrollArea scrolling behavior when showing regions + with dimensions between 2^15 and 2^16 pixels. + * [158988] Ensured that a mouse enter event is now sent before a mouse + press event upon window activation. + * [157313] Fixed hanging bug that could occur if the system clock was + adjusted backwards while using sockets. + * [151411] Fixed window switching bug (Cmd + ~) that could occur when + showing a modal dialog with a popup. + * Ensured that changing a shortcut containing a cursor movement key now + works correctly. + * [143912] Fixed focus problem caused by mouse hovering over widgets + with modal sheets. + * [141456] Fixed activation bug exhibited by minimized windows upon + being shown. + * [155394] Fixed issue where a widget's move and resize state were not + set correctly upon widget initialization. + * [254325] Fixed sheet transparency bug. + * [152481] Fixed crash that could occur when clicking in a window when a + modal print dialog is showing. + * [143835] Removed unnecessary window updates for active windows. + * [145552] A mouse up event is now sent when a window drag has finished + after a mouse press. + * [146443] Ensure that, if a window is moved before it is shown for the + first time, it is placed correctly when it is shown. + * [141387] Fixed bug that caused two near-simultaneous mouse presses on + different widgets to be interpreted as a single click. + * [139087] Fixed activation for some types of shortcuts, such as + QKeySequence(Qt::CTRL | Qt::Key_Plus). + * Only use Roman for determining with System Fonts since Mac OS X will + perform the necessary translation. + * When using OpenGL, ensured that the 32-bit accumulation buffer is used + in preference to the 64-bit accumulation buffer by default. + * [123467] Fixed bug where the event loop would spin and not emit + aboutToBlock() when popup menus were shown. + * [137677] QString::localAwareCompare() now respects the sorting order + set in the system preferences. + * [139658] Mac OS X accessibility no longer requires that + QApplication::exec() is called. + * [118814, 126253, 105525] Fixed several QCombobox look and feel issues. + * [145075] Fixed aliased line drawing bug. + * [122826] Fixed QScrollBar painting error. + * [131794] PixelTool and QWidget::grabWindow() now work on non-primary + monitors. + * [160228] The Quartz 2D-based paint engine now respects the font style + strategy. + * Made miscellaneous changes to make wrapping non-Qt HIViews easier. + * Qt is now built with MACOSX_DEPLOYMENT_TARGET set to 10.3 (since Qt + can only be run on Mac OS X 10.3 and above). + * QSound now uses NSSound for its implementation instead of the + deprecated C QuickTime API. This means that the QtGui library is no + longer dependant on the QuickTime framework. + * Added a -dwarf-2 configure option to allow people to turn on DWARF2 + debugging symbols when that is not the default. + The ability to use DWARF2 debugging symbols was added in later version + of the Xcode 2.x series. + * Fixed many assertions when running against Carbon_debug. + * Renamed the Qt::WA_MacMetalStyle attribute to WA_MacBrushedMetal. + * Changing the Qt::WA_MacBrushedMetal attribute will now cause a + StyleChange event to be sent. + * The Qt translations and Qt Linguist phrase books have been added to + the binary package. + * [134630] Fixed loading of plugins in the case where universal plugins + are used but the wrong architecture is accidentally read first, + instead of returning an architecture mismatch. + * QCursor now uses NSCursor internally instead of the deprecated + QuickDraw functions. + * Corrected the encoding and decoding functions for QFile to handle + different Unicode normalization forms. + +Qtopia Core +----------- + + - New font system + * A new font subsystem has been implemented that, by default, allows + glyphs rendered at run time to be shared between applications. A new + pre-rendered font format (QPF2) has also been implemented together + with a new "makeqpf" tool to generate them. + * Support for custom font engine plugins has been added through + QAbstractFontEngine and QFontEnginePlugin. + * The default font family has been changed to DejaVu Sans. + +- OpenGL ES + * [126421, 126424] Added QGLWindowSurface and QGLScreen framework for + OpenGLES (and others) on Qtopia Core. A sample implementation can be + found in the examples/qtopiacore directory. + + - Accelerated graphics API + * [150564] API changes in QWSWindowSurface. New functions include + QWSWindowSurface::move() to enable accelerated movement of top-level + windows. + * [152755] API clarification: The windowIndex parameter to + exposeRegion() now always refers to the window that is being changed. + * [150569, 139550] Made API additions to QWSWindow to give QScreen + information about the window state, window flags, and window dirty + region + * [150746] Added QScreen::pixelFormat() and QScreen::setPixelFormat() to + enable drawing optimizations for some formats. + + - General fixes + * Improved support for compiling a LSB (Linux Standard Base) compliant + Qtopia Core library. + * [133365] Added the QWSServer::setScreenSaverBlockLevel() function to + make it possible to block the key/mouse event that stops the screen + saver at a particular level. + * Fixed QFontDatabase::addApplicationFont() for Qtopia Core. + * [131714] Fixed performance problems with drag and drop operations. + * [96507] Added support for using _POSIX_MONOTONIC_CLOCK as the timer + source (also effects Qt/X11). + * [132346] Fixed a performance bug causing unnecessary screen copies + when using a hardware cursor. + * [121496] Made lots of performance improvements in the VNC driver. + * [138615] Fixed color conversion for cases where the VNC server is + running on a big-endian machine. + * [131321] Optimized text drawing. + * [136282] Fixed a bug preventing QWidget::setCursor() and + QWidget::unsetCursor() from taking effect immediately. + * [139318] Fixed a performance bug that would cause non-visible regions + to receive paint events. + * [139858] Implemented acceleration for the 'pc' mouse handler. + * [140705, 140760] Improved release of used resources (e.g, shared + memory and hardware resources) when the application exits + unexpectedly. + * [144245] Fixed a problem with some cross-compilers triggered by using + math.h functions taking a double argument when using float data. + * Optimized QSocketNotifier activation. + * [156511] Implemented QDirectPainter::ReservedSynchronous which makes + a QDirectPainter object behave as a QDirectPainter region allocated + using the static functions. + * [94856] Fixed console switching when using the Tty keyboard driver. + * [157705] Ensured that device parameters are passed to keyboard and + mouse plugins. + * [156704] Fixed QPixmap::grabWindow() for 18 and 24-bit screens. + * [154689] Fixed the -no-gfx-multiscreen configure script option. + * [160404] Fixed 4-bit grayscale support in QVFb and QScreen. + * Optimized QCop communication. + * Fixed bug in QWidget::setMask() for visible widgets. + * [152738] Allow transparent windows to be shown on top of unbuffered + windows. + * [154244] Fixed bug where a client process would not terminate when + server closed. + * [152234] No longer send key events for one client to other client + processes for security and performance reasons. + * [148996] Added checks in the server to avoid buffer overruns if + clients send malformed commands + * [154203] Fixed mouse calibration bug with mirrored/180-degree-rotated + touch screens. + +**************************************************************************** +* Compiler Specific Changes * +**************************************************************************** + +- MinGW + * [119777] Removed the dependency on mingwm.dll when compiled with the + -no-exceptions option. + +**************************************************************************** +* Tools * +**************************************************************************** + +- Build System + * Auto-detect Xoreax IncrediBuild with XGE technology, and enable + distribution of moc and uic. + * Shadow builds are now supported by nmake/mingw-make of the Qt build + system. + * [151184] Separated the -make options for demos and examples + * [150610] Fixed the build system to take into account that fvisibility + requires gcc on Unix builds. + * [77152] Ensured that, at "make install" time, all meta-information + files will be cleaned up to remove reference to source code path. + * [139399] Ensured that the environment CC/CXX on Unix are taken into + account when running the build tests. + * [145344] Ensured that "make confclean" will remove all files + generated by configure. + * [145659] Added ability to disable SSE. + * Added DWARF2 detection and support into the build system to reduce + the debug library size. + * Added macx-g++-64 meta-spec for Qt configuration purposes. + * [127840] The pkgconfig files (.pc) are now placed into lib/pkgconfig. + * [135547] Allow Windows line endings on UNIX and vice versa in + .qt-license files. + * [133068] GIF support is now enabled by default. + * [137728] Fixed failed build on Mac OS X and Solaris when using the + -separate-debug-info command line option for the configure script. + * [137819] Added support for precompiled headers with the Intel C++ + Compiler for Linux. + * Re-used qplatformdefs.h from linux-g++ in the linux-icc mkspec. + * [121633] Added linux-icc-64 mkspec which is needed for building on + some 64-bit hosts. + * Removed cd_change_global from win32-msvc's qmake.conf file. + * [116532] Keep intermediate manifest file in object directory instead + of the destination directory. + * Added a configuration type to qconfig.pri on Windows. + * Corrected paths in Makefile generation when configuring with the + -fast command line option. + * Added tests to auto-detect a suitable TIFF library. + * [152252] Fixed auto-detection of MSVC.NET 2005 Express Edition in + configure.exe. + * [151267] Ensured that the manifest tool does not get forward slashes + when writing paths to manifest files. + * [153711] Ensured that the directory separators used in .qmake.cache + are correct for normal MinGW and Cygwin MinGW. + * [154192] Fixed a problem with configure.exe executing non-existing + scripts. + * [128667] Added a confclean build target on Windows for the top-level + project file. + + +- Assistant + * [99923] Added a context menu for the tabs in the tab bar. Right click + on a tab to get a list of common options. + * Assistant now uses the "unified toolbar" look on Mac OS X. + +- Designer + * [151376] Added a context menu to the tab order editor. + * [39163] Added a tab order editor shortcut - using Ctrl with the left + mouse button makes it possible to start ordering from the selected + widget. + * [159129] Fixed a crash in the tab order editor. + * Improved snapping behavior for multi-selections and negative + positions. + * [126671] Made it possible to move widgets by using the cursor keys + without modifiers. The Shift modifier enables resizing, the Control + modifier enables snapping behavior. + * [111093] Added a file tool bar. + * [156225] Fixed the delete widget command for cases where the deleted + widget is a child of a QSplitter widget. + * [101420] Improved the WYSIWYG properties of forms with respect to the + background colors used. + * [112034] Enabled Ctrl + drag as a shortcut for copying actions in + menus and tool bars. + * [128334] Double clicking on a widget now invokes the default action + from its task menu. + * [129473] Fixed bug in the handling of default tab orders. + * [131994] Made it possible to set the tab order for checkable group + boxes. + * Added new cursor shapes. + * [137879] Improved the editor for key sequence properties. + * [150634] Improved refreshing behavior of all properties after property + changes. + * [147655] Fixed shadow build issues. + * [151567, 149966] Ensured that object names are unique. + * [80270] Fixed bug with saving icons taken from resources which are + specified with aliases. + * [152417] Fixed loading/saving of header labels of Q3Table widgets. + * Added the QColumnView widget to the widget box. + * Added support for new margin (left, top, right and bottom) and spacing + (horizontal and vertical) properties of the layout classes. + * [146337] Ensure that the margin and spacing properties are not saved + if they have the default values. + * Fixed layout handling in Q3GroupBox + * [124680] Ensured that the correct pages are displayed when selecting a + QStackedWidget page in the object inspector. + * [88264] Ensured that breaking a nested layout doesn't break the parent + container's layout. + * [129477] Added support for dynamic properties via the context menu in + the property editor. + * [101166] Added an "Add separator" action to the standard context menu. + * [132238] Added a "Recent files" button to the New Form dialog. + * [107934] Updated the font anti-aliasing property from a boolean + property to a property with 3 values. + * [155464] Added a German translation. + * [146953] Enabled support to allow widgets to be dragged onto the + object inspector. + * [152475] Ensured that the widget box saves and restores its state. + * [111092] Added support to allow images to be dragged from the resource + editor and dropped onto the action editor or icon properties in the + property editor. + * [111091] By default, icon dialogs now open to show the resource + browser. + * [152475] Added a button to load newly found custom widget plugins to + the plugin dialog. + * [151122] Added warnings for custom widget plugin issues such as load + failures and class name mismatches. + * [138645] Improved the form preview on Mac OS X, provided a close + button and a menu entry. + * [103801] Made buddy editing possible for custom widgets derived from + QLabel. + * [148677] Added a font chooser for tool windows. + * [107233] Made the grid customizable, provided default and per-form + grid settings. + * [149325] Provided a form editor context menu in the object inspector. + * [147174] Changed the elide mode and improved column resizing behavior + of property editor and object inspector. + * [147317] Improved handling for switching user interface modes, + preventing the geometries of form window from being changed. + Made 'Bring to front' deiconify windows. + * [146629] Fixed never ending loop on Linux triggered by scrolling + quickly through the pages of a QStackedWidget. + * [145806] Enabled KDialog to be used as a template. + * [142723] Enabled the pages of QStackedWidget, QTabWidget and QToolBox + to be promoted. + * [105916] Enabled QMenuBar to be promoted. + * [147317] Improved the New Form dialog. + * [95038] Fixed handling of layout defaults. + * [103326] Made it possible to make connections to form signals. + * [145954] Added a new dialog for promoted widgets with the ability to + specify global include files. + Added promotion candidates to the form's context menu. + * [127232] Ensured that global include files returned by + QDesignerCustomWidgetInterface::includeFile() are handled correctly. + * [139985] Improved handling of layouts for custom widgets. + * [99129] Made custom implementations of QDesignerMemberSheetExtension + work correctly. + * [87181] Added support for setting properties on items in a multi- + selection. + Added support for sub-properties. For example, changing the font size + of a multi-selection does not overwrite other font settings. + Added undo-support for property comments. + * [135360] Added tooltips to the property editor, action editor and + object inspector. + * [103215] Added handling of escaped newline characters for text + properties. + Added support for validators and syntax highlighting for style sheets. + * [135468] Added support for tool bar breaks. + * [135620] Fixed several issues concerning handling of properties of + promoted widgets. + * [109077] Provided multi-selection support in the object inspector. + * [133907] Made in-place editing of plain label texts possible. + * [134657] Fixed table widget editor. + * [90085] Made the resource editor consume a little less horizontal + screen real estate. + * [105671] Added support to allow main windows to be maximized while + being previewed. + * Added a style sheet editor. + +- Linguist + * Translations can be exported to and imported from XLIFF files. + * [136633] Fixed "Find" so that it searches in comments. + * [129163] Fixed bug that prevented "Next Unfinished" from working if + there was no selected item. + * [125131] Made the translation loading behavior consistent with + Assistant and Designer. + * [125130] Added the -resourceDir command line argument for consistency + with Assistant and Designer, to allow the path of translation files + to be specified. + * [124932] XML files (.ts and .xlf) are now written with platform- + specific line endings. + * [128081] Ensure that the tree view does not lose focus when the up + and down cursor keys are used for navigation. + Use Shift+Ctrl+K and Shift+Ctrl+L instead if you really want this + behavior. + * [139079] Added a DTD to document the TS file format. + +- lupdate + * Made some small improvements in lupdate's .pro file parser. + Fixed bug in inclusion of relative .pri files. + * [140581] Improved namespace/context parsing. + * [142373] Fixed bug when running lupdate on a SUBDIRS .pro file that + prevented TS files from being created. + * [135991] Ensure that .pro file comments are handled correctly when + they occur within a list of several variable assignments. + * [154553] Fixed bug with CODECFORTR that caused saving of incorrect + characters. + +- rcc + * [158522] By default compression is now set to the zlib default + (normally level 6). + * [133837] Allow absolute paths in .qrc files (accessible through the + original filesystem path). + * [146958] No longer returns error when a .qrc is empty. A (mostly) + empty file is generated instead. + +- moc + * [149054] Fixed parsing of old-style C enums. + * [145205] Ensured that a warning is given when a known interface + (marked with Q_DECLARE_INTERFACE) is subclassed that is not mentioned + in Q_INTERFACES. + * [97300] Allow @file to be given as the options input file to handle + command lines larger than allowed by the operating system. + +- uic + * [144383] Added checks to prevent generated code from calling + ensurePolished() before each constructor is finished. + * [138949] Ensured that font and size policy instances are reused in + generated code. + * [141350] Ensured that color brushes are reused in generated code. + * [141217] Improved handling of include files of Qt 3 classes. + * [144371] Ensure that each form's objectName property is not set in + setupUi() to avoid problems in cases where the name was already set. + * Added support for the QWidget::locale property. + * [141820] Fixed generation of connections in the form. + * [137520] Ensured that code to set toolTip, statusTip and whatsThis + properties is not generated when the corresponding QT_NO_* + preprocessor macros are defined. + * [128958] Ensured that static casts are not used in generated code. + * [116280] Added support for qulonglong and uint types. + +-uic3 + * [137915] Added functionality to extract images via the -extract + command line option. + * [129950] Added the -wrap command line option which specifies that a + wrapper class which is Qt 3 source compatible should be generated. + +- qmake + * [121965] Implemented DSW (Workspace files) generation for MSVC 6.0 + users. + * [132154] Added support for /bigobj option in the vcproj generator. + * Fixed crash with dependency analysis. + * Ensure that cleanup rules are not added for extra compilers with no + inputs. + * LEX/YACC support has been moved into .prf files. + * [156793] Introduced PRECOMPILED_DIR for PCH output (defaults to + OBJECTS_DIR). + * [257985] Fixed qmake location detection bug. + * Ensured that empty INCLUDEPATH definitions are stripped out. + * Allow QMAKE_UUID to override qmake deteremined UUID in the vcproj + generator. + * [151332] Ensured that .pc files are terminated with an extra carriage + return. + * [148535] Introduced QMAKE_FRAMEWORKPATH and used it internally. + * [127415] Fixed object_with_source. + * [127413] Introduced QMAKE_FILE_IN_PATH placeholder for extra + compilers. + * [95975] Replaced QMAKE_FILE_IN for custom build steps in DSP + generator. + * [141749] Added checks to prevent cyclical dependencies. + * [146368] Ensured that GNUmake .d files are removed upon distclean. + * Improved extensibility of the precompiled header support to allow icc + precompiled headers. + * [147142] Short-circuit previously seen library paths to avoid + cyclical .prl processing. + * [144492] Ensured that INSTALL_PROGRAM is set for INSTALLS in + macx-xcode projects. + * [143720] Extra compilers will now depend upon the input file + automatically. + * Introduced QMAKE_DISTCLEAN for extra files to be removed upon + invocation of "make distclean". + * [133518] Reduced the noise created by qmake warnings. + * [108012] Brought macx-xcode into line with macx-g++ with regards to + custom bundle types. + * [128759] Added support for spaces in paths to linked libraries. + * [83445] Made sure that "make distclean" in a library with a DESTDIR + really does remove the destination symbolic links. + * The subdir generator will now use - to separate target words and _ to + separate internally appended words. + * [125557] Fixed broken generation of dependencies for extra compilers. + * Ensured that the QMAKE_QMAKE variable is given a reasonable default + before parsing and evaluating project files. + * For Unix/Mac OS X, configure now has an -optimized-qmake option that + allows people to build qmake with optimizations. + This is disabled by default as older versions of some compilers take + a long time to build an optimized qmake. qmake is already built with + optimizations on Windows. + * [130979] Made the incremental link option case-insensitive. + * Ensured that paths for custom build steps in vcproj files have the + correct seperators. + * Avoid duplicate dependency paths, reduce file stats. + * [91313] Ensured that multiple commands in the DSP generator are + separated with \n\t characters. + * [108681] Added checks to avoid problems with uic3 files having + dependencies on themselves. + * [130977] Added support for non-flat output for vcproj files with + single configuration. + * [134971] Added support for more compiler and linker options for + vcproj files, and added catch-all cases which add options to + AdditionalOptions variables. + * [140548] Fixed escaping of the custom build step for image + collections. + * [114833] Ensured that paths in vcproj always have native filing + system separators. + * [144020] Only allow CONFIG+=staticlib for TEMPLATE==lib. + * [97300] Handle large number of include paths on Windows for moc by + using temporary files. (See moc changes.) + * [150519] Ensured that qmake is compiled with the correct mkspec on + Windows. + * [148724] Added manifest files to project clean up. + * [123501] Added /LIBPATH to AdditionalLibraryPaths in vcproj files. + * [80526] Made sure that extra compiler commands are not corrupted due + to path separator fixing. + * [109322] Moved hardcoded extra compilers, yacc and lex, into the PRF + (feature) system. + * [101783] Added a _DEBUG to Resource Tool for debug builds on Windows. + * [145074] Added a custom build step on input files, for extra compiler + files with built-in compilers for the output files. + * [150961] Added support for QMAKE_PRE_LINK in the DSP and VCPROJ + generators. + * Added checks to avoid double escaping of DESTDIR_TARGET file paths in + Windows Makefiles. + * Ensured that file paths for COPY_FILE and QMAKE_BUNDLE are escaped. + * [83765] Ensured that input files instead of output files are added to + extra compiler steps under certain conditions. + * [101482] Fixed relative path handling for RC_FILE. + +**************************************************************************** +* Plugins * +**************************************************************************** + +- QTiffPlugin + * [93364] Added support for the TIFF image format. diff --git a/dist/changes-4.3.1 b/dist/changes-4.3.1 new file mode 100644 index 0000000000..71de8e9bff --- /dev/null +++ b/dist/changes-4.3.1 @@ -0,0 +1,519 @@ +Qt 4.3.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.3.0. + +The Qt version 4.3 series is binary compatible with the 4.2.x, 4.1.x and +4.0.x series. Applications compiled for Qt 4.0, 4.1 or 4.2 will continue to +run with Qt 4.3. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Translations + * Updated the German translation to provide complete coverage of Qt. + +- QDBusView + * Added icons for Mac OS X and Windows. + +- Intel C++ Compiler for Linux + * Added support for version 10 of the compiler. See the Compiler + Notes documentation for known problems and work-arounds for this + compiler. + * Added linux-icc-32 mkspec, for building with the 32-bit compiler + on 64-bit hosts. + +Third party components +---------------------- + +- FreeType + * Security fix (CVE-2007-2754): Integer overflow in the + TT_Load_Simple_Glyph function in freetype 2.3.4 and earlier allows + remote authenticated users to execute arbitrary code via crafted BDF + fonts. + +- SQLite + * File descriptors are not inherited during spawn() anymore. + +Build System +------------ + + * Fixed native builds on ARM architectures. + +**************************************************************************** +* Library * +**************************************************************************** + +General Improvements +-------------------- + +- QAbstractItemView + * [166605] Fixed regression causing keyboard modifiers to have no effect + during drag and drop operations. + * [169233] Fixed bug that would prevent text from being selected in + double spin box editors. + * [168917] Text would sometimes not be selected in the editor. + +- QAbstractItemModel + * [166714] Fixed regression causing persistent indexes to not be + correctly updated. + +- QAbstractPrintDialog + * [163000] Fixed bug on Unix where the PrintSelection option would not + be enabled unless PrintPageRange was also enabled. + +- QApplication + * [166677] Windows only: Fixed an issue with alert() where windows + would keep flashing after being activated by the user. + * [168974] Fixed problems with compilation that could occur when + QT3_SUPPORT and QT_NO_CURSOR were defined. + +- QComboBox + * [165130] Mac OS X only: Fixed bug that caused an editable combo box to + cut off list entries. + +- QDesktopServices + * [165817] Fixed misleading documentation of + QDesktopServices::setUrlHandler(). + +- QDialog + * [166900, 166514] Fixed bug where a dialog could remain visible after + hide() had been called. + +- QFile + * [167217] Fixed regression that prevented the sequential bit from being + reset when reopening a file. + +- QFileDialog: + * [164947] Mac OS X only: Ensure that the parent of a native sheet dialog + is activated before a sheet is shown. + +- QFSFileEngine: + * [163406] Ensured that QFile::readLine() works on all platforms when + QFile is opened on file descriptor 0. + +- QGLWidget + * [162085] X11 only: Fixed usage of QGLWidget on multiple X11 screens. + * [164707] X11 only: Fixed the transparent overlay color usage to make + it possible to draw with a solid black color. Qt::transparent is now + always returned as the transparent color in an overlay. + * [162143] Fixed a crash that could occur when calling renderPixmap() + with extremely large sizes. It now gracefully fails instead. + +- QGraphicsItem + * [163430] Improved precision of QGraphicsItem::ItemIsMovable move + operations, and fixed move support for + QGraphicsItem::ItemIgnoresTransformations. + +- QGraphicsItemAnimation + * [164585] Fixed setTimeLine(0) to properly remove the existing timeline, + and also ensured that setting the same timeline twice works fine. + +- QGraphicsScene + * [163555] Flat items (items whose bounding rect width or height is 0) + no longer cause a full viewport update when they are updated. + +- QGraphicsView + * [160828] Fixed bug in QGraphicsScene/View::render() which could cause + nothing to be rendered for QPicture target devices. + * [163919] Scroll bar ranges are no longer reset to (0,0) when the + scroll bars are disabled (Qt::ScrollBarAlwaysOff). + * [163537] Scroll bar ranges are now correct also for styles with a + viewport frame only around the viewport itself (e.g., Motif and Mac + OS X style). + * [158245] Calling setScene(0) now recalculates the scroll bar ranges. + * [170619, 157400] Fixed rendering bugs that could occur when using a + semi-transparent foreground or background brush. + * [170619, 168885] Fixed a bug that would cause the rubber band to + appear after invoking a context menu. + +- QHostInfo + * [168233] Ensured that all pending look-ups are terminated on + application exit to avoid a delayed application shutdown while waiting + for the look-ups to complete. + * [167487] Fixed support for Unix platforms that allow IPv6 look-ups + through getaddrinfo(), but that don't support IPv6 sockets. + +- QImage + * [163727] Fixed artifacts in scaled images that could occur when using + Qt::FastTransformation. + * [169908] Fixed a crash that could occur when reading 4-bit + uncompressed BMP images. + +- QLocale + * [167534] Fixed bug that would cause QLocale::toString() to return + garbage if passed an invalid time or date. + +- QMainWindow + * [166004, 167651] Made the unified toolbar handle layout requests. + * Mac OS X only: Don't move the window's title bar when clicking on the + toolbar button. + * [164105] Made the unified toolbar handle showMaximized(). + * [162555] Move OpenGL contexts when the toolbar button is pressed and + we are using the unified toolbar. + * [169063] Fixed a crash that could occur when setting a new menu bar + and the old one contained corner widgets. + +- QMdiArea + * [162573] Improved switching between maximized subwindows (less + flickering). + * [162046, 164264] Improved activation behavior. + * [170770] Fixed inconsistent behavior with scroll bars when a subwindow + is maximized. + * [169873] Fixed incorrect positions of tiled subwindows. + +- QMdiSubWindow + * [168129] Improved the way a default window icon is selected. + * [169859] Improved menu bar buttons for maximized subwindows. + * Improved support for size grips. + * [169543] Windows only (XP style): Fixed a problem where the frame + width was 1 pixel wider than it should have been. + * [168829] Fixed incorrect margins of maximized subwindows inside + QMainWindow. + +- QMenu + * [166652] Fixed a regression where context menus could not be triggered + with the right mouse button. + * [161789] Fixed a bug that prevented tear-off handles from being + activated when they were dragged down from the menu bar item. + +- QMenuBar + * [168892] Fixed bug that made the extension always appear when adding a + separator to a menu bar. + * [166181] Fixed bug that caused extensions to be misplaced. + * [166242] Fixed bug that could cause menus to be collapsed. + +- QMessageBox + * Ensured that the default button isn't lost when the modality of the + message box is changed. + +- QMacStyle + * Ensured that items with State_Focus actually get the focus ring drawn. + +- QNetworkProxy + * [170549] Fixed a regression from 4.2.3 in the default constructor; if + used before any other proxy settings were applied, it would fail to + initialize the proxy handlers, effectively disabling support for + SOCKS5 and HTTP proxies. + +- QOpenGLPaintEngine + * [166087] Fixed a memory leak caused by not releasing GL program + handles if they failed to compile. + * [166054] Ensured that push and pop operations are performed on the + texture matrix stack and the client state attributes when begin() + and end() are called. + * [161021] Fixed rendering of points with cosmetic pens with widths + greater than 0. + +- QPainter + * [158815] Fixed rendering artifacts for extended composition modes with + semi-transparent or anti-aliased drawing. + * [163744] Fixed aliased ellipse drawing artifacts (horizontal lines) + in raster engine. + * [166623] Fixed bug where gradients with ObjectBoundingMode would be + drawn at an incorrect offset. + * [167497] Fixed color bleeding artifacts at the edges when drawing + images/pixmaps with SmoothPixmapTransform on X11. + * [168621] Fixed bug which would cause projective transformations to be + incorrectly applied for non-top-level widgets. + * [168623] Fixed drawing of gradients with projective transformations. + * [167891] Fixed an assert in QBezier::shifted() that occured when + drawing certain paths. + +- QPlastiqueStyle + * [167145] Fixed a regression with combo and spin box text margins. + +- QPrintDialog + X11 only: + * [142701] Fixed an assert which could occur on a system with CUPS + setup, but no printers available. + * [165957] Added support to allow printers to be chosen from the + NPRINTER and NGPRINTER enviroment variables. + Ensured that CUPS command line options are not used when not using + CUPS. + * [158807] Fixed page ordering when printing to a CUPS printer or to PDF + files. + * [155129] Fixed Landscape printing with CUPS version < 1.2. + + Windows only: + * [166054] Fixed a crash which could occur when trying to use a + QPrintDialog to configure a printer set to use + QPrinter::PostScriptFormat as output format. + * [162729] Fixed an assert that could occur when entering an invalid + page range. + +- QPrintEngine + * [166499] Windows only: Fixed a bug that could cause printing from a + QTextEdit to produce incorrect wrong results under certain + circumstances. + * [161915] Mac OS X only: Drawing vertical lines with a dot pattern now + work correctly on OS X 10.3.9. + +- QProcess + * [161944] QProcess::setReadChannel() no longer affects the contents of + the stderr / stdout / unget buffers. QProcess::readAllStandardError() + and QProcess::readAllStandardOutput() no longer clear any unget data + or buffered data. + +- QPixmap + * [167841] Fixed bug where filling a QPixmap with an alpha color would + fail to detach the pixmap, causing copies of the pixmap to be changed + as well. + * [157166] X11 only: Fixed problem with disappearing icons on 8-bit + TrueColor displays. + * [161307] Mac OS X only: Drawing bitmaps on pixmaps now works + correctly. + +- QRasterPaintEngine + * [166710] Fixed bug that prevented Qt::OpaqueMode from being taken into + account under certain circumstances when QPainter::fillRect() was + called. + * [159538] Fixed drawing of a monochrome image into another monochrome + image. + * [166000] Fixed compilation of mmxext optimizations. + * [156925] Fixed performance bug in 3DNow! optimizations. + +- QRegion + * [167445] Removed potential assert in QRegion::operator^ on Unix. + +- QScriptEngine + * [165899] Fixed bug where calling an overloaded slot from a script + would pick the wrong overload when the argument is a QObject. + * [166903] Fixed crash when evaluating a call to a script function that + ends with an if-statement with a true-part that ends with a return + statement (and has no else-part). + +- QScrollArea + * [167838] Use micro focus rectangle (if "active") instead of the entire + widget in ensureWidgetVisible(). + +- QSortFilterProxyModel + * [167273] Fixed regression that caused QSortFilterProxyModel to assert + when changing data in a QSqlTableModel source model with the + OnFieldChange edit strategy. + +- QSqlQueryModel + * [166880] Fixed a bug where setQuery() could cause a crash by calling + hasFeature() on the wrong driver instance. + +- QSqlRelationalTableModel + * [140782] Fixed a bug which caused insertRecord() to fail when record() + returns a record containing duplicate field names. + +- QSslCertificate + * [168116] Don't crash when passing 0 to QSslCertificate::fromDevice(); + issue a warning instead. This fix also removes warnings about + uninitialized symbols when accessing the static functions in + QSslCertificate before creating a QSslSocket. + +- QSslSocket + * [164356] Fixed a crash that could occur when passing a string to + setCiphers(). + * [166633] Fixed a memory leak that would occur with each established + connection. + * [165962] Fixed support for wildcard certificates. + * [167593] Fixed a bug that caused QSslSocket::protocol() to be ignored + and set to the default of SSLv3 under certain circumstances. + * [167380] Fixed a crash when assigning a null key for SSL servers. + * [169571] Fixed a crash that could occur after disconnecting from a + remote address. + +- QTcpSocket + * [169183] Removed a qWarning() when reading from a closed socket + (regression from 4.2.3). + +- QTemporaryFile + * [167565] Fixed a regression from 4.2.3; size() would always return 0. + +- QTextEdit + * [161577] Fixed regression causing Shift-Backspace to be ignored. + * [165833] Fixed floating point overflow causing incorrect page heights + for text documents. + * [167377] Fixed performance regression when appending a lot of text in + NoWrap line break mode when there is a horizontal scroll bar. + * [163446] Fixed excessive emission of selectionChanged() signals when + moving the cursor. + * [167701] Fixed QTextEdit::setLineWrapMode to not change the + wordWrapMode property when called with NoWrap. + +- QTextDocument + * [160631] Fixed missing HTML export of page break policies. + * [163258] Fixed bug that prevented text table borders from being drawn + in QLabels and tool tips. + * [166670] Fixed layout bug that caused the right margin property of + paragraphs inside table cells to be ignored. + * [168406] Fixed rendering bug which would cause incorrect background + fills for paragraphs with a left margin set. + +- QTextLayout + * [166083] Fixed incorrect line breaking when breaking at a tab + character. + * [165861] Fixed support for QTextOption::NoWrap. + +- QLabel + * [162515] Fixed bug that prevented QLabel's alignment from being + applied properly to rich text. + +- QUrl + * Fixed a bug in QUrl::clear() which left some internal data uncleared. + +- QWidget + * [165177] Fixed crash that could occur when deleting a focus widget from a + window with a non-null parent. + * [165654] Fixed issue with incorrect repainting that could occur when + deleting an opaque child widget. + +- QWindowsVistaStyle + * [162730] Fixed the use of an incorrect font for item views on Windows + Vista. + * [157324] Improved the native appearance of indeterminate progress + bars. + * [170012] Fixed a bug which prevented the busy mode of a progress bar + from working when both its range and value were set to zero. + +- QWindowsXPStyle + * [132695] Fixed a crash issue that could occur after multiple system + theme changes. + +- QWizard + * [159684] AeroStyle: Fixed bug that caused the minimum height to be set + too low. + * [161670] AeroStyle: Fixed a problem that caused title bar buttons to + remaining glowing after the mouse had left the window. + * [161678] AeroStyle: Fixed a problem with incorrect vertical center + alignment of wizard buttons. + +- Q3Header + * [167283] Fixed regression in painting of the header. + +- Q3ListViewItem + * [165853] Fixed background coloring of a cell. + +- Q3Socket + * [163563] Fixed regression in canReadLine(); it now properly searches + all internal buffers. + +- Q3Table + * [168497] Fixed incorrect updates when using setUpdatesEnabled(). + +- Q3Wizard + * [168195] Fixed bug that could cause the wrong page to be shown when + reopening a wizard. + + +**************************************************************************** +* Database Drivers * +**************************************************************************** + +- Interbase driver + * [149761] Added support for compiling Firebird 2.0 on 64-bit platforms. + * [165423] Fixed a regression causing an assert when calling a stored + procedure without out-parameters. + * [166238] Fixed a bug that caused only the first segment of multi- + segmented BLOBs to be retrieved in some cases. + +- ODBC driver + * [167167] Fixed a regression that caused a crash when checking DBMS + general information when connecting to a database. + +- SQLite driver + * Use new sqlite3_prepare16_v2 instead of sqlite3_prepare16 when + possible. + * [167665] Fixed a regression that caused field names to be escaped + multiple times when selecting from views. + +**************************************************************************** +* Examples * +**************************************************************************** + +- Secure Socket Client + * New example, showing how to use QSslSocket to communicate over an + encrypted (SSL) connection. + +- Accelerated Screen Driver + * Ensured that the example does not crash if it is unable to get a + pointer to the frame buffer. + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + + * [163862] Fixed a bug where QClipboard would escape all non-ASCII + characters that were copied from GTK+ applications. + * [165182] Fixed building with the Intel C++ Compiler for Linux on + IA-64 (Itanium) (missing functions in qatomic_ia64.h) + * [163861] Fixed building on AIX 5.3 where the _POSIX_MONOTONIC_CLOCK + macro was accidentally redefined. + * [166650] Fixed a regression from 4.2.3 where calling QWidget::move() + in a reimplementation of QWidget::showEvent() did not work. + * [166097] QWidget::show() no longer overwrites the _NET_WM_STATE + property. Instead, QWidget now merges any existing _NET_WM_STATE + property together with its own state. + * Fixed the QAtomic implementation on the Alpha, which previously + caused all applications to hang on start-up. + * [165229] Changed the linux-lsb-g++ specification to avoid linking with + libGLU (which is not part of the LSB specification). + * [155083, 146833] Ensure that all font substitutions from fontconfig + are obeyed by using a strong binding for QFont's family with + fontconfig. + +Windows +------- + + * [169105] Fixed a regression where calling resize() on a minimized + window did not work. + * [169376] Fixed a race condition that would cause a crash when + stopping timers in a thread. + * [165440] Fixed a crash that could occur when using Google's Pinyin + input method with Qt. + +Mac OS X +-------- + + * QMake's Xcode generator is now more robust when determining which + version of Xcode projects it should generate. It also uses launch + services to determine Xcode's location as well. + * Small changes to be more Leopard compatible + * [167020] Ensured that the translations are really included in the + binary package. + * [164530] Ensured that the DPI for fonts don't change when the + resolution changes. + * [165530] Fixed a bug that caused Q_DECLARE_METATYPE() in a + precompiled header to interfere with the Objective-C 'id' keyword. + * [165659] Fixed bold/italic font rendering for some fonts. + +Qtopia Core +----------- + + * Fixed support for bitmap fonts. + * [164297] Fixed a potential crash in accelerated paint engines. + * [160970] Fixed support for 1-bit black and white screens. + * [164783] Fixed bug in 4-bit grayscale support which resulted in pink + colors under certain circumstances. + * [164955] Fixed painting error when using QWidget::move(). + * [166368] Fixed bug in QWidget::setFixedSize() when using multiple + screens. + * [165686] Fixed bug in QPixmap::grabWindow() when using multiple + screens. + * [130925] Fixed use of QWSWindowSurface::move() when acceleration is + available. + * [143865] Implemented QWSCalibratedMouseHandler::getCalibration() + properly to fill all return values. + * [161820] Fixed incorrect detection of glib libraries when cross- + compiling. + * [152914] Improved the framebuffer test example. + * [171454] Fixed painting errors when zooming in QVFb. + + +**************************************************************************** +* Important Behavior Changes +**************************************************************************** + +- QScrollArea + * [167838] Use micro focus rectangle (if "active") instead of the entire + widget in ensureWidgetVisible(). diff --git a/dist/changes-4.3.2 b/dist/changes-4.3.2 new file mode 100644 index 0000000000..2bec4e643f --- /dev/null +++ b/dist/changes-4.3.2 @@ -0,0 +1,604 @@ +Qt 4.3.2 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.3.0 and Qt 4.3.1. + +The Qt version 4.3 series is binary compatible with the 4.2.x, 4.1.x and +4.0.x series. Applications compiled for Qt 4.0, 4.1 or 4.2 will continue to +run with Qt 4.3. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Legal + * This version adds the Academic Free License 3.0, Artistic License 2.0, + Zope Public License 2.1 and Eclipse Public License to the GPL + Exception for developers using the Open Source Edition of Qt. + See the Trolltech GPL Exception Version 1.1 page in the documentation + for more information. + +Tools +----- + +- Designer + * [175822] Fixed incorrect behavior of the widget editing mode that + could occur when a form was resized. + * [174797] Fixed a crash that could occur when several commands were + redone in one go. + +Build System +------------ + + * Enabled MSVC project generator for the Qt Open Source edition. + * Ensured that the QMAKE_CC and QMAKE_CXX variables are not defined in + the Xcode project generator to allow distributed (distcc) builds to + work again. + * [165183] Make DESTDIR work again in the Xcode generator. + * Fixed a bug in escape_expand() that could cause text to be corrupted. + * Updated the compiler notes for version 10.0.026 of the Intel C++ + Compiler for Linux. Precompiled header support has been fixed in + this version of the compiler, so the -no-pch workaround is no longer + needed. Note that there is still one outstanding bug in the 64-bit + compiler that requires configuring and building Qt with -debug. + * Updated the compiler notes for HP-UX platforms and compilers. + * Introduced support for 32-bit builds on HP-UXi Itanium: hpuxi-acc-32. + * [163661] Fixed the dependency generator for ActiveQt server projects + and certain custom compilers + * [169756] Fixed mocinclude.tmp usage for Visual Studio 6.0 project + files for cases where the length of the includes exceeds the amount + allowed on the command line. + * [166407] Fixed the generated target rules when using YACCSOURCES. + * [156948] Ensured that QTPLUGIN libraries come before the Qt libraries + on the link line. + * Ensured that support for libtiff is not built if Qt is configured + without zlib support. + * [172629] Ensured that syncqt does not generate zero-size master + include files for modules that are not found. + * Fixed generation of dependencies for EXTRA_TARGETS. + * [159113] Ensured that the description for the Post Link build step in + VS 2003 does not contain any \n characters. + +I18n +---- + * Fixed a crash in lupdate/lrelease that could occur if the XML parser + reported an error. + +**************************************************************************** +* Library * +**************************************************************************** + +General Improvements +-------------------- + +- Qt Script + * QScriptEngine::evaluate() no longer throws a syntax error in the case + where the script contains no actual statements. + * [175714] Fixed parsing of octal numbers on Windows and Mac OS X. + +- Style Sheets + * QMainWindow now respects the background-image style property. + * [171858] Ensured that QPushButton uses the correct color when the + text-align property is set. + * Fixed various bugs in QMenu styling. + * [168286] Fixed a bug that prevented the background from being clipped + correctly when the border-radius and background-clip properties were + defined. + * Fixed a QComboBox styling bug where the popup would show an extra row + when a style sheet was used. + * [177168] Fixed a memory leak where QStyleSheetStyle is never + destroyed. + * [172315] Fixed a stack-overflow when using the isActiveWindow + property as a selector. + +- Text rendering + * [168625] Fixed rendering of text with perspective transforms on X11 + and Qtopia Core. + * [173792] Fixed transformed rendering of non-scalable/bitmap Freetype + glyphs. + +- QAbstractItemView + * [168493] Fixed drag and drop regression when a parent item in a tree + doesn't allow item to be dropped on it. + * [174848] Fixed a crash that could occur if the row currently being + edited was removed. + +- QCalendarWidget + * [171532] Fixed keyboard navigation (pressing "w" doesn't select the + "Wed" cell anymore). + * [173852] Fixed SingleLetterDayNames mode for the Chinese language. + +- QColorDialog + * [153436] Fixed a crash in QColorDialog that could occur when choosing + a color in the Gray colorspace. + +- QColumnView + * Ensured that selectAll() selects all items in cases where the + selection range contained multiple items. + * [170751] Fixed incorrect selection behavior caused by clicking on a + previously selected folder. + * [170753] Prevented items from being reselected on deselection in some + cases. + * [170753] Ensured that the full path is selected when passing an index + to select. + * [170753] Fixed a bug that could occur when deselecting an item that + caused its parent to be deselected. + +- QCoreGraphicsPaintEngine + * [170352] Fixed aliased strokes that were drawn 1 pixel too far to the + left on Mac OS X versions < 10.4. + * [172006] Fixed point drawing with a scaled painter on Mac OS X. + +- QDataWidgetMapper + * [172427] Fixed a crash that could occur when submitting data from the + mapped widget to the model. + +- QDateTimeEdit + * [118867] Fixed a bug that prevented valid values from being entered + when certain range restrictions were applied. + * [171920] Fixed a bug with parsing long day names. + +- QDir + * [176078] Fixed a crash that could occur when entering directories with + very long path entries. + +- QDirIterator + * [176078] Fixed a crash that could occur when entering directories with + very long path entries. + +- QDockWidget + * [174249] Fixed bug where it was possible to dock into a minimized + QMainWindow. + +- QFile + * [175022] Fix regression in handle() on Windows. + +- QFileDialog + * Fixed possible deadlock. + * Ensured that selection changed signals are reconnected when setting a + filter on a dialog. + * [171158] Fixed a crash that could occur when using the Forward button + to navigate into a folder that was deleted. + * [166786] (Windows) Fixed bug that prevented some files from being + shown in certain cases. + * [165289] (Windows) Fixed issue that caused UNC paths to be ignored + when used as initial paths for a file dialog. + * [140539] (Windows) Dialog no longer accesses floppy drives + automatically when launched. + +- QFontDatabase + * [176450] Added some missing tr() calls and made all strings + localizable. + +- QFSFileEngine + * [177363] Fixed a bug in fileTime() that caused the time returned to + depend on whether or not it was called during a Daylight Saving Time + period. + +- QGLPixelBuffer + * [179143] (Windows) Fixed a memory leak that would occur when a + QGLPixelBuffer was deleted. This would appear as a slowdown in + performance to the user. + +- QGLWidget + * [169131] Fixed an issue with renderPixmap() where text drawn with + renderText() was clipped to the size of widget, not the resulting + pixmap. + * [175513] Fixed an issue with renderText() which would cause artifacts + when bitmap fonts were used. + * [172474] (Windows) Fixed an issue with disappearing text when using + renderText() together with renderPixmap(). + * [173944] (Mac OS X) Fixed a crash that could occur when requesting a + GL context with an overlay. + +- QGraphicsItem + * [174299] Fixed and improved bounding rect calculations for most + standard items. + +- QGraphicsScene + * [174450] Flat items are now rendered correctly also when NoIndex is + set. + +- QGraphicsTextItem + * [174429] This item now respects QGraphicsItem::ItemClipsParentToShape. + +- QGraphicsView + * (X11) A workaround has been applied to resolve random clipping errors + that would sometimes leave trailing artifacts and horizontal/vertical + white lines in the viewport. + +- QHeaderView + * [178483] Prevented crash that could occur when recomputing the layout + under certain conditions. + +- QHttp + * [176822] Fixed a bug that caused POST requests to submit an empty body + after a proxy authentication request. + * [176403] QHttp no longer resets proxy settings on sockets set with + QHttp::setSocket() (regression from 4.2.3). + * [175170] Prevent live lock when response ends with a stray '\r'. + * [172763] Fixed a bug that caused QHttp to ask the proxy server to + connect to the wrong address when in SSL (non-caching) mode. + * [172775] Fixed the emission of the done() signal under some conditions + (mostly SSL only). + +- QImage + * [176831] Fixed a bug that caused conversions to Format_RGB16 to give + incorrect colors. + * [169908] Fixed a crash that could occur when reading 4 bits per pixel + uncompressed BMP images. + +- QItemDelegate + * [173969] QDoubleSpinBox editors now allow negative input. + * [179119] Item checkboxes were rendered without a margin. + +- QLabel + * Fixed a crash that could occur when changing the contents of a label + in a slot connected to the linkActivated() signal. + +- QLayout + * Fixed a performance regression from Qt 4.2 related to the introduction + of QStyle::layoutSpacing(). + +- QLibrary + * [178304] Fixed a bug that caused a crash if QLibrary::errorString() + was called before QLibrary had a file name associated with it. + +- QListView + * [270837] Fixed assert that could occur when setting a root index with + no children in icon mode. + +- QMainWindow + * [175479] Fixed unified toolbar handling on Mac OS X to prevent + assertions in the layout engine. + * [174575] Several crashes fixed. + +- QMdiArea + * [173391] (Windows) Fixed bug where a subWindowActivated() signal was + not emitted when the top-level window was minimized. + * [173628] Fixed bug that could cause an endless resize loop when using + Qt::ScrollBarAsNeeded as the scroll bar policy. + +- QMdiSubWindow + * [176769] Fixed bug where the title bar font was not updated on + QEvent::FontChange. + * [173087] Ensured that double-clicking the system menu closes the + window. + * [173363] Fixed bug where the title bar was not immediately updated + after changing the window title. + +- QMenu + * [111348] QMenu now takes focus with the QPopupMenuReason. + * [176201] Fixed possible crash when clearing the menu from a triggered + signal. + +- QPainter + * [168621] Fixed an offset bug in drawing with perspective transforms. + * [172017] (X11 and OpenGL) Fixed drawing of non-cosmetic points with + the FlatCap cap style. + * [175010] Fixed some bugs related to dash offsets. + * [170517] Fixed issue with missing tab stops when painting to a + printer. + +- QPainterPath + * Fixed the behavior of addText() when used with italic fonts. + * [178515] Fixed QPainterPath::pointAtPercent() to work correctly on + line segments in a path. + +- QPicture + * [168621] Ensured that the correct scale is used when rendering to a + device with different x and y resolutions. + +- QPixmap + * Ensure that the proper color space is used in QPixmap::grabWindow() on + Mac OS X. + +- QPlastiqueStyle + * [174104] Fixed a regression in Plastique that caused spin boxes to + have incorrect heights. + +- QRasterPaintEngine + * [169997] Fixed aliased rendering of complex paths with a large number + of subpaths. + * [174914] Fixed use of QPainter::setOpacity() when drawing a pixmap + into a 16-bit buffer. + * [177919] Fixed a problem with drawing bitmaps. + * [177654] (Windows) Fixed an issue with transformed bitmaps being + returned as pixmaps. + +- QSqlQuery + * [173710] Fixed a bug that caused value() to return null-variants + instead of real values after re-executing a prepared query. + +- QSqlRelationalTableModel + * [176374] Fixed an unfortunate change in 4.3.0. Display column names + were aliased to prevent duplicate column names in records in order to + fix a bug in insertRecord(). + However all display columns were always aliased - even when not + necessary. From now on, display column names will only be aliased when + there are name clashes, and only the conflicting columns will be + aliased. + +- QSqlTableModel + * [170783] Fixed a bug that caused empty rows to be displayed in a + QTableView when a new model was set on the view. This was caused by + QSqlTableModel emitting the rowsAboutToBeInserted() and rowsInserted() + signals even when the new model was empty. + +- QSslSocket + * [177198] Fixed the emission of the proxyAuthenticationRequired() + signal. + * [174625] Ensured that only one attempt is made to resolve OpenSSL + symbols. + * [173734] Removed two memory leaks. + * [172285] (Windows) Fixed link error that occurred when Qt was built + as a static library with OpenSSL enabled. + +- QSvgGenerator + * [167921] Fixed a rounding error; improved precision. + * [167921] Allow rendering to a device that's not open; warn if the + device is not writable. + * [167921] Fixed a bug that caused QSvgGenerator to confuse 'cm' units + with 'mm' units. + +- QSvgRenderer + * [172550] Fixed incorrect linear gradient parsing for certain SVGs. + * [175651] Fixed a crash that could occur when loading SVGs with + undefined URLs. + +- QTableView + * [171128] Fixed painting problems caused by deleting hidden rows. + * [175462] Fixed a bug where the region for selection spanning items was + calculated incorrectly. + +- QTcpSocket + * Fixed a crash that could occur when using SOCKS5 proxy before + constructing a QCoreApplication. + * [174517] (Windows) Prevented stalling when connecting to offline + hosts. + +- QTextBrowser + * [173945] Fixed bug that could prevent scrolling to an anchor in an + HTML file from working successfully. + +- QTextEdit + * [171130] Fixed bug that could occur when appending text lists to a + document, causing the first list element to be treated as normal text + instead of a list element. + * [172367] Fixed a bug that caused the result of setPlainText() to use + HTML attributes if preceded by a call to setHtml(). + * [173574] Fixed a bug that prevented floating image links from being + clickable. + * [174276] Fixed resizing performance in cases where wrapping is + disabled. + * [172646] Fixed a bug that caused leading spaces in marked up text to + be lost when the text was copied and pasted. + +- QTextLayout + * Fixed a regression in the line breaking algorithm that lead to wrong + results for justified text. + +- QTextStream + * [174516] (Windows) Fixed a bug in readLine() when reading "\r\r\n" + from devices opened in QIODevice::Text mode. + +- QToolBar + * [270967] Fixed the behavior of floating toolbars. + +- QTreeView + * [171947] Fixed a bug that prevented alternate colors in an inactive + QTreeView from being painted with the correct inactive palette role. + * Prevented a number of possible crashes that could occur when there are + pending changes. + * [177165] Fixed a bug that caused minimum column widths to become + independent of the width of the text in the header. + * [177945] (Mac OS X) Fixed a crash that could occur when dragging over + an empty region. + * [174437] Fixed a bug that made it possible to interactively change + the check state of an item, even if it was disabled. + * [172426] Fixed a segmentation fault in QModelIndex that would occur + when showing QTreeView with QSortFilterProxyModel and delayed layout + changes were pending. + +- QTreeWidget + * [174396] Fixed an issue that could cause setItemExpanded() to fail. + * [172876] Ensured that itemBelow() and itemAbove() return correct + values. + * [171271] Fixed a possible crash caused by updating items too quickly. + +- QUtf8Codec + * [175794] Fixed an off-by-one buffer overflow bug. + +- QWidget + * [157496] (Windows) Fixed a memory leak in setWindowIcon(). + * [175114] Fixed issue with missing update after hiding a child of a + hidden widget. + * [176455] Fixed a regression that prevented a parent layout from being + invalidated in certain situations if the widget had a fixed size. + +- QWizard + * [177716] Ensured that the commit button is enabled and disabled + correctly according to QWizardPage::isComplete(). + +- QX11PaintEngine + * [173977] Fixed drawing of tiled bitmaps into a bitmap when XRender is + used. + * [175481] Fixed a crash that could occur when performing complex + transformations with a QRegion. + +- Q3Action + * [175536] Fixed a formatting error in the tool tip string + representation of actions with shortcuts. + +- Q3ButtonGroup + * [177677] Fixed a application freeze that could occur when resetting + the ID of a button inside a button group. + +- Q3FileDialog + * [165470] Fixed broken scrolling behavior that occurred after toggling + between detail/list view mode. + +- Q3Header + * [176202] Fixed memory leak when replacing icons using setLabel(). + + +**************************************************************************** +* Tools * +**************************************************************************** + +Build System +------------ + +- Q3ToolBar + * [176525] Ensured that the tool buttons of a vertical tool bar are + center-aligned instead of left-aligned. + +I18n +---- + * Fix crash in lupdate/lrelease that occured if the xml parser threw an error. + +Linguist +-------- + + * [276076] Let Linguist show existing translations to other languages + as "auxillary sources" + + +**************************************************************************** +* Library * +**************************************************************************** + + +**************************************************************************** +* Database Drivers * +**************************************************************************** + +- Interbase driver + * [175144] Fixed a build issue that prevented the QIBASE driver from + being built at the same time as the QODBC driver if Firebird header + files older than v2.0 were used. + * [177530] Fixed a regression introduced in Qt 4.3.0 that broke stored + procedure support for Interbase/Firebird. When executing a procedure + without parameters, the values were not retrievable. + +**************************************************************************** +* Examples * +**************************************************************************** + +- Draggable Text Example + * Fixed usability bugs. + +- Torrent Client Example + * Several stability fixes have been applied. + +- Ported Asteroids Example + * Modifications to significantly improve performance. + +- Ported Canvas Example + * [139392] Prevented a crash that could occur when adding items after + shrinking the canvas to zero width and zero height. + +- Secure Socket Example + * [173550] Usability fixes. + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + * [169366] Fixed intermittent program hangs in the 64-bit PowerPC + implementation used on AIX. + * [176192] Fixed the behavior of show() followed by move() to correctly + place the window when called before the event loop is running. + * [133870] Fixed crashes in the 64-bit PowerPC implementation used + on Linux. + * [177143] Fixed a bug where the last activated QShortcut would be + incorrectly repeated when pressing a key with no KeySym defined. + * [171224] Fix copy and paste of non-ASCII text from Qt 3 to Qt 4 + applications. + * Applied a workaround for a bug in gcc 3.4.2 that would cause 64-bit, + bootstrapped applications to crash on Solaris. + * [170792] Fixed subpixel anti-aliasing of fonts across X11 + server/clients with different endianness. + +Windows +------- + * [172621] Fixed an issue that caused large pixmaps to be printed + incorrectly. + * [170000, 171239, 173213] Fixed several issues with printing that + resulted in single and multipage printing being garbled. + * [168642] Fixed an issue with text disappearing when printing. + * [175517] Fixed a crash that could occur when calling setNumCopies() on + an invalid/non-existing printer. + * [173219] Fixed an issue that caused fonts to be incorrectly scaled + beyond 64 point font sizes. + * [276527] Fixed a memory leak in QWindowsVistaStyle. + +Mac OS X +-------- + * Note for Leopard pre-release builds: Qt 4.3.x applications running on + the August Leopard pre-release (build 9A527) will not show any windows + because of a regression in the Carbon library. This has been addressed + for a future OS X release. In the meantime, if you *must* test your + application against this Leopard build, please contact Trolltech. + * [178551] Fixed a regression that made it impossible to deliver mouse + move events to other widgets after a double-click on a widget that was + immediately hidden as a result of the double-click event. + * [172475] Ensured that OpenGL top-level widgets are not repainted when + another, independent, top-level widget is resized. + * Ensured that the maximized bit is removed when a window is resized by + user interaction. + * [170000] Fixed an issue that caused QPrinter::newPage() to incorrectly + reset the current QPainter state. + * [178531] Fixed an OpenGL text rendering issue that could cause garbled + text. + * [171173] Fixed a crash at application exit that could occur if + accessibility features had been used. + * [175164] Fixed a regression where font base lines for labels, + checkboxes and radio buttons were not properly aligned. + * [173007] Fixed a regression that prevented qt_mac_set_native_menubar() + from working. + * [130809] Ensured that bold fonts are used correctly when generating + PDFs. + * [164962] Improved support for Mac drawers in QMainWindow. + +Qtopia Core +----------- + * Ensured that the font database cache is preserved across QWS server + restarts. + * Made some start-up time improvements for the server process. + * [272527] Fixed a bug in the internal crash handler that released + resources in some non-fatal incidents. + * [169569] Fixed a bug that caused uninitialized data to be blitted to + the screen when a window was shown and resized before the first paint + event. + * [274291] Added support for setting the QT_QWS_FONTDIR environment + variable to set the font installation path. + * [174264] Fixed synchronization of QDirectPainter::startPainting() to + be able to guarantee that QDirectPainter::allocatedRegion() returns + the correct result. + * [175994] Fixed missing updates in parent and sibling widgets when + using the QWindowSurface::buffer() and QWindowSurface::flush() + mechanism to paint outside a paint event. + * [170488] Implemented true synchronous behavior when creating a + QDirectPainter with the ReservedSynchronous flag. + * [275284] Fixed implementation of the Hybrid OpenGL integration. + * [178269] Fixed loading of the VNC screen driver when compiled as a + plugin. + * [178261] Fixed loading of the Transformed screen driver when compiled + as a plugin. + * [276651] Fixed mouse calibration in some configurations when using the + tslib mouse driver. + * [173037] Fixed re-entrancy problem that could cause + QClipboard::mimeData() to block in some situations. + * [174076] Added the QWS_CONNECTION_TIMEOUT environment variable to + allow the time out to be customized for client applications connecting + to the QWS server. + * [167661] Added support to enable some "broken" BMP images to be + rendered correctly. + * [176445] Added support for the Glib event loop; this is disabled by + default. + * Added livelock protection: events from the QWS server can no longer + starve local timer events or posted events. diff --git a/dist/changes-4.3.3 b/dist/changes-4.3.3 new file mode 100644 index 0000000000..5bf6da0c08 --- /dev/null +++ b/dist/changes-4.3.3 @@ -0,0 +1,358 @@ +Qt 4.3.3 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.3.0 through Qt 4.3.2. + +The Qt version 4.3 series is binary compatible with the 4.2.x, 4.1.x and +4.0.x series. Applications compiled for Qt 4.0, 4.1 or 4.2 will continue to +run with Qt 4.3. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Legal + + * This version adds the Common Development and Distribution License + (CDDL) to the GPL Exception for developers using the Open Source + Edition of Qt. + See the Trolltech GPL Exception Version 1.1 page in the documentation + for more information. + * This version upgrades the Qt Commercial License to version 3.4, + the Qtopia Core Commercial License to 1.2 and the Qt Academic + License to 1.4 + +Build System +------------ + + * [177865] Fixed the Unix configure script to correctly identify + g++ 4.3.0 as "g++-4" in the build key. + * [186588] Added the missing QSsl forwarding header file. + * [181414] Fixed an issue that caused moc to bail out on C++0X >> as + used in some templates. + +**************************************************************************** +* Library * +**************************************************************************** + +- QDir + * [186068] Fixed documentation for QDir::CaseSensitive. + * [177988] Fixed a regression from 4.2.3 causing entryList() to ignore + QDir::System. + +- QDirIterator + * [185502] Fixed fileInfo() which could return an incorrect value for + some paths. + +- QDockWidget + * Fixed an issue that caused close buttons of dock widgets to be hidden + when they were resized to their minimum sizes. + * [180199] Dock widgets with vertical title bars can now be re-docked + on Mac OS X. + * [184668] Fixed crash that could occur when setting the title bar + widget twice. + +- QFileDialog + * [178894] Fixed a bug that prevented the OK button from being enabled + when there were files selected, but no current file. + * [179146] Fixed abug in selectFile() that prevented the selection from + being cleared when called with an empty string. + * [279490] Ensured that filesSelected() is emitted in AnyFile mode and + directoryEntered() is emitted when the sidebar is clicked. + * [277161] Fixed a bug that caused incorrect permissions for files to be + obtained, resulting in the Delete action being incorrectly enabled. + * [184314] Fixed an assertion in completer on Windows and fixed top- + level completion on all platforms. + +- QGLWidget + * [177996] Fixed a crash that could occur when drawing QImages created + outside of the GUI thread. + * [180832] Fixed potential crashes in renderText(). + +- QGraphicsScene + * [182442] Fixed regression from 4.2 that could cause a crash when + deleting a scene being viewed by more than one view. + +- QGraphicsTextItem + * [181027] Fixed regression from 4.3.0 that caused movable text items to + jump around. + +- QHeaderView + * [178483] Fixed crash that would occur when attempting to compute a + visual index for an invalid model index. + * [182501] Fixed regression that caused stretched sections to use the + minimum size when not visible. + +- QTableView + * [175328] Fixed grid drawing errors in table views containing spanned + items. + +- QListView + * [184204] Fixed broken layout in right-to-left mode with no horizontal + scroll bar. + +- QTreeView + * [182041] Fixed problem with drag and drop in cases where the columns + were swapped. + * [186624] Fixed branch expanding animation. + +- QItemDelegate + * [181221] Fixed problem with the rectangle that was used to check the + mouse coordinates when clicking on the check box. + +- QHttp + * [178715] Fixed a problem where QHttp would not correctly parse the + server response if Content-Length was 0 and authentication was + required. + * [170860] Fixed a problem where QHttp would emit the done() signal + if the HTTP proxy server closed the connection after requesting + authentication. + +- QLabel + * [173188] Fixed QLabel::setAlignment(Qt::AlignJustify) to have the + desired effect. + +- QMainWindow + * [154834] Fixed restoreState() to be able to load data from previous + minor releases. + * [179713] Fixed failed assertions when inserting toolbars. + * [180824] Fixed a crash when removing a toolbar on a main window with + the unifiedTitleAndToolBarOnMac property set. + +- QMdiArea + * [185281] Fixed a bug where closing a modal dialog caused a different + sub-window to be activated. + +- QMdiSubWindow + * [183647] Improved WindowBlinds support. + * [188849] Fixed a crash that occurred when using a regular QWidget as + the menu bar in a QMainWindow. + +- QMenuBar + * [173556] Fixed a bug where the corner widgets did not swap sides when + changing layout direction. + +- QProcess + * [180836] Fixed issue with defunct processes on Unix. + +- QPainter + * Made the QPainter::drawText() overload with the QTextOption argument + support justified text. + * [179726] Fixed a problem with the bounds calculation for handling + fallback in certain painting operations. This could be perceived as a + clipping bug on some platforms. + +- QPainterPath + * [169280, 170046, 173034] Fixed cases where calling + QPainterPath::united(), QPainterPath::intersected(), or + QPainterPath::subtracted() would cause infinite loops or would not + produce the expected result. + * [178260] Fixed a bug in the stroking of painter paths which could + cause uninitialized data access for paths with extreme curvature. + * [183725] Fixed a bug where intersecting a path against itself would + return an empty path. + +- QPixmap + * [178986] Fixed a regression from 4.2: image/pixmap scaling caused the + sampling to be shifted by half a pixel. + +- QRasterPaintEngine + * [177919] Fixed a problem with drawing bitmaps. + +- QScriptEngine + * Fixed the parsing of large numbers (larger than 2^32). + +- QStyle + * [186511] Fixed the default QStyle() constructor to create a + QStylePrivate object, which is required by QStyle::layoutSpacing(). + +- QStyleSheet + * [178598] Fixed a memory leak when using border images. + * [175722] Fixed a bug which broke mouse handling in checkbox items + when styling the check mark. + +- QStyleSheetStyle + * [182862] Setting a stylesheet with background-image on QMenu::item + now works. + +- QSvgGenerator + * [176705] Fixed a bug which caused radial gradients to produce + malformed XML output. + * [182196] Fixed a regression which caused gradient fills to be stored + as image data instead of native data. + * [182244] Fixed a bug in SVG export of ObjectBoundingMode gradients. + +- QStringListModel + * [180184] Fixed a bug that prevented sorting from updating persistent + model indexes. + +- QTableView + * [182210] Fixed a bug which caused the table view to hang when it had + views with 100,000,000 rows. + +- QTextBrowser + * [176042] Fixed incorrect behavior with selectAll() that caused it to + select all links if a link had the focus. + +- QTextDocument + * [177489] Fixed a bug in page breaking of text frames which could cause + missing page breaks and overdrawing. + +- QTreeView + * Fixed a possible crash that could occur when setting scrollPerPixel + while height was 0. + * [178771] Fixed an assertion that could occur when pressing the left or + right arrow key when the root index had no children, but when the + current index had not been set to invalid. + * [182618] Improved the performance of adding expanded or spanned items. + * [184072] Improved the performance of hiding rows. + +- Q3DockWindow + * [176167] Fixed an issue that made it impossible to move a Q3DockWindow + with the mouse if it did not have a title. + +- Q3ToolBar + * [182657, 185381] Fixed crashes caused by calling clear() and then + re-adding items. + +- Q3Wizard + * [176548] Fixed a crash caused by calling removePage() before a wizard + is shown. + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + +- QApplication + * Fixed a bug that could cause a programmer specified application font + to be overridden by the automatically-detected system font. + +- QCUPSSupport + * [180669] QCUPSSupport::QCUPSSupport() no longer crashes when the CUPS + library cannot be loaded. + +- QPrintDialog + * Fixed a bug that caused the selected file to be truncated before the + overwrite dialog was shown. + +- QWidget + * Fixed a bug that caused QWidget::windowState() to return an incorrect + state after restoring a maximized window. + +- QX11EmbedContainer + * [186819] Fixed embedClient() to not cause an X server lock-up when + passed an invalid window ID. + + HP-UX + ----- + * [179538] Fixed a bug that caused uic3 to hang in q_atomic_lock() + on PA-RISC based HP-UX machines. + * [177397] Fixed a QGL module compile problem on HP-UX systems. + +Windows +------- + +- QFileDialog + * Fixed occasional crashes when dealing with the system icons. + * [175041] [181912] Ensured that shortcuts are handled correctly. + * Fixed a crash that could occur when opened with QDir::temp() as the + initial path. + +- QGLPixelBuffer + * [177154] Fixed support for floating point buffers with NVIDIA hardware + through the GL_NV_float_buffer extension. + * [179143] Fixed a memory leak that could occur when deleting a + QGLPixelBuffer. + +- QPixmap + * [185715] Fixed an assertion that could occur when reading icon + information for file types. + +- QPixmapCache + * [182363] Fixed a crash that could occur when inserting a null pixmap. + +Mac OS X +-------- + +- Fixed multiple issues preventing binaries built on Leopard from being + deployed on Tiger and Panther systems. + +- QCoreGraphicsPaintEngine + * [170352] Fixed a problem where all aliased strokes were offset by + 1 pixel to the left on Mac OS X < 10.4. + * [172006] Fixed a problem with drawing points when FlatCap or + SquareCap was set as the pen style. + +- QGLWidget + * [181819] Fixed a bug that caused the contents of QGLWidgets not to + be moved or updated. + +- QCheckBox + * [182827] Fixed a crash caused by deleting a QCheckBox in an event + posted from the toggled() slot. + +- QDialog + * [281331] Fixed a bug that caused a QDialog with a modal parent to not + be modal. + * [279513] Fixed a bug that could occur when using the + Qt::WindowStaysOnTopHint flag on dialogs that would cause the drop down + menu to be hidden. + +- [180466] Ensured that an Embedded HIWebView in a floating window will + receive an activation. + +- Fixed brushed metal windows on Leopard. + +- Made QMenus have proper rounded edges on Leopard. + +- Fixed a regression that caused text to always be rendered with anti- + aliasing in OpenGL. + +- [179882] Fixed a regression where applications with both full-screen and + non-full-screen windows could get into an indeterminate state. + +- [182908] Fixed a crash on PPC which was caused by using a static Qt in a + plugin in another application. + +Qtopia Core +----------- + + * [179060] Fixed a potential crash when Qtopia Core is compiled without + FreeType support. + * [187589] Fixed a problem that caused windows not to appear on screen + when using gcc 4.1.1 ARM EABI toolchains. + * [179533] Fixed temporary blitting of uninitialized data to the screen + areas of some windows when they are shown for the first time. + * [180487] Fixed the use of FreeType fonts for unprivileged processes + in a LIDS environment. + * [179883] Fixed the use of -D QT_QWS_DEPTH_GENERIC configure options + when using a transformed screen driver. + * [182150] Fixed the use of incorrect colors that resulted from using + the VNC driver on top of the Linux framebuffer driver on big-endian + systems. + * Optimized drawing of images on 16-bit screens when using a painter + with an opacity value of less than 1.0. + * [183118] Updated the framebuffer test application to work on 18 bit + screens. + * [184181] Ensured that the QDesktopWidget::workAreaChanged() is emitted + when the available screen geometry is changed. + * [185508] Fixed missing mouse move/press event on touch screens when + pressing on a newly-activated window. + * [185301] Fixed a crash in QImage::convertToFormat() that could occur + when converting an image having a stride that is not a multiple of 4. + * [186266] Fixed a race condition which could result in painting errors + around the window decoration under certain circumstances. + * [186409] Fixed string to number conversions in QtScript when + configured with -D QT_QLOCALE_USES_FCVT. + * [186611] Fixed color conversion in QScreen::solidFill() (used when + drawing the screen background) when configured with + -D QT_QWS_DEPTH_GENERIC. + * [125481] Fixed a painting error with RGBA framebuffers and partially + transparent windows. + * Fixed inconsistency in 16-bit alpha blending which caused the + leftmost/rightmost pixels to be calculated differently due to + rounding errors. diff --git a/dist/changes-4.3.4 b/dist/changes-4.3.4 new file mode 100644 index 0000000000..fe076d9911 --- /dev/null +++ b/dist/changes-4.3.4 @@ -0,0 +1,112 @@ +Qt 4.3.4 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.3.0 through Qt 4.3.3. + +The Qt version 4.3 series is binary compatible with the 4.2.x, 4.1.x and +4.0.x series. Applications compiled for Qt 4.0, 4.1 or 4.2 will continue to +run with Qt 4.3. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Legal + + * This version adds the GNU General Public License (GPL) version 3 + to all Qt Open Source editions. The GPL Exception version 1.1 + applies to both versions of the GPL license. + +Build System +------------ + * Ensure that Qt plugin paths are only added once to the LIBS variable. + * MinGW: Ensure that PRE_TARGETDEPS and POST_TARGETDEPS are properly + escaped in dependency lists, so they match the rules in the Makefiles. + +I18n +---- + +**************************************************************************** +* Library * +**************************************************************************** + +General Improvements +-------------------- + +- QApplication + * [193842] Fixed a bug where a statically built Qt would still try + to load Qt plugins (such as style, imageformat, and sqldriver + plugins) which causes the application to crash. + +- QCoreApplication + * [190356] Fixed a regression from 4.2 where the order of posted + events with the same priority would be sent out of order. + +- QComboBox + * [166349] Fixed crash resulting from making the combo box non-editable from a + slot caused by a line edit Key_Enter event. + +- QFileDialog + * [193483] Fixed crash when hidden directory is set as the current directory + and hidden directories are not set to be visible. + * [191301] Fixed QFileDialog closes even if the users indicate they do not + wish to replace. + +- QSslSocket + * [191705] Fixed crash on remote disconnect + * [190133] Fixed security bug in QSslSocket's certificate verification + +- QTreeWidget + * [191300] Adding QTreeWidgetItems into a sorted QTreeWidget can be slow. + * [155700] Fixed potential assert when deleting QTreeWidgetItems with + sorting enabled. + +- QDirModel + * [191765] Fixed crash when using QModelIndex from QDirModel::index() + for a UNC path. + +- QHeaderView + * [190624] Fixed case when stretch resize sections would give wrong + section sizes to all other sections. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + + +**************************************************************************** +* Examples * +**************************************************************************** + + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + +Windows +------- +* [191309] Fixed a bug preventing browsing to UNC paths in the file dialog. +* [180010] Fixed a memleak in the raster paint engine. The HDC for the raster buffer was + not cleaned up correctly. +* [191305] Fixed a possible memleak and problem with calling QGLPixelBuffer::doneCurrent() + under Windows. + +Mac OS X +-------- +* [188837] Fixed a bug that would make Qt applications not quit when someone logs out of Leopard +* [192030] Prevent a crash when dragging over a widget that has a focus frame +* [291319] Send the kEventQtRequestWindowChange event when moving QGLWidgets. +* Fix binary compatibility issue in the OpenGL module that could cause problems when using + Qt binaries compiled on Tiger for development on Leopard. The Mac binary package now supports + development on Leopard. + +Qtopia Core +----------- +* [189195] Fix crash when using fonts containing embedded bitmaps with + zero width and non-zero height. +* [189829] Fixed parsing of device specification in the QWS_KEYBOARD + environment variable when specifying multiple keyboards. diff --git a/dist/changes-4.3.5 b/dist/changes-4.3.5 new file mode 100644 index 0000000000..c674d87b8c --- /dev/null +++ b/dist/changes-4.3.5 @@ -0,0 +1,109 @@ +Qt 4.3.5 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.3.0 through Qt 4.3.4. + +The Qt version 4.3 series is binary compatible with the 4.2.x, 4.1.x and +4.0.x series. Applications compiled for Qt 4.0, 4.1 or 4.2 will continue to +run with Qt 4.3. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + + * [201242] Fixed an bug that caused bootstrapped tools (qmake, + moc, uic, and rcc) to crash or run into infinite loops. + * [190776] Fixed a bug that would generate invalid build keys in + some gcc compiler versions. Backported from Qt 4.4. + +- Legal + + * This version updates the GPL Exception to version 1.2 in all + Open Source editions of Qt. This version is compatible with the + GPL version 3 and adds the LGPL version 3 to its list of + acceptable licenses. + +Third party components +---------------------- + +- libpng + * Security fix (CVE-2008-1382) + +Build System +------------ + +I18n +---- + +**************************************************************************** +* Library * +**************************************************************************** + +General Improvements +-------------------- + +- QCalendarWidget + * Fixed handling of leap year while changing the date in calendar widget. + +- QComboBox + * [203827] Fixed problems caused by the line edit not being hidden for + a non-editable QComboBox. + +- QMdiArea + * [209615] Fixed an assert when removing a sub-window from one QMdiArea and + adding it to another QMdiArea. + +- QMdiSubWindow + * [192794] Fixed a bug where installed event filters were removed + when maximizing a window. + +- QPainter + * [204194] Fixed division-by-zero issue in raster paint engine when + calling drawLine with the same starting and ending point. + * [205443, 207147] Fixed floating point exception when drawing near-vertical + or near-horizontal lines in the raster paint engine. + +- QWizard + * [180397] Fixed crash resulting from AeroStyle being assumed even when + some of the required symbols were unresolved. + * [197953] QWizard no longer crashes on Windows if an accessibility + application (like Microsoft Narrator) is running. + +- QWorkspace + * [206368] Fixed a crash resulting from the icon in the title bar not + being deleted when deleting a sub-window. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + + +**************************************************************************** +* Examples * +**************************************************************************** + + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + +Windows +------- + +- QRasterPaintEngine + * [198509] Fixed a resource leak which occured when QPainter::drawText() + was called. + +Mac OS X +-------- + +- QRasterPaintEngine + * [198924] Fixed a byte order problem when drawing QImages on an X11 + server running on PPC Macs. + +Qtopia Core +----------- diff --git a/dist/changes-4.3CE-tp1 b/dist/changes-4.3CE-tp1 new file mode 100644 index 0000000000..41aaea8c93 --- /dev/null +++ b/dist/changes-4.3CE-tp1 @@ -0,0 +1,53 @@ +Changes for Qt/CE 4.3.x "Feierabend" release. + +**************************************************************************** +* Features * +**************************************************************************** + +- Added precompiled platform tools to package + +- Added/Updated documentation + +- Added/Updated examples + +**************************************************************************** +* Bug fixes * +**************************************************************************** + +- cetest + * cleanup directory hierarchy in case user specified. + * fixed libpath option which was not case-insensitive. + +- configure.exe + * fixed order of c-runtime deployment. + * fixed --(xy)prefix options to work in Windows Command Prompt. + +- QDesktopWidget + * fixed SIP handling bug. + +- QFeatures + * fixed custom configuration build issues. + +- QFileDialog + * updated UI to fit on embedded screen. + * in case no native dialog exists on device, use Qt FileDialog instead. + * fixed file extension bug. + +- QFSFileEngine + * workaround for Windows Mobile for taking MAX_PATH not into account. + +- QGraphicsView + * fixed bug when qreal is not double. + +- QLibraryInfo + * fixed legacy bug about not finding the plugins path. + +- QSysInfo + * added Windows CE 6. + +- QWidget + * fixed potential minimize/maximize bug. + +- QPaintEngine + * detect bitdepth on startup and create 16bit buffers, if possible. + diff --git a/dist/changes-4.3CEconan b/dist/changes-4.3CEconan new file mode 100644 index 0000000000..5d78e5710b --- /dev/null +++ b/dist/changes-4.3CEconan @@ -0,0 +1,72 @@ +Changes for Qt/CE 4.3.x "Conan the Librarian" release. + +**************************************************************************** +* Features * +**************************************************************************** + +- Added QtSql + +- Added QSqlite plugin + +- Added sql examples + +- Added 16bit painting engine + +- Added options to cetest + +- Added Windows Mobile 6 mkspecs + +**************************************************************************** +* Bug fixes * +**************************************************************************** + +- cetest + * added -conf option to specify a qt.conf file to be deployed + * added -f option to specify a .pro file to be parsed + * copy in buffered mode + * deployment rules can use wildcard logic + * fixed a bug in debug/release parsing + * try to get results though unittest might have crashed + +- configure.exe + * fixed usage of c-runtime deployment on desktop win32 build + * new parameters for cross-compilation + +- QApplication + * fixed minimal qfeature build configuration + +- QEventDispatcher + * fixed minimal qfeature build configuration + +- QFileDialog + * fixed internal handling of path separators + * fixed unexpected behaviour due to uninitialized memory + +- QFileSystemModel + * fixed different behaviour for Qt/CE + +- QFileSystemWatcher + * updated documentation + +- QtGui + * fixed floating point issues + +- QKeyMapper + * fixed short-cut algorithm + * fixed virtual key handling + +- QMessageBox + * fixed minimal qfeature build configuration + +- qmake.exe + * deployment rules can use wildcard logic + +- QTableView + * fixed style issue for header item + +- shadow build + * locate qglobal.h in correct directory + +- zlib + * fix build logic + diff --git a/dist/changes-4.3CEkicker b/dist/changes-4.3CEkicker new file mode 100644 index 0000000000..009dc33852 --- /dev/null +++ b/dist/changes-4.3CEkicker @@ -0,0 +1,53 @@ +Changes for Qt/CE 4.3.x "Kicker" release. + +**************************************************************************** +* Features * +**************************************************************************** + +- Integrated to Qt 4.3 + +- Added QtXml + +- Added QtSvg + +- Added full QCursor support in case SDK supports it + +- Added temporary tool sdkscanner for reading Visual Studio configuration + +**************************************************************************** +* Bug fixes * +**************************************************************************** + +- configure.exe + * Fixed qconfig.h creation using host platform paths + * Fixed sanity check for -host parameter + +- drag'n'drop + * Fixed for SDKs with cursor support + * Added examples + +- Example portedasteroids + * Fixed linking issues + +- QFileIconProvider + * Windows CE specific path fixes + +- QFsFileEngine + * Windows CE specific path fixes + +- QPixmap + * Fixed icon library loading + +- QSplashScreen + * Fixed painting bug + +- QTestLib + * Allow more than 256 bytes for qDebug() while debugging + +- QWidget + * Fixed bug in maximize()/minimize() + +- WIMMXT support + +- Windows CE 6.0 support + * fixed network issues with wince6* mkspecs diff --git a/dist/changes-4.3CEsweetandsour b/dist/changes-4.3CEsweetandsour new file mode 100644 index 0000000000..fab21ad420 --- /dev/null +++ b/dist/changes-4.3CEsweetandsour @@ -0,0 +1,43 @@ +Changes for Qt/CE 4.3.x "SweetAndSour" release. + +**************************************************************************** +* Features * +**************************************************************************** + +- Added QtScript + +- Added cetest/QtRemote + +- Added MIPS/SH4 compilation support + +**************************************************************************** +* Bug fixes * +**************************************************************************** + +- configure.exe + * Added c-runtime deployment options. + * Added cetest installation option. + +- qmake + * Fixed DEPLOYMENT rule to allow recursive directory deployment. + +- QProcess + * Fixed usage of DuplicateHandle, which got implemented for CE 6. + +- libpng + * Fixed crash bug concerning strtod which exists on CE 5 by default. + +- QFSFileEngine + * Fixed bug to access file size of POSIX opened file. + +- QWidget + * Fixed maximization bug. + * Fixed deadlock bug caused by invalid state. + +- QDateTimeEdit + * Fixed support for QT_KEYPAD_NAVIGATION + +- QPixmap + * Fixed toWinHBITMAP + * Fixed fromWinHBITMAP + * Fixed icon handling \ No newline at end of file diff --git a/dist/changes-4.4.0 b/dist/changes-4.4.0 new file mode 100644 index 0000000000..7875f2c48a --- /dev/null +++ b/dist/changes-4.4.0 @@ -0,0 +1,2419 @@ +Qt 4.4 introduces many new features as well as many improvements and +bugfixes over the 4.3.x series. For more details, see the online +documentation which is included in this distribution. The +documentation is also available at http://doc.trolltech.com/4.4 + +The Qt version 4.4 series is binary compatible with the 4.3.x series. +The Qt for Embedded Linux version 4.4 series is binary compatible with the +Qtopia Core 4.3.x series. Applications compiled for 4.3 will continue to +run with 4.4. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Task Tracker: + + http://www.trolltech.com/developer/task-tracker + +Each of these identifiers can be entered in the task tracker to obtain +more information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Legal + * This version introduces the GPL version 3 as an alternative + license for the Open Source Edition of Qt, in addition to the + existing licenses. + * Updated the GPL Exception to version 1.2, which grants additional + rights to developers using the LGPL version 3.0 and other licenses + for their software. + +- Configuration/Compilation + * [102113, 151125] Make it possible to use Qt headers with MSVC's + warning level 4. + * [129841] Make Qt compile with Intel C++ 9.0 and Intel C++ 10 compilers + on Windows. + * [168868] Add experimental support for the Blackfin processor. + * [188167] Fixed a bug in the solaris-cc mkspec that would cause + it to always use RPATH, even when configured with -no-rpath. + * [176029] Added qmalloc.cpp with qMalloc() and qFree() implementation + to make it easier to replace the default container allocators with + custom allocators (by providing your own qmalloc.o(bj) file). + * Enable -reduce-exports automatically on linux-icc* mkspecs when + using version 10.1 of the Intel C++ Compiler for Linux. + * Add experimental support for the AVR32 processor. + * Allow building Qt with -release and the Intel C++ Compiler for + Linux. This required working around several compiler bugs by + turning optimizations off for certain modules. See the compiler + notes for more details. + * Add support for MSVC 2008, and add separate mkspecs for MSVC 2002 & + 2003. + * [189185] Avoid quoting the the include and library paths for iconv. + +- Documentation and Examples + * The Qt Designer Manual was updated to include new Qt Designer features. + * QtScript module overview was updated with more examples and reference + material. + * [161404] The 40000 Chips demo no longer shifts when clicking the OpenGL + button. + * [188676] Fixed text item moving in Diagram Scene example. + * New demo: Embedded Dialogs + * New demo: Browser + * New example: Graphics View / Pad Navigator + * New example: Item Views / Address Book + * New example: WebKit / Previewer + * New Example: XmlPatterns / Recipes + * New tutorial: Address Book + * Multiple bug fixes for the Torrent Client example. + * Speed-ups in the Ported Asteroids Example. + * [164223] All examples that use resources now include + Q_INIT_RESOURCES to avoid breakage in static builds. + +- Translations + * Added a Traditional Chinese translation of the Qt and tools courtesy + of Franklin. + * Added a Spanish translation of Qt courtesy of Enrique Matias Sanchez. + +- Signals and slots + * [147681] Added support for 'long long' and 'unsigned long long' + in queued connections. + * [125987] Optimized QMetaObject::activate(), the function that + actually delivers signals to all connected slots. + * [164558] Fixed a bug that caused queued signals to be delivered out + of order (not in the order they are emitted). + * [169554] Added Q_EMIT, to correspond to Q_SIGNAL and Q_SLOT. + +- Multithreaded painting + * [66358, 142031] Added support for painting on QImage, QPicture, + and QPrinter in multiple threads. See the Multithreaded + Programming documentation for more details on supported features + and known limitations. + +- Embedded QWidget support for Graphics View + * [177204] Added support for using layouts, styles, palettes and fonts, + as well as embedding QWidgets into a QGraphicsScene. + +- XML support in QtCore + * The QXmlStreamReader, QXmlStreamWriter and supporting classes + have moved from the QtXml module to the QtCore module. This change is + both source- and binary-compatible with previous versions. New + applications can opt to not link to QtXml when using these classes. + +- Printing + Made a number of improvements to printing in Qt 4.4, including + support for setting custom page sizes and custom margins as well as + the ability to programatically enumerate printers via the new + QPrinterInfo class. A couple of new classes, QPrintPreviewWidget + and QPrintPreviewDialog, have been added to make it easy to add a + print preview to an application. The QPrintDialog and QPageSetupDialog + for X11 have been redesigned and are hopefully easier to use. + +New features +------------ + +- XQuery 1.0 and XPath 2.0 support provided through the new QtXmlPatterns + module. + +- Qt Help module for embedding documentation into applications. + +- QSystemSemaphore provides a general counting system semaphore. + +- QSharedMemory provides access to a shared memory segment between multiple + threads and processes. + +- QLocalServer class provides a local socket-based server with a matching + new QLocalSocket class. + +- QFileSystemModel provides a data model for the local file system. Unlike + QDirModel, QFileSystemModel will fetch directory listings in a background + thread to prevent any locking in the GUI. QFileSystemModel is also much + faster and has a few more features then QDirModel. + +- QCommandLinkButton to support Vista style command links on all platforms. + +- QFormLayout provides a layout designed for convenient form creation with + the appropriate appearance on different platforms. This class previously + appeared in Qtopia/4.3, but has been integrated into Qt. + +- QtConcurrent provides a high level multi-threading API. + +- QPlainTextEdit provides a highly scalable plain text editor. It uses + similar technology and concepts as QTextEdit, but is optimized for plain + text handling; e.g. as a log viewer. + +- QTextBoundaryFinder is a new class implementing the Unicode text + boundaries specification. + + +Third party components +---------------------- + +- Updated Qt's SQLite version to 3.5.4. + +- Updated Qt's libpng version to 1.2.25. + +- Added CLucene version 0.9.17. + +- Added WebKit (see the src/3rdparty/webkit/VERSION file for the version). + +- Added Phonon version 4.1. + +**************************************************************************** +* Library * +**************************************************************************** + +- General Fixes + * [147201] Assert in debug mode when using QReadLocker, QWriteLocker, + or QMutexLocker with unaligned pointers. + +- QAbstractButton + * [190739] Ensure button with the TabFocus policy doesn't receive focus + through others ways. + * [192074] Disable key navigation for buttons in a item view. + +- QAbstractItemModel + * [171469] Speed up insertion of rows into a model. + +- QAbstractItemView + * [162487] Check canFetchMore() on the model before calling fetchMore(). + * [179163] The virtual selectAll() is now called when the user types + "Ctrl+A" + * [181413] Fixed InternalMove for MoveAction-only models. + * [181988, 192114] Made mouse wheel smarter on ScrollPerPixel mode. + * [182248] Trasparent background for the dragged visual. + * [184507] setVerticalScrollMode(ScrollPerItem) can cause the view to + scroll to the bottom. + * Add autoScrollMargin property. + * [162547] Make the current index stay in the viewport when sorting. + * [165404] Make the drop indicator stylable. + * [160611] Ensured that the hover item is updated when dragging over the view. + * [162497] Allow key events to be propagated. + * [186052] Mac: The alternatingRowColors property now honors the + Graphite color setting. + * [202276] Fixed crash when pressing Ctrl+C in a view with no model. + * [202034] Ensured that the editor's geometry is kept up to date when rows + are inserted. + * [204403] Only scroll to the current index on reset if the view is + editing. + +- QAbstractProxyModel + * [156789] Fixed a crash when deleting the source model. + * [194765] Made headerData() call mapToSource() when asking for data. + * [195023] Added setData() and setHeaderData() implementation. + +- QAbstractScrollArea + * [159949] Fixed a bug where setting the horizontal scroll had no effect. + +- QAbstractSpinBox + * [183108] Allowed a spin box to be cleared before it is visible. + * [198687] Always reset modified and undo states of the line edit upon + pressing Enter. + +- QAccessible + * [177706] Windows narrator will now read Tooltips properly. + * [182437] Tooltips are now read aloud once instead of twice. + +- QAction + * [200823] Fixed regression that caused the tool tip of an action not to + show the shortcut by default. + * [97238] Introduced the iconVisibleInMenu. + +- QApplication + * [100630, 153895] Fixed a bug where key press events were always + sent as non-spontaneous events, while the key release event was + spontaneous. + * [194454, 196062] Fixed QApplication::quitOnLastWindowClosed to + work as documented. + * [97238] Introduce an attribute (AA_DontShowIconsInMenus) to control + the default behavior of icons in menus. This obsoletes the + qt_mac_set_menubar_icons() function. + * [201218] Fix bug on Mac OS X where Qt::WA_DeleteOnClose failed to + delete on close. + +- QAtomicInt + +- QAtomicPointer + * [168853] Introduced QAtomicInt and QAtomicPointer into the public API. + These classes provide a cross-platform API for doing atomic operations. + * Optimized testAndSet*() on PowerPC to not branch in the best case + (when value == expectedValue). + * [197244] Fixed the gcc inline assembler constraints for the PowerPC + implementation. + * [198399] Applied patch from SUSE to add S390(x) support. + +- QBoxLayout + * [103626] Added insertSpacerItem() and addSpacerItem(). + * [127621] Made setStretchFactor() behave correctly if widget == 0. + +- QBrush + * [179308] Fixed a bug which caused QBrush to forget the color if it was + passed in the constructor along with Qt::NoBrush. + * [169502] Fixed a threading issue with setTextureImage(). + +- QBuffer + * [184730] A TIFF image can now be stored correctly in a QByteArray. + +- QByteArray + * [193870] Copy the data of a QByteArray that is taken from + QByteArray::fromRawData() when appending more data. + * [82509] Added QT_NO_CAST_FROM_BYTEARRAY to disable "operator const + char *" and "operator const void *". + +- QCalendarWidget + * [181388] Added support for updating the cell of a particular QDate. + * [172053] Fixed palette bug for calendar's buttons. + +- QChar + +- QCleanlooksStyle + * [194082] Fixed disabled checkbox painted as unchecked. + * [189609] Fixed an issue where QMdiSubWindow could have incorrect + buttons. + * [182806] Retain hover appearance on slider while dragging. + * [180105] Fixed gradient backgrounds shown as black on a pressed + QPushButton. + * [176674] Fixed combobox drop down ignoring custom icon sizes. + * [197691] Made the style work better on older X11 servers without + XRender support. + +- QColorDialog + * [142706] use QDialogButtonBox to conform with the style it is running + in. + +- QColumnView + * [167408] Added createColumn() to help make subclassing easier. + +- QComboBox + * [155578] Improved calculation of size hint for combo box pop-up. + * [183982] Fix bug where the combobox width was not wide enough in some + styles. + * [187744] Made QComboBox behave slightly better when the view is a tree. + * [189444] Allowed separators in the list. + * [190332] Made the popup respect the view's selection behavior. + * Made setEditable(false) explicitly hide the lineEdit, otherwise it may + remain visible when executing a modal dialog immediately afterwards. + * [154884] Fixed a bug where the popup was hidden without calling + QComboBox::hidePopup(). + * [169848] Fixed a bug where the combo box did not open as expected when + using a touch screen. + * [153975] Mac OS X: Improved the visual appearance (flash selected item + and fade away when hiding the menu). + * [190351] Fixed setView() for style using SH_ComboBox_Popup. + * [191329] Fixed the height calculation of the popup for custom view. + +- QCommonStyle + * [173539] Make the combo label draw according to the combo box's layout + direction and not the application's. + +- QCompleter + * [189564] Prevented unselectable items from appearing in the completion + list. + * [180785] Ensured that QCompleter emits activated() after pressing the + Return key. + +- QCoreApplication + * [157435] Fixed the posted event implementation to prevent the pending + queue from growing endlessly while a modal event loop is running. + * [132395] Sent DeferredDelete events at the right time. Specifying the + QEventLoop::DeferredDeletion flag (now deprecated) to processEvents() + is no longer necessary. + * [131235] Added QCoreApplication::applicationPid(). + * [132859] Don't explicitly set the LC_NUMBERIC locale to "C" on UNIX + systems. + * [187044] Fixed a crash when addLibraryPath() or setLibraryPaths() + is invoked before creating QCoreApplication. + * [161049, 171670] Don't leak the single QThread instance that Qt creates + to represent the main() thread. + * [143743] Added the QCoreApplication::applicationVersion property. + +- QCryptographicHash + * [190062] Ensured that calling result() twice returns the same value. + +- QDataWidgetMapper + * [194784] Allowed setting NULL values for editors. + +- QDataStream + * [196100] Fixed compatibility issue with QCString in Qt3.x streams. + * [196415] Fixed compatibility issue with invalid colors in Qt 3.x + streams. + +- QDateTime, QDate, QTime + * [189882] Optimized {QDate,QTime,QDateTime}::fromString() so that it + is about 40% faster than before. + * [193079] Have {QDate,QTime,QDateTime}::fromString() understand + locale-dependent string formats. + * Added enum values to distinguish between short and long formats. + +- QDateTimeEdit + * Added properties minimumDateTime/maximumDateTime + * [169916] Added a timeSpec property for QDateTimeEdit + * [178027] Make QDateTimeEdit respect the locale property + * [158950] Disable QCalendarWidget popup when the dateTimeEdit is + read-only. + * [145872] Added a getter and setter for the QCalendarWidget popup. + +- QDateEdit + * Don't interpret time-specific formats as special fields in a QDateEdit + and vice versa for QTimeEdit. + +- QDesktopServices + * [89584] Added a way to get users Documents, Desktop, Movies + directories. + * [105740] Added a way to determine the location to store data files. + +- QDialog + * [174842] Ignore the close event if the reimplementation of reject() + doesn't close the dialog. + +- QDialogButtonBox + * [191642] Don't steal the default button if there is one already. + * [196352] Fixed roles of QDialogButtonBox::Abort and + QDialogButtonBox::Ignore. + +- QDir + * [172057] Fixed bug when sorting directories containing files larger + than 2GB. + * [177904] Fixed a problem with QDir::tempPath() and QDir::homePath() + returning trailing slashes inconsistently. Now it returns the + absolute path name, without the trailing slash. + +- QDirModel + * [176323] Fixed display of files moved by drag and drop (on a QTreeView). + * [196768] Fixed sorting. + +- QDockWidget + * [171661] Fixed setTitlebarWidget(0) to reset the native decoration. + * [169808] SizeHint is now taken into account. + * [188583] Fixed a bug making dockLocationChanged signal not always + emitted. + * [193613] Highlighted splitters between QDockWidgets, now go back to + inactive state when the cursor have passed over it. + +- QDoubleSpinBox + * [164696] QWidget::locale() is now used for all string-to-number + conversions. + +- QErrorMessage + * [189429] Fixed "do not show again" with rich text message. + +- QEvent + * [37536] Add QEvent:registerEventType() for obtaining a unique + event type ID. + * [161940] Fix QContextMenuEvent::modifiers() on X11 and Qt for Embedded + Linux to behave like the Windows and Mac OS X. Previously, this + * [166605] A drop event's drop action is now initialized to the drag + manager's current default action. + +- QFile + * [107448] Fixed bug where QFile::write() would fail to report an error + on disk full. + * Added map() and unmap() to map files into memory. + +- QFileDialog + * [71645] Added a property to hide filter details. + * [174510] Ensured that when multiple files are selected, all of them + will be deleted, not just the current one. + * [172254] selectFile should also set the current directory. + * [185930] getExistingDirectory directory file not updated after + renaming the new directory. + * [164591] Provided a way to set the QDir::filter on the model. + * [180459] Native OS X file dialog forgets last visited directory. + * [184508] Improved speed when showing a lot of files. + * [184508] Improved launch speed. + +- QFont + * Add Capitalize font-capitalization feature including small caps. + * [191756] Do not crash when font config finds no fonts on the system. + * [145015] Don't replace '-' characters in font names anymore. + * Fixed a bug where glyphs sometimes showed up in italic for a non italic + font (X11/Embedded Linux only). + * Fixed a bug where xHeight() sometimes returned a wrong number + (X11/Embedded Linux only). + * Added support for word- and letter-spacing. + +- QFontComboBox + * Fixed a bug where font name would not be displayed in some cases. + +- QFontMetrics + * [179946] Fixed averageCharWidth() to change return value after adding + text to a QPainterPath. + +- QFSFileEngine + * [200220] Fixed a potential crash and removed some potential resource + leaks. + * [190377] Fixed a reentrancy bug on all platforms; querying the canonical + path no longer relies on chdir() and realpath(). + * [155284] Fixed uninitialized memory problem when calling realpath() + with an empty name on Solaris. + +- QGL + * [137573] Fixed drawing of images/pixmaps larger than the maximum texture + size in the OpenGL paint engine. + * [175853] Added new drawTexture member functions for convenient drawing + of textures in QGLWidget, QGLContext, QGLFramebufferObject, and + QGLPixelBuffer. + * [187954] Fixed an issue with missing corner pixels when drawing + rectangles in the OpenGL paint engine. + +- QGLContext + * [184996] Made isSharing() return something useful after a QGLWidget has + been reparented under Windows. + +- QGLPixelBuffer + * [195317] Make QGLPixelBuffer::hasOpenGLPbuffers() preserve the current + GL context when called. + +- QGLWidget + * [128157] QPixmap::grabWidget() now works on a QGLWidget. + * Added support for syncing drawing to QGLWidgets under X11 via the + QGLFormat::setSwapInterval() mechanism. This requires the + GLX_SGI_video_sync extension to be present. + * [183472] Made renderText() respect the currently set GL scissor box + and GL viewport. + * [182849] Fixed a crash on the Mac when renderPixmap() was called on a + multisampled GL context. + * [176618] Don't require depth testing to be enabled for the 3D version + of renderText() to work. + +- QGradient + * [178299] Fixed an issue where calling setColorAt twice with the same + position would not replace the existing color at that position. + +- QGraphicsItem + * [161160] Speedup when removing children from an item. + * [158799] QGraphicsItem now returns a different scene from + itemChange(ItemSceneChange). + * [127051] Added support for item caching in local and device + coordinates. + * [183996] Fixed a bug caused when items are moved by pressing many mouse + buttons at the same time. + * [192983] Added QGraphicsItem::boundingRegion(), which allows updating + items based on their shape instead of their bounding rect. + * Improved QGraphicsItem::isObscured() and QGraphicsItem::opaqueArea() + speed and accuracy. + * [195916] Fixed crash when deleting an item as it receives a + contextMenuEvent(). + * [202476] DeviceCoordinateCache now works with perspective + transformations. + * [202718] DeviceCoordinateCache performance improved greatly when + the cached item does minimal updates. + * [202689] Scrolling works (but is slow) for cached items. + +- QGraphicsItemAnimation + * [164587] QGraphicsItemAnimation::reset() has been marked as obsolete. + +- QGraphicsLineItem + * [177918] Lines with the same start and end point are now valid, and + rendered as a point. + +- QGraphicsScene + * [160463] QGraphicsScene::clearSelection() is now a slot. + * [161284] Added Q_DISABLE_COPY. + * [163854] QGraphicsScene no longer sends events to a disabled mouse + grabber item. + * [176902] Add support for context menu event propagation. + * [176178] QGraphicsScene::sceneRect() now auto-updates also with NoIndex + set. + * [186398] Added a fast QGraphicsScene::clear(), and massive speed-up in + recursive scene destruction. + * [180663] Fixed miscalculated expose rects in QGraphicsScene::render(). + * [176124] Ensure that all mouse events that should have a widget assigned + do have a widget assigned. + * [174238] The selectionChanged() signal is no longer emitted twice when + replacing one selection with another. + * [160653] selectionChanged is now emitted when reselecting an already + selected item. + * QGraphicsScene::mouseMoveEvent now receives all mouse move events from + the views, and translates them into hover events for the items. This + allows you to track all mouse move events for the entire scene, without + having to reimplement QGraphicsScene::event() and duplicating the + QGraphicsScene implementation. + +- QGraphicsSceneHoverEvent + * [151155] Added support for keyboard modifiers. + * [157222] Added support for lastPos, lastScenePos, and lastScreenPos. + +- QGraphicsSceneWheelEvent + +- QGraphicsSvgItem + * [171131] Fixed painting error caused by using obsolete pixmap cache + entry. + +- QGraphicsView + * [152477] Fix to QGraphicsView's scroll bar range calculation. + * [161284] Added Q_DISABLE_COPY. + * [164025] Mouse press events now propagate through the view if ignored + by the scene. + * New ViewportUpdateMode: QGraphicsView::BoundingRectViewportUpdate + * [180429] Mouse release events propagate properly in RubberBandDrag + mode. + * [176902] Add support for context menu event propagation. + * [180663] Fixed miscalculated expose rects in QGraphicsView::render(). + * [187791] QGraphicsView::setScene() now always updates the view + properly. + * [186827] Fixed an infinite loop caused by mouse replay after deleting + items in response to receiving mouse move events. + * [172231] Fixed erroneous clipping of untransformable items by scaled + graphics view. + * Fixed redraw bugs in QGraphicsView background rendering when using an + OpenGL viewport. + +- QGridLayout + * [121549] Added itemAtPosition(int, int). + +- QGroupBox + * [159480] QGroupBox's clicked() behavior is now the same as QCheckBox. + * [186297] Right-clicking a checkable group box now has no effect, which + is consistent with the behavior of QCheckBox. + * [178797] A checkable group box now correctly updates the sunken state + of its check box. + * Don't call updateGeometry() needlessly from resizeEvent(). + +- QHash + * [171909] Don't rehash in operator[] and insert() when the key already + exists -- to avoid subtle bugs when iterating on a QHash. (This is + documented as being undefined, since these functions are non-const, + but it's easy to avoid the rehashing.) + +- QHeaderView + * [173773] QHeaderView now updates properly upon sorting a column. + * [192884] When the model emits layout changed unhide old hidden rows + and hide new hidden rows. + * [170935] QHeaderView now updates properly when swapping columns. + * [157081] Made headerviews semi-transparent while dragged. + * [148198] Optimize hiding sections when the resize mode is ResizeToContents. + * [168128] Fixed problem where the last section was resized when the last two sections are swapped. + * [168209] Update the header section when the font size changes. + +- QHostInfo + * [194539] Fixed the ordering of IP addresses returned by the + host-lookup procedures. Qt respects the order supplied by the + system libraries. + * [176527] Fixed a problem in QHostInfo that would cause it to + print warnings if it was used before QCoreApplication is created + +- QHttpHeaders + * [104648] Fixed QHttpHeaders to not change the order or + capitalisation of headers received or sent. QHttpHeaders is now + case-insensitive but case-preserving + +- QHttp + * [181506] Fixed a bug that would cause QHttp to emit a warning + from QIODevice when connecting to some servers. + * [190605] Fixed a memory leak. + * [175357] Fixed a deadlock when trying to parse an empty HTTP + reply which did not contain Content-Length: 0 (such as those + found in 304 replies) + * [170860] Fixed a problem which would make QHttp emit the done() + signal too soon (before it was finished). + +- QIcon + * [168488] Reduce memory usage if you call addPixmap severals times with the same arguments. + +- QImage + * [176566] Fixed problem in scale() which would cause downscaled images to + become darker due to precision loss in the image scaling. + * [181265] Fixed crash in scale() when downscaling very large images. + * Added new image formats: QImage::Format_ARGB8565_Premultiplied, + QImage::Format_RGB666, QImage::Format_ARGB6666_Premultiplied, + QImage::Format_RGB555, QImage::Format_ARGB8555_Premultiplied, + QImage::Format_RGB444, QImage::Format_ARGB4444_Premultiplied, + and QImage::Format_RGB888. + * Added support for the ICO image format (from Qt Solutions) + * Fix drawing of text into a QImage on the Mac so that the native + CoreGraphics engine is used. This makes aliased text, or text with + a small point size, look much better. + * [188102] For Indexed image, fixed setColor() to expand the + colortable if necessary. Made colortable manipulation more robust. + +- QImageReader + +- QImageWriter + +- QInputDialog + +- QIntValidator + * [179131] Reverted QIntValidator's out-of-range semantics to Qt 4.2 + behavior, at popular demand. + +- QItemDelegate + * [175982] Escape did not close the editor if the application had registered + escape as a shortcut. + * [177039] Handle double precision properly. + * Don't finish editing if the validator is still in intermediate mode. + +- QItemSelectionModel + * [169285] Items are now deselected properly. + * [192147] Fix an off-by-one bug in QItemSelectionModel + +- QLabel + +- QLayout + * Cache sizeHint() and minimumSizeHint() of widgets in a layout using + the internal class QWidgetItemV2, leading to significant performance + gains for widgets that have an expensive size hint implementation. + +- QLibrary + * [155884] Fixed QPluginLoader to not load plugins with unresolved symbols. + * [170013] Make sure that libraries are opened with RTLD_LOCAL by default + on *all* platforms. (On Mac it was RTLD_GLOBAL by default). This should + make plugin loading more consistent. + * [190831] Fixed crash when calling loadHints on a default constructed + QLibrary. + * [155109] The real error message was discarded if the library existed, + but failed for another reason. + +- QLineF + * [170170] Introduce new member function angleTo() which returns the angle + between two lines, also taking the direction into account. + * [174122] Added new member functions in QLineF for setting and getting + the angle of the line, as well as translating a line, and constructing + a line from polar coordinates. + +- QLineEdit + * [151414] Add protected function to access the cursor rectangle. + * [153563] Don't show blinking cursor on read only line edit with input mask + * [174640] Emit editingFinished() when the user open a menu. + * [178752] Reverted to Qt3's behavior of using an arrow cursor instead of + a beam cursor when the QLineEdit is read only. + * [180999] Old selection now cleared upon activating a window. + * [188877] Fixed painting error resulting from pasting into a selection. + +- QLinkedList + * Add QLinkedList::removeOne(), which removes the first occurrence of a + value from the list. + +- QList + * Add QList::removeOne(), which removes the first occurrence of a value + from the list. + +- QListView + * [158122] Wordwrap in ListMode + * [177028] Make sure that the scrollbars is automatically removed when the + model has less than two items. + * [186050] Make sure the content size is updated when moving item. + * [182816] Combine wordwrap and text eliding. + +- QListWidget + * [199503] Fixed a crash when calling clear inside a slot connected to + currentItemChanged. + * [159792, 184946] Keyboard navigation fixed with non uniform item sizes. + * [255512] Add function to allow setting the current item without selecting it. + +- QLocale + * [161049] Fixed a couple of static memory leaks in QLocale. + * Added the following functions to QLocale: + QString toString(const QDateTime &dateTime, FormatType format = LongFormat) const; + QString toString(const QDateTime &dateTime, const QString &format) const; + QString dateTimeFormat(FormatType format = LongFormat) const; + * Added the following enum values to QLocale::QueryType: + DateTimeFormatLong + DateTimeFormatShort + DateTimeToStringLong + DateTimeToStringShort + +- QMacStyle + * [142746] Now respects the QComboBox::iconSize property. + * [184566] Make sure we pick up changes to QPushButton::setDefault(). + * [174284] Don't truncate text on tabs in the small and mini size. + * [170971] Don't try to draw a mini scrollbar as it doesn't exist, draw a small one instead. + * [170977] Correct checkmarks for small and mini non-editable comboboxes. + * [170978] Prevent mini push buttons from being clipped. + * [202959] Draw the correct number of tickmarks for sliders. + +- QMainWindow + * [178510] Context menu is not shown if all toggle view actions are invisible. + * [195945] Fixed resizing of QDockWidgets in QMainWindow without using any + central widget. + * [196569] Don't override the cursor set by the user with setCursor when hovering dock widgets. + +- QMdiArea + * [155815] Fixed a bug causing sub-windows to overlap when tiling them. + * [148183] Added support activation order. + * [153175] Added support for tabbed workspace. + * [182852] Don't overwrite mainwindow title. + * [189758] Fixed a bug causing sub-windows to be squeezed when tiling them. + * [202657] Fixed focus issue on dockwidget when activating the main window. + +- QMdiSubWindow + * [198638] Fixed so that minimumSize() and minimumSizeHint() was respected (it was + possible to resize the window to a smaller size earlier). + * [171207] Added tooltips for the buttons in the title bar. + * [169874, 47106] Added support for switching between sub-windows using Ctrl-Tab. + * [169734] Added an access function to QMdiArea. + * [192794] Fixed a bug causing installed event filters to be removed after maximizing a sub-window. + +- QMenu + * [165457] Fixed torn-off QMenus to have the correct stacking order. + * [167894] Fixed focus management when activating an action from the keyboard. + * [167954] Increased the size of the tear-off handle. + * [172423] Mac OS X: Improved the visual appearance (flash selected item and fade away when hiding the menu). + * [183777] Fixed a bug with tear off menu making impossible to tear some menu off. + +- QMenuBar + * [193355] Fied bug with action plugged in menu which did not return to their normal state + after being clicked + * [194677] Fixed a bug causing the corner widgets to be laid out incorrectly when adding them right + before the menu bar was shown. + +- QMessageBox + * [176281] By default, if there is exactly one button with the RejectRole or + MessageBox::NoRole, it is now made the escape button. + * [181688] Better look with setInformativeText. + +- QMetaObject + * [197741] Fixed a memory leak in QMetaObject::invokeMethod() when + called with unregistered data types. + * [171723] Support for 'unsigned' type in the meta-object system. + +- QMetaType + * [179191] Added QMetaType::unregisterType() for unregistering a metatype. + +- QMimeData + * Added a removeFormat() method. + +- QMngHandler + * [155269] QMngHandler now initializes image backgrounds properly. + +- QModelIndex + * [176068] optimize QModelIndex operator< + +- QMotifStyle + * [185649] Fixed incorrect positioning of itemview frames in reverse mode. + +- QMutex + * [151077] Optimized QMutex locking path to be comparable to Win32 + CRITICAL_SECTIONs. + * [186088] Clarify documentation of lock() and tryLock() to be + more explicit about the behavior of these functions in recursive + vs. non-recursive mode. + +- QNetworkInterface + +- QNetworkProxy + +- QObject + * [144976] Fix QObject::property() to return a QVariant that can be + converted to an enum if the enum is known to QMetaType. + * [171612] Fix QObject::removeEventFilter() to work as documented. + * [172061] convert() now return false if the result is invalid for date types. + * [184003] Fix a crash in QObject::queryList() when called from an + object's destructor. + * [173218] Document deleteLater()'s behavior when called before + QCoreApplication::exec(). + +- QOpenGLPaintEngine + * [183995] Reset the GL_TEXTURE_ENV attribute and pixel transfer modes to the + default values when QPainter::begin() is called. + * [174273] Fixed the annoying "Unable to compile fragment programs" problem + by adding a GL program cache, and compiling the programs on demand. + +- QPainter + * [121105] Added drawEllipse overload that takes a center point and two + radii. + * [124248] Fixed some rounding issues causing inconsistencies between + text and line drawing. + * [142470] Fixed performance issue with non-cleartype text drawing on + Windows when doing several calls to QPainter::drawText(). + * [142514] Fixed bug in X11 paint engine where a pixmap drawn + at non-integer coordinates would be drawn at different offsets depending + on whether opacity was set or not. + * [156787] Fixed problem with SmoothPixmapTransform and source rects in + drawImage and drawPixmap which would cause color bleeding from pixels + outside the source rect at the image borders. + * [156964] Improved accuracy of arc drawing, ensuring that arcs drawn + with same control rect but different sweeps are still coinciding. + * [162153] Fixed bug caused by integer overflow in QPainter::boundingBox + when passing a very large rectangle. + * [163605] Introduced new drawRoundedRect API with support for absolute + coordinates for the corner radii. + * [166702] Fixed some potential floating point exceptions in raster + paint engine line drawing. + * [167890] Prevent crash when drawing zero-length lines; these are now + drawn as points. + * [169711] Ensured that calling setClipRect with negative width/height + is treated as an empty clip region. + * [170208, 170213] Fixed some bugs with dashed line drawing and dash + dash offsets in the mac paint engine. + * [175912, 176386, 194360] Fixed some precision issues with projective + transformed pixmaps and images. + * [179507] Ensure that the final stop color is always used beyond the + radius when using a QRadialGradient. + * [180245] Fixed bug which caused setOpacity to be ignored when drawing + transformed RGB32 images. + * [182658] Fixed a problem with drawPoint in X11 paint engine which would + cause a one-pixel point to sometimes be drawn as two pixels. + * [184746] Fixed performance regression in drawEllipse() with raster paint + engine. + * [188012] Fixed stroking of empty rectangles in X11 paint engine. + * [190336] Fixed text drawing performance issue on Windows when using + setPixelSize to draw large fonts. + * [190394] setOpacity() now correctly paints transparent regions when + outputting to PDF. + * [190634] Fixed bug where drawLine would fill part of the paint device + instead of just drawing a line. + * [190733] Fixed some precision problems with miter joins and curve + segments which could cause ugly painting artifacts. + * [191531] Fixed a bug with alpha or pattern brush drawing to mono images. + * [191761] Fixed rendering of transformed ObjectBoundingMode gradients. + * [199234] Fixed a bug causing fillRect with a gradient fill to not work + with ObjectBoundingMode gradients in the raster paint engine. + * Introduced a new rasterizer for aliased drawing to address performance + and precision issues in the existing rasterizer. + * Remove warnings emitted when setting Source or SourceOver composition + modes on certain paint devices. + * [192820] Fix drawImage()/drawPixmap() with a source rect parameter outside + of the range of the source image dimensions. + * [183745] Fixed setting font point sizes < .5, would in some cases cause + the font size to default back to 12 points. + * [157547] Fixed inconsistent pen styles for DashLine, DotLine, DashDotLine + and DashDotDotLine across Win/Linux. + * [143526] Fixed a problem with drawing text or shapes that were drawn + with a very large scale factor. Typically you would get a crash after + memory was exhausted. + * [186070] Fixed potential integer overflow when drawing texture or pattern + brushes with a transform that has a small scale. + * [200616] Fixed bug causing transformed cosmetic pens with width > 0 and a + dash pattern to be partially or completely clipped (raster engine). + * [206050] Fixed QImage::scale with a SmoothTransformation to handle alpha + channel correctly when scaling. + + +- QPainterPath + * [121105] Added addEllipse overload that takes a center point and two + radii. + * [181774] Remove assert that could occur when calling pointAtPercent() + with parameters close to 0 or 1. + * [189695] Fixed bug relating to 360-degree arcs and winding fill. + * [187779, 187780] Fixed some bugs in intersects() and contains() when + dealing with paths with multiple subpaths. + * [191706] Fixed intersects(QRectF) for paths that represent vertical or + horizontal lines. + * [193367] Introduced simplified() to simplify paths with multiple + subpaths and/or self-intersections. + * [206160] Modify QPainterPath::operator== to do point comparisons with + an epsilon relative to the painter path's bounding rect size. + +- QPainterPathStroker + * [174436] Fixed some bugs relating to dash offsets and dashing of + paths with multiple subpaths. + +- QPalette + * [170106] Added QPalette::ToolTipBase and QPalette::ToolTipText. + +- QPicture + +- QPixmap + * [164116] QPixmap::x11Info() didn't report the correct depth when + the pixmap depth and the desktop depth was different. + +- QPixmapCache + +- QPlastiqueStyle + * More native appearance of button, combobox, spinbox and slider. + +- QPolygon + * [163219] Added missing datastream operators to QPolygon. + +- QPrintDialog + * [182255] Don't ask whice to overwrite axisting file. + * [183028] Changed to default for maxPage() to INT_MAX. + + +- QPrinter + * PDF engine now supports hyperlinks. + * [180313] Fixed a bug where QPrinter could not be used more than once + per instantiation. + * [121907] Change begin() to properly return 'false' when the file we + want to write to can not be written to. + * [189604] Make the pdf printer capable of having a different page size + and orientation for each page. + * [99441] Add setPaperSize(const QSizeF &paperSize, Unit unit). + * [182245] Make pageRect() return consistent values across + Mac/Win/Linux when fullPage() is set, and fix an off by one error in + the width()/height() functions on the Mac. + * [156508] PS/PDF generators: Correctly generate grayscale output when + requested. + +- QPrintEngine + * [193986] Fixed the Trolltech copyright date on PDF files + +- QProcess + * [162522] QProcess now emits stateChanged() consistently for all state + changes. + * [153565] Add define to make it compile with QNX RTOS. + * [196323] Try to unregister SIGCHLD while Qt is unloaded. + +- QProgressBar + * [189512] sizeHint() doesn't depends anymore on PM_ProgressBarChunkWidth + +- QProgressDialog + * [190318] Use the size of the label if setMinimumSize() and setLabel() + are called. + * [198202] Wixed crash when calling setLabel(0). + +- QPushButton + +- QReadWriteLock + * [131880, 170085] Add support for recursive read-lock + support. See the not below in the Important Behavior Changes + section. + +- QRect + * Fixed a bug in normalized() when width() == 0 and height() < 0 + or vice versa. + +- QRectF + +- QRegion + * Added numRects() which returns the number of rectangles in the region. + * [193612] Various optimizations for regions consisting of only one + rectangle. + +- QResource + +- QScriptEngine + * [200225] Made uncaughtExceptionBacktrace() return a correct backtrace + in the case where the value thrown is not an Error object. + * [202454] Made QScriptContext::isCalledAsConstructor() return the right + result for constructors registered with newQMetaObject(). + * [198166] Made canEvaluate() handle C-style comments correctly. + * [202606] Made it possible to invoke slots with const QObject* arguments. + * [200599] Removed the need to register the metatype-id of QObject-derived types + before they can be used as arguments to slots where the type occurs + in the signature. + * [185580] Fixed a bug with automatic semi-colon insertion that caused the + prefix ++ operator to behave incorrectly. + * [190991] Implemented iteration for arguments objects. + * [175697] Made conditional function declarations have the same semantics as in + other popular ECMAScript implementations. + * [176020] Fixed a crash that occurred when the left-hand side of an assignment + was an object literal. + * [176020] Fixed a crash that occurred when an if-statement inside a function + contained a return statement in the false-branch but not in the + true-branch, and the function didn't contain any more statements. + * [182578] Fixed a bug that caused automatic QList<int>-to-QScriptValue + conversion to fail. + * [163318] Added abortEvaluation() function. + * [167711] Added qScriptConnect() and qScriptDisconnect() functions, so that + a signal can be connected to a script function from C++. + +- QScrollArea + * Fixed an issue with child widgets with heightForWidth sizing behavior. + +- QScrollBar + * [178919] Fixed a bug where the slider kept moving after the mouse button was released. + +- QSemaphore + +- QSettings + * [199061] Don't use more permissions than we have to, when opening the registry. + * [142457] Preserve the order of keys in .ini files when regenerating them. + * [186232] Unix and Mac OS X: OR the needed permissions flags with the + default flags (instead of overriding them). + * [184754] Hande out-of-disk-space condition more smoothly, by keeping the + old .ini/.conf file if possible (instead of trashing it). + * [189589] Don't create empty directories when accessing QSettings read-only. + * [182712] Added QSettings::setDefaultFormat(), defaultFormat(), and + format() to give more control over the format of QSettings objects + created using the default constructor. + * [183068] Added QSettings::scope(), applicationName(), and + organizationName() for retrieving the values passed to the constructor. + +- QShortcut + * [141646] Add ShortcutContext::WidgetWithChildrenShortcut context, for shortcuts + which are valid for a widget and all it's children. +- QSize + * [172712] Fixed bug in QSize::scale() when passing INT_MAX as height and + KeepAspectRatio as mode. + * [191533] Fixed bug in QSize::scale() where scaling a size with zero + width or height would cause a division by zero. + +- QSizeGrip + * [193199] Made the size grip always respect height-for-width on all + platforms. + * [161173] Fixed a bug causing the size grip to be visible when it shouldn't be. + * [184528] Windows: Fixed a bug causing a mouse press event not to be sent. + * [193350] Fixed a bug with QVBoxLayout. + +- QSlider + * [180474] Fixed regression causing a tick mark not to be shown at the max value for + certain common cases. + +- QSocketNotifier + +- QSortFilterProxyModel + * [162503] Call mapToSource when mapping from proxy to source indexes. + * [146684] Allow the original order of the source model to be restored. + * [199518] Don't assert if the source model emits unbalanced change signals. + * [202908] dropMimeData incorrectly maps when row is rowCount(parent). + +- QSpinBox + * [157520] Adopt the special value text when the value is explicitly set to the + minimum value with the keyboard + * [164696] QWidget::locale() is now used for all string-to-number conversions. + +- QSplashScreen + +- QSplitter + * [169702] Respect the minimum size of widgets. + * [187373] Ensure that widgets are properly initialized before being added to a QSplitter. + +- QSql + +- QSqlDatabase + * [129992] Make it possible to retrieve the connection name from a connection. + Use the connectionName() function. + + * [143878] Give a warning if there is no QCoreApplication instance (required + when using a plug-in driver). + +- QSqlDriver + * [141269] Add support for asynchronous database event notifications. + +- QSqlQuery + * [157397] Set an error if QSqlQuery is used with an invalid database + connection. + + * [122336] Support queries returning multiple result sets. Use the + nextResult() function. + + * [149743] Fixed bug where seek() to a record which was not the next one + returned true, but the data could not be retrieved. + + * [186812] Improved error handling for exec(). + +- QSqlQueryModel + +- QSqlRelationalTableModel + +- QSqlTableModel + * [160135] Emit headerDataChanged when removing rows when using the + OnManualSubmit edit strategy. + +- QSslCertificate + * [186791] Fixed wildcard support in QSslCertificate::fromPath(). + +- QSslCipher +- QSslError +- QSslKey + +- QSslSocket + * [190133] Fixed security hole in certificate verification. + * [186077] Fixed bug in ASN1 time parsing. + * [177375] Added support for peer verification. + * [191705] Fixed crash on remote disconnect. + * [177285, 170458] Enabled run-time resolving of OpenSSL libs also in + static Qt builds. Enabled by default, with configure option to force + (static) linkage. + +- QStackedLayout +- QStackedWidget + * [124966] Honor QSizePolicy::Ignored in pages like we did in Qt 3. + +- QStandardItemModel + * Improved general performance + * [133449] Improved setData() performance + +- QStatusBar + * [194017] Ensure that explicitly hidden Widget in the status bar stay invisible. + +- QString + * [202871] QString::sprintf() crashed with size_t format. + * [193684] Optimized common case in QString::replace(int, int, QString). + * [190186] Handle multiple-digit %n args in QString::arg(QString, + QString, ...) gracefully. + +- QStringListModel + * [158908] Add MoveAction to the default supportedDropActions + * [180184] sort() was not updating the persistant model index's + +- QStyle + * [127923] All implementations of QStyle::subControlRect() now respect QStyleOption::rect for + spin boxes. + * Added SH_SpinBox_ClickAutoRepeatThreshold which used to be hardcoded in QAbstractSpinBox + +- QStyleOption + +- QSvg + * [185844] Fixed parsing of the gradientUnits attribute to support + objectBoundingBox for gradients. + * [161275] Fixed parsing of repeatCount attribute for animateColor + and animateTransform tags. + * [176835] Fixed a memory leak in QSvgGenerator. + * [182196] Fixed problem in QSvgGenerator which would cause gradient + fills to be stored as images instead of using native SVG gradients. + * [187994] Always encode generated SVGs in UTF-8, and specify that + in the xml tag. + * [188847] Fixed a crash when an SVG file contains empty url keywords. + * [190936] Ensure properly sized viewport and viewbox, even when + the paint device does not have a size (such as QPicture). + * [191353, 192220] Fixed a couple of floating point exceptions occuring + when rendering certain SVGs containing curved paths. + * Added correct default attribute values for SVG gradients. + +- QSyntaxHighligher + +- QSystemTrayIcon + +- QTabBar + * [182473] Fixed a bug causing the tabs to stay unchanged after calling setElideMode(). + +- QTableView + * [192919] Drag-selection from QTableView now respects single-selection mode. + * [172201] Painting errors when there are multiple regions that overlap that need to be painted. + * [148565] setSpan() and other spanning operations is slow when there are a lot of spans. + * [186431] Fix bug in wrapping to the next/previous line while doing cursor navigation. + * [189251] corner widget is hidden with header, but not unhidden + * [196532] Fixed bad repaint with hidden header and scrollPerItem. + * [158258] Add clearSpanns() function. + +- QTableWidget + * [255512] Add function to allow setting the current item without selecting it. + +- QTabWidget + * [159433] Emit currentChanged() when the first tab is created. + * [171464] QTabWidget::minimumSizeHint() now respects the orientation. + * [188357] Fixed a bug causing the corner widget to be displayed incorrectly. + +- QtAlgorithms + * [304394] qBinaryFind() can potentially end up in an infinite loop with large collections + +- QTcpSocket + * [149200] Fixed crash when using QTcpSocket without constructing + Q(Core)Application. + +- QTemporaryFile + * [192890] Fixed resize bug on Windows. + * [194130] Fixed creation of temp files in toplevel directories on + Windows. + +- QTextBrowser + * [166040] Detects the right format when calling setText() severals times. + * [177036] Fix handling of encoded urls. + * [169621] Fixes clearHistory() removes all history items except the first, + while it should keep the last entry. + * [176042] Fix selectAll to sometimes show focus frames instead of selected + text. + +- QTextCodec + * [169065] Make calling QTextCodec::setCodecForLocale() with NULL + reset codecForLocale() to the default, instead of causing a crash. + * [167709] Improved support for cp932 codec. + * [185085] Make sure every codec has a unique mibEnum + * Added UTF-32 codecs + +- QTextCursor + * [179634] Fixes loosing of x position when using vertical navigation + in a not yet fully layed out document. + * [178499] Add functionality to interpolate inside the glyph size if it + takes multiple characters to decide on the position. + * [182914] '/' is now considered a word separator. + * Faster QTextCursor::blockNumber(). + +- QTextDecoder + +- QTextDocument + * [135133] Add proper support for the background attribute of HTML + tags, which enables specifying background images. + * [148847] Add support for padding-left, padding-right, padding-top, + and padding-bottom for table cells in the HTML import. + * [169724] Added API for changing the indent width in a QTextDocument. + * [173258] Fixed bug in text layout of tables with row spans and + empty cells. + * [174405] Added support for the border-width css property in the HTML + import. + * [176162] Fixed bug in HTML import which would cause block properties + of empty paragraphs to be transfered to following paragraphs. + * [179330] Fixed performance problem when a maximum block count is reached + which caused the whole document to be relayouted. + * Numerous fixes in the import of malformed HTML. + * QTextDocument::print() now preserves formats set by a syntax highlighter. + * Added QTextDocument::firstBlock() and lastBlock() for convenient iteration + * Added QTextDocument::undoCommandAdded() signal. + * [189691] Fixed bug in HTML image tags showing in incorrect width/height + when only one was provided. + * [193122] QTextTable::removeRows() correctly removes one row after a + mergeCells() + * [55520] Fix bi-directional text showing correctly when mixed with tabs. + * [170376] Fixes text layout QTextLine::setNumColumns(1) combined with + alignment not left + * [177024] Fixed bug in definition of ¤t; entity. + * [176898] QTextDocument loses UndoRedo stack when setting it on QTextEdit by + calling QTextEdit::setDocument() + * [180657] QTextDocument::documentSize() returns an incorrect width when there + is a long line with only spaces. + * [180430] Stop compression of space after an image tag. + * [154330] Implement Right, Justified and Center tabs and make Left tabs + behave as expected in all cases. + * [196744] Fixes colspan making a table cell multiply given user width. + * [197769] Fixed wrong modified state while undo/redo. + * Added QTextDocument::findBlockByNumber() and QTextBlock::blockNumber(). + * Added QTextDocument::revision() and QTextBlock::setRevision()/revision(). + * Added QTextBlock::setVisible()/visible() and QTextCursor::setVisualNavigation()/ + visualNavigation(). + +- QTextDocumentFragment + +- QTextEdit + * [80240] Fixed text color bug when creating a text edit with a disabled + parent widget that is then reenabled. + * [104778] Added convenience functions for getting/setting the background + color of text. + * [150562] Wrap correctly the text in a <table> when the flag + WrapAtWordBoundaryOrAnywhere is set. + * [165610] Fixed bug where a text fragment's underline would be drawn + too long. + * [166486] Fixed bug which caused the cursor to not be shown when + setting the cursor flash time to 0. + * [190852] Fixed a bug which caused the font sizes in tables to be wrong + in QTextEdit documents exported to HTML. + * Many performance improvements + * [190723] Fix problem where the bullet might disappear if there was an + extra selection selecting the word next to the bullet. + * [182200] Make the selectionChanged signal be emitted when pressing + "Ctrl+A" and there is already a selection present. + * [188589] Fixes regression in QTextEdit::keyReleaseEvent where it makes + the release events not be ignored when unused. + * [175825] Allow stopping auto-scrolling feature by moving the cursor + to a position other then the last position. + * [177151] Fix the "Copy Link Location" is always disabled in context + menus created with createStandardContextMenu() + * [182180] The value of cursor width desktop settings on windows is now + respected. + * [108739] Added DnD scrolling and made selection scrolling smoother. + * [202319] More precise QTextEdit::cursorRect(). + * [181572] Accept Key_Up and Key_Down ShortcutOverride events. + +- QTextFormat + * Fixed bug which caused QTextCharFormat::font() to return a wrong font + after changing font-unrelated properties in QTextCharFormat. + * [181177] Fix text directionality changing. + +- QTextLayout + * Support WrapAtWordBoundaryOrAnywhere with QTextLine::setColumns. + * [188594] Make nextword and previous word be more synchronous by making + them stop at the same word boundaries. + +- QTextStream + * [178772] setCodec() take effect immediatly even on open stream. + * [180679] Implemented AlignAccountingStyle. + * Add UTF-32 autodetection + +- QTextTable + +- QtGlobal + * [186969] Fixed theQT_NO_WARNING_OUTPUT define to work properly. + * qFuzzyCompare() is now part of Qt's API and is public. + +- QThread + * QThread is no longer abstract. The default implementation of + QThread::run() function now calls QThread::exec(). + +- QThreadStorage + +- QTimeEdit + +- QTimeLine + * Add CosineShape. + +- QTimer + +- QToolBar + * [159715] If the main window is to small to contains the extension, show it in a menu. + * [179202] Toolbars can be resized by dragging them with the mouse. + * [175325] Changing toolButtonStyle on floating toolbars is handled correctly. + * [187996] Ensure that invisible action are invisible in the toolbar. + * [191727] Fix layouting issue with widgets on the toolbar. + +- QToolBox + +- QToolButton + * [QToolButton] Emit triggered(QAction*) on the activation of the default action even if + triggered from the menu. + +- QToolTip + * [183679] Fixed problem of tool tip being closed when pressing certain keys. + * [191550] Fixed a regression causing the palette not to be updated after calling + QToolTip::setPalette. + * Added functions text() and isVisible(). + * Fixed QToolTip::showText() with rectangle, it always created a new tip. + +- QTransform + * [178609] Fixed division by zero in QTransform::mapRect when passing an + invalid QRect. + * Fixed problem with QTransform::inverted() returning the identity matrix + for transforms with a low scale factor. + +- QTranslator + * [168416] Make it possible for QTranlator to open qm files generated with msgfmt. + (regression from Qt3) + +- QTreeView + * [41004] Deleting a directory will delete all of its children. + * [174627] Moving left towards a custom root index now works correctly. + * [154742] Add property to hide the header + * [166175] Improve the performance of hide() and isHidden() + * [166175] Improve the performance of expanded() and isExpanded() + * [181508] adding a row to a item that is visible and not expanded wont update the '+' + * [179635] Incorrect row height if column with a multi-line item is not visible when tree is first shown. + * [187745] When the context key is pressed first check for a micro focus, but if that isn't valid then go to the mouse cursor position. + * [188862] Crash if a parent index of the root index in the view is removed + * Improving performance by reduce the number of calls to model->parent() + * [167811] Improve insertion speed + * [192104] scrollTo(PositionAtCenter) can scroll beyond the item if item is at 0 + * [168237] Fixed selection when using SelectItems selection behavior and ExtendedSelection selection mode. + * [171902] Expansion is not managed correctly when the 1st column is hidden. + * [130628] Add expandsOnDoubleClick property. + * [189956] Make scrollTo() scroll correctly when the scrollHint is PositionAtBottom. + * [185068] Update editor geometries when columns are moved. + * [120922] Mac OS X: Improved the selection behavior. + * [197650] Fixed spanning items in "right to left" layouts, or if the first column is + moved in another position. + * [204726] Don't assert when sorting an unchanged tree. + * [185994] Introduce a style hint that describes how the view should treat empty areas. + +- QTreeWidget + * [172685] When setting flags don't do anything if the new flag is the same as the old. + * [162736] Fixed potential slowness in QTreeWidget::isItemSelected() + * [167811] Improve insertion speed + * [255512] Add funtion to allow setting the current item without selecting it. + * [183566] Make rows containing widgets resize correctly. + * [189071] Make it possible to disable drop dirrectly on the viewport. + * [192840] Only paint disabled cells as disabled, not the entire row. + * [191329] The checkable items are now checkable even in RightToLeft mode. + +- QTreeWidgetItemIterator + * [172275] Optimize QTreeWidgetItemIterator to not query various states + unless the user explictly specified the corresponding flags. + +- QUdpSocket + +- QUndoStack + * [143285] Added API to access individual commands in the undo stack. + +- QUrl + * [162669] Fixed bug in QUrl::setAuthority() when input ends with a digit. + * [199967] Fixed a regression from Qt 4.4.0 Technical Preview 1 + that caused isEmpty() to return true on non-empty URLs in some cases. + +- QValidator + +- QExplicitlySharedDataPointer + * A new reference counting pointer which doesn't perform copy on write. + +- QVariant + * [186447] Do not call qFatal() when QVariant::load() enconters a UserType + that's unknown to the meta object system. + * [170901] Compare values _and_ keys in QVariant::operator==() when + applied to maps. + +- QVarLengthArray + * [177708] Fix crash in QVarLengthArray::append() for types with a + non-trivial constructor (e.g., QString). + +- QVector + * [161376] Fix unitialized read reported by Valgrind in QVector<T> for + sizeof(T) < 4. + +- QWaitCondition + * [106086] Add support for QReadWriteLock to QWaitCondition::wait(). + +- QWidget + * [323] Add the Qt::WA_ShowWithoutActivating attribute, which can + be used to show a window without activating it. + * [176809] When using the Qt::PreventContextMenu policy, the + context menu key should be sent to the widget (instead of + consuming the event). + * [83698] Introduce QWidget::setWindowFilePath() that allows setting a + proxy icon on the mac and sets the window title if the window title + hasn't been set previously. + * X11/Win: Added support for non-native child widgets. + * [173044] Added support for rendering widgets before they are shown. + * [152962] Fixed a bug causing the widget to repaint itself twice when calling show(). + * Added a render() overload taking an arbitrary QPainter. + * [183466] Fixed a bug where the mouse button release event was sent to wrong widget + when having a mouse grabber. + * [177605, 171333] Windows: Fixed a bug causing painting artifacts when using the + Qt::WA_PaintOnScreen attribute. + * [141857] Fixed a bug causing painting artifacts when using the Qt::WA_OpaquePaintEvent attribute. + * [198794] Fixed wrong calculation of the target offset in render(). + * [180009] Fixed order dependency of setWindowFlags() and setWindowTitle() on Windows. + * [155297] Avoid crash in QWidget::setLayout() if the layout already has + a parent. + +- QWidgetAction + * [193061] Fixed setEnabled that has no effect. + +- QWindowsStyle + * [162326] Removed a warning when rendering to small rectangles. + +- QWindowsXPStyle + * [189527] Fixed incorrect tab indentation on XP/Vista styles. + * [177846] Fixed setAutoRaise beeing ignored for tool buttons. + * [168515] Allow changing the background color of a disabled spinbox. + * [165124] Fixed context help button beeing ignored for QMdiSubWindows. + +- QWindowsVistaStyle + * [164016] More native menu borders on Vista. + * [168611] Allow progress bar animation to complete after reaching 100%. + +- QWizard + * [177022] Respect the minimum and maximum size. + * [189333] The (re)size behavior is now correct for Windows Me. + * [183550] Fixed wrong stretch factor for a wizard page in the interal layout. + * [166559] Honor isAcceptableInput(). + * [170447] Make sure that the virtual QWizard::nextId() function is + called from QWizardPage::isFinalPage(). + +- QWizardPage + +- QXmlStreamReader + * Added convenience function prefix() to the reader and the attributes, previously + we only had name() and qualifiedName(). + * Added more DTD reporting. + * Added QXmlStreamEntityResolver for undeclared entities. + * [179320] Fixed wrongly reported premature end of document for non-recoverable errors + * [192810] Fixed namespace declarations in DTD attribute lists. + * Add UTF-32 autodetection + +- QXmlStreamWriter + * Improvements to conformance to XML 1.0 + * Added autoFormattingIndent property to customize the auto-formatted output. + * [18911] Fixed auto formatting for XML comments. + +- QXmlStreamWriter + * Added autoFormatting() property which controls whether the output should be indented + for readability. + +- QXmlSimpleReader + * [201459] That the class is not reentrant, has been documented. + * Add UTF-32 autodetection + +- Q3ButtonGroup + * [198864] Fixed bug that caused Q3ButtonGroup::insert() to generate wrong + (typically non-unique) ids. + +- Q3DateEdit + +- Q3DockWindow + * [173255] When docked, relayout improved when the content is changed. + +- Q3FileDialog + * [200264] Fixed the "QObject: Do not delete object, 'unnamed', + during its event handler!" warning found in the 4.4.0 beta. + +- Q3GroupBox + +- Q3ImageDrag + * [184521] Q3ImageDrag::canDecode() will now return true for image data that can be decoded. + +- Q3ListView + * [127037] Q3ListView::paintCell() now uses the viewport's background role. + +- Q3MainWindow + * [176544] Q3MainWindow::setDockEnabled() no longer adds dock windows that are already there. + * [176129] Q3MainWindow::setUsesBigPixmap now works. + +- Q3PopupMenu + * [177490] Fixed regression causing activated and highlighted signals to be + emitted multiple times. + +- Q3ScrollView + +- Q3SqlCursor + +- Q3Table + * [171801] Fixed a graphical error in Q3CheckTableItem. + * [196074] Fixed a crash when using Q3Table and Q3ComboTableItem together + with stylesheets. + +- Q3TextEdit + * [197033] Fixed "select-and-copy" on X11 + +- Q3Toolbar + * [171843] QComboBox in a Q3Toolbar was generating warnings + +- QSvgWidget + * Support for xml:space + +- QWhatsThis + [177416] Fix sizing hints when using rich-text. + +- Qt Style Sheets + * [163429] Stylesheet backgrounds now work on Mac. Note that there are + still issues with stylesheets on that platform. + * [169855] Setting a style sheet with gridline-color on QTableView now + works correctly. + * [182917] :hover no longer applies to disabled widgets. + * [184867] Several speedups to stylesheet parsing. + * [188344] Style sheets no longer reset font settings. They now + take precedence over manually set font settings, and will leave other + settings alone. The font is restored to the manual settings if + the style sheet is removed. + * [188702] Fixed a bug where QLineEdit would not react to the :focus + pseudo state. + * [190422] Fixed a bug where the width of QSpinBox subcontrols would not + be properly respected. + * [190423] Fixed a bug where gradient backgrounds were not shown correctly + in QComboBox. + * [191189] Fixed a bug where classes derived from QDialog by more than two + levels (QDialog -> MySubClass -> MySubSubClass) would not receive the + styled background. + * [191216] Menus with a background color will now be rendered using the + native style. + * [191822] Fixed a crash in subElementRect when widget pointer is null. + * [192374] An offset ::tab-bar element no longer offsets scroll buttons. + * [192535] Fixed a bug where a QComboBox would not always draw its + dropdown button when styled. + * [192655] Fixed a bug where it was sometimes impossible to toggle a + styled, checkable menu item. + * [199912] QHeaderView no longer collapses to zero contentsRect if size + is not specified. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + +- Interbase driver + * [185482] Fixed bug where data corruption occurred when inserting data into + numeric fields on some platforms. + + * [156090] Fixed bug where the connection information was always assumed to + be Latin1 encoded. + +- MySQL driver + * [190311] Fixed bug where fetching BLOBs with a prepared query would fail + if the second BLOB was larger than the first. + + * [184354] Implement QSqlDriver::escapeIdentifier() allowing reserved words and + white spaces in table and column names. + + * [129925] Communicate with the database using UTF8 encoding for MySQL + versions >= 4.1.13 and < 5.0.0. This makes the behavior consistent with MySQL + versions >= 5.0.7. + +- OCI driver + * [167644] Set an error when failing to start a transaction in addition to + printing an error. + + * [177054] Fixed bug that caused QSqlField::length() to always return 38 for + non-numeric fields. + + * [141706] Added support for the using the hostname and port number provided by + QSqlDatabase. This makes it possible to connect to Oracle databases without + a tnsnames.ora file on the client. + +- ODBC driver + * [164680] Don't crash when updating a view displaying a model after the + database connection has been closed. + + * [166003] Use SQLFetch() if SQLFetchScroll() isn't supported in the driver. + + * [116534] Allow closing cursor without destruction of QSqlQuery object. Use + QSqlQuery::finish(). + + * [181039] Added support for a connection option to instruct the driver to + connect as an ODBC 3 application; SQL_OV_ODBC3. This is needed in order to + make the QODBC driver work with some ODBC drivers. + + * [176233] Connection options are no longer case-sensitive (according to the + ODBC standard). + + * [178532] Fixed bug where binding bools would fail. + + * [176231] Support passing the username and password as part of a connection string + instead of using QSqlDatabase::setUserName() and QSqlDatabase::setPassword(). + + * [141822] Support the SQL_GUID type. + + * [187936] Improved support for the Linux Easysoft ODBC driver. + + * [165923] Improved error handling. + +- SQLite driver + * [174340] Bind QVariant::UInt as int64 instead of string. + +- PostgreSQL driver + * [152770] Support prepared queries natively for PostgreSQL 8.2. + + * [164233] Fixed bug where QSqlDatabase::primaryIndex() would fail if the + table name was used in multiple schemas. + + * [168934] Make a real error message available when failing to connect to a + database. + + * [150373] Added support for NumericalPrecisionPolicy, allowing the user to + instruct the driver not to return NUMERICs as strings. + +- DB2 driver + * [189727] Fixed bug where fetching the fields in a row multiple time would + fail unless the fields were fetched in order. + + +**************************************************************************** +* QTestLib * +**************************************************************************** +* The display is now enabled on Mac OS X just before a test in run and qtestlib will ensure + the application under test is the "front process" if it is a GUI application. + +**************************************************************************** +* QDBus * +**************************************************************************** + +- Library + * [195515] Fixed a bug where the Qt application would crash if it + tried to send some types of messages after the connection to the + bus was broken. + * [188728] Fixed a freeze caused by connecting to a slot that did + not exist + +- Viewer + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +MIPS Linux + * [188320] Build Qt/X11 with FPU support, breaking binary + compatibility; see "Important Behavior Changes" below. + +X11 +--- + * Improved GNOME platform detection. + * [193845] Improved support for KDE palette settings. + * [179200] Fixed an issue where Qt would print "QProcess: Destroyed + while process is still running." when using Cleanlooks. + * [155704] Fixed a bug where widgets with MSWindowsFixedSizeDialogHint + flag would be minimized when their parent QMainWindow was minimized. + The MSWindowsFixedSizeDialogHint is now ignored on X11. + * [153155] Make it possible to bypass g_thread_init() and have the + Unix event dispatcher be used in threads instead by setting the + QT_NO_THREADED_GLIB environment variable. + * [157807] Fix an inefficiency in the Glib dispatcher's + timerSourcePrepare() implementation. + * [158332] Fix a bug where text/uri-list drops from Qt 3 would + append a single, empty url to the uri-list. + * [166097] QWidget::show() no longer resets the WM_TRANSIENT_FOR + property if the Qt::WA_X11BybassTransientForHint attribute is + set. + * [166097] QWidget::show() no longer resets the _NET_WM_STATE + property. Qt now merges its own state with any previous state + set by the application programmer. + * [168285] Fixed QDrag to correctly reset the override cursor. + * [17566] Don't impose FD_SETSIZE limit when using the Glib event + dispatcher. + * [171513] Fixed a bug where an application would take up 100% CPU + after starting a QDrag. + * [184482] Fixed QApplication::setOverrideCursor() to not change + the cursor for the root window. + * [185048] Fixed a bug where calling QClipboard::set*() + immediately after QClipboard::clear() would result in the + clipboard staying cleared. + * [182840] Fixed a bug where QApplication::mouseButtons() would + sometimes report the wrong state. + * [173328] Fixed QEventLoop::exec(ExcludeUserInputEvents) to not + consume 100% when using the Glib event dispatcher. + * [179536] Make QEventLoop::X11ExcludeTimers work as expected with + the Glib event dispatcher. + * [182913] Qt will now always look for the _MOTIF_DRAG_WINDOW + property on screen 0 (instead of the default screen). + * [187752] Fixed a bug where calling show() and hide() on a window + before the event loop starts would prevent the window from ever + being shown. + * [189045] Reset the keyboard and mouse grabs to the current + grabber when the last popup is closed. + * [167707] Add support for all known _NET_WM_WINDOW_TYPE_* types + via QWidget::setAttribute(). The attributes follow the + Qt::WA_X11NetWmWindowType* naming scheme. + * [172623] Don't create a pipe in the Glib event dispatcher (as it + is not necessary). + * [192871] Fixed a regression found in the 4.4.0 snapshots that + broke QX11EmbedContainer. + * [192526] Similar to 170768 below, fixed the spin locking in the + QAtomic* implementation for 32-bit SPARC processors to yield + instead of busy waiting. + * [194566] Fixed a bug found in the 4.4.0 snapshots that would + always cause the cursor to change when QWidget::setCursor() was + called on a widget that was not under the mouse. + * [173746] Fixed a bug in QDialog that would cause the "What's + This?" popup menu to appear on the wrong X11 screen. + * [187965] Fixed a bug where moving a widget that is hidden could + cause the positioning to be incorrect. + * [160206] Fixed some bugs in QX11EmbedWidget and + QX11EmbedContainer to provide minimal support for multiple + containers and multiple embedded widgets in the same + application. + * [182898] Fixed a crash in Motif Drag-and-Drop support when the + _MOTIF_DRAG_WINDOW property is missing. + * [183477] Fixed a bug that would cause a window to disappear + after restoring it with QWidget::restoreGeometry(). + * [163507] Fixed a couple of memory errors reported by valgrind. + * [192654] Fixed drag-and-drop of more than one URL (using the + text/uri-list mime type) between applications. + * [198709] Fix QDesktopWidget to not report overlapping screens on + servers with Xrandr 1.2. + * [146336] On UNIX systems without CUPS support, the + $HOME/.printers is now checked for a default printer. + * [185864] Allow Qt to find the OpenSSL libraries dynamically even + if the libssl.so file is not present. + * [168283] Set WM_WINDOW_ROLE directly from QWidget's windowRole() property. + * [187660] Implemented rotation for tablets on non-Irix X11 platforms. + * [192818] Fixed drawing shapes with a textured brush that had an offset. + * [133291] Fixed slow line drawing when using dashing under X11. + * [183070] Make it possible to filter events for overlay widgets in OpenGL + under X11. + * [176485] Make drawing text through FreeType beyond the SHORT_MIN/MAX + coordinate range work. Note that this won't work for XLFD based fonts. + * [182264] Fixed a crash in QClipboard::setMimeData() when several + clipboards share the same QMimeData instance. + * [182264] Copying rich-text contents of a QTextEdit and pasting + them to an editor that accepts rich text didn't work. + +- QPrintDialog + * [128956] Fixed a bug which caused the print dialog to become hidden + while the overwrite dialog was shown. + * [192764] /etc/printcap with blank lines is now correctly parsed. + * Redesigned the print dialog and pagesetup dialog to be much nicer. + +- QPrinter + * [148125] Switched to printing through the CUPS API. This should fix the + problem where the wrong lp/lpr command was picked up, and therefore + printed through the wrong print system. If CUPS is enabled at compile + time, it will always be used if available. + * [161936] lp no longer outputs job ID to the console when printing. + * [180669] QPrinter no longer crashes if the CUPS library cannot be found. + +Windows +------- + * [185702] Fixed qatomic_windows.h to properly forward declare the + _Interlocked*() functions to avoid conflicts with other headers + that also use these functions. + * [183547] Replaced scalar delete with array delete in windows socket engine. + * [190066] Fixed setting spinbox and combobox bgcolor with stylesheets on Vista. + * [197055] Fixed a stylesheet background issue with TextEdit on Vista. + * Black regions are no longer exposed when resizing windows on Vista using Aero. + * [172757] Respect system font changes on Windows. + * [194803] Pass the keyboard modifiers in QTabletEvent on Windows. + * [194089] Avoid adding the current screen point when translating tablet events on Windows. + * [187712] Fixed QT_WA() macros to use correct windows version in static builds. + * [183975] Handle 'Win+M' key while showing modal dialogs. + * [187729] Fixed incorrect focus behavior when main-window is shown minimized. + * [187900] Increased area for scrolbar thumb dragging. + * [180416] Fixed incorrect command line parsing on windows. + * [169703] Fixed Drag & Drop returning Invalid data. + * [181816] Fixed drawing ClearType text into a QImage with the Format_ARGB32 format. + * [123455] Make QWidget::numColors() return something useful for widgets that's not + been shown yet. + +- QApplication + * [167897] Fixed a bug where QApplication would treat single quotes + as a quote to signify the end of an argument. + +- QFileDialog + * [173402] Fixed wrong sort order if cou reopen a file dialog. + * [178279] Be more smart for enabling or disabling the open button. + * [178897] Fixed QFileDialog minimym size while very long path are in the history. + * [181912] Not following folders that are symlinks. + * [187959] Change the button caption from "save" to "open" when selecting a folder + in a save dialog. + * [196062] HANDLEs are now freed when searching the paths. + * [198049] Selecting a file in the completer would display the full path rather then just the file name if it was in the current directory. + +- QDesktopServices + * [194046] Fixed support for percentage encoded URL strings with openUrl(). + * [172914] Fixed an issue where openUrl() would incorrectly return true + after failing to open on Windows. + +- QFileSystemWatcher + * [170021] Make it possible to monitor FAT32 directories. + +- QFont + * Use Harfbuzz instead of Uniscribe for complex text shaping enabling support of a broader + range of writing systems on all Windows versions. + +- QKeySequence + * [187917] Fixed incorrect standard shortcut for PreviousChild. + +- QListView + * [183299] More native appearance on list view selection backgrounds. + +- QLocale + * [139582] An unrecognized LANG environment variable will now make QLocale + fall back to the Windows locale, instead of the C locale. + +- QMenu + * [140954] Fixed an issue where pressing the Alt-key would not correctly + show and hide menu accelerators. + +- QMutex + * [179050] Fixed a bug that cause a warning on startup from QMutex + running an application build with MinGW on Windows 9x. + +- QPrintDialog + * [183448] Fixed a bug where the print-to-file setting would remain stuck + even after disabling it in the dialog. + +- QPrinter + * [185751] Fixed a crash in QPrinter if QPainter.begin() failed. + * [191316] Fixed a crash when using certain nonstandard printer drivers. + +- QScriptEngine + * [182241] Fixed a bug that caused qScriptValueFromQMetaObject() to generate + the wrong script constructor function with VC6. + +- QSyntaxHighlighter + * Added QSyntaxHighlighter::currentBlock(). + +- QSystemTrayIcon + * [189196] Fixed showMessage timeout interval being ignored on windows. + +- QTimer + * [179238] Make QTimer behavior consistent with UNIX by not + allowing them to fire recursively. + * [188820] Fixed a bug found in the 4.4.0 snapshots that caused + menu effects to "freeze." + +- QWizard + * [180397] Fixed crash resulting from AeroStyle being assumed even when some of the required + symbols were unresolved. + +- ActiveQt + * [198021] Optimized QAxHostWidget::paintEvent(), the painting code is required only when the + widget is being grabbed. + * [191314] Support browsing of ActiveQt controls in Microsoft Visual Studio. + * [190584] Support for large strings in code generated by dumpcpp. + * [190538] Fixed incomplete function declarations generated by dumpcpp. + * [90634] Support for 2D safe arrays. + * [158785] Support for ActiveX control initialization using stored data. + +Mac OS X +-------- + * [168290] Input Methods can now be used on windows of type Qt::Popup. + * [195099] Fixed a problem with posted an event to quit in one thread to + another thread would not quit the other threads loop. + * [193047] Extend support for all the function keys on a standard Apple keyboard. + * [193096] QtUiTools_debug.a is now included in the debuglibraries binary package. + * [141602] pixeltool is also included in the binary package. + * [188580] Respect the LSUIElements key in an application's Info.plist. + * [188267] Ensure that qAppName() checks CFBundleName before using the executable name. + * [183464] Fix "wrong clippboard content" issue. + * [189587] Prevent triggering menu shortcuts when showing native dialogs. + * [174769] Add separator above the "Preferences" menu item in the application menu. + * Some fixes to color space handling to ensure that the display color space is used when + drawing items to the screen (and printer). This works even if the display has a non-standard colorspace. + * Apply a fix so that programs using the sqlite plugin and built on Mac OS X 10.5 will run on older versions of Mac OS X. + +- QAction + * [196332] Make actions with ApplicationSpecificRole get merged in all cases. + +- QApplication + * [180466] Ensure that non Qt Windows get an activate. + * [171181] QApplication no longer send key events to disabled widgets. + +- QContextMenuEvent + * [161940] Implement support for QContextMenuEvent::modifiers() + +- QImage + * [182655] Switch off antialiasing when drawng to 1bpp images on Mac + +- QMainWindow + * [171931] Fix crash when calling addToolBar while the user is dragging toolbars. + * [191544] Fix unified toolbar size constraint issues. + +- QMime + Implement text/html for cutting and pasting. + +- QPixmap + * QPixmap no longer breaks CGImageRef's immutability. + +- QPushButton + * [183084] QPushButton will no longer change appearance between mini, small, and large + according to the size of it's contents. This behaviour can be switched on by using + WA_MacVariableSize. + * [172108] Unset the mnemonic if setText() is called with no &. + +- QPrinter + * [189182, 194085] Querying printer properties on Mac now works after QPainter::end(). + +- QSettings + * Fixed QSettings::sync() spurious error on Mac OS X 10.5. + * Improved the Mac .plist serialization so that it doesn't generate + needless one-element CFArrays. + +- QTextCodec + * Fixed "System" locale codec on little-endian Mac OS X (Intel). + +- QTextEdit + * [176378] Make selections be shown full-width. + * [182243] Fix a regression where text editing widgets would insert command-keys that weren't shortcuts. + +- QWidget + * [197087] Make masks work correctly for splashscreens and popups on Leopard. + * [167974] Fix offset issue when seMask() was used in combinatiojn with Qt::FramelessWindowHint. + * [192527] Fix a regression where Cmd+MouseButton on a window icon no longer sent a QIconDragEvent. + * [179073] WA_MacMiniSize and MA_MacSmallSize have an effect on the default fonts for a widget. + * [175199] Ensure sheets that later become normal windows have the correct opacity. + * [139002] Ensure macEvent() is called. + +- QCoreGraphicsPaintEngine + * Implement Porter-Duff operations. + +- QPageSetupDialog +- QPrintDialog + * Make both these dialogs sheets if they are given a parent. + +- Q3ComboBox + * Make up/down arrows work when the popup is closed. + + +Qt for Embedded Linux +--------------------- + + - Screen drivers + * LinuxFB: Improved support for BGR framebuffers + * LinuxFB: Added 12, 15, 18 and 24 bit pixel depth detection. + * AHI: New driver using the ATI Handheld Interface library. + * DirectFB: New driver using the DirectFB library. + * SVGAlib: Add support for 4 and 8 bit mode. + * SVGAlib: Fixed the background color for 16 bit mode. + * Transformed: Fix bug preventing driver to load as a plugin + * VNC: Added support for the client cursor pseudo encoding. + * Added QProxyScreen, a class for simplifying proxy based screen drivers. + Currently used by the VNC and Transformed screen driver. + * Added framework for letting the screen driver control the QPixmap + implementation. + * [194139] Fixed background initialization in a multiscreen environment. + * [195661] Fixed disappearing mouse cursor in a multiscreen environment. + + - Mouse drivers + * Made the Yopy, VR41xx, PC, LinuxTP, and Bus drivers available as plugins. + * [194413] Fixed missing newline when writing the calibration file. + * Configurable double-click jitter sensitivity through the + QWS_DBLCLICK_DISTANCE environment variable. + + - Keyboard drivers + * Made the SL5000, USB, VR41xx and Yopy drivers available as plugins. + + - Decoration drivers + * Made the Styled, Windows and Default decorations avaiable as plugins + + - Demo applications + * Added embeddedsvgviewer, styledemo & fluidlauncher applications to + demos/embedded to demonstrate Qt/Embedded on small screens (QVGA/VGA). + Fluidlauncher is used to launch the demos. + * Modified the existing pathstroke & deform demos to add a -small-screen + command line option to optimize layout for small screens (QVGA/VGA). + + - Windowing system + * Removed redundant blits to the screen. + * Fixed a bug in QWSWindowSurface preventing the Opaque property to be used. + * Fixed a bug making the window surface valid when the + windowEvent(QWSServer::Hide) signal is emitted. + * Fixed a crash when no mouse driver is installed. + * Fixed bug where QWSWindow::name() would be incorrect unless + setWindowTitle() was called. + * Allow normal windows to be raised above full screen windows. + * [179884] Fixed bug when calling showMaximized() on a FramelessWindowHint + window. + * Fixed bug where children of a StaysOnTop window would be shown below the + parent. + * Fixed painting bug when configuring with -opengl and resizing/showing + child widget of visible window. + + - QDirectPainter + * [100114] Implemented lock() and unlock(). + * default parameter bug fixed for startPainting(); see "Important Behavior Changes" below. + + - QScreen + * Added classId() to enable safe casting to specific subclasses. + + - QPixmap + * Fixed grabWindow() on 12, 15, 18 and 24 bit screens. + * Fixed grabWindow() on BGR framebuffers. + * Fixed grabWindow() on rotated screens. + + - QVFb + * Fixed 12-bit support. + * Added 15-bit support. + * Added support for 32-bit ARGB + * [127623] Tab key presses are now passed to the embedded application. + + - General fixes + * [181906] Fixed case insensitive key comparisions in the keyboard, mouse + and screen plugin factory. + * [170768] For ARM processors, fixed the spin lock protecting the + * QAtomic* implementations to yield instead busy waiting. + * Reduced number of double precision floating point operations as an + optimization for platforms without a floating point processor. + * Reduced memory usage in the backing store. + * [177057] Fixed use of the modifier window title tag. + +**************************************************************************** +* Compiler Specific Changes * +**************************************************************************** + +- ICC + * [169196] Use -fpic instead of deprecated -KPIC option. + +**************************************************************************** +* Tools * +**************************************************************************** + +- Build System + * Make it possible to use QT+=dbus and QT+=testlib to enable + compiling against the QtDBus and QtTestLib libraries. + +- Assistant + * Renamed the existing Assistant to Assistant_adp and adjusted the QtAssistantClient library accordingly. + + * Added the new Assistant based on the Qt Help module. + + * Introduced qhelpconverter to convert adp or dcf files to the new file formats. + + * Added the qhelpgenerator tool to create qch documentation files. + + * Introduced qcollectiongenerator to create help collections. + +- Designer + * [191493] Fixed issues with small widgets in grid layouts on Mac + + * [177564] Fixed autoFillBackground being reverted when setting a stylesheet on a QLabel. + + * [171900] Made Qt3Support functions visually different (signals and slots, widget icons) + + * [182037] Fixed a bug which made it possible to resize QFrame-based containers to arbitrarily small sizes + + * [176678] Made "Current Widget Help" work + + * [193885] Fixed a crash caused by a widget box widget not having a geometry nor a valid sizeHint. + + * [122185] Added support for QMdiArea, QWorkspace + + * [173873] Made pasted widgets appear at mouse position + + * [191789] Added QtDesigner.pc for pkg-config + + * [157152] Added a context menu to the buddy editor + + * [189739] Fixed a crash caused by internal layouts of custom widget plugins + + * [133687] Fixed QDesignerContainerExtension; provided way to specify a method to add pages in domXML + + * [161643] Changed rich text editor to detect plain text and store it as such + + * [183110] Added a dialog for setting the tab order by sorting the list of widgets + + * [188548] Added support for static custom widget plugins to QUiLoader + + * [157164] Made QStackedWidget context menu available on browse buttons + + * [157217] Fixed default size of spacers + + * [182448] Fixed a bug that caused additional spacing between toolbar's last action and consecutive toolbar + + * [84089] Added containers and custom containers to the "New Form" dialog + + * [165443] Grey out the geometry property in Designer when it has no functionality + + * [119506] Made comments available for shortcut properties + + * [161480] Added detailed view to action editor + + * [175146] Improved the signal/slot editor; do not reset the column sizes when switching forms + + * [176121] Added "Save As" to code preview + + * [176122] Added code preview + + * [79138] Added support for QLayout::sizeConstraint + + * [156718] Made it possible to copy actions between forms + + * [168648] Improved object inspector selection + + * [166406] Fixed a selection bug affecting custom subclasses of QTabBar + + * [151323] Made it possible to use subclasses of QTabWidget, QToolBox or QStackedWidget as custom widgets + + * [168564] Fixed a bug in table widget editor + + * [132874] Added support for user-defined signals and slots of promoted widgets and main container + + * [202256] Made header section size of the action editor persist when switching forms + + * [201505] Extended the QDesignerIntegration::objectNameChanged() signal to carry the previous object name + + * [196304] Exclude C++ and java keywords as names for objects + + * [199838] Breaking layout didn't update properly minimumSize of a form + + * [118874] Added spacing property for the QToolBox + + * [120274] Q3Wizard - "currentPageText" property added, "caption" properly converted to "windowTitle" + + * [181567] Added support for loading and saving items for Q3ListBox and Q3ListView + + * [187593] Fixed issue with dynamic properties + + * [107935] Actions provided by task menu extension are appended to the list of actions of superclass + + * [188823] Compress margin/spacing properties in case all values are the same, for legacy reasons + + * [160635] Make Z-order working properly + + * [171900] Signals and slots from compat layer marked with red italic + + * [177398] Added notr="true" attribite to styleSheet property - in this way styleSheet string will not appear in linguist + + * [180367] Greyed out X and Y properties of geometry in case of main container + + * [118393] Collapsing property groups in property editor allowed + + * [190703] Fixed in-place editor behaviour + + * [154745] Guidelines provided for grid layout + + * [173516] New resource system integrated + + * [142477] Improved rich text editor and added HTML editing + + * Gradient editor added to stylesheet editor + + * Resetting font and palette subproperties handled properly + + * uint, qlonglong, qulonglong and QByteArray properties supported + + * Property Browser Solution integrated + + * Property Editor - added toolbar with object and class name, and some actions + + * Property Editor - remember expansion state + + * Property Editor - style sheet editor added + + * Property Editor - sorting and coloring added + + * Added basic fixup for URL properties to prevent data loss when the + user enters an intermediate URL (such as www.google.com). + +- Linguist + * [39078] Added shortcut for adding an entry to a phrase book. + + * [116913] Added tooltips to messages view and phrases view to be able to see the full text as well as to see a preview of HTML rendering. + + * [142628] Fix a "What's this?" message in Linguist. + + * [170053], [183645] Split the context / items tree up into a contexts window and a messages window. + + * [171829] Added support for syntax highlighting in source/translation strings. + + * [179415] When previewing a dialog via Qt Linguist that has the window + modality set to ApplicationModal do not block linguist. + + * [181411] Make xliff utf-8 export use non-ascii characters, too. + + * [183713] Identify the line number in the code for strings. + + * [184586] Added ability to show multiple auxiliary (read-only) translations. + + * [194325] Fixed an error with loading XLIFF files containing consecutive internal whitespace. + + * Added a source code window. It shows the source file when available and highlights the line on which the source text was found. + + * Added a window for showing warnings. + + * Allow a translation to be marked as done when there are still warnings. + + * Fixed undo/redo functionality. + + * Show obsolete entries in grey. + + * Ask whether modified phrase books should be saved on quit. + + * Re-open phrasebooks at startup. + +- lupdate + * [80235] Introduce QT_TRANSLATE_NOOP3 as a QT_TRANSLATE_NOOP3 variant + taking a comments parameter. + + * [161106] When specifying ::QObject::tr() lupdate will no more take + the previous word as namespace. + + * [165460] Make lupdate work with relative paths. + + * [165679] Prevent lupdate from crashing on special string patterns. + + * [179506] Handle the case of a class in a namespace inheriting from + another class in a different namespace correctly. + + * [180318] Make lupdate work properly on deeply nested directories. + + * Added an option (-pluralonly) that will only extract strings which + require a plural form, to ease adding plural translations for the same + language as the source messages. + + * Do not require administrative privileges to run lupdate on Windows Vista. + +- lrelease + * [187375] Allow lrelease to be run from a directory outside the .pro file. + + * Added an option (-removeidentical) that omits translated strings that + are exactly the same as the source string, to reduce file size. + +- rcc + * [105595] Add QT_NO_CAST_TO_ASCII define to tools by default. + + * [188891] Fix crash when QResource is loaded from stream that was + rcc'd from an empty qrc file. + * [164840] Allow use of chinese characters in commandline arguments to rcc. + +- moc + * Treat -DFOO as -DFOO=1 for macros defined on the commandline. + +- uic + * [189327] Added support for QT_NO_ACCESSIBILITY + + * [170919] Fixed a bug that caused nonsensical includes to appear in + conjunction with Qt support classes + + * [171228] Fixed a bug that caused nonsensical includes to appear in + conjunction with Qt support classes + + * [105595] Add QT_NO_CAST_TO_ASCII define to tools by default. + + * [186989, 158836] Fixed invalid code generation in some cases when + cross-compiling. + +- uic3 + * [179540] Added support for QPushButton's "on"-property + + * [170919] Fixed a bug regarding includes for classes in namespaces + + * [299175] Transform Qt3's QSlider property tickmarks to Qt4's + tickPosition + +- qmake + * [187938] Fix a bug that would cause Xcode projects generated by qmake to fail to link in Xcode 3. + * The pkgconfig files generated for the frameworks on Mac OS X are now correct. + * Makefiles for Mac OS X now always set QMAKE_MACOSX_DEPLOYMENT_TARGET=10.3 + unless it is overridden in the .pro file, this will solves linking errors + on Leopard. + * [189409] The default Xcode generator format is now Xcode 2.2. + * Added an unsupported mkspec for LLVM on Mac OS X. + * [198562, 201942] Added support for overriding bundle extentions for Mac + * [152932] Specify the /MANIFEST option when embedding manifests into the application/library. + * Avoid adding silencing echos to the compiler when generating XCode projects. + * [191267] Only include the -L$$QT_PLUGINPATH option once in a project. + * Avoid memmoving data from outside a memory block. + * Generate proper MSVC 2008 VCPROJ and SLN files. + * [168308] Avoid double dir separators in subdir Makefiles. + * [168075] Make distcc work on Mac. + +- configure + + * [180315] Implement -qtlibinfix configure option to allow renaming of Qt + libraries. + * [180315] Implement -qtnamespace configure option to allow compiling all + Qt symbols in a user-defined namespace. + + +**************************************************************************** +* Plugins * +**************************************************************************** + +- QTiffPlugin + * [187169] Return an error if loading fails instead of empty image. + +- QSvgIconEngine + The qsvg icon engine plugin has been renamed to qsvgicon to disambiguate + it from the qsvg image format plugin. + * Now allows multiple SVG files and/or other images to be added to + QIcon for different modes. + * Streaming of SVG icons is fixed. + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + +- Event filters + + The behavior of event filters has changed starting with + 4.4. Previously, thread affinity was ignored when adding, + removing, and activating an object's event filters. Now, event + filters must have the same thread affinity as the object they + are filtering. Qt will warn when it detects a filter that is + in a different thread from the object being filtered. + +- QFont + Starting with Qt 4.4, the '-' characters in the raw font names + are no longer substituted with a ' ' (space character). This + may impact your application if you use fonts that have '-' + characters in their raw font names. + +- QReadWriteLock + Starting with Qt 4.4, recursive lock support is disabled by + default in QReadWriteLock. Code that relies on recursive write + locking will need to be changed to construct the + QReadWriteLock with recursive lock support enabled. Previously, + recursive write-lock support (introduced in 4.3) was enabled by + default, but QReadWriteLock did not properly support recursive + read-lock support. QReadWriteLock now supports both and needs to + be constructed explicitly with recurive lock support enabled + (QMutex works in the same way). + +- QPainterPath + We have changed QPainterPath::angleAtPercent() to use the same + angle definition as in the rest of Qt. This means that the angle + returned will be from 0 to but not including 360, specifying + the degrees from the 3 o'clock position in the counter-clockwise + direction. + +- QDirectPainter [Qt for Embedded Linux-specific class] + startPainting() in Qt 4.3 had a default parameter lock=false, + the value of which was not used. The function would lock for + client processes, but not for the server process. From Qt 4.4, + the default value is changed to true, and startPainting() will + lock if lock == true, and not lock if lock == false. This means + that client processes running code that has not been recompiled + with Qt 4.4 may show flicker and/or painting problems. To get + exactly the same behaviour as for Qt 4.3, change startPainting() + to startPainting(QApplication::type() == QApplication::GuiClient). + +- QPrinter + QPrinter::pageRect() did not return consistent values on + Linux/Mac/Windows when QPrinter::fullPage() was set to true. On + Mac and Windows pageRect() was not influenced by the fullPage() + setting. This has now been changed so that pageRect() returns + the same as paperRect() when fullPage() is true on all + platforms. + +- QPixmap + Using QPixmap outside of the GUI thread is dangerous and error + prone. Because of this, starting with 4.4, any QPixmap created + outside of the GUI thread will always be a null pixmap. + +- QDateTime + When using QDateTime::fromString() to parse dates, QDateTime + no longer tries to use English month names because that would + cause some dates to become unparseable. If you need to parse + date times in the English locale, use QLocale::toDateTime (in + specific, the QLocale::c() locale). + +- Qt/Mac + Starting a Qt application no longer makes it the front process. This is + more in-line with other applications on Mac OS X. What this means is + that you can start a Qt application, do something else and not have the + Qt application steal your focus. If you desire for the Qt application + to become the front process, you can call QWidget::raise() + programmatically or launch the application with open(1) or using + QDesktopServices. This should not have any affect if launched from + double-clicking in Finder or run in a debugger. + +- Qt/X11 on MIPS Linux + qreal is changed from float to double, breaking binary compatibility. + This change fixes a bug introduced in Qt 4.3.0 when qreal was + changed from double to float for embedded MIPS processors. diff --git a/dist/changes-4.4.1 b/dist/changes-4.4.1 new file mode 100644 index 0000000000..4995a86836 --- /dev/null +++ b/dist/changes-4.4.1 @@ -0,0 +1,619 @@ +Qt 4.4.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.4.0. + +The Qt version 4.4 series is binary compatible with the 4.3.x series. +The Qt for Embedded Linux version 4.4 series is binary compatible with +the Qtopia Core 4.3.x series. Applications compiled for 4.0, 4.1, 4.2, +and 4.3 will continue to run with 4.4. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Task Tracker: + + http://www.trolltech.com/developer/task-tracker + +Each of these identifiers can be entered in the task tracker to obtain +more information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +- Documentation and Examples + * [202630] Fixed a problem in the network/http example: it couldn't + download anything if the URL had a space. + +Third party components +---------------------- + +- Updated Qt's libpng version to 1.2.29. + + +**************************************************************************** +* Library * +**************************************************************************** +- QAbstractItemView + * [199822] Fixed issue with broken extended selections. + +- QButtonGroup + * [209485] Prevented a crash caused by removing a button from its button + group while inside a slot triggered by the button's clicked() signal. + +- QDirModel + * [213519] Fix crashes when drag'n'dropping files into a subdirectory + +- QFtp + * [189374] Fixed a bug that would cause QFtp to fail to parse + dates if the application was being run on some locales, like fr_FR. + +- QGraphicsProxyWidget + * [208773] Input methods now work properly for embedded widgets. + * [207644] Fixed a bug where the painter was restored incorrectly. + +- QGraphicsScene + * [209125] QGraphicsScene::style() and QGraphicsWidget::style() fixes. + * [202774] [207076] Focus and activation fixes for embedded widgets. + * [212950] The scene no longer removes focus from the focus item if a + mouse press propagates to the scene (and then to the view). This was + a behavior regression to QWidget. + +- QString + * [205093] Printing QString after using replace()followed by truncate(-1) crashes + * [209078] Problem in QString::resize + +- QGraphicsView + * [209154] Mouse replay regressions since 4.3 have been fixed. + +- QObject + * Fixed a regression from 4.3 to 4.4 in QObject::receivers() where + the function would return >0 even after disconnection all + signals. + +- QScriptEngine + * [208489] Made the instanceof operator work when used with + QMetaObject wrappers created by newQMetaObject(). + * [206188] Fixed a bug that caused scripts to hang when using + "continue;" inside a switch-case block. + * [205473] Fixed a bug that caused slots to be called even when + argument conversion failed. + +- QSslSocket + * [212177] QSslSocket::peerVerifyError() supports all errors now. + * [212022] Fixed a bug that would cause no default CA certificates + to be present in static Qt builds. + * [212412] Fixed a bug that could cause a deadlock in + waitForReadyRead() in encrypted mode. + +- QtWebKit + * Ensured that relative URLs are converted to absolute URLs. + * Ensured that the cursor is changed into a resize cursor when hovering + over and dragging the resizeable frame borders. + * [206999] Fixed a problem which would make an empty URL being passed to + QWebPluginFactory::create() + * [208215] Fixed a bug that prevents linkClicked signal to be emitted + when opening a local HTML file. + * [208342] Ensured that the cursor is updated after a web frame or page + has finished loading. + * [210920] Fixed showing/hiding of the Web Inspector. + * [207050] Fixed input of characters into form elements using AltGr on Windows. + * Fixed a crash related to XML HTTP requests. + * Fixed QWebPage::acceptNavigationRequest not being called when opening new Windows. + * Fixed emission of linkClicked() signal when clicking on target=_blank links. + * Fixed painting artifacts when scrolling embedded widgets. + * Fixed logic errors in QWebHitTestResult::isNull() and QWebHistory::forward(). + * Fixed encoding of [ and ] in the host part of URLs + * Fixed a crash related to QWebPage::unsupportedContent. + * Fixed a memory leak on application shutdown. + * Fixed painting errors when scrolling embedded widgets. + * Fixed support for custom cursors set on a QWebView. + * Fixed various build problems on Mac OS X, Windows and Solaris + * Fixed crash with CSS text transformations. + * Fixed infinite recursion when converting DOM objects with cyclic references to QVariants. + +- QVariant + * [201918] QVariant convert to QDateTime warnings + +- QWidget + * Fixed a regression when setting masks for splashscreens on Mac OS X Tiger. + * [210544] Fixed a regression where Qt::WA_PaintOnScreen widgets were painted on + top of overlapping siblings. + * [211796] Fixed a crash occurring when calling render() from a resize event. + * [210960] Fixed a regression where an invisible top-level widget was resized when calling render(). + * [210822] Fixed a bug causing QGLWidgets to not behave correctly when setting window title. + * [208413] Fixed issues when creating a child widget of Qt::WA_PaintOnScreen widgets. + +- QWidgetAction + * [207433] Fix enabling and disabling toolbar containings actions widget. + +- QWorkspace + * [206368] Fixed a crash occurring when deleting a QWorkspaceChild. + +- QPainter + * [186327] Fixed inconsistent outline and fill drawing for drawPolygon in + raster paint engine, where the fill would be visible outside the outlines + or there would be missing pixels between outline and fill. + * [208530] Fixed some drawing issues with projective transform related to + near-plane clipping. + * [209095] Fixed infinite loop that could occur on certain architectures on + rare occasions when drawing outlines. + * [208090] Fixed issue with outline drawing where subsequent points on a + path or polygon are equal according to qFuzzyCompare, but treated as + different, causing stroke artifacts. + * [206785] Fixed potential pixmap drawing artifacts when drawing stretched + pixmaps at non-integer coordinates. + * Fixed potential rect/line drawing issue when drawing on non-integer + offsets in raster paint engine. + * [209462] Fixed regression when redirecting widgets to another paint device. + +- QPainterPath + * [209056] Fixes potential assert in the boolean operations (difference, + intersect, and union). + +- QRasterPaintEngine + * [208644] Fixed a crash in qt_intersect_spans. + +- QApplication + * [213116] Fixd a regression on Mac OS X where you could not access the + menu bar after minimizing a window with no click through. + +- QColor + * [193671] Fixed a problem with QColor::setNamedColor() not returning the correct + alpha value for the "transparent" color. + +- QMacStyle + * [212037] Adjusted the size of text in an editable combo box on Mac OS X Panther. + * [216905] Fix a regression when drawing table headers on Mac OS X Panther. + +- QMainWindow + * [210216] Calling setCentralWidget, setMenuBar, setMenuWidget or setStatusBar + several times could cause a crash. + * [206870] Fixed a bug causing dual screen layouts to not restore correctly. + +- QMdiArea + * [202657] Fixed focus issue when navigating between window with focus on the DockWidget + * [211302] Fixed a bug where the activation order was not respected when tiling and cascading. + +- QOpengGLPaintEngine + * [208419] Fixed wrong clipping of widgets. + +- QDockWidget + * [179989] Maximum size is now taken into account by the dock widget. + +- QCommonStyle + * [204016] Fixed west tab positions. + +- QCryptographicHash + * [206712] Fixed a bug that would make QCryptographicHash return + invalid results if you called result() before the last addData() + call. + +- QTcpSocket + * [208948] Fixed a bug that would cause QTcpSocket and QSslSocket + not to flush all of their buffers if the socket disconnects and + reconnects. + * [182669/192445] Fixed a bug that would cause QTcpSocket to stop + emitting readyRead() if a previous waitForReadyRead() timed out. + +- QDataStream + * [211301] Fixed an issue where Qt 2 and Qt 3 applications might + crash or hang when run under KDE 4. + +- QDateTime + * [137698] Fixed a bug that caused QDateTime to perform weird + 1-hour jumps when dealing with dates in Daylight Savings Time. + +- QSslCertificate + * [185067/186087] Fixed a bug that would cause QSslCertificate + parsing of certificate timestamps to be off by a few hours + (timezone issue). + +- QFile + * [192752] Fixed a bug that would make QFile leak file descriptors + if QFile::handle() was called. + +- QFileDialog + * [208383] Crash when a proxy model is set and multiple files are selected. + * [165503] DirectoryEntered not emitted when go-to-parent button is clicked. + +- QFileInfo + * [212291] Fixed a bug that would cause QFileInfo to return empty + group or owner names for files under MacOS X and maybe some other + Unix platforms. + +- QFuture + * [214874] Fixed possible deadlock when using nested calls to QtConcurrent::run(). + +- QGLContext + * [210427] In 4.4.0 we removed the automatic mipmap generation for + textures bound with QGLContext::bindTexture(). This change has been + reverted for compatibility reasons. + * [214078] Fixed a problem that caused OpenGL textures to always be + downscaled to 64x64 in size on Intel graphics hardware. This caused, + among other things, the Qt Demo to look utterly broken on these systems. + +- QOpenGLPaintEngine + * [191777] Set default values for GL_PACK_*/GL_UNPACK_* values with + glPixelStore() when QPainter::begin() is called. + * [201167] Don't assume the GL error state is cleared when QPainter::begin() + is called. Clear the state explicitly before we make internal state checks. + * [204578] Fixed a problem where the GL error state was set on + some system because an extension enum was used unprotected. + +- QHostInfo + * [213187] Made QHostInfo not issue IPv6 name lookups if the + machine does not have any IPv6 addresses configured (Unix change + only). + +- QHttp + * [213220] Fixed a bug that could make QHttp open unencrypted + connections if HTTPS mode was requested but SSL support was not + present in Qt. + * [193738] Fixed a bug that would make QHttp continue reading the + HTTP server's response and emit a readyRead() signal even if + abort() had already been called. + +- QNetworkAccessManager + * When a http 302 location url is not an encoded url try QUrl's human readable parsing for more compatibility with websites. + +- QPainter + * [211403] Fixed handling of negative target rect offsets and negative + source offsets in QPainter::drawPixmap()/drawImage(). + +- QPixmap + * [202903] Fix an infinite recursion in QPixmap::fromImage() that occured + when converting mono images. + * [206174] Reverse the order of the tests done in QPixmap::hasAlpha() + in order to speed it up. + * [210275] Fixed a crash in QPixmap::resize(). + +- QSharedMemory + * Compile fix on QNX when QT_NO_SHAREDMEMORY was defined + +- QStyleSheetStyle + * [179629] Fixed SpinBox with gradient background. + * [188305] Respect the max-with property for more elements (such as QTabBar::tab) + * [189951] Fixed the align: property for QTabBar + * [194149] Fixed the background:transparent property + * [198926] Fixed the background:none property on some component of the scrollbar + * [206238] Fixed inconsistency with rules without selector applied to widget. They + now always applies to all childs + * [207420] Fixed the ~= attribute selector. + * [207819] Fixed few performences issues. + * [208001] Fixed crash crash with QMenu[title=...] in the stylesheet. + +- QHeaderView + * [207869] Fixed possible division by zero. + +- QTableView + * [207270] Painting errors in reverse mode and when there was spans. + * [210608] Fixed regression in the handling of spanning cells. + +- QTableWidget + * [213118] Fixed a bug where moving the first or the last row triggered an assert. + +- QTreeView + * [213737] Fixed regression where ctrl+a would select all items regardless of the selection mode. + * [202355] Fixed issue where items inserted in a view with all header sections hidden did not show + themselves properly later. + * [211296] When a column is hidden QItemSelectionModel::selectedRows and QItemSelectionModel::selectedColumns returns the wrong values. + +- QTreeWidget + * [305084] Fixed duplicate items that may appears when programaticaly + expanding items. + * [209590] itemSelectionChanged was being emited before item selection was updated + +- Q3DragObject + * [203288] Fixed regression against Qt 3 so that the drag() function now correctly uses + MoveAction (and not CopyAction) as the default action. + +- Q3TextBrowser + * [197836] Fix assert when zooming out. + +- QTextDocument + * [204965] Fix html export to use indent as textIndent + +- QTextBrowser + * [192803] Fix loading of files from resources with a resource prefix. + +- QTextEdit + * [211617] Fixed crash when moving the first paragraph by drag and Drop + +- QTextTable + * [194229] Fix removing of a row with merged cells causing a crash. + * [194253] Fix calling removeColumn on a Column with selectedCell causing an assert. + * Fix assert on selecting the whole table after an insert/remove of column. + * [175676] Fix calling of resize() making updates in layouting fail. + +- QSpinBox + * [213137] Fixed thousand-delimiters to not show for value = INT_MIN. + +- QScrollArea + * [210567] Fixed issues when scrolling a native widget. + +- QScrollBar + * [209492] Fixed a bug causing the scroll bar actions to be invoked twice. + +- QToolbBarLayout + * [207946] Prevented a crash caused by assuming that the parent widget always exists. + +- QThreadPool + * Fixed issues with thread termination during dll unloading on windows. QThreadPool:: + waitForDone() now completely stops all threads, on all platforms. In addition, the + QCoreApplication destructor now calls waitForDone() to make sure all threads are + stopped before the Qt dlls are unloaded. + +- QNetworkReply + * [207283] Fixed support for HTTP 101 responses. + * Fixed parsing of cookies with special timezone specifiers. + +- QWebHistory + * Fixed a bug where calling forward() would go backwards and not forwards. + +- QFontMetrics + * [212485] Fixed boundingRect() returning the proper size when there is a tab. + +- QItemDelegate + * [206762] Fixed painting when using a QBrush() for the text. + +- QtXmlPatterns + * [207584] When using the same QXmlQuery for a new query then evaluateTo() + can return false even if the query is valid. + * [214180] Fixed fn:replace fails when inside function. + * Fixed crash when unary operator has empty sequence as operand. + * Fixed that axis preceding or descendant-or-self when combined with + function last() on a custom node model crashes. + * Fixed that xml:id is not whitespace normalized. + * Fixed that QXmlFormatter produces no output on single top-level text nodes. + * Fixed infinite loop triggered by fn:matches(). + * Fixed crash when compiling one of the FunctX queries. + +- VideoPlayer + * [210170] Fixed an issue that prevented VideoPlayer::play to start when + called with an argument. + +- Accessibility + * [199241] Fix an issue where the screen reader would read the content of + a password line edit. The screen reader will now only read it if its Normal. + +- QLocalSocket + * [210886] Fixed a bug that would cause QLocalSocket to overrun + its buffers on very long socket names. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + * [208354] Fixed a crash in Qt's XIM implementation when exiting + applications after using the skim input method. + * [207800] Fixed a regression from 4.3 to 4.4 where putting a + QX11EmbedContainer into a QWidgetStack would case the container + stay visible permanently. + * [207423] In QDesktopWidget, workaround a change in behavior in + newer X.Org X servers where Xinerama would always be used even + when using a multi-screen setup. + * [206139] Fixed a bug where Qt could incorrectly recurse into the + Xlib error handler (causing Xlib to assert). + * [207057] Fixed a regression from 4.3 to 4.4 where + QX11EmbedContainer would sometimes destroy the embedded client's + window. + * [209057] Fixed a Q3Process which triggered a "Do not delete + object" warning. + * QPrintDialog crashed on unix in some cases. + * [214103] Fixed a regression with string to double conversion + becoming locale-aware in QTextStream. + * [210922] Fix crash in input methods when toggling the InputMethodEnabled + attribute. + * [210831] Fixed a problem where preview pages in the QPrintPreviewDialog + would not appear or be drawn correctly on X servers without + Xrender support. + * [206165],[213457] Fixed bugs which show the wrong cursor on some widget. + * Fixed bug regarding the usage of encoded URLs in Phonon + + +Windows +------- + + * [207888] Fixed a regression from 4.3 which caused crashes in + Assistant and Designer when an accessibility client is running + (this includes applications that query for accessibility + features, like Notepad++). + * Several fixes related to crashes and hangs when the user has an + accessibility client running in the background. + * [208782] Fixed a problem with non-cosmetic lines with widths < 2 + not being printed correctly with certain printer drivers. + * [208859] Fixed a problem with strokes not being printed correctly. Both + the stroke offsets and thinkness of the stroke were sometimes printed + incorrectly. + * [206473] Entering UNC paths is slow in the Qt file dialog. + * [309241] Trying to stream mp3 content with phonon would cause a crash. + * [210115] Fixed a problem causing "mailto" links not to work when the + mail application path contains unexpanded environment variables. + * [203012] Fixed a problem where "WriteOnly named pipes" failed to + open using QFile. + * [205685] Fixed the handling of TranslateAccelerator for windows key messages. + * Add support for (not) embedding manifests in plugins, on Windows. + * [211893] Fixed a crash related to using QtDotNetStyle. + + +Mac OS X +-------- + * Fix a regression where inserting widgets into native menus would cause + the program to crash. + * [209785] Fixed a regression from 4.3 to 4.4 in DeferredDelete + event handling. + * The "debuglibraries" binary package now includes dSYM bundles, which + makes it possible to debug with them. + * [207371] The CoreGraphics paint engine ignored the transform set + on a QBrush with QBrush::setTransform(). + * Fixed insertation of 'space' char in QLineEdit when EISU key is being held down + * Fixed fullscreen widget not regaining full focus after a dialog has been shown + * Fixed bug regarding the usage of encoded URLs in Phonon + * [212719] Fixed a bug that could cause text drawn into a QImage to be clipped + incorrectly. + * [216563] Fixed a case where failing to get the display's colorspace + would result in many widget being painted all black. + * [216544, 213316] Fixed several accessibility-related crashes. + * [210401] Fixed memory leak in QWidget::setWindowIcon(). + * [211195] Fixed problem that caused crashes with the Mac binary package + when entering long licensee names during the installation. + +Qt for Embedded Linux +--------------------- + +- QWSEmbedWidget + * Fixed propagation of the Qt::WindowStaysOnTopHint window property. + +- QDirectPainter + * [209068] Fixed region coordinates for QDirectPainter when used on a + rotated screen. + +- DirectFB screen driver + * Fixed window placements of windows with initial top-left coordinate (0,0). + * Improved deallocation of resources when an application exits unexpectedly. + * Fixed bug in QPixmap::rotate(). + * Fixed QPixmap::fromImage() with an image of format QImage::Format_Indexed8 + when compiling with QT_NO_DIRECTFB_PALETTE. + * Fixed small memory leak in QPainter::drawImage() + +- LinuxFB screen driver + * Added a workaround screen driver when the kernel fails to report the + length of the color components. + * Improved performance of the non-accelerated screen cursor. + * Disable the console cursor in graphics mode. + +- Tslib mouse driver + * [200995] Fixed crash when initialization fails. + * [207117] Improved filtering during calibration. + +- Ahi screen driver + * Fixed link issue. + * Fixed QScreen::setMode(). + * Improved support for different screen modes. + +Qt for Windows CE +----------------- + + * Support for Visual Studio 2008 added + * Improved QRegion to perform faster + +**************************************************************************** +* Compiler Specific Changes * +**************************************************************************** + +- [212852] Fixed GCC 4.3 compiler warnings. + + +**************************************************************************** +* Tools * +**************************************************************************** + +- Build System + * [209866, 213084] Fix compilation errors in QtWebKit when using + GCC 3.4 with precompiled headers. Precompiled header support is + documented as experimental in the GCC 3.4 documentation, and as + such, precompiled header support is disabled by default with + this compiler. + * [212330] Correct Makefile generation for src/corelib, which + would sometimes include multiple qatomic.o targets. + * [210016] Fix a build failure on 64-bit Linux when using the + linux-*-32 mkspecs. + * [206966] Fixed compilation errors on Linux when building for the + MIPS architecture. + * [212132] Workaround compiler crash bug for Linux on + SPARC64. This is a generalization of a similar change done for + Solaris in the 4.3 series. + * [211326, 211703] Fixed compilation errors when using the Intel + C++ Compiler for Linux on IA-64 (Itanium) hardware. + * [171222] Ignore duplicate -L<path> options + +- Assistant + * [212875] Don't sort the entries in the contents view according to the + help files names. + * [212444] Use the default help collection when registering or unregistering + help files without having a collection file specified. + * [210704] Make sure the sql-plugin is correctly used when building + Qt statically. + * [208834] When highlighting a find result, ensure that the active + highlighting color is used. + * Introduced the -assistant-webkit configure flag to make use of WebKit as + html renderer in Qt Assistant. + + +- Designer + + * [213481] Fixed crash that occurs when encountering an invalid .ui file. + * [211422] Fixed a crash resulting from a conflict between the newly added + support for QScrollArea and custom widgets derived from QScrollArea. + * [209995] Fixed a bug in the property editor that caused it not to + select values in spin boxes on editing. + * [205448] Fixed a bug related to drag and drop and Windows accessibility. + * [205899] Removed the windowModality property for non-form children to + prevent it from locking up the form preview. + * [212077] Fixed retranslateUi call in case of combo box items + * [210866] Dynamic properties of type QByteArray are not converted anymore to type QString when reloading the form + * [207187] Designer's property editor has better colors in case of inverted color scheme + * [202257] The geometry of the resource dialog is saved in settings + * [211677] Remove a crash in case of reloading resources + +- Linguist + +- lupdate + * [209122] Fixed same-text heuristic missing existing plurals + * [212465] Standardize on the default context being empty, not "@default" + +- lrelease + + +- rcc + + +- moc + + * [189996] Fixed a bug that caused inline slots with throw() + declarations to be parsed incorrectly. + * [192552] Fixed a bug that caused "< ::" to be parsed incorrectly + (e.g. "QList< ::Foo>"). + * [199427] Fixed the code generator so that it generates normal + spaces everywhere, no tabs. + * [204730] Fixed a skipt token after Q_PRIVATE_SLOT + +- uic + + * [205439] Added a warning that is printed when encountering + non-obvious Qt3 dependencies (qPixmapFromMimeSource). + +- uic3 + + * [205834] Process non-ASCII filenames correctly. + +- qmake + + +- configure + + * Fixed auto-detection of the XKB library on old Unix systems + * Fixed auto-detection of getaddrinfo on old Unix systems + +**************************************************************************** +* Plugins * +**************************************************************************** + + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + +Unix +---- + * [203063] Changed the behaviour of qFatal and Q_ASSERT to always + produce a SIGABRT signal in all build modes of Qt. (Previous + versions called the exit function if Qt was built in release mode) diff --git a/dist/changes-4.4.2 b/dist/changes-4.4.2 new file mode 100644 index 0000000000..192bbd108a --- /dev/null +++ b/dist/changes-4.4.2 @@ -0,0 +1,512 @@ +Qt 4.4.2 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 4.4.1 and 4.4.0. + +The Qt version 4.4 series is binary compatible with the 4.3.x series. +The Qt for Embedded Linux version 4.4 series is binary compatible with +the Qtopia Core 4.3.x series. Applications compiled for 4.0, 4.1, 4.2, +and 4.3 will continue to run with 4.4. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Task Tracker: + + http://www.trolltech.com/developer/task-tracker + +Each of these identifiers can be entered in the task tracker to obtain +more information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +Third party components +---------------------- + + + +**************************************************************************** +* Library * +**************************************************************************** + +QtCore +------ + +- QVariant + * [220112] correct documentation with respect to conversions + involving QTime. + +- QHash + * [215348] Document that uniqueKeys() doesn't sort its keys. + +- QFlags + * [221702] Fix QFlags::testFlag gives a surprising result on enums with + many bits. + +- QLibrary + * [219456] Fix QLibrary problems on Windows, loading the C runtime library + without a manifest. + +- QDataStream + * Fixed storing a QPalette into a stream with a version older than Qt_2_1 + +- QtConcurrent + * [221671] Fixed filtered() compile error when using filter functions that + takes its argument by const reference. + * [220804] Fix several compile errors with STL containers. + +- QThreadPool + * [215365] The Q[Core]Application destructor now waits for all QThreadPool + threads to finish. This fixes ussues when unloading the Qt dlls on windows + as well as when using Qt features that need on a QApplication instance + in a worker thread. +QtGui +------------- + + * [215794] setWindowFilePath() didn't update window title until the + window is resized. + * [212316] Window position changed when setWindowFlags was called. + * [223814] Fixed a crash in QDockWidget when the docking window was + closed during the dock animation. + * [223339] Fixed a crash when a pop-up widget had the + WA_DeleteOnClose attribute. + + * [214742, 205222] QFormLayout - fix nested QFormLayouts expanding + unnecessarily. + * [217123] Fixed a regression in QWidgetItem::setGeometry() that made an item + with both an Alignment and QSizePolicy::Ignored set got squeezed down to + a size of 0. + +- QCDEStyle + * [220803] Improved the contrast of CE_RubberBand when painted on top of a dark background. + +- QPlastiqueStyle + * [312723] Fixed broken painting on QSpinBox when using NoButtons. + +- QGraphicsEllipseItem + * [207826] setStartAngle() and setSpanAngle() now call + prepareGeometryChange(), removing rendering artifacts. + +- QGraphicsLinearLayout + * [218400] Fix crash when assigning a layout with stretches to a widget. + +- QGraphicsView + * [216741] Fix QGraphicsView::DontSavePainterState (regression to 4.3) + +- QGraphicsWidget + * [215417] Fixed setting the correct layoutDirection on the painter before + we called QGraphicsWidget::paint. + +- QMdiArea + * [221527] Fixed a bug where the [*] placeholder was not updated correctly in tabbed view mode. + +- QMdiSubWindow + * [214964] Tooltips in children of the subwindow closed too fast + +- QMessageBox + * [221721] Fix crash when trying to obtain the default value for QMessageBox::iconPixmap(). + +- QSplitter + * [214480] Improve docs on how the effective stretch facors are calculated. + +- QTextEdit + * [214956] Fix painting problems with text in floating frames + * [215192] Fix HTML alignment in QLabels with RTL + * [213259] Fix to handle ShortcutOverride for Ctrl+Shift+Right + +- QTextCursor + * [214457] Fix assert when deleting empty cells + * [210496] Fix the usecase that QTextCursor::select( QTextCursor::LineUnderCursor ) + doesn't work when the text has not been layed out yet + +- QTextDocument + * [207779] Fix HTML import of page-breaks on empty lines to not get lost + * [212848] Fix FullWidthSelection to work if LineWrapMode set to NoWrap + * Fixes the positioning of bullets to always honor the text direction + +- QWidget + * [219446] Fixed a bug where calling repaint() before QApplication::exec() did not + invoke a paintEvent(). + +QtScript +-------- + + * [219126] Fixed bug that caused the decimal point to appear in + the wrong position when converting a number with a negative + exponent to a string. + +QtGui +----- + +- QDateTimeEdit + * [220926] QDateTimeEdit::textFromDateTime: valueFromText vs. date + TimeFromText -- clarify documentation + +- QTimeEdit + * [215426] Fixed a typo in the declaration of a Q_PROPERTY + +- QPainter + * [216948] Fix one-pixel shifting of integer lines in raster paint + engine when current matrix has negative dx or dy. + * [218682] Fixed bug in QBitmap::fromData that could cause the bitmaps + to turn completely black on Windows and Embedded Linux. + * [220544] Fix issue in Freetype font engine where painting text using + the same font and transform on both images and pixmaps would result in + text not being transformed or not shown at all. + * [222520] Fixed issue in raster paint engine where StretchToDevice + mode for gradients wasn't respected. + * [222848] Prevent potential crash on NaN in qt_curves_for_arc() + when drawing squiggly underlined text. + +- QBrush + * [215090] Avoid "QPixmap created outside the GUI thread" warning when + creating a QImage based brush. + +- QFileDialog + * [223813] Prevent an assert when "Shift + C" was pressed if the directory + set was "C:/". +- QImage + * [215985] Reduce memory usage in TIFF import/export to avoid failing + due to out-of-memory errors on large images. + * [217101] Make sure QImage::setPixel() doesn't call detach twice, to + improve the performance a bit. + +- QPicture + * [215227] Fixed a problem that could occur when drawing a QPicture to a + QImage or QPixmap due to differing device DPIs. + +- QPixmap + * [214340] Prevent QPixmap::scaled() from leaving white lines at right/lower + edges in some cases. + * [214344] Make QPixmap::transformed() work correctly with perspective + transforms. + * [214855] Make sure QPixmap::transformed with a 90-degree rotation transform + doesn't increase the size of the pixmap. + * [215190] Fixed crash on Windows and Embedded Linux due to QPixmap::detach() + not detaching the underlying QImage. + * [216648] QPixmap turned a QBitmap into a 32 bit QPixmap + when QPixmap::resize() was called on the QBitmap. + +- QMatrix + * [198791] Fixed bug in QMatrix::map(const QPolygon &) causing a behavioral + difference from Qt 3's QWMatrix. + +* Fixed bugs in QPolygon to QRegion conversion causing to many rectangles to be + generated. + +* [206138] Fix unaligned double access in src/corelib/global/qnumeric_p.h + +* [216189] Fix a crash when calling QObject::dumpObjectInfo() after + disconnecting a signal. + +* [216910] Use the 'eieio' instruction instead of 'lwsync' in the + PowerPC implementation of QAtomicInt and QAtomicPointer since the + latter is not available in all hardware implementations. The 'eieio' + instruction was used successfully in Qt 4.3 and earlier. + +- QDockWidget + * [222222] The sizeHint for dockwidget is now respected when it is redocked + * [222030] The minimum size and minimum size hint are now respected + +- QToolBar + * [216929] Fixed the extension when the orientation is vertical + +- QTabBar + * [214527] Fixed the geometry of QTabBarnot being correctly updated when + adding a tab. + +- QMainWindow + * [218288] Fixed save/restore that would not work correctly if the window + was not yet shown on screen. + +- QStyleSheetStyle + * [158984] Fixed crash while using stylesheet in combinaison with a proxy style + * [217470] Fixed setting a stylesheet on a QDockWidget remove its border + +- QTreeView + * [220298] Fixed regression where clicking outside of the first column doesn't + always select the item. + * [224598] Fixed item not always appearing when QStandardItemModel::appendColumns + was used + * [212056,216390] Fixed bug where hidden items in the treeview got visible after + a sort. + * [209473] Fixed assert/crash when selectAll were called on a treeview with no + items. + +- QTableView + * [314519] Fixed crash with very big models. + * [211039] Fixed assert when moving a header section in a vertical header. + +QtGui +----- +* [214146, 215170] Fix a regression with multiple screens on + X11. Multiple screens are now reported with their correct size + regardless of how X11 is configured. + +QtOpenGL +-------- + +* [217429] Fixed issue on certain Intel drivers causing a GL error to be + generated when computing the max texture size in qt_gl_maxTextureSize(). + +QtWebKit +-------- +* Fixed potential crash when deleting QWebView instances. +* Fixed blurry widgets in the web page due to antialiased painting. +* [221518] Fixed using modifiers to type special symbols (e.g '@','$') + does not work on Mac OS X. +* [216179] Fixed potential crash on Windows, when performing JavaScript + date conversion. +* Fix rendering of scrollbars with some styles +* Fix state of web actions when showing the context menu +* Fix parsing of stylesheets and JavaScripts to not depend on the current locale +* Fix return value of QWebPage::isModified() +* Fix QWebFrame::setHtml() not setting the contents immediately +* [218789] Fix WebKit not displaying content on 403 HTTP responses + +QtXml +----- + +- QDomElement + * [220115] Document QDomElement::setAttribute(double)'s behavior with + respect to locale. + +QtXmlPatterns +------------- + +- QXmlQuery + * [219070] Fix after the QXmlQuery object is deleted it doesn't + seem to be cleaning up afterwards. + +QtNetwork +--------- + +- QNetworkReply & QNetworkAccessManager + * [223580] Fixed the handling of HTTP replies with code 400. + * [215010] Fixed a bug that made SOCKSv5 proxies not be used. + * [217091] Fixed a bug that made the HTTP backend issue CONNECT + commands for HTTP (not HTTPS) requests to proxy servers + +- QHttp + * [197694] Fixed a bug that prevented QHttp from uploading data of + length 0 when reading from a QIODevice. + + +QtTest +------ + +- QCOMPARE + * [219067] Document behavior of qFuzzyCompare/QCOMPARE when + comparing with 0.0. + +QtDBus +------ + +- QDBusConnection + * [220140] Fixed a bug that would make objects registered with + ExportSlots not have interfaces inherited from parent classes + callable. + * [218733] Fixed the delivery of errors resulting of an outgoing + method call timing out. + +- QDBusReply + * [190546] Improved the error messages generated by QDBusReply in + case of mismatched signatures. + +QtHelp +------ + + * [219454] Index also .htm and .txt files for the full text search. + * [233415] Use the proper encoding when parsing the title of a html + document. + +Qt3Support +---------- + + * [216806] Fixed a crash in Q3ScrollView when setting a null corner widget + * [215041] Fixed a crash in Q3Table when using a Q3TextEdit as the editor + * [217218] Fix support for images in Q3TextBrowser + +Phonon +------ + * [214080] Fixed a failure on path reconnections between VideoWidget and MediaObject + + +Accessibility +------------- + * [222660] Made it possible to navigate from the application through the menubar, + toolbars etc, and down to the textedit without ending up on a QRubberBand or QMenu. + This left the AT client in a confused state. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +X11 +--- + * [211678] Fixed a problem where using widgets and pixmaps on two different + X11 screens resulted in X11 errors. + * [217250] Fixed a problem where QGLWidgets on some older X servers would + not get the correct colormaps set, resulting in distorted colors. + * [214713] Fixed a problem where text would get clipped incorrectly + when using QPainter::drawText() on a QGLWidget, or QGLWidget::renderText(). + * [223085] Fixed a regression where creating a style before QApplications could + result in incorrect font metrics. + +Windows +------- + * [207506] Fixed a bug that causes input widgets to switch the text alignment + when pressing 'Ctrl+Shift' on Vista platforms (regardless of supported + keyboard layouts). + * [223951] Fixed a crash while accessing 'QAxObject*' for methods returning a + VARIANT with IDispatch inside. + * [223145] Fixed a regression which prevented use of Qt::WindowSystemMenuHint + together with flags like Qt::FramelessWindowHint. + * [224063] Fixed a crash in QFile when QFile::handle() was called. + * [221924] Fixed the binary installer for Visual Studio 2005 Express. + * [218215] Fix custom paper sizes for printing under Windows. + * [210830] Fixed incorrect tooltip text color on Vista. + +Mac OS X +-------- + * [216650] Fix a regression from 4.4 in the handling of DeferredDelete + events. This solves the reported problem that using Cmd+W does not + close a form properly in the Designer. + * Fix an error in the qconfig.h header file that occurred on Mac OS X + during configure when not using Terminal.app. + * [222349] Fix a potential out-of-bounds read when getting data from the clipboard. + * [213116] Fix a regression where minimizing a window would cause a window + with widgets that had no click through enabled to never get enabled. + * [215985] Fixed QPixmap::fromImage() to not do an extra copy of the image data + which could cause a lot of memory to be used. + * [217197] Fix crash when dragging text with object replacement characters on the Mac. + * [212884] Fixed a crash that could occur when printing images on the Mac. + * [215909] Fixed a problem where text drawn into a QGLWidget on the Mac would appear + to be drawn with a bold type, when it shouldn't have. + * [215761] Fixed a problem that could make top part of text drawn + into a QGLWidget appear cropped. + * [214960] Fixed a problem where custom page margins were not taken + into account, unless QPrinter::fullPage() was set to true. Also, + margins from the QPageSetupDialog should now update the internal + QPrinter margins correctly. + * [216563] Fix "black widgets" regression from 4.4. + * [214681] Fixed bug that the menu bar and other parts of the application + responds to the same shortcuts. + * [312012] Fixed support for secondary shortcuts on menu bar. + * [315450] Fixed build issue for Phonon on OS 10.4/Macbooks regarding OpenGL headers. + +Qt for Embedded Linux +--------------------- + +- Raster paint engine + * Fixed pixel errors when drawing pixmaps into a semi-transparent window. + * Fixed an assert when drawing an 16-bit image onto an image of format + QImage::Format_ARGB8565_Premultiplied. + * [217400] Fixed painting errors with Qt::WA_NoSystemBackground used on + a 16bit screen. + * Fixed CompositionMode_Source with new QImage formats introduced in 4.4.0. + +- QWSServer + * [210865] Fixed crash due to missing null-pointer check in + QWSServer::sendIMEvent(). + +- DirectFB screen driver + * Fixed a cache corruption which randomly resulting in painting errors + when using QPainter::drawImage(). + * Fixed use of Qt::SmoothTransformation with QPixmap::scaled(). + * Fixed painting errors when drawing transparent windows and compiled + width QT_NO_DIRECTFB_VM. + * Added QT_NO_DIRECTFB_PREALLOCATED to work around issues with drivers + not properly implementing blitting to/from preallocated surfaces. + +- VNC screen driver + * Fixed a crash when used on top of a screen with a non-standard line step. + * Fixed remote cursor when used on top of a hardware accelerated cursor. + +Qt for Windows CE +----------------- + * [219644] Maximized MDI windows had a double title bar on Windows Mobile. + * [223975] Qt version displayed wrong in Windows Explorer. + * [217576] QLocale always displayed "C" as language. + * [215020] Windows with parent were always embedded into the parent window + instead of being toplevel itself. + + +**************************************************************************** +* Compiler Specific Changes * +**************************************************************************** + + + +**************************************************************************** +* Tools * +**************************************************************************** + +- Build System + +- Assistant + * [221298] When triggering the sync contents action, activate the contents + widget. + * [171654] Use the title of the .html file as the about dialog window title. + * [219939] When specifying a .html file for the about dialog contents, + ensure that the referenced image files are displayed as well. + * [219936] When a collection file has been changed, make sure to syncronize + all relavant settings with the cached collection file. + * [206321] Display .svg files in Assistant. + * [219176] Escape '&' characters in the title of a document. + + +- Designer + * [219670] Fixed a bug related to layout handling of form classes generated + by the Visual Studio integration. + * [220299] Fixed a crash that occurred when breaking a layout containing + zero-sized spacers. + * [217464] Fixed a bug related to using resource-dependent properties + for QDialog-based forms. + * [215188] Stabilized reading of corrupted ui files. + * [215648] Don't show the rich text editor for iconText property of QAction + * [214854] Fix displaying of icons in the VS integration + * [217093] Make non-letter shortcuts with Shift modifier working + * [223114] Fixed a crash when removing a dynamic url property + * [220998] Default precision of float property in property editor changed to 6 + +- Linguist + +- lupdate + +- lrelease + + +- rcc + + +- moc + + +- uic + + +- uic3 + + +- qmake + + +- configure + + +**************************************************************************** +* Plugins * +**************************************************************************** + + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + diff --git a/dist/changes-4.4.3 b/dist/changes-4.4.3 new file mode 100644 index 0000000000..f33cede92b --- /dev/null +++ b/dist/changes-4.4.3 @@ -0,0 +1,31 @@ +Qt 4.4.3 is a rebranding-only release. In all other aspects, it is the +same release as Qt 4.4.2. It maintains both forward and backward +compatibility (source and binary) with Qt 4.4.2, 4.4.1 and 4.4.0. + +The Qt version 4.4 series is binary compatible with the 4.3.x series. +The Qt for Embedded Linux version 4.4 series is binary compatible with +the Qtopia Core 4.3.x series. Applications compiled for 4.0, 4.1, 4.2, +and 4.3 will continue to run with 4.4. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Task Tracker: + + http://www.trolltech.com/developer/task-tracker + +Each of these identifiers can be entered in the task tracker to obtain +more information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + + - Updated application icons and other graphics to reflect the look + and feel of the new Qt brand. + +Legal +----- + + - Copyright of Qt has been transferred to Nokia Corporation. diff --git a/dist/changes-4.5.0 b/dist/changes-4.5.0 new file mode 100644 index 0000000000..3fc075fc68 --- /dev/null +++ b/dist/changes-4.5.0 @@ -0,0 +1,1496 @@ +Qt 4.5 introduces many new features and improvements as well as bugfixes +over the 4.4.x series. For more details, refer to the online documentation +included in this distribution. The documentation is also available online: + + http://doc.trolltech.com/4.5 + +The Qt version 4.5 series is binary compatible with the 4.4.x series. +Applications compiled for 4.4 will continue to run with 4.5. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Task Tracker: + + http://www.qtsoftware.com/developer/task-tracker + +Each of these identifiers can be entered in the task tracker to obtain more +information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + +General Improvements +-------------------- + +New features +------------ + +- Disk Caching in QtNetwork + * Added support for http caching in QNetworkAccessManager. + * New classes: QAbstractNetworkCache, QNetworkDiskCache. + * QNetworkDiskCache is a simple disk-based cache. + +- QDate + * [207690] Added QDate::getDate(). + +- QDateTimeEdit + * [196924] Improved QDateTimeEdit's usability. It now skips ahead to the + next field when input can't be valid for the current section. + +- QDateTime + * [178738] Fixed QDateTime::secsTo() to return the correct value. + +- QDBusPendingCall / QDBusPendingCallWatcher / QDBusPendingReply + * New classes to make calls whose replies can be received later. + +- QDesktopServices + * Added the ability to determine the proper location to store cache files. + +- QGraphicsItem + * Added the QGraphicsItem::itemTransform() function. + * [209357] Added the QGraphicsItem::opacity() function. + * [209978] Added the QGraphicsItem::ItemStacksBehindParent flag to allow + children to be stacked behind their parent item. + * Added QGraphicsItem::mapRect() functions. + +- QGraphicsScene + * Added the QGraphicsScene::sortCacheEnabled property. + * Added the QGraphicsScene::stickyFocus property. + +- QGraphicsTextItem + * [242331] Added the QGraphicsTextItem::tabChangesFocus() function. + +- QGraphicsView + * [210121] Added action, shortcut and shortcut override support to + QGraphicsView and QGraphicsItem. + +- QLineEdit + * Added the ability to set the text margin size. + +- QMainWindow + * Added API to detect which dock widget is tabified together with another + dock widget. + +- QMessageBox + * It is now possible to create categories in QErrorMessage to avoid error + messages from the same category popping up repeatedly. + +- QMetaObject + * Added introspection of constructors, including the ability to invoke a + constructor. + +- QMetaProperty + * [217531] Added the notifySignalIndex() function, which can be used to + introspect which signal (if any) is emitted when a property is changed. + +- QNetworkCookie + * [206125] Added support for HTTP-only cookies. + +- QNetworkProxyFactory + * Added support for a factory of QNetworkProxy whose result can + change depending on the connection being attempted. + * Added support for querying system proxy settings on Mac OS X and + Windows. + +- QSharedPointer / QWeakPointer + * Added two new classes for sharing pointers with support for atomic + reference counting and custom destructors. + +- QStringRef + * [191369] Added QStringRef::localeAwareCompare() functions. + +- QTabBar + * Added the ability to place close buttons and widgets on tabs. + * Added the ability to choose the selection behavior after a tab is + removed. + * Added a document mode which, on Mac OS X, paints the widget like + Safari's tabs. + * Added the movable property so that the user can move tabs easily. + * Added mouse wheel support so that the mouse wheel can be used to change + tabs. + +- QTabWidget + * Added a document mode that removes the tab widget border. + +- QTcpSocket + * [183743] Added support for requesting connections via proxies by + hostname (no DNS resolution made on the client machine). + +- QTextDocument / QTextDocumentWriter + * Added the QTextDocumentWriter class which allows exporting of + QTextDocument text and images to the OpenDocument format + (ISO/IEC 26300). + +- QtScriptTools + * Added a new module to provide a debugger for Qt Script. + +- Qt::WA_TranslucentBackground + * Added this new window attribute to be able to have per-pixel + translucency for top-level windows. + +- Qt::WindowCloseButtonHint + * Added a new window hint to control the visibility of the window close + button. + +- Qt::WindowStaysOnBottomHint + * Added a new window hint to allow the window to stay below all other + windows. + +- Q_SIGNAL and Q_SLOT + * Added new keywords to allow a single function to be marked as a signal + or slot. + +- QT4_IM_MODULE + * [227849] Added a new environment variable that specifies the input + method module to use and takes precedence over the QT_IM_MODULE + enviroment variable. This environment variable allows the user to + configure the environment to use different input methods for Qt 3 and + Qt 4-based applications. + +- QXmlQuery + * Added a number of overloads to the bindVariable(), setFocus(), and + evaluateTo() functions. + * Added a property for controlling the network access manager. + * Partial support for XSL-T has been added. See the main documentation for + the QtXmlPatterns module for details. + +Optimizations +------------- + +- The backing store has been re-factored and optimized + * Significant improvement in overall performance of painting for widgets. + * Reduced the number of QRegion operations. + * Improved update handling. + * Improved the performance of clipping. + * Support for full static contents. + +- QGraphicsView has been optimized in several areas + * Reduced the number of floating point operations. + * Improved update handling. + * Improved handling of deeply nested item trees. + * Improved the performance of clipping for ItemClipChildrenToShape. + * Improved sorting speed, so scenes with deeply nested item hierarchies do + not affect the performance as compared to Qt 4.4. + +- Widget style sheets optimisations + * Improved the speed of style sheet initialization. + +- QAbstractItemModel + * Optimized QPersistantModelIndex creation and deletion. + * Optimized adding and removing rows and columns. + +- QFileSystemModel + * Ensured that the model is always sorted when required. + +- QTreeView + * Optimized expanding and collapsing items. + * Optimized expanding animations with large views. + +- QRect and QRectF + * Improves on functions like intersect(), contains(), etc. + +- QTransform + * Reduced the number of multiplications used for simple matrix types. + +- QRasterPaintEngine + * Reduced overhead of state changes; e.g., setPen() and setBrush(). + * Introduced a cache scheme for Windows glyphs, thus improving text + drawing performance significantly. + * Reduced the cost of doing rectangular clipping. + * Improved pixmap drawing. + * Improved pixmap scaling. + * Optimized drawing of anti-aliased lines. + * Optimized drawing of anti-aliased dashed lines. + +Third party components +---------------------- + +- Updated Qt's SQLite version to 3.5.9. + +**************************************************************************** +* Library * +**************************************************************************** + +- General Fixes + * [217988] Fixed a thread safety issue in QFontPrivate::engineForScript + which could lead to buggy text rendering when rendering text from + several threads. + * [233703] Fixed a crash that occured when the input method (for example + SCIM) was destroyed while the application is still running. + * [233634] When there are several input method plugins available, they are + now initialized only when the user switches to them. + * [231089] Fixed an issue which caused HTTP GET to fail for chunk + transfers. + * [193475] Consumer tablet devices (like Wacom Graphite and Bamboo) now + work on Windows and Mac OS X. + * [203864] Do not warn when deleting objects in their event handler except + for Qt Jambi. + +- QAbstractItemModel + * [233058] Fixed the sorting algorithm used in rowsRemoved(). + +- QAbstractItemView + * [221955] Fixed a bug that allowed rows to be selected even if the + selection mode was NoSelection. + * [244716] Fixed a possible crash when an edited cell was moved. + * [239642] Ensured that a rubber band selection is clear if the selection + ends on the viewport. + * [239121] Ensured that the old selection is clear when starting a + selection on the viewport. + * [219380] Fixed an update issue when removing rows. + +- QAbstractSpinBox + * [221221] Fixed a usability issue with QAbstractSpinBox subclasses in + itemviews. + +- QBitmap + * [216648] Fixed a problem where QBitmaps were being converted to 32-bit + QPixmaps when QPixmap::resize() was called. + +- QByteArray and QString + * [239351] Fixed a bug in QCharRef and QByteRef that would cause them to + fail to detach properly in some cases. Applications need to be + recompiled to use the fix. + * [212140] Added repeated() functions to these classes. + * [82509] Added QT_NO_CAST_FROM_BYTEARRAY to disable "operator const + char *" and "operator const void *" in QByteArray. + +- QCalendarWidget + * [206017] Fixed minimumSize to be calculated correctly in the case where + the vertical header has a different text format set. + * [206282] Added support for browsing months using the mouse wheel. + * [238384] A click on the date cell will now be ignored if the year + spin box is opened. + +- QCleanlooksStyle + * [195446] Skip disabled menu and menu bar items when using keyboard + navigation. + * Fixed a problem with wrapped text eliding on titlebars. + * [204269] Fixed a sizing problem with push buttons having mnemonics. + * [216172] Fixed a problem with check box on inverted color schemes. + +- QColor + * [196704] Fixed a problem where the QColor::fromHsvF() function could + return incorrect values. + +- QComboBox + * [167106] Fixed a problem where the combobox menu would incorrectly show + check boxes after a style change. + * [227080] Fixed handling of the style sheet background-color attribute on + Windows. + * [227080] Adjusted pop-up size when using style sheet border. + * [238559] Fixed the completer as it was not using the right column with + setModelColumn(). + +- QCommandLinkButton + * [220475] Added support for On/Off icon states. + +- QCommonStyle + * [211489] Ensured that checkable group boxes with no title are drawn + correctly. + * [222561] Made more standard icons available. + +- QCOMPARE(QtTest) + * [183525] Fixed issue that caused QCOMPARE to give incomplete + information when comparing two string lists. + * [193456] Ensured that nmake install for QTestLib copies the DLL into the + bin directory. + +- QCoreApplication + * [224233] Ensured that QCoreApplication::arguments() skips the + -stylesheet argument. + +- QDate + * [222937] QDate - fixed issue preventing a minimum date of 01-01-01 + from being set. + +- QDataStream + * [230777] Fixed a bug that would cause skipRawBytes() to go + backwards if the correct resulting position was larger than 2 GB. + +- QDateTimeEdit + * [196924] Improved QDateTimeEdit's usability. It now skips ahead to the + next field when input can't be valid for the current section. + +- QDBusConnection + * [211797] Added support for the GetAll call in the standard + org.freedesktop.DBus.Properties interface. + * [229318] Fixed race conditions caused by timers being deleted in + the wrong thread. + +- QDesktopServices + * [237398] Ensured that, on Mac OS X, returned paths do not have a + trailing '/'. + +- QDesktopWidget + * [244004] Fixed a coordinate issue on Mac OS X with multi-screen setups + where the screen sizes differ. + +- QDialog + * [214987] Ensured that maximize buttons are not put on dialogs by default + on Mac OS X. + +- QDialogButtonBox + * [224781] Dialog buttons without icons now get the same height as dialog + buttons with icons to maintain the alignment. + +- QDockWidget + * [237438] Fixed a crash in setFloat() for parentless dock widgets. + * [204184] Subclasses are now allowed to handle mouse events. + * [173854] Ensured that the size of the dock widget is remembered when it + is hidden. + +- QDomDocument + * [212446] Ensured that a new line inserted after an element that + indicates whitespace is preserved. + +- QDomAttr + * [226681] Fixed issue that caused specified() to return false if the + attribute is specified in the XML. + +- QEvent + * Added more debug operators for common event types. + +- QFlags + * [221702] Fixed issue with testFlag() that gave a surprising result on + enums with many bits. + +- QFormLayout + * [240759] Fixed crash in QFormLayout that could occur when a layout was + alone in a row. + +- QFile + * [238027] Fixed a bug that would cause QFile not to be able to map a file + to memory if QFile::open() was called with extra flags, like + QIODevice::Unbuffered. + +- QFileInfo + * [166546] Fixed QFileInfo operator== bug involving trailing directory + separators. + +- QFileDialog + * [240823] Fixed issues with file paths over 270 characters in length on + Windows. + * [212102] Fixed ".." directory issue. + * [241213] Fixed some problems when renaming files. + * [232613] Fixed a usability issue with UNC path on Windows. + * [228844] Fixed a wrong insertion in the filesystemModel that caused + persistant model index to be broken. + * [190145] [203703] Fixed a bug in getExistingDirectory() that returned + /home/ instead of /home, or on Windows, returned c:/temp/ instead of + c:/temp. We now match the native behavior. + * [236402] Fixed warning in the QFileDialog caused by deleting a directory + we have previously visited. + * [235069] Fixed issue that prevented QFileDialog from being closed on + Escape when the list view had focus. + * [233037] Fixed issue that caused the "Open" button to be disabled even + if we want to enter a directory (in AcceptSave mode). + * [223831] Ensured that the "Recent Places" string is translatable. + * Fixed crash on Windows caused by typing \\\ (empty UNC Path). + * [226366] Fixed issue that prevented the completer of the line edit from + being shown when setting a directory with lower case letter. + * [228158] Fixed issue that could cause the dialog to be closed when + pressing Enter with a directory selected. + * [231094] Fixed a hang that could occur when pressing a key. + * [227304] Fixed a crash that could occur when the dialog had a completer + and a QSortFilterProxyModel set. + * [228566] Fixed the layout to avoid cyclically showing and hiding the + scroll bars. + * [206221] Ensured that the view is updated after editing a value with a + custom editor. + * [196561] Fixed the static API to return the path of the file instead of + the link (.lnk) on Windows. + * [239706] Fixed a crash that could occur when adding a name filter from + an editable combo box. + * [198193] Ensured that directory paths on Windows have a trailing + backslash. + +- QFrame + * [215772] Style sheets: Ensured that the shape of the frame is respected + when not styling the border. + +- QFont + * [223402] QFont's QDataStream operators will now save and restore the + letter/word spacing. + +- QFontMetrics + * [225031] Fixed issue where QFontMetrics::averageCharWidth() could return + 0 on Mac OS X. + +- QFtp + * [227271] Added support for old FTP servers that do not recognize the + "SIZE" and "MDTM" commands. + +- QFuture + * [214874] Fixed deadlock issue that could occur when cascading QFutures. + +- QGLContext + * [231613] Fixed a crash that could occur when trying to create a + QGLContext without a valid paint device. + +- QGLFramebufferObject + * [236979] Fixed a problem with drawing to multiple, non-shared, + QGLFramebufferObjects from the same thread using QPainter. + +- QGraphicsEllipseItem + * [207826] Fixed boundingRect() for spanAngle() != 360. + +- QGraphicsGridLayout + * [236367] Removed (0, 0) maximum size restriction of a QGraphicsItem by + an empty QGridLayout. + +- QGraphicsItem + * [238655] Fixed slowdown in QGraphicsItem::collidesWithItem() that was + present in Qt 4.4. + * [198912] ItemClipsChildrenToShape now propagates to descendants. + * [200229] Ensured that context menu events respect the + ItemIgnoresTransformations flag. + * Enabling ItemCoordinateCache with no default size now automatically + resizes the item cache if the item's bounding rectangle changes. + * [230312] Mac OS X: Fixed a bug where update() issued two paint events. + +- QGraphicsLayout + * [244402] Fixed issue that could cause a horizontal QGraphicsLinearLayout + to stretch line edits vertically. + +- QGraphicsLayoutItem + * Fixed a crash that could occur with custom layouts which did not delete + children. + +- QGraphicsScene + * [236127] Fixed BSP tree indexing error when setting the geometry of + a QGraphicsWidget. + +- QGraphicsWidget + * [223403] Ensured that QGraphicsWidget(0, Qt::Popup) will close when you + click outside it. + * [236127] Fixed QGraphicsScene BSP tree indexing error. + * Improved rendering of window title bars. + * Fixed crash that could occur when a child that previously had the focus + died without having the focus anymore. + +- QGraphicsProxyWidget + * [223616] Ensure that context menus triggered by ActionsContextMenu are + embedded. + * [227990] Widgets are not longer resized/moved when switching themes on + Windows. + * [219058] [237237] Fixed scroll artifacts in embedded widgets. + * [236545] Ensured that the drag and drop cursor pixmap is not embedded + into the scene on X11. + * [238224] Fixed a crash that could occur when a proxy widget item was + deleted. + * [242553] Fixed drag and drop propagation for embedded widgets. + +- QGraphicsSvgItem + * [241475] Fixed update on geometry change. + +- QGraphicsTextItem + * [240400] Fixed bugs in mouse press handling. + * [242331] Add tabChangesFocus() to let the user control whether the text + item should process Tab input as a character, or just switch Tab focus. + +- QGraphicsView + * [236453] Improved Tab focus handling (propagate Tab and Backtab to items + and widgets). + * [239047] Improved stability of fitInView() with a very small viewport. + * [242178] Fixed rubber band debris left in Windows XP style (potentially + any style). + * Fixed a crash in QGraphicsView resulting from the non-deletion of + sub-proxy widgets. + * Fixed issue that caused items() to return an incorrect list with an + incorrect sort order when an item in the scene has the + IgnoresTransformations flag set to true. + * Ensured that the painter properly saves/restores its state after a call + to drawBackground(). + * [197993] Allow any render hint to be set/cleared by the + QGraphicsView::renderHints property. + * [216741] Fixed handling of QGraphicsView::DontSavePainterState (broken + in Qt 4.3). + * [235101] [222323] [217819] [209977] Implemented proper font and palette + propagation in Graphics View. + * [238876] Fixed scroll artifacts in reverse mode. + * [153586] Ensured that the text cursor is drawn correctly in transformed + text controls in a QGraphicsView. + * [224242] Added support for embedding nested graphics views. + +- QGroupBox + * [204823] Fixed a palette inconsistency when using certain styles. + +- QHeaderView + * [239684] Fixed sorting that wouldn't happen when clicking unless the + sort indicator is shown. + * [236907] Fixed bug that could cause hidden columns to become visible. + * [215867] Resizing sections after moving sections could resize the wrong + columns. + * [211697] Fixed ResizeToContents to always show the full content of + cells. + +- QImage + * [240047] Fixed a problem with drawing/transforming sub-images. + +- QImageReader + * [138500] Added the QImageReader::autoDetectImageFormat() function. + +- QKeySequence: + * Added QKeySequence::SaveAs which has values for both GNOME and Mac OS X. + * [154172] Improved toString(NativeText) to return more native glyphs on + Mac OS X. + +- QLabel + * [226479] Fixed update if showing a QMovie that changes its size. + * [233538] Fixed behavior involving changing the color of a label with a + style sheet and pseudo-state. + +- QLineEdit + * [179777] Ensured that PasswordEchoOnEdit shows asterisks correctly. + * [229938] Fixed issue that could cause textChanged() to be emitted when + there was a maximum length set, even though the text was not changed. + * [210502] Fixed case-insensitive inline completion. + +- QLineF + * [241464] Fixed issue that could cause intersects() to be numerically + unstable in corner cases. + The function has been rewritten to be faster and more robust. + +- QListView + * [217070] Fixed issue that could cause scroll bars to appear in adjusted + icon mode. + * [210733] Made improvements in the way the pagestep is computed. + * [197825] Ensured that hidden items are not selectable. + +- QLocalServer + * Added new removeServer() static method to allow the socket file to be + deleted after an application has crashed. + +- QMacStyle + * [232298] Draw the sort indicators in the correct direction for table + headers. + * [198372] Give context sub-menus the correct mask. + * [209103] [232218] QToolButton::DelayedPopup is now displayed correctly. + * [221967] Bold header text now uses the correct color. + * [234491] Also the menu's QFont when when drawing menu items. + * Ensure the proper pressed look for tabs on Leopard. + +- QMainWindow + * [192392] Stop excessive updates with unified toolbars when changing the + enabled status of an action. + * [195259] Ensured that the toolbar button is shown when the unified + toolbar is created later. + +- QMessageBox + * [224094] Fixed crash that could occur when specifying a default button + that was not one of the buttons listed. + * [223451] Fixed a memory leak on a static pointer when the application + exits. + +- QMainWindow + * [224116] [228995] [228738] save/restoreState() would not always restore + the toolbars in the correct positions. + * [215430] Fixed issue that meant that the user could dock widgets and + they wouldn't be tabbed even if ForceTabbedDocks was set. + * [240184] Fixed an issue that caused QDockWidget to get smaller and + smaller by docking and undocking. + * [186562] Fixed layout when saving the state with an undocked dock widget + and then restoring it + * [228110] Re-adding a toobar now also re-docks it. + * [232431] Fixed a memory leak caused by setting centralWidget multiple + times. + +- QMenu + * [220965] [222978] Style sheets: Made it possible to set border and + gradient on items. + +- QMenuBar + * [228658] Fixed broken activated signal behavior. + * [233622] Fixed the repaint when a dialog is invoked + +- QMdiArea + * [233264] Mac OS X: Improved performance when dragging sub-windows + around. + * [233267] [234002] [219646] Removed flickering behavior that could occur + when switching between maximized sub-windows. + +- QNetworkReply: + * [235584] Fixed a bug that would cause sslConfiguration() to + return a null object if finished() had already been emitted. + +- QOpenGLPaintEngine + * [244918] Fixed a problem with drawing text and polygons onto software + rendering GL contexts. + +- QPainterPath + * [234220] Fixed crash due to a division by zero function in + addRoundedRect(). + +- QPicture + * [226315] Fixed an assert when trying to load picture files created with + Qt 3 into Qt 4. + +- QPixmap + * [223800] Fixed a bug where grabWindow() on a QScrollArea did not work + the first time. + * [217815] Fixed a bug where grabWidget() did not work properly for + resized and hidden widgets. + * [229095] Mac OS X: Fixed issue that could cause grabWindow() to grab the + wrong parts of the window for child widgets. + +- QPlastiqueStyle + * [195446] Ensured that the background is now painted on selected but + disabled menu items for improved keyboard navigation. + * [231660] Fixed support for custom icon size in tab bars. + * [211679] drawPartialFrame() now passes the widget pointer. + +- QPainter + * QPainter::font(), brush(), pen(), background(): + These functions will return default constructed objects when the + painter is inactive. + * [242780] Fixed segmentation fault that could occur when setting + parameters on an uninitialized QPainter. + * [89727] Added support for raster operations. + * [197104] More well-defined gradient lookup (linear gradients are now + perfectly symmetric if inverting the color stops). + * [239817] Fixed bug where overline/strike-out would be drawn with the + wrong line width compared to the underline. + * [243759] Fixed some off-by-one errors in the extended composition modes + in the raster paint engine. + * [234891, 229459, 232012] Fixed some corner case bugs in the raster paint + engine line/rectangle drawing. + * Fixed the "one pixel less" clipping bug caused by precision lost when + converting to int. + * Fixed the composition mode in QPainter raster which was not properly set. + * Fixed an assert when the painter is reused after a previous bad usage + (e.g., painting on a null pixmap). + +- QPainterPath + * Added convenience operators: +, -, &, |, +=, -=, &= and |=. + +- QPrinter + * [232415] Fixed a problem that caused a an invalid QPrinter + object to not update its validity after being passed into a + QPrintDialog. + * [215401] Fixed the size of the Executive paper format. + * [202113] Improved speed when printing to a highres PostScript printer. + * [195028] Trying to print to a non-existing file didn't update the validity + of the QPrinter object correctly. + * [134820] Support CUPS printer instances on Unix systems (Mac and X11). + * [201875] Fixed a bug that caused the fill opacity of a brush to be used + for the stroke in certain cases. + * [222056] Fixed absolute letter spacing when printing. + * [234135] Fixed a problem with custom margins for CUPS printers. + +- QPrintDialog + * [232207] When printing to a Qt .pdf or .ps printer under Windows or + Mac OS X, pop up a file dialog instead of the native print dialog. + +- QPrintPreviewDialog + * [236418] Fixed a problem that caused opening several QPrintPreviewDialogs + and printing to them at the same time crash. + +- QProcess + * [230929] (Unix) Open redirection files in 64-bit mode wherever supported. + +- QProgressDialog + * [215050] Properly stop internal timer that retriggered for no reason. + +- QProgressBar + * [216911] stylesheet bug if minimum value != 0 + * [222872] Use the orientation when determining if we should repaint. + +- QRadioButton + * [235761] Fixed navigation with arrow keys when buttons are in different layout + +- QRegion + * [200586] Make QRegion a lot smarter when converting from a QPolygon, to avoid + creating a lot of needless rectangles. + * For Mac OS X, add QRegion::toQDRgn(), QRegion::toHIMutableShape() and + corresponding ::fromQDRgn() and ::fromHIShape(). The ::handle() is still + available for 32-bit Mac OS X builds and is the equivalent of ::toQDRgn(). + +- QScrollArea + * [206497] Stylesheet: It's now possible to style the corner with ::corner + +- QScrollBar + * [230253] Simple stylesheets doesn't break the scrollbar anymore. + +- QSettings + * [191901] Added methods setIniCodec() and iniCodec() for changing the codec of .ini files. + +- QSharedMemory + * Don't deadlock when locking an already-held lock. + +- QSortFilterProxyModel + * [236755] Hidden columns in QTableView could become visible + * [234419] Fixed a data corruption when adding child and row is filtered out + +- QSslSocket + * [189980] Ensure OpenSSL_add_all_algorithms() is called. + +- QSslCertificate + * [186084] Fixed a bug that would cause timezones in certificate + times not to be parsed correctly, leading to valid certificates + not being accepted + +- QSslConfiguration + * [237535] Fixed a bug that would cause QSslConfiguration objects + to leak memory and eventually corrupt data due to wrong + reference counting. + +- QStandardItemModel + * [227426] Fixed drag and drop of hierarchy + * [242918] Added ability to change flags of the root item. + +- QString + * [205837] Qt 4.4: format string warnings / small QString conversion + clean up. + +- QSvgRenderer + * [226522] Fixed fill-opacity when fill is a gradient. + * [241357] Fixed gradients with two or more stop colors at the same offset. + * [180846] Fixed small font sizes. + * [192203] Add support for gzip-compressed SVG files. + * [172004] Respect the text-anchor attribute for embedded SVG-fonts. + * [199176] Ensure QSvgGenerator handles fractional font sizes + * [151078] Fix parsing of embedded fonts in files that have <metadata> tags + +- QSystemTrayIcon + * [195943] QSystemTrayIcon now accepts right mouse clicks on Mac OS X. + * [241613] Hide the tooltip when open the menu on Mac OS X. + * [237911] Only emit QMenu::triggered once on Mac OS X. + * [196024] Make it possible to disable context menus on Mac OS X. + +- QTabBar + * [213374] Fixed position of label in vertical bar with stylesheet + +- QtScript + * [177665] Added QScriptEngine::checkSyntax(), which provides information + about the syntactical (in)correctness of a program. + QScriptEngine::canEvaluate() has been obsoleted. + * [192955] Added the ability to exclude the QObject::deleteLater() slot + from the dynamic QObject binding, so that scripts can't delete + application objects. + * [212277] Fixed issue where the wrong prototype object was set when a + polymorphic type was returned from a slot. + * [213853] Fixed issue that could cause events to be processed less + frequently than what's set with QScriptEngine::setProcessEventsInterval(). + * [217781] Fixed bug that caused the typeof operator to return "function" + when applied to a QObject wrapper object. + * [219412] Fixed bug that could cause the in operator to produce wrong results + for properties of Array objects. + * [227063] Fixed issue where a break statement caused an infinite loop. + * [231741] Fixed bug that could cause the implementation of the delete + operator to assert. + * [232987] QtScript now calls QObject::connectNotify() and + QObject::disconnectNotify(). + * [233346] Fixed issue where the garbage collector would not be triggered when + very long strings were created, causing excessive memory usage. + * [233624] Fixed bug that caused enums in namespaces to be handled incorrectly. + * [235675] Fixed issue where creating a QScriptEngine would interfere with + ActiveQt's QVariant handling. + * [236467] Fixed bug that caused QtScript to treat a virtual slot redeclared by + a subclass as an overload of the base class's slot. + * [240331] Fixed bug that caused QtScript to crash when one of the unary + operators ++ and -- was applied to an undefined variable. + * If a signal has overloads, an error will now be thrown if you try to connect + to the signal only by name; the full signature of a specific overload must + be used. + * Added support for multi-line string literals. + * Added QScriptEngine::setGlobalObject(). + * Made it possible to use reserved identifiers as property names in + contexts where there is no ambiguity. + +- QTcpSocket + * [235173] Fixed a bug that would cause QTcpSocket re-enter + select(2) with an uninitialized timer (when the first call got + interrupted by a signal). + +- QTextCursor + * [244408] Fixed regression in QTextCursor::WordUnderCursor behavior. + +- QTextCodec + * [227865] QTextCodec::codecForIndex(int) broken in Qt3Support + +- QTextEdit + * [164503, 232857] Fixed issues where using NoWrap caused + selection/background colors to not cover full width of text control. + * [186044] Fixed whitespace handling when copying text from Microsoft Word + or Firefox. + * [228406] Fixed parenthesis characters with RTL layout direction on + Embedded Linux. + * [189989] Fixed QTextEdit update after layout direction change. + +- QTextStream + * [210933] It is now possible to specify a locale which + QTextStream should use for text conversions. + +- QToolBar + * [193511] Fixed stylesheet on undocked toolbar + * [226487] Fixed the layout when the QMainWindow as a central widget with + fixed size. + * [220177] Fixed the layout not taking the spacing into account + +- QToolButton + * [222578] Fixed issues with checked and disabled tool buttons in some + styles. + * Tool button now allows independent hover styling on it's subcontrols. + * [167075] [220448] [216715] Polished stylesheet color, background, and + border. + * [229397] Fixed regression against Qt3 where setPopupDelay(0) did not + work as expected. + +- QToolTip + * [228416] Fixed style sheet tooltips on windows. + +- QTreeView + * [220494] scrollTo() didn't scroll horizontally if the vertical bar was + already at the correct position. + * [216717] Fixed update when children are added. + * [225029] Fixed bug that prevented focus from being shown for + non-selectable items when allColumnsShowFocus is set to true. + * [226160] Fixed hit detection when first column is moved. + * [225539] Fixed a crash when deleting the model. + * [241208] Fixed animation when using persistent editors. + * [202073] Fixed visualRect which would not take the indentation into + account when 1st column is moved. + * [230123] Item can no more be expanded with keyboard if + setItemsExpandable has been set to false. + +- QTreeWidget + * [243165] selectAll didn't work before the widget was shown + * [238003] setCurrentItem would not expand the parent item + * [223130] Fixed drag&drop when sort is enabled that would only drop the + first column. + * [223950] Only allow to drag items when they have the + Qt::ItemIsDragEnabled flag set. + * [218661] Made sure our internal model can pass the "modeltest" test + suite. + * [217309] Fixed issue that caused data() for CheckStateRole to return + Checked even if some children were partially checked. + * [229807] Fix a redrawing problem when scrolling with a different palette + role set on Mac OS X. + * [236868] Prevent a crash when dragging an item hidden by a tooltip on + Mac OS X. + +- QLocale + * Added support for narrow format for day and month names. + * Day and month names can now also be fetched as a standalone text. + +- QDebug + * Values of type QBool are now properly outputted with QDebug. + +- QUndoStack + * [227714] Don't crash when owner group is deleted. + +- QUrl + * [204981] Made the QUrl tolerant parser more tolerant + * Fixed a bug in QUrl's tolerant parsing of stray % characters + (not part of %HH sequences), which would cause it to make the + URL even worse + * [227069] Fixed a bug that would cause QUrl to not parse URLs + whose hostnames start with an IP address (like + http://1.2.3.4.example.com) + * [230642] Fixed a bug that made QUrl not properly produce proper + URLs with relative paths + * Modified QUrl to not normalize %HH in URLs unless strictly + necessary. QUrl now keeps the original %-encoding of the input + unless some operation is executed in the QString + components. This also allows for %2f to exist in path components. + +- QVariant + * [215610] prevented assertion when reading from an invalid QDataStream. + +- QWidget + * [222323] [217819] [209977] Improve Qt's font and palette propagation. + * [218568] Revert and reopen task 176809 ("when using + Qt::PreventContextMenu policy, the context key menu is still not sent to + the widget"). + * [220502] Ensure that setWindowFilePath() when called with an empty + string clears the proxy icon in Mac OS X. + * [240147] Enforce exclusivity between the Qt::WA_(Normal|Small|Mini)Size + * [168641] Ensure that tablet releases go to the correct widget on X11 and + Carbon (i.e., the widget that received the press). + * [192565] Fixed a problem with calling QWidget::render(), using a + QPrinter as a paint device. + * [236565] [168570] Fix regression on X11 where QWidget::restoreGeometry() + would restore incorrect geometry if the window was maximized when saved. + * [201655] Fix QWidget::scroll() acceleration issue with child widgets on + Mac OS X. + * [210734] [210734] Fixed a bug where changing the visibility of alien + widgets did not generate proper enter/leave events. + * [228764] Major improvement of scroll performance. + * [238258] [229067] [239678] Flickering with widgets larger than + 4096x4096 pixels in size. + * [141091] Added full support for Qt::WA_StaticContents. + * [238709] Fixed a bug where calling clearMask() did not update the view + properly. + * [213512] Fixed clipping issue with Qt::WA_PaintOutsidePaintEvent widgets. + * [230175] Added support for calling render() recursively. + * [238115] Fixed painting issues after calling winId(). + +- QWindowsStyle + * [210069] Fixed a bug in the drawing of comboboxes. + +- QWindowsVistaStyle + * [221668] Respect background color role for item views. + * [227360] Current item now gets focus for multiselection views. + * [224251] Fixed incorrect painting of inverted and reversed progress + bars. + * [207836] Fixed a problem with vertical toolbar separators. + * [202895] Fixed problem where indeterminate progress bars were not + animated when Vista animations were explicitly disabled. + * [200899] Message box buttons are now right aligned. + +- QWindowsXPStyle + * [207242] Fixed a static memleak. + * [206418] Fixed missing focus rect on tool buttons. + * [188850] Fixed a problem with offsets for sliders. + * [110091] Tool buttons with arrows are not styled using black + windows arrows due to consistency issues with the native theme. + +- QWizard + * [204643] Make sure the maximum size of QWizard is computed properly. + +- QWorkspace + * [125281] fixed active child to be the same when minimizing and restoring + the main window. + +- QtWebKit + * ACID3 score 100 out of 100. + * Added support for plugins using Netscape Plugin API (NPAPI) for Windows, + Mac OS X, and X11. + * [211228] Fixed invisible focus rectangle on push buttons. + * [211256] Fixed dragging an image from the web view. + * [211273] Fixed static build of Qt with QtWebKit. + * [213966] Fixed wrong placement of native widget plugins after scrolling. + * [214946] Ensured native plugin instances are deleted properly. + * [217574] Fixed cursor problem on text input field after focus change. + * [218957] Fixed rendering of form elements when using Windows style. + * [219344] Added a remark that some web actions have an effect only + when contentEditable is true. + * [220127] Fixed mouse right click still allowed for disabled view. + * [222544] Added an option to print background elements. + * [222558] Fixed input method does not work after changing the focus. + * [222710, 222713] Fixed issues with TinyMCE editor. + * [223447] Ensured that CSS with relative path works on Windows. + * [224539] Fixed linkClicked() emitted only once for local anchor URLs. + * [225062] Fixed links do not work for QWebView embedded in QGraphicsScene. + * [227053] Fixed problem with percent encoded URLs. + * [230175] Fixed video rendering when embedded in Graphics View. + * [235270] Showed module name when plugin loading fails. + * [238330] Prevented multiple instantiation of native widget plugin. + * [238391] Prevented crash when printing to file is cancelled. + * [238662] Fixed function keys are not mapped. + * [241050] Implemented proper painting of CSS gradient. + * [241144] Ensured proper actions for some web action types. + * [241239] Ensured plugins are not loaded when disabled. + * [231301] Fixed an issue on Windows mobile when switching between input + modes. + +- Q3ButtonGroup + * [238902] Q3ButtonGroup now looks for children recursively rather than + just the direct children like it did in Qt 3. + * [200764] Fixed insertion of buttons with IDs in arbitrary order. + +- Q3FileDialog + * [230979] Fixed a crash after a resize and drag on scroll bars. + +- Q3MainWindow + * [240766] Crash while resizing the window while updating layouts. + +- Q3ListView + * [225648] Fixes infinite update. + +- Q3ProgressBar + * [132254] Fixed incorrect painting when totalSteps = 0. + * [231137] Fixes progress bar disappearing if you set a style sheet to the + application. + +- StyleSheets + * [224095] Fixed white space inside palette(). + * Fixed setting style on the application may change the appearance of some + widgets. + * [209123] Fixed Stylesheets causing unnecessary paint events on + enterEvent() and leaveEvent(). + * [209123] Fixed setting gradient background to custom widget. + +- QXmlQuery + * [223539] Summary: "node" and other typekind keywords are not allowed as + an element name when part of for loop. + +- QXmlStreamReader + * [207024] Added the QXmlStreamAttribute::hasAttribute() function. + * [231516] Regression: QXmlStreamWriter produces garbage in "version" + attribute of XMLDeclaration. + +**************************************************************************** +* Examples and demos * +**************************************************************************** + +- Pad Navigator example + * [236416] Provide a minimum window size for this example. + * [208616] No longer builds in console mode on Windows. + +- Diagram Scene example + * [244996] Fix crash when changing the font of a text item and then + select other items. + +**************************************************************************** +* Database Drivers * +**************************************************************************** + +- Interbase driver + +- MySQL driver + +**************************************************************************** +* QTestLib * +**************************************************************************** + + - QTestLib now supports writing benchmarks. + - Fixed an issue where tests returned exit code 0, even though tests + failed in some rare cases. + +**************************************************************************** +* Platform Specific Changes * +**************************************************************************** + +Unix + * Made the iconv-based QTextCodec class (the "System" codec on + Unix systems that support it) stateful. So it's now possible to + feed incomplete multibyte sequences to the toUnicode function, + as well as the first character in a UTF-16 surrogate pair. + +X11 + * Added a QGtkStyle to integrate with GTK+ based desktop environments. + * If font config is used the default font-substitutions will no longer be + used instead we rely on fontconfig to determine font substitutions as + required. + * Improved support for KDE4 desktop settings. + * [214071] Improved support for custom freedesktop icon themes. + * [195256] Use FreeType's subpixel filtering if available, thus honoring + Font Config's LCD filter settings. + * Added supported for XFIXES X11 extension for proper clipboard + support when non-Qt application owns the clipboard. + * Icon support for top level windows (_NET_WM_ICON) was improved + to support several icons with different sizes. + * [211240] In some cases QFileSystemWatcher didn't notify about + files that were moved over another files. + * [238743] Added support for the _NET_SYSTEM_TRAY_VISUAL property + to use the same visual the system tray manager asks us to use. + * [229593] Fix font matching with old fontconfig versions. + * [167873] Proper event compression for mouse events when using tablets. + * [208181] Fix averageCharWidth to be consistent for y!=x ppem + * [229070] Fix QPrintDialog assertion + * [211678] Fixed a problem with drawing a QPixmaps on different X11 + screens. + * [221362] Fixed a problem where pixmaps only appeared on the first page + in a print preview. + * [232666] Fixed a problem with custom page sizes for CUPS printers. + * [228770] Fixed a problem that caused the .ps and .pdf filename + extensions + to not update in the CUPS printer dialog when printing to file. + * [230372] Fixed a problem where the number of copies set on a QPrinter + object wasn't picked up and updated properly in a QPrintDialog. + +Windows + * Cleartype rendering was previously supported onto QImages with + an ARGB32 channel. For performance reasons, cleartype is now + only supported on opaque images using the RGB32 or + ARGB32_Premultipled format. Widget and pixmap rendering is + unchanged + * [175075] Antialiased font rendering quality has been greatly improved + by taking gamma correction into account. We should now match the native + Windows font rendering better, and the fonts look better in general when + drawing fonts on different backgrounds. + * [221132] Fixed a problem with System Tray menu visibility. + * [221653] Fixed a problem incorrectly causing a Task Bar status change. + * [202890] Improved platform consistency with spacing in menus. + * [157323] QCombobox now slides to open on relevant platforms. + * [237067] Calling showMessage on QSystemTrayIcon with empty arguments + now hides the current message. + * [145612] Setting an object name for a QThread sets the name that + is visible in the debugger for more easy debugging + multi-threaded application. + * [216664] QLocale now follows the current system locale when the + user changes it in the Windows Control Panel. + * [223921] Fix writing system detection of TrueType fonts added + via a QByteArray in QFontDatabase::addApplicationFont on Windows. + * [205455] 'mailto:' links works properly with QDesktopServices::openUrl(). + * [205516] standardPalette() now returns the system palette for XP and + Vista styles. + * [207506] Fixed an issue which switches the alignment for input widgets + on Vista. + * [223951] Added support for VARIANT with IDispatch in ActiveQt. + * [224910] Fixed a crash when using the Hierarchy ActiveQt example. + * [201223] 'dumpcpp' now prepends the 'classname_' to resolve conflicts. + * [198556] QAxServer registering now takes care of '.' before MIME + extension. + * [223973] Fixed a deadlock in QLocalSocket. + * [193077] Fixed activation of ActiveQt widgets in MFC MDI applications. + * [238273] Fixed a crash while editing QTableView using japanese IME. + * [238672] Fixed a crash when deleting a widget while dragging. + * [241901] ActiveQt now supports [out VARIANT*] parameters. + * Fix a GDI object leak on the qfileiconprovider. + * [200269] Application and systray icons on Windows that had an alpha + channel were not drawn correctly. + * [239558] Fix a possible crash when reading XPM data containing trigraphs + with the Microsoft compilers. + * [204440] Fixed a problem with software rendering contexts on Windows, + which might have caused rendering errors due to to unresolved extension + pointers. + * [232263] Fixed a problem with binding textures to a software context + under Windows. + * [238715] Fixed a problem with alpha-blended cursors under Windows. + * [227297] and [232666] Fixed some problems with custom paper + sizes under Windows. + * [217259] The default printer wasn't correcly detected with some versions + of Windows. + * [212886] Fixed a problem with network printers not being listed by + the QPrinterInfo::availablePrinters() function under Windows. + * [205985] Fixed a problem with reusing a QPrinter object to print several + jobs with the Microsoft XPS printer driver. + * [196281] Fixed QPrinter::setPrintRange() to work under Windows. + +Windows CE + * Support for QLocalSocket and QLocalServer added. + * QtWebKit and Phonon are now supported. + * One can mark a widget with the attribute WA_ExpectsKeyboardInput + to automatically display / hide the standard input panel on focus + events. + * [223523] Reimplementations of standard library functions filled the + global namespace causing problems when linking statically to other third + party libraries using the same attempt. + * Support for using OpenSSL with Qt on Windows CE + +Mac OS X + * Added the macdeployqt tool that simplifies application deployment. + * Improved support of widget stylesheet in Mac. + * [218980] - Stacking order of windows and dialogs is fixed, such that + dialogs always floats above normal windows, even when the dialog is told + to behave as a window. + * [219844] - A crash that occurred when using the search buttons on a + native file dialog is fixed. + * [225705] - FileDialog filters not displaying correctly is fixed. + * [239155] - Pop-ups will now close when clicking on a window other than + the modal window that opened the pop-up. + * [210912] - Show event not sent when reshowing a window from minimized + state is fixed. + * [228017] - QMenu will now close when expanding a system menu. + * Added support for Qt to use Cocoa as its backend instead of Carbon. This + is primarily for 64-bit applications, but is also available for 32-bit + frameworks as well. 32-bit is still Carbon by default. Passing a 64-bit + architecture or -cocoa on the command-line will build Qt against Cocoa. + Using Cocoa requires Mac OS X 10.5 (or higher) and cannot be used with + the -static nor -no-frameworks option. The define QT_MAC_USE_COCOA is + available when Qt is built against Cocoa. + * Fix a bug that would prevent a window that had been maximized via + setMaximized() to go back to normal size when clicking on the window's + maximize button. + * Added QMacCocoaViewContainer for embedding Cocoa (NSView) controls into + a Qt hierarchy. This feature works for either Carbon or Cocoa, but + requires Mac OS X 10.5 or greater. + * Added QMacNativeWidget for embedding Qt widgets into non-Qt windows + (Carbon or Cocoa). + * Added MacWindowToolBarButtonHint for controlling whether or not the + toolbar button is shown in Qt windows. + * QEvents posted via QEventLoop::postEvent() are now treated as a standard + event loop source, like timers and normal input events. This means that + is should no longer be necessary to run a busy loop to sendPostedEvents() + when QApplication is not the main event loop (e.g. when using Qt in a + plugin). + * [239646] Shortcuts for sub-menu are now disabled when the menu item is + disabled. + * [241434] Honor the LSBackgroundOnly attribute if it exists in the + application's Info.plist. + * [239908] More robustness when encountering different types in reading + LSUIElement value. + * [234742] Add support Qt::XButton1 and Qt::XButton2. + * [236203] Much better support for loading multiple Qt's with different + namespaces. + * Add Qt::AA_MacPluginApplication that allows bypassing some native menu + bar initialization that is usually not desired when running Qt in a + plugin. + * [205297] Applications Dialogs are now marked as application modal in + Carbon. + * Tooltip base is now set correctly in the application palette. + * [222912] [241603] Qt applications no longer reset their palette back to + the system palette on every application activate. Only if the values + from the system are different from the last time. This should result in + custom palette colors/brushes being kept across application activations. + * [211758] Fixed a clipping problem when printing multiple pages on a Mac + OS X printer. + * [212884] Fixed a crash when printing images on Mac OS X. + * [219877] Fixed a problem with a QPrinter object not being valid after + setting the output format to PDF or PostScript. + * [229406] Fixed crash when display mirroring gets enabled. + * [189588] Fixed a bug where QColorDialog::getColor(...) always returned a + valid color. + +Qt for Embedded Linux + - Screen drivers + * The SVGAlib driver is no longer supported, due to architectural changes. + * [235785] Detect VGA16 video mode and warn that it is not supported. + + - Mouse and keyboard drivers + * [243374] Fixed bug where PC mouse driver could not be loaded when + configured as loadable plugins. + * Added Linux Input Subsystem mouse and keypad drivers + + - General fixes + * [242922] Run as server by default when compiled with the + QT_NO_QWS_MULTIPROCESS macro defined. + * Fixed bugs where wrong cursor would be shown in some cases. + * Respect min/max size on initial show also for windows without a layout. + * Fixed loading of font plugins when QT_NO_FREETYPE is defined. + * Autodetect PowerPC in configure. + * Add support for precompiled headers. + +**************************************************************************** +* Compiler Specific Changes * +**************************************************************************** + +**************************************************************************** +* Tools * +**************************************************************************** + +- Build System + * [218795] add support for -nomake configure option on Windows to + exclude build parts like on other platforms + * The -tablet configure option on X11 was renamed to -xinput + * [136723] Have moc issue a warning if a Q_PROPERTY declaration does not + contain a READ accessor function. + * [188529] Fixed bug that caused moc to get stuck in an infinite loop if + two files included eachother and the include path had the prefix "./". + * [203379] Changed moc code generator so that lint no longer reports + problems with the generated code. + * [210879] moc no longer generates any implementation for pure virtual + signals. + * [234909] Fixed bug that caused moc to treat /*/ as a full C comment. + +- Assistant + +- Designer + * Added filter widgets in Widget Box and Property Editor. + * Added layout state display to Object Inspector. + * Enabled changing the layout type of laid-out containers. + * Added handling of spanning QFormLayout columns. + * Added convenience dialog to quickly populate QFormLayouts. + * Added support for embedded device design profiles. + * Changed the selection modifiers to comply to standards; enabled + rectangle selection using the middle mouse button; added + shift-click-modifier to cycle parents when selecting. + * Added "translatable" flag and disambiguation comment to string + properties. + * Added attribute editors to item-based widgets. + * Changed QUiLoader to use QXmlStreamReader instead of QDom. + * Ui files with unknown elements are now rejected. + * [123592] While dropping a dock widget a main window - make the dock + "docked". + * [126269] Added the ability to morph widgets into compatible widgets. + * [126997] Added support for QButtonGroup. + * [145813] Added a listing function to obtain the available layouts to + QUiLoader. + * [155837] Added support for QWizard. + * [164520] Added automatic detection of changes to the qrc resource files + from external sources. + * [166501] Added "translatable" checkbox to string properties making it + possible to exclude it from the translation. + * [171900] Indicate Qt 3 compatibility signals and slots using a different + color. + * [173873] Position pasted widgets at mouse position if possible. + * [183637] Introduced Widget Box "Icon view" mode to reduce scrolling, + available via context menu. + * [183671] Added automatic retranslation upon language change of UIs + loaded via QUiLoader. + * [185283] Added incremental search facility to Object Inspector. + * [191789] Added pkgconfig-Files for Qt Designer libraries. + * [198414] Enabled promotion of QMenu/QMenuBar by object inspector context + menu. + * [201505] Extended QDesignerIntegration::objectNameChanged() to pass on + old object name. + * [202256] Fixed action editor and object inspector not to resize header + when switching forms. + * [211422] Fixed QScrollArea support to handle custom QScrollArea widgets + with internal children. + * [211906] Enable promotion of unmanaged widgets by object inspector + context menu. + * [211962] Enabled widgets to span columns in a QFormLayout. + * [212378] Made the rich text editor dialog, the plain text editor dialog + and the style sheet editor dialog remember their geometry. + * [213481] Fixed a crash while form loading by preventing it from + adding layouts to unknown layout types. + * [219381] Fixed Action editor to reflect changing the shortcut in the + property editor. + * [219382] Added tooltip, checkable and shortcut properties to the action + editor dialog. + * [219405] Added support for the stretch and minimum size properties of + QBoxLayout and QGridLayout. + * [219492] Added an icon preview to the resource image file dialog on X11. + * [220148] Fixed handling of the QMainWindow::unifiedTitleAndToolBarOnMac + property. + * [223114] Fixed a crash on removing a dynamic QUrl property. + * [229568] Added Q3ComboBox. + * [230818] Fixed a bug which caused duplicate names to occur when + copying & pasting spacers. + * [233403] Fixed a painting bug which caused red line layout markers to + disappear depending on grid settings. + * [233711] Added a warning when saving a container-extension-type + container with unmanaged pages. + * [234222] Fixed a bug which caused the autoFillBackground property to be + reset during Drag and Drop operations. + * [234326] Fixed the QDesignerIntegration::objectNameChanged() signal to + work correctly. + * [236193] Fixed a crash caused by invalid QSizePolicy values resulting + from Qt 3 conversion. + * [238524] Ignore constructor-added items of custom widgets inheriting + QComboBox. + * [238707] Fixed pkgconfig file generation to honour -qt-libinfix. + * [238907] Disabled reordering of Spacers and Layouts causing uic to + warn "<name> isn't a valid widget". + * [232811] Correctly show empty string values in preview. + * [214637] Single click expands/collapses classes in property editor + * [241949] Update the object inspector properly in case of undoing a + reparent widget command. + +- uic + * Ui files with unknown XML elements are now rejected. + * [220796] Added code for adding items to widgets of class Q3ComboBox. + +- uic3 + + * [231911] Fixed the conversion of boolean font attributes. + * [233802] Fixed -extract option on Windows. + * [236193] Fixed the conversion of QSizePolicy's "Ignored" value. + +- Linguist + + - Linguist GUI + + * Much improved form preview tool + * Removed translations column from message index for it being useless. + * Phrasebooks have language settings now + * [141788] Support translating into multiple languages simultaneously. + * [183210] Whitespace is now visualized + * [182866] Font resizing in translation textedits + * [187765] Support opening files via Drag & Drop + + - Entire Linguist toolchain + + - [201713] Add support for specifying the source language. + + - file formats + + * The .qm files now can be read back by the toolchain, not only Qt. + * Added support for GNU Gettext .po files. + + - Qt's own .ts format + + * New element <extracomment> to store purely informative comments + * New element <translatorcomment> to store comments from translators + * New element wildcard <extra:*> to support user extensions + * New elements <oldsource> and <oldcomment> to store values from + before the last heuristic merge by lupdate + + - lupdate + + * Parse //: and /*: */ comments as extra comments for translations. + * Added support for new QT_TR*() macros. + * Added support for QtScript. + * Better error reporting. + * More accurate processing of .pro files. + * Added options -disable-heuristic, -nosort, -target-language, + -source-language. + * [197391] Support for storing source code references with relative + line numbers or no references at all. Omit line numbers from .ui file + references at all. These reduce the size of patches and avoid merge + conflicts. Option -locations. + * [197818] Add support for UTF-16 encoded sources. + * [209778, 222637] Somewhat improved C++ parser, in particular with + respect to namespaces. + * [218671] Accept Q_DECLARE_TR_FUNCTIONS. + * [212465] Default context is now the empty string, not "@default". + This codifies what previously was an intermittent bug. + * [220459] Collect all source code references for each message. + + - lconvert + + * New tool for converting between file formats and filtering file contents. + +- configure + +- qtconfig + * Added option to set style and palette settings back to system defaults. + +- qt3to4 + * [218928] [219127] [219132] [219482] Misc. updates to the porting replacement rules. + +**************************************************************************** +* Plugins * +**************************************************************************** + +- QTiffPlugin +- QSvgIconEngine + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + +- Event filters + +- QFileDialog + On Mac, native dialogs are now used when calling show, open, or exec + on a QFileDialog, QColorDialog, QPrintDialog, or QFontDialog (i.e not + only when using the static functions) + + QFileDialog/QFileSystemModel always return Qt separators ("/") + regardless of the platform. It can still handle native separators for + Windows. To convert the Qt separators to native separators use + QDir::toNativeSeparators(). + +- QGraphicsTextItem + Tab input is send to the document by default, inserting a <tab> + character. You can get the old behavior of switching Tab focus by + setting setTabChangesFocus(true) (QGraphicsTextItem's Tab handling now + behaves identically to QTextEdit and QTextBrowser). + +- QGraphicsView + QGraphicsView now propagates Qt::Key_Tab and Qt::Key_Backtab to the + scene, which sends this to the items. Similar to how QWidget works, + this event is caught in QGraphicsItem::sceneEvent() and + QGraphicsWidget::event() to handle tab input. Tab input is also + proxied to embedded widgets. This allows and item or widget to handle + Tab keys (e.g., text input). + +- QLocale + The locale database was updated to the Unicode CLDR database + version 1.6.1 + + When the system locale is changed, the LocaleChange event will + be sent to all widgets that don't have a locale explicitely + set. + +- QWebPage + Starting with Qt 4.5, the base brush is used for the default + background color of the web page. Before, it was the background + brush. + +- QWidget + Font and palette settings assigned to QWidget directly take + precedence over application fonts and palettes. + + Focus policies that are set on a widget are now propagated to + a focus proxy widget if there is one. + + Windows with fixed size (that are set with QWidget::setFixedSize() + function or Qt::MSWindowsFixedSizeDialogHint window hint) might + not have a maximize button on the titlebar. + + The behaviour of the window hints was changed to follow the + documentation. When the Qt::CustomizeWindowHint is set, the + window will not have a titlebar, system menu and titlebar + buttons unless the corresponding window hints were explicitely + set. + + Setting Qt::WA_PaintOnScreen no longer has any effect on + normal widgets. The flag can still be used in conjuction with + reimplementing paintEngine() to return 0 so that GDI or + DirectX can be used, as previously documented. -- cgit v1.2.3