Browse Source

Fly: Fix click to set new mission item

QGC4.4
DonLakeFlyer 8 years ago
parent
commit
0a23e4901a
  1. 2
      qgroundcontrol.qrc
  2. 7
      src/FlightDisplay/FlightDisplayViewMap.qml
  3. 2
      src/FlightDisplay/FlightDisplayViewWidgets.qml
  4. 8
      src/MissionEditor/FWLandingPatternMapVisual.qml
  5. 9
      src/MissionEditor/MissionEditor.qml
  6. 5
      src/MissionEditor/MissionItemMapVisual.qml
  7. 8
      src/MissionEditor/MissionSettingsMapVisual.qml
  8. 7
      src/MissionEditor/SimpleItemMapVisual.qml
  9. 16
      src/MissionEditor/SurveyMapVisual.qml
  10. 1
      src/MissionManager/MissionController.cc

2
qgroundcontrol.qrc

@ -40,7 +40,6 @@ @@ -40,7 +40,6 @@
<file alias="MixersComponent.qml">src/AutoPilotPlugins/Common/MixersComponent.qml</file>
<file alias="MockLink.qml">src/ui/preferences/MockLink.qml</file>
<file alias="MockLinkSettings.qml">src/ui/preferences/MockLinkSettings.qml</file>
<file alias="MultiVehicleView.qml">src/MultiVehicle/MultiVehicleView.qml</file>
<file alias="MotorComponent.qml">src/AutoPilotPlugins/Common/MotorComponent.qml</file>
<file alias="OfflineMap.qml">src/QtLocationPlugin/QMLControl/OfflineMap.qml</file>
<file alias="PowerComponent.qml">src/AutoPilotPlugins/PX4/PowerComponent.qml</file>
@ -58,7 +57,6 @@ @@ -58,7 +57,6 @@
<file alias="QGroundControl/Controls/FWLandingPatternMapVisual.qml">src/MissionEditor/FWLandingPatternMapVisual.qml</file>
<file alias="QGroundControl/Controls/GeoFenceEditor.qml">src/MissionEditor/GeoFenceEditor.qml</file>
<file alias="QGroundControl/Controls/GeoFenceMapVisuals.qml">src/MissionEditor/GeoFenceMapVisuals.qml</file>
<file alias="QGroundControl/Controls/GuidedBar.qml">src/QmlControls/GuidedBar.qml</file>
<file alias="QGroundControl/Controls/IndicatorButton.qml">src/QmlControls/IndicatorButton.qml</file>
<file alias="QGroundControl/Controls/JoystickThumbPad.qml">src/QmlControls/JoystickThumbPad.qml</file>
<file alias="QGroundControl/Controls/MainToolBar.qml">src/ui/toolbar/MainToolBar.qml</file>

7
src/FlightDisplay/FlightDisplayViewMap.qml

@ -257,7 +257,12 @@ FlightMap { @@ -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)
}
}
}

2
src/FlightDisplay/FlightDisplayViewWidgets.qml

@ -318,7 +318,7 @@ Item { @@ -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")

8
src/MissionEditor/FWLandingPatternMapVisual.qml

@ -20,8 +20,12 @@ import QGroundControl.FlightMap 1.0 @@ -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
@ -207,7 +211,7 @@ Item { @@ -207,7 +211,7 @@ Item {
label: "Loiter"
checked: _missionItem.isCurrentItem
onClicked: setCurrentItem(_missionItem.sequenceNumber)
onClicked: _root.clicked(_missionItem.sequenceNumber)
}
}
}
@ -241,7 +245,7 @@ Item { @@ -241,7 +245,7 @@ Item {
label: "Land"
checked: _missionItem.isCurrentItem
onClicked: setCurrentItem(_missionItem.sequenceNumber)
onClicked: _root.clicked(_missionItem.sequenceNumber)
}
}
}

9
src/MissionEditor/MissionEditor.qml

@ -49,7 +49,7 @@ QGCView { @@ -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 { @@ -459,7 +459,8 @@ QGCView {
model: missionController.visualItems
delegate: MissionItemMapVisual {
map: editorMap
map: editorMap
onClicked: setCurrentItem(sequenceNumber)
}
}
@ -702,6 +703,10 @@ QGCView { @@ -702,6 +703,10 @@ QGCView {
property bool _showZoom: !ScreenTools.isMobile
property bool mySingleComplexItem: _singleComplexItem
onMySingleComplexItemChanged: console.log(model[1].dropPanelComponent)
model: [
{
name: "Waypoint",

5
src/MissionEditor/MissionItemMapVisual.qml

@ -17,12 +17,14 @@ import QGroundControl.Palette 1.0 @@ -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 { @@ -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)
}
}

8
src/MissionEditor/MissionSettingsMapVisual.qml

@ -20,8 +20,12 @@ import QGroundControl.FlightMap 1.0 @@ -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 { @@ -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 { @@ -119,7 +123,7 @@ Item {
z: 2
specifiesCoordinate: false
onClicked: setCurrentItem(object.sequenceNumber)
onClicked: _root.Clicked(object.sequenceNumber)
}
}
}

7
src/MissionEditor/SimpleItemMapVisual.qml

@ -20,6 +20,7 @@ import QGroundControl.FlightMap 1.0 @@ -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 { @@ -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 { @@ -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 { @@ -120,7 +123,7 @@ Item {
checked: object.isCurrentItem
specifiesCoordinate: false
onClicked: setCurrentItem(object.sequenceNumber)
onClicked: _root.clicked(object.sequenceNumber)
}
}
}

16
src/MissionEditor/SurveyMapVisual.qml

@ -20,6 +20,8 @@ import QGroundControl.FlightMap 1.0 @@ -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 { @@ -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,12 +152,10 @@ Item { @@ -148,12 +152,10 @@ Item {
coordinate: _missionItem.coordinate
visible: _missionItem.exitCoordinate.isValid
sourceItem:
MissionItemIndexLabel {
sourceItem: MissionItemIndexLabel {
label: "Entry"
checked: _missionItem.isCurrentItem
onClicked: setCurrentItem(_missionItem.sequenceNumber)
onClicked: _root.clicked(_missionItem.sequenceNumber)
}
}
}
@ -169,12 +171,10 @@ Item { @@ -169,12 +171,10 @@ Item {
coordinate: _missionItem.exitCoordinate
visible: _missionItem.exitCoordinate.isValid
sourceItem:
MissionItemIndexLabel {
sourceItem: MissionItemIndexLabel {
label: "Exit"
checked: _missionItem.isCurrentItem
onClicked: setCurrentItem(_missionItem.sequenceNumber)
onClicked: _root.clicked(_missionItem.sequenceNumber)
}
}
}

1
src/MissionManager/MissionController.cc

@ -1279,6 +1279,7 @@ void MissionController::_activeVehicleSet(void) @@ -1279,6 +1279,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.

Loading…
Cancel
Save