Add journey info page
[harbour-pedalo.git] / qml / pages / JourneyList.qml
index 0468df0..1708d20 100644 (file)
@@ -15,8 +15,9 @@ Page {
         header: PageHeader {
             title: qsTr("Journey list")
         }
-        delegate: BackgroundItem {
+        delegate: ListItem {
             id: delegate
+            menu: journeyMenuComponent
 
             Row {
                 spacing: Theme.paddingLarge
@@ -38,7 +39,27 @@ Page {
                     color: delegate.highlighted ? Theme.highlightColor : Theme.primaryColor
                 }
             }
-            onClicked: pageStack.push(Qt.resolvedUrl("AddJourney.qml"), {title: "Edit journey", index: index, start: journeymodel.epochToDateTime(start), duration: duration, overtook: overtook, overtakenby: overtakenby})
+            onClicked: pageStack.push(Qt.resolvedUrl("JourneyInfo.qml"), {title: "Journey info", index: index, start: journeymodel.epochToDateTime(start), duration: duration, overtook: overtook, overtakenby: overtakenby})
+
+            Component {
+                id: journeyMenuComponent
+                ContextMenu {
+                    MenuItem {
+                        text: qsTr("Edit")
+                        onClicked: pageStack.push(Qt.resolvedUrl("JourneyEdit.qml"), {title: "Edit journey", index: index, start: journeymodel.epochToDateTime(start), duration: duration, overtook: overtook, overtakenby: overtakenby})
+                    }
+                    MenuItem {
+                        text: qsTr("Delete")
+                        onClicked: remove(index)
+                    }
+                }
+            }
+
+            function remove(index) {
+                remorseAction(qsTr("Deleting journey"), function() {
+                    onClicked: journeymodel.deleteJourney(index)
+                })
+            }
         }
         VerticalScrollDecorator {}
     }