diff options
Diffstat (limited to 'qml/watch')
-rw-r--r-- | qml/watch/WatchView.qml | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/qml/watch/WatchView.qml b/qml/watch/WatchView.qml new file mode 100644 index 0000000..ca880eb --- /dev/null +++ b/qml/watch/WatchView.qml @@ -0,0 +1,49 @@ +import QtQuick 2.0 + +Flickable { + id: watchView + width: 96 + height: 96 + clip: true + flickableDirection: Flickable.HorizontalFlick + + property int curPage: 0 + + WidgetView { + id: widgetView + model: curWidgets + editMode: true + onEmptyWidgetClicked: { + pageStack.push(Qt.resolvedUrl("../pages/AddWidget.qml"), { + 'addToPage': page, + 'addToPos': pos + }); + } + } + + contentWidth: widgetView.width + contentHeight: widgetView.height + + NumberAnimation { + id: pivotAnim + targets: watchView + property: "contentX" + to: curPage * watchView.width + duration: 100 + easing.type: Easing.InOutQuad + } + + onMovementStarted: { + pivotAnim.stop() + } + + onMovementEnded: { + curPage = Math.round(watchView.contentX / watchView.width) + pivotAnim.start() + } + + function switchToPage(page) { + curPage = page; + pivotAnim.start(); + } +} |