diff options
author | Daniel Teichmann <daniel.teichmann@das-netzwerkteam.de> | 2020-07-28 03:35:20 +0200 |
---|---|---|
committer | Daniel Teichmann <daniel.teichmann@das-netzwerkteam.de> | 2020-07-28 03:35:27 +0200 |
commit | 755a279d8588ed68a9ed5e1a12bd3a8c3e7dbd37 (patch) | |
tree | 8676fb74ba56daa5e9a37f93d384605ce73e4127 /ToastManager.qml | |
parent | 1f24b9cb8bb7ce46c90e5c40b657c44bcedd5675 (diff) | |
download | RWA.Support.DesktopApp-755a279d8588ed68a9ed5e1a12bd3a8c3e7dbd37.tar.gz RWA.Support.DesktopApp-755a279d8588ed68a9ed5e1a12bd3a8c3e7dbd37.tar.bz2 RWA.Support.DesktopApp-755a279d8588ed68a9ed5e1a12bd3a8c3e7dbd37.zip |
Add Toast function && Add 'Copied ... into clipboard' toast
Diffstat (limited to 'ToastManager.qml')
-rw-r--r-- | ToastManager.qml | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/ToastManager.qml b/ToastManager.qml new file mode 100644 index 0000000..8bb419b --- /dev/null +++ b/ToastManager.qml @@ -0,0 +1,57 @@ +import QtQuick 2.0 + +/** + * adapted from StackOverflow: + * http://stackoverflow.com/questions/26879266/make-toast-in-android-by-qml + * GitHub Gist: https://gist.github.com/jonmcclung/bae669101d17b103e94790341301c129 + * @brief Manager that creates Toasts dynamically + */ +ListView { + /** + * Public + */ + + /** + * @brief Shows a Toast + * + * @param {string} text Text to show + * @param {real} duration Duration to show in milliseconds, defaults to 3000 + */ + function show(text, duration) { + model.insert(0, {text: text, duration: duration}); + } + + /** + * Private + */ + + id: root + + z: Infinity + spacing: 5 + anchors.fill: parent + anchors.bottomMargin: 10 + verticalLayoutDirection: ListView.BottomToTop + + interactive: false + + displaced: Transition { + NumberAnimation { + properties: "y" + easing.type: Easing.InOutQuad + } + } + + delegate: Toast { + Component.onCompleted: { + if (typeof duration === "undefined") { + show(text); + } + else { + show(text, duration); + } + } + } + + model: ListModel {id: model} +} |