summaryrefslogtreecommitdiffstats
path: root/doc/src/declarative/qdeclarativedebugging.qdoc
blob: 26d3b386cea424dc1132b93795cc15cb1aeb6c8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/****************************************************************************
**
** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial Usage
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in a
** written agreement between you and Nokia.
**
** 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.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
\page qdeclarativedebugging.html
\title Debugging QML

\section1 Logging

\c console.log can be used to print debugging information to the console. For example:

\qml
Rectangle {
    width: 200; height: 200
    MouseArea {
        anchors.fill: parent
        onClicked: console.log("clicked")
    }
}
\endqml

\section1 Debugging Transitions

When a transition doesn't look quite right, it can be helpful to view it in slow
motion to see what is happening more clearly. This functionality is supported
in the \l {QML Viewer} tool: to enable this,
click on the "Debugging" menu, then "Slow Down Animations".


\section1 Debugging module imports

The \c QML_IMPORT_TRACE environment variable can be set to enable debug output
from QML's import loading mechanisms. 

For example, for a simple QML file like this:

\qml
import QtQuick 1.0

Rectangle { width: 100; height: 100 }
\endqml

If you set \c {QML_IMPORT_TRACE=1} before running the \l {QML Viewer}
(or your QML C++ application), you will see output similar to this:

\code
QDeclarativeImportDatabase::addImportPath "/qt-sdk/imports" 
QDeclarativeImportDatabase::addImportPath "/qt-sdk/bin/QMLViewer.app/Contents/MacOS" 
QDeclarativeImportDatabase::addToImport 0x106237370 "." -1.-1 File as ""
QDeclarativeImportDatabase::addToImport 0x106237370 "Qt" 4.7 Library as ""
QDeclarativeImportDatabase::resolveType "Rectangle" = "QDeclarativeRectangle"
\endcode


\section1 Debugging with Qt Creator

\l{http://qt.nokia.com/products/developer-tools}{Qt Creator} provides built-in
support for QML debugging. QML projects and standalone C++ applications that
utilize QML can be debugged on desktops as well as on remote devices.
For more information, see the Qt Creator Manual.

*/