diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc index b811f360d4917c9f150c198e73a2c3c590b6ad3a..84893af40676a31c811a10378e5582b07431a2cc 100644 --- a/qgroundcontrol.qrc +++ b/qgroundcontrol.qrc @@ -208,9 +208,11 @@ src/FlightMap/Widgets/VibrationPageWidget.qml src/FlightMap/Widgets/VideoPageWidget.qml src/FlightDisplay/VirtualJoystick.qml + src/QuadView/QuadToolBar.qml + src/QuadView/QuadView.qml - src/Settings/APMMavlinkStreamRate.SettingsGroup.json + src/Settings/APMMavlinkStreamRate.SettingsGroup.json src/MissionManager/CameraCalc.FactMetaData.json src/MissionManager/CameraSpec.FactMetaData.json src/MissionManager/CorridorScan.SettingsGroup.json @@ -225,7 +227,7 @@ src/Settings/FlightMap.SettingsGroup.json src/MissionManager/FWLandingPattern.FactMetaData.json src/Settings/FlyView.SettingsGroup.json - src/Settings/PlanView.SettingsGroup.json + src/Settings/PlanView.SettingsGroup.json src/MissionManager/MavCmdInfoCommon.json src/MissionManager/MavCmdInfoFixedWing.json src/MissionManager/MavCmdInfoMultiRotor.json diff --git a/src/QmlControls/QGroundControl.Controls.qmldir b/src/QmlControls/QGroundControl.Controls.qmldir index 542461117f4c0d72ff89c64db3a42b873af96f3e..bc26350e247b89a27c0697a566daa135d13f40cd 100644 --- a/src/QmlControls/QGroundControl.Controls.qmldir +++ b/src/QmlControls/QGroundControl.Controls.qmldir @@ -65,6 +65,7 @@ QGCViewDialog 1.0 QGCViewDialog.qml QGCViewDialogContainer 1.0 QGCViewDialogContainer.qml QGCViewMessage 1.0 QGCViewMessage.qml QGCViewPanel 1.0 QGCViewPanel.qml +QuadToolBar 1.0 QuadToolBar.qml RallyPointEditorHeader 1.0 RallyPointEditorHeader.qml RallyPointItemEditor 1.0 RallyPointItemEditor.qml RallyPointMapVisuals 1.0 RallyPointMapVisuals.qml diff --git a/src/DroneDude/CameraCalc.qml b/src/QuadView/CameraCalc.qml similarity index 100% rename from src/DroneDude/CameraCalc.qml rename to src/QuadView/CameraCalc.qml diff --git a/src/DroneDude/CameraSection.qml b/src/QuadView/CameraSection.qml similarity index 100% rename from src/DroneDude/CameraSection.qml rename to src/QuadView/CameraSection.qml diff --git a/src/DroneDude/CorridorScanEditor.qml b/src/QuadView/CorridorScanEditor.qml similarity index 100% rename from src/DroneDude/CorridorScanEditor.qml rename to src/QuadView/CorridorScanEditor.qml diff --git a/src/DroneDude/CorridorScanMapVisual.qml b/src/QuadView/CorridorScanMapVisual.qml similarity index 100% rename from src/DroneDude/CorridorScanMapVisual.qml rename to src/QuadView/CorridorScanMapVisual.qml diff --git a/src/DroneDude/FWLandingPatternEditor.qml b/src/QuadView/FWLandingPatternEditor.qml similarity index 100% rename from src/DroneDude/FWLandingPatternEditor.qml rename to src/QuadView/FWLandingPatternEditor.qml diff --git a/src/DroneDude/FWLandingPatternMapVisual.qml b/src/QuadView/FWLandingPatternMapVisual.qml similarity index 100% rename from src/DroneDude/FWLandingPatternMapVisual.qml rename to src/QuadView/FWLandingPatternMapVisual.qml diff --git a/src/DroneDude/GeoFenceEditor.qml b/src/QuadView/GeoFenceEditor.qml similarity index 100% rename from src/DroneDude/GeoFenceEditor.qml rename to src/QuadView/GeoFenceEditor.qml diff --git a/src/DroneDude/GeoFenceMapVisuals.qml b/src/QuadView/GeoFenceMapVisuals.qml similarity index 100% rename from src/DroneDude/GeoFenceMapVisuals.qml rename to src/QuadView/GeoFenceMapVisuals.qml diff --git a/src/DroneDude/MissionItemEditor.qml b/src/QuadView/MissionItemEditor.qml similarity index 100% rename from src/DroneDude/MissionItemEditor.qml rename to src/QuadView/MissionItemEditor.qml diff --git a/src/DroneDude/MissionItemMapVisual.qml b/src/QuadView/MissionItemMapVisual.qml similarity index 100% rename from src/DroneDude/MissionItemMapVisual.qml rename to src/QuadView/MissionItemMapVisual.qml diff --git a/src/DroneDude/MissionItemStatus.qml b/src/QuadView/MissionItemStatus.qml similarity index 100% rename from src/DroneDude/MissionItemStatus.qml rename to src/QuadView/MissionItemStatus.qml diff --git a/src/DroneDude/MissionSettingsEditor.qml b/src/QuadView/MissionSettingsEditor.qml similarity index 100% rename from src/DroneDude/MissionSettingsEditor.qml rename to src/QuadView/MissionSettingsEditor.qml diff --git a/src/DroneDude/PlanToolBar.qml b/src/QuadView/QuadToolBar.qml similarity index 100% rename from src/DroneDude/PlanToolBar.qml rename to src/QuadView/QuadToolBar.qml diff --git a/src/DroneDude/PlanView.qml b/src/QuadView/QuadView.qml similarity index 100% rename from src/DroneDude/PlanView.qml rename to src/QuadView/QuadView.qml diff --git a/src/DroneDude/RallyPointEditorHeader.qml b/src/QuadView/RallyPointEditorHeader.qml similarity index 100% rename from src/DroneDude/RallyPointEditorHeader.qml rename to src/QuadView/RallyPointEditorHeader.qml diff --git a/src/DroneDude/RallyPointItemEditor.qml b/src/QuadView/RallyPointItemEditor.qml similarity index 100% rename from src/DroneDude/RallyPointItemEditor.qml rename to src/QuadView/RallyPointItemEditor.qml diff --git a/src/DroneDude/RallyPointMapVisuals.qml b/src/QuadView/RallyPointMapVisuals.qml similarity index 100% rename from src/DroneDude/RallyPointMapVisuals.qml rename to src/QuadView/RallyPointMapVisuals.qml diff --git a/src/DroneDude/SimpleItemEditor.qml b/src/QuadView/SimpleItemEditor.qml similarity index 100% rename from src/DroneDude/SimpleItemEditor.qml rename to src/QuadView/SimpleItemEditor.qml diff --git a/src/DroneDude/SimpleItemMapVisual.qml b/src/QuadView/SimpleItemMapVisual.qml similarity index 100% rename from src/DroneDude/SimpleItemMapVisual.qml rename to src/QuadView/SimpleItemMapVisual.qml diff --git a/src/DroneDude/StructureScanEditor.qml b/src/QuadView/StructureScanEditor.qml similarity index 100% rename from src/DroneDude/StructureScanEditor.qml rename to src/QuadView/StructureScanEditor.qml diff --git a/src/DroneDude/StructureScanMapVisual.qml b/src/QuadView/StructureScanMapVisual.qml similarity index 100% rename from src/DroneDude/StructureScanMapVisual.qml rename to src/QuadView/StructureScanMapVisual.qml diff --git a/src/DroneDude/SurveyItemEditor.qml b/src/QuadView/SurveyItemEditor.qml similarity index 100% rename from src/DroneDude/SurveyItemEditor.qml rename to src/QuadView/SurveyItemEditor.qml diff --git a/src/DroneDude/SurveyMapVisual.qml b/src/QuadView/SurveyMapVisual.qml similarity index 100% rename from src/DroneDude/SurveyMapVisual.qml rename to src/QuadView/SurveyMapVisual.qml diff --git a/src/DroneDude/TransectStyleComplexItemStats.qml b/src/QuadView/TransectStyleComplexItemStats.qml similarity index 100% rename from src/DroneDude/TransectStyleComplexItemStats.qml rename to src/QuadView/TransectStyleComplexItemStats.qml diff --git a/src/ui/MainWindowInner.qml b/src/ui/MainWindowInner.qml index 098d17d8b452c1ec738f8d4297ece0e79babfb53..47a10dd2f9c31ec0abb6fff9da442b7daaf06859 100644 --- a/src/ui/MainWindowInner.qml +++ b/src/ui/MainWindowInner.qml @@ -33,11 +33,12 @@ Item { property var activeVehicle: QGroundControl.multiVehicleManager.activeVehicle property string formatedMessage: activeVehicle ? activeVehicle.formatedMessage : "" - property var _viewList: [ settingsViewLoader, setupViewLoader, flightView, planViewLoader, analyzeViewLoader ] + property var _viewList: [ settingsViewLoader, setupViewLoader, planViewLoader, quadViewLoader, flightView, analyzeViewLoader ] readonly property string _settingsViewSource: "AppSettings.qml" readonly property string _setupViewSource: "SetupView.qml" readonly property string _planViewSource: "PlanView.qml" + readonly property string _quadViewSource: "QuadView.qml" readonly property string _analyzeViewSource: "AnalyzeView.qml" onHeightChanged: { @@ -109,6 +110,21 @@ Item { planToolBar.visible = true } + function showQuadView() { + mainWindow.enableToolbar() + rootLoader.sourceComponent = null + if(currentPopUp) { + currentPopUp.close() + } + if (quadViewLoader.source != _quadViewSource) { + quadViewLoader.source = _quadViewSource + } + ScreenTools.availableHeight = parent.height - toolBar.height + hideAllViews() + quadViewLoader.visible = true + quadToolBar.visible = true + } + function showFlyView() { mainWindow.enableToolbar() rootLoader.sourceComponent = null @@ -163,6 +179,16 @@ Item { onYes: activeConnectionsCloseDialog.check() + + + + + + + + + + // here what to do? function check() { if (planViewLoader.item && planViewLoader.item.dirty) { unsavedMissionCloseDialog.open() @@ -283,7 +309,7 @@ Item { onShowSetupView: mainWindow.showSetupView() onShowFlyView: mainWindow.showFlyView() onShowPlanView: mainWindow.showPlanView() - + onShowQuadView: mainWindow.showQuadView() onShowAnalyzeView: mainWindow.showAnalyzeView() onArmVehicle: flightView.guidedController.confirmAction(flightView.guidedController.actionArm) onDisarmVehicle: { @@ -318,6 +344,20 @@ Item { } } + QuadToolBar { + id: quadToolBar + height: ScreenTools.toolbarHeight + anchors.left: parent.left + anchors.right: parent.right + anchors.top: parent.top + z: toolBar.z + 1 + + onShowFlyView: { + quadToolBar.visible = false + mainWindow.showFlyView() + } + } + Loader { id: settingsViewLoader anchors.left: parent.left @@ -353,6 +393,14 @@ Item { property var toolbar: planToolBar } + Loader { + id: quadViewLoader + anchors.fill: parent + visible: false + + property var toolbar: quadToolBar + } + FlightDisplayView { id: flightView anchors.fill: parent diff --git a/src/ui/toolbar/MainToolBar.qml b/src/ui/toolbar/MainToolBar.qml index 442456999b0dff3d520c63a3362310c48d764b63..56bb50c3483582c5f979e5f2f3bfc999b4b5fb66 100644 --- a/src/ui/toolbar/MainToolBar.qml +++ b/src/ui/toolbar/MainToolBar.qml @@ -30,6 +30,7 @@ Rectangle { signal showSettingsView signal showSetupView signal showPlanView + signal showQuadView signal showFlyView signal showAnalyzeView signal armVehicle @@ -49,6 +50,10 @@ Rectangle { planButton.checked = true } + function checkQuadButton() { + quadButton.checked = true + } + function checkFlyButton() { flyButton.checked = true } @@ -121,6 +126,15 @@ Rectangle { onClicked: toolBar.showPlanView() } + QGCToolBarButton { + id: quadButton + anchors.top: parent.top + anchors.bottom: parent.bottom + exclusiveGroup: mainActionGroup + source: "/res/waves.svg" + onClicked: toolBar.showQuadView() + } + QGCToolBarButton { id: flyButton anchors.top: parent.top