diff options
Diffstat (limited to 'src/templates/qquickpopup_p_p.h')
-rw-r--r-- | src/templates/qquickpopup_p_p.h | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/src/templates/qquickpopup_p_p.h b/src/templates/qquickpopup_p_p.h index 017949cd..efb95bff 100644 --- a/src/templates/qquickpopup_p_p.h +++ b/src/templates/qquickpopup_p_p.h @@ -73,7 +73,7 @@ public: void transitionExit(); protected: - void finished() Q_DECL_OVERRIDE; + void finished() override; private: enum TransitionState { @@ -92,24 +92,25 @@ public: explicit QQuickPopupItem(QQuickPopup *popup); protected: - void focusInEvent(QFocusEvent *event) Q_DECL_OVERRIDE; - void focusOutEvent(QFocusEvent *event) Q_DECL_OVERRIDE; - void keyPressEvent(QKeyEvent *event) Q_DECL_OVERRIDE; - void keyReleaseEvent(QKeyEvent *event) Q_DECL_OVERRIDE; - void mousePressEvent(QMouseEvent *event) Q_DECL_OVERRIDE; - void mouseMoveEvent(QMouseEvent *event) Q_DECL_OVERRIDE; - void mouseReleaseEvent(QMouseEvent *event) Q_DECL_OVERRIDE; - void mouseDoubleClickEvent(QMouseEvent *event) Q_DECL_OVERRIDE; - void mouseUngrabEvent() Q_DECL_OVERRIDE; - void wheelEvent(QWheelEvent *event) Q_DECL_OVERRIDE; - - void contentItemChange(QQuickItem *newItem, QQuickItem *oldItem) Q_DECL_OVERRIDE; - void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry) Q_DECL_OVERRIDE; - void itemChange(ItemChange change, const ItemChangeData &data) Q_DECL_OVERRIDE; - void paddingChange(const QMarginsF &newPadding, const QMarginsF &oldPadding) Q_DECL_OVERRIDE; + bool childMouseEventFilter(QQuickItem *child, QEvent *event) override; + void focusInEvent(QFocusEvent *event) override; + void focusOutEvent(QFocusEvent *event) override; + void keyPressEvent(QKeyEvent *event) override; + void keyReleaseEvent(QKeyEvent *event) override; + void mousePressEvent(QMouseEvent *event) override; + void mouseMoveEvent(QMouseEvent *event) override; + void mouseReleaseEvent(QMouseEvent *event) override; + void mouseDoubleClickEvent(QMouseEvent *event) override; + void mouseUngrabEvent() override; + void wheelEvent(QWheelEvent *event) override; + + void contentItemChange(QQuickItem *newItem, QQuickItem *oldItem) override; + void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry) override; + void itemChange(ItemChange change, const ItemChangeData &data) override; + void paddingChange(const QMarginsF &newPadding, const QMarginsF &oldPadding) override; #ifndef QT_NO_ACCESSIBILITY - QAccessible::Role accessibleRole() const Q_DECL_OVERRIDE; + QAccessible::Role accessibleRole() const override; #endif private: @@ -122,17 +123,9 @@ public: explicit QQuickPopupPositioner(QQuickPopupPrivate *popup); ~QQuickPopupPositioner(); - qreal x() const; - void setX(qreal x); - - qreal y() const; - void setY(qreal y); - QQuickItem *parentItem() const; void setParentItem(QQuickItem *parent); - void repositionPopup(); - protected: void itemGeometryChanged(QQuickItem *, const QRectF &, const QRectF &); void itemParentChanged(QQuickItem *, QQuickItem *parent); @@ -145,8 +138,6 @@ private: bool isAncestor(QQuickItem *item) const; - qreal m_x; - qreal m_y; QQuickItem *m_parentItem; QQuickPopupPrivate *m_popup; }; @@ -165,9 +156,12 @@ public: void init(); bool tryClose(QQuickItem *item, QMouseEvent *event); + virtual void reposition(); - void finalizeEnterTransition(); - void finalizeExitTransition(); + virtual void prepareEnterTransition(bool notify = true); + virtual void prepareExitTransition(); + virtual void finalizeEnterTransition(); + virtual void finalizeExitTransition(bool hide = true); QMarginsF getMargins() const; @@ -178,11 +172,14 @@ public: bool focus; bool modal; + bool visible; bool complete; bool hasTopMargin; bool hasLeftMargin; bool hasRightMargin; bool hasBottomMargin; + qreal x; + qreal y; qreal margins; qreal topMargin; qreal leftMargin; @@ -196,7 +193,11 @@ public: QQuickTransition *exit; QQuickPopupItem *popupItem; QQuickPopupPositioner positioner; + QList<QQuickStateAction> enterActions; + QList<QQuickStateAction> exitActions; QQuickPopupTransitionManager transitionManager; + + friend class QQuickPopupTransitionManager; }; QT_END_NAMESPACE |