]> gitweb.fperrin.net Git - GpsPrune.git/commitdiff
Version 20.3, April 2021
authoractivityworkshop <mail@activityworkshop.net>
Fri, 9 Apr 2021 19:27:57 +0000 (21:27 +0200)
committeractivityworkshop <mail@activityworkshop.net>
Fri, 9 Apr 2021 19:27:57 +0000 (21:27 +0200)
12 files changed:
src/tim/prune/App.java
src/tim/prune/GpsPrune.java
src/tim/prune/function/distance/DistanceFunction.java
src/tim/prune/function/srtm/TileFinder.java
src/tim/prune/gui/map/TileDownloader.java
src/tim/prune/lang/prune-texts_cy.properties
src/tim/prune/lang/prune-texts_cz.properties
src/tim/prune/lang/prune-texts_fr.properties
src/tim/prune/lang/prune-texts_pt.properties
src/tim/prune/lang/prune-texts_sv.properties
src/tim/prune/readme.txt
src/tim/prune/save/GpxExporter.java

index 94e10e0e2ed873e6bbf7558419de14e393c20f08..22fa4865b8ddb9ab5b7b3663a4ed2c4ce9c46587 100644 (file)
@@ -733,11 +733,11 @@ public class App
                                UndoLoad undo = new UndoLoad(_trackInfo, inLoadedTrack.getNumPoints(), photos);
                                undo.setNumPhotosAudios(_trackInfo.getPhotoList().getNumPhotos(), _trackInfo.getAudioList().getNumAudios());
                                _undoStack.add(undo);
-                               _lastSavePosition = _undoStack.size();
                                _trackInfo.getSelection().clearAll();
                                _track.load(inLoadedTrack);
                                if (inSourceInfo != null)
                                {
+                                       _lastSavePosition = _undoStack.size();
                                        // set source information
                                        inSourceInfo.populatePointObjects(_track, _track.getNumPoints());
                                        _trackInfo.getFileInfo().replaceSource(inSourceInfo);
@@ -752,11 +752,11 @@ public class App
                        UndoLoad undo = new UndoLoad(_trackInfo, inLoadedTrack.getNumPoints(), null);
                        undo.setNumPhotosAudios(_trackInfo.getPhotoList().getNumPhotos(), _trackInfo.getAudioList().getNumAudios());
                        _undoStack.add(undo);
-                       _lastSavePosition = _undoStack.size();
                        _trackInfo.getSelection().clearAll();
                        _track.load(inLoadedTrack);
                        if (inSourceInfo != null)
                        {
+                               _lastSavePosition = _undoStack.size();
                                inSourceInfo.populatePointObjects(_track, _track.getNumPoints());
                                _trackInfo.getFileInfo().addSource(inSourceInfo);
                        }
index 1b6872cf60401ca5e72a4182f270bb4e133d464c..8d80875b225520c864f01db25b15165f0763176e 100644 (file)
@@ -31,16 +31,16 @@ import tim.prune.gui.profile.ProfileChart;
 /**
  * GpsPrune is a tool to visualize, edit, convert and prune GPS data
  * Please see the included readme.txt or https://activityworkshop.net
- * This software is copyright activityworkshop.net 2006-2020 and made available through the Gnu GPL version 2.
+ * This software is copyright activityworkshop.net 2006-2021 and made available through the Gnu GPL version 2.
  * For license details please see the included license.txt.
  * GpsPrune is the main entry point to the application, including initialisation and launch
  */
 public class GpsPrune
 {
        /** Version number of application, used in about screen and for version check */
-       public static final String VERSION_NUMBER = "20.2";
+       public static final String VERSION_NUMBER = "20.3";
        /** Build number, just used for about screen */
-       public static final String BUILD_NUMBER = "384";
+       public static final String BUILD_NUMBER = "385";
        /** Static reference to App object */
        private static App APP = null;
 
index e0b7aed7354938616982ba8d933f6e531f37d651..f37332420e5b662f2d472d4e76e1132725826cb3 100644 (file)
@@ -77,8 +77,9 @@ public class DistanceFunction extends GenericFunction
                }
                _fromModel.init(pointList);
                _distModel.init(pointList);
-               _pointTable.getSelectionModel().setSelectionInterval(0, 0);
-               _distModel.recalculate(0);
+               final int pointIndex = getPointIndex(pointList, _app.getTrackInfo());
+               _pointTable.getSelectionModel().setSelectionInterval(pointIndex, pointIndex);
+               _distModel.recalculate(pointIndex);
                _dialog.setVisible(true);
        }
 
@@ -163,4 +164,25 @@ public class DistanceFunction extends GenericFunction
                }
                return pointList;
        }
+
+       /**
+        * Find the point to select from the given point list
+        * @param pointList list of points
+        * @param inTrackInfo current track info to get selected point (if any)
+        * @return index of point to be selected
+        */
+       private static int getPointIndex(ArrayList<DataPoint> pointList, TrackInfo inTrackInfo)
+       {
+               DataPoint currPoint = inTrackInfo.getCurrentPoint();
+               if (currPoint != null && currPoint.isWaypoint())
+               {
+                       // Currently selected point is a waypoint, so select this one for convenience
+                       for (int i=0; i<pointList.size(); i++) {
+                               if (pointList.get(i) == currPoint) {
+                                       return i;
+                               }
+                       }
+               }
+               return 0;
+       }
 }
index e2b01fa166dbd9b607f9e13890f0a12a7f5b7302..d237971eb05f38de1a2b8a7c7ae24f0ffa55e8fe 100644 (file)
@@ -15,7 +15,7 @@ public class TileFinder
        private byte[] _tileData = null;
 
        /** URL prefix for all tiles */
-       private static final String URL_PREFIX = "https://dds.cr.usgs.gov/srtm/version2_1/SRTM3/";
+       private static final String URL_PREFIX = "https://srtm.kurviger.de/SRTM3/";
        /** Directory names for each continent */
        private static final String[] CONTINENTS = {"", "Eurasia", "North_America", "Australia",
                "Islands", "South_America", "Africa"};
index 7ec6d91eb58db07faaa8c8a52421f5da5a8cf544..16466f3e8631b4051fca5415719972413df8ecb7 100644 (file)
@@ -63,16 +63,15 @@ public class TileDownloader implements Runnable
                if (inManager != null && inUrl != null)
                {
                        String url = inUrl.toString();
-                       // System.out.println("Trigger load: " + url);
-                       if (!BLOCKED_URLS.contains(url) && !LOADING_URLS.contains(url))
+                       if (BLOCKED_URLS.contains(url))
+                       {
+                               System.out.println("Already blocked: " + url);
+                       }
+                       else if (!LOADING_URLS.contains(url))
                        {
-                               // System.out.println("Not blocked: " + url);
                                LOADING_URLS.add(url);
                                new Thread(new TileDownloader(inManager, inUrl, inLayer, inX, inY, inZoom)).start();
                        }
-                       else {
-                               System.out.println("Already blocked: " + url);
-                       }
                }
        }
 
index 50ef3a20e82baca7c89da57e4b9b2baf99b11688..12a2b17fe2d324696e6d0d8c43c2a63c26122067 100644 (file)
@@ -12,11 +12,16 @@ menu.photo=Llun
 menu.photo.saveexif=Cadw Exif
 menu.audio=Awdio
 menu.view=Golygu
+menu.view.browser.google=Mapiau Google
+menu.view.browser.yahoo=Mapiau Yahoo
+menu.view.browser.bing=Mapiau Bing
 menu.settings=Dewisiadau
 menu.help=Cymorth
 # Popup menu for map
 menu.map.zoomin=Chwyddo i mewn
 menu.map.zoomout=Chwyddo allan
+menu.map.showmap=Dangoswch y map
+menu.map.showscalebar=Dangoswch y bar graddfa
 
 # Alt keys for menus
 altkey.menu.file=F
@@ -48,6 +53,8 @@ dialog.delimiter.comma=Coma ,
 dialog.delimiter.semicolon=Hannercolon ;
 dialog.gpsload.format=Fformat
 dialog.gpsload.save=Cadw ffeil
+dialog.saveoptions.title=Cadwch y ffeil
+dialog.save.table.field=Maes
 dialog.save.table.save=Cadw
 dialog.exportgpx.name=Enw
 dialog.exportgpx.encoding.system=System
@@ -92,6 +99,8 @@ fieldname.longitude=Hydred
 fieldname.coordinates=Cyfesurynnau
 fieldname.waypointname=Enw
 fieldname.distance=Pellter
+fieldname.speed=Cyflymder
+fieldname.description=Disgrifiad
 fieldname.comment=Sylw
 
 # How to combine conditions, such as filters
index 96956d9927deb5d18e4e1296c5c2f6762004d4c8..92afbf4f9a5e83494e6cb35d743984b4f8a86054 100644 (file)
@@ -1,5 +1,5 @@
 # Text entries for the GpsPrune application
-# Czech entries thanks to prot_d
+# Czech entries thanks to prot_d, jirislaby
 
 # Menu entries
 menu.file=Soubor
@@ -12,8 +12,6 @@ menu.track=Stopa
 menu.track.undo=Undo
 menu.track.clearundo=Vypr\u00e1zdnit pam\u011b\u0165 undo
 menu.track.markrectangle=Ozna\u010dit body v obd\u00e9ln\u00edku
-function.deletemarked=Smazat ozna\u010den\u00e9 body
-function.rearrangewaypoints=P\u0159euspo\u0159\u00e1dat z\u00e1jmov\u00e9 body
 menu.range=Rozmez\u00ed
 menu.range.all=Vybrat v\u0161e
 menu.range.none=Zru\u0161it v\u00fdb\u011br
@@ -39,7 +37,6 @@ menu.view.browser.yahoo=Mapy Yahoo
 menu.view.browser.bing=Mapy Bing
 menu.settings=Nastaven\u00ed
 menu.settings.onlinemode=Na\u010d\u00edtat mapy z internetu
-dialog.displaysettings.antialias=Pou\u017e\u00edt antialiasing
 menu.settings.autosave=P\u0159i ukon\u010den\u00ed automaticky ukl\u00e1dat
 menu.help=Pomoc
 # Popup menu for map
@@ -90,8 +87,10 @@ function.compress=Komprimovat stopu
 function.deleterange=Smazat rozmez\u00ed
 function.croptrack=O\u0159\u00edznout stopu
 function.interpolate=Interpolovat body
+function.deletebydate=Smazat body podle data
 function.addtimeoffset=P\u0159idat \u010dasov\u00fd posun
 function.addaltitudeoffset=P\u0159idat v\u00fd\u0161kov\u00fd posun
+function.rearrangewaypoints=P\u0159euspo\u0159\u00e1dat z\u00e1jmov\u00e9 body
 function.convertnamestotimes=P\u0159ev\u00e9st n\u00e1zvy v\u00fdzna\u010dn\u00fdch bod\u016f na \u010dasy
 function.deletefieldvalues=Smazat hodnoty pole
 function.findwaypoint=Hledat bod
@@ -103,6 +102,7 @@ function.estimatetime=Odhad \u010dasu
 function.learnestimationparams=Anal\u00fdza stopy pro odhad \u010dasu
 function.setmapbg=Nastavit pozad\u00ed
 function.setpaths=Nastavit cestu k program\u016fm
+function.selectsegment=Vybrat aktu\u00e1ln\u00ed \u010d\u00e1st
 function.splitsegments=Rozd\u011blit stopu na \u010d\u00e1sti
 function.sewsegments=Spojit \u010d\u00e1sti stopy
 function.lookupsrtm=Na\u010d\u00edst nadm. v\u00fd\u0161ku ze SRTM
@@ -136,6 +136,7 @@ function.saveconfig=Ulo\u017eit nastaven\u00ed
 function.diskcache=Ulo\u017eit mapy na disk
 function.managetilecache=Upravit cache map
 function.getweatherforecast=St\u00e1hnout p\u0159edpov\u011b\u010f po\u010das\u00ed
+function.setaltitudetolerance=Nastavit toleranci v\u00fd\u0161ky
 
 # Dialogs
 dialog.exit.confirm.title=Ukon\u010dit GpsPrune
@@ -358,7 +359,7 @@ dialog.gpsies.nonefound=Nenalezeny \u017e\u00e1dn\u00e9 stopy
 dialog.mapillary.nonefound=Nenalezeny \u017e\u00e1dn\u00e9 fotografie
 dialog.wikipedia.column.name=N\u00e1zev \u010dl\u00e1nku
 dialog.wikipedia.column.distance=Vzd\u00e1lenost
-dialog.wikipedia.nonefound=Nenalezeny \u017e\u00e1dn\u00e9 body
+dialog.wikipedia.nonefound=Nebyly nalezeny \u017e\u00e1dn\u00e9 z\u00e1znamy na wikipedii
 dialog.wikipedia.gallery=Galerie
 dialog.osmpois.column.name=N\u00e1zev
 dialog.osmpois.column.type=Typ
@@ -396,6 +397,7 @@ dialog.correlate.timestamp.end=Konec
 dialog.correlate.audioselect.intro=Vyberte jednu z t\u011bchto slad\u011bn\u00fdch nahr\u00e1vek pro ur\u010den\u00ed \u010dasov\u00e9ho posunu
 dialog.correlate.select.audioname=N\u00e1zev audionahr\u00e1vky
 dialog.correlate.select.audiolater=Audio pozd\u011bj\u0161\u00ed
+dialog.rearrangewaypoints.desc=Zvolte c\u00edl a po\u0159ad\u00ed \u0159azen\u00ed bod\u016f
 dialog.rearrangephotos.desc=Vyberte um\u00edst\u011bn\u00ed a uspo\u0159\u00e1d\u00e1n\u00ed bod\u016f fotografi\u00ed
 dialog.rearrange.tostart=P\u0159en\u00e9st na za\u010d\u00e1tek
 dialog.rearrange.toend=P\u0159en\u00e9st na konec
@@ -505,6 +507,7 @@ dialog.diskcache.deleted=Smaz\u00e1no %d soubor\u016f z cache
 dialog.deletefieldvalues.intro=Vyberte pole, kter\u00e9 se m\u00e1 z aktu\u00e1ln\u00edho rozmez\u00ed odstranit
 dialog.deletefieldvalues.nofields=V tomto rozmez\u00ed nelze smazat \u017e\u00e1dn\u00e9 pole
 dialog.displaysettings.linewidth=Zvolte tlou\u0161\u0165ku \u010d\u00e1ry, kterou se nakresl\u00ed stopa (1-4)
+dialog.displaysettings.antialias=Pou\u017e\u00edt antialiasing
 dialog.downloadosm.desc=Potvr\u010fte, \u017ee se maj\u00ed k dan\u00e9 oblasti st\u00e1hnout data OSM:
 dialog.displaysettings.wpicon.plectrum=Trs\u00e1tko
 dialog.displaysettings.wpicon.ring=Krou\u017Eek
@@ -732,7 +735,7 @@ units.degreesfahrenheit.short=\u00b0F
 logic.and=a
 logic.or=nebo
 
-# External urls
+# External urls and services
 url.googlemaps=maps.google.cz
 wikipedia.lang=cs
 openweathermap.lang=en
index 42941926519eccb5ede2fbcc8e0087ce584c29c2..9b3efecaf1750b17715a8834bc4c239276976b8c 100644 (file)
@@ -98,9 +98,9 @@ function.rearrangewaypoints=R\u00e9arranger les points de navigation
 function.convertnamestotimes=Convertir les noms de points de navigation en horodatages
 function.deletefieldvalues=Effacer les valeurs du champ
 function.findwaypoint=Trouver un waypoint
-function.pastecoordinates=Entrer coordonn\u00e9es d'un point
-function.pastecoordinatelist=Entrer liste de coordonn\u00e9es
-function.enterpluscode=Entrer code plus
+function.pastecoordinates=Saisir coordonn\u00e9es d'un point
+function.pastecoordinatelist=Saisir liste de coordonn\u00e9es
+function.enterpluscode=Saisir code plus
 function.charts=Graphiques
 function.show3d=Montrer en 3D
 function.distances=Distances
@@ -214,8 +214,10 @@ dialog.gpsbabel.filter.simplify.maxpoints=Nombre de points <
 dialog.gpsbabel.filter.simplify.maxerror=ou erreur <
 dialog.gpsbabel.filter.simplify.crosstrack=d\u00e9viation
 dialog.gpsbabel.filter.simplify.length=changement de longeur
+dialog.gpsbabel.filter.simplify.relative=par rapport \u00e0 la pr\u00e9cision
 dialog.gpsbabel.filter.distance.distance=Si la distance <
 dialog.gpsbabel.filter.distance.time=et difference de temps <
+dialog.gpsbabel.filter.interpolate.intro=Ajouter des points suppl\u00e9mentaires
 dialog.gpsbabel.filter.interpolate.distance=Si la distance >
 dialog.gpsbabel.filter.interpolate.time=ou difference de temps >
 dialog.saveoptions.title=Enregistrer le fichier
@@ -265,9 +267,10 @@ dialog.baseimage.zoom=Zoom
 dialog.baseimage.incomplete=Image incompl\u00e8te
 dialog.baseimage.tiles=Dalles
 dialog.baseimage.size=Taille de l'image
+dialog.exportimage.noimagepossible=Images de la carte doivent \u00eatre sauvegard\u00e9es dans un cache.
 dialog.exportimage.drawtrack=Dessiner la trace sur la carte
 dialog.exportimage.drawtrackpoints=Dessiner les points de trace
-dialog.exportimage.textscalepercent=Facteur d'echelle du texte (%)
+dialog.exportimage.textscalepercent=Facteur d'\u00e9chelle du texte (%)
 dialog.pointtype.desc=Sauvegarder ces types de points:
 dialog.pointtype.track=Points de la trace
 dialog.pointtype.waypoint=Waypoints
@@ -426,9 +429,10 @@ dialog.compress.summarylabel=Points \u00e0 supprimer
 dialog.compress.confirm=%d point(s) marqu\u00e9(s).\nSupprimer les points?
 dialog.compress.confirmnone=Pas de points marqu\u00e9s
 dialog.deletemarked.nonefound=Pas de donn\u00e9es \u00e0 effacer
-dialog.pastecoordinates.desc=Entrez ou collez les coordonn\u00e9es ici
+dialog.pastecoordinates.desc=Saisissez ou collez les coordonn\u00e9es ici
 dialog.pastecoordinates.coords=Coordonn\u00e9es
 dialog.pastecoordinates.nothingfound=V\u00e9rifiez les coordonn\u00e9es et essayez \u00e0 nouveau
+dialog.pastecoordinatelist.desc=Saisissez les coordonn\u00e9es des nouveaux points avec un point par ligne
 dialog.pluscode.desc=Entrez ou collez le code ici
 dialog.pluscode.code=Code Plus
 dialog.pluscode.nothingfound=V\u00e9rifiez le code et essayez \u00e0 nouveau
@@ -492,6 +496,7 @@ dialog.colourchooser.title=Choisissez la couleur
 dialog.colourchooser.red=Rouge
 dialog.colourchooser.green=Vert
 dialog.colourchooser.blue=Bleu
+dialog.colourer.intro=Un coloriste peut s\u00e9lectionner les couleurs pour les points de trace
 dialog.colourer.type=Crit\u00e8re de coloriste
 dialog.colourer.type.none=Aucun
 dialog.colourer.type.byfile=Selon fichier
@@ -530,9 +535,17 @@ dialog.deletefieldvalues.intro=Choisir le champ \u00e0 effacer pour l'\u00e9tend
 dialog.deletefieldvalues.nofields=L'\u00e9tendue actuelle n'a pas de champs \u00e0 effacer
 dialog.displaysettings.linewidth=L'\u00e9paisseur des lignes des traces (1-4)
 dialog.displaysettings.antialias=Anticr\u00e9nelage
+dialog.displaysettings.waypointicons=Ic\u00f4nes des waypoints
+dialog.displaysettings.wpicon.default=D\u00e9faut
+dialog.displaysettings.wpicon.ringpt=Disque
+dialog.displaysettings.wpicon.plectrum=Plectre
+dialog.displaysettings.wpicon.ring=Anneau
+dialog.displaysettings.wpicon.pin=Clouer
 dialog.displaysettings.size.small=Petit
 dialog.displaysettings.size.medium=Moyen
 dialog.displaysettings.size.large=Grand
+dialog.displaysettings.windowstyle=Style de fen\u00eatre (apr\u00e8s red\u00e9marrage)
+dialog.displaysettings.windowstyle.default=D\u00e9faut
 dialog.downloadosm.desc=Confirmer le t\u00e9l\u00e9chargement des donn\u00e9es OSM brutes pour la zone indiqu\u00e9e :
 dialog.searchwikipedianames.search=Chercher :
 dialog.weather.location=Location
@@ -558,16 +571,28 @@ dialog.weather.temp=Temp
 dialog.weather.humidity=Humidit\u00e9
 dialog.weather.creditnotice=Ces donn\u00e9es sont fournies par openweathermap.org. Consultez la page pour plus de d\u00e9tails.
 dialog.deletebydate.onlyonedate=Tous les points sont \u00e0 la m\u00eame date.
+dialog.deletebydate.intro=Pour chaque date, vous pouvez choisir de conserver ou de supprimer les points
 dialog.deletebydate.nodate=Sans horodatage
 dialog.deletebydate.column.keep=Garder
 dialog.deletebydate.column.delete=Supprimer
 dialog.setaltitudetolerance.text.metres=Limite (m\u00e8tres) pour les petites diff\u00e9rences d'altitude
 dialog.setaltitudetolerance.text.feet=Limite (pieds) pour les petites diff\u00e9rences d'altitude
+dialog.settimezone.intro=Ce fuseau horaire sera utilis\u00e9 pour afficher les horodatages des points
+dialog.settimezone.system=Utiliser fuseau du syst\u00e8me
+dialog.settimezone.custom=Utiliser le fuseau suivant:
+dialog.settimezone.list.toomany=Beaucoup trop de fuseaux
+dialog.settimezone.selectedzone=Fuseau horaire s\u00e9lectionn\u00e9
+dialog.settimezone.offsetfromutc=D\u00e9calage avec UTC
 dialog.autoplay.duration=Dur\u00e9e (sec)
 dialog.autoplay.usetimestamps=Utiliser information de temps
 dialog.autoplay.rewind=Retour au d\u00e9but
 dialog.autoplay.pause=Pause
 dialog.autoplay.play=Jouer
+dialog.markers.halves=Points \u00e0 mi-chemin
+dialog.markers.half.distance=Demi-distance
+dialog.markers.half.climb=Demi-mont\u00e9e
+dialog.markers.half.descent=Demi-descente
+dialog.projectpoint.desc=Saisissez la direction et la distance de la projection
 dialog.projectpoint.bearing=Azimut (degr\u00e8s du nord)
 
 # 3d window
@@ -587,6 +612,8 @@ confirm.addtimeoffset=D\u00e9calage ajout\u00e9
 confirm.addaltitudeoffset=D\u00e9calage d'altitude ajout\u00e9
 confirm.rearrangewaypoints=Waypoints r\u00e9arrang\u00e9s
 confirm.rearrangephotos=Photos r\u00e9arrang\u00e9es
+confirm.splitsegments=%d s\u00e9parations de segments ont \u00e9t\u00e9 effectu\u00e9es
+confirm.sewsegments=%d fusions de segments ont \u00e9t\u00e9 effectu\u00e9es
 confirm.cutandmove=S\u00e9lection d\u00e9plac\u00e9e
 confirm.pointsadded=%d points ajout\u00e9s
 confirm.convertnamestotimes=Noms de waypoints convertis
@@ -614,8 +641,9 @@ confirm.correlateaudios.multi=fichiers audio ont \u00e9t\u00e9 corr\u00e9l\u00e9
 
 # Tips
 tip.title=Astuce
-tip.useamapcache=By setting up a disk cache (Pr\u00e9f\u00e9rences -> Enregistrer les cartes sur le disque)\nyou can speed up the display and reduce network traffic.
-tip.learntimeparams=The results will be more accurate if you use\nTrace -> Apprentissage de l'estimation\non your recorded tracks.
+tip.useamapcache=Si vous configurez un cache (Pr\u00e9f\u00e9rences -> Enregistrer les cartes sur le disque)\nl'affichage sera plus rapide et les t\u00e9l\u00e9chargements seront r\u00e9duits.
+tip.learntimeparams=Les r\u00e9sultats seront plus pr\u00e9cis si GpsPrune peut\napprender la vitesse de vos traces\n(Trace -> Apprentissage de l'estimation).
+tip.usesrtmfor3d=Cette trace n'a pas d'altitudes.\nEn utilisant le SRTM, il est possible d'obtenir\ndes altitudes approximatives.
 tip.manuallycorrelateone=En corr\u00e9lant manuellement au moins une photo, le d\u00e9calage de temps peut \u00eatre calcul\u00e9 pour vous.
 
 # Buttons
@@ -858,3 +886,5 @@ error.cache.notthere=Le dossier du cache n'a pas \u00e9t\u00e9 trouv\u00e9
 error.cache.empty=Le dossier du cache est vide
 error.cache.cannotdelete=Effacement des dalles impossible
 error.tracksplit.nosplit=Impossible de s\u00e9parer les segments
+error.downloadsrtm.nocache=Les fichiers ne peuvent pas \u00eatre sauvegard\u00e9s.\nV\u00e9rifiez le cache.
+error.sewsegments.nothingdone=Aucune fusion n'a \u00e9t\u00e9 possible.\nIl y a %d segments dans la trace.
index 55f60fa11d86d3ea1368d5d193d43765bfafb7cb..82fc0872e976f5d22b8bb9eec4f5ab1330ad92ef 100644 (file)
@@ -358,6 +358,8 @@ dialog.gpsies.description=Descri\u00e7\u00e3o
 dialog.gpsies.nodescription=Sem descri\u00e7\u00e3o
 dialog.gpsies.nonefound=Nenhuma rota encontrada
 dialog.mapillary.nonefound=Nenhuma foto encontrada
+dialog.osmpois.column.name=Nome
+dialog.osmpois.column.type=Tipo
 dialog.wikipedia.column.name=Nome do artigo
 dialog.wikipedia.column.distance=Dist\u00e2ncia
 dialog.wikipedia.nonefound=Nenhum artigo encontrado
@@ -418,6 +420,7 @@ dialog.deletemarked.nonefound=Nenhum dado dos pontos pode ser removido
 dialog.pastecoordinates.desc=Insira ou cole as coordenadas aqui
 dialog.pastecoordinates.coords=Coordenadas
 dialog.pastecoordinates.nothingfound=Por favor, verifique as coordenadas novamente
+dialog.pluscode.code=C\u00f3digo
 dialog.help.help=Por favor, veja\n https://gpsprune.activityworkshop.net/\npara mais informa\u00e7\u00f5es e guia do usu\u00e1rio.
 dialog.about.version=Vers\u00e3o
 dialog.about.build=Compila\u00e7\u00e3o
@@ -534,6 +537,7 @@ dialog.autoplay.usetimestamps=Usar data-hora
 dialog.autoplay.rewind=Rebobinar
 dialog.autoplay.pause=Suspender
 dialog.autoplay.play=Tocar
+dialog.projectpoint.bearing=Azimute (graus de N)
 
 # 3d window
 dialog.3d.title=Vista 3D do GpsPrune
@@ -682,6 +686,7 @@ map.overzoom=Nenhum mapa dispon\u00edvel neste n\u00edvel de amplia\u00e7\u00e3o
 # Field names
 fieldname.latitude=Latitude
 fieldname.longitude=Longitude
+fieldname.coordinates=Coordenadas
 fieldname.altitude=Altura
 fieldname.timestamp=Tempo
 fieldname.time=Tempo
@@ -696,6 +701,7 @@ fieldname.duration=Dura\u00e7\u00e3o
 fieldname.speed=Velocidade
 fieldname.verticalspeed=Velocidade vertical
 fieldname.description=Descri\u00e7\u00e3o
+fieldname.comment=Coment\u00e1rio
 fieldname.mediafilename=Arquivo
 
 # Measurement units
index b2a1bfeb4649c7caeb373218056c8d09bb911bf2..6192c5ce5dbefb2fc359bfea668758a591cebb21 100644 (file)
@@ -20,7 +20,7 @@ menu.range.end=S\u00e4tt till slutet av intervall
 menu.range.average=Skapa medelv\u00e4rdespunkt
 menu.range.reverse=V\u00e4nd intervall
 menu.range.mergetracksegments=Sl\u00e5 ihop sp\u00e5rsegment
-menu.range.cutandmove=Klipp och flytta urval
+menu.range.cutandmove=Klipp och flytta intervall
 menu.point=Punkt
 menu.point.editpoint=Redigera punkt
 menu.point.deletepoint=Radera punkt
@@ -113,7 +113,7 @@ function.setmapbg=V\u00e4lj bakgrundskarta
 function.setpaths=V\u00e4lj s\u00f6kv\u00e4gar f\u00f6r program
 function.selectsegment=Markera aktuellt segment
 function.splitsegments=Dela upp sp\u00e5ret i segment
-function.sewsegments=Sy ihop sp\u00e5r-segment
+function.sewsegments=Sy ihop sp\u00e5rsegment
 function.createmarkerwaypoints=Skapa markerings-waypoints
 function.lookupsrtm=H\u00e4mta h\u00f6jddata fr\u00e5n SRTM
 function.getwikipedia=H\u00e4mta n\u00e4rliggande Wikipedia-artiklar
@@ -172,6 +172,9 @@ dialog.delimiter.tab=Tabb
 dialog.delimiter.space=Mellanslag
 dialog.delimiter.semicolon=Semikolon ;
 dialog.delimiter.other=Annat
+dialog.openoptions.deliminfo.records=rader, med
+dialog.openoptions.deliminfo.norecords=Inga rader
+dialog.openoptions.deliminfo.fields=f\u00e4lt
 dialog.openoptions.altitudeunits=H\u00f6jdenhet
 dialog.openoptions.speedunits=Hastighetsenheter
 dialog.openoptions.vertspeedunits=Enheter f\u00f6r vertikal hastighet
@@ -424,6 +427,7 @@ dialog.pastecoordinates.nothingfound=V\u00e4nligen kontrollera koordinaterna och
 dialog.pastecoordinatelist.desc=Fyll i koordinaterna f\u00f6r dom nya punkterna, en punkt per rad
 dialog.pluscode.desc=Fyll i pluss-koden (Open Location Code) h\u00e4r
 dialog.pluscode.code=Pluss-kod
+dialog.pluscode.nothingfound=Kontrollera koden och f\u00f6rs\u00f6k igen.
 dialog.help.help=L\u00e4s\n https://gpsprune.activityworkshop.net/\nf\u00f6r mer information och tips,\ninklusive en PDF-anv\u00e4ndarhandbok som man kan k\u00f6pa.
 dialog.about.version=Version
 dialog.about.build=Build
@@ -524,6 +528,7 @@ dialog.deletefieldvalues.nofields=Det finns inga f\u00e4lt att ta bort f\u00f6r
 dialog.displaysettings.linewidth=Linjetjocklek f\u00f6r sp\u00e5ren (1-4)
 dialog.displaysettings.antialias=Anv\u00e4nd kantutj\u00e4mning ("antialiasing")
 dialog.displaysettings.waypointicons=Waypoint-ikon
+dialog.displaysettings.wpicon.default=Standardmark\u00f6r
 dialog.displaysettings.wpicon.ringpt=Rund mark\u00f6r
 dialog.displaysettings.wpicon.plectrum=Plektrum
 dialog.displaysettings.wpicon.ring=Ring
@@ -532,6 +537,7 @@ dialog.displaysettings.size.small=Liten
 dialog.displaysettings.size.medium=Mellan
 dialog.displaysettings.size.large=Stor
 dialog.displaysettings.windowstyle=F\u00f6nster-stil (kr\u00e4ver omstart)
+dialog.displaysettings.windowstyle.default=Standard
 dialog.displaysettings.windowstyle.nimbus=Nimbus
 dialog.displaysettings.windowstyle.gtk=GTK
 dialog.downloadosm.desc=Bekr\u00e4fta att OSM-r\u00e5data laddas ner f\u00f6r det specifika omr\u00e5det:
@@ -600,11 +606,44 @@ confirm.rearrangewaypoints=Waypoint:ar omarrangerade
 confirm.rearrangephotos=Foton omarrangerade
 confirm.splitsegments=segment delades upp i %d delar
 confirm.sewsegments=segment slogs ihop p\u00e5 %d st\u00e4llen
+confirm.cutandmove=Intervall flyttat
+confirm.pointsadded=%d punkter adderade
+confirm.convertnamestotimes=Waypoint-namn konverterade
+confirm.saveexif.ok=%d foton sparade
+confirm.undo.single=operation \u00e5terst\u00e4lld
+confirm.undo.multi=operationer \u00e5terst\u00e4llda
+confirm.jpegload.single=foto lades till
+confirm.jpegload.multi=foton lades till
+confirm.media.connect=media kopplats
+confirm.photo.disconnect=foto kopplats bort
+confirm.audio.disconnect=ljud kopplats bort
+confirm.media.removed=togs bort
+confirm.correlatephotos.single=foto korrelerat
+confirm.correlatephotos.multi=foton korrelerade
+confirm.createpoint=punkt skapad
+confirm.rotatephoto=foto roterat
+confirm.running=P\u00e5g\u00e5r...
+confirm.lookupsrtm=Hittade %d h\u00f6jd-datav\u00e4rden
+confirm.downloadsrtm=Laddade ner %d filer till cache:n
+confirm.downloadsrtm.1=Laddade ner %d fil till cache:n
+confirm.deletefieldvalues=F\u00e4lt-v\u00e4rden borttagna
+confirm.audioload=Ljud-filer adderade
+confirm.correlateaudios.single=ljud korrelerat
+confirm.correlateaudios.multi=ljud korrelerade
+
+# Tips, shown just once when appropriate
+tip.title=Tips
+tip.useamapcache=Genom att definiera en cache-mapp (Inst\u00e4llningar -> Spara kartor p\u00e5 h\u00e5rddisken)\nkan du snabba upp visningen och reducera datatrafiken.
+tip.learntimeparams=Resultaten f\u00e5r b\u00e4ttre nogrannhet om man f\u00f6rst anv\u00e4nder\nSp\u00e5r -> L\u00e4r upp tidsuppskattningsparametrar\np\u00e5 dina sp\u00e5r.
+tip.downloadsrtm=Du kan snabba upp detta genom att definiera en cachemapp\nf\u00f6r att spara SRTM-data lokalt.
+tip.usesrtmfor3d=Detta sp\u00e5r saknar h\u00f6jddata.\nDu kan anv\u00e4nda SRTM-funktioner f\u00f6r att f\u00e5 uppskattad\nh\u00f6jddata f\u00f6r 3d-vyn.
+tip.manuallycorrelateone=Genom att manuellt koppla \u00e5tminstone ett objekt kan tids-offset ber\u00e4knas f\u00f6r dig.
 
 # Buttons
 button.ok=OK
 button.back=Bak\u00e5t
 button.next=N\u00e4sta
+button.finish=Avsluta
 button.cancel=Avbryt
 button.overwrite=Skriv \u00f6ver
 button.moveup=Flytta upp
@@ -612,6 +651,7 @@ button.movedown=Flytta ner
 button.edit=Redigera
 button.exit=Avsluta
 button.close=St\u00e4ng
+button.continue=Forts\u00e4tta
 button.yes=Ja
 button.no=Nej
 button.yestoall=Ja till alla
@@ -624,6 +664,7 @@ button.preview=F\u00f6rhandsvisa
 button.load=Ladda in
 button.guessfields=Gissa f\u00e4lt
 button.showwebpage=Visa hemsida
+button.check=Kontrollera
 button.resettodefaults=\u00c5terst\u00e4ll till default
 button.browse=Bl\u00e4ddra...
 button.addnew=L\u00e4gg till ny
@@ -631,6 +672,18 @@ button.delete=Ta bort
 button.manage=Hantera
 button.combine=Kombinera
 
+# File types
+filetype.txt=TXT-filer
+filetype.jpeg=JPG-filer
+filetype.kmlkmz=KML- & KMZ-filer
+filetype.kml=KML-filer
+filetype.kmz=KMZ-filer
+filetype.gpx=GPX-filer
+filetype.pov=POV-filer
+filetype.svg=SVG-filer
+filetype.png=PNG-filer
+filetype.audio=MP3-, OGG- & WAV-filer
+
 # Display components
 display.nodata=Ingen data laddad
 display.noaltitudes=Sp\u00e5rdatan saknar h\u00f6jddata
@@ -736,4 +789,69 @@ logic.and=och
 logic.or=eller
 
 # External urls and services
+url.googlemaps=maps.google.se
+wikipedia.lang=sv
 openweathermap.lang=se
+webservice.peakfinder=\u00d6ppna Peakfinder.org
+webservice.geohack=\u00d6ppna Geohack-sidan
+
+# Cardinals for 3d plots
+cardinal.n=N
+cardinal.s=S
+cardinal.e=\u00d6
+cardinal.w=V
+
+# Undo operations
+undo.load=Ladda data
+undo.loadphotos=Ladda foton
+undo.loadaudios=Ladda ljudklipp
+undo.editpoint=redigera punkt
+undo.deletepoint=ta bort punkt
+undo.removephoto=ta bort foto
+undo.removeaudio=ta bort ljudklipp
+undo.deleterange=ta bort intervall
+undo.croptrack=besk\u00e4r sp\u00e5r
+undo.deletemarked=ta bort punkter
+undo.insert=infoga punkter
+undo.reverse=v\u00e4nd intervall
+undo.mergetracksegments=sl\u00e5 ihop sp\u00e5rsegment
+undo.splitsegments=dela upp sp\u00e5ret i segment
+undo.sewsegments=sy ihop sp\u00e5rsegment
+undo.addtimeoffset=l\u00e4gg till tids-offset
+undo.addaltitudeoffset=l\u00e4gg till h\u00f6jd-offset
+undo.rearrangewaypoints=omarrangera waypoints
+undo.cutandmove=flytta intervall
+undo.connect=koppla
+undo.disconnect=koppla bort
+undo.correlatephotos=korrelera foton
+undo.rearrangephotos=omarrangera foton
+undo.createpoint=skapa punkt
+undo.rotatephoto=rotera foto
+undo.convertnamestotimes=konvertera namn till tidpunkter
+undo.lookupsrtm=kolla upp h\u00f6jddata via SRTM
+undo.deletefieldvalues=ta bort f\u00e4lt-v\u00e4rden
+undo.correlateaudios=korrelera ljudklipp
+
+# Error messages
+error.save.dialogtitle=Fel vid sparande av data
+error.save.nodata=Ingen data att spara
+error.save.failed=Misslyckades att spara datan till fil
+error.saveexif.filenotfound=Misslyckades att hitta foto-fil
+error.saveexif.cannotoverwrite1=Foto-fil
+error.saveexif.cannotoverwrite2=\u00e4r skrivskyddad och kan inte skrivas \u00f6ver. Spara som kopia?
+error.saveexif.failed=Misslyckades att spara %d foton.
+error.saveexif.forced=%d foton kr\u00e4vde forcering
+error.load.dialogtitle=Fel vid l\u00e4sning av data
+error.load.noread=Kan inte l\u00e4sa fil
+error.load.nopoints=Ingen koordinat-information hittades i filen
+error.load.unknownxml=K\u00e4nde inte igen xml-formatet:
+error.load.noxmlinzip=Ingen xml-fil hittades inuti zip-filen
+error.load.othererror=Fel vid l\u00e4sning av fil:
+error.load.nopointsintext=Ingen koordinat-information kunde hittas
+error.jpegload.dialogtitle=Fel vid l\u00e4sning av foton
+error.jpegload.nofilesfound=Ingen fil hittades
+error.jpegload.nojpegsfound=Ingen jpeg-fil hittades
+error.jpegload.nogpsfound=Ingen GPS-information hittades
+error.audioload.nofilesfound=Inga ljud-klipp hittades
+error.gpsload.unknown=Ok\u00e4nt fel
+error.undofailed.title=\u00c5ngra misslyckades
index 618513d9cdcbbbda8447ce82db2db5b443e2a597..f6efc99b4aa53a521c8ddf88cffeec98030f0a3b 100644 (file)
@@ -1,4 +1,4 @@
-GpsPrune version 20.2
+GpsPrune version 20.3
 =====================
 
 GpsPrune is an application for viewing, editing and managing coordinate data from GPS systems,
@@ -17,7 +17,7 @@ Running
 =======
 
 To run GpsPrune from the jar file, simply call it from a command prompt or shell:
-   java -jar gpsprune_20.2.jar
+   java -jar gpsprune_20.3.jar
 
 If the jar file is saved in a different directory, you will need to include the path.
 Depending on your system settings, you may be able to click or double-click on the jar file
@@ -25,9 +25,17 @@ in a file manager window to execute it.  A shortcut, menu item, alias, desktop i
 or other link can of course be made should you wish.
 
 To specify a language other than the default, use an additional parameter, eg:
-   java -jar gpsprune_20.2.jar --lang=DE
+   java -jar gpsprune_20.3.jar --lang=DE
 
 
+New with version 20.3
+=====================
+The following fixes and additions were made since version 20.2:
+  - If a waypoint is selected, the distances function should use it
+  - If a point list has been pasted, closing should prompt about unsaved data
+  - Some additional translations
+  - Switching SRTM downloads to use kurviger.de instead of usgs.gov (thanks, kurviger.de!)
+
 New with version 20.2
 =====================
 The following fixes and additions were made since version 20.1:
index 8bfd0905f857b5c744ca8a25c9455da656dbd516..f7de8f73485ee87fba0789730a4c0e20b85243eb 100644 (file)
@@ -347,6 +347,7 @@ public class GpxExporter extends GenericFunction implements Runnable
                                 + " " + _exportFile.getAbsolutePath());
                        // export successful so need to close dialog and return
                        _dialog.dispose();
+                       _app.informDataSaved();
                        return;
                }
                catch (IOException ioe)