Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qquickdeferredexecute_p_p.h
Go to the documentation of this file.
1
// Copyright (C) 2017 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 reason:default
4
5
#
ifndef
QQUICKDEFERREDEXECUTE_P_P_H
6
#
define
QQUICKDEFERREDEXECUTE_P_P_H
7
8
//
9
// W A R N I N G
10
// -------------
11
//
12
// This file is not part of the Qt API. It exists purely as an
13
// implementation detail. This header file may change from version to
14
// version without notice, or even be removed.
15
//
16
// We mean it.
17
//
18
19
#
include
<
QtCore
/
qglobal
.
h
>
20
#
include
<
QtQuickTemplates2
/
private
/
qquickdeferredpointer_p_p
.
h
>
21
#
include
<
QtQuickTemplates2
/
private
/
qtquicktemplates2global_p
.
h
>
22
23
#
include
<
QtQml
/
private
/
qqmlvme_p
.
h
>
24
25
QT_BEGIN_NAMESPACE
26
27
class
QString;
28
class
QObject;
29
30
namespace
QtQuickPrivate
{
31
Q_QUICKTEMPLATES2_EXPORT
void
beginDeferred
(QObject *object,
const
QString &property,
32
QQuickUntypedDeferredPointer *delegate,
bool
isOwnState, QQmlEngine *engine =
nullptr
);
33
Q_QUICKTEMPLATES2_EXPORT
void
cancelDeferred
(QObject *object,
const
QString &property);
34
Q_QUICKTEMPLATES2_EXPORT
void
completeDeferred
(QObject *object,
const
QString &property,
35
QQuickUntypedDeferredPointer *delegate, QQmlEngine *engine =
nullptr
);
36
}
37
38
template
<
typename
T>
39
void
quickBeginDeferred
(QObject *object,
const
QString &property, QQuickDeferredPointer<T> &delegate)
40
{
41
if
(!QQmlVME::componentCompleteEnabled())
42
return
;
43
44
// Populating can re-enter this: writing the property notifies observers, and a binding among
45
// them may read it back. Beginning again would orphan the outer DeferredState.
46
if
(delegate.isExecuting())
47
return
;
48
49
QtQuickPrivate
::
beginDeferred
(object, property, &delegate, delegate.setExecuting(
true
));
50
delegate.setExecuting(
false
);
51
}
52
53
template
<
typename
T>
54
void
quickBeginAttachedDeferred
(QObject *object,
const
QString &property,
55
QQuickDeferredPointer<T> &delegate, QQmlEngine *engine)
56
{
57
if
(!QQmlVME::componentCompleteEnabled())
58
return
;
59
60
QtQuickPrivate
::
beginDeferred
(object, property, &delegate, delegate.setExecuting(
true
), engine);
61
delegate.setExecuting(
false
);
62
}
63
64
inline
void
quickCancelDeferred
(QObject *object,
const
QString &property)
65
{
66
QtQuickPrivate
::
cancelDeferred
(object, property);
67
}
68
69
template
<
typename
T>
70
void
quickCompleteDeferred
(QObject *object,
const
QString &property, QQuickDeferredPointer<T> &delegate)
71
{
72
Q_ASSERT(!delegate.wasExecuted());
73
QtQuickPrivate
::
completeDeferred
(object, property, &delegate);
74
delegate.setExecuted();
75
}
76
77
template
<
typename
T>
78
void
quickCompleteAttachedDeferred
(QObject *object,
const
QString &property,
79
QQuickDeferredPointer<T> &delegate, QQmlEngine *engine)
80
{
81
Q_ASSERT(!delegate.wasExecuted());
82
QtQuickPrivate
::
completeDeferred
(object, property, &delegate, engine);
83
delegate.setExecuted();
84
}
85
86
QT_END_NAMESPACE
87
88
#
endif
// QQUICKDEFERREDEXECUTE_P_P_H
QQuickAbstractButtonPrivate
Definition
qquickabstractbutton_p_p.h:35
QQuickAbstractButton
Definition
qquickabstractbutton_p.h:28
QQuickActionGroupAttachedPrivate
Definition
qquickactiongroup.cpp:387
QQuickActionGroupAttached
Definition
qquickactiongroup_p.h:78
QQuickActionGroupPrivate
Groups actions together.
Definition
qquickactiongroup.cpp:111
QQuickActionGroup
Definition
qquickactiongroup_p.h:31
QQuickActionPrivate
Definition
qquickaction_p_p.h:34
QQuickActionPrivate::handleShortcutEvent
bool handleShortcutEvent(QObject *object, QShortcutEvent *event)
QQuickActionPrivate::trigger
bool trigger(QObject *, bool doToggle)
Definition
qquickaction.cpp:549
QQuickActionPrivate::itemDestroyed
void itemDestroyed(QQuickItem *item) override
Definition
qquickaction.cpp:274
QQuickActionPrivate::checkable
bool checkable
Definition
qquickaction_p_p.h:90
QQuickActionPrivate::registerItem
void registerItem(QQuickItem *item)
Definition
qquickaction.cpp:221
QQuickActionPrivate::enabled
bool enabled
Definition
qquickaction_p_p.h:88
QQuickActionPrivate::checked
bool checked
Definition
qquickaction_p_p.h:89
QQuickActionPrivate::icon
QQuickIcon icon
Definition
qquickaction_p_p.h:92
QQuickActionPrivate::text
QString text
Definition
qquickaction_p_p.h:91
QQuickActionPrivate::watchItem
bool watchItem(QQuickItem *item)
Definition
qquickaction.cpp:199
QQuickActionPrivate::group
QQuickActionGroup * group
Definition
qquickaction_p_p.h:99
QQuickActionPrivate::itemVisibilityChanged
void itemVisibilityChanged(QQuickItem *item) override
Definition
qquickaction.cpp:254
QQuickActionPrivate::explicitEnabled
bool explicitEnabled
Definition
qquickaction_p_p.h:87
QQuickActionPrivate::unwatchItem
bool unwatchItem(QQuickItem *item)
Definition
qquickaction.cpp:210
QQuickActionPrivate::unregisterItem
void unregisterItem(QQuickItem *item)
Definition
qquickaction.cpp:237
QQuickAction
Definition
qquickaction_p.h:30
QQuickButtonGroupAttachedPrivate
Definition
qquickbuttongroup.cpp:491
QQuickButtonGroupAttached
Definition
qquickbuttongroup_p.h:89
QQuickButtonGroupPrivate
Mutually-exclusive group of checkable buttons.
Definition
qquickbuttongroup.cpp:146
QQuickButtonGroup
Definition
qquickbuttongroup_p.h:32
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
QtQuickPrivate
Definition
qquickdeferredexecute_p_p.h:30
QtQuickPrivate::completeDeferred
Q_QUICKTEMPLATES2_EXPORT void completeDeferred(QObject *object, const QString &property, QQuickUntypedDeferredPointer *delegate, QQmlEngine *engine=nullptr)
Definition
qquickdeferredexecute.cpp:144
QtQuickPrivate::beginDeferred
Q_QUICKTEMPLATES2_EXPORT void beginDeferred(QObject *object, const QString &property, QQuickUntypedDeferredPointer *delegate, bool isOwnState, QQmlEngine *engine=nullptr)
Definition
qquickdeferredexecute.cpp:112
QtQuickPrivate::cancelDeferred
Q_QUICKTEMPLATES2_EXPORT void cancelDeferred(QObject *object, const QString &property)
Definition
qquickdeferredexecute.cpp:137
quickBeginAttachedDeferred
void quickBeginAttachedDeferred(QObject *object, const QString &property, QQuickDeferredPointer< T > &delegate, QQmlEngine *engine)
Definition
qquickdeferredexecute_p_p.h:54
quickCancelDeferred
void quickCancelDeferred(QObject *object, const QString &property)
Definition
qquickdeferredexecute_p_p.h:64
quickCompleteDeferred
void quickCompleteDeferred(QObject *object, const QString &property, QQuickDeferredPointer< T > &delegate)
Definition
qquickdeferredexecute_p_p.h:70
quickCompleteAttachedDeferred
void quickCompleteAttachedDeferred(QObject *object, const QString &property, QQuickDeferredPointer< T > &delegate, QQmlEngine *engine)
Definition
qquickdeferredexecute_p_p.h:78
quickBeginDeferred
void quickBeginDeferred(QObject *object, const QString &property, QQuickDeferredPointer< T > &delegate)
Definition
qquickdeferredexecute_p_p.h:39
QQuickShortcutContext
Definition
qquickshortcutcontext_p_p.h:27
qtdeclarative
src
quicktemplates
qquickdeferredexecute_p_p.h
Generated on
for Qt by
1.18.0