Unverified Commit 58227dfd authored by Don Gagne's avatar Don Gagne Committed by GitHub

Merge pull request #7500 from mavlink/apmNewUI

Fix several issues with APM using the new UI model.
parents 75770477 e3a4b9ec
......@@ -62,10 +62,7 @@ SetupPage {
}
}
APMAirframeComponentController {
id: controller
factPanel: airframePage.viewPanel
}
APMAirframeComponentController { id: controller; }
QGCLabel {
id: helpText
......
......@@ -7,16 +7,10 @@ import QGroundControl.Controls 1.0
import QGroundControl.Controllers 1.0
import QGroundControl.Palette 1.0
FactPanel {
id: panel
anchors.fill: parent
color: qgcPal.windowShadeDark
QGCPalette { id: qgcPal; colorGroupEnabled: enabled }
APMAirframeComponentController {
id: controller
factPanel: panel
}
Item {
anchors.fill: parent
APMAirframeComponentController {id: controller; }
property Fact _frameClass: controller.getParameterFact(-1, "FRAME_CLASS")
property Fact _frameType: controller.getParameterFact(-1, "FRAME_TYPE", false)
......
......@@ -165,17 +165,17 @@ SetupPage {
// Whenever an MNT_RC_IN_* setting is changed make sure to turn on RC targeting
Connections {
target: _mountRCInPan
onValueChanged: _mountDefaultMode.value = _mountDefaultModeRCTargetting
onValueChanged: if(_mountDefaultMode) _mountDefaultMode.value = _mountDefaultModeRCTargetting
}
Connections {
target: _mountRCInRoll
onValueChanged: _mountDefaultMode.value = _mountDefaultModeRCTargetting
onValueChanged: if(_mountDefaultMode) _mountDefaultMode.value = _mountDefaultModeRCTargetting
}
Connections {
target: _mountRCInTilt
onValueChanged: _mountDefaultMode.value = _mountDefaultModeRCTargetting
onValueChanged: if(_mountDefaultMode) _mountDefaultMode.value = _mountDefaultModeRCTargetting
}
ListModel {
......
......@@ -29,9 +29,7 @@ SetupPage {
spacing: _margins
width: availableWidth
FactPanelController { id: controller; factPanel: lightsPage.viewPanel }
QGCPalette { id: palette; colorGroupEnabled: true }
FactPanelController { id: controller; }
property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle
property bool _oldFW: _activeVehicle.versionCompare(3, 5, 2) < 0
......@@ -176,7 +174,7 @@ SetupPage {
anchors.top: settingsLabel.bottom
width: lights1Combo.x + lights1Combo.width + lightsStepCombo.width + _margins
height: lights2Combo.y + lights2Combo.height + lightsStepCombo.height + 2*_margins
color: palette.windowShade
color: qgcPal.windowShade
QGCLabel {
id: lights1Label
......
......@@ -252,13 +252,13 @@ SetupPage {
QGCButton {
text: qsTr("Calibrate")
enabled: _escCalibration.rawValue === 0
onClicked: _escCalibration.rawValue = 3
enabled: _escCalibration && _escCalibration.rawValue === 0
onClicked: if(_escCalibration) _escCalibration.rawValue = 3
}
Column {
enabled: _escCalibration.rawValue === 3
QGCLabel { text: _escCalibration.rawValue === 3 ? qsTr("Now perform these steps:") : qsTr("Click Calibrate to start, then:") }
enabled: _escCalibration && _escCalibration.rawValue === 3
QGCLabel { text: _escCalibration ? (_escCalibration.rawValue === 3 ? qsTr("Now perform these steps:") : qsTr("Click Calibrate to start, then:")) : "" }
QGCLabel { text: qsTr("- Disconnect USB and battery so flight controller powers down") }
QGCLabel { text: qsTr("- Connect the battery") }
QGCLabel { text: qsTr("- The arming tone will be played (if the vehicle has a buzzer attached)") }
......
......@@ -17,7 +17,6 @@ import QGroundControl.Palette 1.0
Item {
anchors.fill: parent
color: qgcPal.windowShadeDark
FactPanelController { id: controller; }
......
......@@ -8,9 +8,7 @@ import QGroundControl.Palette 1.0
Item {
anchors.fill: parent
color: qgcPal.windowShadeDark
QGCPalette { id: qgcPal; colorGroupEnabled: enabled }
FactPanelController { id: controller; }
property Fact mapRollFact: controller.getParameterFact(-1, "RCMAP_ROLL")
......
......@@ -32,14 +32,14 @@ Item {
VehicleSummaryRow {
labelText: qsTr("Arming Checks:")
valueText: fact.value & 1 ? qsTr("Enabled") : qsTr("Some disabled")
valueText: fact ? (fact.value & 1 ? qsTr("Enabled") : qsTr("Some disabled")) : ""
property Fact fact: controller.getParameterFact(-1, "ARMING_CHECK")
}
VehicleSummaryRow {
labelText: qsTr("Throttle failsafe:")
valueText: fact.enumStringValue
valueText: fact ? fact.enumStringValue : ""
visible: controller.vehicle.multiRotor
property Fact fact: controller.getParameterFact(-1, "FS_THR_ENABLE", false /* reportMissing */)
......@@ -47,7 +47,7 @@ Item {
VehicleSummaryRow {
labelText: qsTr("Throttle failsafe:")
valueText: fact.enumStringValue
valueText: fact ? fact.enumStringValue : ""
visible: controller.vehicle.fixedWing
property Fact fact: controller.getParameterFact(-1, "THR_FAILSAFE", false /* reportMissing */)
......@@ -55,7 +55,7 @@ Item {
VehicleSummaryRow {
labelText: qsTr("Throttle failsafe:")
valueText: fact.enumStringValue
valueText: fact ? fact.enumStringValue : ""
visible: controller.vehicle.rover
property Fact fact: controller.getParameterFact(-1, "FS_THR_ENABLE", false /* reportMissing */)
......@@ -63,7 +63,7 @@ Item {
VehicleSummaryRow {
labelText: qsTr("Failsafe Action:")
valueText: fact.enumStringValue
valueText: fact ? fact.enumStringValue : ""
visible: controller.vehicle.rover
property Fact fact: controller.getParameterFact(-1, "FS_ACTION", false /* reportMissing */)
......@@ -71,7 +71,7 @@ Item {
VehicleSummaryRow {
labelText: qsTr("Failsafe Crash Check:")
valueText: fact.enumStringValue
valueText: fact ? fact.enumStringValue : ""
visible: controller.vehicle.rover
property Fact fact: controller.getParameterFact(-1, "FS_CRASH_CHECK", false /* reportMissing */)
......@@ -103,11 +103,22 @@ Item {
VehicleSummaryRow {
labelText: qsTr("GeoFence:")
valueText: _copterFenceEnable.value == 0 || _copterFenceType == 0 ?
qsTr("Disabled") :
(_copterFenceType.value == 1 ?
qsTr("Altitude") :
(_copterFenceType.value == 2 ? qsTr("Circle") : qsTr("Altitude,Circle")))
valueText: {
if(_copterFenceEnable && _copterFenceType) {
if(_copterFenceEnable.value == 0 || _copterFenceType == 0) {
return qsTr("Disabled")
} else {
if(_copterFenceType.value == 1) {
return qsTr("Altitude")
}
if(_copterFenceType.value == 2) {
return qsTr("Circle")
}
return qsTr("Altitude,Circle")
}
}
return ""
}
visible: controller.vehicle.multiRotor
}
......@@ -121,16 +132,16 @@ Item {
VehicleSummaryRow {
labelText: qsTr("RTL min alt:")
valueText: fact.value == 0 ? qsTr("current") : fact.valueString + " " + fact.units
valueText: fact ? (fact.value == 0 ? qsTr("current") : fact.valueString + " " + fact.units) : ""
visible: controller.vehicle.multiRotor
property Fact fact: controller.getParameterFact(-1, "RTL_ALT", false /* reportMissing */)
}
VehicleSummaryRow {
labelText: qsTr("RTL min alt:")
valueText: fact.value < 0 ? qsTr("current") : fact.valueString + " " + fact.units
visible: controller.vehicle.fixedWing
labelText: qsTr("RTL min alt:")
valueText: fact ? (fact.value < 0 ? qsTr("current") : fact.valueString + " " + fact.units) : ""
visible: controller.vehicle.fixedWing
property Fact fact: controller.getParameterFact(-1, "ALT_HOLD_RTL", false /* reportMissing */)
}
......
......@@ -15,7 +15,6 @@ import QGroundControl.ArduPilot 1.0
Item {
anchors.fill: parent
color: qgcPal.windowShadeDark
APMSensorsComponentController { id: controller; }
......
......@@ -18,7 +18,7 @@ class APMTuningComponent : public VehicleComponent
Q_OBJECT
public:
APMTuningComponent(Vehicle* vehicle, AutoPilotPlugin* autopilot, QObject* parent = NULL);
APMTuningComponent(Vehicle* vehicle, AutoPilotPlugin* autopilot, QObject* parent = nullptr);
// Virtuals from VehicleComponent
QStringList setupCompleteChangedTriggerList(void) const final;
......
......@@ -28,7 +28,7 @@ SetupPage {
Column {
width: availableWidth
QGCPalette { id: palette; colorGroupEnabled: true }
FactPanelController { id: controller; }
property bool _atcInputTCAvailable: controller.parameterExists(-1, "ATC_INPUT_TC")
property Fact _atcInputTC: controller.getParameterFact(-1, "ATC_INPUT_TC", false)
......@@ -133,7 +133,7 @@ SetupPage {
anchors.left: parent.left
anchors.right: parent.right
height: basicTuningColumn.y + basicTuningColumn.height + _margins
color: palette.windowShade
color: qgcPal.windowShade
Column {
id: basicTuningColumn
......@@ -284,7 +284,7 @@ SetupPage {
QGCLabel {
text: qsTr("Warning: This setting should be higher than 'Spin While Armed'")
color: palette.warningText
color: qgcPal.warningText
visible: _motSpinMin.rawValue < _motSpinArm.rawValue
}
......@@ -315,7 +315,7 @@ SetupPage {
Rectangle {
height: autoTuneLabel.height + autoTuneRect.height
width: autoTuneRect.width
color: palette.window
color: qgcPal.window
QGCLabel {
id: autoTuneLabel
......@@ -328,7 +328,7 @@ SetupPage {
width: autoTuneColumn.x + autoTuneColumn.width + _margins
height: autoTuneColumn.y + autoTuneColumn.height + _margins
anchors.top: autoTuneLabel.bottom
color: palette.windowShade
color: qgcPal.windowShade
Column {
id: autoTuneColumn
......@@ -375,7 +375,7 @@ SetupPage {
Rectangle {
height: inFlightTuneLabel.height + channel6TuningOption.height
width: channel6TuningOption.width
color: palette.window
color: qgcPal.window
QGCLabel {
id: inFlightTuneLabel
......
......@@ -25,7 +25,7 @@ Flow {
Repeater {
id: repeater
model: fact.bitmaskStrings
model: fact ? fact.bitmaskStrings : []
QGCCheckBox {
id: checkbox
......
......@@ -59,7 +59,7 @@ Item {
// Center point
Rectangle {
anchors.horizontalCenter: parent.horizontalCenter
width: ScreenTools.ScreenTools.defaultFontPixelWidth / 2
width: ScreenTools.defaultFontPixelWidth / 2
height: parent.height
color: qgcPal.window
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment