Display overall statistics
[harbour-pedalo.git] / qml / pages / Stats.qml
index f6e319c..39ccc79 100644 (file)
@@ -11,57 +11,63 @@ Page {
     SilicaFlickable {
         id: statsView
         anchors.fill: parent
-        contentHeight: statsColumn.implicitHeight
+        contentHeight: statsColumn.implicitHeight + headerItem.height
 
         VerticalScrollDecorator {}
 
+        PageHeader {
+            id: headerItem
+            title: qsTr("Stats")
+        }
+
         Column {
             id: statsColumn
             spacing: Theme.paddingLarge
-            width: parent.width
-
-            PageHeader {
-                title: qsTr("Stats")
-            }
+            width: isPortrait ? parent.width : parent.width * 0.5
+            y: headerItem.height
 
             InfoRow {
                 label: qsTr("Journeys:")
-                value: "0"
+                value: currentStatus.getJourneyCount()
                 midlineRatio: 0.7
                 midlineMin: Theme.fontSizeSmall * 10
-                midlineMax: Theme.fontSizeSmall * 15
+                midlineMax: Theme.fontSizeSmall * 20
                 pixelSize: Theme.fontSizeMedium
                 labelTextBold: true
+                horizontalAlignment: Text.AlignRight
             }
 
             InfoRow {
                 label: qsTr("Time spent cycling:")
-                value: "0"
-                midlineRatio: 0.7
+                value: currentStatus.getFormattedTime(currentStatus.getTimeSpentCycling(), 0, 5)
+                midlineRatio: 0.5
                 midlineMin: Theme.fontSizeSmall * 10
-                midlineMax: Theme.fontSizeSmall * 15
+                midlineMax: Theme.fontSizeSmall * 20
                 pixelSize: Theme.fontSizeMedium
                 labelTextBold: true
+                horizontalAlignment: Text.AlignRight
             }
 
             InfoRow {
                 label: qsTr("Average journey duration:")
-                value: "0"
-                midlineRatio: 0.7
+                value: currentStatus.getFormattedTime(currentStatus.getAverageDuration(), 1, 5)
+                midlineRatio: 0.6
                 midlineMin: Theme.fontSizeSmall * 10
-                midlineMax: Theme.fontSizeSmall * 15
+                midlineMax: Theme.fontSizeSmall * 20
                 pixelSize: Theme.fontSizeMedium
                 labelTextBold: true
+                horizontalAlignment: Text.AlignRight
             }
 
             InfoRow {
                 label: qsTr("Speed percentile:")
-                value: "0%"
+                value: Math.round(100.0 - currentStatus.getSpeedPercentile() * 100) + "%"
                 midlineRatio: 0.7
                 midlineMin: Theme.fontSizeSmall * 10
-                midlineMax: Theme.fontSizeSmall * 15
+                midlineMax: Theme.fontSizeSmall * 20
                 pixelSize: Theme.fontSizeMedium
                 labelTextBold: true
+                horizontalAlignment: Text.AlignRight
             }
         }
     }