diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc index fbf9bcf2ecb092eaaa5afc4c5a4680a4730a1d1b..aa36354606c5fa37d483b1e61dd0b826ddc16024 100644 --- a/qgroundcontrol.qrc +++ b/qgroundcontrol.qrc @@ -40,7 +40,6 @@ src/AutoPilotPlugins/Common/MixersComponent.qml src/ui/preferences/MockLink.qml src/ui/preferences/MockLinkSettings.qml - src/MultiVehicle/MultiVehicleView.qml src/AutoPilotPlugins/Common/MotorComponent.qml src/QtLocationPlugin/QMLControl/OfflineMap.qml src/AutoPilotPlugins/PX4/PowerComponent.qml @@ -58,7 +57,6 @@ src/MissionEditor/FWLandingPatternMapVisual.qml src/MissionEditor/GeoFenceEditor.qml src/MissionEditor/GeoFenceMapVisuals.qml - src/QmlControls/GuidedBar.qml src/QmlControls/IndicatorButton.qml src/QmlControls/JoystickThumbPad.qml src/ui/toolbar/MainToolBar.qml diff --git a/src/FlightDisplay/FlightDisplayViewMap.qml b/src/FlightDisplay/FlightDisplayViewMap.qml index 602b9057eab3b0d881e569775ae52442d27c1ce1..f6958b02b5afcc8780503233dc906c1755bdea3f 100644 --- a/src/FlightDisplay/FlightDisplayViewMap.qml +++ b/src/FlightDisplay/FlightDisplayViewMap.qml @@ -257,7 +257,12 @@ FlightMap { model: _mainIsMap ? missionController.visualItems : 0 delegate: MissionItemMapVisual { - map: flightMap + map: flightMap + + onClicked: { + _retaskSequence = object.sequenceNumber + flightWidgets.guidedModeBar.confirmAction(parent.flightWidgets.guidedModeBar.confirmRetask) + } } } diff --git a/src/FlightDisplay/FlightDisplayViewWidgets.qml b/src/FlightDisplay/FlightDisplayViewWidgets.qml index 520a1bcb15ccb54f2e622e01da98bb9ada354c1b..a9167c1f3704ed0593620b2ec17e42e3a52caec1 100644 --- a/src/FlightDisplay/FlightDisplayViewWidgets.qml +++ b/src/FlightDisplay/FlightDisplayViewWidgets.qml @@ -318,7 +318,7 @@ Item { guidedModeConfirm.confirmText = qsTr("move vehicle") break; case confirmRetask: - guidedModeConfirm.confirmText = qsTr("active waypoint change") + guidedModeConfirm.confirmText = qsTr("activate waypoint change") break; case confirmOrbit: guidedModeConfirm.confirmText = qsTr("enter orbit mode") diff --git a/src/MissionEditor/FWLandingPatternMapVisual.qml b/src/MissionEditor/FWLandingPatternMapVisual.qml index 65ee93db75cff25439abec282f033b6ff910683a..9685adc5b7550a3f39efa945a9e3082e6fb75c75 100644 --- a/src/MissionEditor/FWLandingPatternMapVisual.qml +++ b/src/MissionEditor/FWLandingPatternMapVisual.qml @@ -20,8 +20,12 @@ import QGroundControl.FlightMap 1.0 /// Fixed Wing Landing Pattern map visuals Item { + id: _root + property var map ///< Map control to place item in + signal clicked(int sequenceNumber) + property var _missionItem: object property var _itemVisuals: [ ] property var _mouseArea @@ -208,7 +212,7 @@ Item { label: "Loiter" checked: _missionItem.isCurrentItem - onClicked: setCurrentItem(_missionItem.sequenceNumber) + onClicked: _root.clicked(_missionItem.sequenceNumber) } } } @@ -243,7 +247,7 @@ Item { label: "Land" checked: _missionItem.isCurrentItem - onClicked: setCurrentItem(_missionItem.sequenceNumber) + onClicked: _root.clicked(_missionItem.sequenceNumber) } } } diff --git a/src/MissionEditor/MissionEditor.qml b/src/MissionEditor/MissionEditor.qml index 89168723c38fc673d6d2da00a1dbe7af31a35f84..069895f2b11d5fccfd8936654652c44939a7ee45 100644 --- a/src/MissionEditor/MissionEditor.qml +++ b/src/MissionEditor/MissionEditor.qml @@ -49,7 +49,7 @@ QGCView { property var activeVehiclePosition: _activeVehicle ? _activeVehicle.coordinate : QtPositioning.coordinate() property bool _lightWidgetBorders: editorMap.isSatelliteMap property bool _addWaypointOnClick: false - property bool _singleComplexItem: missionController.complexMissionItemNames.length == 1 + property bool _singleComplexItem: missionController.complexMissionItemNames.length === 1 /// The controller which should be called for load/save, send to/from vehicle calls property var _syncDropDownController: missionController @@ -459,7 +459,8 @@ QGCView { model: missionController.visualItems delegate: MissionItemMapVisual { - map: editorMap + map: editorMap + onClicked: setCurrentItem(sequenceNumber) } } @@ -702,6 +703,10 @@ QGCView { property bool _showZoom: !ScreenTools.isMobile + property bool mySingleComplexItem: _singleComplexItem + + onMySingleComplexItemChanged: console.log(model[1].dropPanelComponent) + model: [ { name: "Waypoint", diff --git a/src/MissionEditor/MissionItemMapVisual.qml b/src/MissionEditor/MissionItemMapVisual.qml index b86111a5657c5b988c241d70525b81d31e106a3e..c5c6d4c8dc0520303a5197e7082273e1d2dd916b 100644 --- a/src/MissionEditor/MissionItemMapVisual.qml +++ b/src/MissionEditor/MissionItemMapVisual.qml @@ -17,12 +17,14 @@ import QGroundControl.Palette 1.0 import QGroundControl.Controls 1.0 -/// Mission item edit control +/// Mission item map visual Item { id: _root property var map ///< Map control to place item in + signal clicked(int sequenceNumber) + property var _visualItem Component.onCompleted: { @@ -32,6 +34,7 @@ Item { console.log("Error loading Qml: ", object.mapVisualQML, component.errorString()) } _visualItem = component.createObject(map, { "map": _root.map }) + _visualItem.clicked.connect(_root.clicked) } } diff --git a/src/MissionEditor/MissionSettingsMapVisual.qml b/src/MissionEditor/MissionSettingsMapVisual.qml index 52192def27ba4a989ba927a7eb84cdcd74f801a1..f1a3386dd8fdb6e853385eab03a7404f119a49e1 100644 --- a/src/MissionEditor/MissionSettingsMapVisual.qml +++ b/src/MissionEditor/MissionSettingsMapVisual.qml @@ -20,8 +20,12 @@ import QGroundControl.FlightMap 1.0 /// Mission Settings map visuals Item { + id: _root + property var map ///< Map control to place item in + signal clicked(int sequenceNumber) + property var _missionItem: object property var _itemVisual property var _dragArea @@ -103,7 +107,7 @@ Item { z: QGroundControl.zOrderMapItems missionItem: _missionItem - onClicked: setCurrentItem(_missionItem.sequenceNumber) + onClicked: _root.clicked(_missionItem.sequenceNumber) // These are the non-coordinate child mission items attached to this item Row { @@ -119,7 +123,7 @@ Item { z: 2 specifiesCoordinate: false - onClicked: setCurrentItem(object.sequenceNumber) + onClicked: _root.Clicked(object.sequenceNumber) } } } diff --git a/src/MissionEditor/SimpleItemMapVisual.qml b/src/MissionEditor/SimpleItemMapVisual.qml index d850c57b538c8955df2812552f57f652010fd1d1..0487a9749e95e8ec4ebc5ecb670e7fead0d16558 100644 --- a/src/MissionEditor/SimpleItemMapVisual.qml +++ b/src/MissionEditor/SimpleItemMapVisual.qml @@ -20,6 +20,7 @@ import QGroundControl.FlightMap 1.0 /// Simple Mission Item visuals Item { + id: _root property var map ///< Map control to place item in property var _missionItem: object @@ -28,6 +29,8 @@ Item { property bool _itemVisualShowing: false property bool _dragAreaShowing: false + signal clicked(int sequenceNumber) + function hideItemVisuals() { if (_itemVisualShowing) { _itemVisual.destroy() @@ -104,7 +107,7 @@ Item { missionItem: _missionItem sequenceNumber: _missionItem.sequenceNumber - onClicked: setCurrentItem(_missionItem.sequenceNumber) + onClicked: _root.clicked(_missionItem.sequenceNumber) // These are the non-coordinate child mission items attached to this item Row { @@ -120,7 +123,7 @@ Item { checked: object.isCurrentItem specifiesCoordinate: false - onClicked: setCurrentItem(object.sequenceNumber) + onClicked: _root.clicked(object.sequenceNumber) } } } diff --git a/src/MissionEditor/SurveyMapVisual.qml b/src/MissionEditor/SurveyMapVisual.qml index ed39613da100d2e952a30e3e73e1b6cdcfd9d088..18c16c525faaa8a425c05d21e2bdab9daffacad4 100644 --- a/src/MissionEditor/SurveyMapVisual.qml +++ b/src/MissionEditor/SurveyMapVisual.qml @@ -20,6 +20,8 @@ import QGroundControl.FlightMap 1.0 /// Survey Complex Mission Item visuals Item { + id: _root + property var map ///< Map control to place item in property var _missionItem: object @@ -30,6 +32,8 @@ Item { property var _dragHandles property var _splitHandles + signal clicked(int sequenceNumber) + function _addVisualElements() { _polygon = polygonComponent.createObject(map) _grid = gridComponent.createObject(map) @@ -148,13 +152,11 @@ Item { coordinate: _missionItem.coordinate visible: _missionItem.exitCoordinate.isValid - sourceItem: - MissionItemIndexLabel { + sourceItem: MissionItemIndexLabel { index: _missionItem.sequenceNumber label: "Entry" checked: _missionItem.isCurrentItem - - onClicked: setCurrentItem(_missionItem.sequenceNumber) + onClicked: _root.clicked(_missionItem.sequenceNumber) } } } @@ -170,13 +172,11 @@ Item { coordinate: _missionItem.exitCoordinate visible: _missionItem.exitCoordinate.isValid - sourceItem: - MissionItemIndexLabel { + sourceItem: MissionItemIndexLabel { index: _missionItem.lastSequenceNumber label: "Exit" checked: _missionItem.isCurrentItem - - onClicked: setCurrentItem(_missionItem.sequenceNumber) + onClicked: _root.clicked(_missionItem.sequenceNumber) } } } diff --git a/src/MissionManager/MissionController.cc b/src/MissionManager/MissionController.cc index 6c60b35e7b17cbd19ea6dad35e16cd8251243869..6a6d89cedda1aeac9bb161c76e75a41dc3091113 100644 --- a/src/MissionManager/MissionController.cc +++ b/src/MissionManager/MissionController.cc @@ -1321,6 +1321,7 @@ void MissionController::_activeVehicleSet(void) connect(_activeVehicle, &Vehicle::homePositionChanged, this, &MissionController::_activeVehicleHomePositionChanged); connect(_activeVehicle, &Vehicle::defaultCruiseSpeedChanged, this, &MissionController::_recalcMissionFlightStatus); connect(_activeVehicle, &Vehicle::defaultHoverSpeedChanged, this, &MissionController::_recalcMissionFlightStatus); + connect(_activeVehicle, &Vehicle::vehicleTypeChanged, this, &MissionController::complexMissionItemNamesChanged); if (_activeVehicle->parameterManager()->parametersReady() && !syncInProgress()) { // We are switching between two previously existing vehicles. We have to manually ask for the items from the Vehicle. diff --git a/src/MultiVehicle/MultiVehicleView.qml b/src/MultiVehicle/MultiVehicleView.qml deleted file mode 100644 index 0637399436bb9c5816554ddfa4bc3e93b0f901fa..0000000000000000000000000000000000000000 --- a/src/MultiVehicle/MultiVehicleView.qml +++ /dev/null @@ -1,268 +0,0 @@ -/**************************************************************************** - * - * (c) 2009-2016 QGROUNDCONTROL PROJECT - * - * QGroundControl is licensed according to the terms in the file - * COPYING.md in the root of the source code directory. - * - ****************************************************************************/ - -import QtQuick 2.3 -import QtQuick.Controls 1.2 -import QtQuick.Dialogs 1.2 -import QtQuick.Layouts 1.2 - -import QGroundControl 1.0 -import QGroundControl.ScreenTools 1.0 -import QGroundControl.Controls 1.0 -import QGroundControl.Palette 1.0 -import QGroundControl.Controllers 1.0 -import QGroundControl.FactSystem 1.0 - -/// Multi-Vehicle View -QGCView { - id: qgcView - viewPanel: panel - - property real _margins: ScreenTools.defaultFontPixelWidth - property var _fileDialogController - - readonly property string _loadingText: qsTr("Loading...") - - QGCPalette { id: qgcPal; colorGroupEnabled: enabled } - - QGCViewPanel { - id: panel - anchors.fill: parent - - Rectangle { - anchors.fill: parent - color: qgcPal.window - - QGCFlickable { - anchors.fill: parent - contentHeight: vehicleColumn.height - flickableDirection: Flickable.VerticalFlick - clip: true - - Column { - id: vehicleColumn - anchors.margins: _margins - anchors.left: parent.left - anchors.right: parent.right - anchors.top: parent.top - spacing: _margins - - QGCLabel { text: qsTr("All Vehicles") } - - Repeater { - model: QGroundControl.multiVehicleManager.vehicles - - Column { - anchors.left: parent.left - anchors.right: parent.right - spacing: ScreenTools.defaultFontPixelHeight / 2 - - MissionController { - id: missionController - - Component.onCompleted: startStaticActiveVehicle(object) - - property bool missionAvailable: visualItems && visualItems.count > 1 - - function loadFromSelectedFile() { - if (ScreenTools.isMobile) { - _fileDialogController = missionController - qgcView.showDialog(mobileFilePicker, qsTr("Select Mission File"), qgcView.showDialogDefaultWidth, StandardButton.Yes | StandardButton.Cancel) - } else { - missionController.loadFromFilePicker() - missionController.sendToVehicle() - } - } - } // MissionController - - GeoFenceController { - id: geoFenceController - - Component.onCompleted: startStaticActiveVehicle(object) - - property bool fenceAvailable: fenceSupported && (circleSupported || polygonSupported) - - function loadFromSelectedFile() { - if (ScreenTools.isMobile) { - _fileDialogController = geoFenceController - qgcView.showDialog(mobileFilePicker, qsTr("Select Fence File"), qgcView.showDialogDefaultWidth, StandardButton.Yes | StandardButton.Cancel) - } else { - geoFenceController.loadFromFilePicker() - geoFenceController.sendToVehicle() - } - } - } // GeoFenceController - - RallyPointController { - id: rallyPointController - - Component.onCompleted: startStaticActiveVehicle(object) - - property bool pointsAvailable: rallyPointsSupported && points.count - - function loadFromSelectedFile() { - if (ScreenTools.isMobile) { - _fileDialogController = rallyPointController - qgcView.showDialog(mobileFilePicker, qsTr("Select Rally Point File"), qgcView.showDialogDefaultWidth, StandardButton.Yes | StandardButton.Cancel) - } else { - rallyPointController.loadFromFilePicker() - rallyPointController.sendToVehicle() - } - } - } // RallyPointController - - QGCLabel { - text: "Vehicle #" + object.id - } - - Rectangle { - anchors.left: parent.left - anchors.right: parent.right - height: vehicleDisplayColumn.height + (_margins * 2) - color: qgcPal.windowShade - - Column { - id: vehicleDisplayColumn - anchors.margins: _margins - anchors.left: parent.left - anchors.right: parent.right - anchors.top: parent.top - - Row { - id: indicatorRow - spacing: _margins - visible: !object.connectionLost - - Rectangle { - width: missionLabel.contentWidth + _margins - height: ScreenTools.defaultFontPixelHeight + _margins - radius: height / 4 - color: missionController.missionAvailable ? "green" : qgcPal.window - border.width: 1 - border.color: qgcPal.text - - QGCLabel { - id: missionLabel - anchors.margins: _margins / 2 - anchors.left: parent.left - anchors.top: parent.top - text: missionController.syncInProgress ? _loadingText : qsTr("Mission") - } - - MouseArea { - anchors.fill: parent - enabled: !missionController.syncInProgress - onClicked: missionController.loadFromSelectedFile() - } - } - - Rectangle { - width: fenceLabel.contentWidth + _margins - height: ScreenTools.defaultFontPixelHeight + _margins - radius: height / 4 - color: geoFenceController.fenceAvailable ? "green" : qgcPal.window - border.width: 1 - border.color: qgcPal.text - - QGCLabel { - id: fenceLabel - anchors.margins: _margins / 2 - anchors.left: parent.left - anchors.top: parent.top - text: geoFenceController.syncInProgress ? _loadingText : qsTr("Fence") - } - - MouseArea { - anchors.fill: parent - enabled: !geoFenceController.syncInProgress - onClicked: geoFenceController.loadFromSelectedFile() - } - } - - Rectangle { - width: rallyLabel.contentWidth + _margins - height: ScreenTools.defaultFontPixelHeight + _margins - radius: height / 4 - color: rallyPointController.pointsAvailable ? "green" : qgcPal.window - border.width: 1 - border.color: qgcPal.text - - QGCLabel { - id: rallyLabel - anchors.margins: _margins / 2 - anchors.left: parent.left - anchors.top: parent.top - text: rallyPointController.syncInProgress ? _loadingText : qsTr("Rally") - } - - MouseArea { - anchors.fill: parent - enabled: !rallyPointController.syncInProgress - onClicked: rallyPointController.loadFromSelectedFile() - } - } - - FlightModeDropdown { activeVehicle: object } - - GuidedBar { activeVehicle: object } - } // Row - contents display - - Flow { - anchors.left: parent.left - anchors.right: parent.right - layoutDirection: Qt.LeftToRight - spacing: _margins - - Repeater { - model: [ "battery.voltage", "battery.percentRemaining", "altitudeRelative", "altitudeAMSL", "groundSpeed", "heading"] - - Column { - property Fact fact: object.getFact(modelData) - - QGCLabel { - anchors.horizontalCenter: parent.horizontalCenter - text: fact.shortDescription - } - Row { - anchors.horizontalCenter: parent.horizontalCenter - //spacing: ScreenTools.defaultFontPixelWidth - - QGCLabel { - text: fact.enumOrValueString - } - QGCLabel { - text: fact.units - } - } - } - } // Repeater - Small - } // Flow - } // Column - } // Rectangle - contents display - } // Column - layout for vehicle - } // Repeater - vehicle repeater - } // Column - } // QGCFlickable - } // Rectangle - View background - } // QGCViewPanel - - Component { - id: mobileFilePicker - - QGCMobileFileDialog { - openDialog: true - fileExtension: _fileDialogController.fileExtension - - onFilenameReturned: { - _fileDialogController.loadFromFile(filename) - _fileDialogController.sendToVehicle() - } - } - } -} // QGCView diff --git a/src/QmlControls/GuidedBar.qml b/src/QmlControls/GuidedBar.qml deleted file mode 100644 index c7f03226df8ca518eec24fb8b9df9d49d9681ec3..0000000000000000000000000000000000000000 --- a/src/QmlControls/GuidedBar.qml +++ /dev/null @@ -1,269 +0,0 @@ -/**************************************************************************** - * - * (c) 2009-2016 QGROUNDCONTROL PROJECT - * - * QGroundControl is licensed according to the terms in the file - * COPYING.md in the root of the source code directory. - * - ****************************************************************************/ - -import QtQuick 2.3 - -import QGroundControl 1.0 -import QGroundControl.Controls 1.0 -import QGroundControl.ScreenTools 1.0 -import QGroundControl.Palette 1.0 - -//-- Guided mode bar - -Rectangle { - id: guidedModeBar - width: guidedModeColumn.width + (_margins * 2) - height: guidedModeColumn.height + (_margins * 2) - radius: ScreenTools.defaultFontPixelHeight * 0.25 - color: backgroundColor - - property var activeVehicle ///< Vehicle to show guided bar for - property real fontPointSize: ScreenTools.defaultFontPointSize ///< point size for fonts in control - property color backgroundColor: qgcPal.windowShadeDark ///< Background color for bar - - // Values for _confirmActionCode - readonly property int confirmHome: 1 - readonly property int confirmLand: 2 - readonly property int confirmTakeoff: 3 - readonly property int confirmArm: 4 - readonly property int confirmDisarm: 5 - readonly property int confirmEmergencyStop: 6 - readonly property int confirmChangeAlt: 7 - readonly property int confirmGoTo: 8 - readonly property int confirmRetask: 9 - readonly property int confirmOrbit: 10 - - property int _confirmActionCode - property real _showMargin: _margins - property real _hideMargin: _margins - guidedModeBar.height - property real _barMargin: _showMargin - property bool _showConfirm: false - property string _confirmText - property bool _showAltitude: false - property real _confirmAltitude - - function actionConfirmed(altitude) { - _showConfirm = false - switch (_confirmActionCode) { - case confirmHome: - activeVehicle.guidedModeRTL() - break; - case confirmLand: - activeVehicle.guidedModeLand() - break; - case confirmTakeoff: - activeVehicle.guidedModeTakeoff(altitude) - break; - case confirmArm: - activeVehicle.armed = true - break; - case confirmDisarm: - activeVehicle.armed = false - break; - case confirmEmergencyStop: - activeVehicle.emergencyStop() - break; - case confirmChangeAlt: - activeVehicle.guidedModeChangeAltitude(altitude) - break; - case confirmGoTo: - activeVehicle.guidedModeGotoLocation(_flightMap._gotoHereCoordinate) - break; - case confirmRetask: - activeVehicle.setCurrentMissionSequence(_flightMap._retaskSequence) - break; - case confirmOrbit: - //-- All parameters controlled by RC - activeVehicle.guidedModeOrbit() - //-- Center on current flight map position and orbit with a 50m radius (velocity/direction controlled by the RC) - //activeVehicle.guidedModeOrbit(QGroundControl.flightMapPosition, 50.0) - break; - default: - console.warn(qsTr("Internal error: unknown _confirmActionCode"), _confirmActionCode) - } - } - - function actionRejected() { - _showConfirm = false - /* - altitudeSlider.visible = false - _flightMap._gotoHereCoordinate = QtPositioning.coordinate() - guidedModeHideTimer.restart() - */ - } - - function confirmAction(actionCode) { - //guidedModeHideTimer.stop() - _confirmActionCode = actionCode - _showAltitude = false - switch (_confirmActionCode) { - case confirmArm: - _confirmText = qsTr("Arm vehicle?") - break; - case confirmDisarm: - _confirmText = qsTr("Disarm vehicle?") - break; - case confirmEmergencyStop: - _confirmText = qsTr("STOP ALL MOTORS?") - break; - case confirmTakeoff: - _showAltitude = true - setInitialValueMeters(3) - _confirmText = qsTr("Takeoff vehicle?") - break; - case confirmLand: - _confirmText = qsTr("Land vehicle?") - break; - case confirmHome: - _confirmText = qsTr("Return to land?") - break; - case confirmChangeAlt: - _showAltitude = true - setInitialValueAppSettingsDistanceUnits(activeVehicle.altitudeRelative.value) - _confirmText = qsTr("Change altitude?") - break; - case confirmGoTo: - _confirmText = qsTr("Move vehicle?") - break; - case confirmRetask: - _confirmText = qsTr("Change active waypoint?") - break; - case confirmOrbit: - _confirmText = qsTr("Enter orbit mode?") - break; - } - _showConfirm = true - } - - function setInitialValueMeters(meters) { - _confirmAltitude = QGroundControl.metersToAppSettingsDistanceUnits(meters) - } - - function setInitialValueAppSettingsDistanceUnits(height) { - _confirmAltitude = height - } - - QGCPalette { id: qgcPal; colorGroupEnabled: enabled } - - Column { - id: guidedModeColumn - anchors.margins: _margins - anchors.top: parent.top - anchors.left: parent.left - spacing: _margins - - /* - QGCLabel { - anchors.horizontalCenter: parent.horizontalCenter - color: _lightWidgetBorders ? qgcPal.mapWidgetBorderDark : qgcPal.mapWidgetBorderLight - text: "Click in map to move vehicle" - visible: gotoEnabled - }*/ - - Row { - spacing: _margins * 2 - visible: !_showConfirm - - QGCButton { - pointSize: fontPointSize - text: (activeVehicle && activeVehicle.armed) ? (activeVehicle.flying ? qsTr("Emergency Stop") : qsTr("Disarm")) : qsTr("Arm") - visible: activeVehicle - onClicked: confirmAction(activeVehicle.armed ? (activeVehicle.flying ? confirmEmergencyStop : confirmDisarm) : confirmArm) - } - - QGCButton { - pointSize: fontPointSize - text: qsTr("RTL") - visible: (activeVehicle && activeVehicle.armed) && activeVehicle.guidedModeSupported && activeVehicle.flying - onClicked: confirmAction(confirmHome) - } - - QGCButton { - pointSize: fontPointSize - text: (activeVehicle && activeVehicle.flying) ? qsTr("Land"): qsTr("Takeoff") - visible: activeVehicle && activeVehicle.guidedModeSupported && activeVehicle.armed - onClicked: confirmAction(activeVehicle.flying ? confirmLand : confirmTakeoff) - } - - QGCButton { - pointSize: fontPointSize - text: qsTr("Pause") - visible: (activeVehicle && activeVehicle.armed) && activeVehicle.pauseVehicleSupported && activeVehicle.flying - onClicked: { - guidedModeHideTimer.restart() - activeVehicle.pauseVehicle() - } - } - - QGCButton { - pointSize: fontPointSize - text: qsTr("Change Altitude") - visible: (activeVehicle && activeVehicle.flying) && activeVehicle.guidedModeSupported && activeVehicle.armed - onClicked: confirmAction(confirmChangeAlt) - } - - QGCButton { - pointSize: fontPointSize - text: qsTr("Orbit") - visible: (activeVehicle && activeVehicle.flying) && activeVehicle.orbitModeSupported && activeVehicle.armed - onClicked: confirmAction(confirmOrbit) - } - - } // Row - - Column { - visible: _showConfirm - - QGCLabel { - anchors.horizontalCenter: parent.horizontalCenter - text: _confirmText - } - - Row { - anchors.horizontalCenter: parent.horizontalCenter - spacing: ScreenTools.defaultFontPixelWidth - - Row { - visible: _showAltitude - - QGCLabel { - text: qsTr("Alt (rel)") - } - - QGCLabel { - text: QGroundControl.appSettingsDistanceUnitsString - } - - QGCTextField { - id: altField - text: _confirmAltitude.toFixed(1) - } - } - - QGCButton { - text: qsTr("Yes") - - onClicked: { - var value = parseFloat(altField.text) - if (isNaN(value)) { - actionRejected() - } else { - actionConfirmed(QGroundControl.appSettingsDistanceUnitsToMeters(value)) - } - } - } - - QGCButton { - text: qsTr("No") - onClicked: actionRejected() - } - } - } // Column - } // Column -} // Rectangle - Guided mode buttons diff --git a/src/QmlControls/QGroundControl.Controls.qmldir b/src/QmlControls/QGroundControl.Controls.qmldir index eb722eeaea978c83f0eb48c0a624ced4ea1697b5..3fbaad8e2a3f9732d350d563b3eb37d575934c32 100644 --- a/src/QmlControls/QGroundControl.Controls.qmldir +++ b/src/QmlControls/QGroundControl.Controls.qmldir @@ -12,7 +12,6 @@ FlightModeDropdown 1.0 FlightModeDropdown.qml FlightModeMenu 1.0 FlightModeMenu.qml GeoFenceEditor 1.0 GeoFenceEditor.qml GeoFenceMapVisuals 1.0 GeoFenceMapVisuals.qml -GuidedBar 1.0 GuidedBar.qml IndicatorButton 1.0 IndicatorButton.qml JoystickThumbPad 1.0 JoystickThumbPad.qml MainToolBar 1.0 MainToolBar.qml