Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qgroundcontrol
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
982e4d06
Commit
982e4d06
authored
Oct 24, 2015
by
Don Gagne
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #2104 from DonLakeFlyer/MissionDrag
Mission drag visuals
parents
a5597700
d8fb65d6
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
266 additions
and
88 deletions
+266
-88
qgcresources.qrc
qgcresources.qrc
+1
-0
MissionEditor.qml
src/MissionEditor/MissionEditor.qml
+146
-26
MissionController.cc
src/MissionManager/MissionController.cc
+66
-48
MissionController.h
src/MissionManager/MissionController.h
+6
-2
MissionControllerManagerTest.cc
src/MissionManager/MissionControllerManagerTest.cc
+0
-2
MissionControllerTest.cc
src/MissionManager/MissionControllerTest.cc
+37
-4
MissionControllerTest.h
src/MissionManager/MissionControllerTest.h
+8
-4
MainWindow.qml
src/ui/MainWindow.qml
+2
-2
No files found.
qgcresources.qrc
View file @
982e4d06
...
@@ -62,6 +62,7 @@
...
@@ -62,6 +62,7 @@
<file alias="ZoomMinus.svg">src/FlightMap/Images/ZoomMinus.svg</file>
<file alias="ZoomMinus.svg">src/FlightMap/Images/ZoomMinus.svg</file>
<!-- Map Buttons -->
<!-- Map Buttons -->
<file alias="ArrowHead.svg">src/FlightMap/Images/ArrowHead.svg</file>
<file alias="Help.svg">src/FlightMap/Images/Help.svg</file>
<file alias="Help.svg">src/FlightMap/Images/Help.svg</file>
<file alias="HelpBlack.svg">src/FlightMap/Images/HelpBlack.svg</file>
<file alias="HelpBlack.svg">src/FlightMap/Images/HelpBlack.svg</file>
<file alias="MapAddMission.svg">src/FlightMap/Images/MapAddMission.svg</file>
<file alias="MapAddMission.svg">src/FlightMap/Images/MapAddMission.svg</file>
...
...
src/MissionEditor/MissionEditor.qml
View file @
982e4d06
This diff is collapsed.
Click to expand it.
src/MissionManager/MissionController.cc
View file @
982e4d06
...
@@ -29,6 +29,8 @@ This file is part of the QGROUNDCONTROL project
...
@@ -29,6 +29,8 @@ This file is part of the QGROUNDCONTROL project
#include "QGCMessageBox.h"
#include "QGCMessageBox.h"
#include "FirmwarePlugin.h"
#include "FirmwarePlugin.h"
QGC_LOGGING_CATEGORY
(
MissionControllerLog
,
"MissionControllerLog"
)
const
char
*
MissionController
::
_settingsGroup
=
"MissionController"
;
const
char
*
MissionController
::
_settingsGroup
=
"MissionController"
;
MissionController
::
MissionController
(
QObject
*
parent
)
MissionController
::
MissionController
(
QObject
*
parent
)
...
@@ -39,7 +41,7 @@ MissionController::MissionController(QObject *parent)
...
@@ -39,7 +41,7 @@ MissionController::MissionController(QObject *parent)
,
_activeVehicle
(
NULL
)
,
_activeVehicle
(
NULL
)
,
_liveHomePositionAvailable
(
false
)
,
_liveHomePositionAvailable
(
false
)
,
_autoSync
(
false
)
,
_autoSync
(
false
)
,
_first
MissionItemSync
(
false
)
,
_first
ItemsFromVehicle
(
false
)
,
_missionItemsRequested
(
false
)
,
_missionItemsRequested
(
false
)
,
_queuedSend
(
false
)
,
_queuedSend
(
false
)
{
{
...
@@ -48,50 +50,75 @@ MissionController::MissionController(QObject *parent)
...
@@ -48,50 +50,75 @@ MissionController::MissionController(QObject *parent)
MissionController
::~
MissionController
()
MissionController
::~
MissionController
()
{
{
// Start with empty list
_canEdit
=
true
;
_missionItems
=
new
QmlObjectListModel
(
this
);
_initAllMissionItems
();
}
}
void
MissionController
::
start
(
bool
editMode
)
void
MissionController
::
start
(
bool
editMode
)
{
{
qCDebug
(
MissionControllerLog
)
<<
"start editMode"
<<
editMode
;
_editMode
=
editMode
;
_editMode
=
editMode
;
MultiVehicleManager
*
multiVehicleMgr
=
MultiVehicleManager
::
instance
();
MultiVehicleManager
*
multiVehicleMgr
=
MultiVehicleManager
::
instance
();
connect
(
multiVehicleMgr
,
&
MultiVehicleManager
::
activeVehicleChanged
,
this
,
&
MissionController
::
_activeVehicleChanged
);
connect
(
multiVehicleMgr
,
&
MultiVehicleManager
::
activeVehicleChanged
,
this
,
&
MissionController
::
_activeVehicleChanged
);
Vehicle
*
activeVehicle
=
multiVehicleMgr
->
activeVehicle
();
_setupMissionItems
(
true
/* fromVehicle */
,
true
/* force */
);
if
(
activeVehicle
)
{
_activeVehicleChanged
(
activeVehicle
);
}
else
{
_missionItemsRequested
=
true
;
_newMissionItemsAvailable
();
}
}
}
void
MissionController
::
_newMissionItemsAvailable
(
void
)
void
MissionController
::
_newMissionItemsAvailable
FromVehicle
(
void
)
{
{
if
(
_editMode
)
{
qCDebug
(
MissionControllerLog
)
<<
"_newMissionItemsAvailableFromVehicle"
;
if
(
_firstMissionItemSync
)
{
// This is the first time the vehicle is seeing items. We have to be careful of transitioning from offline
_setupMissionItems
(
true
/* fromVehicle */
,
false
/* force */
);
// to online.
}
_firstMissionItemSync
=
false
;
/// @param fromVehicle true: load items from vehicle
if
(
_missionItems
&&
_missionItems
->
count
()
>
1
)
{
/// @param force true: disregard any flags which may prevent load
QGCMessageBox
::
StandardButton
button
=
QGCMessageBox
::
warning
(
"Mission Editing"
,
void
MissionController
::
_setupMissionItems
(
bool
fromVehicle
,
bool
force
)
"The vehicle has sent a new set of Mission Items. "
{
"Do you want to discard your current set of unsaved items and use the ones from the vehicle instead?"
,
qCDebug
(
MissionControllerLog
)
<<
"_setupMissionItems fromVehicle:force:_editMode:_firstItemsFromVehicle"
<<
fromVehicle
<<
force
<<
_editMode
<<
_firstItemsFromVehicle
;
QGCMessageBox
::
Yes
|
QGCMessageBox
::
No
,
QGCMessageBox
::
No
);
MissionManager
*
missionManager
=
NULL
;
if
(
button
==
QGCMessageBox
::
No
)
{
if
(
_activeVehicle
)
{
return
;
missionManager
=
_activeVehicle
->
missionManager
();
}
else
{
qCDebug
(
MissionControllerLog
)
<<
"running offline"
;
}
if
(
!
force
)
{
if
(
_editMode
&&
fromVehicle
)
{
if
(
_firstItemsFromVehicle
)
{
if
(
missionManager
)
{
if
(
missionManager
->
inProgress
())
{
// Still in progress of retrieving items from vehicle, leave current set alone and wait for
// mission manager to finish
qCDebug
(
MissionControllerLog
)
<<
"disregarding due to MissionManager in progress"
;
return
;
}
else
{
// We have the first set of items from the vehicle. If we haven't already started creating a
// new mission, switch to the items from the vehicle
_firstItemsFromVehicle
=
false
;
if
(
_missionItems
->
count
()
!=
1
)
{
qCDebug
(
MissionControllerLog
)
<<
"disregarding due to existing items"
;
return
;
}
}
}
}
}
else
if
(
!
_missionItemsRequested
)
{
// We didn't specifically ask for new mission items. Disregard the new set since it is
// the most likely the set we just sent to the vehicle.
qCDebug
(
MissionControllerLog
)
<<
"disregarding due to unrequested notification"
;
return
;
}
}
}
else
if
(
!
_missionItemsRequested
)
{
// We didn't specifically ask for new mission items. Disregard the new set since it is
// the most likely the set we just sent to the vehicle.
return
;
}
}
}
}
qCDebug
(
MissionControllerLog
)
<<
"fell through to main setup"
;
_missionItemsRequested
=
false
;
_missionItemsRequested
=
false
;
if
(
_missionItems
)
{
if
(
_missionItems
)
{
...
@@ -99,17 +126,14 @@ void MissionController::_newMissionItemsAvailable(void)
...
@@ -99,17 +126,14 @@ void MissionController::_newMissionItemsAvailable(void)
_missionItems
->
deleteLater
();
_missionItems
->
deleteLater
();
}
}
MissionManager
*
missionManager
=
NULL
;
if
(
!
missionManager
||
!
fromVehicle
||
missionManager
->
inProgress
())
{
if
(
_activeVehicle
)
{
missionManager
=
_activeVehicle
->
missionManager
();
}
if
(
!
missionManager
||
missionManager
->
inProgress
())
{
_canEdit
=
true
;
_canEdit
=
true
;
_missionItems
=
new
QmlObjectListModel
(
this
);
_missionItems
=
new
QmlObjectListModel
(
this
);
qCDebug
(
MissionControllerLog
)
<<
"creating empty set"
;
}
else
{
}
else
{
_canEdit
=
missionManager
->
canEdit
();
_canEdit
=
missionManager
->
canEdit
();
_missionItems
=
missionManager
->
copyMissionItems
();
_missionItems
=
missionManager
->
copyMissionItems
();
qCDebug
(
MissionControllerLog
)
<<
"loading from vehicle count"
<<
_missionItems
->
count
();
}
}
_initAllMissionItems
();
_initAllMissionItems
();
...
@@ -121,8 +145,6 @@ void MissionController::getMissionItems(void)
...
@@ -121,8 +145,6 @@ void MissionController::getMissionItems(void)
if
(
activeVehicle
)
{
if
(
activeVehicle
)
{
_missionItemsRequested
=
true
;
_missionItemsRequested
=
true
;
MissionManager
*
missionManager
=
activeVehicle
->
missionManager
();
connect
(
missionManager
,
&
MissionManager
::
newMissionItemsAvailable
,
this
,
&
MissionController
::
_newMissionItemsAvailable
);
activeVehicle
->
missionManager
()
->
requestMissionItems
();
activeVehicle
->
missionManager
()
->
requestMissionItems
();
}
}
}
}
...
@@ -406,15 +428,19 @@ void MissionController::_itemCommandChanged(MavlinkQmlSingleton::Qml_MAV_CMD com
...
@@ -406,15 +428,19 @@ void MissionController::_itemCommandChanged(MavlinkQmlSingleton::Qml_MAV_CMD com
void
MissionController
::
_activeVehicleChanged
(
Vehicle
*
activeVehicle
)
void
MissionController
::
_activeVehicleChanged
(
Vehicle
*
activeVehicle
)
{
{
qCDebug
(
MissionControllerLog
)
<<
"_activeVehicleChanged activeVehicle"
<<
activeVehicle
;
if
(
_activeVehicle
)
{
if
(
_activeVehicle
)
{
MissionManager
*
missionManager
=
_activeVehicle
->
missionManager
();
MissionManager
*
missionManager
=
_activeVehicle
->
missionManager
();
disconnect
(
missionManager
,
&
MissionManager
::
newMissionItemsAvailable
,
this
,
&
MissionController
::
_newMissionItemsAvailable
);
disconnect
(
missionManager
,
&
MissionManager
::
newMissionItemsAvailable
,
this
,
&
MissionController
::
_newMissionItemsAvailable
FromVehicle
);
disconnect
(
missionManager
,
&
MissionManager
::
inProgressChanged
,
this
,
&
MissionController
::
_inProgressChanged
);
disconnect
(
missionManager
,
&
MissionManager
::
inProgressChanged
,
this
,
&
MissionController
::
_inProgressChanged
);
disconnect
(
_activeVehicle
,
&
Vehicle
::
homePositionAvailableChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionAvailableChanged
);
disconnect
(
_activeVehicle
,
&
Vehicle
::
homePositionAvailableChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionAvailableChanged
);
disconnect
(
_activeVehicle
,
&
Vehicle
::
homePositionChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionChanged
);
disconnect
(
_activeVehicle
,
&
Vehicle
::
homePositionChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionChanged
);
_activeVehicle
=
NULL
;
_activeVehicle
=
NULL
;
_newMissionItemsAvailable
();
// When the active vehicle goes away we toss the editor items
_setupMissionItems
(
false
/* fromVehicle */
,
true
/* force */
);
_activeVehicleHomePositionAvailableChanged
(
false
);
_activeVehicleHomePositionAvailableChanged
(
false
);
}
}
...
@@ -423,21 +449,13 @@ void MissionController::_activeVehicleChanged(Vehicle* activeVehicle)
...
@@ -423,21 +449,13 @@ void MissionController::_activeVehicleChanged(Vehicle* activeVehicle)
if
(
_activeVehicle
)
{
if
(
_activeVehicle
)
{
MissionManager
*
missionManager
=
activeVehicle
->
missionManager
();
MissionManager
*
missionManager
=
activeVehicle
->
missionManager
();
connect
(
missionManager
,
&
MissionManager
::
newMissionItemsAvailable
,
this
,
&
MissionController
::
_newMissionItemsAvailable
);
connect
(
missionManager
,
&
MissionManager
::
newMissionItemsAvailable
,
this
,
&
MissionController
::
_newMissionItemsAvailable
FromVehicle
);
connect
(
missionManager
,
&
MissionManager
::
inProgressChanged
,
this
,
&
MissionController
::
_inProgressChanged
);
connect
(
missionManager
,
&
MissionManager
::
inProgressChanged
,
this
,
&
MissionController
::
_inProgressChanged
);
connect
(
_activeVehicle
,
&
Vehicle
::
homePositionAvailableChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionAvailableChanged
);
connect
(
_activeVehicle
,
&
Vehicle
::
homePositionAvailableChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionAvailableChanged
);
connect
(
_activeVehicle
,
&
Vehicle
::
homePositionChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionChanged
);
connect
(
_activeVehicle
,
&
Vehicle
::
homePositionChanged
,
this
,
&
MissionController
::
_activeVehicleHomePositionChanged
);
if
(
missionManager
->
inProgress
())
{
_firstItemsFromVehicle
=
true
;
// Vehicle is still in process of requesting mission items
_setupMissionItems
(
true
/* fromVehicle */
,
false
/* force */
);
_firstMissionItemSync
=
true
;
}
else
{
// Vehicle already has mission items
_firstMissionItemSync
=
false
;
}
_missionItemsRequested
=
true
;
_newMissionItemsAvailable
();
_activeVehicleHomePositionChanged
(
_activeVehicle
->
homePosition
());
_activeVehicleHomePositionChanged
(
_activeVehicle
->
homePosition
());
_activeVehicleHomePositionAvailableChanged
(
_activeVehicle
->
homePositionAvailable
());
_activeVehicleHomePositionAvailableChanged
(
_activeVehicle
->
homePositionAvailable
());
...
...
src/MissionManager/MissionController.h
View file @
982e4d06
...
@@ -28,6 +28,9 @@ This file is part of the QGROUNDCONTROL project
...
@@ -28,6 +28,9 @@ This file is part of the QGROUNDCONTROL project
#include "QmlObjectListModel.h"
#include "QmlObjectListModel.h"
#include "Vehicle.h"
#include "Vehicle.h"
#include "QGCLoggingCategory.h"
Q_DECLARE_LOGGING_CATEGORY
(
MissionControllerLog
)
class
MissionController
:
public
QObject
class
MissionController
:
public
QObject
{
{
...
@@ -72,7 +75,7 @@ signals:
...
@@ -72,7 +75,7 @@ signals:
void
autoSyncChanged
(
bool
autoSync
);
void
autoSyncChanged
(
bool
autoSync
);
private
slots
:
private
slots
:
void
_newMissionItemsAvailable
();
void
_newMissionItemsAvailable
FromVehicle
();
void
_itemCoordinateChanged
(
const
QGeoCoordinate
&
coordinate
);
void
_itemCoordinateChanged
(
const
QGeoCoordinate
&
coordinate
);
void
_itemCommandChanged
(
MavlinkQmlSingleton
::
Qml_MAV_CMD
command
);
void
_itemCommandChanged
(
MavlinkQmlSingleton
::
Qml_MAV_CMD
command
);
void
_activeVehicleChanged
(
Vehicle
*
activeVehicle
);
void
_activeVehicleChanged
(
Vehicle
*
activeVehicle
);
...
@@ -91,6 +94,7 @@ private:
...
@@ -91,6 +94,7 @@ private:
void
_initMissionItem
(
MissionItem
*
item
);
void
_initMissionItem
(
MissionItem
*
item
);
void
_deinitMissionItem
(
MissionItem
*
item
);
void
_deinitMissionItem
(
MissionItem
*
item
);
void
_autoSyncSend
(
void
);
void
_autoSyncSend
(
void
);
void
_setupMissionItems
(
bool
fromVehicle
,
bool
force
);
private:
private:
bool
_editMode
;
bool
_editMode
;
...
@@ -101,7 +105,7 @@ private:
...
@@ -101,7 +105,7 @@ private:
bool
_liveHomePositionAvailable
;
bool
_liveHomePositionAvailable
;
QGeoCoordinate
_liveHomePosition
;
QGeoCoordinate
_liveHomePosition
;
bool
_autoSync
;
bool
_autoSync
;
bool
_first
MissionItemSync
;
bool
_first
ItemsFromVehicle
;
bool
_missionItemsRequested
;
bool
_missionItemsRequested
;
bool
_queuedSend
;
bool
_queuedSend
;
...
...
src/MissionManager/MissionControllerManagerTest.cc
View file @
982e4d06
...
@@ -47,8 +47,6 @@ void MissionControllerManagerTest::cleanup(void)
...
@@ -47,8 +47,6 @@ void MissionControllerManagerTest::cleanup(void)
void
MissionControllerManagerTest
::
_initForFirmwareType
(
MAV_AUTOPILOT
firmwareType
)
void
MissionControllerManagerTest
::
_initForFirmwareType
(
MAV_AUTOPILOT
firmwareType
)
{
{
UnitTest
::
init
();
LinkManager
*
linkMgr
=
LinkManager
::
instance
();
LinkManager
*
linkMgr
=
LinkManager
::
instance
();
Q_CHECK_PTR
(
linkMgr
);
Q_CHECK_PTR
(
linkMgr
);
...
...
src/MissionManager/MissionControllerTest.cc
View file @
982e4d06
...
@@ -36,12 +36,15 @@ MissionControllerTest::MissionControllerTest(void)
...
@@ -36,12 +36,15 @@ MissionControllerTest::MissionControllerTest(void)
void
MissionControllerTest
::
cleanup
(
void
)
void
MissionControllerTest
::
cleanup
(
void
)
{
{
delete
_missionController
;
delete
_missionController
;
_missionController
=
NULL
;
MissionControllerManagerTest
::
cleanup
();
MissionControllerManagerTest
::
cleanup
();
}
}
void
MissionControllerTest
::
_initForFirmwareType
(
MAV_AUTOPILOT
firmwareType
)
void
MissionControllerTest
::
_initForFirmwareType
(
MAV_AUTOPILOT
firmwareType
)
{
{
bool
startController
=
false
;
MissionControllerManagerTest
::
_initForFirmwareType
(
firmwareType
);
MissionControllerManagerTest
::
_initForFirmwareType
(
firmwareType
);
_rgSignals
[
missionItemsChangedSignalIndex
]
=
SIGNAL
(
missionItemsChanged
());
_rgSignals
[
missionItemsChangedSignalIndex
]
=
SIGNAL
(
missionItemsChanged
());
...
@@ -49,17 +52,22 @@ void MissionControllerTest::_initForFirmwareType(MAV_AUTOPILOT firmwareType)
...
@@ -49,17 +52,22 @@ void MissionControllerTest::_initForFirmwareType(MAV_AUTOPILOT firmwareType)
_rgSignals
[
liveHomePositionAvailableChangedSignalIndex
]
=
SIGNAL
(
liveHomePositionAvailableChanged
(
bool
));
_rgSignals
[
liveHomePositionAvailableChangedSignalIndex
]
=
SIGNAL
(
liveHomePositionAvailableChanged
(
bool
));
_rgSignals
[
liveHomePositionChangedSignalIndex
]
=
SIGNAL
(
liveHomePositionChanged
(
const
QGeoCoordinate
&
));
_rgSignals
[
liveHomePositionChangedSignalIndex
]
=
SIGNAL
(
liveHomePositionChanged
(
const
QGeoCoordinate
&
));
_missionController
=
new
MissionController
();
if
(
!
_missionController
)
{
Q_CHECK_PTR
(
_missionController
);
startController
=
true
;
_missionController
=
new
MissionController
();
Q_CHECK_PTR
(
_missionController
);
}
_multiSpy
=
new
MultiSignalSpy
();
_multiSpy
=
new
MultiSignalSpy
();
Q_CHECK_PTR
(
_multiSpy
);
Q_CHECK_PTR
(
_multiSpy
);
QCOMPARE
(
_multiSpy
->
init
(
_missionController
,
_rgSignals
,
_cSignals
),
true
);
QCOMPARE
(
_multiSpy
->
init
(
_missionController
,
_rgSignals
,
_cSignals
),
true
);
_missionController
->
start
(
false
/* editMode */
);
if
(
startController
)
{
_missionController
->
start
(
false
/* editMode */
);
}
// All signals should some through on start
// All signals should some through on start
QCOMPARE
(
_multiSpy
->
checkOnlySignalByMask
(
missionItemsChangedSignalMask
|
waypointLinesChangedSignalMask
|
liveHomePositionAvailableChangedSignalMask
|
liveHomePositionChangedSignalMask
),
true
);
QCOMPARE
(
_multiSpy
->
checkOnlySignal
s
ByMask
(
missionItemsChangedSignalMask
|
waypointLinesChangedSignalMask
|
liveHomePositionAvailableChangedSignalMask
|
liveHomePositionChangedSignalMask
),
true
);
_multiSpy
->
clearAllSignals
();
_multiSpy
->
clearAllSignals
();
QmlObjectListModel
*
missionItems
=
_missionController
->
missionItems
();
QmlObjectListModel
*
missionItems
=
_missionController
->
missionItems
();
...
@@ -183,3 +191,28 @@ void MissionControllerTest::_testAddWayppointPX4(void)
...
@@ -183,3 +191,28 @@ void MissionControllerTest::_testAddWayppointPX4(void)
{
{
_testAddWaypointWorker
(
MAV_AUTOPILOT_PX4
);
_testAddWaypointWorker
(
MAV_AUTOPILOT_PX4
);
}
}
void
MissionControllerTest
::
_testOfflineToOnlineWorker
(
MAV_AUTOPILOT
firmwareType
)
{
// Start offline and add item
_missionController
=
new
MissionController
();
Q_CHECK_PTR
(
_missionController
);
_missionController
->
start
(
true
/* editMode */
);
_missionController
->
addMissionItem
(
QGeoCoordinate
(
37.803784
,
-
122.462276
));
// Go online to empty vehicle
MissionControllerManagerTest
::
_initForFirmwareType
(
firmwareType
);
// Make sure our offline mission items are still there
QCOMPARE
(
_missionController
->
missionItems
()
->
count
(),
2
);
}
void
MissionControllerTest
::
_testOfflineToOnlineAPM
(
void
)
{
_testOfflineToOnlineWorker
(
MAV_AUTOPILOT_ARDUPILOTMEGA
);
}
void
MissionControllerTest
::
_testOfflineToOnlinePX4
(
void
)
{
_testOfflineToOnlineWorker
(
MAV_AUTOPILOT_PX4
);
}
src/MissionManager/MissionControllerTest.h
View file @
982e4d06
...
@@ -43,15 +43,19 @@ public:
...
@@ -43,15 +43,19 @@ public:
private
slots
:
private
slots
:
void
cleanup
(
void
);
void
cleanup
(
void
);
void
_testEmptyVehicleAPM
(
void
);
void
_testOfflineToOnlineAPM
(
void
);
void
_testEmptyVehiclePX4
(
void
);
void
_testOfflineToOnlinePX4
(
void
);
void
_testAddWayppointAPM
(
void
);
void
_testAddWayppointPX4
(
void
);
private:
private:
void
_initForFirmwareType
(
MAV_AUTOPILOT
firmwareType
);
void
_initForFirmwareType
(
MAV_AUTOPILOT
firmwareType
);
void
_testEmptyVehicleWorker
(
MAV_AUTOPILOT
firmwareType
);
void
_testEmptyVehicleWorker
(
MAV_AUTOPILOT
firmwareType
);
void
_testAddWaypointWorker
(
MAV_AUTOPILOT
firmwareType
);
void
_testAddWaypointWorker
(
MAV_AUTOPILOT
firmwareType
);
void
_testOfflineToOnlineWorker
(
MAV_AUTOPILOT
firmwareType
);
void
_testEmptyVehicleAPM
(
void
);
void
_testEmptyVehiclePX4
(
void
);
void
_testAddWayppointAPM
(
void
);
void
_testAddWayppointPX4
(
void
);
enum
{
enum
{
missionItemsChangedSignalIndex
=
0
,
missionItemsChangedSignalIndex
=
0
,
...
...
src/ui/MainWindow.qml
View file @
982e4d06
...
@@ -91,8 +91,8 @@ Item {
...
@@ -91,8 +91,8 @@ Item {
onPositionChanged
:
{
onPositionChanged
:
{
tabletPosition
=
positionSource
.
position
.
coordinate
tabletPosition
=
positionSource
.
position
.
coordinate
_root
.
latitude
=
tabletPosition
.
latitude
flightView
.
latitude
=
tabletPosition
.
latitude
_root
.
longitude
=
tabletPosition
.
longitude
flightView
.
longitude
=
tabletPosition
.
longitude
positionSource
.
active
=
false
positionSource
.
active
=
false
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment