X-Git-Url: https://www.flypig.org.uk/git/?p=harbour-pedalo.git;a=blobdiff_plain;f=qml%2Fpages%2FStats.qml;h=235ca1c7fe37bfc1c5f2cf7ad3673f9c472f2be7;hp=39ccc793dad31a6b5bca016287d4b52dcdda8dc9;hb=54ab3ebfadf8cb258561a4641249da8c6469dc0f;hpb=5fc520bad80dccf9bf2e0f16552c9f2605417067 diff --git a/qml/pages/Stats.qml b/qml/pages/Stats.qml index 39ccc79..235ca1c 100644 --- a/qml/pages/Stats.qml +++ b/qml/pages/Stats.qml @@ -1,5 +1,6 @@ import QtQuick 2.0 import Sailfish.Silica 1.0 +import harbour.pedalo.graph 1.0 import "../components" Page { @@ -7,6 +8,7 @@ Page { // The effective value will be restricted by ApplicationWindow.allowedOrientations allowedOrientations: Orientation.All + property int showingindex: 0 SilicaFlickable { id: statsView @@ -70,5 +72,63 @@ Page { horizontalAlignment: Text.AlignRight } } + + SlideshowView { + id: graphsView + width: isPortrait ? parent.width : parent.width * 0.5 + height: (isPortrait ? statsPage.height / 2.0 : statsPage.height) - Theme.paddingLarge + itemWidth: width + clip: true + anchors.left: isPortrait ? statsColumn.left : statsColumn.right + anchors.leftMargin: 0 + + y: (isPortrait ? (statsPage.height / 2.0) : statsColumn.y) + + onModelChanged: { + console.log("Model changed"); + model.updateAll(); + } + + model: statsmodel + delegate: Item { + id: delegateItem + width: graphsView.itemWidth + height: graphsView.height + + SectionHeader { + id: sectionHeaderItem + text: title + } + + Graph { + id: graph + width: parent.width - Theme.horizontalPageMargin + anchors.top: sectionHeaderItem.bottom + height: (isPortrait ? (statsPage.height / 2.0) - Theme.paddingLarge : statsPage.height - Theme.paddingLarge - headerItem.height) - sectionHeaderItem.height + anchors.left: parent.left + bardata: barvalues + //linedata: barvalues + labelsx: labels + //labelsy: ["0%", "10%", "20%", "30%", "40%", "50%", "60%", "70%", "80%", "90%", "100%"] + unitsy: units + primary: Theme.primaryColor + secondary: Theme.highlightColor + highlight: Theme.secondaryColor + miny: minval + maxy: maxval + stepy: step + gap: 0.1 + fontsize: Theme.fontSizeExtraSmall + animate: (graphsView.currentItem === delegateItem) ? 1.0 : 0.0 + + Behavior on animate { + NumberAnimation { + easing.type: Easing.OutExpo + duration: 2000 + } + } + } + } + } } }