6import QGroundControl.FactControls
7import QGroundControl.Controls
10 implicitWidth: mainLayout.implicitWidth
11 implicitHeight: mainLayout.implicitHeight
12 width: parent.width // grows when Loader is wider than implicitWidth
14 property string _naString: qsTr("N/A")
16 FactPanelController { id: controller; }
18 property int _indexedBatteryParamCount: {
20 while (controller.parameterExists(-1, "BAT" + batteryIndex + "_SOURCE")) {
23 return batteryIndex - 1
31 model: _indexedBatteryParamCount
34 sourceComponent: batterySummaryComponent
36 property int batteryIndex: index + 1
37 property bool showBatteryIndex: _indexedBatteryParamCount > 1
43 id: batterySummaryComponent
48 property var _controller: controller
49 property int _batteryIndex: batteryIndex
53 controller: _controller
54 batteryIndex: _batteryIndex
58 labelText: showBatteryIndex ? qsTr("Battery %1 Source").arg(batteryIndex) : qsTr("Battery Source")
59 valueText: battParams.battSource.enumStringValue
63 labelText: showBatteryIndex ? qsTr("Battery %1 Full").arg(batteryIndex) : qsTr("Battery Full")
64 valueText: battParams.battHighVoltAvailable ? battParams.battHighVolt.valueString + " " + battParams.battHighVolt.units : _naString
68 labelText: showBatteryIndex ? qsTr("Battery %1 Empty").arg(batteryIndex) : qsTr("Battery Empty")
69 valueText: battParams.battLowVoltAvailable ? battParams.battLowVolt.valueString + " " + battParams.battLowVolt.units : _naString
73 labelText: showBatteryIndex ? qsTr("Battery %1 Number of Cells").arg(batteryIndex) : qsTr("Number of Cells")
74 valueText: battParams.battNumCellsAvailable ? battParams.battNumCells.valueString : _naString