aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/doc/src/modules/legacymodules.qdoc
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/doc/src/modules/legacymodules.qdoc')
-rw-r--r--src/qml/doc/src/modules/legacymodules.qdoc83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/qml/doc/src/modules/legacymodules.qdoc b/src/qml/doc/src/modules/legacymodules.qdoc
new file mode 100644
index 0000000000..40b9f953e4
--- /dev/null
+++ b/src/qml/doc/src/modules/legacymodules.qdoc
@@ -0,0 +1,83 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** GNU Free Documentation License
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of
+** this file.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms
+** and conditions contained in a signed written agreement between you
+** and Nokia.
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+\page qtqml-modules-legacymodules.html
+\title Legacy Modules
+\brief Description of legacy QML modules
+
+Legacy modules are modules whose specification \c qmldir file does not contain
+a module identifier directive. A legacy module may be either installed into
+the QML import path (as an installed legacy module) or imported by clients with
+a relative import (as a located legacy module). Clients are advised to avoid
+using legacy modules if possible. Module developers should ensure they create
+identified modules and not legacy modules.
+
+\section1 Installed Legacy Modules
+
+An installed, non-identified module is automatically given an identifier by the
+QML engine. This implicitly defined identifier is equal to the install path of
+the module (relative to the QML import path) where directory-separator
+characters are replaced with period characters.
+
+A non-identified module which is installed into the QML import path has the
+following semantics:
+\list
+\li it may be imported by clients via the implicit module identifier
+\li clients must specify a version when importing the module
+\li conflicting type names are resolved arbitrarily by the QML engine, and the
+ way in which conflicts are resolved is not guaranteed to stay the same
+ between different versions of QML
+\li other legacy modules may modify or override type definitions provided by
+ the installed legacy module
+\endlist
+
+\section1 Located Legacy Modules
+
+A non-identified module which is imported via a relative directory path
+import statement is loaded by the engine as a located legacy module. The
+following semantics apply to located legacy modules:
+\list
+\li it may be imported by clients via a relative import path
+\li it is not mandatory for clients to specify a version when importing the
+ module
+\li if no import version is supplied by the client in the import statement,
+ no guarantees are given by the QML engine about which version of the
+ definition of a given type name will be imported
+\li conflicting type names are resolved arbitrarily by the QML engine, and the
+ way in which conflicts are resolved is not guaranteed to stay the same
+ between different versions of QML
+\li other legacy modules may modify or override type definitions provided by
+ the located legacy module
+\endlist
+
+A located legacy module may reside on the the local file system or on the
+network and can be referred to by a URL that specifies the file system path or
+network URL.
+
+*/
+