qt5base-lts/dist
João Abecasis 7bbe79fe5f Drop file-engine abstraction from public API
This abstraction imposed serious performance penalties and is being
dropped from the public API.

In particular, by allowing file names to be arbitrarily hijacked by
different file engines, and requiring engines to be instantiated in
order to decide, it imposed unnecessary overhead on all file operations.

Another flaw in the design with direct impact on performance is how
engines have no way to provide (or retain) additional information
obtained when querying the filesystem. In many places this has meant
repeated operations on the file system, where useful information is
immediately discarded to be queried again subsequently.

For Qt 4.8 a major refactoring of the code base took place to allow
bypassing the file-engine abstraction in select places, with
considerable performance gains observed. In Qt 5 it is expected we'll be
able to take this further, reaping even more benefits, but the
abstraction has to go.

[Dropping this now does not preclude that virtual file systems make an
appearance in Qt at a later point in Qt 5's lifecycle. Hopefully with a
new and improved abstraction.]

Forward declarations for QFileExtension(Result) were dropped, as the
classes were never used or defined.

Tests using "internalized" classes will only fully run on developer
builds. QFSFileEngine was removed altogether from exception safety test,
as it isn't its intent to test internal API.

Change-Id: Ie910e6c2628be202ea9e05366b091d6d529b246b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-22 00:07:31 +01:00
..
changes-0.92 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-0.93 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-0.94 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-0.95 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-0.96 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-0.98 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-0.99 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.30 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.31 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980327 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980406 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980414 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980506 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980529 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980611 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980616 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980623 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980625 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.39-19980706 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.40 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.41 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-1.42 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.0.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.1.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.1.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.2.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.2.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.2.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.00 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.00beta1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.00beta2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-2.00beta3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0-beta1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0-beta2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0-beta3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0-beta4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0-beta5 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.0-beta6 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.0.7 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.1.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.1.0-b1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.1.0-b2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.1.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.1.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.2.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.2.0-b1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.2.0-b2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.2.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.2.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.2.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.0-b1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.5 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.6 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.7 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-3.3.8 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.0.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.0-rc1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.5 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.1.11 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.2.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.2.0-tp1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.2.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.2.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.2.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.2CEping Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3.4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3.5 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3CE-tp1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3CEconan Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3CEkicker Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.3CEsweetandsour Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.4.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.4.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.4.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.4.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.4.4-temple Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.0-garden Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.2-tower Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.5.4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.6.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.6.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.6.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.6.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.6.4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.7.0 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.7.1 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.7.2 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.7.3 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.7.4 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
changes-4.8.0 Update changelog with Accessibility fixes. 2011-08-18 15:51:13 +02:00
changes-5.0.0 Drop file-engine abstraction from public API 2012-02-22 00:07:31 +01:00
README Remove references to demos from docs. 2011-07-05 19:57:54 +02:00

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://qt.nokia.com/doc/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://qt.nokia.com/doc/latest/porting4.html.


INSTALLING Qt

If you have a source package (a .tar.gz, or .zip file), follow the
instructions in the INSTALL file.

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.

For Mac OS X Carbon, the binary package requires Mac OS X 10.4 (Tiger) or
later and GCC 4.0.1 to develop applications. Its applications will run
on Mac OS X 10.4 and above.

For Mac OS X Cocoa, the binary package requires Mac OS X 10.5 (Leopard) or
later and GCC 4.0.1 to develop applications.  Its applications will run
on Mac OS X 10.5 and above.

If you want to install the precompiled binary package for Symbian,
follow these instructions:
http://qt.nokia.com/doc/%SHORTVERSION%/install-symbian-installer.html


EXAMPLES

Once Qt is installed, we suggest that you take a look at the examples
to see Qt in action.

For desktop computers, run the Qt Examples by opening them in Qt Creator.

For embedded devices, launch the Qt 'fluidlauncher' example, either through
the platforms filebrowser or the built in menu system.


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://qt.nokia.com/doc/.


SUPPORTED PLATFORMS

For a complete list of supported platforms, see
http://qt.nokia.com/doc/%SHORTVERSION%/supported-platforms.html.


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://qt.nokia.com/doc/%SHORTVERSION%/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.  The Qt bug tracking system is open to the
public at http://bugreports.qt.nokia.com/.

Before reporting a bug, please use the bug-tracker's search functions
and consult http://qt.nokia.com/developer/faqs/ 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, or to the autotests that
are available in the public source repository on http://qt.gitorious.org/.


Qt is a trademark of Nokia Corporation and/or its subsidiary(-ies).