Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qqmlcontext.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// Qt-Security score:significant
4
5#ifndef QQMLCONTEXT_H
6#define QQMLCONTEXT_H
7
8#include <QtCore/qurl.h>
9#include <QtCore/qobject.h>
10#include <QtCore/qlist.h>
11#include <QtQml/qjsvalue.h>
12#include <QtCore/qmetatype.h>
13#include <QtCore/qvariant.h>
14
16
17
18class QString;
19class QQmlEngine;
21class QQmlCompositeTypeData;
22class QQmlContextData;
23
24class Q_QML_EXPORT QQmlContext : public QObject
25{
26 Q_OBJECT
27 Q_DECLARE_PRIVATE(QQmlContext)
28
29public:
30 struct PropertyPair { QString name; QVariant value; };
31
32 QQmlContext(QQmlEngine *parent, QObject *objParent = nullptr);
33 QQmlContext(QQmlContext *parent, QObject *objParent = nullptr);
34 ~QQmlContext() override;
35
36 bool isValid() const;
37
38 QQmlEngine *engine() const;
39 QQmlContext *parentContext() const;
40 QList<QQmlContext *> childContexts() const;
41
42 QObject *contextObject() const;
43 void setContextObject(QObject *);
44
45 QVariant contextProperty(const QString &) const;
46 void setContextProperty(const QString &, QObject *);
47 void setContextProperty(const QString &, const QVariant &);
48 void setContextProperties(const QList<PropertyPair> &properties);
49
50 QString nameForObject(const QObject *) const;
51 QObject *objectForName(const QString &) const;
52
53 QObject *findObjectRecursively(const QString &id) const;
54 QList<QObject *> findObjectsRecursively(const QString &id) const;
55
56 QUrl resolvedUrl(const QUrl &) const;
57
58 void setBaseUrl(const QUrl &);
59 QUrl baseUrl() const;
60
61 QJSValue importedScript(const QString &name) const;
62
63private:
64 friend class QQmlEngine;
65 friend class QQmlEnginePrivate;
66 friend class QQmlExpression;
67 friend class QQmlExpressionPrivate;
68 friend class QQmlComponent;
69 friend class QQmlComponentPrivate;
70 friend class QQmlScriptPrivate;
71 friend class QQmlContextData;
72 QQmlContext(QQmlContextPrivate &dd, QObject *parent = nullptr);
73 QQmlContext(QQmlEngine *, bool);
74 Q_DISABLE_COPY(QQmlContext)
75};
76QT_END_NAMESPACE
77
78#endif // QQMLCONTEXT_H
friend class QJSEngine
\inmodule QtCore
Definition qobject.h:106
The QQmlContext class defines a context within a QML engine.
Definition qqmlcontext.h:25
The QQmlEngine class provides an environment for instantiating QML components.
Definition qqmlengine.h:58
void updateCurrentTime(int) override
int duration() const override
QQuickBoundaryReturnJob(QQuickBoundaryRulePrivate *br, qreal to)
void updateState(QAbstractAnimationJob::State newState, QAbstractAnimationJob::State oldState) override
QQuickBoundaryRulePrivate * boundaryRule
qreal easedOvershoot(qreal overshootingValue)
QQuickBoundaryReturnJob * returnAnimationJob
Combined button and popup list for selecting options.
int qmlRegisterCustomType(const char *uri, int versionMajor, int versionMinor, const char *qmlName, QQmlCustomParser *parser)
Definition qqml.h:548
#define QML_DECLARE_TYPE_HASMETATYPE(TYPE)
Definition qqml.h:24
Q_QML_EXPORT void qmlRegisterModuleImport(const char *uri, int moduleMajor, const char *import, int importMajor=QQmlModuleImportLatest, int importMinor=QQmlModuleImportLatest)
QQmlCustomParser * qmlCreateCustomParser()
Definition qqmlprivate.h:92
void qmlRegisterEnum(const char *name)
Definition qqml.h:1000
Q_QML_EXPORT bool qmlProtectModule(const char *uri, int majVersion)
int qmlRegisterType(const char *uri, int versionMajor, int versionMinor, const char *qmlName)
Definition qqml.h:301
void qmlRegisterAnonymousTypesAndRevisions(const char *uri, int versionMajor)
Definition qqml.h:129
void qmlRegisterNamespaceAndRevisions(const QMetaObject *metaObject, const char *uri, int versionMajor, QList< int > *qmlTypeIds=nullptr, const QMetaObject *classInfoMetaObject=nullptr)
Definition qqml.h:990
int qmlRegisterCustomExtendedType(const char *uri, int versionMajor, int versionMinor, const char *qmlName, QQmlCustomParser *parser)
Definition qqml.h:585
#define QML_DECLARE_TYPE(TYPE)
Definition qqml.h:20
Q_QML_EXPORT void qmlExecuteDeferred(QObject *)
\inmodule QtQml \title Functions to register C++ types to QML
Definition qqml.cpp:60
int qmlRegisterType(const char *uri, int versionMajor, int versionMinor, const char *qmlName)
Definition qqml.h:337
void qmlRegisterNamespaceAndRevisions(const QMetaObject *metaObject, const char *uri, int versionMajor, QList< int > *qmlTypeIds, const QMetaObject *classInfoMetaObject, const QMetaObject *extensionMetaObject)
Definition qqml.h:949
void qmlRegisterTypesAndRevisions(const char *uri, int versionMajor, QList< int > *qmlTypeIds)
Definition qqml.h:936
int qmlRegisterCustomType(const char *uri, int versionMajor, int versionMinor, const char *qmlName, QQmlCustomParser *parser)
Definition qqml.h:511
int qmlRegisterExtendedType(const char *uri, int versionMajor)
Definition qqml.h:405
QQmlModuleImportSpecialVersions
Definition qqml.h:648
@ QQmlModuleImportLatest
Definition qqml.h:650
@ QQmlModuleImportModuleAny
Definition qqml.h:649
@ QQmlModuleImportAuto
Definition qqml.h:651
int qmlRegisterExtendedType(const char *uri, int versionMajor, int versionMinor, const char *qmlName)
Definition qqml.h:446
int qmlRegisterRevision(const char *uri, int versionMajor, int versionMinor)
Definition qqml.h:373
int qmlRegisterAnonymousType(const char *uri, int versionMajor)
Definition qqml.h:91
Q_QML_EXPORT void qmlUnregisterModuleImport(const char *uri, int moduleMajor, const char *import, int importMajor=QQmlModuleImportLatest, int importMinor=QQmlModuleImportLatest)
QObject * qmlAttachedPropertiesObject(const QObject *obj, bool create=true)
Definition qqml.h:664
int qmlRegisterAnonymousType(const char *uri, int versionMajor)
Definition qqml.h:57
Q_QML_EXPORT void qmlRegisterModule(const char *uri, int versionMajor, int versionMinor)
int qmlRegisterInterface(const char *uri, int versionMajor)
Definition qqml.h:493
QDebug Q_QML_EXPORT operator<<(QDebug debug, const QQmlError &error)
static void registerTypeAndRevisions(const char *uri, int versionMajor, QList< int > *qmlTypeIds, const QMetaObject *extension)
Definition qqml.h:807