mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	Helper function that retrieved the total weight for a dive to be displayed on the DiveDetials page. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
		
			
				
	
	
		
			244 lines
		
	
	
	
		
			5.2 KiB
		
	
	
	
		
			QML
		
	
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
	
		
			5.2 KiB
		
	
	
	
		
			QML
		
	
	
	
	
	
| import QtQuick 2.3
 | |
| /*
 | |
| import QtWebView 1.0
 | |
| */
 | |
| import QtQuick.Controls 1.2
 | |
| import QtQuick.Controls.Styles 1.2
 | |
| import QtQuick.Dialogs 1.2
 | |
| import QtQuick.Layouts 1.1
 | |
| import org.subsurfacedivelog.mobile 1.0
 | |
| import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
 | |
| 
 | |
| Item {
 | |
| 	id: detailsView
 | |
| 	property int labelWidth: MobileComponents.Units.gridUnit * 10
 | |
| 	property string cylinder: manager.getCylinder(dive.id)
 | |
| 	property string weight: manager.getWeights(dive.id)
 | |
| 	width: parent.width
 | |
| 	height: mainLayout.implicitHeight + MobileComponents.Units.iconSizes.large
 | |
| 	Rectangle {
 | |
| 	    z: 99
 | |
| 		color: MobileComponents.Theme.textColor
 | |
| 		opacity: 0.3
 | |
| 		width: MobileComponents.Units.smallSpacing/4
 | |
| 		anchors {
 | |
| 			right: parent.right
 | |
| 			top: parent.top
 | |
| 			bottom: parent.bottom
 | |
| 		}
 | |
| 	}
 | |
| 	GridLayout {
 | |
| 		id: mainLayout
 | |
| 		anchors {
 | |
| 		    top: parent.top
 | |
| 		    left: parent.left
 | |
| 		    right: parent.right
 | |
| 		    margins: MobileComponents.Units.gridUnit
 | |
| 		}
 | |
| 		columns: 4
 | |
| 		rowSpacing: MobileComponents.Units.smallSpacing * 2
 | |
| 		columnSpacing: MobileComponents.Units.smallSpacing
 | |
| 
 | |
| 		MobileComponents.Heading {
 | |
| 			id: detailsViewHeading
 | |
| 			Layout.fillWidth: true
 | |
| 			text: dive.location
 | |
| 			font.underline: dive.gps !== ""
 | |
| 			Layout.columnSpan: 4
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 			MouseArea {
 | |
| 				anchors.fill: parent
 | |
| 				onClicked: {
 | |
| 					if (dive.gps !== "")
 | |
| 						manager.showMap(dive.gps)
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		/*
 | |
| 		Rectangle {
 | |
| 			id: mapView
 | |
| 			width: parent.width
 | |
| 			height: parents.width * 0.7
 | |
| 			WebView {
 | |
| 				id: webView
 | |
| 				anchors.fill: parent
 | |
| 				url: "http://www.google.com"
 | |
| 			}
 | |
| 		}
 | |
| 	*/
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			id: dateLabel
 | |
| 			text: "Date: "
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: dive.date + " " + dive.time
 | |
| 			Layout.columnSpan: 2
 | |
| 			Layout.fillWidth: true
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: numberText
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 			text: "#" + dive.number
 | |
| 			color: MobileComponents.Theme.textColor
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			id: depthLabel
 | |
| 			text: "Depth: "
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: dive.depth
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 			text: "Duration: "
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			text: dive.duration
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 		}
 | |
| 
 | |
| 		QMLProfile {
 | |
| 			id: qmlProfile
 | |
| 			Layout.fillWidth: true
 | |
| 			Layout.preferredHeight: Layout.minimumHeight
 | |
| 			Layout.minimumHeight: width * 0.75
 | |
| 			Layout.columnSpan: 4
 | |
| 			clip: false
 | |
| 			devicePixelRatio: MobileComponents.Units.devicePixelRatio
 | |
| 			Rectangle {
 | |
| 				color: "transparent"
 | |
| 				opacity: 0.6
 | |
| 				border.width: 1
 | |
| 				border.color: MobileComponents.Theme.textColor;
 | |
| 				anchors.fill: parent
 | |
| 			}
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Heading {
 | |
| 			Layout.fillWidth: true
 | |
| 			level: 3
 | |
| 			text: "Dive Details"
 | |
| 			Layout.columnSpan: 4
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: "Air Temp:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtAirTemp
 | |
| 			text: dive.airTemp
 | |
| 			Layout.fillWidth: true
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: "Water Temp:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtWaterTemp
 | |
| 			text: dive.waterTemp
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: "Suit:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtSuit
 | |
| 			text: dive.suit
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 			text: "Weight:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtWeight
 | |
| 			text: weight
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: "Cylinder:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtCylinder
 | |
| 			text: cylinder
 | |
| 			Layout.fillWidth: true
 | |
| 			wrapMode: TextEdit.WordWrap
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: "Dive Master:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtDiveMaster
 | |
| 			text: dive.divemaster
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 			Layout.alignment: Qt.AlignRight
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			Layout.alignment: Qt.AlignLeft
 | |
| 			text: "Buddy:"
 | |
| 			opacity: 0.6
 | |
| 		}
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtBuddy
 | |
| 			text: dive.buddy
 | |
| 			Layout.fillWidth: true
 | |
| 			wrapMode: TextEdit.WordWrap
 | |
| 			Layout.columnSpan: 3
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Heading {
 | |
| 			Layout.fillWidth: true
 | |
| 			level: 3
 | |
| 			text: "Notes"
 | |
| 			Layout.columnSpan: 4
 | |
| 		}
 | |
| 
 | |
| 		MobileComponents.Label {
 | |
| 			id: txtNotes
 | |
| 			text: dive.notes
 | |
| 			focus: true
 | |
| 			Layout.columnSpan: 4
 | |
| 			Layout.fillWidth: true
 | |
| 			Layout.fillHeight: true
 | |
| 			//selectByMouse: true
 | |
| 			wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
 | |
| 		}
 | |
| 		Item {
 | |
| 			Layout.columnSpan: 4
 | |
| 			Layout.fillWidth: true
 | |
| 			Layout.minimumHeight: MobileComponents.Units.gridUnit * 3
 | |
| 		}
 | |
| 		Component.onCompleted: {
 | |
| 			qmlProfile.setMargin(MobileComponents.Units.smallSpacing)
 | |
| 			qmlProfile.diveId = model.dive.id;
 | |
| 			qmlProfile.update();
 | |
| 		}
 | |
| 	}
 | |
| }
 |