diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/imports/controls/material/Menu.qml | 4 | ||||
-rw-r--r-- | src/imports/controls/plugins.qmltypes | 4 | ||||
-rw-r--r-- | src/imports/templates/plugins.qmltypes | 4 | ||||
-rw-r--r-- | src/templates/qquickpopup.cpp | 66 | ||||
-rw-r--r-- | src/templates/qquickpopup_p.h | 16 | ||||
-rw-r--r-- | src/templates/qquickpopup_p_p.h | 14 |
6 files changed, 55 insertions, 53 deletions
diff --git a/src/imports/controls/material/Menu.qml b/src/imports/controls/material/Menu.qml index 828fa14e..4523fc26 100644 --- a/src/imports/controls/material/Menu.qml +++ b/src/imports/controls/material/Menu.qml @@ -43,13 +43,13 @@ import QtGraphicalEffects 1.0 T.Menu { id: control - showTransition: Transition { + enter: Transition { // grow_fade_in NumberAnimation { property: "scale"; from: 0.9; to: 1.0; easing.type: Easing.OutQuint; duration: 220 } NumberAnimation { property: "opacity"; from: 0.0; to: 1.0; easing.type: Easing.OutCubic; duration: 150 } } - hideTransition: Transition { + exit: Transition { // shrink_fade_out NumberAnimation { property: "scale"; from: 1.0; to: 0.9; easing.type: Easing.OutQuint; duration: 220 } NumberAnimation { property: "opacity"; from: 1.0; to: 0.0; easing.type: Easing.OutCubic; duration: 150 } diff --git a/src/imports/controls/plugins.qmltypes b/src/imports/controls/plugins.qmltypes index 7300e935..518a9b6c 100644 --- a/src/imports/controls/plugins.qmltypes +++ b/src/imports/controls/plugins.qmltypes @@ -515,8 +515,8 @@ Module { Property { name: "focus"; type: "bool" } Property { name: "modal"; type: "bool" } Property { name: "visible"; type: "bool"; isReadonly: true } - Property { name: "showTransition"; type: "QQuickTransition"; isPointer: true } - Property { name: "hideTransition"; type: "QQuickTransition"; isPointer: true } + Property { name: "enter"; type: "QQuickTransition"; isPointer: true } + Property { name: "exit"; type: "QQuickTransition"; isPointer: true } Signal { name: "pressedOutside" } Signal { name: "releasedOutside" } Signal { name: "clickedOutside" } diff --git a/src/imports/templates/plugins.qmltypes b/src/imports/templates/plugins.qmltypes index 37125e54..e96c09d9 100644 --- a/src/imports/templates/plugins.qmltypes +++ b/src/imports/templates/plugins.qmltypes @@ -509,8 +509,8 @@ Module { Property { name: "focus"; type: "bool" } Property { name: "modal"; type: "bool" } Property { name: "visible"; type: "bool"; isReadonly: true } - Property { name: "showTransition"; type: "QQuickTransition"; isPointer: true } - Property { name: "hideTransition"; type: "QQuickTransition"; isPointer: true } + Property { name: "enter"; type: "QQuickTransition"; isPointer: true } + Property { name: "exit"; type: "QQuickTransition"; isPointer: true } Signal { name: "pressedOutside" } Signal { name: "releasedOutside" } Signal { name: "clickedOutside" } diff --git a/src/templates/qquickpopup.cpp b/src/templates/qquickpopup.cpp index f1d71ebf..f3c87846 100644 --- a/src/templates/qquickpopup.cpp +++ b/src/templates/qquickpopup.cpp @@ -62,21 +62,21 @@ QQuickPopupPrivate::QQuickPopupPrivate() , overlay(Q_NULLPTR) , focus(false) , modal(false) - , showTransition(Q_NULLPTR) - , hideTransition(Q_NULLPTR) + , enter(Q_NULLPTR) + , exit(Q_NULLPTR) , transitionManager(this) { } QQuickPopupPrivate::~QQuickPopupPrivate() { } -void QQuickPopupPrivate::finalizeShowTransition() +void QQuickPopupPrivate::finalizeEnterTransition() { if (focus) contentItem->setFocus(true); } -void QQuickPopupPrivate::finalizeHideTransition() +void QQuickPopupPrivate::finalizeExitTransition() { overlay = Q_NULLPTR; contentItem->setParentItem(Q_NULLPTR); @@ -89,30 +89,30 @@ QQuickPopupTransitionManager::QQuickPopupTransitionManager(QQuickPopupPrivate *p , pp(priv) { } -void QQuickPopupTransitionManager::transitionShow() +void QQuickPopupTransitionManager::transitionEnter() { if (isRunning()) return; QList<QQuickStateAction> actions; - state = Show; - transition(actions, pp->showTransition, pp->contentItem); + state = Enter; + transition(actions, pp->enter, pp->contentItem); } -void QQuickPopupTransitionManager::transitionHide() +void QQuickPopupTransitionManager::transitionExit() { if (isRunning()) return; QList<QQuickStateAction> actions; - state = Hide; - transition(actions, pp->hideTransition, pp->contentItem); + state = Exit; + transition(actions, pp->exit, pp->contentItem); } void QQuickPopupTransitionManager::finished() { - if (state == Show) - pp->finalizeShowTransition(); - else if (state == Hide) - pp->finalizeHideTransition(); + if (state == Enter) + pp->finalizeEnterTransition(); + else if (state == Exit) + pp->finalizeExitTransition(); state = Off; } @@ -177,7 +177,7 @@ void QQuickPopup::open() } emit aboutToShow(); - d->transitionManager.transitionShow(); + d->transitionManager.transitionEnter(); emit visibleChanged(); } @@ -198,7 +198,7 @@ void QQuickPopup::close() d->contentItem->setFocus(false); emit aboutToHide(); - d->transitionManager.transitionHide(); + d->transitionManager.transitionExit(); } /*! @@ -286,43 +286,45 @@ bool QQuickPopup::isVisible() const } /*! - \qmlproperty Transition Qt.labs.controls::Popup::showTransition + \qmlproperty Transition Qt.labs.controls::Popup::enter This property holds the transition that is applied to the content item - when the popup is opened. + when the popup is opened and enters the screen. */ -QQuickTransition *QQuickPopup::showTransition() const +QQuickTransition *QQuickPopup::enter() const { - return d_func()->showTransition; + Q_D(const QQuickPopup); + return d->enter; } -void QQuickPopup::setShowTransition(QQuickTransition *t) +void QQuickPopup::setEnter(QQuickTransition *transition) { Q_D(QQuickPopup); - if (d->showTransition == t) + if (d->enter == transition) return; - d->showTransition = t; - emit showTransitionChanged(); + d->enter = transition; + emit enterChanged(); } /*! - \qmlproperty Transition Qt.labs.controls::Popup::hideTransition + \qmlproperty Transition Qt.labs.controls::Popup::exit This property holds the transition that is applied to the content item - when the popup is closed. + when the popup is closed and exits the screen. */ -QQuickTransition *QQuickPopup::hideTransition() const +QQuickTransition *QQuickPopup::exit() const { - return d_func()->hideTransition; + Q_D(const QQuickPopup); + return d->exit; } -void QQuickPopup::setHideTransition(QQuickTransition *t) +void QQuickPopup::setExit(QQuickTransition *transition) { Q_D(QQuickPopup); - if (d->hideTransition == t) + if (d->exit == transition) return; - d->hideTransition = t; - emit hideTransitionChanged(); + d->exit = transition; + emit exitChanged(); } QT_END_NAMESPACE diff --git a/src/templates/qquickpopup_p.h b/src/templates/qquickpopup_p.h index a7e402ec..c8095609 100644 --- a/src/templates/qquickpopup_p.h +++ b/src/templates/qquickpopup_p.h @@ -64,8 +64,8 @@ class Q_LABSTEMPLATES_EXPORT QQuickPopup : public QObject Q_PROPERTY(bool focus READ hasFocus WRITE setFocus NOTIFY focusChanged) Q_PROPERTY(bool modal READ isModal WRITE setModal NOTIFY modalChanged) Q_PROPERTY(bool visible READ isVisible NOTIFY visibleChanged) - Q_PROPERTY(QQuickTransition *showTransition READ showTransition WRITE setShowTransition NOTIFY showTransitionChanged FINAL) - Q_PROPERTY(QQuickTransition *hideTransition READ hideTransition WRITE setHideTransition NOTIFY hideTransitionChanged FINAL) + Q_PROPERTY(QQuickTransition *enter READ enter WRITE setEnter NOTIFY enterChanged FINAL) + Q_PROPERTY(QQuickTransition *exit READ exit WRITE setExit NOTIFY exitChanged FINAL) public: explicit QQuickPopup(QObject *parent = Q_NULLPTR); @@ -82,19 +82,19 @@ public: bool isVisible() const; - QQuickTransition *showTransition() const; - void setShowTransition(QQuickTransition *); + QQuickTransition *enter() const; + void setEnter(QQuickTransition *transition); - QQuickTransition *hideTransition() const; - void setHideTransition(QQuickTransition *); + QQuickTransition *exit() const; + void setExit(QQuickTransition *transition); Q_SIGNALS: void contentItemChanged(); void focusChanged(); void modalChanged(); void visibleChanged(); - void showTransitionChanged(); - void hideTransitionChanged(); + void enterChanged(); + void exitChanged(); void pressedOutside(); void releasedOutside(); diff --git a/src/templates/qquickpopup_p_p.h b/src/templates/qquickpopup_p_p.h index 0997e12c..900ced9b 100644 --- a/src/templates/qquickpopup_p_p.h +++ b/src/templates/qquickpopup_p_p.h @@ -64,15 +64,15 @@ class QQuickPopupTransitionManager : public QQuickTransitionManager { public: QQuickPopupTransitionManager(QQuickPopupPrivate *); - void transitionShow(); - void transitionHide(); + void transitionEnter(); + void transitionExit(); protected: void finished() Q_DECL_OVERRIDE; private: enum TransitionState { - Off, Show, Hide + Off, Enter, Exit }; TransitionState state; @@ -87,15 +87,15 @@ public: QQuickPopupPrivate(); ~QQuickPopupPrivate(); - void finalizeShowTransition(); - void finalizeHideTransition(); + void finalizeEnterTransition(); + void finalizeExitTransition(); QQuickItem *contentItem; QQuickOverlay *overlay; bool focus; bool modal; - QQuickTransition *showTransition; - QQuickTransition *hideTransition; + QQuickTransition *enter; + QQuickTransition *exit; QQuickPopupTransitionManager transitionManager; }; |