From 52d8a5528f49d3e802c134d7ee6f90b23fdf0d94 Mon Sep 17 00:00:00 2001 From: Jacob Dahl Date: Fri, 28 Feb 2020 16:20:23 -0900 Subject: [PATCH 1/2] Fixes offline checklist handling to load the correct checklist based on the saved app setting fact --- src/FlightDisplay/PreFlightCheckList.qml | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/src/FlightDisplay/PreFlightCheckList.qml b/src/FlightDisplay/PreFlightCheckList.qml index af5c2b7..7e040d4 100644 --- a/src/FlightDisplay/PreFlightCheckList.qml +++ b/src/FlightDisplay/PreFlightCheckList.qml @@ -23,7 +23,9 @@ Rectangle { color: qgcPal.windowShade radius: 3 - property real _verticalMargin: ScreenTools.defaultFontPixelHeight / 2 + property real _verticalMargin: ScreenTools.defaultFontPixelHeight / 2 + property var _offlineEditingVehicleType: QGroundControl.settingsManager.appSettings.offlineEditingVehicleType + Loader { id: modelContainer @@ -82,6 +84,27 @@ Rectangle { } return } + + // "enumStrings": "Fixed Wing,Multi-Rotor,VTOL,Rover,Sub", + // "enumValues": "1,2,20,10,12", + switch (_offlineEditingVehicleType.rawValue) { + case 1: + modelContainer.source = "/checklists/FixedWingChecklist.qml" + return + case 2: + modelContainer.source = "/checklists/MultiRotorChecklist.qml" + return + case 20: + modelContainer.source = "/checklists/VTOLChecklist.qml" + return + case 10: + modelContainer.source = "/checklists/RoverChecklist.qml" + return + case 12: + modelContainer.source = "/checklists/SubChecklist.qml" + return + } + modelContainer.source = "/checklists/DefaultChecklist.qml" } From ae58e70942be1d6f737a9a67c80414b3c2c17d4e Mon Sep 17 00:00:00 2001 From: Jacob Dahl Date: Sat, 29 Feb 2020 15:05:05 -0900 Subject: [PATCH 2/2] updated from reviewer feedback --- src/FlightDisplay/PreFlightCheckList.qml | 55 ++++++++++---------------------- 1 file changed, 17 insertions(+), 38 deletions(-) diff --git a/src/FlightDisplay/PreFlightCheckList.qml b/src/FlightDisplay/PreFlightCheckList.qml index 7e040d4..6115e3f 100644 --- a/src/FlightDisplay/PreFlightCheckList.qml +++ b/src/FlightDisplay/PreFlightCheckList.qml @@ -23,9 +23,7 @@ Rectangle { color: qgcPal.windowShade radius: 3 - property real _verticalMargin: ScreenTools.defaultFontPixelHeight / 2 - property var _offlineEditingVehicleType: QGroundControl.settingsManager.appSettings.offlineEditingVehicleType - + property real _verticalMargin: ScreenTools.defaultFontPixelHeight / 2 Loader { id: modelContainer @@ -68,44 +66,25 @@ Rectangle { //-- Pick a checklist model that matches the current airframe type (if any) function _updateModel() { - if(activeVehicle) { - if(activeVehicle.multiRotor) { - modelContainer.source = "/checklists/MultiRotorChecklist.qml" - } else if(activeVehicle.vtol) { - modelContainer.source = "/checklists/VTOLChecklist.qml" - } else if(activeVehicle.rover) { - modelContainer.source = "/checklists/RoverChecklist.qml" - } else if(activeVehicle.sub) { - modelContainer.source = "/checklists/SubChecklist.qml" - } else if(activeVehicle.fixedWing) { - modelContainer.source = "/checklists/FixedWingChecklist.qml" - } else { - modelContainer.source = "/checklists/DefaultChecklist.qml" - } - return + var vehicle = activeVehicle + if (!vehicle) { + vehicle = QGroundControl.multiVehicleManager.offlineEditingVehicle } - // "enumStrings": "Fixed Wing,Multi-Rotor,VTOL,Rover,Sub", - // "enumValues": "1,2,20,10,12", - switch (_offlineEditingVehicleType.rawValue) { - case 1: - modelContainer.source = "/checklists/FixedWingChecklist.qml" - return - case 2: - modelContainer.source = "/checklists/MultiRotorChecklist.qml" - return - case 20: - modelContainer.source = "/checklists/VTOLChecklist.qml" - return - case 10: - modelContainer.source = "/checklists/RoverChecklist.qml" - return - case 12: - modelContainer.source = "/checklists/SubChecklist.qml" - return + if(vehicle.multiRotor) { + modelContainer.source = "/checklists/MultiRotorChecklist.qml" + } else if(vehicle.vtol) { + modelContainer.source = "/checklists/VTOLChecklist.qml" + } else if(vehicle.rover) { + modelContainer.source = "/checklists/RoverChecklist.qml" + } else if(vehicle.sub) { + modelContainer.source = "/checklists/SubChecklist.qml" + } else if(vehicle.fixedWing) { + modelContainer.source = "/checklists/FixedWingChecklist.qml" + } else { + modelContainer.source = "/checklists/DefaultChecklist.qml" } - - modelContainer.source = "/checklists/DefaultChecklist.qml" + return } Component.onCompleted: {