Revision control

++ 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. Qt uses qmake in its build system 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:<defaultcodec> (rather than
++ <codec>) 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.
++
++