live mission details in footer implemented
This commit is contained in:
@@ -226,6 +226,19 @@ class _FlyScreenState extends ConsumerState<FlyScreen> {
|
||||
];
|
||||
}
|
||||
|
||||
// Live-Missionsstatus fuer die Details-Pille (Doku: "aktiver Wegpunkt
|
||||
// 3/23, Distanz und Zeit zum naechsten Wegpunkt" statt der statischen
|
||||
// Plan-Werte) - siehe FlyMissionStatus-Klassendoku dazu, warum das aus
|
||||
// Position+Wegpunktkoordinaten berechnet wird statt direkt von MSP
|
||||
// abgefragt.
|
||||
final flyMissionStatus = computeFlyMissionStatus(
|
||||
waypoints: waypoints,
|
||||
activeWaypointIndex: activeWpIndex,
|
||||
currentLat: telemetry != null && telemetry.hasFix ? telemetry.lat : null,
|
||||
currentLon: telemetry != null && telemetry.hasFix ? telemetry.lon : null,
|
||||
currentSpeedMs: telemetry?.speedMs,
|
||||
);
|
||||
|
||||
return Stack(
|
||||
children: [
|
||||
MissionMap(
|
||||
@@ -273,6 +286,7 @@ class _FlyScreenState extends ConsumerState<FlyScreen> {
|
||||
activeIndex: -1,
|
||||
totalDistanceM: missionStats.distanceM,
|
||||
totalDurationSec: missionStats.durationSec,
|
||||
flyMissionStatus: flyMissionStatus,
|
||||
warnings: warnings,
|
||||
onDetailsTap: _openWaypointList,
|
||||
onWarningsTap: () => _openWarningsPanel(warnings),
|
||||
|
||||
@@ -278,7 +278,9 @@ class _TelemetryFields extends StatelessWidget {
|
||||
_field('Link quality', '${t.linkQuality}%'),
|
||||
_field('Flight mode', t.flightMode),
|
||||
if (t.activeWaypointIndex != null)
|
||||
_field('Active WP', '${t.activeWaypointIndex}'),
|
||||
// +1: activeWaypointIndex ist 0-basiert (Array-Index), fuer
|
||||
// Menschen zaehlt man Wegpunkte ab 1 (siehe TelemetryFrame-Doku).
|
||||
_field('Active WP', '${t.activeWaypointIndex! + 1}'),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user