diff --git a/src/FlightMap/Widgets/MapFitFunctions.qml b/src/FlightMap/Widgets/MapFitFunctions.qml index 155daa8ef1ff85e12fbdc19aeee19ca4f00ade5a..06ec4bf6d14123dbde52e11fe0899456a96c6d7c 100644 --- a/src/FlightMap/Widgets/MapFitFunctions.qml +++ b/src/FlightMap/Widgets/MapFitFunctions.qml @@ -95,6 +95,10 @@ Item { } function fitMapViewportToMissionItems() { + if (!mapMissionController.visualItems) { + // Being called prior to controller.start + return + } var coordList = [ ] addMissionItemCoordsForFit(coordList) fitMapViewportToAllCoordinates(coordList) @@ -135,6 +139,10 @@ Item { } function fitMapViewportToAllItems() { + if (!mapMissionController.visualItems) { + // Being called prior to controller.start + return + } var coordList = [ ] addMissionItemCoordsForFit(coordList) addFenceItemCoordsForFit(coordList) diff --git a/src/MissionEditor/MissionSettingsEditor.qml b/src/MissionEditor/MissionSettingsEditor.qml index 337927a2435fbcfb4ec589dfb03e81ab5eabf0b1..2984034b0c91fdf0f693a5dbc382c430adcb5732 100644 --- a/src/MissionEditor/MissionSettingsEditor.qml +++ b/src/MissionEditor/MissionSettingsEditor.qml @@ -160,7 +160,6 @@ Rectangle { } QGCLabel { - Layout.row: 2 text: qsTr("Cruise speed:") visible: _showCruiseSpeed Layout.fillWidth: true @@ -172,7 +171,6 @@ Rectangle { } QGCLabel { - Layout.row: 3 text: qsTr("Hover speed:") visible: _showHoverSpeed Layout.fillWidth: true diff --git a/src/MissionEditor/SimpleItemMapVisual.qml b/src/MissionEditor/SimpleItemMapVisual.qml index 0c5708e67e56e8605f82ab5066a4ef1ca1209348..9559bdb417e934f333727a96480c35cabaa1e1f7 100644 --- a/src/MissionEditor/SimpleItemMapVisual.qml +++ b/src/MissionEditor/SimpleItemMapVisual.qml @@ -22,32 +22,38 @@ import QGroundControl.FlightMap 1.0 Item { property var map ///< Map control to place item in - property var _missionItem: object - property var _itemVisual - property var _dragArea + property var _missionItem: object + property var _itemVisual + property var _dragArea + property bool _itemVisualShowing: false + property bool _dragAreaShowing: false function hideItemVisuals() { - _itemVisual.destroy() - _itemVisual = undefined + if (_itemVisualShowing) { + _itemVisual.destroy() + _itemVisualShowing = false + } } function showItemVisuals() { - if (!_itemVisual) { + if (!_itemVisualShowing) { _itemVisual = indicatorComponent.createObject(map) map.addMapItem(_itemVisual) + _itemVisualShowing = true } } function hideDragArea() { - if (_dragArea) { + if (_dragAreaShowing) { _dragArea.destroy() - _dragArea = undefined + _dragAreaShowing = false } } function showDragArea() { - if (!_dragArea) { + if (!_dragAreaShowing) { _dragArea = dragAreaComponent.createObject(map) + _dragAreaShowing = true } } @@ -81,10 +87,10 @@ Item { id: dragAreaComponent MissionItemIndicatorDrag { - itemIndicator: _itemVisual - itemCoordinate: _missionItem.coordinate + itemIndicator: _itemVisual + itemCoordinate: _missionItem.coordinate - onItemCoordinateChanged: _missionItem.coordinate = itemCoordinate + onItemCoordinateChanged: _missionItem.coordinate = itemCoordinate } } diff --git a/src/MissionEditor/SurveyMapVisual.qml b/src/MissionEditor/SurveyMapVisual.qml index cfbdb092c5772b988d8cea504f0ca8aeea998674..f3384854cf255e20771680d529f1084edac56244 100644 --- a/src/MissionEditor/SurveyMapVisual.qml +++ b/src/MissionEditor/SurveyMapVisual.qml @@ -76,6 +76,7 @@ Item { anchorPoint.y: sourceItem.anchorPointY z: QGroundControl.zOrderMapItems coordinate: _missionItem.coordinate + visible: _missionItem.exitCoordinate.isValid sourceItem: MissionItemIndexLabel { @@ -96,6 +97,7 @@ Item { anchorPoint.y: sourceItem.anchorPointY z: QGroundControl.zOrderMapItems coordinate: _missionItem.exitCoordinate + visible: _missionItem.exitCoordinate.isValid sourceItem: MissionItemIndexLabel {