Qt
6.x
The Qt SDK
Loading...
Searching...
No Matches
qqmlenginedebugservice.h
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4
#ifndef QQMLENGINEDEBUGSERVICE_H
5
#define QQMLENGINEDEBUGSERVICE_H
6
7
//
8
// W A R N I N G
9
// -------------
10
//
11
// This file is not part of the Qt API. It exists purely as an
12
// implementation detail. This header file may change from version to
13
// version without notice, or even be removed.
14
//
15
// We mean it.
16
//
17
18
#include <private/qqmldebugservice_p.h>
19
#include <private/qqmldebugserviceinterfaces_p.h>
20
21
#include <QtCore/qurl.h>
22
#include <QtCore/qvariant.h>
23
#include <QtCore/QPointer>
24
25
QT_BEGIN_NAMESPACE
26
27
class
QQmlEngine
;
28
class
QQmlContext
;
29
class
QQmlWatcher
;
30
class
QDataStream
;
31
class
QQmlDebugStatesDelegate
;
32
33
class
QQmlEngineDebugServiceImpl
:
public
QQmlEngineDebugService
34
{
35
Q_OBJECT
36
public
:
37
QQmlEngineDebugServiceImpl
(
QObject
* =
nullptr
);
38
~QQmlEngineDebugServiceImpl
();
39
40
struct
QQmlObjectData
{
41
QUrl
url
;
42
int
lineNumber
;
43
int
columnNumber
;
44
QString
idString
;
45
QString
objectName
;
46
QString
objectType
;
47
int
objectId
;
48
int
contextId
;
49
int
parentId
;
50
};
51
52
struct
QQmlObjectProperty
{
53
enum
Type
{
Unknown
,
Basic
,
Object
,
List
,
SignalProperty
,
Variant
};
54
Type
type
;
55
QString
name
;
56
QVariant
value
;
57
QString
valueTypeName
;
58
QString
binding
;
59
bool
hasNotifySignal
;
60
};
61
62
void
engineAboutToBeAdded
(
QJSEngine
*)
override
;
63
void
engineAboutToBeRemoved
(
QJSEngine
*)
override
;
64
void
objectCreated
(
QJSEngine
*,
QObject
*)
override
;
65
66
QQmlDebugStatesDelegate
*
statesDelegate
()
67
{
68
if
(!m_statesDelegate)
69
m_statesDelegate = createStatesDelegate();
70
return
m_statesDelegate;
71
}
72
73
Q_SIGNALS
:
74
void
scheduleMessage
(
const
QByteArray
&);
75
76
protected
:
77
void
messageReceived
(
const
QByteArray
&)
override
;
78
79
private
:
80
friend
class
QQmlDebuggerServiceFactory
;
81
82
void
processMessage(
const
QByteArray
&msg);
83
void
propertyChanged(
qint32
id
,
qint32
objectId,
const
QMetaProperty
&
property
,
84
const
QVariant
&
value
);
85
86
void
prepareDeferredObjects(
QObject
*);
87
void
buildObjectList(
QDataStream
&,
QQmlContext
*,
88
const
QList
<
QPointer<QObject>
> &instances);
89
void
buildObjectDump(
QDataStream
&,
QObject
*,
bool
,
bool
);
90
void
buildStatesList(
bool
cleanList,
const
QList
<
QPointer<QObject>
> &instances);
91
QQmlObjectData
objectData(
QObject
*);
92
QQmlObjectProperty
propertyData(
QObject
*,
int
);
93
QVariant
valueContents(
QVariant
defaultValue)
const
;
94
bool
setBinding(
int
objectId,
const
QString
&propertyName,
const
QVariant
&expression,
bool
isLiteralValue,
QString
filename =
QString
(),
int
line
= -1,
int
column
= 0);
95
bool
resetBinding(
int
objectId,
const
QString
&propertyName);
96
bool
setMethodBody(
int
objectId,
const
QString
&
method
,
const
QString
&body);
97
void
storeObjectIds(
QObject
*co);
98
QList<QObject *>
objectForLocationInfo(
const
QString
&filename,
int
lineNumber,
99
int
columnNumber);
100
101
QList<QJSEngine *>
m_engines;
102
QQmlWatcher
*m_watch;
103
QQmlDebugStatesDelegate
*m_statesDelegate;
104
};
105
QDataStream
&
operator<<
(
QDataStream
&,
const
QQmlEngineDebugServiceImpl::QQmlObjectData
&);
106
QDataStream
&
operator>>
(
QDataStream
&,
QQmlEngineDebugServiceImpl::QQmlObjectData
&);
107
QDataStream
&
operator<<
(
QDataStream
&,
const
QQmlEngineDebugServiceImpl::QQmlObjectProperty
&);
108
QDataStream
&
operator>>
(
QDataStream
&,
QQmlEngineDebugServiceImpl::QQmlObjectProperty
&);
109
110
QT_END_NAMESPACE
111
112
#endif
// QQMLENGINEDEBUGSERVICE_H
113
QByteArray
\inmodule QtCore
Definition
qbytearray.h:57
QDataStream
\inmodule QtCore\reentrant
Definition
qdatastream.h:30
QJSEngine
The QJSEngine class provides an environment for evaluating JavaScript code.
Definition
qjsengine.h:26
QList
Definition
qlist.h:74
QMetaProperty
\inmodule QtCore
Definition
qmetaobject.h:322
QObject
\inmodule QtCore
Definition
qobject.h:90
QPointer
\inmodule QtCore
Definition
qpointer.h:18
QQmlContext
The QQmlContext class defines a context within a QML engine.
Definition
qqmlcontext.h:25
QQmlDebugStatesDelegate
Definition
qqmldebugstatesdelegate_p.h:27
QQmlDebuggerServiceFactory
Definition
qqmldebuggerservicefactory.h:12
QQmlEngineDebugServiceImpl
Definition
qqmlenginedebugservice.h:34
QQmlEngineDebugServiceImpl::objectCreated
void objectCreated(QJSEngine *, QObject *) override
Definition
qqmlenginedebugservice.cpp:808
QQmlEngineDebugServiceImpl::engineAboutToBeAdded
void engineAboutToBeAdded(QJSEngine *) override
Definition
qqmlenginedebugservice.cpp:790
QQmlEngineDebugServiceImpl::messageReceived
void messageReceived(const QByteArray &) override
Definition
qqmlenginedebugservice.cpp:430
QQmlEngineDebugServiceImpl::scheduleMessage
void scheduleMessage(const QByteArray &)
QQmlEngineDebugServiceImpl::~QQmlEngineDebugServiceImpl
~QQmlEngineDebugServiceImpl()
Definition
qqmlenginedebugservice.cpp:80
QQmlEngineDebugServiceImpl::engineAboutToBeRemoved
void engineAboutToBeRemoved(QJSEngine *) override
Definition
qqmlenginedebugservice.cpp:799
QQmlEngineDebugServiceImpl::statesDelegate
QQmlDebugStatesDelegate * statesDelegate()
Definition
qqmlenginedebugservice.h:66
QQmlEngineDebugService
Definition
qqmldebugserviceinterfaces_p.h:58
QQmlEngine
The QQmlEngine class provides an environment for instantiating QML components.
Definition
qqmlengine.h:57
QQmlWatcher
Definition
qqmlwatcher.h:33
QString
\macro QT_RESTRICTED_CAST_FROM_ASCII
Definition
qstring.h:127
QUrl
\inmodule QtCore
Definition
qurl.h:94
QVariant
\inmodule QtCore
Definition
qvariant.h:64
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qstandardpaths_haiku.cpp:21
QT_END_NAMESPACE
Definition
qsharedpointer.cpp:1545
method
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char * method
Definition
qdbus_symbols_p.h:348
value
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
Definition
qeglstreamconvenience_p.h:46
column
GLenum GLenum GLsizei void GLsizei void * column
Definition
qopenglext.h:2747
operator<<
QDataStream & operator<<(QDataStream &, const QQmlEngineDebugServiceImpl::QQmlObjectData &)
Definition
qqmlenginedebugservice.cpp:85
operator>>
QDataStream & operator>>(QDataStream &, QQmlEngineDebugServiceImpl::QQmlObjectData &)
Definition
qqmlenginedebugservice.cpp:94
Q_OBJECT
#define Q_OBJECT
Definition
qtmetamacros.h:117
Q_SIGNALS
#define Q_SIGNALS
Definition
qtmetamacros.h:45
qint32
int qint32
Definition
qtypes.h:44
property
const char property[13]
Definition
qwizard.cpp:101
line
QString line
Definition
src_corelib_io_qtextstream.cpp:16
QQmlEngineDebugServiceImpl::QQmlObjectData
Definition
qqmlenginedebugservice.h:40
QQmlEngineDebugServiceImpl::QQmlObjectData::lineNumber
int lineNumber
Definition
qqmlenginedebugservice.h:42
QQmlEngineDebugServiceImpl::QQmlObjectData::objectId
int objectId
Definition
qqmlenginedebugservice.h:47
QQmlEngineDebugServiceImpl::QQmlObjectData::columnNumber
int columnNumber
Definition
qqmlenginedebugservice.h:43
QQmlEngineDebugServiceImpl::QQmlObjectData::parentId
int parentId
Definition
qqmlenginedebugservice.h:49
QQmlEngineDebugServiceImpl::QQmlObjectData::url
QUrl url
Definition
qqmlenginedebugservice.h:41
QQmlEngineDebugServiceImpl::QQmlObjectData::contextId
int contextId
Definition
qqmlenginedebugservice.h:48
QQmlEngineDebugServiceImpl::QQmlObjectData::idString
QString idString
Definition
qqmlenginedebugservice.h:44
QQmlEngineDebugServiceImpl::QQmlObjectData::objectName
QString objectName
Definition
qqmlenginedebugservice.h:45
QQmlEngineDebugServiceImpl::QQmlObjectData::objectType
QString objectType
Definition
qqmlenginedebugservice.h:46
QQmlEngineDebugServiceImpl::QQmlObjectProperty
Definition
qqmlenginedebugservice.h:52
QQmlEngineDebugServiceImpl::QQmlObjectProperty::type
Type type
Definition
qqmlenginedebugservice.h:54
QQmlEngineDebugServiceImpl::QQmlObjectProperty::Unknown
@ Unknown
Definition
qqmlenginedebugservice.h:53
QQmlEngineDebugServiceImpl::QQmlObjectProperty::Object
@ Object
Definition
qqmlenginedebugservice.h:53
QQmlEngineDebugServiceImpl::QQmlObjectProperty::List
@ List
Definition
qqmlenginedebugservice.h:53
QQmlEngineDebugServiceImpl::QQmlObjectProperty::SignalProperty
@ SignalProperty
Definition
qqmlenginedebugservice.h:53
QQmlEngineDebugServiceImpl::QQmlObjectProperty::Variant
@ Variant
Definition
qqmlenginedebugservice.h:53
QQmlEngineDebugServiceImpl::QQmlObjectProperty::Basic
@ Basic
Definition
qqmlenginedebugservice.h:53
QQmlEngineDebugServiceImpl::QQmlObjectProperty::name
QString name
Definition
qqmlenginedebugservice.h:55
QQmlEngineDebugServiceImpl::QQmlObjectProperty::value
QVariant value
Definition
qqmlenginedebugservice.h:56
QQmlEngineDebugServiceImpl::QQmlObjectProperty::binding
QString binding
Definition
qqmlenginedebugservice.h:58
QQmlEngineDebugServiceImpl::QQmlObjectProperty::hasNotifySignal
bool hasNotifySignal
Definition
qqmlenginedebugservice.h:59
QQmlEngineDebugServiceImpl::QQmlObjectProperty::valueTypeName
QString valueTypeName
Definition
qqmlenginedebugservice.h:57
Type
Definition
moc.h:24
qtdeclarative
src
plugins
qmltooling
qmldbg_debugger
qqmlenginedebugservice.h
Generated by
1.9.7