Navigációs képernyőn útvonal megjelenítése supabase táblából és navigációs képernyővel történő indítás beállítások alapján
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 6s
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 6s
This commit is contained in:
@@ -4,7 +4,9 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_map/flutter_map.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:latlong2/latlong.dart';
|
||||
import 'package:terepi_seged/models/vibro_nav_route.dart';
|
||||
import 'package:terepi_seged/pages/vibro_nav/presentation/controllers/vibro_nav_controller.dart';
|
||||
import 'package:terepi_seged/pages/vibro_nav/presentation/views/vibro_nav_routes_view.dart';
|
||||
import 'package:terepi_seged/services/gnss/gnss_connection.dart';
|
||||
import 'package:terepi_seged/services/gnss/gnss_device_service.dart';
|
||||
import 'package:terepi_seged/services/gnss/gnss_service.dart';
|
||||
@@ -27,6 +29,11 @@ class VibroNavView extends GetView<VibroNavController> {
|
||||
style: const TextStyle(fontSize: 11),
|
||||
)),
|
||||
actions: [
|
||||
IconButton(
|
||||
icon: const Icon(Icons.alt_route),
|
||||
tooltip: 'Útvonalak kezelése',
|
||||
onPressed: VibroNavRoutesView.open,
|
||||
),
|
||||
Obx(() => IconButton(
|
||||
icon: Icon(controller.showReservePoints.value
|
||||
? Icons.circle_outlined
|
||||
@@ -181,6 +188,7 @@ class _NavMap extends StatelessWidget {
|
||||
subdomains: const ['mt0', 'mt1', 'mt2', 'mt3'],
|
||||
maxNativeZoom: 18),
|
||||
const _SourcePointsLayer(),
|
||||
const _RoutesLayer(),
|
||||
Obx(() => controller.trail.length > 1
|
||||
? PolylineLayer(polylines: [
|
||||
Polyline(
|
||||
@@ -648,3 +656,30 @@ class _OutlinedLabel extends StatelessWidget {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/// A mai napra érvényes útvonalak (kerülők). Saját Obx-ben él, ezért
|
||||
/// GNSS-frissítésre nem rajzolódik újra.
|
||||
class _RoutesLayer extends StatelessWidget {
|
||||
const _RoutesLayer();
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final c = VibroNavController.to;
|
||||
return Obx(() {
|
||||
final list = c.visibleRoutes;
|
||||
if (list.isEmpty) return const SizedBox.shrink();
|
||||
return PolylineLayer(polylines: [
|
||||
for (final r in list)
|
||||
for (final line in r.lines)
|
||||
Polyline(
|
||||
points: line,
|
||||
strokeWidth: 5,
|
||||
color:
|
||||
VibroNavRoute.colorFor(r.routeKind, r.color).withOpacity(0.9),
|
||||
borderStrokeWidth: 2,
|
||||
borderColor: Colors.white,
|
||||
),
|
||||
]);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user