Skip to content

Commit ec7a337

Browse files
committed
QML: Fix APMFollowComponentSummary Spacing
1 parent 3401eb1 commit ec7a337

File tree

1 file changed

+27
-56
lines changed

1 file changed

+27
-56
lines changed

src/AutoPilotPlugins/APM/APMFollowComponentSummary.qml

Lines changed: 27 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -17,68 +17,39 @@ import QGroundControl.Controls
1717
Item {
1818
anchors.fill: parent
1919

20-
FactPanelController { id: controller; }
20+
FactPanelController { id: controller }
2121

22-
property Fact _followEnabled: controller.getParameterFact(-1, "FOLL_ENABLE")
23-
property bool _followParamsAvailable: controller.parameterExists(-1, "FOLL_SYSID")
24-
property Fact _followDistanceMax: controller.getParameterFact(-1, "FOLL_DIST_MAX", false /* reportMissing */)
25-
property Fact _followSysId: controller.getParameterFact(-1, "FOLL_SYSID", false /* reportMissing */)
26-
property Fact _followOffsetX: controller.getParameterFact(-1, "FOLL_OFS_X", false /* reportMissing */)
27-
property Fact _followOffsetY: controller.getParameterFact(-1, "FOLL_OFS_Y", false /* reportMissing */)
28-
property Fact _followOffsetZ: controller.getParameterFact(-1, "FOLL_OFS_Z", false /* reportMissing */)
29-
property Fact _followOffsetType: controller.getParameterFact(-1, "FOLL_OFS_TYPE", false /* reportMissing */)
30-
property Fact _followAltitudeType: controller.getParameterFact(-1, "FOLL_ALT_TYPE", false /* reportMissing */)
31-
property Fact _followYawBehavior: controller.getParameterFact(-1, "FOLL_YAW_BEHAVE", false /* reportMissing */)
22+
function getFact(name) {
23+
return controller.getParameterFact(-1, name, false)
24+
}
25+
26+
property bool followParamsAvailable: controller.parameterExists(-1, "FOLL_SYSID")
27+
28+
property var followItems: [
29+
{ label: qsTr("Follow Enabled"), fact: getFact("FOLL_ENABLE"), visible: true},
30+
{ label: qsTr("Follow System ID"), fact: getFact("FOLL_SYSID"), visible: followParamsAvailable },
31+
{ label: qsTr("Max Distance"), fact: getFact("FOLL_DIST_MAX"), visible: followParamsAvailable },
32+
{ label: qsTr("Offset X"), fact: getFact("FOLL_OFS_X"), visible: followParamsAvailable },
33+
{ label: qsTr("Offset Y"), fact: getFact("FOLL_OFS_Y"), visible: followParamsAvailable },
34+
{ label: qsTr("Offset Z"), fact: getFact("FOLL_OFS_Z"), visible: followParamsAvailable },
35+
{ label: qsTr("Offset Type"), fact: getFact("FOLL_OFS_TYPE"), visible: followParamsAvailable },
36+
{ label: qsTr("Altitude Type"), fact: getFact("FOLL_ALT_TYPE"), visible: followParamsAvailable },
37+
{ label: qsTr("Yaw Behavior"), fact: getFact("FOLL_YAW_BEHAVE"), visible: followParamsAvailable }
38+
]
3239

3340
Column {
3441
anchors.fill: parent
3542

36-
VehicleSummaryRow {
37-
labelText: qsTr("Follow Enabled")
38-
valueText: _followEnabled.enumStringValue
39-
}
40-
41-
Loader {
42-
id: followParamsLoader
43-
active: _followParamsAvailable
44-
sourceComponent: followParamsComponent
45-
}
46-
}
43+
Repeater {
44+
model: followItems
45+
delegate: VehicleSummaryRow {
46+
labelText: modelData.label
47+
valueText: formatFact(modelData.fact)
48+
visible: modelData.visible
4749

48-
Component {
49-
id: followParamsComponent
50-
Column {
51-
VehicleSummaryRow {
52-
labelText: qsTr("Follow System ID")
53-
valueText: _followSysId.valueString
54-
}
55-
VehicleSummaryRow {
56-
labelText: qsTr("Follow Max Distance")
57-
valueText: _followDistanceMax.valueString + " " + _followDistanceMax.units
58-
}
59-
VehicleSummaryRow {
60-
labelText: qsTr("Follow Offset X")
61-
valueText: _followOffsetX.valueString + " " + _followOffsetX.units
62-
}
63-
VehicleSummaryRow {
64-
labelText: qsTr("Follow Offset Y")
65-
valueText: _followOffsetY.valueString + " " + _followOffsetY.units
66-
}
67-
VehicleSummaryRow {
68-
labelText: qsTr("Follow Offset Z")
69-
valueText: _followOffsetZ.valueString + " " + _followOffsetZ.units
70-
}
71-
VehicleSummaryRow {
72-
labelText: qsTr("Follow Offset Type")
73-
valueText: _followOffsetType.enumStringValue
74-
}
75-
VehicleSummaryRow {
76-
labelText: qsTr("Follow Altitude Type")
77-
valueText: _followAltitudeType.enumStringValue
78-
}
79-
VehicleSummaryRow {
80-
labelText: qsTr("Follow Yaw Behavior")
81-
valueText: _followYawBehavior.enumStringValue
50+
function formatFact(fact) {
51+
return (fact && (fact.enumStringValue || (fact.valueString + " " + fact.units)))
52+
}
8253
}
8354
}
8455
}

0 commit comments

Comments
 (0)