aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-mobile/qml/DiveDetails.qml4
-rw-r--r--qt-mobile/qml/TopBar.qml65
-rw-r--r--qt-mobile/qml/main.qml138
3 files changed, 83 insertions, 124 deletions
diff --git a/qt-mobile/qml/DiveDetails.qml b/qt-mobile/qml/DiveDetails.qml
index afb62104a..87078d1ac 100644
--- a/qt-mobile/qml/DiveDetails.qml
+++ b/qt-mobile/qml/DiveDetails.qml
@@ -38,10 +38,6 @@ Item {
width: parent.width
spacing: 8
- TopBar {
-
- }
-
Button {
text: "Hide Dive Profile"
onClicked: {
diff --git a/qt-mobile/qml/TopBar.qml b/qt-mobile/qml/TopBar.qml
index 552159d53..eb7403f9b 100644
--- a/qt-mobile/qml/TopBar.qml
+++ b/qt-mobile/qml/TopBar.qml
@@ -8,33 +8,52 @@ import QtQuick.Window 2.2
import org.subsurfacedivelog.mobile 1.0
Rectangle {
- id: topBar
+ id: topPart
+
+ property bool goBack: (stackView.depth > 1)
+
color: theme.accentColor
+ Layout.minimumHeight: units.gridUnit * 2 + units.smallSpacing * 2
Layout.fillWidth: true
Layout.margins: 0
- Layout.minimumHeight: prefsButton.height + units.smallSpacing * 2
RowLayout {
- anchors.bottom: topBar.bottom
+ anchors.bottom: topPart.bottom
anchors.bottomMargin: units.smallSpacing
- anchors.left: topBar.left
+ anchors.left: topPart.left
anchors.leftMargin: units.smallSpacing
- anchors.right: topBar.right
+ anchors.right: topPart.right
anchors.rightMargin: units.smallSpacing
+ Image {
+ source: "qrc:/qml/subsurface-mobile-icon.png"
+ Layout.maximumWidth: units.gridUnit * 2
+ Layout.preferredWidth: units.gridUnit * 2
+ Layout.preferredHeight: units.gridUnit * 2
+ }
+ Text {
+ text: qsTr("Subsurface")
+ font.pointSize: units.fontMetrics.font.pointSize * 2
+ Layout.fillWidth: false
+ color: theme.accentTextColor
+ }
+ Item {
+ Layout.fillWidth: true
+ }
Button {
- id: backButton
- Layout.maximumHeight: prefsButton.height
- Layout.minimumHeight: prefsButton.height
+ id: prefsButton
+ // Display back arrow or menu button
+ text: topPart.goBack ? "\u2190" : "\u22ee"
+ anchors.right: parent.right
Layout.preferredWidth: units.gridUnit * 2
- text: "\u2190"
+ Layout.preferredHeight: parent.height
style: ButtonStyle {
background: Rectangle {
- color: theme.accentColor
implicitWidth: units.gridUnit * 2
+ color: theme.accentColor
}
label: Text {
id: txt
color: theme.accentTextColor
- font.pointSize: 18
+ font.pointSize: units.fontMetrics.font.pointSize * 2
font.bold: true
text: control.text
horizontalAlignment: Text.AlignHCenter
@@ -42,26 +61,14 @@ Rectangle {
}
}
onClicked: {
- if (stackView.currentItem.objectName == "DiveDetails")
- {
- manager.commitChanges(
- dive_id,
- suit,
- buddy,
- divemaster,
- notes
- )
+ if (topPart.goBack) {
+ stackView.pop()
+ } else {
+ prefsMenu.popup()
}
- stackView.pop();
}
}
- Text {
- text: qsTr("Subsurface mobile")
- font.pointSize: 18
- color: theme.accentTextColor
- anchors.left: backButton.right
- anchors.leftMargin: units.smallSpacing
- //horizontalAlignment: Text.AlignHCenter
- }
+
}
+
}
diff --git a/qt-mobile/qml/main.qml b/qt-mobile/qml/main.qml
index f75476537..b52fda057 100644
--- a/qt-mobile/qml/main.qml
+++ b/qt-mobile/qml/main.qml
@@ -17,6 +17,9 @@ ApplicationWindow {
Theme.Units {
id: units
+
+ property int titlePointSize: fontMetrics.font.pointSize * 1.5
+
}
Theme.Theme {
@@ -81,105 +84,58 @@ ApplicationWindow {
}
}
- StackView {
- id: stackView
+ ColumnLayout {
anchors.fill: parent
- focus: true
- Keys.onReleased: if (event.key == Qt.Key_Back && stackView.depth > 1) {
- stackView.pop()
- event.accepted = true;
- }
- initialItem: Item {
- width: parent.width
- height: parent.height
-
- ColumnLayout {
- id: awLayout
- anchors.fill: parent
- spacing: units.gridUnit / 2
- Rectangle {
- id: topPart
- color: theme.accentColor
- Layout.minimumHeight: units.gridUnit * 2 + units.smallSpacing * 2
- Layout.fillWidth: true
- Layout.margins: 0
- RowLayout {
- anchors.bottom: topPart.bottom
- anchors.bottomMargin: units.smallSpacing
- anchors.left: topPart.left
- anchors.leftMargin: units.smallSpacing
- anchors.right: topPart.right
- anchors.rightMargin: units.smallSpacing
- Image {
- source: "qrc:/qml/subsurface-mobile-icon.png"
- Layout.maximumWidth: units.gridUnit * 2
- Layout.preferredWidth: units.gridUnit * 2
- Layout.preferredHeight: units.gridUnit * 2
- }
- Text {
- text: qsTr("Subsurface mobile")
- font.pointSize: 18
- Layout.fillWidth: false
- color: theme.accentTextColor
- }
- Item {
- Layout.fillWidth: true
- }
- Button {
- id: prefsButton
- text: "\u22ee"
- anchors.right: parent.right
- Layout.preferredWidth: units.gridUnit * 2
- Layout.preferredHeight: units.gridUnit * 2
- style: ButtonStyle {
- background: Rectangle {
- implicitWidth: units.gridUnit * 2
- color: theme.accentColor
- }
- label: Text {
- id: txt
- color: theme.accentTextColor
- font.pointSize: 18
- font.bold: true
- text: control.text
- horizontalAlignment: Text.AlignHCenter
- }
- }
- onClicked: {
- prefsMenu.popup()
- }
- }
- }
-
- }
+ TopBar {
- Rectangle {
- id: detailsPage
- Layout.fillHeight: true
- Layout.fillWidth: true
+ }
- DiveList {
- anchors.fill: detailsPage
- id: diveDetails
- color: theme.backgroundColor
+ StackView {
+ id: stackView
+ Layout.preferredWidth: parent.width
+ Layout.fillHeight: true
+ focus: true
+ Keys.onReleased: if (event.key == Qt.Key_Back && stackView.depth > 1) {
+ stackView.pop()
+ event.accepted = true;
}
- }
+ initialItem: Item {
+ width: parent.width
+ height: parent.height
+
+ ColumnLayout {
+ id: awLayout
+ anchors.fill: parent
+ spacing: units.gridUnit / 2
+
+ Rectangle {
+ id: detailsPage
+ Layout.fillHeight: true
+ Layout.fillWidth: true
+
+ DiveList {
+ anchors.fill: detailsPage
+ id: diveDetails
+ color: theme.backgroundColor
+ }
+ }
+
+ Rectangle {
+ id: messageArea
+ height: childrenRect.height
+ Layout.fillWidth: true
- Rectangle {
- id: messageArea
- height: childrenRect.height
- Layout.fillWidth: true
-
- Text {
- id: message
- color: theme.textColor
- text: ""
- styleColor: theme.textColor
- font.pointSize: 10
+ Text {
+ id: message
+ color: theme.textColor
+ text: ""
+ styleColor: theme.textColor
+ font.pointSize: 10
+ }
}
- }
+ }
}
}
}