mirror of
https://github.com/dz0ny/meshcore-sar.git
synced 2026-08-11 16:30:28 +00:00
Refactor SAR marker handling and add template management
- Updated CompassSarList and DetailedCompassDialog to use marker.displayName instead of marker.type.displayName. - Enhanced DrawingLayer and DrawingMarkersLayer to support simple mode for drawing visibility and interaction. - Added toggle switches in DrawingToolbar for showing/hiding received drawings and SAR markers. - Modified MapMarkers to utilize custom emojis and display names for markers. - Introduced RecipientSelectorSheet for selecting message recipients with search functionality. - Refactored SarUpdateSheet to use SAR templates instead of marker types, allowing for emoji and name customization. - Created SarTemplateEditDialog for adding and editing SAR templates with color selection and preview.
This commit is contained in:
@@ -207,6 +207,16 @@
|
||||
"description": "Beschreibung für die Einstellung der RX/TX-Indikatoren"
|
||||
},
|
||||
|
||||
"simpleMode": "Einfacher Modus",
|
||||
"@simpleMode": {
|
||||
"description": "Einstellung zum Aktivieren des einfachen Modus"
|
||||
},
|
||||
|
||||
"simpleModeDescription": "Nicht wesentliche Informationen in Nachrichten und Kontakten ausblenden",
|
||||
"@simpleModeDescription": {
|
||||
"description": "Beschreibung für die Einstellung des einfachen Modus"
|
||||
},
|
||||
|
||||
"language": "Sprache",
|
||||
"@language": {
|
||||
"description": "Beschriftung der Spracheinstellung"
|
||||
@@ -514,7 +524,7 @@
|
||||
"description": "Beschriftung der Aktualisieren-Schaltfläche"
|
||||
},
|
||||
|
||||
"sendDirectMessage": "Direktnachricht senden",
|
||||
"sendDirectMessage": "Senden",
|
||||
"@sendDirectMessage": {
|
||||
"description": "Aktion zum Senden einer Direktnachricht an Kontakt"
|
||||
},
|
||||
@@ -634,6 +644,36 @@
|
||||
"description": "Aktion zum Löschen aller lokalen Zeichnungen"
|
||||
},
|
||||
|
||||
"showReceivedDrawings": "Empfangene Zeichnungen anzeigen",
|
||||
"@showReceivedDrawings": {
|
||||
"description": "Umschalter zum Ein-/Ausblenden empfangener Zeichnungen von anderen Teammitgliedern"
|
||||
},
|
||||
|
||||
"showingAllDrawings": "Alle Zeichnungen werden angezeigt",
|
||||
"@showingAllDrawings": {
|
||||
"description": "Untertitel, wenn empfangene Zeichnungen sichtbar sind"
|
||||
},
|
||||
|
||||
"showingOnlyYourDrawings": "Nur Ihre Zeichnungen werden angezeigt",
|
||||
"@showingOnlyYourDrawings": {
|
||||
"description": "Untertitel, wenn empfangene Zeichnungen ausgeblendet sind"
|
||||
},
|
||||
|
||||
"showSarMarkers": "SAR-Markierungen anzeigen",
|
||||
"@showSarMarkers": {
|
||||
"description": "Umschalter zum Ein-/Ausblenden von SAR-Markierungen auf der Karte"
|
||||
},
|
||||
|
||||
"showingSarMarkers": "SAR-Markierungen werden angezeigt",
|
||||
"@showingSarMarkers": {
|
||||
"description": "Untertitel, wenn SAR-Markierungen sichtbar sind"
|
||||
},
|
||||
|
||||
"hidingSarMarkers": "SAR-Markierungen ausgeblendet",
|
||||
"@hidingSarMarkers": {
|
||||
"description": "Untertitel, wenn SAR-Markierungen ausgeblendet sind"
|
||||
},
|
||||
|
||||
"clearAll": "Alle löschen",
|
||||
"@clearAll": {
|
||||
"description": "Beschriftung der Alle-löschen-Schaltfläche"
|
||||
@@ -762,6 +802,11 @@
|
||||
"description": "Beschriftung für Standortbereich"
|
||||
},
|
||||
|
||||
"myLocation": "Mein Standort",
|
||||
"@myLocation": {
|
||||
"description": "Schaltflächenbeschriftung zum Einfügen der aktuellen GPS-Position"
|
||||
},
|
||||
|
||||
"fromMap": "Von Karte",
|
||||
"@fromMap": {
|
||||
"description": "Badge, das anzeigt, dass der Standort vom Kartentippen stammt"
|
||||
@@ -1125,6 +1170,21 @@
|
||||
"description": "Beschriftung der GPS-Genauigkeit"
|
||||
},
|
||||
|
||||
"distance": "Entfernung",
|
||||
"@distance": {
|
||||
"description": "Entfernungsbeschriftung im Kompass"
|
||||
},
|
||||
|
||||
"bearing": "Peilung",
|
||||
"@bearing": {
|
||||
"description": "Peilungsbeschriftung im Kompass"
|
||||
},
|
||||
|
||||
"direction": "Richtung",
|
||||
"@direction": {
|
||||
"description": "Richtungsbeschriftung im Kompass"
|
||||
},
|
||||
|
||||
"filterMarkers": "Markierungen filtern",
|
||||
"@filterMarkers": {
|
||||
"description": "Titel für Markierungen-filtern-Dialog"
|
||||
@@ -1538,6 +1598,21 @@
|
||||
"description": "Name der ESRI-Satellitenbildebene"
|
||||
},
|
||||
|
||||
"googleHybrid": "Google Hybrid",
|
||||
"@googleHybrid": {
|
||||
"description": "Name der Google Hybrid-Ebene (Satellit + Beschriftungen)"
|
||||
},
|
||||
|
||||
"googleRoadmap": "Google Straßenkarte",
|
||||
"@googleRoadmap": {
|
||||
"description": "Name der Google Straßenkarten-Ebene"
|
||||
},
|
||||
|
||||
"googleTerrain": "Google Gelände",
|
||||
"@googleTerrain": {
|
||||
"description": "Name der Google Gelände-Ebene (topografisch)"
|
||||
},
|
||||
|
||||
"downloadVisibleArea": "Sichtbaren Bereich herunterladen",
|
||||
"@downloadVisibleArea": {
|
||||
"description": "Tooltip für Schaltfläche zum Herunterladen des sichtbaren Bereichs"
|
||||
@@ -1673,6 +1748,11 @@
|
||||
"description": "Infonachricht, wenn Nachricht gelöscht wird"
|
||||
},
|
||||
|
||||
"copyText": "Text kopieren",
|
||||
"textCopiedToClipboard": "Text in Zwischenablage kopiert",
|
||||
"deleteMessage": "Nachricht löschen",
|
||||
"deleteMessageConfirmation": "Möchten Sie diese Nachricht wirklich löschen?",
|
||||
|
||||
"refreshedContacts": "Kontakte aktualisiert",
|
||||
"@refreshedContacts": {
|
||||
"description": "Erfolgsmeldung, wenn Kontakte aktualisiert werden"
|
||||
@@ -1901,6 +1981,111 @@
|
||||
"description": "Fehlermeldung, wenn MBTiles-Löschung fehlschlägt"
|
||||
},
|
||||
|
||||
"importExportCachedTiles": "Import/Export gecachter Kacheln",
|
||||
"@importExportCachedTiles": {
|
||||
"description": "Titel für Import/Export-Bereich"
|
||||
},
|
||||
|
||||
"importExportDescription": "Sichern, teilen und wiederherstellen Sie heruntergeladene Kartenkacheln zwischen Geräten",
|
||||
"@importExportDescription": {
|
||||
"description": "Beschreibung der Import/Export-Funktionalität"
|
||||
},
|
||||
|
||||
"exportTilesToFile": "Kacheln in Datei exportieren",
|
||||
"@exportTilesToFile": {
|
||||
"description": "Schaltfläche zum Exportieren von Kacheln"
|
||||
},
|
||||
|
||||
"importTilesFromFile": "Kacheln aus Datei importieren",
|
||||
"@importTilesFromFile": {
|
||||
"description": "Schaltfläche zum Importieren von Kacheln"
|
||||
},
|
||||
|
||||
"selectExportLocation": "Exportspeicherort wählen",
|
||||
"@selectExportLocation": {
|
||||
"description": "Titel für Export-Dateiauswahl"
|
||||
},
|
||||
|
||||
"selectImportFile": "Kachel-Archiv auswählen",
|
||||
"@selectImportFile": {
|
||||
"description": "Titel für Import-Dateiauswahl"
|
||||
},
|
||||
|
||||
"exportingTiles": "Exportiere Kacheln...",
|
||||
"@exportingTiles": {
|
||||
"description": "Statusmeldung während des Exports"
|
||||
},
|
||||
|
||||
"importingTiles": "Importiere Kacheln...",
|
||||
"@importingTiles": {
|
||||
"description": "Statusmeldung während des Imports"
|
||||
},
|
||||
|
||||
"exportSuccess": "{count} Kacheln erfolgreich exportiert",
|
||||
"@exportSuccess": {
|
||||
"description": "Erfolgsmeldung nach Export",
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"importSuccess": "{count} Speicher erfolgreich importiert",
|
||||
"@importSuccess": {
|
||||
"description": "Erfolgsmeldung nach Import",
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"exportFailed": "Export fehlgeschlagen: {error}",
|
||||
"@exportFailed": {
|
||||
"description": "Fehlermeldung bei Export-Fehler",
|
||||
"placeholders": {
|
||||
"error": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"importFailed": "Import fehlgeschlagen: {error}",
|
||||
"@importFailed": {
|
||||
"description": "Fehlermeldung bei Import-Fehler",
|
||||
"placeholders": {
|
||||
"error": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"exportNote": "Erstellt eine komprimierte Archivdatei (.fmtc), die auf anderen Geräten geteilt und importiert werden kann.",
|
||||
"@exportNote": {
|
||||
"description": "Hinweis zur Export-Funktionalität"
|
||||
},
|
||||
|
||||
"importNote": "Importiert Kartenkacheln aus einer zuvor exportierten Archivdatei. Kacheln werden mit dem vorhandenen Cache zusammengeführt.",
|
||||
"@importNote": {
|
||||
"description": "Hinweis zur Import-Funktionalität"
|
||||
},
|
||||
|
||||
"noTilesToExport": "Keine Kacheln zum Exportieren verfügbar",
|
||||
"@noTilesToExport": {
|
||||
"description": "Meldung wenn Cache leer ist"
|
||||
},
|
||||
|
||||
"archiveContainsStores": "Archiv enthält {count} Speicher",
|
||||
"@archiveContainsStores": {
|
||||
"description": "Information über Archivinhalte",
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"vectorTiles": "Vektor-Tiles",
|
||||
"@vectorTiles": {
|
||||
"description": "Beschriftung für Vektor-Tile-Typ"
|
||||
@@ -2139,5 +2324,63 @@
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"sarTemplates": "SAR Templates",
|
||||
"manageSarTemplates": "Manage cursor on target templates",
|
||||
"addTemplate": "Add Template",
|
||||
"editTemplate": "Edit Template",
|
||||
"deleteTemplate": "Delete Template",
|
||||
"templateName": "Template Name",
|
||||
"templateNameHint": "e.g. Found Person",
|
||||
"templateEmoji": "Emoji",
|
||||
"emojiRequired": "Emoji ist erforderlich",
|
||||
"nameRequired": "Name ist erforderlich",
|
||||
"templateDescription": "Description (Optional)",
|
||||
"templateDescriptionHint": "Add additional context...",
|
||||
"templateColor": "Color",
|
||||
"previewFormat": "Preview (SAR Message Format)",
|
||||
"importFromClipboard": "Import",
|
||||
"exportToClipboard": "Export",
|
||||
"deleteTemplateConfirmation": "Delete template '{name}'?",
|
||||
"templateAdded": "Template added",
|
||||
"templateUpdated": "Template updated",
|
||||
"templateDeleted": "Template deleted",
|
||||
"templatesImported": "{count, plural, =0{No templates imported} =1{Imported 1 template} other{Imported {count} templates}}",
|
||||
"templatesExported": "{count, plural, =1{Exported 1 template to clipboard} other{Exported {count} templates to clipboard}}",
|
||||
"importFailed": "Import failed: {error}",
|
||||
"exportFailed": "Export failed: {error}",
|
||||
"resetToDefaults": "Reset to Defaults",
|
||||
"resetToDefaultsConfirmation": "This will delete all custom templates and restore the 4 default templates. Continue?",
|
||||
"reset": "Reset",
|
||||
"resetComplete": "Templates reset to defaults",
|
||||
"noTemplates": "No templates available",
|
||||
"tapAddToCreate": "Tap + to create your first template",
|
||||
"ok": "OK",
|
||||
"delete": "Löschen",
|
||||
|
||||
"permissionsSection": "Berechtigungen",
|
||||
"locationPermission": "Standortberechtigung",
|
||||
"checking": "Überprüfen...",
|
||||
"locationPermissionGrantedAlways": "Erteilt (Immer)",
|
||||
"locationPermissionGrantedWhileInUse": "Erteilt (Während der Nutzung)",
|
||||
"locationPermissionDeniedTapToRequest": "Verweigert - Tippen zum Anfragen",
|
||||
"locationPermissionPermanentlyDeniedOpenSettings": "Dauerhaft verweigert - Einstellungen öffnen",
|
||||
"locationPermissionDialogContent": "Die Standortberechtigung wurde dauerhaft verweigert. Bitte aktivieren Sie sie in Ihren Geräteeinstellungen, um GPS-Tracking und Standortfreigabe zu nutzen.",
|
||||
"openSettings": "Einstellungen öffnen",
|
||||
"locationPermissionGranted": "Standortberechtigung erteilt!",
|
||||
"locationPermissionRequiredForGps": "Die Standortberechtigung ist erforderlich für GPS-Tracking und Standortfreigabe.",
|
||||
"locationPermissionAlreadyGranted": "Die Standortberechtigung wurde bereits erteilt.",
|
||||
"sarNavyBlue": "SAR Navy Blau",
|
||||
"sarNavyBlueDescription": "Professionell/Einsatzmodus",
|
||||
|
||||
"selectRecipient": "Empfänger auswählen",
|
||||
"broadcastToAllNearby": "An alle in der Nähe senden",
|
||||
"searchRecipients": "Empfänger suchen...",
|
||||
"noContactsFound": "Keine Kontakte gefunden",
|
||||
"noRoomsFound": "Keine Räume gefunden",
|
||||
"noContactsOrRoomsAvailable": "Keine Kontakte oder Räume verfügbar",
|
||||
"messagesWillBeSentToPublicChannel": "Nachrichten werden an öffentlichen Kanal gesendet",
|
||||
"newMessage": "Neue Nachricht",
|
||||
"channel": "Kanal"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user