Trolltech has released Qt 4.0 both under commercial and GPL licenses for X11, Mac OS X and MS Windows. It is the first time that a MS Windows GPL edition is available. To celebrate the release Trolltech employees have created a song and a music video (Bittorrent download, Ogg Theora version). Read the Qt 4 Overview and the online Qt Reference Documentation for more information. You can download Qt from ftp.trolltech.com or from one of its mirrors. Work on KDE 4 has already started with making a development branch of KDE compile and run with Qt 4.
Unlike previous Qt releases, Qt 4 is a collection of smaller libraries which also allowed the restructuring of commercial offers into Qt Console for non-GUI development, Qt Desktop Light replacing the Professional and Qt Desktop comparable to Enterprise editions.
There are five new technologies that are new within Qt 4:
- Tulip, a new set of template container classes.
- Interview, a model/view architecture for item views.
- Arthur, the Qt 4 painting framework.
- Scribe, the Unicode text renderer with a public API for performing low-level text layout.
- Mainwindow, a modern action-based mainwindow, toolbar, menu, and docking architecture.
In addition, the following modules have been significantly improved since Qt 3:
- A fully cross-platform accessibility module, with support for the emerging SP-API Unix standard in addition to Microsoft and Mac Accessibility.
- The SQL module, which is now based on the Interview model/view framework.
- The network module, with better support for UDP and synchronous sockets.
- The style API, which is now decoupled from the widgets, meaning that you can draw any user interface element on any device (widget, pixmap, etc.).
- Enhanced thread support, with signal-slot connections across threads and per-thread event loops.
- A new resource system for embedding images and other resource files into the application executable.
The Qt Designer user interface design tool has been rewritten as a collection of interchangeable components. It now features support for MDI and SDI modes and supports custom widgets. The project editor and the code editor have been dropped.
Qt 3 based applications have to be ported to be able to run with Qt 4. A porting guide, a porting tool as well as a Qt3Support library for obsolete classes are provided. Trolltech aims to maintain the Qt3Support Library for the lifetime of the Qt 4 series, and will also support the Qt 3 series for a minimum of two years beyond the release of Qt 4.
Some known issues are listed which are expected to be fixed in upcoming maintenance releases of Qt 4.0. Qt 4.1 will features certain advanced Qt 3 features rewritten for Qt 4 which are now only available in the Qt 3 support library (eg. Qt 3 canvas, Qt 3 syntax highlighter). It is planned be released late in 2005.