summaryrefslogtreecommitdiffstats
path: root/qt-mobile/qml/DiveDetails.qml
diff options
context:
space:
mode:
authorGravatar Marco Martin <notmart@gmail.com>2015-11-29 21:13:57 +0100
committerGravatar Sebastian Kügler <sebas@kde.org>2015-11-29 21:59:48 +0100
commit32219f127634b7783b3967d94e35faeff36b51ef (patch)
tree88ca5b71091f293b96cbe893e44c7bbe7cf3440a /qt-mobile/qml/DiveDetails.qml
parent3d3fce7152d2748818a668e4b3380f38541adca1 (diff)
downloadsubsurface-32219f127634b7783b3967d94e35faeff36b51ef.tar.gz
Port the page navigation to ApplicationWindow's one
The ApplicationWindow component has an internal PageRow for the management of the application's pages, use that instead of an own StackView. Use shared components for common things in the app ListItem for the dive list Page for application pages, for correct background color and moving of the action button Signed-off-by: Marco Martin <notmart@gmail.com> Signed-off-by: Sebastian Kügler <sebas@kde.org>
Diffstat (limited to 'qt-mobile/qml/DiveDetails.qml')
-rw-r--r--qt-mobile/qml/DiveDetails.qml209
1 files changed, 110 insertions, 99 deletions
diff --git a/qt-mobile/qml/DiveDetails.qml b/qt-mobile/qml/DiveDetails.qml
index 401921c9f..e69d0e672 100644
--- a/qt-mobile/qml/DiveDetails.qml
+++ b/qt-mobile/qml/DiveDetails.qml
@@ -3,13 +3,14 @@ import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
-import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
import org.subsurfacedivelog.mobile 1.0
+import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
-Item {
+MobileComponents.Page {
id: diveDetailsWindow
width: parent.width
objectName: "DiveDetails"
+ flickable: flick
property string location
property string dive_id
@@ -30,120 +31,130 @@ Item {
Flickable {
id: flick
anchors.fill: parent
- contentHeight: parent.height
+ contentHeight: content.height
clip: true
- ColumnLayout {
- width: parent.width
- spacing: 8
+ Item {
+ id: content
+ width: flick.width
+ height: contentRect.height + MobileComponents.Units.smallSpacing * 2
+ ColumnLayout {
+ anchors {
+ left: parent.left
+ right: parent.right
+ top: parent.top
+ margins: MobileComponents.Units.smallSpacing
+ }
+ spacing: MobileComponents.Units.smallSpacing
- GridLayout {
- id: editorDetails
- width: parent.width
- columns: 2
- Label {
- Layout.columnSpan: 2
- font.pointSize: subsurfaceTheme.titlePointSize
- text: "Dive " + number + " (" + date + ")"
- }
+ GridLayout {
+ id: editorDetails
+ width: parent.width
+ columns: 2
- Item {
- Layout.columnSpan: 2
- Layout.fillWidth: true
- Layout.preferredHeight: qmlProfile.visible ? qmlProfile.height : profileHideButton.height
- QMLProfile {
- id: qmlProfile
- height: MobileComponents.Units.gridUnit * 25
- anchors {
- top: parent.top
- left: parent.left
- right: parent.right
- }
- //Rectangle { color: "green"; opacity: 0.4; anchors.fill: parent } // used for debugging the dive profile sizing, will be removed later
+ MobileComponents.Heading {
+ Layout.columnSpan: 2
+ text: "Dive " + number + " (" + date + ")"
}
- Button {
- id: profileHideButton
- anchors {
- right: parent.right
- top: parent.top
+
+ Item {
+ Layout.columnSpan: 2
+ Layout.fillWidth: true
+ Layout.preferredHeight: qmlProfile.visible ? qmlProfile.height : profileHideButton.height
+ QMLProfile {
+ id: qmlProfile
+ height: MobileComponents.Units.gridUnit * 25
+ anchors {
+ top: parent.top
+ left: parent.left
+ right: parent.right
+ }
+ //Rectangle { color: "green"; opacity: 0.4; anchors.fill: parent } // used for debugging the dive profile sizing, will be removed later
}
- text: "Hide Dive Profile"
- onClicked: {
- qmlProfile.visible = !qmlProfile.visible
- if (qmlProfile.visible) {
- text = "Hide Dive Profile"
- } else {
- text = "Show Dive Profile"
+ Button {
+ id: profileHideButton
+ anchors {
+ right: parent.right
+ top: parent.top
+ }
+ text: "Hide Dive Profile"
+ onClicked: {
+ qmlProfile.visible = !qmlProfile.visible
+ if (qmlProfile.visible) {
+ text = "Hide Dive Profile"
+ } else {
+ text = "Show Dive Profile"
+ }
}
}
}
- }
- Label {
- text: "Location:"
- }
- TextField {
- id: txtLocation; text: location;
- Layout.fillWidth: true
- }
+ Label {
+ text: "Location:"
+ }
+ TextField {
+ id: txtLocation; text: location;
+ Layout.fillWidth: true
+ }
- Label {
- text: "Air Temp:"
- }
- TextField {
- id: txtAirTemp
- text: airtemp
- Layout.fillWidth: true
- }
+ Label {
+ text: "Air Temp:"
+ }
+ TextField {
+ id: txtAirTemp
+ text: airtemp
+ Layout.fillWidth: true
+ }
- Label {
- text: "Water Temp:"
- }
- TextField {
- id: txtWaterTemp
- text: watertemp
- Layout.fillWidth: true
- }
+ Label {
+ text: "Water Temp:"
+ }
+ TextField {
+ id: txtWaterTemp
+ text: watertemp
+ Layout.fillWidth: true
+ }
- Label {
- text: "Suit:"
+ Label {
+ text: "Suit:"
- }
- TextField {
- id: txtSuit
- text: suit
- Layout.fillWidth: true
- }
+ }
+ TextField {
+ id: txtSuit
+ text: suit
+ Layout.fillWidth: true
+ }
- Label {
- text: "Buddy:"
- }
- TextField {
- id: txtBuddy
- text: buddy
- Layout.fillWidth: true
- }
+ Label {
+ text: "Buddy:"
+ }
+ TextField {
+ id: txtBuddy
+ text: buddy
+ Layout.fillWidth: true
+ }
- Label {
- text: "Dive Master:"
- }
- TextField {
- id: txtDiveMaster
- text: divemaster
- Layout.fillWidth: true
- }
+ Label {
+ text: "Dive Master:"
+ }
+ TextField {
+ id: txtDiveMaster
+ text: divemaster
+ Layout.fillWidth: true
+ }
- Label {
- text: "Notes:"
- }
- TextEdit{
- id: txtNotes
- text: notes
- focus: true
- Layout.fillWidth: true
- Layout.fillHeight: true
- selectByMouse: true
- wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
+ Label {
+ text: "Notes:"
+ }
+ TextEdit{
+ id: txtNotes
+ text: notes
+ focus: true
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ selectByMouse: true
+ wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere
+ }
}
}
}