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
qquickitem.h
Go to the documentation of this file.
1// Copyright (C) 2020 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 QQUICKITEM_H
6#define QQUICKITEM_H
7
8#include <QtQuick/qtquickglobal.h>
9#include <QtQml/qqml.h>
10#include <QtQml/qqmlcomponent.h>
11
12#include <QtCore/QObject>
13#include <QtCore/QList>
14#include <QtCore/qproperty.h>
15#include <QtGui/qevent.h>
16#include <QtGui/qfont.h>
17#include <QtGui/qaccessible.h>
18
19QT_BEGIN_NAMESPACE
20
21class QQuickItem;
23class Q_QUICK_EXPORT QQuickTransform : public QObject
24{
25 Q_OBJECT
26 QML_ANONYMOUS
27 QML_ADDED_IN_VERSION(2, 0)
28public:
29 explicit QQuickTransform(QObject *parent = nullptr);
30 ~QQuickTransform() override;
31
32 void appendToItem(QQuickItem *);
33 void prependToItem(QQuickItem *);
34
35 virtual void applyTo(QMatrix4x4 *matrix) const = 0;
36
37protected Q_SLOTS:
38 void update();
39
40protected:
41 QQuickTransform(QQuickTransformPrivate &dd, QObject *parent);
42
43private:
44 Q_DECLARE_PRIVATE(QQuickTransform)
45};
46
47class QCursor;
48class QQuickItemLayer;
49class QQuickState;
50class QQuickAnchorLine;
51class QQuickTransition;
52class QQuickKeyEvent;
53class QQuickAnchors;
54class QQuickItemPrivate;
55class QQuickWindow;
56class QTouchEvent;
57class QSGNode;
58class QSGTransformNode;
59class QSGTextureProvider;
60class QQuickItemGrabResult;
61class QQuickPalette;
62
63class Q_QUICK_EXPORT QQuickItem : public QObject, public QQmlParserStatus
64{
65 Q_OBJECT
66 Q_INTERFACES(QQmlParserStatus)
67
68 Q_PROPERTY(QQuickItem *parent READ parentItem WRITE setParentItem NOTIFY parentChanged DESIGNABLE false FINAL)
69 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQmlListProperty<QObject> data READ data DESIGNABLE false VIRTUAL)
70 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQmlListProperty<QObject> resources READ resources DESIGNABLE false)
71 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQmlListProperty<QQuickItem> children READ children NOTIFY childrenChanged DESIGNABLE false)
72
73 Q_PROPERTY(qreal x READ x WRITE setX NOTIFY xChanged BINDABLE bindableX FINAL)
74 Q_PROPERTY(qreal y READ y WRITE setY NOTIFY yChanged BINDABLE bindableY FINAL)
75 Q_PROPERTY(qreal z READ z WRITE setZ NOTIFY zChanged FINAL)
76 Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged RESET resetWidth BINDABLE bindableWidth FINAL)
77 Q_PROPERTY(qreal height READ height WRITE setHeight NOTIFY heightChanged RESET resetHeight BINDABLE bindableHeight FINAL)
78
79 Q_PROPERTY(qreal opacity READ opacity WRITE setOpacity NOTIFY opacityChanged FINAL)
80 Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged VIRTUAL)
81 Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged FINAL)
82 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickPalette *palette READ palette WRITE setPalette RESET resetPalette NOTIFY paletteChanged VIRTUAL REVISION(6, 0))
83 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQmlListProperty<QQuickItem> visibleChildren READ visibleChildren NOTIFY visibleChildrenChanged DESIGNABLE false)
84
85 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQmlListProperty<QQuickState> states READ states DESIGNABLE false)
86 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQmlListProperty<QQuickTransition> transitions READ transitions DESIGNABLE false)
87 Q_PROPERTY(QString state READ state WRITE setState NOTIFY stateChanged)
88 Q_PROPERTY(QRectF childrenRect READ childrenRect NOTIFY childrenRectChanged DESIGNABLE false FINAL)
89 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchors * anchors READ anchors DESIGNABLE false CONSTANT FINAL)
90 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine left READ left CONSTANT FINAL)
91 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine right READ right CONSTANT FINAL)
92 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine horizontalCenter READ horizontalCenter CONSTANT FINAL)
93 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine top READ top CONSTANT FINAL)
94 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine bottom READ bottom CONSTANT FINAL)
95 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine verticalCenter READ verticalCenter CONSTANT FINAL)
96 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickAnchorLine baseline READ baseline CONSTANT FINAL)
97 Q_PROPERTY(qreal baselineOffset READ baselineOffset WRITE setBaselineOffset NOTIFY baselineOffsetChanged VIRTUAL)
98
99 Q_PROPERTY(bool clip READ clip WRITE setClip NOTIFY clipChanged)
100
101 Q_PROPERTY(bool focus READ hasFocus WRITE setFocus NOTIFY focusChanged FINAL)
102 Q_PROPERTY(bool activeFocus READ hasActiveFocus NOTIFY activeFocusChanged FINAL)
103 Q_PROPERTY(bool activeFocusOnTab READ activeFocusOnTab WRITE setActiveFocusOnTab NOTIFY activeFocusOnTabChanged FINAL REVISION(2, 1))
104
105 Q_PROPERTY(Qt::FocusPolicy focusPolicy READ focusPolicy WRITE setFocusPolicy NOTIFY focusPolicyChanged VIRTUAL REVISION(6, 7))
106
107 Q_PROPERTY(qreal rotation READ rotation WRITE setRotation NOTIFY rotationChanged VIRTUAL)
108 Q_PROPERTY(qreal scale READ scale WRITE setScale NOTIFY scaleChanged)
109 Q_PROPERTY(TransformOrigin transformOrigin READ transformOrigin WRITE setTransformOrigin NOTIFY transformOriginChanged)
110 Q_PROPERTY(QPointF transformOriginPoint READ transformOriginPoint) // deprecated - see QTBUG-26423
111 Q_PROPERTY(QQmlListProperty<QQuickTransform> transform READ transform DESIGNABLE false FINAL)
112
113 Q_PROPERTY(bool smooth READ smooth WRITE setSmooth NOTIFY smoothChanged)
114 Q_PROPERTY(bool antialiasing READ antialiasing WRITE setAntialiasing NOTIFY antialiasingChanged RESET resetAntialiasing)
115 Q_PROPERTY(qreal implicitWidth READ implicitWidth WRITE setImplicitWidth NOTIFY implicitWidthChanged VIRTUAL)
116 Q_PROPERTY(qreal implicitHeight READ implicitHeight WRITE setImplicitHeight NOTIFY implicitHeightChanged VIRTUAL)
117 Q_PROPERTY(QObject *containmentMask READ containmentMask WRITE setContainmentMask NOTIFY containmentMaskChanged REVISION(2, 11))
118
119 Q_PROPERTY(int mutabilityGroup READ mutabilityGroup WRITE setMutabilityGroup NOTIFY mutabilityGroupChanged REVISION(6, 12))
120
121#if QT_CONFIG(quick_shadereffect)
122 Q_PRIVATE_PROPERTY(QQuickItem::d_func(), QQuickItemLayer *layer READ layer DESIGNABLE false CONSTANT FINAL)
123#endif
124
125 Q_CLASSINFO("DefaultProperty", "data")
126 Q_CLASSINFO("ParentProperty", "parent")
127 Q_CLASSINFO("qt_QmlJSWrapperFactoryMethod", "_q_createJSWrapper(QQmlV4ExecutionEnginePtr)")
128 QML_NAMED_ELEMENT(Item)
129 QML_ADDED_IN_VERSION(2, 0)
130
131public:
132 enum Flag {
133 ItemClipsChildrenToShape = 0x01,
134#if QT_CONFIG(im)
135 ItemAcceptsInputMethod = 0x02,
136#endif
137 ItemIsFocusScope = 0x04,
138 ItemHasContents = 0x08,
139 ItemAcceptsDrops = 0x10,
140 ItemIsViewport = 0x20,
141 ItemObservesViewport = 0x40,
142 // Remember to increment the size of QQuickItemPrivate::flags
143 };
144 Q_DECLARE_FLAGS(Flags, Flag)
145 Q_FLAG(Flags)
146
147 enum ItemChange {
148 ItemChildAddedChange, // value.item
149 ItemChildRemovedChange, // value.item
150 ItemSceneChange, // value.window
151 ItemVisibleHasChanged, // value.boolValue
152 ItemParentHasChanged, // value.item
153 ItemOpacityHasChanged, // value.realValue
154 ItemActiveFocusHasChanged, // value.boolValue
155 ItemRotationHasChanged, // value.realValue
156 ItemAntialiasingHasChanged, // value.boolValue
157 ItemDevicePixelRatioHasChanged, // value.realValue
158 ItemEnabledHasChanged, // value.boolValue
159 ItemScaleHasChanged, // value.realValue
160 ItemTransformHasChanged, // value.item
161 };
162 Q_ENUM(ItemChange)
163
164 enum MutabilityGroup : quint8 {
165 AutoMutabilityGroup = 0x0,
166 StaticMutabilityGroup = 0x1,
167 ModerateMutabilityGroup = 0x8,
168 DynamicMutabilityGroup = 0xf,
169 // Maximum 4 bits
170 };
171 Q_ENUM(MutabilityGroup)
172
173 union ItemChangeData {
174 ItemChangeData(QQuickItem *v) : item(v) {}
175 ItemChangeData(QQuickWindow *v) : window(v) {}
176 ItemChangeData(qreal v) : realValue(v) {}
177 ItemChangeData(bool v) : boolValue(v) {}
178
179 QQuickItem *item;
180 QQuickWindow *window;
181 qreal realValue;
182 bool boolValue;
183 };
184
185 enum TransformOrigin {
186 TopLeft, Top, TopRight,
187 Left, Center, Right,
188 BottomLeft, Bottom, BottomRight
189 };
190 Q_ENUM(TransformOrigin)
191
192 explicit QQuickItem(QQuickItem *parent = nullptr);
193 ~QQuickItem() override;
194
195 QQuickWindow *window() const;
196 QQuickItem *parentItem() const;
197 void setParentItem(QQuickItem *parent);
198 void stackBefore(const QQuickItem *);
199 void stackAfter(const QQuickItem *);
200
201 QRectF childrenRect();
202 QList<QQuickItem *> childItems() const;
203
204 bool clip() const;
205 void setClip(bool);
206
207 QString state() const;
208 void setState(const QString &);
209
210 qreal baselineOffset() const;
211 void setBaselineOffset(qreal);
212
213 QQmlListProperty<QQuickTransform> transform();
214
215 qreal x() const;
216 qreal y() const;
217 QPointF position() const;
218 void setX(qreal);
219 void setY(qreal);
220 void setPosition(const QPointF &);
221 QBindable<qreal> bindableX();
222 QBindable<qreal> bindableY();
223
224 qreal width() const;
225 void setWidth(qreal);
226 void resetWidth();
227 void setImplicitWidth(qreal);
228 qreal implicitWidth() const;
229 QBindable<qreal> bindableWidth();
230
231 qreal height() const;
232 void setHeight(qreal);
233 void resetHeight();
234 void setImplicitHeight(qreal);
235 qreal implicitHeight() const;
236 QBindable<qreal> bindableHeight();
237
238 QSizeF size() const;
239 void setSize(const QSizeF &size);
240
241 TransformOrigin transformOrigin() const;
242 void setTransformOrigin(TransformOrigin);
243 QPointF transformOriginPoint() const;
244 void setTransformOriginPoint(const QPointF &);
245
246 qreal z() const;
247 void setZ(qreal);
248
249 qreal rotation() const;
250 void setRotation(qreal);
251 qreal scale() const;
252 void setScale(qreal);
253
254 qreal opacity() const;
255 void setOpacity(qreal);
256
257 bool isVisible() const;
258 void setVisible(bool);
259
260 bool isEnabled() const;
261 void setEnabled(bool);
262
263 bool smooth() const;
264 void setSmooth(bool);
265
266 bool activeFocusOnTab() const;
267 void setActiveFocusOnTab(bool);
268
269 bool antialiasing() const;
270 void setAntialiasing(bool);
271 void resetAntialiasing();
272
273 Flags flags() const;
274 void setFlag(Flag flag, bool enabled = true);
275 void setFlags(Flags flags);
276
277 virtual QRectF boundingRect() const;
278 virtual QRectF clipRect() const;
279 QQuickItem *viewportItem() const;
280
281 bool hasActiveFocus() const;
282 bool hasFocus() const;
283 void setFocus(bool);
284 void setFocus(bool focus, Qt::FocusReason reason);
285 bool isFocusScope() const;
286 QQuickItem *scopedFocusItem() const;
287
288 Qt::FocusPolicy focusPolicy() const;
289 void setFocusPolicy(Qt::FocusPolicy policy);
290
291 bool isAncestorOf(const QQuickItem *child) const;
292
293 Qt::MouseButtons acceptedMouseButtons() const;
294 void setAcceptedMouseButtons(Qt::MouseButtons buttons);
295 bool acceptHoverEvents() const;
296 void setAcceptHoverEvents(bool enabled);
297 bool acceptTouchEvents() const;
298 void setAcceptTouchEvents(bool accept);
299
300#if QT_CONFIG(cursor)
301 QCursor cursor() const;
302 void setCursor(const QCursor &cursor);
303 void unsetCursor();
304#endif
305
306 bool isUnderMouse() const;
307 void grabMouse();
308 void ungrabMouse();
309 bool keepMouseGrab() const;
310 void setKeepMouseGrab(bool);
311 bool filtersChildMouseEvents() const;
312 void setFiltersChildMouseEvents(bool filter);
313
314 void grabTouchPoints(const QList<int> &ids);
315 void ungrabTouchPoints();
316 bool keepTouchGrab() const;
317 void setKeepTouchGrab(bool);
318
319 // implemented in qquickitemgrabresult.cpp
320 Q_REVISION(2, 4) Q_INVOKABLE bool grabToImage(const QJSValue &callback, const QSize &targetSize = QSize());
321 QSharedPointer<QQuickItemGrabResult> grabToImage(const QSize &targetSize = QSize());
322
323 Q_INVOKABLE virtual bool contains(const QPointF &point) const;
324 QObject *containmentMask() const;
325 void setContainmentMask(QObject *mask);
326
327 QTransform itemTransform(QQuickItem *, bool *) const;
328 QPointF mapToScene(const QPointF &point) const;
329 QRectF mapRectToItem(const QQuickItem *item, const QRectF &rect) const;
330 QRectF mapRectToScene(const QRectF &rect) const;
331 QPointF mapFromScene(const QPointF &point) const;
332 QRectF mapRectFromItem(const QQuickItem *item, const QRectF &rect) const;
333 QRectF mapRectFromScene(const QRectF &rect) const;
334
335 void polish();
336
337#if QT_DEPRECATED_SINCE(6, 5)
338 QT_DEPRECATED_VERSION_X_6_5("Use typed overload or mapRectFromItem")
339 void mapFromItem(QQmlV4FunctionPtr) const;
340#endif
341 Q_INVOKABLE QPointF mapFromItem(const QQuickItem *item, const QPointF &point) const;
342 // overloads mainly exist for QML
343 Q_INVOKABLE QPointF mapFromItem(const QQuickItem *item, qreal x, qreal y);
344 Q_INVOKABLE QRectF mapFromItem(const QQuickItem *item, const QRectF &rect) const;
345 Q_INVOKABLE QRectF mapFromItem(const QQuickItem *item, qreal x, qreal y, qreal width, qreal height) const;
346
347#if QT_DEPRECATED_SINCE(6, 5)
348 QT_DEPRECATED_VERSION_X_6_5("Use typed overload or mapRectToItem")
349 void mapToItem(QQmlV4FunctionPtr) const;
350#endif
351 Q_INVOKABLE QPointF mapToItem(const QQuickItem *item, const QPointF &point) const;
352 // overloads mainly exist for QML
353 Q_INVOKABLE QPointF mapToItem(const QQuickItem *item, qreal x, qreal y);
354 Q_INVOKABLE QRectF mapToItem(const QQuickItem *item, const QRectF &rect) const;
355 Q_INVOKABLE QRectF mapToItem(const QQuickItem *item, qreal x, qreal y, qreal width, qreal height) const;
356
357#if QT_DEPRECATED_SINCE(6, 5)
358 QT_DEPRECATED_VERSION_X_6_5("Use the typed overload")
359 Q_REVISION(2, 7) void mapFromGlobal(QQmlV4FunctionPtr) const;
360#endif
361 Q_REVISION(2, 7) Q_INVOKABLE QPointF mapFromGlobal(qreal x, qreal y) const;
362 // overload mainly exists for QML
363 Q_REVISION(2, 7) Q_INVOKABLE QPointF mapFromGlobal(const QPointF &point) const;
364
365#if QT_DEPRECATED_SINCE(6, 5)
366 QT_DEPRECATED_VERSION_X_6_5("Use the typed overload")
367 Q_REVISION(2, 7) void mapToGlobal(QQmlV4FunctionPtr) const;
368#endif
369 Q_REVISION(2, 7) Q_INVOKABLE QPointF mapToGlobal(qreal x, qreal y) const;
370 // overload only exist for QML
371 Q_REVISION(2, 7) Q_INVOKABLE QPointF mapToGlobal(const QPointF &point) const;
372
373 Q_INVOKABLE void forceActiveFocus();
374 Q_INVOKABLE void forceActiveFocus(Qt::FocusReason reason);
375 Q_REVISION(2, 1) Q_INVOKABLE QQuickItem *nextItemInFocusChain(bool forward = true);
376 Q_INVOKABLE QQuickItem *childAt(qreal x, qreal y) const;
377 Q_REVISION(6, 3) Q_INVOKABLE void ensurePolished();
378
379 Q_REVISION(6, 3) Q_INVOKABLE void dumpItemTree() const;
380
381#if QT_CONFIG(im)
382 virtual QVariant inputMethodQuery(Qt::InputMethodQuery query) const;
383#endif
384
385 struct UpdatePaintNodeData {
386 QSGTransformNode *transformNode;
387 private:
388 friend class QQuickWindowPrivate;
389 UpdatePaintNodeData();
390 };
391
392 virtual bool isTextureProvider() const;
393 virtual QSGTextureProvider *textureProvider() const;
394
395 void setMutabilityGroup(int mutabilityGroup);
396 int mutabilityGroup() const;
397
398public Q_SLOTS:
399 void update();
400
401Q_SIGNALS:
402 void childrenRectChanged(const QRectF &);
403 void baselineOffsetChanged(qreal);
404 void stateChanged(const QString &);
405 void focusChanged(bool);
406 void activeFocusChanged(bool);
407 Q_REVISION(6, 7) void focusPolicyChanged(Qt::FocusPolicy);
408 Q_REVISION(2, 1) void activeFocusOnTabChanged(bool);
409 void parentChanged(QQuickItem *);
410 void transformOriginChanged(TransformOrigin);
411 void smoothChanged(bool);
412 void antialiasingChanged(bool);
413 void clipChanged(bool);
414 Q_REVISION(2, 1) void windowChanged(QQuickWindow* window);
415
416 void childrenChanged();
417 void opacityChanged();
418 void enabledChanged();
419 void visibleChanged();
420 void visibleChildrenChanged();
421 void rotationChanged();
422 void scaleChanged();
423
424 void xChanged();
425 void yChanged();
426 void widthChanged();
427 void heightChanged();
428 void zChanged();
429 void implicitWidthChanged();
430 void implicitHeightChanged();
431 Q_REVISION(2, 11) void containmentMaskChanged();
432
433 Q_REVISION(6, 0) void paletteChanged();
434 Q_REVISION(6, 0) void paletteCreated();
435
436 Q_REVISION(6, 12) void mutabilityGroupChanged();
437
438protected:
439 bool event(QEvent *) override;
440
441 bool isComponentComplete() const;
442 virtual void itemChange(ItemChange, const ItemChangeData &);
443 virtual void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry);
444
445#if QT_CONFIG(im)
446 void updateInputMethod(Qt::InputMethodQueries queries = Qt::ImQueryInput);
447#endif
448
449 bool widthValid() const; // ### better name?
450 bool heightValid() const; // ### better name?
451 void setImplicitSize(qreal, qreal);
452
453 void classBegin() override;
454 void componentComplete() override;
455
456 virtual void keyPressEvent(QKeyEvent *event);
457 virtual void keyReleaseEvent(QKeyEvent *event);
458#if QT_CONFIG(im)
459 virtual void inputMethodEvent(QInputMethodEvent *);
460#endif
461 virtual void focusInEvent(QFocusEvent *);
462 virtual void focusOutEvent(QFocusEvent *);
463 virtual void mousePressEvent(QMouseEvent *event);
464 virtual void mouseMoveEvent(QMouseEvent *event);
465 virtual void mouseReleaseEvent(QMouseEvent *event);
466 virtual void mouseDoubleClickEvent(QMouseEvent *event);
467 virtual void mouseUngrabEvent(); // XXX todo - params?
468 virtual void touchUngrabEvent();
469#if QT_CONFIG(wheelevent)
470 virtual void wheelEvent(QWheelEvent *event);
471#endif
472 virtual void touchEvent(QTouchEvent *event);
473 virtual void hoverEnterEvent(QHoverEvent *event);
474 virtual void hoverMoveEvent(QHoverEvent *event);
475 virtual void hoverLeaveEvent(QHoverEvent *event);
476#if QT_CONFIG(quick_draganddrop)
477 virtual void dragEnterEvent(QDragEnterEvent *);
478 virtual void dragMoveEvent(QDragMoveEvent *);
479 virtual void dragLeaveEvent(QDragLeaveEvent *);
480 virtual void dropEvent(QDropEvent *);
481#endif
482 virtual bool childMouseEventFilter(QQuickItem *, QEvent *);
483#if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
484 virtual bool contextMenuEvent(QContextMenuEvent *event);
485#endif
486
487 virtual QSGNode *updatePaintNode(QSGNode *, UpdatePaintNodeData *);
488 virtual void releaseResources();
489 virtual void updatePolish();
490
491 QQuickItem(QQuickItemPrivate &dd, QQuickItem *parent = nullptr);
492
493private:
494 Q_PRIVATE_SLOT(d_func(), void _q_resourceObjectDeleted(QObject *))
495 Q_PRIVATE_SLOT(d_func(), quint64 _q_createJSWrapper(QQmlV4ExecutionEnginePtr))
496
497 friend class QQuickWindowPrivate;
498 friend class QQuickDeliveryAgentPrivate;
499 friend class QSGRenderer;
500 friend class QAccessibleQuickItem;
501 friend class QQuickAccessibleAttached;
502 friend class QQuickAnchorChanges;
503#ifndef QT_NO_DEBUG_STREAM
504 friend Q_QUICK_EXPORT QDebug operator<<(QDebug debug, QQuickItem *item);
505#endif
506
507 Q_DISABLE_COPY(QQuickItem)
508 Q_DECLARE_PRIVATE(QQuickItem)
509};
510
511Q_DECLARE_OPERATORS_FOR_FLAGS(QQuickItem::Flags)
512
513#ifndef Q_QDOC
514template <> inline QQuickItem *qobject_cast<QQuickItem *>(QObject *o)
515{
516 if (!o || !o->isQuickItemType())
517 return nullptr;
518 return static_cast<QQuickItem *>(o);
519}
520template <> inline const QQuickItem *qobject_cast<const QQuickItem *>(const QObject *o)
521{
522 if (!o || !o->isQuickItemType())
523 return nullptr;
524 return static_cast<const QQuickItem *>(o);
525}
526#endif // !Q_QDOC
527
528#ifndef QT_NO_DEBUG_STREAM
529QDebug Q_QUICK_EXPORT operator<<(QDebug debug,
530#if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
531 const
532#endif
533 QQuickItem *item);
534#endif // QT_NO_DEBUG_STREAM
535
536QT_END_NAMESPACE
537
538#endif // QQUICKITEM_H
bool contains(const QPointF &point) const override
QQuickFlickableContentItem(QQuickItem *parent=nullptr)
bool startTransition(QQuickFlickablePrivate::AxisData *data, qreal toPos)
QQuickFlickableReboundTransition(QQuickFlickable *f, const QString &name)
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
Definition qquickitem.h:64
Combined button and popup list for selecting options.
QT_BEGIN_NAMESPACE Q_STATIC_LOGGING_CATEGORY(lcSynthesizedIterableAccess, "qt.iterable.synthesized", QtWarningMsg)
static bool fuzzyLessThanOrEqualTo(qreal a, qreal b)
static qreal EaseOvershoot(qreal t)
#define QML_FLICK_SAMPLEBUFFER
#define QML_FLICK_OVERSHOOT
#define QML_FLICK_MULTIFLICK_MAXBOOST
#define QML_FLICK_MULTIFLICK_THRESHOLD
#define QML_FLICK_OVERSHOOTFRICTION
#define QML_FLICK_DISCARDSAMPLES
#define QML_FLICK_MULTIFLICK_RATIO
QDebug Q_QUICK_EXPORT operator<<(QDebug debug, const QQuickWindow *item)