43class Q_QUICKTEMPLATES2_EXPORT
QQuickPopup :
public QObject,
public QQmlParserStatus,
private QQuickSafeAreaAttachable
46 Q_INTERFACES(QQmlParserStatus)
47 Q_INTERFACES(QQuickSafeAreaAttachable)
48 Q_PROPERTY(qreal x READ x WRITE setX NOTIFY xChanged FINAL)
49 Q_PROPERTY(qreal y READ y WRITE setY NOTIFY yChanged FINAL)
50 Q_PROPERTY(qreal z READ z WRITE setZ RESET resetZ NOTIFY zChanged FINAL)
51 Q_PROPERTY(qreal width READ width WRITE setWidth RESET resetWidth NOTIFY widthChanged FINAL)
52 Q_PROPERTY(qreal height READ height WRITE setHeight RESET resetHeight NOTIFY heightChanged FINAL)
53 Q_PROPERTY(qreal implicitWidth READ implicitWidth WRITE setImplicitWidth NOTIFY implicitWidthChanged FINAL)
54 Q_PROPERTY(qreal implicitHeight READ implicitHeight WRITE setImplicitHeight NOTIFY implicitHeightChanged FINAL)
55 Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth NOTIFY contentWidthChanged FINAL)
56 Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight NOTIFY contentHeightChanged FINAL)
57 Q_PROPERTY(qreal availableWidth READ availableWidth NOTIFY availableWidthChanged FINAL)
58 Q_PROPERTY(qreal availableHeight READ availableHeight NOTIFY availableHeightChanged FINAL)
59 Q_PROPERTY(qreal margins READ margins WRITE setMargins RESET resetMargins NOTIFY marginsChanged FINAL)
60 Q_PROPERTY(qreal topMargin READ topMargin WRITE setTopMargin RESET resetTopMargin NOTIFY topMarginChanged FINAL)
61 Q_PROPERTY(qreal leftMargin READ leftMargin WRITE setLeftMargin RESET resetLeftMargin NOTIFY leftMarginChanged FINAL)
62 Q_PROPERTY(qreal rightMargin READ rightMargin WRITE setRightMargin RESET resetRightMargin NOTIFY rightMarginChanged FINAL)
63 Q_PROPERTY(qreal bottomMargin READ bottomMargin WRITE setBottomMargin RESET resetBottomMargin NOTIFY bottomMarginChanged FINAL)
64 Q_PROPERTY(qreal padding READ padding WRITE setPadding RESET resetPadding NOTIFY paddingChanged FINAL)
65 Q_PROPERTY(qreal topPadding READ topPadding WRITE setTopPadding RESET resetTopPadding NOTIFY topPaddingChanged FINAL)
66 Q_PROPERTY(qreal leftPadding READ leftPadding WRITE setLeftPadding RESET resetLeftPadding NOTIFY leftPaddingChanged FINAL)
67 Q_PROPERTY(qreal rightPadding READ rightPadding WRITE setRightPadding RESET resetRightPadding NOTIFY rightPaddingChanged FINAL)
68 Q_PROPERTY(qreal bottomPadding READ bottomPadding WRITE setBottomPadding RESET resetBottomPadding NOTIFY bottomPaddingChanged FINAL)
69 Q_PROPERTY(QLocale locale READ locale WRITE setLocale RESET resetLocale NOTIFY localeChanged FINAL)
70 Q_PROPERTY(QFont font READ font WRITE setFont RESET resetFont NOTIFY fontChanged FINAL)
71 Q_PROPERTY(QQuickItem *parent READ parentItem WRITE setParentItem RESET resetParentItem NOTIFY parentChanged FINAL)
72 Q_PROPERTY(QQuickItem *background READ background WRITE setBackground NOTIFY backgroundChanged FINAL)
73 Q_PROPERTY(QQuickItem *contentItem READ contentItem WRITE setContentItem NOTIFY contentItemChanged FINAL)
74 Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQmlListProperty<QObject> contentData READ contentData)
75 Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQmlListProperty<QQuickItem> contentChildren READ contentChildren NOTIFY contentChildrenChanged FINAL)
76 Q_PROPERTY(
bool clip READ clip WRITE setClip NOTIFY clipChanged FINAL)
77 Q_PROPERTY(
bool focus READ hasFocus WRITE setFocus NOTIFY focusChanged FINAL)
78 Q_PROPERTY(
bool activeFocus READ hasActiveFocus NOTIFY activeFocusChanged FINAL)
79 Q_PROPERTY(
bool modal READ isModal WRITE setModal NOTIFY modalChanged FINAL)
80 Q_PROPERTY(
bool dim READ dim WRITE setDim RESET resetDim NOTIFY dimChanged FINAL)
81 Q_PROPERTY(
bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged FINAL)
82 Q_PROPERTY(qreal opacity READ opacity WRITE setOpacity NOTIFY opacityChanged FINAL)
83 Q_PROPERTY(qreal scale READ scale WRITE setScale NOTIFY scaleChanged FINAL)
84 Q_PROPERTY(ClosePolicy closePolicy READ closePolicy WRITE setClosePolicy RESET resetClosePolicy NOTIFY closePolicyChanged FINAL)
85 Q_PROPERTY(TransformOrigin transformOrigin READ transformOrigin WRITE setTransformOrigin FINAL)
86 Q_PROPERTY(QQuickTransition *enter READ enter WRITE setEnter NOTIFY enterChanged FINAL)
87 Q_PROPERTY(QQuickTransition *exit READ exit WRITE setExit NOTIFY exitChanged FINAL)
89 Q_PROPERTY(qreal spacing READ spacing WRITE setSpacing RESET resetSpacing NOTIFY spacingChanged FINAL REVISION(2, 1))
91 Q_PROPERTY(
bool opened READ isOpened NOTIFY openedChanged FINAL REVISION(2, 3))
92 Q_PROPERTY(
bool mirrored READ isMirrored NOTIFY mirroredChanged FINAL REVISION(2, 3))
93 Q_PROPERTY(
bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged FINAL REVISION(2, 3))
94 Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQuickPalette *palette READ palette WRITE setPalette RESET resetPalette NOTIFY paletteChanged REVISION(2, 3))
96 Q_PROPERTY(qreal horizontalPadding READ horizontalPadding WRITE setHorizontalPadding RESET resetHorizontalPadding NOTIFY horizontalPaddingChanged FINAL)
97 Q_PROPERTY(qreal verticalPadding READ verticalPadding WRITE setVerticalPadding RESET resetVerticalPadding NOTIFY verticalPaddingChanged FINAL)
98 Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQuickPopupAnchors *anchors READ getAnchors DESIGNABLE
false CONSTANT FINAL REVISION(2, 5))
99 Q_PROPERTY(qreal implicitContentWidth READ implicitContentWidth NOTIFY implicitContentWidthChanged FINAL REVISION(2, 5))
100 Q_PROPERTY(qreal implicitContentHeight READ implicitContentHeight NOTIFY implicitContentHeightChanged FINAL REVISION(2, 5))
101 Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION(2, 5))
102 Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION(2, 5))
103 Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION(2, 5))
104 Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION(2, 5))
105 Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION(2, 5))
106 Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION(2, 5))
107 Q_PROPERTY(PopupType popupType READ popupType WRITE setPopupType NOTIFY popupTypeChanged FINAL REVISION(6, 8))
108 Q_CLASSINFO(
"DeferredPropertyNames",
"background,contentItem")
109 Q_CLASSINFO(
"DefaultProperty",
"contentData")
110 QML_NAMED_ELEMENT(Popup)
111 QML_ADDED_IN_VERSION(2, 0)
114 explicit QQuickPopup(QObject *parent =
nullptr);
123 QPointF position()
const;
124 void setPosition(
const QPointF &pos);
131 void setWidth(qreal width);
134 qreal height()
const;
135 void setHeight(qreal height);
138 qreal implicitWidth()
const;
139 void setImplicitWidth(qreal width);
141 qreal implicitHeight()
const;
142 void setImplicitHeight(qreal height);
144 qreal contentWidth()
const;
145 void setContentWidth(qreal width);
147 qreal contentHeight()
const;
148 void setContentHeight(qreal height);
150 qreal availableWidth()
const;
151 qreal availableHeight()
const;
153 qreal margins()
const;
154 void setMargins(qreal margins);
157 qreal topMargin()
const;
158 void setTopMargin(qreal margin);
159 void resetTopMargin();
161 qreal leftMargin()
const;
162 void setLeftMargin(qreal margin);
163 void resetLeftMargin();
165 qreal rightMargin()
const;
166 void setRightMargin(qreal margin);
167 void resetRightMargin();
169 qreal bottomMargin()
const;
170 void setBottomMargin(qreal margin);
171 void resetBottomMargin();
173 qreal padding()
const;
174 void setPadding(qreal padding);
177 qreal topPadding()
const;
178 void setTopPadding(qreal padding);
179 void resetTopPadding();
181 qreal leftPadding()
const;
182 void setLeftPadding(qreal padding);
183 void resetLeftPadding();
185 qreal rightPadding()
const;
186 void setRightPadding(qreal padding);
187 void resetRightPadding();
189 qreal bottomPadding()
const;
190 void setBottomPadding(qreal padding);
191 void resetBottomPadding();
193 QLocale locale()
const;
194 void setLocale(
const QLocale &locale);
198 void setFont(
const QFont &font);
201 QQuickWindow *window()
const;
202 QQuickItem *popupItem()
const;
204 QQuickItem *parentItem()
const;
205 void setParentItem(QQuickItem *parent);
206 void resetParentItem();
208 QQuickItem *background()
const;
209 void setBackground(QQuickItem *background);
211 QQuickItem *contentItem()
const;
212 void setContentItem(QQuickItem *item);
215 void setClip(
bool clip);
217 bool hasFocus()
const;
218 void setFocus(
bool focus);
220 bool hasActiveFocus()
const;
222 bool isModal()
const;
223 void setModal(
bool modal);
226 void setDim(
bool dim);
229 virtual bool isVisible()
const;
230 virtual void setVisible(
bool visible);
232 qreal opacity()
const;
233 virtual void setOpacity(qreal opacity);
236 void setScale(qreal scale);
238 enum ClosePolicyFlag {
240 CloseOnPressOutside = 0x01,
241 CloseOnPressOutsideParent = 0x02,
242 CloseOnReleaseOutside = 0x04,
243 CloseOnReleaseOutsideParent = 0x08,
246 Q_DECLARE_FLAGS(ClosePolicy, ClosePolicyFlag)
249 ClosePolicy closePolicy()
const;
250 void setClosePolicy(ClosePolicy policy);
251 void resetClosePolicy();
254 enum TransformOrigin {
255 TopLeft, Top, TopRight,
257 BottomLeft, Bottom, BottomRight
259 Q_ENUM(TransformOrigin)
261 TransformOrigin transformOrigin()
const;
262 void setTransformOrigin(TransformOrigin);
264 QQuickTransition *enter()
const;
265 void setEnter(QQuickTransition *transition);
267 QQuickTransition *exit()
const;
268 void setExit(QQuickTransition *transition);
270 bool filtersChildMouseEvents()
const;
271 void setFiltersChildMouseEvents(
bool filter);
273 Q_INVOKABLE
void forceActiveFocus(Qt::FocusReason reason = Qt::OtherFocusReason);
276 qreal spacing()
const;
277 void setSpacing(qreal spacing);
281 bool isOpened()
const;
282 bool isMirrored()
const;
284 bool isEnabled()
const;
285 void setEnabled(
bool enabled);
288 qreal horizontalPadding()
const;
289 void setHorizontalPadding(qreal padding);
290 void resetHorizontalPadding();
292 qreal verticalPadding()
const;
293 void setVerticalPadding(qreal padding);
294 void resetVerticalPadding();
296 qreal implicitContentWidth()
const;
297 qreal implicitContentHeight()
const;
299 qreal implicitBackgroundWidth()
const;
300 qreal implicitBackgroundHeight()
const;
302 qreal topInset()
const;
303 void setTopInset(qreal inset);
304 void resetTopInset();
306 qreal leftInset()
const;
307 void setLeftInset(qreal inset);
308 void resetLeftInset();
310 qreal rightInset()
const;
311 void setRightInset(qreal inset);
312 void resetRightInset();
314 qreal bottomInset()
const;
315 void setBottomInset(qreal inset);
316 void resetBottomInset();
318 void setWindowModality(
const Qt::WindowModality modality);
327 PopupType popupType()
const;
328 void setPopupType(PopupType);
343 void heightChanged();
344 void implicitWidthChanged();
345 void implicitHeightChanged();
346 void contentWidthChanged();
347 void contentHeightChanged();
348 void availableWidthChanged();
349 void availableHeightChanged();
350 void marginsChanged();
351 void topMarginChanged();
352 void leftMarginChanged();
353 void rightMarginChanged();
354 void bottomMarginChanged();
355 void paddingChanged();
356 void topPaddingChanged();
357 void leftPaddingChanged();
358 void rightPaddingChanged();
359 void bottomPaddingChanged();
361 void localeChanged();
362 void parentChanged();
363 void backgroundChanged();
364 void contentItemChanged();
365 void contentChildrenChanged();
368 void activeFocusChanged();
371 void visibleChanged();
372 void opacityChanged();
374 void closePolicyChanged();
377 void windowChanged(QQuickWindow *window);
379 Q_REVISION(2, 1)
void spacingChanged();
381 Q_REVISION(2, 3)
void openedChanged();
382 Q_REVISION(2, 3)
void mirroredChanged();
383 Q_REVISION(2, 3)
void enabledChanged();
384 Q_REVISION(2, 3)
void paletteChanged();
385 Q_REVISION(2, 3)
void paletteCreated();
387 Q_REVISION(2, 5)
void horizontalPaddingChanged();
388 Q_REVISION(2, 5)
void verticalPaddingChanged();
389 Q_REVISION(2, 5)
void implicitContentWidthChanged();
390 Q_REVISION(2, 5)
void implicitContentHeightChanged();
391 Q_REVISION(2, 5)
void implicitBackgroundWidthChanged();
392 Q_REVISION(2, 5)
void implicitBackgroundHeightChanged();
393 Q_REVISION(2, 5)
void topInsetChanged();
394 Q_REVISION(2, 5)
void leftInsetChanged();
395 Q_REVISION(2, 5)
void rightInsetChanged();
396 Q_REVISION(2, 5)
void bottomInsetChanged();
397 Q_REVISION(6, 8)
void popupTypeChanged();
400 QQuickPopup(QQuickPopupPrivate &dd, QObject *parent);
402 void classBegin() override;
403 void componentComplete() override;
404 bool isComponentComplete()
const;
406 virtual bool childMouseEventFilter(QQuickItem *child, QEvent *event);
407 virtual void focusInEvent(QFocusEvent *event);
408 virtual void focusOutEvent(QFocusEvent *event);
409 virtual void keyPressEvent(QKeyEvent *event);
410 virtual void keyReleaseEvent(QKeyEvent *event);
411 virtual void mousePressEvent(QMouseEvent *event);
412 virtual void mouseMoveEvent(QMouseEvent *event);
413 virtual void mouseReleaseEvent(QMouseEvent *event);
414 virtual void mouseDoubleClickEvent(QMouseEvent *event);
415 virtual void mouseUngrabEvent();
416 virtual bool overlayEvent(QQuickItem *item, QEvent *event);
417#if QT_CONFIG(quicktemplates2_multitouch)
418 virtual void touchEvent(QTouchEvent *event);
419 virtual void touchUngrabEvent();
421#if QT_CONFIG(wheelevent)
422 virtual void wheelEvent(QWheelEvent *event);
425 virtual void contentItemChange(QQuickItem *newItem, QQuickItem *oldItem);
426 virtual void contentSizeChange(
const QSizeF &newSize,
const QSizeF &oldSize);
427 virtual void fontChange(
const QFont &newFont,
const QFont &oldFont);
428 virtual void geometryChange(
const QRectF &newGeometry,
const QRectF &oldGeometry);
429 virtual void localeChange(
const QLocale &newLocale,
const QLocale &oldLocale);
430 virtual void itemChange(QQuickItem::ItemChange change,
const QQuickItem::ItemChangeData &data);
431 virtual void marginsChange(
const QMarginsF &newMargins,
const QMarginsF &oldMargins);
432 virtual void paddingChange(
const QMarginsF &newPadding,
const QMarginsF &oldPadding);
433 virtual void spacingChange(qreal newSpacing, qreal oldSpacing);
434 virtual void insetChange(
const QMarginsF &newInset,
const QMarginsF &oldInset);
436 virtual QFont defaultFont()
const;
438#if QT_CONFIG(accessibility)
439 QAccessible::Role effectiveAccessibleRole()
const;
441 virtual QAccessible::Role accessibleRole()
const;
443 virtual void accessibilityActiveChanged(
bool active);
446 QString accessibleName()
const;
447 void maybeSetAccessibleName(
const QString &name);
449 QVariant accessibleProperty(
const char *propertyName);
450 bool setAccessibleProperty(
const char *propertyName,
const QVariant &value);
453 QQuickItem *findParentItem()
const;
455 QQuickItem *safeAreaAttachmentItem() override;
457 Q_DISABLE_COPY(QQuickPopup)
458 Q_DECLARE_PRIVATE(QQuickPopup)
459 friend class QQuickPopupWindow;
460 friend class QQuickPopupItem;
461 friend class QQuickOverlay;
462 friend class QQuickOverlayPrivate;