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
qquickpopup_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 QQUICKPOPUP_P_H
6#define QQUICKPOPUP_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/qobject.h>
20#include <QtCore/qmargins.h>
21#include <QtGui/qevent.h>
22#include <QtCore/qlocale.h>
23#include <QtGui/qfont.h>
24#include <QtGui/qpalette.h>
25#include <QtQuickTemplates2/private/qtquicktemplates2global_p.h>
26#include <QtQml/qqml.h>
27#include <QtQml/qqmllist.h>
28#include <QtQml/qqmlparserstatus.h>
29#include <QtQuick/qquickitem.h>
30#include <QtQuick/private/qquicksafearea_p.h>
31
32#if QT_CONFIG(accessibility)
33#include <QtGui/qaccessible.h>
34#endif
35
37
38class QQuickWindow;
39class QQuickPopupAnchors;
40class QQuickPopupPrivate;
41class QQuickTransition;
42
43class Q_QUICKTEMPLATES2_EXPORT QQuickPopup : public QObject, public QQmlParserStatus, private QQuickSafeAreaAttachable
44{
45 Q_OBJECT
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)
88 // 2.1 (Qt 5.8)
89 Q_PROPERTY(qreal spacing READ spacing WRITE setSpacing RESET resetSpacing NOTIFY spacingChanged FINAL REVISION(2, 1))
90 // 2.3 (Qt 5.10)
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))
95 // 2.5 (Qt 5.12)
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)
112
113public:
114 explicit QQuickPopup(QObject *parent = nullptr);
115 ~QQuickPopup();
116
117 qreal x() const;
118 void setX(qreal x);
119
120 qreal y() const;
121 void setY(qreal y);
122
123 QPointF position() const;
124 void setPosition(const QPointF &pos);
125
126 qreal z() const;
127 void setZ(qreal z);
128 void resetZ();
129
130 qreal width() const;
131 void setWidth(qreal width);
132 void resetWidth();
133
134 qreal height() const;
135 void setHeight(qreal height);
136 void resetHeight();
137
138 qreal implicitWidth() const;
139 void setImplicitWidth(qreal width);
140
141 qreal implicitHeight() const;
142 void setImplicitHeight(qreal height);
143
144 qreal contentWidth() const;
145 void setContentWidth(qreal width);
146
147 qreal contentHeight() const;
148 void setContentHeight(qreal height);
149
150 qreal availableWidth() const;
151 qreal availableHeight() const;
152
153 qreal margins() const;
154 void setMargins(qreal margins);
155 void resetMargins();
156
157 qreal topMargin() const;
158 void setTopMargin(qreal margin);
159 void resetTopMargin();
160
161 qreal leftMargin() const;
162 void setLeftMargin(qreal margin);
163 void resetLeftMargin();
164
165 qreal rightMargin() const;
166 void setRightMargin(qreal margin);
167 void resetRightMargin();
168
169 qreal bottomMargin() const;
170 void setBottomMargin(qreal margin);
171 void resetBottomMargin();
172
173 qreal padding() const;
174 void setPadding(qreal padding);
175 void resetPadding();
176
177 qreal topPadding() const;
178 void setTopPadding(qreal padding);
179 void resetTopPadding();
180
181 qreal leftPadding() const;
182 void setLeftPadding(qreal padding);
183 void resetLeftPadding();
184
185 qreal rightPadding() const;
186 void setRightPadding(qreal padding);
187 void resetRightPadding();
188
189 qreal bottomPadding() const;
190 void setBottomPadding(qreal padding);
191 void resetBottomPadding();
192
193 QLocale locale() const;
194 void setLocale(const QLocale &locale);
195 void resetLocale();
196
197 QFont font() const;
198 void setFont(const QFont &font);
199 void resetFont();
200
201 QQuickWindow *window() const;
202 QQuickItem *popupItem() const;
203
204 QQuickItem *parentItem() const;
205 void setParentItem(QQuickItem *parent);
206 void resetParentItem();
207
208 QQuickItem *background() const;
209 void setBackground(QQuickItem *background);
210
211 QQuickItem *contentItem() const;
212 void setContentItem(QQuickItem *item);
213
214 bool clip() const;
215 void setClip(bool clip);
216
217 bool hasFocus() const;
218 void setFocus(bool focus);
219
220 bool hasActiveFocus() const;
221
222 bool isModal() const;
223 void setModal(bool modal);
224
225 bool dim() const;
226 void setDim(bool dim);
227 void resetDim();
228
229 virtual bool isVisible() const;
230 virtual void setVisible(bool visible);
231
232 qreal opacity() const;
233 virtual void setOpacity(qreal opacity);
234
235 qreal scale() const;
236 void setScale(qreal scale);
237
238 enum ClosePolicyFlag {
239 NoAutoClose = 0x00,
240 CloseOnPressOutside = 0x01,
241 CloseOnPressOutsideParent = 0x02,
242 CloseOnReleaseOutside = 0x04,
243 CloseOnReleaseOutsideParent = 0x08,
244 CloseOnEscape = 0x10
245 };
246 Q_DECLARE_FLAGS(ClosePolicy, ClosePolicyFlag)
247 Q_FLAG(ClosePolicy)
248
249 ClosePolicy closePolicy() const;
250 void setClosePolicy(ClosePolicy policy);
251 void resetClosePolicy();
252
253 // keep in sync with Item.TransformOrigin
254 enum TransformOrigin {
255 TopLeft, Top, TopRight,
256 Left, Center, Right,
257 BottomLeft, Bottom, BottomRight
258 };
259 Q_ENUM(TransformOrigin)
260
261 TransformOrigin transformOrigin() const;
262 void setTransformOrigin(TransformOrigin);
263
264 QQuickTransition *enter() const;
265 void setEnter(QQuickTransition *transition);
266
267 QQuickTransition *exit() const;
268 void setExit(QQuickTransition *transition);
269
270 bool filtersChildMouseEvents() const;
271 void setFiltersChildMouseEvents(bool filter);
272
273 Q_INVOKABLE void forceActiveFocus(Qt::FocusReason reason = Qt::OtherFocusReason);
274
275 // 2.1 (Qt 5.8)
276 qreal spacing() const;
277 void setSpacing(qreal spacing);
278 void resetSpacing();
279
280 // 2.3 (Qt 5.10)
281 bool isOpened() const;
282 bool isMirrored() const;
283
284 bool isEnabled() const;
285 void setEnabled(bool enabled);
286
287 // 2.5 (Qt 5.12)
288 qreal horizontalPadding() const;
289 void setHorizontalPadding(qreal padding);
290 void resetHorizontalPadding();
291
292 qreal verticalPadding() const;
293 void setVerticalPadding(qreal padding);
294 void resetVerticalPadding();
295
296 qreal implicitContentWidth() const;
297 qreal implicitContentHeight() const;
298
299 qreal implicitBackgroundWidth() const;
300 qreal implicitBackgroundHeight() const;
301
302 qreal topInset() const;
303 void setTopInset(qreal inset);
304 void resetTopInset();
305
306 qreal leftInset() const;
307 void setLeftInset(qreal inset);
308 void resetLeftInset();
309
310 qreal rightInset() const;
311 void setRightInset(qreal inset);
312 void resetRightInset();
313
314 qreal bottomInset() const;
315 void setBottomInset(qreal inset);
316 void resetBottomInset();
317
318 void setWindowModality(const Qt::WindowModality modality);
319
320 enum PopupType {
321 Item,
322 Window,
323 Native
324 };
325 Q_ENUM(PopupType)
326
327 PopupType popupType() const;
328 void setPopupType(PopupType);
329
330public Q_SLOTS:
331 void open();
332 void close();
333
334Q_SIGNALS:
335 void opened();
336 void closed();
337 void aboutToShow();
338 void aboutToHide();
339 void xChanged();
340 void yChanged();
341 void zChanged();
342 void widthChanged();
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();
360 void fontChanged();
361 void localeChanged();
362 void parentChanged();
363 void backgroundChanged();
364 void contentItemChanged();
365 void contentChildrenChanged();
366 void clipChanged();
367 void focusChanged();
368 void activeFocusChanged();
369 void modalChanged();
370 void dimChanged();
371 void visibleChanged();
372 void opacityChanged();
373 void scaleChanged();
374 void closePolicyChanged();
375 void enterChanged();
376 void exitChanged();
377 void windowChanged(QQuickWindow *window);
378 // 2.1 (Qt 5.8)
379 Q_REVISION(2, 1) void spacingChanged();
380 // 2.3 (Qt 5.10)
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();
386 // 2.5 (Qt 5.12)
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();
398
399protected:
400 QQuickPopup(QQuickPopupPrivate &dd, QObject *parent);
401
402 void classBegin() override;
403 void componentComplete() override;
404 bool isComponentComplete() const;
405
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();
420#endif
421#if QT_CONFIG(wheelevent)
422 virtual void wheelEvent(QWheelEvent *event);
423#endif
424
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);
435
436 virtual QFont defaultFont() const;
437
438#if QT_CONFIG(accessibility)
439 QAccessible::Role effectiveAccessibleRole() const;
440private:
441 virtual QAccessible::Role accessibleRole() const;
442protected:
443 virtual void accessibilityActiveChanged(bool active);
444#endif
445
446 QString accessibleName() const;
447 void maybeSetAccessibleName(const QString &name);
448
449 QVariant accessibleProperty(const char *propertyName);
450 bool setAccessibleProperty(const char *propertyName, const QVariant &value);
451
452private:
453 QQuickItem *findParentItem() const;
454
455 QQuickItem *safeAreaAttachmentItem() override;
456
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;
463};
464
465Q_DECLARE_OPERATORS_FOR_FLAGS(QQuickPopup::ClosePolicy)
466
467QT_END_NAMESPACE
468
469#endif // QQUICKPOPUP_P_H
void readOnlyChanged(bool isReadOnly)
void implicitWidthChanged() override
qreal getImplicitWidth() const override
bool setLastFocusChangeReason(Qt::FocusReason reason) override
void setFont_helper(const QFont &font)
QQuickFlickable * flickable
QQuickDeferredPointer< QQuickItem > background
void setTopInset(qreal value, bool reset=false)
void setLeftInset(qreal value, bool reset=false)
void setRightInset(qreal value, bool reset=false)
void executeBackground(bool complete=false)
QLazilyAllocated< ExtraData > extra
void updateFont(const QFont &font)
void setBottomInset(qreal value, bool reset=false)
void itemDestroyed(QQuickItem *item) override
void itemGeometryChanged(QQuickItem *item, QQuickGeometryChange change, const QRectF &diff) override
void itemImplicitWidthChanged(QQuickItem *item) override
void attachFlickable(QQuickFlickable *flickable)
void inheritFont(const QFont &font)
qreal getImplicitHeight() const override
QQuickPressHandler pressHandler
void itemImplicitHeightChanged(QQuickItem *item) override
QMarginsF getInset() const
static QQuickTextAreaPrivate * get(QQuickTextArea *item)
QPalette defaultPalette() const override
void implicitHeightChanged() override
void executeBackground(bool complete=false)
static QQuickTextFieldPrivate * get(QQuickTextField *item)
void itemGeometryChanged(QQuickItem *item, QQuickGeometryChange change, const QRectF &diff) override
void echoModeChanged(QQuickTextField::EchoMode echoMode)
qreal getImplicitHeight() const override
void setBottomInset(qreal value, bool reset=false)
void inheritFont(const QFont &font)
QQuickDeferredPointer< QQuickItem > background
void setRightInset(qreal value, bool reset=false)
void itemImplicitWidthChanged(QQuickItem *item) override
void readOnlyChanged(bool isReadOnly)
void itemImplicitHeightChanged(QQuickItem *item) override
void setLeftInset(qreal value, bool reset=false)
qreal getImplicitWidth() const override
void setFont_helper(const QFont &font)
void implicitHeightChanged() override
void setTopInset(qreal value, bool reset=false)
void itemDestroyed(QQuickItem *item) override
QQuickPressHandler pressHandler
void implicitWidthChanged() override
QLazilyAllocated< ExtraData > extra
void updateFont(const QFont &font)
QPalette defaultPalette() const override
bool setLastFocusChangeReason(Qt::FocusReason reason) override
static bool isKeyFocusReason(Qt::FocusReason reason)
static QString contentItemName()