mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-07-30 23:33:01 +10:00
Added Line Of Sight Feature for repeater placement, Added app wide Units Setting (#198)
* feat: add LOS workflow, global units, l10n cleanup, and mobile UI overflow fixes Squashes prior PR commits into one changeset including: LOS map/service/tests, global metric/imperial unit system adoption, notification/BLE safety fixes, app-wide localization backfill/mojibake cleanup, and responsive UI title/overflow hardening. * l10n: revert unrelated locale churn for LOS feature * feat: keep LOS with app-wide unit settings * fix: resolve post-merge app bar/import analyzer errors * style: format screen files for CI
This commit is contained in:
@@ -322,6 +322,10 @@ class AppLocalizationsIt extends AppLocalizations {
|
||||
String get settings_aboutDescription =>
|
||||
'Un client Flutter open-source per i dispositivi di rete mesh LoRa Core di MeshCore.';
|
||||
|
||||
@override
|
||||
String get settings_aboutOpenMeteoAttribution =>
|
||||
'Dati di elevazione LOS: Open-Meteo (CC BY 4.0)';
|
||||
|
||||
@override
|
||||
String get settings_infoName => 'Nome';
|
||||
|
||||
@@ -619,6 +623,15 @@ class AppLocalizationsIt extends AppLocalizations {
|
||||
@override
|
||||
String get appSettings_offlineMapCache => 'Cache Mappa Offline';
|
||||
|
||||
@override
|
||||
String get appSettings_unitsTitle => 'Unità';
|
||||
|
||||
@override
|
||||
String get appSettings_unitsMetric => 'Metrico (m/km)';
|
||||
|
||||
@override
|
||||
String get appSettings_unitsImperial => 'Imperiale (ft / mi)';
|
||||
|
||||
@override
|
||||
String get appSettings_noAreaSelected => 'Nessun\'area selezionata';
|
||||
|
||||
@@ -1239,6 +1252,12 @@ class AppLocalizationsIt extends AppLocalizations {
|
||||
@override
|
||||
String get map_title => 'Mappa Nodi';
|
||||
|
||||
@override
|
||||
String get map_lineOfSight => 'Linea di vista';
|
||||
|
||||
@override
|
||||
String get map_losScreenTitle => 'Linea di vista';
|
||||
|
||||
@override
|
||||
String get map_noNodesWithLocation => 'Nessun nodo con dati di posizione';
|
||||
|
||||
@@ -2723,6 +2742,117 @@ class AppLocalizationsIt extends AppLocalizations {
|
||||
@override
|
||||
String get pathTrace_clearTooltip => 'Pulisci percorso';
|
||||
|
||||
@override
|
||||
String get losSelectStartEnd =>
|
||||
'Seleziona i nodi iniziali e finali per la LOS.';
|
||||
|
||||
@override
|
||||
String losRunFailed(String error) {
|
||||
return 'Controllo della linea di vista fallito: $error';
|
||||
}
|
||||
|
||||
@override
|
||||
String get losClearAllPoints => 'Cancella tutti i punti';
|
||||
|
||||
@override
|
||||
String get losRunToViewElevationProfile =>
|
||||
'Eseguire LOS per visualizzare il profilo altimetrico';
|
||||
|
||||
@override
|
||||
String get losMenuTitle => 'Menù LOS';
|
||||
|
||||
@override
|
||||
String get losMenuSubtitle =>
|
||||
'Tocca i nodi o premi a lungo la mappa per punti personalizzati';
|
||||
|
||||
@override
|
||||
String get losShowDisplayNodes => 'Mostra i nodi di visualizzazione';
|
||||
|
||||
@override
|
||||
String get losCustomPoints => 'Punti personalizzati';
|
||||
|
||||
@override
|
||||
String losCustomPointLabel(int index) {
|
||||
return 'Personalizzato $index';
|
||||
}
|
||||
|
||||
@override
|
||||
String get losPointA => 'Punto A';
|
||||
|
||||
@override
|
||||
String get losPointB => 'Punto B';
|
||||
|
||||
@override
|
||||
String losAntennaA(String value, String unit) {
|
||||
return 'Antenna A: $value $unit';
|
||||
}
|
||||
|
||||
@override
|
||||
String losAntennaB(String value, String unit) {
|
||||
return 'Antenna B: $value $unit';
|
||||
}
|
||||
|
||||
@override
|
||||
String get losRun => 'Esegui LOS';
|
||||
|
||||
@override
|
||||
String get losNoElevationData => 'Nessun dato di elevazione';
|
||||
|
||||
@override
|
||||
String losProfileClear(
|
||||
String distance,
|
||||
String distanceUnit,
|
||||
String clearance,
|
||||
String heightUnit,
|
||||
) {
|
||||
return '$distance $distanceUnit, libera LOS, distanza minima $clearance $heightUnit';
|
||||
}
|
||||
|
||||
@override
|
||||
String losProfileBlocked(
|
||||
String distance,
|
||||
String distanceUnit,
|
||||
String obstruction,
|
||||
String heightUnit,
|
||||
) {
|
||||
return '$distance $distanceUnit, bloccato da $obstruction $heightUnit';
|
||||
}
|
||||
|
||||
@override
|
||||
String get losStatusChecking => 'LOS: controllo...';
|
||||
|
||||
@override
|
||||
String get losStatusNoData => 'LOS: nessun dato';
|
||||
|
||||
@override
|
||||
String losStatusSummary(int clear, int total, int blocked, int unknown) {
|
||||
return 'LOS: $clear/$total libera, $blocked bloccato, $unknown sconosciuto';
|
||||
}
|
||||
|
||||
@override
|
||||
String get losErrorElevationUnavailable =>
|
||||
'Dati di elevazione non disponibili per uno o più campioni.';
|
||||
|
||||
@override
|
||||
String get losErrorInvalidInput =>
|
||||
'Dati punti/elevazione non validi per il calcolo della LOS.';
|
||||
|
||||
@override
|
||||
String get losRenameCustomPoint => 'Rinomina punto personalizzato';
|
||||
|
||||
@override
|
||||
String get losPointName => 'Nome del punto';
|
||||
|
||||
@override
|
||||
String get losShowPanelTooltip => 'Mostra il pannello LOS';
|
||||
|
||||
@override
|
||||
String get losHidePanelTooltip => 'Nascondi il pannello LOS';
|
||||
|
||||
@override
|
||||
String get losElevationAttribution =>
|
||||
'Dati di elevazione: Open-Meteo (CC BY 4.0)';
|
||||
|
||||
@override
|
||||
String get contacts_pathTrace => 'Traccia Percorso';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user