aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/src/declarative/extending.qdoc7
1 files changed, 5 insertions, 2 deletions
diff --git a/doc/src/declarative/extending.qdoc b/doc/src/declarative/extending.qdoc
index e29223da6f..c1c7547ec2 100644
--- a/doc/src/declarative/extending.qdoc
+++ b/doc/src/declarative/extending.qdoc
@@ -123,8 +123,8 @@ a type; see qmlRegisterModuleApi() for more information.
\section1 QML Type Versioning
-In C++ adding a new method or property cannot break old applications.
-In QML, however, new methods and properties can change what a name previously
+In C++ adding a new class, method or property cannot break old applications.
+In QML, however, new elements, methods and properties can change what a name previously
resolved to to within a scope chain.
For example, consider these two QML files
@@ -189,6 +189,9 @@ qmlRegisterType<QCppItem,1>("MyModule", 1, 1, "CppItem")
\c root is only available when MyModule 1.1 is imported.
+For the same reason, new elements introduced in later versions should use the minor version argument of qmlRegisterType.
+
+This feature of the language allows for behavioural changes to be made without breaking existing applications. Consequently QML module authors should always remember to document what changed between minor versions, and QML module users should check that their application still runs correctly before deploying an updated import statement.
\section1 Object and List Property Types