2016-01-08 05:40:15 +00:00
|
|
|
import QtQuick 2.3
|
|
|
|
import QtQuick.Controls 1.2
|
|
|
|
import QtQuick.Controls.Styles 1.2
|
|
|
|
import QtQuick.Window 2.2
|
|
|
|
import QtQuick.Dialogs 1.2
|
|
|
|
import QtQuick.Layouts 1.1
|
|
|
|
import QtQuick.Window 2.2
|
|
|
|
import org.subsurfacedivelog.mobile 1.0
|
2016-03-08 20:26:54 +00:00
|
|
|
import org.kde.kirigami 1.0 as Kirigami
|
2016-01-08 05:40:15 +00:00
|
|
|
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.ScrollablePage {
|
2016-01-08 05:40:15 +00:00
|
|
|
id: gpsListWindow
|
2016-03-08 20:26:54 +00:00
|
|
|
width: parent.width - Kirigami.Units.gridUnit
|
|
|
|
anchors.margins: Kirigami.Units.gridUnit / 2
|
2016-01-08 05:40:15 +00:00
|
|
|
objectName: "gpsList"
|
2016-03-08 20:26:54 +00:00
|
|
|
title: "GPS Fixes"
|
2016-01-08 05:40:15 +00:00
|
|
|
|
|
|
|
Component {
|
|
|
|
id: gpsDelegate
|
2016-04-01 02:57:12 +00:00
|
|
|
Kirigami.SwipeListItem {
|
2016-01-08 05:40:15 +00:00
|
|
|
id: gpsFix
|
|
|
|
enabled: true
|
|
|
|
width: parent.width
|
2016-03-08 20:26:54 +00:00
|
|
|
property int horizontalPadding: Kirigami.Units.gridUnit / 2 - Kirigami.Units.smallSpacing + 1
|
2016-01-09 05:48:53 +00:00
|
|
|
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.BasicListItem {
|
2016-04-02 12:09:40 +00:00
|
|
|
supportsMouseEvents: true
|
2016-03-08 20:26:54 +00:00
|
|
|
width: parent.width - Kirigami.Units.gridUnit
|
|
|
|
height: childrenRect.height - Kirigami.Units.smallSpacing
|
2016-01-08 05:40:15 +00:00
|
|
|
GridLayout {
|
|
|
|
columns: 4
|
|
|
|
id: timeAndName
|
|
|
|
anchors {
|
|
|
|
left: parent.left
|
|
|
|
leftMargin: horizontalPadding
|
|
|
|
right: parent.right
|
|
|
|
rightMargin: horizontalPadding
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: 'Date: '
|
|
|
|
opacity: 0.6
|
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-09 07:13:30 +00:00
|
|
|
text: date
|
2016-01-19 19:44:08 +00:00
|
|
|
Layout.preferredWidth: Math.max(parent.width / 5, paintedWidth)
|
2016-01-08 05:40:15 +00:00
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: 'Name: '
|
|
|
|
opacity: 0.6
|
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: name
|
2016-01-19 19:44:08 +00:00
|
|
|
Layout.preferredWidth: Math.max(parent.width / 5, paintedWidth)
|
2016-01-08 05:40:15 +00:00
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: 'Latitude: '
|
|
|
|
opacity: 0.6
|
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: latitude
|
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: 'Longitude: '
|
|
|
|
opacity: 0.6
|
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Label {
|
2016-01-08 05:40:15 +00:00
|
|
|
text: longitude
|
|
|
|
font.pointSize: subsurfaceTheme.smallPointSize
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2016-01-09 05:48:53 +00:00
|
|
|
actions: [
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Action {
|
2016-01-09 07:16:19 +00:00
|
|
|
iconName: "trash-empty"
|
2016-01-09 05:48:53 +00:00
|
|
|
onTriggered: {
|
|
|
|
print("delete this!")
|
2016-01-09 07:18:41 +00:00
|
|
|
manager.deleteGpsFix(when)
|
2016-01-09 05:48:53 +00:00
|
|
|
}
|
2016-01-09 07:17:48 +00:00
|
|
|
},
|
2016-03-08 20:26:54 +00:00
|
|
|
Kirigami.Action {
|
2016-01-09 07:17:48 +00:00
|
|
|
iconName: "gps"
|
|
|
|
onTriggered: {
|
2016-04-02 12:09:40 +00:00
|
|
|
showMap(latitude + " " + longitude)
|
2016-01-09 07:17:48 +00:00
|
|
|
}
|
2016-01-09 05:48:53 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
]
|
2016-01-08 05:40:15 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-03-08 20:26:54 +00:00
|
|
|
ListView {
|
|
|
|
id: gpsListView
|
2016-01-08 05:40:15 +00:00
|
|
|
anchors.fill: parent
|
2016-03-08 20:26:54 +00:00
|
|
|
model: gpsModel
|
|
|
|
currentIndex: -1
|
|
|
|
delegate: gpsDelegate
|
|
|
|
boundsBehavior: Flickable.StopAtBounds
|
|
|
|
maximumFlickVelocity: parent.height * 5
|
|
|
|
cacheBuffer: Math.max(5000, parent.height * 5)
|
|
|
|
focus: true
|
|
|
|
clip: true
|
|
|
|
header: Kirigami.Heading {
|
|
|
|
x: Kirigami.Units.gridUnit / 2
|
|
|
|
height: paintedHeight + Kirigami.Units.gridUnit / 2
|
|
|
|
verticalAlignment: Text.AlignBottom
|
|
|
|
text: "List of stored GPS fixes"
|
2016-01-08 05:40:15 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|