1
0
mirror of https://github.com/tumic0/GPXSee.git synced 2025-07-16 11:54:23 +02:00

Compare commits

...

95 Commits
7.28 ... 7.32

Author SHA1 Message Date
2605e1abeb Translated using Weblate (Czech)
Currently translated at 100.0% (360 of 360 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/cs/
2020-09-20 23:24:26 +02:00
8fd17badda Merge branch 'origin/master' into Weblate. 2020-09-20 23:05:55 +02:00
7d62ef038c Version++ 2020-09-20 23:05:38 +02:00
138e0e9505 Merge branch 'origin/master' into Weblate. 2020-09-20 22:32:56 +02:00
5dffb2714b Translated using Weblate (Turkish)
Currently translated at 100.0% (360 of 360 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/tr/
2020-09-20 22:32:55 +02:00
5d8330a68a Use a Qt<5.5 compatible vector append 2020-09-20 22:31:56 +02:00
ff30163175 Merge branch 'origin/master' into Weblate. 2020-09-20 22:19:21 +02:00
743fb20a95 Localization update 2020-09-20 22:19:05 +02:00
50f483663c Added configurable segments usage 2020-09-20 22:18:35 +02:00
96997ffa35 Merge branch 'origin/master' into Weblate. 2020-09-18 20:57:49 +02:00
d738ad7b5a Level 0 2020-09-18 20:56:00 +02:00
01d69a4f2a Merge branch 'origin/master' into Weblate. 2020-09-14 16:34:15 +02:00
0e026d6a96 Properly parse TCX trackpoint extensions 2020-09-14 16:33:44 +02:00
07825e5701 Merge branch 'origin/master' into Weblate. 2020-08-30 20:39:45 +02:00
03e7d092c4 Code cleanup 2020-08-26 18:20:15 +02:00
0b5d01a1f6 A little bit more sane subfile interface 2020-08-26 17:58:21 +02:00
08aa087f61 Translated using Weblate (Polish)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/pl/
2020-07-23 19:41:57 +02:00
6604f85f4a Translated using Weblate (Polish)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/pl/
2020-07-23 19:41:56 +02:00
5343a1a922 "multi-size" app icons on linux
+ icon structure cleanup
2020-07-10 00:57:31 +02:00
d6e0757364 Fixed object interconnection 2020-07-06 23:19:42 +02:00
51becc4bf1 Dummy non-class callback functions are not needed 2020-07-02 23:51:15 +02:00
29a821f8b2 Code cleanup 2020-07-02 00:17:41 +02:00
14f4dead76 Merge branch 'origin/master' into Weblate. 2020-06-29 23:46:00 +02:00
96bb3bbdbb Removed obsolete stuff 2020-06-29 23:46:06 +02:00
22d18b6d4e Merge branch 'origin/master' into Weblate. 2020-06-28 21:02:09 +02:00
c1b79217a9 Update gpxsee_en.ts (#296) 2020-06-28 21:02:05 +02:00
e67a14b072 Merge branch 'origin/master' into Weblate. 2020-06-28 19:52:37 +02:00
473d03cf1f Fixed broken extended objects segment fetching 2020-06-28 19:51:59 +02:00
a339706293 Version++ 2020-06-27 22:51:53 +02:00
39c414ca73 Merge branch 'origin/master' into Weblate. 2020-06-27 22:51:44 +02:00
c59d60faed Merge branch 'origin/master' into Weblate. 2020-06-27 22:50:15 +02:00
32d3eab10e Initial (and partial) IMG links support
+ various IMG fixes (RGN parsing, IMG parsing)
2020-06-27 22:46:26 +02:00
e7729e8745 Added missing Italian localization stuff 2020-06-27 18:05:50 +02:00
bf145c9eb5 Merge branch 'origin/master' into Weblate. 2020-06-27 18:05:48 +02:00
de0a6b0397 Merge branch 'origin/master' into Weblate. 2020-06-27 18:00:07 +02:00
8cf89a580f Removed Arabic translation stub as noone is evidently gona use it despite
the Weblate request...
2020-06-27 17:59:15 +02:00
152e2a8a09 Merge branch 'origin/master' into Weblate. 2020-06-27 17:57:23 +02:00
6b860fe18c added italian translation (#295)
Added italian translation
2020-06-27 17:57:18 +02:00
95f138f5f0 Translated using Weblate (German)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/de/
2020-06-11 13:41:42 +02:00
1fc4dbbb73 Cosmetics 2020-05-30 17:10:13 +02:00
0999cdcba2 Fixed Qt version with time zones support
+ reverted broken Qt version check for opengl
2020-05-30 17:06:06 +02:00
cc16c9e79b Merge branch 'origin/master' into Weblate. 2020-05-30 14:20:58 +02:00
1990c85fd7 Updated Antarctica map URL 2020-05-30 14:20:20 +02:00
58f70fa833 Merge branch 'origin/master' into Weblate. 2020-05-30 14:00:01 +02:00
0f6c50d588 Added missing support for nested KML Documents 2020-05-30 13:59:34 +02:00
89dce5152e Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/pt_BR/
2020-05-29 01:41:40 +02:00
8bce6a44ed Translated using Weblate (French)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/fr/
2020-05-29 01:41:40 +02:00
59ecd3fdf0 Translated using Weblate (Turkish)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/tr/
2020-05-26 12:41:37 +02:00
a10c729e52 Merge branch 'origin/master' into Weblate. 2020-05-21 20:07:40 +02:00
369601f102 Translated using Weblate (Hungarian)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/hu/
2020-05-21 20:07:39 +02:00
47d0feeb46 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/uk/
2020-05-21 20:07:39 +02:00
58a0acc718 Translated using Weblate (Norwegian Bokmål)
Currently translated at 99.4% (357 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/nb_NO/
2020-05-21 20:07:39 +02:00
c466527625 Translated using Weblate (Russian)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/ru/
2020-05-21 20:07:38 +02:00
9cd00075c7 Translated using Weblate (Finnish)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/fi/
2020-05-21 20:07:38 +02:00
6f72d46d6c Merge branch 'master' of github.com:tumic0/GPXSee 2020-05-21 20:07:29 +02:00
54467e6d45 Fixed build with Qt < 5.2 2020-05-21 20:06:49 +02:00
3d2e33361d Merge branch 'origin/master' into Weblate. 2020-05-20 23:56:01 +02:00
f91df0d026 Translated using Weblate (Swedish)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/sv/
2020-05-20 23:56:01 +02:00
9bd004359d Fixed OS X build 2020-05-20 23:45:06 +02:00
e170f92e79 Translated using Weblate (Czech)
Currently translated at 100.0% (359 of 359 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/cs/
2020-05-20 21:13:48 +02:00
0fb5d8dae6 Czech translation 2020-05-20 21:10:32 +02:00
5ff931bb5e Localization update 2020-05-20 21:02:33 +02:00
5bd744a8ed Added time zone settings 2020-05-20 21:00:36 +02:00
035883aab2 Added github FUNDING.yml file 2020-05-03 11:26:43 +02:00
571ed087e3 Back to the original modified Z-score treshold (5) 2020-05-02 20:44:24 +02:00
c461b2e549 Added support for non-standard 8-parts CRSs 2020-05-02 09:48:30 +02:00
26b5411465 Version++ 2020-04-30 21:48:07 +02:00
8965f450ce 32 layers ought to be enough for anybody 2020-04-30 21:46:41 +02:00
a958544667 Added support for IMG maps overlays 2020-04-26 15:46:42 +02:00
ddf865834a Remove unused consructor 2020-04-26 02:01:25 +02:00
a4abed8f1f Code cleanup 2020-04-26 01:17:54 +02:00
56061c93cb Merge branch 'origin/master' into Weblate. 2020-04-22 22:31:14 +02:00
7385b08262 Added Arabic translations file stub 2020-04-22 22:30:45 +02:00
9d79bd9a9d Merge branch 'origin/master' into Weblate. 2020-04-22 00:47:40 +02:00
159e5aeae9 Fixed error handling 2020-04-22 00:47:12 +02:00
d8beaed876 Merge branch 'origin/master' into Weblate. 2020-04-21 23:28:08 +02:00
c1584f30d2 Limit the map bounds properly based on projection, not a magic height 2020-04-21 23:26:35 +02:00
efcefe8fec Merge branch 'origin/master' into Weblate. 2020-04-19 14:52:45 +02:00
cbe312d9c8 Version++ 2020-04-19 14:52:40 +02:00
5322ee96c8 Merge branch 'origin/master' into Weblate. 2020-04-19 11:36:41 +02:00
08334d7fde Move the world maps bounds limit hack to the propper place 2020-04-19 11:36:17 +02:00
51d4e04343 Merge branch 'origin/master' into Weblate. 2020-04-18 00:01:28 +02:00
33bbd6a592 Yet another special case 2020-04-18 00:00:48 +02:00
0f96bc602c Merge branch 'origin/master' into Weblate. 2020-04-15 22:48:54 +02:00
7811527239 Rather show less road shields than more 2020-04-15 22:48:28 +02:00
31da4e1906 Some more default IMG style tweaking 2020-04-15 22:48:02 +02:00
cb6a82a10a Merge branch 'origin/master' into Weblate. 2020-04-09 10:17:58 +02:00
652cbd7c11 Fixed Qt4 build 2020-04-09 10:17:30 +02:00
ff0711c620 Merge branch 'origin/master' into Weblate. 2020-04-08 22:28:54 +02:00
eb0ff84379 Code cleanup 2020-04-08 22:28:35 +02:00
74775b2c62 Merge branch 'origin/master' into Weblate. 2020-04-08 00:55:02 +02:00
6ee3a8ea8d Added support for FIT course points 2020-04-08 00:54:35 +02:00
ee3d43e249 A slightly darker white 2020-04-08 00:00:43 +02:00
a6fbae38b8 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (356 of 356 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/pt_BR/
2020-04-07 15:09:42 +02:00
242babb741 Improved default IMG style
("less green")
2020-04-07 00:54:31 +02:00
122 changed files with 7397 additions and 3034 deletions

View File

@ -1,4 +1,4 @@
version: 7.28.{build}
version: 7.32.{build}
configuration:
- Release

1
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1 @@
github: tumic0

View File

@ -3,7 +3,7 @@ unix:!macx {
} else {
TARGET = GPXSee
}
VERSION = 7.28
VERSION = 7.32
QT += core \
gui \
@ -95,7 +95,9 @@ HEADERS += src/common/config.h \
src/map/IMG/gmap.h \
src/map/IMG/huffmanstream.h \
src/map/IMG/huffmantable.h \
src/map/IMG/nodfile.h \
src/map/IMG/mapdata.h \
src/map/IMG/rastertile.h \
src/map/IMG/textpathitem.h \
src/map/IMG/textpointitem.h \
src/map/projection.h \
@ -256,7 +258,9 @@ SOURCES += src/main.cpp \
src/map/IMG/gmap.cpp \
src/map/IMG/huffmanstream.cpp \
src/map/IMG/huffmantable.cpp \
src/map/IMG/nodfile.cpp \
src/map/IMG/mapdata.cpp \
src/map/IMG/rastertile.cpp \
src/map/IMG/textpathitem.cpp \
src/map/IMG/textpointitem.cpp \
src/map/maplist.cpp \
@ -346,6 +350,9 @@ greaterThan(QT_MAJOR_VERSION, 4) {
HEADERS += src/data/geojsonparser.h
SOURCES += src/data/geojsonparser.cpp
}
equals(QT_MAJOR_VERSION, 5):greaterThan(QT_MINOR_VERSION, 4) {
HEADERS += src/GUI/timezoneinfo.h
}
DEFINES += APP_VERSION=\\\"$$VERSION\\\" \
QT_NO_DEPRECATED_WARNINGS
@ -366,10 +373,11 @@ TRANSLATIONS = lang/gpxsee_en.ts \
lang/gpxsee_es.ts \
lang/gpxsee_pt_BR.ts \
lang/gpxsee_uk.ts \
lang/gpxsee_hu.ts
lang/gpxsee_hu.ts \
lang/gpxsee_it.ts
macx {
ICON = icons/gpxsee.icns
ICON = icons/app/gpxsee.icns
QMAKE_INFO_PLIST = pkg/Info.plist
locale.path = Contents/Resources/translations
locale.files = lang/gpxsee_en.qm \
@ -386,7 +394,8 @@ macx {
lang/gpxsee_es.qm \
lang/gpxsee_pt_BR.qm \
lang/gpxsee_uk.qm \
lang/gpxsee_hu.qm
lang/gpxsee_hu.qm \
lang/gpxsee_it.qm
csv.path = Contents/Resources
csv.files = pkg/csv
maps.path = Contents/Resources
@ -411,7 +420,7 @@ macx {
}
win32 {
RC_ICONS = icons/gpxsee.ico \
RC_ICONS = icons/app/gpxsee.ico \
icons/formats/gpx.ico \
icons/formats/tcx.ico \
icons/formats/kml.ico \
@ -441,8 +450,8 @@ unix:!macx {
csv.path = $$PREFIX/share/gpxsee/csv
locale.files = lang/*.qm
locale.path = $$PREFIX/share/gpxsee/translations
icon.files = icons/gpxsee.png
icon.path = $$PREFIX/share/pixmaps
icon.files = icons/app/hicolor/*
icon.path = $$PREFIX/share/icons/hicolor
desktop.files = pkg/gpxsee.desktop
desktop.path = $$PREFIX/share/applications
mime.files = pkg/gpxsee.xml

View File

@ -1,8 +1,8 @@
<RCC>
<qresource prefix="/">
<!-- GUI -->
<file alias="gpxsee.png">icons/gpxsee.png</file>
<file alias="gpxsee@2x.png">icons/gpxsee@2x.png</file>
<file alias="gpxsee.png">icons/app/gpxsee.png</file>
<file alias="gpxsee@2x.png">icons/app/gpxsee@2x.png</file>
<file alias="dialog-close.png">icons/GUI/dialog-close.png</file>
<file alias="dialog-close@2x.png">icons/GUI/dialog-close@2x.png</file>
<file alias="document-open.png">icons/GUI/document-open.png</file>

BIN
icons/app/gpxsee.dia Normal file

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 361 KiB

View File

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 571 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="6cm" height="6cm" viewBox="47 79 119 119" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g>
<rect style="fill: #ffffff" x="47.729" y="79.875" width="118.071" height="118.071" rx="10" ry="10"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2.35099e-37; stroke-linejoin: round; stroke: #ffffff" x="47.729" y="79.875" width="118.071" height="118.071" rx="10" ry="10"/>
</g>
<g>
<ellipse style="fill: #000000" cx="113" cy="90.875" rx="7.021" ry="7.021"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke-linejoin: round; stroke: #000000" cx="113" cy="90.875" rx="7.021" ry="7.021"/>
</g>
<polyline style="fill: none; fill-opacity:0; stroke-width: 4; stroke: #000000" points="61.5289,182.479 73.5,125.854 96,151.875 113,90.875 136.5,172.375 151.658,157.199 "/>
<g>
<ellipse style="fill: #000000" cx="73.5" cy="125.854" rx="7.021" ry="7.021"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="73.5" cy="125.854" rx="7.021" ry="7.021"/>
</g>
<g>
<ellipse style="fill: #000000" cx="136.5" cy="172.375" rx="7.021" ry="7.021"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="136.5" cy="172.375" rx="7.021" ry="7.021"/>
</g>
<g>
<ellipse style="fill: #000000" cx="60.7" cy="186.4" rx="7.021" ry="7.021"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="60.7" cy="186.4" rx="7.021" ry="7.021"/>
</g>
<g>
<ellipse style="fill: #000000" cx="154.5" cy="154.354" rx="7.021" ry="7.021"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="154.5" cy="154.354" rx="7.021" ry="7.021"/>
</g>
<g>
<ellipse style="fill: #000000" cx="96" cy="151.875" rx="7.021" ry="7.021"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="96" cy="151.875" rx="7.021" ry="7.021"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

View File

@ -351,7 +351,7 @@
<translation>Otevřít soubor</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Otevřít POI soubor</translation>
</message>
@ -518,8 +518,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Čistý čas</translation>
</message>
@ -674,32 +674,32 @@
<translation>Adresář se styly:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Plochy</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statistika</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Otevřít mapový soubor</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Nejsou načteny žádné soubory</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Datum</translation>
</message>
@ -754,19 +754,19 @@
<translation>Adresář mezipaměti dlaždic:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Trasy</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Mapu nelze načíst:</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n soubor</numerusform>
@ -790,8 +790,8 @@
<translation>Exportovat do PDF...</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Navigační body</translation>
</message>
@ -816,29 +816,29 @@
<translation>Poslední soubor</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Datový soubor nelze načíst:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Řádka: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Soubor POI nelze načíst:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Název</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Cesty</translation>
</message>
@ -855,16 +855,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Vzdálenost</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Čas</translation>
</message>
@ -914,59 +914,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Data nejsou k dispozici</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>h</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Vzdálenost</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Čas</translation>
</message>
@ -1017,47 +1017,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Podporované soubory</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles mapy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX mapy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG mapy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer mapy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy mapy/atlasy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF obrázky</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav mapy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Online mapové zdroje</translation>
</message>
@ -1065,12 +1065,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Základní barva:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Posun palety:</translation>
</message>
@ -1105,39 +1105,39 @@
<translation>Trasy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Vyhlazovat hrany</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Šířka čar:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Barva pozadí:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Trasy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Neprůhlednost mapy:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Mapa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Grafy</translation>
</message>
@ -1181,197 +1181,217 @@
<translation>Styl:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Barva navigačních bodů:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Velikost navigačních bodů:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Barva:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Velikost:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Navigační body</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Barva POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Velikost POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI body</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Barva posuvníku:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Body</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Velikost okna klouzavého průměru</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Výška:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Rychlost:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Tep:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Kadence:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Výkon:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Vyhlazování</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Odstarnit odlehlé GPS záznamy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Vyhlazování:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automatická</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Minimální rychlost:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minimální doba trvání:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Vypočítaná ze vzdálenosti/času</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Zaznamenaná zařízením</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Zobrazit sekundární rychlost</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Zobrazit sekundární výšku</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation>Použít segmenty</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Časová zóna:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Výška</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Časová zóna</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrování</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Zdroje</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Detekce přestávek</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Radius:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Rychlost</translation>
</message>
@ -1411,149 +1431,151 @@
<translation>Plochy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Vlastní</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Vysoké rozlišení</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Oblast tisku přibližně odpovídá zobrazované oblasti. Přiblížení mapy se nemění.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Přiblížení mapy bude upraveno tak, aby se celý obsah (trasy/body) vešel do oblasti tisku a rozlišení mapy bylo co nejblíže rozlišení tisku.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Název</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Vzdálenost</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Čas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Čistý čas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Počet objektů (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Samostatná stránka s grafy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Režim tisku</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Záhlaví</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Používat OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Povolit HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Mezipaměť obrázků:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Časový limit připojení:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Systém</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Vzhled</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Mapy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Tisk a export</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Nastavení</translation>
</message>
@ -1873,7 +1895,7 @@
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Odkazy</translation>
</message>
@ -1881,42 +1903,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Název</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Souřadnice</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Výška</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Popis</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Poznámka</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adresa</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Odkazy</translation>
</message>

View File

@ -494,16 +494,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Afstand</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Tid</translation>
</message>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Tid i bevægelse</translation>
</message>
@ -780,87 +780,87 @@
<translation>Åbn fil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Fejl ved indlæsning af data-fil:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Linje: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Åbn IP-fil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Fejl ved indlæsning af IP-fil:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Spor</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Ruter</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Rutepunkter</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statistikker</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Navn</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Åbn kort-fil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Fejl ved indlæsning af kort:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Ingen filer indlæst</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n fil</numerusform>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Data er ikke tilgængelig</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Afstand</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>fod</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mil</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>sømil</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>t</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Tid</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Understøttede filer</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX-kort</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer-kort</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy kort/atlas</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF billeder</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation type="unfinished">Online-kort kilder</translation>
</message>
@ -1089,12 +1089,12 @@
<translation>HiDPI skærmtilstand</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Grundfarve:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Paletteskift:</translation>
</message>
@ -1178,381 +1178,403 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Brug anti-aliasing</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Rutepunktfarve:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Rutepunktstørrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Farve:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Størrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Rutepunkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>IP farve:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>IP størrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation type="unfinished">Interessepunkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Linjebredde:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation type="unfinished">Skyderfarve:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Baggrundsfarve:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation type="unfinished">Gennemsigtighed for kort:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Stier</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Punkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Grafer</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Kort</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation type="unfinished">Glidende gennemsnitlig vinduesstørrelse</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Højde:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Hastighed:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Puls:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Kadence:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Effekt:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Udjævning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Eliminer GPS-ekstremværdier</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Udjævning:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mil/t</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation type="unfinished">knob</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/t</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Mindste hastighed:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minidste varighed:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Beregnet ud fra afstanden/tiden</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Indspillet af enhed</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation type="unfinished">Højde</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrering</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation type="unfinished">Pause genkendelse</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Hastighed</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mil</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>sømil</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>IP</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation type="unfinished">WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Højopløsning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation type="unfinished">Det udskrevne område er ca. det samme som visningsområdet. Kortes zoomniveau ændres ikke.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation type="unfinished">Zoom-niveauet vil blive ændret, således at hele indholdet (spor/rutepunkter) passer til udskriftsområdet og kortopløsning er tæt som muligt udskriftsopløsningen.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Navn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Afstand</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Tid</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Tid i bevægelse</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation type="unfinished">Elementantal (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Separat grafside</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation type="unfinished">Udskrivningstilstand</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation type="unfinished">Toptekst</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Brug OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Aktiver HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation type="unfinished">Billed cachestørrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Timeout for forbindelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>System</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Udseende</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Kort</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Udskriv &amp; eksport</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Indstillinger</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation type="unfinished"></translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Navn</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordinater</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Højde</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Beskrivelse</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation type="unfinished"></translation>
</message>

View File

@ -361,7 +361,7 @@
<translation>Datei öffnen</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>POI-Datei öffnen</translation>
</message>
@ -528,8 +528,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Bewegungszeit</translation>
</message>
@ -684,35 +684,35 @@
<translation>Formatvorlagen-Verzeichnis:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Flächen</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statistiken</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Kartendatei öffnen</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Fehler beim Laden der Kartendatei:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Keine Dateien geladen</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n Datei</numerusform>
@ -720,16 +720,16 @@
</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Routen</translation>
</message>
@ -749,8 +749,8 @@
<translation>Als PDF exportieren </translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Wegpunkte</translation>
</message>
@ -815,29 +815,29 @@
<translation>Kachel-Cache-Verzeichnis:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Fehler beim Laden der Datendatei:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Zeile: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Fehler beim Laden der POI-Datei:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Name</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Strecken</translation>
</message>
@ -854,16 +854,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Distanz</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Zeit</translation>
</message>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Keine Daten verfügbar</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>sek</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>tim</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Distanz</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Zeit</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Unterstützte Dateien</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles-Karten</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX-Karten</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG-Karten</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer-Karten</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy-Karten/Atlanten</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF-Bilder</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav-Karten</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Online-Kartenquellen</translation>
</message>
@ -1064,12 +1064,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Grundfarbe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Palettenverschiebung:</translation>
</message>
@ -1104,39 +1104,39 @@
<translation>Routen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Anti-Aliasing verwenden</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Linienbreite:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Hintergrundfarbe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Pfade</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Kartendeckkraft:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Karte</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Graphen</translation>
</message>
@ -1180,197 +1180,217 @@
<translation>Stil:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Wegpunkt-Farbe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Wegpunkt-Größe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Farbe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Größe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Wegpunkte</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>POI-Farbe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>POI-Größe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POIs</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Schieber-Farbe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Punkte</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Fensterbreite des gleitenden Mittelwerts</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Höhe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Geschwindigkeit:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Herzfrequenz:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Frequenz:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Leistung:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Glätten</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>GPS-Ausreißer entfernen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Glätten:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automatisch</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>sek</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Minimale Geschwindigkeit:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minimale Dauer:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Berechnet aus Entfernung/Zeit</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Aufgezeichnet von Gerät</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Sekundäre Geschwindigkeit anzeigen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS-Daten</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM-Daten</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Sekundäre Höhe anzeigen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Zeitzone:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Höhe</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Zeitzone</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Datenfilterung</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Datenquellen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Pausenerkennung</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Radius:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Geschwindigkeit</translation>
</message>
@ -1410,149 +1430,151 @@
<translation>Flächen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Benutzerdefiniert</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Hohe Auflösung</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Der Druckbereich entspricht ungefähr dem Anzeigebereich. Das Karten-Zoom ändert sich nicht.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Das Karten-Zoom ändert sich so, dass der ganze Inhalt (Strecken/Wegpunkte) in den Druckbereich passen und die Kartenauflösung so nah wie möglich an der Druckauflösung ist.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Name</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Distanz</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Zeit</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Bewegungszeit</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Elementanzahl (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Separate Seite für Graphen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Druckmodus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Kopfzeile</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>OpenGL verwenden</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>HTTP/2 verwenden</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Bild-Cachegröße:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Verbindungs-Timeout:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>System</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Erscheinungsbild</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Karten</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Daten</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Druck / Export</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Einstellungen</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Links</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Name</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordinaten</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Höhe</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Beschreibung</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Kommentar</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adresse</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Links</translation>
</message>

View File

@ -1,4 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en_US">
<context>
<name>GUI</name>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<source>%n files</source>
<translation>
<numerusform>%n file</numerusform>
<numerusform>%n files</numerusform>
</translation>
</message>
</context>
</TS>

View File

@ -494,16 +494,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Distancia</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Tiempo</translation>
</message>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Tiempo en movimiento</translation>
</message>
@ -780,87 +780,87 @@
<translation>Abrir archivo</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Error de carga del archivo:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Renglón: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Cargar archivo de POI</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Error al cargar el archivo de POI:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Tracks</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Rutas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Puntos de referencia</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Áreas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Fecha</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Estadísticas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Nombre</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Abrir archivo de mapa</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Error al cargar el archivo de mapa:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Sin archivos cargados</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n archivo</numerusform>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Sin datos disponibles</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Distancia</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>h</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Tiempo</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Formatos admitidos</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>Mapas MBTiles</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Mapas Garmin JNX</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Mapas Garmin IMG</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>Mapas OziExplorer</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>Mapas/atlas TrekBuddy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>Imágenes GeoTIFF</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>Mapas TwoNav</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Fuentes de mapas en línea</translation>
</message>
@ -1089,12 +1089,12 @@
<translation>Modo de pantalla HiDPI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Color de base:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Cambiar paleta:</translation>
</message>
@ -1178,381 +1178,403 @@
<translation>Áreas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Usar anti-aliasing</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Color de puntos de referencia:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Tamaño de puntos de referencia:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Color:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Tamaño:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Puntos de referencia</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Color de POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Tamaño de POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Anchura de línea:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Color de señalador:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Color de fondo:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Opacidad del mapa:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Trayectos</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Puntos</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Gráficas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Mapa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Tamaño medio de la ventana en movimiento</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Altitud:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Velocidad:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Ritmo cardíaco:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Cadencia:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Potencia:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Suavizar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Borrar valores anormales del GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Suavizado:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automática</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Velocidad mínima:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Duración mínima:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Calculado con distancia/tiempo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Grabado por el dispositivo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>Datos GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>Datos del MDT</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Altitud</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrado</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Fuentes</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Detectar paradas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Radio:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Velocidad</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Personalizada</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Resolución alta</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>El área que se imprime es aproximadamente la que muestra la pantalla. La escala del mapa no cambiará.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>La escala del mapa se cambia para que el área impresa se ajuste a todos los elementos (pistas, puntos de referencia...) y la resolución sea lo mas próxima posible a la de impresión.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Nombre</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Fecha</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Distancia</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Hora</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Tiempo en movimiento</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Recuento de elementos (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Pagina de gráficas separada</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Modo de impresión</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Titulo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Usar OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Activar HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Tamaño de antememoria de imágenes:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Caducidad de la conexión:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Sistema</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Apariencia</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Mapas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Fecha</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Imprimir y exportar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Opciones</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Fecha</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Enlaces</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Nombre</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Coordenadas</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Altitud</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Fecha</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Descripción</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Dirección</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Enlaces</translation>
</message>

View File

@ -351,7 +351,7 @@
<translation>Avaa tiedosto</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Avaa POI-tiedosto</translation>
</message>
@ -518,8 +518,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Liikkumisaika</translation>
</message>
@ -674,32 +674,32 @@
<translation>Tyylitiedostoiden hakemisto:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Alueet</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Tilasto</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Avaa karttatiedosto</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Yhtään tiedostoa ei ladattu</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Päivämäärä</translation>
</message>
@ -754,19 +754,19 @@
<translation>Välimuistin hakemisto:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Reitit</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Virhe ladattaessa karttaa:</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n tiedosto</numerusform>
@ -789,8 +789,8 @@
<translation>Vie PDF:ksi...</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Reittipisteet</translation>
</message>
@ -815,29 +815,29 @@
<translation>Viimeinen tiedosto</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Virhe ladattaessa datatiedostoa:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Rivi: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Virhe ladattaessa POI-tiedostoa:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Nimi</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Jäljet</translation>
</message>
@ -854,16 +854,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Etäisyys</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Aika</translation>
</message>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Tietoja ei ole saatavilla</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>mpk</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>t</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Etäisyys</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Aika</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Tuetut tiedostot</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles-kartat</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX -kartat</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG -kartat</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer-kartat</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy-kartat/kartastot</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF -kuvat</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav-kartat</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Online-karttojen lähteet</translation>
</message>
@ -1064,12 +1064,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Pohjaväri:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Paletin muutos:</translation>
</message>
@ -1104,39 +1104,39 @@
<translation>Reitit</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Käytä reunanpehmennystä</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Viivan leveys:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Taustan väri:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Jäljet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Kartan läpinäkymättömyys:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Kartat</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Kaaviokuvat</translation>
</message>
@ -1180,197 +1180,217 @@
<translation>Tyyli:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Reittipisteen väri:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Reittipisteen koko:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Väri:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Koko:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Reittipisteet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>POI:n väri:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>POI:n koko:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI:t</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Liukusäätimen väri:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Pisteet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Liukuvan keskiarvon ikkunan koko</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Korkeus:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Vauhti:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Sydämen syke:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Kadenssi:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Teho:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Silotus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Poista poikkeavat GPS-havainnot</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Silotus:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automaattinen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mph</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/t</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Minimivauhti:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minimikesto:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Laskettu etäisyydestä/ajasta</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Tallennettu laitteella</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Näytä molemmat samanaikaisesti</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS-tiedot</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM-tiedot</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Näytä molemmat samanaikaisesti</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Aikavyöhyke:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Korkeus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Aikavyöhyke</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Suodatus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Lähteet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Pysähdysten havaitseminen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Säde:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Vauhti</translation>
</message>
@ -1410,149 +1430,151 @@
<translation>Alueet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Käyttäjän määrittämä</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>mpk</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Korkea resoluutio</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Painettu alue on suunnilleen näyttöalue. Kartan zoomaustaso ei muutu.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Zoomaustasoa muutetaan niin, että koko sisältö (jäljet/reittipisteet) sopii painettuun alueeseen ja kartan resoluutio on mahdollisimman lähellä tulostusresoluutiota.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Nimi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Päivämäärä</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Etäisyys</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Aika</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Liikkumisaika</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Kohteiden määrä (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Erillinen sivu kaaviokuvalle</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Tulostustila</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Otsikko</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Käytä OpenGL:ää</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Ota HTTP/2 käyttöön</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>Mt</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Kuvavälimuistin koko:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Yhteyden aikakatkaisu:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Järjestelmä</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Ulkoasu</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Kartat</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Tiedot</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Tulostus &amp; vienti</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Valinnat</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Päivämäärä</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Linkit</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Nimi</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordinaatit</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Korkeus</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Päivämäärä</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Kuvaus</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Kommentti</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Osoite</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Linkit</translation>
</message>

View File

@ -361,7 +361,7 @@
<translation>Ouvrir un fichier</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Ouvrir un fichier POI</translation>
</message>
@ -528,8 +528,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Durée en déplacement</translation>
</message>
@ -684,35 +684,35 @@
<translation>Dossier de styles :</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Zones</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statistiques</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Ouvrir un fichier de carte</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Erreur lors du chargement de la carte :</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Aucun fichier chargé</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n fichier</numerusform>
@ -720,16 +720,16 @@
</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Date</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Routes</translation>
</message>
@ -749,8 +749,8 @@
<translation>Exporter au format PDF...</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Points de jalonnement</translation>
</message>
@ -815,29 +815,29 @@
<translation>Dossier du cache de tuiles :</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Erreur lors du chargement des données :</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Ligne : %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Erreur lors du chargement du fichier POI :</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Nom</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Traces</translation>
</message>
@ -854,16 +854,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Distance</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Temps</translation>
</message>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>pieds</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Données non disponibles</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>h</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Distance</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Temps</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Formats pris en charge</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>Cartes MBTiles</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Cartes Garmin JNX</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Cartes Garmin IMG</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>Cartes OziExplorer</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>Cartes ou atlas TrekBuddy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>Images GeoTIFF</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>Cartes TwoNav</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Cartes en ligne</translation>
</message>
@ -1064,12 +1064,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Couleur de base :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Incrément de palette :</translation>
</message>
@ -1104,39 +1104,39 @@
<translation>Routes</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Utiliser l&apos;anticrénelage</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Épaisseur de ligne :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Couleur d&apos;arrière plan :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Chemins</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Opacité de la carte :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Carte</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Graphe</translation>
</message>
@ -1180,197 +1180,217 @@
<translation>Style :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Couleur des points de jalonnement :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Tailles des points de jalonnement :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Couleur :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Taille :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Points de jalonnement</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Couleur des POI :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Taille des POI :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Couleur du curseur :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Points</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Largeur de fenêtre de la moyenne glissante</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Altitude :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Vitesse :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Fréquence cardiaque :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Cadence :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Puissance :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Lissage</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Supprimer les données GPS aberrantes</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Lissage :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automatique</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>nd</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Vitesse minimale :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Durée minimale :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Calculée comme distance/temps</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Enregistrée par l&apos;appareil</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Afficher la vitesse secondaire</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>Données GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>Données MNT</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Afficher lélévation secondaire</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Fuseau horaire :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Altitude</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Fuseau horaire</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrage</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Sources</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Détection des arrêts</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Rayon :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Vitesse</translation>
</message>
@ -1410,149 +1430,151 @@
<translation>Zones</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Personnalisé</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Résolution élevée</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>La zone d&apos;impression est presque celle affichée. L&apos;échelle reste la même.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>L&apos;échelle est ajustée pour que tout le contenu (traces et points de jalonnement) rentre dans la zone d&apos;impression tout en gardant proches les résolutions d&apos;impression et de carte.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Nom</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Date</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Distance</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Durée</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Durée en déplacement</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Nombre d&apos;éléments (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Sauter une page pour les graphes</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Mode d&apos;impression</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Entête</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Utiliser OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Activer l&apos;HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>Mo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Volume du cache à images :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Délai d&apos;attente de connexion :</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Système</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Apparence</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Cartes</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Données</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Imprimer et exporter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Options</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Date</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Liens</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Nom</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Coordonnées</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Altitude</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Date</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Description</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Commentaire</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adresse</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Liens</translation>
</message>

View File

@ -494,18 +494,18 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Távolságalapú</translation>
<translation>Távolság</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Időalapú</translation>
<translation>Idő</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="386"/>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Mozgásban töltött idő</translation>
</message>
@ -780,91 +780,90 @@
<translation>Fájl megnyitása</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Adatfájl betöltési hiba:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Sor: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>POI fájl megnyitása</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Hiba a POI fájl betöltése során:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Nyomvonalak</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Útvonalak</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Köztespontok</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Területek</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Dátum</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Összesítés</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Név</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Térképfájl megnyitása</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Térképbetöltési hiba:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Nincs betöltött fájl</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n fájl</numerusform>
<numerusform>%n fájl</numerusform>
</translation>
</message>
</context>
@ -913,59 +912,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Nem elérhető</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Távolság</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>láb</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mérföld</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>tengeri mérföld</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>mp</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>perc</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>óra</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Idő</translation>
</message>
@ -1016,47 +1015,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Támogatott fájltípusok</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG térképek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX térképek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer térképek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles térképek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy térképek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF képek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav térképek</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Online térképforrások</translation>
</message>
@ -1168,391 +1167,413 @@
<translation>Területek határvonala</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Alapszín (egy nyomvonal):</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Színhasonlóság (továbbiak):</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Élsimítás be</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Köztespont szín:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Köztespont méret:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Szín:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Méret:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Köztespontok</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>POI szín:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>POI méret:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI-k</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Vonalvastagság:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Csúszka színe:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Háttérszín:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Térkép átlátszósága:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Utak</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Pontok</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Grafikonok</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Térkép</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Interpoláció ablakmérete</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Magasság:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Sebesség:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Pulzusszám:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Ütem:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Teljesítmény:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Grafikon simítása</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Kiugró GPS adatok figyelmen kívül hagyása</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Simítás:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automatikus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Egyéni</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mph</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>csomó</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>mp</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Ennél kisebb sebesség:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>legalább ennyi ideig:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Számított sebesség</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Az eszköz által rögzített</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Másodlagos sebesség mutatása</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS adat</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM adat</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Másodlagos emelkedés mutatása</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Időzóna:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Sebesség</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Magasság</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Időzóna</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Részletesség</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Adatforrások</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Megállás érzékelés</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mérföld</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>tengeri mérföld</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Láthatóság sugara:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>Alakhű</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Nagy felbontás</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>A nyomtatott terület megközelítőleg a megjelenítési terület. A térképnagyítás mértéke nem változik.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>A nagyítás mértéke megváltozik, hogy a teljes tartalom (nyomvonal / köztespontok) illeszkedjen a nyomtatott területhez, és a térkép felbontása a lehető legközelebb legyen a nyomtatási felbontáshoz.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Név</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Dátum</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Távolság</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Idő</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Mozgásban töltött idő</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>nyomvonalak száma (ha&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>A grafikon külön oldalra</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Nyomtatási mód</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Fejléc</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>OpenGL használata</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>HTTP/2 engedélyezése</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Kép gyorsítótár mérete:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Kapcsolat időtúllépés:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Rendszer</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Megjelenés</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Térképek</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Adatok</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Kimenet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Beállítások</translation>
</message>
@ -1872,7 +1893,7 @@
<translation>Dátum</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Hivatkozások</translation>
</message>
@ -1880,42 +1901,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Név</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordináták</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Magasság</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Dátum</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Leírás</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Megjegyzés</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Cím</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Hivatkozások</translation>
</message>

1945
lang/gpxsee_it.ts Normal file

File diff suppressed because it is too large Load Diff

View File

@ -494,16 +494,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Avstand</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Tid</translation>
</message>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Tid i bevegelse</translation>
</message>
@ -780,87 +780,87 @@
<translation>Åpne fil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Feil ved innlasting av datafil:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Linje: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Åpne POI-fil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Kunne ikke laste inn POI-fil:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Spor</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Ruter</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Veipunkter</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Områder</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statistikk</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Navn</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Åpne kartfil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Feil ved innlasting av kart:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Ingen filer lastet opp</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n fil</numerusform>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Data ikke tilgjengelig</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Avsntand</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>fot</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>t</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Tid</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Støttede filer</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles-kart</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX-kart</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garming IMG-kart</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer-kart</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy kart/atlas</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF-bilder</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav-kart</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Nettbaserte kartkilder</translation>
</message>
@ -1089,12 +1089,12 @@
<translation>HiDPI-visningsmodus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Grunnfarge:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Palettforskyvning:</translation>
</message>
@ -1178,381 +1178,403 @@
<translation>Områder</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Bruk kanutjevning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Veipunktsfarge:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Veipunktsstørrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Farge:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Størrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Veipunkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>POI-farge:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>POI-størrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI-er</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Linjebredde:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Farge skyveregulering:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Bakgrunnsfarge:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Kartdekkevne:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Stier</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Punkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Diagrammer</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Kart</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Flytter gjennomsnittlig kartstørrelse</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Høyde:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Hastighet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Puls:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Stegfrekvens:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Kraft:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Utjevning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Eliminer GPS-ekstremverdier</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Utjevning:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automatisk</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/t</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/t</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Minimumshastighet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minimumsvarighet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Utregnet fra avstand/tid</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Tatt opp av enhet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Vis sekundær hastighet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS-data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM-data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Vis sekundær høyde</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Tidssone:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Høyde</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Tidssone</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrering</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Kilder</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Sett oppdagelse pause</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Radius:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Hastighet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Egendefinert</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Høyoppløsning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Det utskrevne området er omentrent det samme som visningsområdet. Kartforstørrelsesnivået endrer seg ikke.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Forstørrelsesnivået vil endres slik at hele innholdet (spor/veipunkter) passer med utskrevet område, og kartoppløsningen er lik utskriftsoppløsningen som mulig.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Navn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Avstand</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Tid</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Tid i bevegelse</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Elementantall (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Separat diagramside</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Utskriftsmodus</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Topptekst</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Bruk OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Skru HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Bildehurtiglagringstørrelse:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Tilkoblingstidsavbrudd:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>System</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Utseende</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Kart</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Utskrift og ekport</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Valg</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Lenker</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Navn</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordinater</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Høyde</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Dato</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Beskrivelse</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation type="unfinished">Kommentar</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adresse</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Lenker</translation>
</message>

View File

@ -351,7 +351,7 @@
<translation>Otwórz plik</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Otwórz plik POI</translation>
</message>
@ -518,8 +518,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Czas ruchu</translation>
</message>
@ -674,32 +674,32 @@
<translation>Katalog ze stylami:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Obszary</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statystyka</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Otwórz plik mapy</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Nie załadowano żadnych plików</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Data</translation>
</message>
@ -754,19 +754,19 @@
<translation>Katalog pamięci podręcznej kafelków:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Trasy</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Wystąpił błąd podczas ładowania mapy:</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n plik</numerusform>
@ -790,8 +790,8 @@
<translation>Eksportuj do PDF...</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Punkty nawigacyjne</translation>
</message>
@ -816,29 +816,29 @@
<translation>Ostatni plik</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Błąd podczas ładowania pliku danych:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Linia: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Błąd podczas ładowania pliku POI:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Nazwa</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Ślady</translation>
</message>
@ -855,16 +855,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Dystans</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Czas</translation>
</message>
@ -914,59 +914,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Brak danych</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>h</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Dystans</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Czas</translation>
</message>
@ -1017,47 +1017,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Obsługiwane pliki</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>Mapy MBTiles</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Mapy Garmin JNX</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Mapy Garmin IMG</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>Mapy OziExplorer</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>Mapy/atlasy TrekBuddy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>Obrazy GeoTIFF</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>Mapy TwoNav</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Źródła map online</translation>
</message>
@ -1065,12 +1065,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Kolor podstawowy:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Przesunięcie palety:</translation>
</message>
@ -1105,39 +1105,39 @@
<translation>Trasy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Użyj wygładzania</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Szerokość lini:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Kolor tła:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Ścieżki</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Nieprzezroczystość mapy:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Mapa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Wykresy</translation>
</message>
@ -1181,197 +1181,217 @@
<translation>Styl:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Kolor punktów nawigacyjnych:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Rozmiar punktów nawigacyjnych:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Kolor:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Rozmiar:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Punkty nawigacyjne</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Kolor POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Rozmiar POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>Punkty POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Kolor suwaka:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Punkty</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Rozmiar okna średniej ruchomej</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Wysokość:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Prędkość:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Tętno:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Kadencja:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Moc:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Wygładzanie</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Wyeliminuj odstające dane GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Wygładzanie:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation type="unfinished"></translation>
<translation>Automatycznie</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Minimalna prędkość:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minimalny czas trwania:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Obliczona na postawie odległości/czasu</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Zapisana przez urządzenie</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation type="unfinished"></translation>
<translation>Pokaż średnią prędkość</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>Dane GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>Dane DEM</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Pokaż średnią wysokość</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Strefa czasowa:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Wysokość</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Strefa czasowa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrowanie</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Źródła</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Wykrywanie postoju</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Promień:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Prędkość</translation>
</message>
@ -1411,149 +1431,151 @@
<translation>Obszary</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation type="unfinished"></translation>
<translation>Niestandardowe</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Wysoka rozdzielczość</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Wydrukowany obszar jest w przybliżeniu obszarem wyświetlania. Poziom powiększenia mapy nie zmienia się.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Poziom powiększenia mapy zostanie dostosowany w taki sposób, aby cała zawartość (ścieżki/punkty) wchodziła do drukowanego obszaru, a rozdzielczość mapy była jak najbliższa rozdzielczości wydruku.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Nazwa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Dystans</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Czas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Czas ruchu</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Liczba elementów (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Oddzielna strona wykresu</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Tryb wydruku</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Nagłówek</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Używaj OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Włącz HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Rozmiar pamięci podręcznej obrazu:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Limit czasu połączenia:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>System</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Wygląd</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Mapy</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Dane</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Drukowanie i eksport</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Opcje</translation>
</message>
@ -1629,7 +1651,7 @@
<message>
<location filename="../src/GUI/routeitem.cpp" line="19"/>
<source>Comment</source>
<translation type="unfinished"></translation>
<translation>Komentarz</translation>
</message>
<message>
<location filename="../src/GUI/routeitem.cpp" line="20"/>
@ -1639,7 +1661,7 @@
<message>
<location filename="../src/GUI/routeitem.cpp" line="31"/>
<source>Links</source>
<translation type="unfinished"></translation>
<translation>Linki</translation>
</message>
</context>
<context>
@ -1850,7 +1872,7 @@
<message>
<location filename="../src/GUI/trackitem.cpp" line="17"/>
<source>Comment</source>
<translation type="unfinished"></translation>
<translation>Komentarz</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="18"/>
@ -1873,52 +1895,52 @@
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation type="unfinished"></translation>
<translation>Odnośniki do stron</translation>
</message>
</context>
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Nazwa</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Współrzędne</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Wysokość</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Opis</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation type="unfinished"></translation>
<translation>Komentarz</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adres</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation type="unfinished"></translation>
<translation>Linki</translation>
</message>
</context>
</TS>

View File

@ -494,16 +494,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Distância</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Tempo</translation>
</message>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Tempo em movimento</translation>
</message>
@ -780,87 +780,87 @@
<translation>Abrir arquivo</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Erro ao carregar arquivo de dados:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Linha: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Abrir aquivo POI</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Erro ao carregar arquivo POI:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Trilhas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Rotas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Waypoints</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Áreas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Estatísticas</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Nome</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Abrir arquivo de mapa</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Erro ao carregar o mapa:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Nenhum arquivo carregado</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n arquivo</numerusform>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Dados não disponíveis</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Distância</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>h</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Tempo</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Formatos suportados</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>Mapas MBTiles</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Mapas Garmin JNX</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Mapas Garmin IMG</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>Mapas OziExplorer</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>Mapas/Atlas TrekBuddy</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>Imagens GeoTIFF</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>Mapas TwoNav</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Mapas online</translation>
</message>
@ -1168,391 +1168,413 @@
<translation>Áreas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Cor de base:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Deslocamento de paleta:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Usar anti-aliasing</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Cor de waypoint:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Tamanho de waypoint:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Cor:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Tamanho:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Waypoints</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Cor do POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Tamanho do POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POIs</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Largura de linha:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Cor do cursor:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Cor de fundo:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Opacidade do mapa:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Caminhos</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Pontos</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Gráficos</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Mapa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Tamanho de janela da média móvel</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Altitude:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Velocidade:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Frequência cardiaca:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Cadência:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Potência:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Suavizar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Eliminar valores atípicos do GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Suavizar:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automática</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Personalizada</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Velocidade Mínima:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Duração mínima:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Calculada a partir da distância/tempo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Gravada através de dispositivo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation type="unfinished"></translation>
<translation>Mostrar velocidade secundária</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>Dados de GPS</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>Dados de DEM</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Mostrar altitude secundária</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Fuso horário:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Velocidade</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Altitude</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Fuso horário</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtragem</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Fontes</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Detecção de pausa</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Raio:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Alta resolução</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>A área de impressão é aproximadamente a área de tela. O nível de zoom do mapa não é alterado.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>O nível de zoom será alterado de modo que todo o conteúdo (trilhas/waypoints) caiba na área de impressão e a resolução seja tão próxima quanto possível da resolução de impressão.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Nome</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Distância</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Tempo</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Tempo em movimento</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Número de itens (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Separar página de gráficos</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Modo de impressão</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Cabeçalho</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Usar OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Habilitar HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Tamanho do cache de imagens:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Tempo de espera de conexão:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Sistema</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Aparência</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Mapas</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Dados</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Imprimir e Exportar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Preferências</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Links</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Nome</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Coordenadas</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Altitude</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Descrição</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Anotação</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Endereço</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Links</translation>
</message>

View File

@ -351,7 +351,7 @@
<translation>Открыть файл</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Открыть файл с точками POI</translation>
</message>
@ -518,8 +518,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Время движения</translation>
</message>
@ -674,32 +674,32 @@
<translation>Каталог со стилями:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Области</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Статистика</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Открыть файл карты</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Нет загруженных файлов</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Дата</translation>
</message>
@ -754,19 +754,19 @@
<translation>Каталог кеша тайлов:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Маршруты</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Ошибка загрузки карты:</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n файл</numerusform>
@ -790,8 +790,8 @@
<translation>Экспорт в PDF</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Точки</translation>
</message>
@ -816,29 +816,29 @@
<translation>Последний файл</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Ошибка загрузки файла данных:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Строка: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Ошибка загрузки файла с точками POI:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Имя</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Треки</translation>
</message>
@ -855,16 +855,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Расстояние</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Время</translation>
</message>
@ -914,59 +914,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>м</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>км</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>фт</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Данные отсутствуют</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>мл</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>мор. мл</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>с</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>мин</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>ч</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Расстояние</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Время</translation>
</message>
@ -1017,47 +1017,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Все поддерживаемые файлы</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles карты</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX карты</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG карты</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer карты</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy карты/атласы</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF изображения</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav карты</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Источники онлайн карт</translation>
</message>
@ -1065,12 +1065,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Основной цвет:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Смещение палитры:</translation>
</message>
@ -1105,39 +1105,39 @@
<translation>Маршруты</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Применять сглаживание</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Толщина линии:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Цвет фона:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Треки</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Прозрачность карты:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Карты</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Графики</translation>
</message>
@ -1181,197 +1181,217 @@
<translation>Стиль:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Цвет точки:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Размер точки:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Цвет:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Размер:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Точки</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Цвет точки POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Размер точки POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>Точки POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Цвет ползунка:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Точки</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Ширины окна усреднения</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Высота:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Скорость:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Пульс:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Каденс:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Мощность:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Сглаживание</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Устранять GPS выбросы</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Сглаживание:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Автоматическое</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>мл/ч</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>уз</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>км/ч</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>с</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Минимальная скорость:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Минимальная продолжительность:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Вычисленная из расстояния/времени</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Записанная устройством</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Показывать обе одновременно</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS данные</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM данные</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Показывать обе одновременно</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Часовой пояс:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Высота</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Часовой пояс</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Фильтрация</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Источники</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Обнаружение остановок</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Радиус:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Скорость</translation>
</message>
@ -1411,149 +1431,151 @@
<translation>Области</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Пользовательскoe</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>мл</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>мор. мл</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>км</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>Точки POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Высокое разрешение</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Печатная область примерно совпадает с областью отображения. Уровень приближения карты не изменяется.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Уровень приближения будет изменен так, чтобы всё содержимое (треки/точки) уместились в печатную область и разрешение карты было бы как можно ближе к разрешению печати.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Имя</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Расстояние</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Время</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Время движения</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Количество объектов (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Отдельная страница с графиком</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Режим печати</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Заголовок</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Использовать OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Включить HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>МБ</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Размер кэша изображений:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Таймаут соединения:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Система</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Внешний вид</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Карты</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Данные</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Печать и экспорт</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Параметры</translation>
</message>
@ -1873,7 +1895,7 @@
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Ссылки</translation>
</message>
@ -1881,42 +1903,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Имя</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Координаты</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Высота</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Описание</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Комментарий</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Адрес</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Ссылки</translation>
</message>

View File

@ -361,7 +361,7 @@
<translation>Öppna fil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Öppna POI-fil</translation>
</message>
@ -528,8 +528,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Förflyttningstid</translation>
</message>
@ -684,35 +684,35 @@
<translation>Mapp för stilar:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Områden</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Statistik</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Öppna kartfil</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Fel vid inläsning av karta:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Inga filer inlästa</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n fil</numerusform>
@ -720,16 +720,16 @@
</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Rutter</translation>
</message>
@ -749,8 +749,8 @@
<translation>Exportera till PDF...</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Vägpunkter</translation>
</message>
@ -815,29 +815,29 @@
<translation>Mapp för kart-cache:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Fel vid inläsning av datafil:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Rad: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Fel vid inläsning av POI-fil:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Namn</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Spår</translation>
</message>
@ -854,16 +854,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Avstånd</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Tid</translation>
</message>
@ -913,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Ingen data tillgänglig</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>sek</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>min</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>tim</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Avstånd</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Tid</translation>
</message>
@ -1016,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Filer som stöds</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles-kartor</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX-kartor</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG-kartor</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer-kartor</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy-kartor/-atlaser</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF-bilder</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav-kartor</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Online-kartkällor</translation>
</message>
@ -1064,12 +1064,12 @@
<context>
<name>OptionsDialog</name>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Basfärg:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Palettskiftning:</translation>
</message>
@ -1104,39 +1104,39 @@
<translation>Rutter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Använd kantutjämning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Linjetjocklek:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Bakgrundsfärg:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Sökvägar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Kartopacitet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Karta</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Diagram</translation>
</message>
@ -1180,197 +1180,217 @@
<translation>Stil:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Navigeringspunktsfärg:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Navigeringspunktsstorlek:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Färg:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Storlek:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Navigeringspunkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>POI-färg:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>POI-storlek:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI:er</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Skjutreglagefärg:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Punkter</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Flyttar vanlig fönsterstorlek</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Höjd:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Hastighet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Hjärtfrekvens:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Stegfrekvens:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Kraft:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Utjämning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Eliminera GPS-extremvärden</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Utjämning:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Automatiskt</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>knop</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>sek</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Minsta hastighet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Kortast varaktighet:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Beräknad från distans/tid</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Inspelad av enhet</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Visa sekundär fart</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS-data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM-data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Visa sekundär stigning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>Utc</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Tidszon:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Stigning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Tidszon</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtrering</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Källor</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Pausa identifiering</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Radie:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Hastighet</translation>
</message>
@ -1410,149 +1430,151 @@
<translation>Områden</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Anpassat</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Högupplösning</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Det utskrivna området är ungefär detsamma som synligt område skärmen. Kartans zoomnivå ändras inte.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Zoomnivån kommer att ändras att hela innehållet (spår/vägpunkter) passar utskriftsområdet och kartresolutionen är nära som möjligt till utskriftsupplösningen.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Namn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Avstånd</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Tid</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Förflyttningstid</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Objektantal (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Separat diagramsida</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Utskriftsläge</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Rubrik</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Använd OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Aktivera HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Cashe-storlek för bilder:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Anslutningens tidsgräns:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>System</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Utseende</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Kartor</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Data</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Utskrift &amp; Export</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Alternativ</translation>
</message>
@ -1872,7 +1894,7 @@
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Länkar</translation>
</message>
@ -1880,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Namn</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordinater</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Höjd</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Beskrivning</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Kommentar</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adress</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Länkar</translation>
</message>

View File

@ -494,16 +494,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Mesafe</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Zaman</translation>
</message>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Hareket süresi</translation>
</message>
@ -780,90 +780,91 @@
<translation>Dosya </translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Veri dosyası yüklenirken hata oluştu:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Satır: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>POI dosyası </translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>POI dosyası yükleme hatası:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>İzler</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Rotalar</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Yer işaretleri</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Alanlar</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Tarih</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>İstatistikler</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Adı</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Harita dosyası </translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Harita yüklenirken hata oluştu:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Hiç dosya yüklenmedi</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n dosya</numerusform>
<numerusform>%n dosya</numerusform>
</translation>
</message>
</context>
@ -912,59 +913,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Data erişilemez</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Mesafe</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>ft</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>m</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>Km</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>dk</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>sa</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Zaman</translation>
</message>
@ -1015,47 +1016,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Desteklenen dosyalar</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles haritalar</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX haritalar</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG haritaları</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer haritalar</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy haritalar/atlaslar</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF görüntü</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav haritaları</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Online harita kaynakları</translation>
</message>
@ -1088,12 +1089,12 @@
<translation>HiDPI gösterim modu</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Temel renk:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Palet değişimi:</translation>
</message>
@ -1177,381 +1178,403 @@
<translation>Alanlar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Kenar yumuşatma kullan</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Yer işareti rengi:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Yer işareti boyutu:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Renk:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Boyut:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Yer işaretleri</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>POI renk:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>POI boyutu:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>POI&apos;ler</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Hat genişliği:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Kaydırıcı rengi:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Arka plan rengi:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Harita opaklığı:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Klasör konumları</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Noktalar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Grafikler</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Harita</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Ortalama pencere boyutuna taşıma</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Rakım:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Hız:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Nabız:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Kadans:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Güç:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Yumuşatma</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Aykırı GPS ele</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Yumuşatma:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Otomatik</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>mi/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>kn</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>km/h</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>s</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Asgari hız:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Minimum süre:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Mesafe/zamandan hesaplandı</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Cihazdan kaydedilen</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation type="unfinished"></translation>
<translation>İkincil hızı göster</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS verisi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM verisi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation type="unfinished"></translation>
<translation>İkincil rakımı göster</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation>Bölümleri kullan</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Saat dilimi:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Rakım</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Saat dilimi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Filtreleme</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Kaynaklar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Duraklama algılama</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Yarıçap:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Hız</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Özel</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>mi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>nmi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>Km</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Yüksek çözünürlük</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Yazdırılan alan yaklaşık olarak görüntü alanıdır. Harita zum seviyesi değişmez.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Yakınlaştırma seviyesi, tüm içeriğin (izler/yer işaretleri) yazdırılan alana sığması ve harita çözünürlüğünün baskı çözünürlüğüne olabildiğince yakın olacak şekilde değiştirilecektir.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Adı</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Tarih</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Mesafe</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Zaman</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Hareket süresi</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Öğe sayısı (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Ayrı grafik sayfası</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Yazdırma modu</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Başlık</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>OpenGL Kullan</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>HTTP/2 etkinleştir</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>MB</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Görüntü önbellek boyutu:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Bağlantı zaman ımı:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Sistem</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Görünüm</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Haritalar</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Veri</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Yazdır &amp; Dışa ver</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Seçenekler</translation>
</message>
@ -1627,7 +1650,7 @@
<message>
<location filename="../src/GUI/routeitem.cpp" line="19"/>
<source>Comment</source>
<translation type="unfinished"></translation>
<translation>Yorum</translation>
</message>
<message>
<location filename="../src/GUI/routeitem.cpp" line="20"/>
@ -1848,7 +1871,7 @@
<message>
<location filename="../src/GUI/trackitem.cpp" line="17"/>
<source>Comment</source>
<translation type="unfinished"></translation>
<translation>Yorum</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="18"/>
@ -1871,7 +1894,7 @@
<translation>Tarih</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Bağlantılar</translation>
</message>
@ -1879,42 +1902,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Adı</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Koordinatlar</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Rakım</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Tarih</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>ıklama</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation type="unfinished"></translation>
<translation>Yorum</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Adres</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Bağlantılar</translation>
</message>

View File

@ -494,16 +494,16 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="372"/>
<location filename="../src/GUI/gui.cpp" line="1068"/>
<location filename="../src/GUI/gui.cpp" line="1135"/>
<location filename="../src/GUI/gui.cpp" line="1081"/>
<location filename="../src/GUI/gui.cpp" line="1148"/>
<source>Distance</source>
<translation>Відстань</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="379"/>
<location filename="../src/GUI/gui.cpp" line="555"/>
<location filename="../src/GUI/gui.cpp" line="1071"/>
<location filename="../src/GUI/gui.cpp" line="1137"/>
<location filename="../src/GUI/gui.cpp" line="1084"/>
<location filename="../src/GUI/gui.cpp" line="1150"/>
<source>Time</source>
<translation>Час</translation>
</message>
@ -534,8 +534,8 @@
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="416"/>
<location filename="../src/GUI/gui.cpp" line="1073"/>
<location filename="../src/GUI/gui.cpp" line="1139"/>
<location filename="../src/GUI/gui.cpp" line="1086"/>
<location filename="../src/GUI/gui.cpp" line="1152"/>
<source>Moving time</source>
<translation>Час руху</translation>
</message>
@ -780,87 +780,87 @@
<translation>Відкрити файл</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="843"/>
<location filename="../src/GUI/gui.cpp" line="848"/>
<source>Error loading data file:</source>
<translation>Помилка завантаження файлу даних:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="846"/>
<location filename="../src/GUI/gui.cpp" line="881"/>
<location filename="../src/GUI/gui.cpp" line="851"/>
<location filename="../src/GUI/gui.cpp" line="886"/>
<source>Line: %1</source>
<translation>Строка: %1</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="854"/>
<location filename="../src/GUI/gui.cpp" line="859"/>
<source>Open POI file</source>
<translation>Відкрити файл із точками POI</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="878"/>
<location filename="../src/GUI/gui.cpp" line="883"/>
<source>Error loading POI file:</source>
<translation>Помилка під час завантаження файлу POI:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1042"/>
<location filename="../src/GUI/gui.cpp" line="1113"/>
<location filename="../src/GUI/gui.cpp" line="1055"/>
<location filename="../src/GUI/gui.cpp" line="1126"/>
<source>Tracks</source>
<translation>Треки</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1045"/>
<location filename="../src/GUI/gui.cpp" line="1115"/>
<location filename="../src/GUI/gui.cpp" line="1058"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<source>Routes</source>
<translation>Маршрути</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1048"/>
<location filename="../src/GUI/gui.cpp" line="1117"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1130"/>
<source>Waypoints</source>
<translation>Маршрутні точки</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1051"/>
<location filename="../src/GUI/gui.cpp" line="1119"/>
<location filename="../src/GUI/gui.cpp" line="1064"/>
<location filename="../src/GUI/gui.cpp" line="1132"/>
<source>Areas</source>
<translation>Області</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1057"/>
<location filename="../src/GUI/gui.cpp" line="1061"/>
<location filename="../src/GUI/gui.cpp" line="1125"/>
<location filename="../src/GUI/gui.cpp" line="1128"/>
<location filename="../src/GUI/gui.cpp" line="1070"/>
<location filename="../src/GUI/gui.cpp" line="1074"/>
<location filename="../src/GUI/gui.cpp" line="1138"/>
<location filename="../src/GUI/gui.cpp" line="1141"/>
<source>Date</source>
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1094"/>
<location filename="../src/GUI/gui.cpp" line="1095"/>
<location filename="../src/GUI/gui.cpp" line="1107"/>
<location filename="../src/GUI/gui.cpp" line="1108"/>
<source>Statistics</source>
<translation>Статистика</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1109"/>
<location filename="../src/GUI/gui.cpp" line="1122"/>
<source>Name</source>
<translation>Імя</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1327"/>
<location filename="../src/GUI/gui.cpp" line="1340"/>
<source>Open map file</source>
<translation>Відкрити файл мапи</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1347"/>
<location filename="../src/GUI/gui.cpp" line="1378"/>
<location filename="../src/GUI/gui.cpp" line="1360"/>
<location filename="../src/GUI/gui.cpp" line="1391"/>
<source>Error loading map:</source>
<translation>Помилка завантаження мапи:</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="1388"/>
<location filename="../src/GUI/gui.cpp" line="1401"/>
<source>No files loaded</source>
<translation>Файли не завантажені</translation>
</message>
<message numerus="yes">
<location filename="../src/GUI/gui.cpp" line="1392"/>
<location filename="../src/GUI/gui.cpp" line="1405"/>
<source>%n files</source>
<translation>
<numerusform>%n файл</numerusform>
@ -914,59 +914,59 @@
<context>
<name>GraphView</name>
<message>
<location filename="../src/GUI/graphview.cpp" line="46"/>
<location filename="../src/GUI/graphview.cpp" line="47"/>
<source>Data not available</source>
<translation>Дані відсутні</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="66"/>
<location filename="../src/GUI/graphview.cpp" line="177"/>
<location filename="../src/GUI/graphview.cpp" line="67"/>
<location filename="../src/GUI/graphview.cpp" line="178"/>
<source>Distance</source>
<translation>Відстань</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="110"/>
<location filename="../src/GUI/graphview.cpp" line="118"/>
<location filename="../src/GUI/graphview.cpp" line="111"/>
<location filename="../src/GUI/graphview.cpp" line="119"/>
<source>ft</source>
<translation>фт</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="113"/>
<location filename="../src/GUI/graphview.cpp" line="114"/>
<source>mi</source>
<translation>миля</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="121"/>
<location filename="../src/GUI/graphview.cpp" line="122"/>
<source>nmi</source>
<translation>мор.миля</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="126"/>
<location filename="../src/GUI/graphview.cpp" line="127"/>
<source>m</source>
<translation>м</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="129"/>
<location filename="../src/GUI/graphview.cpp" line="130"/>
<source>km</source>
<translation>км</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="135"/>
<location filename="../src/GUI/graphview.cpp" line="136"/>
<source>s</source>
<translation>с</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="138"/>
<location filename="../src/GUI/graphview.cpp" line="139"/>
<source>min</source>
<translation>хв</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="141"/>
<location filename="../src/GUI/graphview.cpp" line="142"/>
<source>h</source>
<translation>год</translation>
</message>
<message>
<location filename="../src/GUI/graphview.cpp" line="179"/>
<location filename="../src/GUI/graphview.cpp" line="180"/>
<source>Time</source>
<translation>Час</translation>
</message>
@ -1017,47 +1017,47 @@
<context>
<name>MapList</name>
<message>
<location filename="../src/map/maplist.cpp" line="103"/>
<location filename="../src/map/maplist.cpp" line="104"/>
<source>Supported files</source>
<translation>Всі підтримувані формати</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="105"/>
<location filename="../src/map/maplist.cpp" line="106"/>
<source>Garmin IMG maps</source>
<translation>Garmin IMG мапи</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="107"/>
<location filename="../src/map/maplist.cpp" line="108"/>
<source>Garmin JNX maps</source>
<translation>Garmin JNX мапи</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="108"/>
<location filename="../src/map/maplist.cpp" line="109"/>
<source>OziExplorer maps</source>
<translation>OziExplorer мапи</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="109"/>
<location filename="../src/map/maplist.cpp" line="110"/>
<source>MBTiles maps</source>
<translation>MBTiles мапи</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="110"/>
<location filename="../src/map/maplist.cpp" line="111"/>
<source>TrekBuddy maps/atlases</source>
<translation>TrekBuddy мапи/атласи</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="111"/>
<location filename="../src/map/maplist.cpp" line="112"/>
<source>GeoTIFF images</source>
<translation>GeoTIFF зображення</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="112"/>
<location filename="../src/map/maplist.cpp" line="113"/>
<source>TwoNav maps</source>
<translation>TwoNav мапи</translation>
</message>
<message>
<location filename="../src/map/maplist.cpp" line="113"/>
<location filename="../src/map/maplist.cpp" line="114"/>
<source>Online map sources</source>
<translation>Онлайнові джерела мап</translation>
</message>
@ -1169,391 +1169,413 @@
<translation>Області</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="173"/>
<source>Base color:</source>
<translation>Основний колір:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="177"/>
<location filename="../src/GUI/optionsdialog.cpp" line="174"/>
<source>Palette shift:</source>
<translation>Зміщення палітри:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="179"/>
<location filename="../src/GUI/optionsdialog.cpp" line="262"/>
<location filename="../src/GUI/optionsdialog.cpp" line="176"/>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<source>Use anti-aliasing</source>
<translation>Використовувати згладжування</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="209"/>
<source>Waypoint color:</source>
<translation>Колір маршрутної точки:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="210"/>
<source>Waypoint size:</source>
<translation>Розмір маршрутної точки:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="215"/>
<location filename="../src/GUI/optionsdialog.cpp" line="231"/>
<location filename="../src/GUI/optionsdialog.cpp" line="212"/>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<source>Color:</source>
<translation>Колір:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="216"/>
<location filename="../src/GUI/optionsdialog.cpp" line="232"/>
<location filename="../src/GUI/optionsdialog.cpp" line="213"/>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<source>Size:</source>
<translation>Розмір:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="217"/>
<location filename="../src/GUI/optionsdialog.cpp" line="214"/>
<source>Waypoints</source>
<translation>Маршрутні точки</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="228"/>
<location filename="../src/GUI/optionsdialog.cpp" line="225"/>
<source>POI color:</source>
<translation>Колір точки POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="229"/>
<location filename="../src/GUI/optionsdialog.cpp" line="226"/>
<source>POI size:</source>
<translation>Розмір точки POI:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="233"/>
<location filename="../src/GUI/optionsdialog.cpp" line="230"/>
<source>POIs</source>
<translation>Точки POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="259"/>
<location filename="../src/GUI/optionsdialog.cpp" line="256"/>
<source>Line width:</source>
<translation>Товщина лінії:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="260"/>
<location filename="../src/GUI/optionsdialog.cpp" line="257"/>
<source>Slider color:</source>
<translation>Колір повзунка:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="283"/>
<location filename="../src/GUI/optionsdialog.cpp" line="280"/>
<source>Background color:</source>
<translation>Колір фону:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="284"/>
<location filename="../src/GUI/optionsdialog.cpp" line="281"/>
<source>Map opacity:</source>
<translation>Прозорість мапи:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<location filename="../src/GUI/optionsdialog.cpp" line="291"/>
<source>Paths</source>
<translation>Шляхи</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="295"/>
<location filename="../src/GUI/optionsdialog.cpp" line="292"/>
<source>Points</source>
<translation>Точки</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="296"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<location filename="../src/GUI/optionsdialog.cpp" line="293"/>
<location filename="../src/GUI/optionsdialog.cpp" line="636"/>
<source>Graphs</source>
<translation>Графіки</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="297"/>
<location filename="../src/GUI/optionsdialog.cpp" line="294"/>
<source>Map</source>
<translation>Мапи</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="304"/>
<location filename="../src/GUI/optionsdialog.cpp" line="301"/>
<source>Moving average window size</source>
<translation>Ширина ковзного вікна усереднення</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<location filename="../src/GUI/optionsdialog.cpp" line="444"/>
<location filename="../src/GUI/optionsdialog.cpp" line="320"/>
<location filename="../src/GUI/optionsdialog.cpp" line="479"/>
<source>Elevation:</source>
<translation>Висота:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<location filename="../src/GUI/optionsdialog.cpp" line="443"/>
<location filename="../src/GUI/optionsdialog.cpp" line="321"/>
<location filename="../src/GUI/optionsdialog.cpp" line="478"/>
<source>Speed:</source>
<translation>Швидкість:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="325"/>
<location filename="../src/GUI/optionsdialog.cpp" line="322"/>
<source>Heart rate:</source>
<translation>Пульс:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<location filename="../src/GUI/optionsdialog.cpp" line="323"/>
<source>Cadence:</source>
<translation>Каденс:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="327"/>
<location filename="../src/GUI/optionsdialog.cpp" line="324"/>
<source>Power:</source>
<translation>Потужність:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="329"/>
<location filename="../src/GUI/optionsdialog.cpp" line="326"/>
<source>Smoothing</source>
<translation>Згладжування</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="333"/>
<location filename="../src/GUI/optionsdialog.cpp" line="330"/>
<source>Eliminate GPS outliers</source>
<translation>Виключати GPS викиди</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="342"/>
<location filename="../src/GUI/optionsdialog.cpp" line="339"/>
<source>Smoothing:</source>
<translation>Згладжування:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="353"/>
<location filename="../src/GUI/optionsdialog.cpp" line="350"/>
<source>Automatic</source>
<translation>Автоматичне</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="354"/>
<location filename="../src/GUI/optionsdialog.cpp" line="351"/>
<location filename="../src/GUI/optionsdialog.cpp" line="422"/>
<source>Custom</source>
<translation>Користувацьке</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<location filename="../src/GUI/optionsdialog.cpp" line="364"/>
<source>mi/h</source>
<translation>миль/год</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<location filename="../src/GUI/optionsdialog.cpp" line="367"/>
<source>kn</source>
<translation>вузол</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="373"/>
<location filename="../src/GUI/optionsdialog.cpp" line="370"/>
<source>km/h</source>
<translation>км/год</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="377"/>
<location filename="../src/GUI/optionsdialog.cpp" line="600"/>
<location filename="../src/GUI/optionsdialog.cpp" line="374"/>
<location filename="../src/GUI/optionsdialog.cpp" line="659"/>
<source>s</source>
<translation>с</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="393"/>
<location filename="../src/GUI/optionsdialog.cpp" line="390"/>
<source>Minimal speed:</source>
<translation>Мінімальна швидкість:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="394"/>
<location filename="../src/GUI/optionsdialog.cpp" line="391"/>
<source>Minimal duration:</source>
<translation>Мінімальна тривалість:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="404"/>
<location filename="../src/GUI/optionsdialog.cpp" line="401"/>
<source>Computed from distance/time</source>
<translation>Обчислено з відстань/час</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="405"/>
<location filename="../src/GUI/optionsdialog.cpp" line="402"/>
<source>Recorded by device</source>
<translation>Записано пристроєм</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<location filename="../src/GUI/optionsdialog.cpp" line="407"/>
<source>Show secondary speed</source>
<translation>Показувати обидві одночасно</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="413"/>
<location filename="../src/GUI/optionsdialog.cpp" line="410"/>
<source>GPS data</source>
<translation>GPS дані</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="414"/>
<location filename="../src/GUI/optionsdialog.cpp" line="411"/>
<source>DEM data</source>
<translation>DEM дані</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="419"/>
<location filename="../src/GUI/optionsdialog.cpp" line="416"/>
<source>Show secondary elevation</source>
<translation>Показувати обидві одночасно</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="455"/>
<location filename="../src/GUI/optionsdialog.cpp" line="420"/>
<source>UTC</source>
<translation>UTC</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="442"/>
<source>Use segments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="481"/>
<source>Time zone:</source>
<translation>Часовий пояс:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="498"/>
<source>Speed</source>
<translation>Швидкість</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="462"/>
<location filename="../src/GUI/optionsdialog.cpp" line="505"/>
<source>Elevation</source>
<translation>Висота</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="473"/>
<location filename="../src/GUI/optionsdialog.cpp" line="514"/>
<source>Time zone</source>
<translation>Часовий пояс</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="532"/>
<source>Filtering</source>
<translation>Фільтрування</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="474"/>
<location filename="../src/GUI/optionsdialog.cpp" line="533"/>
<source>Sources</source>
<translation>Джерела</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="475"/>
<location filename="../src/GUI/optionsdialog.cpp" line="534"/>
<source>Pause detection</source>
<translation>Виявлення пауз</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="487"/>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<source>mi</source>
<translation>миля</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="490"/>
<location filename="../src/GUI/optionsdialog.cpp" line="549"/>
<source>nmi</source>
<translation>мор.миля</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="493"/>
<location filename="../src/GUI/optionsdialog.cpp" line="552"/>
<source>km</source>
<translation>км</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="497"/>
<location filename="../src/GUI/optionsdialog.cpp" line="556"/>
<source>Radius:</source>
<translation>Радіус:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="503"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<location filename="../src/GUI/optionsdialog.cpp" line="562"/>
<location filename="../src/GUI/optionsdialog.cpp" line="702"/>
<source>POI</source>
<translation>Точки POI</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="510"/>
<location filename="../src/GUI/optionsdialog.cpp" line="569"/>
<source>WYSIWYG</source>
<translation>WYSIWYG (Візуальний редактор)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="511"/>
<location filename="../src/GUI/optionsdialog.cpp" line="570"/>
<source>High-Resolution</source>
<translation>Висока роздільна здатність</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="516"/>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<source>The printed area is approximately the display area. The map zoom level does not change.</source>
<translation>Область друку є приблизною областю відображення. Рівень масштабування мапи не змінюється.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="518"/>
<location filename="../src/GUI/optionsdialog.cpp" line="577"/>
<source>The zoom level will be changed so that the whole content (tracks/waypoints) fits to the printed area and the map resolution is as close as possible to the print resolution.</source>
<translation>Масштаб буде змінено так, щоби весь зміст (треки/маршрутні точки) вмістився на друковану область, а роздільна здатність мапи була якомога наближеною до роздільної здатності друку.</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="540"/>
<location filename="../src/GUI/optionsdialog.cpp" line="599"/>
<source>Name</source>
<translation>Імя</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="542"/>
<location filename="../src/GUI/optionsdialog.cpp" line="601"/>
<source>Date</source>
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="544"/>
<location filename="../src/GUI/optionsdialog.cpp" line="603"/>
<source>Distance</source>
<translation>Відстань</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="546"/>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<source>Time</source>
<translation>Час</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="548"/>
<location filename="../src/GUI/optionsdialog.cpp" line="607"/>
<source>Moving time</source>
<translation>Час руху</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="550"/>
<location filename="../src/GUI/optionsdialog.cpp" line="609"/>
<source>Item count (&gt;1)</source>
<translation>Кількість обєктів (&gt;1)</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="565"/>
<location filename="../src/GUI/optionsdialog.cpp" line="624"/>
<source>Separate graph page</source>
<translation>Окрема сторінка із графіком</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="575"/>
<location filename="../src/GUI/optionsdialog.cpp" line="634"/>
<source>Print mode</source>
<translation>Режим друку</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="576"/>
<location filename="../src/GUI/optionsdialog.cpp" line="635"/>
<source>Header</source>
<translation>Заголовок</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="584"/>
<location filename="../src/GUI/optionsdialog.cpp" line="643"/>
<source>Use OpenGL</source>
<translation>Використовувати OpenGL</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="587"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<source>Enable HTTP/2</source>
<translation>Дозволити HTTP/2</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="594"/>
<location filename="../src/GUI/optionsdialog.cpp" line="653"/>
<source>MB</source>
<translation>МБ</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="604"/>
<location filename="../src/GUI/optionsdialog.cpp" line="663"/>
<source>Image cache size:</source>
<translation>Розмір кешу зображень:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="605"/>
<location filename="../src/GUI/optionsdialog.cpp" line="664"/>
<source>Connection timeout:</source>
<translation>Час зєднання вичерпаний:</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="621"/>
<location filename="../src/GUI/optionsdialog.cpp" line="646"/>
<location filename="../src/GUI/optionsdialog.cpp" line="421"/>
<location filename="../src/GUI/optionsdialog.cpp" line="680"/>
<location filename="../src/GUI/optionsdialog.cpp" line="705"/>
<source>System</source>
<translation>Система</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="639"/>
<location filename="../src/GUI/optionsdialog.cpp" line="698"/>
<source>Appearance</source>
<translation>Зовнішній вигляд</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="641"/>
<location filename="../src/GUI/optionsdialog.cpp" line="700"/>
<source>Maps</source>
<translation>Мапи</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="642"/>
<location filename="../src/GUI/optionsdialog.cpp" line="701"/>
<source>Data</source>
<translation>Дані</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="644"/>
<location filename="../src/GUI/optionsdialog.cpp" line="703"/>
<source>Print &amp; Export</source>
<translation>Друк та експорт</translation>
</message>
<message>
<location filename="../src/GUI/optionsdialog.cpp" line="673"/>
<location filename="../src/GUI/optionsdialog.cpp" line="732"/>
<source>Options</source>
<translation>Налаштування</translation>
</message>
@ -1873,7 +1895,7 @@
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/trackitem.cpp" line="35"/>
<location filename="../src/GUI/trackitem.cpp" line="41"/>
<source>Links</source>
<translation>Посилання</translation>
</message>
@ -1881,42 +1903,42 @@
<context>
<name>WaypointItem</name>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="21"/>
<location filename="../src/GUI/waypointitem.cpp" line="28"/>
<source>Name</source>
<translation>Імя</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="22"/>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<source>Coordinates</source>
<translation>Координати</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="29"/>
<location filename="../src/GUI/waypointitem.cpp" line="36"/>
<source>Elevation</source>
<translation>Висота</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="32"/>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<source>Date</source>
<translation>Дата</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="35"/>
<location filename="../src/GUI/waypointitem.cpp" line="47"/>
<source>Description</source>
<translation>Опис</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="39"/>
<location filename="../src/GUI/waypointitem.cpp" line="51"/>
<source>Comment</source>
<translation>Коментар</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="52"/>
<location filename="../src/GUI/waypointitem.cpp" line="64"/>
<source>Address</source>
<translation>Адреса</translation>
</message>
<message>
<location filename="../src/GUI/waypointitem.cpp" line="63"/>
<location filename="../src/GUI/waypointitem.cpp" line="75"/>
<source>Links</source>
<translation>Посилання</translation>
</message>

View File

@ -7,7 +7,7 @@
; The name of the installer
Name "GPXSee"
; Program version
!define VERSION "7.28"
!define VERSION "7.32"
; The file to write
OutFile "GPXSee-${VERSION}.exe"
@ -177,6 +177,7 @@ SectionGroup "Localization" SEC_LOCALIZATION
!insertmacro LOCALIZATION "French" "fr"
!insertmacro LOCALIZATION "German" "de"
!insertmacro LOCALIZATION "Hungarian" "hu"
!insertmacro LOCALIZATION "Italian" "it"
!insertmacro LOCALIZATION "Norwegian" "nb"
!insertmacro LOCALIZATION "Polish" "pl"
!insertmacro LOCALIZATION "Portuguese (Brazil)" "pt_BR"

View File

@ -7,7 +7,7 @@
; The name of the installer
Name "GPXSee"
; Program version
!define VERSION "7.28"
!define VERSION "7.32"
; The file to write
OutFile "GPXSee-${VERSION}_x64.exe"
@ -184,6 +184,7 @@ SectionGroup "Localization" SEC_LOCALIZATION
!insertmacro LOCALIZATION "French" "fr"
!insertmacro LOCALIZATION "German" "de"
!insertmacro LOCALIZATION "Hungarian" "hu"
!insertmacro LOCALIZATION "Italian" "it"
!insertmacro LOCALIZATION "Norwegian" "nb"
!insertmacro LOCALIZATION "Polish" "pl"
!insertmacro LOCALIZATION "Portuguese (Brazil)" "pt_BR"

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<map xmlns="http://www.gpxsee.org/map/1.4" type="WMTS">
<name>Antarctica</name>
<url type="REST">https://gis.ngdc.noaa.gov/arcgis/rest/services/antarctic/antarctic_basemap/MapServer/WMTS/1.0.0/WMTSCapabilities.xml</url>
<url type="REST">https://tiles.arcgis.com/tiles/C8EMgrsFcRFL6LrL/arcgis/rest/services/Antarctic_Basemap/MapServer/WMTS/1.0.0/WMTSCapabilities.xml</url>
<copyright>NOAA National Centers for Environmental Information (NCEI); International Bathymetric Chart of the Southern Ocean (IBCSO); General Bathymetric Chart of the Oceans (GEBCO); Natural Earth</copyright>
<layer>antarctic_antarctic_basemap</layer>
<layer>Antarctic_Basemap</layer>
<set>default028mm</set>
</map>

View File

@ -248,7 +248,7 @@ void GUI::createActions()
_reloadFileAction->setMenuRole(QAction::NoRole);
_reloadFileAction->setShortcut(RELOAD_SHORTCUT);
_reloadFileAction->setActionGroup(_fileActionGroup);
connect(_reloadFileAction, SIGNAL(triggered()), this, SLOT(reloadFile()));
connect(_reloadFileAction, SIGNAL(triggered()), this, SLOT(reloadFiles()));
addAction(_reloadFileAction);
_statisticsAction = new QAction(tr("Statistics..."), this);
_statisticsAction->setMenuRole(QAction::NoRole);
@ -791,7 +791,12 @@ bool GUI::loadFile(const QString &fileName)
_trackDistance += track.distance();
_time += track.time();
_movingTime += track.movingTime();
const QDate &date = track.date().date();
#ifdef ENABLE_TIMEZONES
const QDateTime date = track.date().toTimeZone(
_options.timeZone.zone());
#else // ENABLE_TIMEZONES
const QDateTime &date = track.date();
#endif // ENABLE_TIMEZONES
if (_dateRange.first.isNull() || _dateRange.first > date)
_dateRange.first = date;
if (_dateRange.second.isNull() || _dateRange.second < date)
@ -965,6 +970,7 @@ void GUI::openOptions()
SET_TRACK_OPTION(dataUseDEM, useDEM);
SET_TRACK_OPTION(showSecondaryElevation, showSecondaryElevation);
SET_TRACK_OPTION(showSecondarySpeed, showSecondarySpeed);
SET_TRACK_OPTION(useSegments, useSegments);
SET_ROUTE_OPTION(dataUseDEM, useDEM);
SET_ROUTE_OPTION(showSecondaryElevation, showSecondaryElevation);
@ -990,9 +996,16 @@ void GUI::openOptions()
_mapView->setDevicePixelRatio(devicePixelRatioF(),
options.hidpiMap ? devicePixelRatioF() : 1.0);
#endif // ENABLE_HIDPI
#ifdef ENABLE_TIMEZONES
if (options.timeZone != _options.timeZone) {
_mapView->setTimeZone(options.timeZone.zone());
_dateRange.first = _dateRange.first.toTimeZone(options.timeZone.zone());
_dateRange.second = _dateRange.second.toTimeZone(options.timeZone.zone());
}
#endif // ENABLE_TIMEZONES
if (reload)
reloadFile();
reloadFiles();
_options = options;
}
@ -1185,7 +1198,7 @@ void GUI::plot(QPrinter *printer)
}
}
void GUI::reloadFile()
void GUI::reloadFiles()
{
_trackCount = 0;
_routeCount = 0;
@ -1195,7 +1208,7 @@ void GUI::reloadFile()
_routeDistance = 0;
_time = 0;
_movingTime = 0;
_dateRange = DateRange(QDate(), QDate());
_dateRange = DateTimeRange(QDateTime(), QDateTime());
_pathName = QString();
for (int i = 0; i < _tabs.count(); i++)
@ -1229,7 +1242,7 @@ void GUI::closeFiles()
_routeDistance = 0;
_time = 0;
_movingTime = 0;
_dateRange = DateRange(QDate(), QDate());
_dateRange = DateTimeRange(QDateTime(), QDateTime());
_pathName = QString();
_sliderPos = 0;
@ -1867,6 +1880,13 @@ void GUI::writeSettings()
if (_options.showSecondarySpeed != SHOW_SECONDARY_SPEED_DEFAULT)
settings.setValue(SHOW_SECONDARY_SPEED_SETTING,
_options.showSecondarySpeed);
#ifdef ENABLE_TIMEZONES
if (_options.timeZone != TimeZoneInfo())
settings.setValue(TIME_ZONE_SETTING, QVariant::fromValue(
_options.timeZone));
#endif // ENABLE_TIMEZONES
if (_options.useSegments != USE_SEGMENTS_DEFAULT)
settings.setValue(USE_SEGMENTS_SETTING, _options.useSegments);
if (_options.poiRadius != POI_RADIUS_DEFAULT)
settings.setValue(POI_RADIUS_SETTING, _options.poiRadius);
if (_options.useOpenGL != USE_OPENGL_DEFAULT)
@ -2139,6 +2159,11 @@ void GUI::readSettings()
_options.showSecondarySpeed = settings.value(
SHOW_SECONDARY_SPEED_SETTING,
SHOW_SECONDARY_SPEED_DEFAULT).toBool();
#ifdef ENABLE_TIMEZONES
_options.timeZone = settings.value(TIME_ZONE_SETTING).value<TimeZoneInfo>();
#endif // ENABLE_TIMEZONES
_options.useSegments = settings.value(USE_SEGMENTS_SETTING,
USE_SEGMENTS_DEFAULT).toBool();
_options.automaticPause = settings.value(AUTOMATIC_PAUSE_SETTING,
AUTOMATIC_PAUSE_DEFAULT).toBool();
_options.pauseInterval = settings.value(PAUSE_INTERVAL_SETTING,
@ -2203,6 +2228,9 @@ void GUI::readSettings()
_options.hidpiMap ? devicePixelRatioF() : 1.0);
#endif // ENABLE_HIDPI
_mapView->setProjection(_options.projection);
#ifdef ENABLE_TIMEZONES
_mapView->setTimeZone(_options.timeZone.zone());
#endif // ENABLE_TIMEZONES
for (int i = 0; i < _tabs.count(); i++) {
_tabs.at(i)->setPalette(_options.palette);
@ -2227,6 +2255,7 @@ void GUI::readSettings()
Track::useDEM(_options.dataUseDEM);
Track::showSecondaryElevation(_options.showSecondaryElevation);
Track::showSecondarySpeed(_options.showSecondarySpeed);
Track::useSegments(_options.useSegments);
Route::useDEM(_options.dataUseDEM);
Route::showSecondaryElevation(_options.showSecondaryElevation);
Waypoint::useDEM(_options.dataUseDEM);

View File

@ -48,7 +48,7 @@ private slots:
void exportFile();
void openFile();
void closeAll();
void reloadFile();
void reloadFiles();
void statistics();
void openPOIFile();
void closePOIFiles();
@ -92,7 +92,7 @@ private slots:
void mapInitialized();
private:
typedef QPair<QDate, QDate> DateRange;
typedef QPair<QDateTime, QDateTime> DateTimeRange;
void loadPOIs();
void closeFiles();
@ -220,7 +220,7 @@ private:
int _trackCount, _routeCount, _areaCount, _waypointCount;
qreal _trackDistance, _routeDistance;
qreal _time, _movingTime;
DateRange _dateRange;
DateTimeRange _dateRange;
QString _pathName;
qreal _sliderPos;

View File

@ -59,8 +59,6 @@ MapView::MapView(Map *map, POI *poi, QWidget *parent)
_poi = poi;
connect(_poi, SIGNAL(pointsChanged()), this, SLOT(updatePOI()));
_units = Metric;
_coordinatesFormat = DecimalDegrees;
_mapOpacity = 1.0;
_backgroundColor = Qt::white;
_markerColor = Qt::red;
@ -122,7 +120,6 @@ PathItem *MapView::addTrack(const Track &track)
ti->setColor(_palette.nextColor());
ti->setWidth(_trackWidth);
ti->setStyle(_trackStyle);
ti->setUnits(_units);
ti->setVisible(_showTracks);
ti->setDigitalZoom(_digitalZoom);
ti->setMarkerColor(_markerColor);
@ -149,8 +146,6 @@ PathItem *MapView::addRoute(const Route &route)
ri->setColor(_palette.nextColor());
ri->setWidth(_routeWidth);
ri->setStyle(_routeStyle);
ri->setUnits(_units);
ri->setCoordinatesFormat(_coordinatesFormat);
ri->setVisible(_showRoutes);
ri->showWaypoints(_showRouteWaypoints);
ri->showWaypointLabels(_showWaypointLabels);
@ -200,7 +195,6 @@ void MapView::addWaypoints(const QVector<Waypoint> &waypoints)
wi->setSize(_waypointSize);
wi->setColor(_waypointColor);
wi->showLabel(_showWaypointLabels);
wi->setToolTipFormat(_units, _coordinatesFormat);
wi->setVisible(_showWaypoints);
wi->setDigitalZoom(_digitalZoom);
_scene->addItem(wi);
@ -401,7 +395,6 @@ void MapView::addPOI(const QList<Waypoint> &waypoints)
pi->showLabel(_showPOILabels);
pi->setVisible(_showPOI);
pi->setDigitalZoom(_digitalZoom);
pi->setToolTipFormat(_units, _coordinatesFormat);
_scene->addItem(pi);
_pois.insert(SearchPointer<Waypoint>(&(pi->waypoint())), pi);
@ -410,42 +403,32 @@ void MapView::addPOI(const QList<Waypoint> &waypoints)
void MapView::setUnits(Units units)
{
if (_units == units)
return;
_units = units;
_mapScale->setUnits(_units);
WaypointItem::setUnits(units);
PathItem::setUnits(units);
for (int i = 0; i < _tracks.count(); i++)
_tracks[i]->setUnits(_units);
_tracks[i]->updateTicks();
for (int i = 0; i < _routes.count(); i++)
_routes[i]->setUnits(_units);
for (int i = 0; i < _waypoints.size(); i++)
_waypoints.at(i)->setToolTipFormat(_units, _coordinatesFormat);
_routes[i]->updateTicks();
for (POIHash::const_iterator it = _pois.constBegin();
it != _pois.constEnd(); it++)
it.value()->setToolTipFormat(_units, _coordinatesFormat);
_mapScale->setUnits(units);
}
void MapView::setCoordinatesFormat(CoordinatesFormat format)
{
if (_coordinatesFormat == format)
return;
WaypointItem::setCoordinatesFormat(format);
_coordinatesFormat = format;
_coordinates->setFormat(format);
}
_coordinates->setFormat(_coordinatesFormat);
for (int i = 0; i < _waypoints.count(); i++)
_waypoints.at(i)->setToolTipFormat(_units, _coordinatesFormat);
for (int i = 0; i < _routes.count(); i++)
_routes[i]->setCoordinatesFormat(_coordinatesFormat);
for (POIHash::const_iterator it = _pois.constBegin();
it != _pois.constEnd(); it++)
it.value()->setToolTipFormat(_units, _coordinatesFormat);
void MapView::setTimeZone(const QTimeZone &zone)
{
#ifdef ENABLE_TIMEZONES
WaypointItem::setTimeZone(zone);
PathItem::setTimeZone(zone);
#else // ENABLE_TIMEZONES
Q_UNUSED(zone);
#endif // ENABLE_TIMEZONES
}
void MapView::clearMapCache()

View File

@ -31,6 +31,7 @@ class GraphItem;
class AreaItem;
class Area;
class GraphicsScene;
class QTimeZone;
class MapView : public QGraphicsView
{
@ -83,6 +84,7 @@ public slots:
void showTicks(bool show);
void clearMapCache();
void setCoordinatesFormat(CoordinatesFormat format);
void setTimeZone(const QTimeZone &zone);
void setDevicePixelRatio(qreal deviceRatio, qreal mapRatio);
void setProjection(int id);
@ -137,8 +139,6 @@ private:
POI *_poi;
Palette _palette;
Units _units;
CoordinatesFormat _coordinatesFormat;
qreal _mapOpacity;
Projection _projection;

View File

@ -167,11 +167,8 @@ QWidget *OptionsDialog::createAppearancePage()
// Palette & antialiasing
_baseColor = new ColorBox();
_baseColor->setColor(_options->palette.color());
_colorOffset = new QDoubleSpinBox();
_colorOffset->setMinimum(0);
_colorOffset->setMaximum(1.0);
_colorOffset->setSingleStep(0.01);
_colorOffset->setValue(_options->palette.shift());
_colorOffset = new PercentSlider();
_colorOffset->setValue(_options->palette.shift() * 100);
QFormLayout *paletteLayout = new QFormLayout();
paletteLayout->addRow(tr("Base color:"), _baseColor);
paletteLayout->addRow(tr("Palette shift:"), _colorOffset);
@ -419,6 +416,32 @@ QWidget *OptionsDialog::createDataPage()
_showSecondaryElevation = new QCheckBox(tr("Show secondary elevation"));
_showSecondaryElevation->setChecked(_options->showSecondaryElevation);
#ifdef ENABLE_TIMEZONES
_utcZone = new QRadioButton(tr("UTC"));
_systemZone = new QRadioButton(tr("System"));
_customZone = new QRadioButton(tr("Custom"));
if (_options->timeZone.type() == TimeZoneInfo::UTC)
_utcZone->setChecked(true);
else if (_options->timeZone.type() == TimeZoneInfo::System)
_systemZone->setChecked(true);
else
_customZone->setChecked(true);
_timeZone = new QComboBox();
_timeZone->setEnabled(_customZone->isChecked());
QList<QByteArray> zones = QTimeZone::availableTimeZoneIds();
for (int i = 0; i < zones.size(); i++)
_timeZone->addItem(zones.at(i));
_timeZone->setCurrentText(_options->timeZone.customZone().id());
connect(_customZone, SIGNAL(toggled(bool)), _timeZone,
SLOT(setEnabled(bool)));
QHBoxLayout *customZoneLayout = new QHBoxLayout();
customZoneLayout->addSpacing(20);
customZoneLayout->addWidget(_timeZone);
#endif // ENABLE_TIMEZONES
_useSegments = new QCheckBox(tr("Use segments"));
_useSegments->setChecked(_options->useSegments);
QWidget *sourceTab = new QWidget();
QVBoxLayout *sourceTabLayout = new QVBoxLayout();
@ -439,14 +462,34 @@ QWidget *OptionsDialog::createDataPage()
elevationOptions->addWidget(_dataDEMElevation);
elevationOptions->addWidget(_showSecondaryElevation);
#ifdef ENABLE_TIMEZONES
QButtonGroup *timeZoneGroup = new QButtonGroup(this);
timeZoneGroup->addButton(_utcZone);
timeZoneGroup->addButton(_systemZone);
timeZoneGroup->addButton(_customZone);
QVBoxLayout *zoneOptions = new QVBoxLayout();
zoneOptions->addWidget(_utcZone);
zoneOptions->addWidget(_systemZone);
zoneOptions->addWidget(_customZone);
zoneOptions->addItem(customZoneLayout);
#endif // ENABLE_TIMEZONES
QFormLayout *formLayout = new QFormLayout();
formLayout->addRow(tr("Speed:"), speedOptions);
formLayout->addRow(tr("Elevation:"), elevationOptions);
#ifdef ENABLE_TIMEZONES
formLayout->addRow(tr("Time zone:"), zoneOptions);
#endif // ENABLE_TIMEZONES
formLayout->addRow(_useSegments);
sourceTabLayout->addLayout(formLayout);
#else // Q_OS_MAC
QFormLayout *speedLayout = new QFormLayout();
QFormLayout *elevationLayout = new QFormLayout();
#ifdef ENABLE_TIMEZONES
QFormLayout *timeZoneLayout = new QFormLayout();
#endif // ENABLE_TIMEZONES
QFormLayout *segmentsLayout = new QFormLayout();
speedLayout->addWidget(_computedSpeed);
speedLayout->addWidget(_reportedSpeed);
@ -462,8 +505,24 @@ QWidget *OptionsDialog::createDataPage()
QGroupBox *elevationBox = new QGroupBox(tr("Elevation"));
elevationBox->setLayout(elevationLayout);
#ifdef ENABLE_TIMEZONES
timeZoneLayout->addWidget(_utcZone);
timeZoneLayout->addWidget(_systemZone);
timeZoneLayout->addWidget(_customZone);
timeZoneLayout->addItem(customZoneLayout);
QGroupBox *timeZoneBox = new QGroupBox(tr("Time zone"));
timeZoneBox->setLayout(timeZoneLayout);
#endif // ENABLE_TIMEZONES
segmentsLayout->addWidget(_useSegments);
sourceTabLayout->addWidget(speedBox);
sourceTabLayout->addWidget(elevationBox);
#ifdef ENABLE_TIMEZONES
sourceTabLayout->addWidget(timeZoneBox);
#endif // ENABLE_TIMEZONES
sourceTabLayout->addLayout(segmentsLayout);
#endif // Q_OS_MAC
sourceTabLayout->addStretch();
sourceTab->setLayout(sourceTabLayout);
@ -677,7 +736,7 @@ OptionsDialog::OptionsDialog(Options *options, QWidget *parent)
void OptionsDialog::accept()
{
_options->palette.setColor(_baseColor->color());
_options->palette.setShift(_colorOffset->value());
_options->palette.setShift(_colorOffset->value() / 100.0);
_options->mapOpacity = _mapOpacity->value();
_options->backgroundColor = _backgroundColor->color();
_options->trackWidth = _trackWidth->value();
@ -722,6 +781,14 @@ void OptionsDialog::accept()
_options->dataUseDEM = _dataDEMElevation->isChecked();
_options->showSecondaryElevation = _showSecondaryElevation->isChecked();
_options->showSecondarySpeed = _showSecondarySpeed->isChecked();
#ifdef ENABLE_TIMEZONES
_options->timeZone.setType(_utcZone->isChecked()
? TimeZoneInfo::UTC : _systemZone->isChecked()
? TimeZoneInfo::System : TimeZoneInfo::Custom);
_options->timeZone.setCustomZone(QTimeZone(_timeZone->currentText()
.toLatin1()));
#endif // ENABLE_TIMEZONES
_options->useSegments = _useSegments->isChecked();
qreal poiRadius = (_options->units == Imperial)
? _poiRadius->value() * MIINM : (_options->units == Nautical)

View File

@ -5,6 +5,9 @@
#include "common/config.h"
#include "palette.h"
#include "units.h"
#ifdef ENABLE_TIMEZONES
#include "timezoneinfo.h"
#endif // ENABLE_TIMEZONES
class ColorBox;
class StyleComboBox;
@ -17,6 +20,7 @@ class QRadioButton;
class PercentSlider;
class LimitedComboBox;
struct Options {
// Appearance
Palette palette;
@ -56,6 +60,10 @@ struct Options {
bool dataUseDEM;
bool showSecondaryElevation;
bool showSecondarySpeed;
#ifdef ENABLE_TIMEZONES
TimeZoneInfo timeZone;
#endif // ENABLE_TIMEZONES
bool useSegments;
// POI
int poiRadius;
// System
@ -103,7 +111,7 @@ private:
// Appearance
ColorBox *_baseColor;
QDoubleSpinBox *_colorOffset;
PercentSlider *_colorOffset;
PercentSlider *_mapOpacity;
ColorBox *_backgroundColor;
QSpinBox *_trackWidth;
@ -134,7 +142,6 @@ private:
OddSpinBox *_cadenceFilter;
OddSpinBox *_powerFilter;
QCheckBox *_outlierEliminate;
QRadioButton *_automaticPause;
QRadioButton *_manualPause;
QDoubleSpinBox *_pauseSpeed;
@ -145,6 +152,13 @@ private:
QRadioButton *_dataDEMElevation;
QCheckBox *_showSecondaryElevation;
QCheckBox *_showSecondarySpeed;
#ifdef ENABLE_TIMEZONES
QRadioButton *_utcZone;
QRadioButton *_systemZone;
QRadioButton *_customZone;
QComboBox *_timeZone;
#endif // ENABLE_TIMEZONES
QCheckBox *_useSegments;
// POI
QDoubleSpinBox *_poiRadius;
// System

View File

@ -21,12 +21,16 @@ static inline unsigned segments(qreal distance)
return ceil(distance / GEOGRAPHICAL_MILE);
}
Units PathItem::_units = Metric;
#ifdef ENABLE_TIMEZONES
QTimeZone PathItem::_timeZone = QTimeZone::utc();
#endif // ENABLE_TIMEZONES
PathItem::PathItem(const Path &path, Map *map, QGraphicsItem *parent)
: GraphicsItem(parent), _path(path), _map(map)
{
Q_ASSERT(_path.isValid());
_units = Metric;
_digitalZoom = 0;
_width = 3;
QBrush brush(Qt::SolidPattern);
@ -352,16 +356,6 @@ void PathItem::showTicks(bool show)
updateTicks();
}
void PathItem::setUnits(Units units)
{
if (_units == units)
return;
prepareGeometryChange();
_units = units;
updateTicks();
}
void PathItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event)
{
Q_UNUSED(event);

View File

@ -1,8 +1,12 @@
#ifndef PATHITEM_H
#define PATHITEM_H
#include "common/config.h"
#include <QGraphicsObject>
#include <QPen>
#ifdef ENABLE_TIMEZONES
#include <QTimeZone>
#endif // ENABLE_TIMEZONES
#include "data/path.h"
#include "markeritem.h"
#include "units.h"
@ -28,7 +32,6 @@ public:
void setMap(Map *map);
void setUnits(Units units);
void setColor(const QColor &color);
void setWidth(qreal width);
void setStyle(Qt::PenStyle style);
@ -37,6 +40,13 @@ public:
void showMarker(bool show);
void showTicks(bool show);
void updateTicks();
static void setUnits(Units units) {_units = units;}
#ifdef ENABLE_TIMEZONES
static void setTimeZone(const QTimeZone &zone) {_timeZone = zone;}
#endif // ENABLE_TIMEZONES
public slots:
void moveMarker(qreal distance);
void hover(bool hover);
@ -49,7 +59,10 @@ protected:
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event);
void mousePressEvent(QGraphicsSceneMouseEvent *event);
Units _units;
static Units _units;
#ifdef ENABLE_TIMEZONES
static QTimeZone _timeZone;
#endif // ENABLE_TIMEZONES
private:
const PathSegment *segment(qreal x) const;
@ -60,7 +73,6 @@ private:
qreal xInM() const;
unsigned tickSize() const;
void updateTicks();
Path _path;
Map *_map;

View File

@ -47,7 +47,6 @@ RouteItem::RouteItem(const Route &route, Map *map, QGraphicsItem *parent)
_desc = route.description();
_comment = route.comment();
_links = route.links();
_coordinatesFormat = DecimalDegrees;
}
void RouteItem::setMap(Map *map)
@ -58,28 +57,6 @@ void RouteItem::setMap(Map *map)
PathItem::setMap(map);
}
void RouteItem::setUnits(Units u)
{
if (_units == u)
return;
for (int i = 0; i < _waypoints.count(); i++)
_waypoints[i]->setToolTipFormat(u, _coordinatesFormat);
PathItem::setUnits(u);
}
void RouteItem::setCoordinatesFormat(CoordinatesFormat format)
{
if (_coordinatesFormat == format)
return;
_coordinatesFormat = format;
for (int i = 0; i < _waypoints.count(); i++)
_waypoints[i]->setToolTipFormat(_units, _coordinatesFormat);
}
void RouteItem::showWaypoints(bool show)
{
for (int i = 0; i < _waypoints.count(); i++)

View File

@ -19,8 +19,6 @@ public:
void setMap(Map *map);
void setUnits(Units u);
void setCoordinatesFormat(CoordinatesFormat format);
void showWaypoints(bool show);
void showWaypointLabels(bool show);
@ -31,7 +29,6 @@ private:
QString _desc;
QString _comment;
QVector<Link> _links;
CoordinatesFormat _coordinatesFormat;
QVector<WaypointItem*> _waypoints;
};

View File

@ -149,6 +149,9 @@
#define SHOW_SECONDARY_ELEVATION_DEFAULT false
#define SHOW_SECONDARY_SPEED_SETTING "showSecondarySpeed"
#define SHOW_SECONDARY_SPEED_DEFAULT false
#define TIME_ZONE_SETTING "timeZone"
#define USE_SEGMENTS_SETTING "useSegments"
#define USE_SEGMENTS_DEFAULT true
#define POI_RADIUS_SETTING "poiRadius"
#define POI_RADIUS_DEFAULT (int)(IMPERIAL_UNITS() ? MIINM : KMINM)
#define USE_OPENGL_SETTING "useOpenGL"

69
src/GUI/timezoneinfo.h Normal file
View File

@ -0,0 +1,69 @@
#ifndef TIMEZONEINFO_H
#define TIMEZONEINFO_H
#include <QTimeZone>
#include <QDataStream>
class TimeZoneInfo
{
public:
enum Type {
UTC,
System,
Custom
};
TimeZoneInfo() : _type(UTC), _customZone(QTimeZone::systemTimeZone()) {}
Type type() const {return _type;}
const QTimeZone &customZone() const {return _customZone;}
QTimeZone zone() const
{
if (_type == UTC)
return QTimeZone::utc();
else if (_type == System)
return QTimeZone::systemTimeZone();
else
return _customZone;
}
void setType(Type type) {_type = type;}
void setCustomZone(const QTimeZone &zone) {_customZone = zone;}
bool operator==(const TimeZoneInfo &other) const
{
if (_type == UTC || _type == System)
return _type == other._type;
else
return (other._type == Custom && _customZone == other._customZone);
}
bool operator!=(const TimeZoneInfo &other) {return !(*this == other);}
private:
friend QDataStream& operator<<(QDataStream &out, const TimeZoneInfo &info);
friend QDataStream& operator>>(QDataStream &in, TimeZoneInfo &info);
Type _type;
QTimeZone _customZone;
};
Q_DECLARE_METATYPE(TimeZoneInfo)
inline QDataStream &operator<<(QDataStream &out, const TimeZoneInfo &info)
{
out << static_cast<int>(info._type) << info._customZone;
return out;
}
inline QDataStream &operator>>(QDataStream &in, TimeZoneInfo &info)
{
int t;
in >> t;
info._type = static_cast<TimeZoneInfo::Type>(t);
in >> info._customZone;
return in;
}
#endif // TIMEZONEINFO_H

View File

@ -22,7 +22,13 @@ QString TrackItem::info() const
if (_movingTime > 0)
tt.insert(tr("Moving time"), Format::timeSpan(_movingTime));
if (!_date.isNull())
tt.insert(tr("Date"), _date.toString(Qt::SystemLocaleShortDate));
tt.insert(tr("Date"),
#ifdef ENABLE_TIMEZONES
_date.toTimeZone(_timeZone)
#else // ENABLE_TIMEZONES
_date
#endif // ENABLE_TIMEZONES
.toString(Qt::SystemLocaleShortDate));
if (!_links.isEmpty()) {
QString links;
for (int i = 0; i < _links.size(); i++) {

View File

@ -13,6 +13,13 @@
#define FS(size) \
((int)((qreal)size * 1.41))
Units WaypointItem::_units = Metric;
CoordinatesFormat WaypointItem::_format = DecimalDegrees;
#ifdef ENABLE_TIMEZONES
QTimeZone WaypointItem::_timeZone = QTimeZone::utc();
#endif // ENABLE_TIMEZONES
QString WaypointItem::info() const
{
ToolTip tt;
@ -30,7 +37,12 @@ QString WaypointItem::info() const
}
if (_waypoint.timestamp().isValid())
tt.insert(qApp->translate("WaypointItem", "Date"),
_waypoint.timestamp().toString(Qt::SystemLocaleShortDate));
#ifdef ENABLE_TIMEZONES
_waypoint.timestamp().toTimeZone(_timeZone)
#else // ENABLE_TIMEZONES
_waypoint.timestamp()
#endif // ENABLE_TIMEZONES
.toString(Qt::SystemLocaleShortDate));
if (!_waypoint.description().isEmpty())
tt.insert(qApp->translate("WaypointItem", "Description"),
_waypoint.description());
@ -78,9 +90,6 @@ WaypointItem::WaypointItem(const Waypoint &waypoint, Map *map,
_font.setPixelSize(FS(_size));
_font.setFamily(FONT_FAMILY);
_units = Metric;
_format = DecimalDegrees;
updateCache();
setPos(map->ll2xy(waypoint.coordinates()));
@ -151,12 +160,6 @@ void WaypointItem::setColor(const QColor &color)
update();
}
void WaypointItem::setToolTipFormat(Units units, CoordinatesFormat format)
{
_units = units;
_format = format;
}
void WaypointItem::showLabel(bool show)
{
if (_showLabel == show)

View File

@ -1,9 +1,13 @@
#ifndef WAYPOINTITEM_H
#define WAYPOINTITEM_H
#include "common/config.h"
#include <cmath>
#include <QGraphicsItem>
#include <QFont>
#ifdef ENABLE_TIMEZONES
#include <QTimeZone>
#endif // ENABLE_TIMEZONES
#include "data/waypoint.h"
#include "map/map.h"
#include "units.h"
@ -23,7 +27,6 @@ public:
void setColor(const QColor &color);
void showLabel(bool show);
void setDigitalZoom(int zoom) {setScale(pow(2, -zoom));}
void setToolTipFormat(Units units, CoordinatesFormat format);
QPainterPath shape() const {return _shape;}
QRectF boundingRect() const {return _shape.boundingRect();}
@ -32,6 +35,13 @@ public:
QString info() const;
static void setUnits(Units units) {_units = units;}
static void setCoordinatesFormat(CoordinatesFormat format)
{_format = format;}
#ifdef ENABLE_TIMEZONES
static void setTimeZone(const QTimeZone &zone) {_timeZone = zone;}
#endif // ENABLE_TIMEZONES
protected:
void hoverEnterEvent(QGraphicsSceneHoverEvent *event);
void hoverLeaveEvent(QGraphicsSceneHoverEvent *event);
@ -48,8 +58,11 @@ private:
QFont _font;
QRect _labelBB;
Units _units;
CoordinatesFormat _format;
static Units _units;
static CoordinatesFormat _format;
#ifdef ENABLE_TIMEZONES
static QTimeZone _timeZone;
#endif // ENABLE_TIMEZONES
};
#endif // WAYPOINTITEM_H

View File

@ -18,4 +18,8 @@
#define ENABLE_GEOJSON
#endif // QT >= 5.0
#if QT_VERSION >= QT_VERSION_CHECK(5, 5, 0)
#define ENABLE_TIMEZONES
#endif // QT >= 5.5
#endif /* CONFIG_H */

View File

@ -7,6 +7,7 @@
#define RECORD_MESSAGE 20
#define EVENT_MESSAGE 21
#define COURSE_POINT 32
#define TIMESTAMP_FIELD 253
class Event {
@ -48,10 +49,12 @@ public:
class FITParser::CTX {
public:
CTX(QFile *file) : file(file), len(0), endian(0), timestamp(0),
lastWrite(0), ratio(NAN) {}
CTX(QFile *file, QVector<Waypoint> &waypoints)
: file(file), waypoints(waypoints), len(0), endian(0), timestamp(0),
lastWrite(0), ratio(NAN) {}
QFile *file;
QVector<Waypoint> &waypoints;
quint32 len;
quint8 endian;
quint32 timestamp, lastWrite;
@ -61,6 +64,41 @@ public:
SegmentData segment;
};
static QMap<int, QString> coursePointDescInit()
{
QMap<int, QString> map;
map.insert(1, "Summit");
map.insert(2, "Valley");
map.insert(3, "Water");
map.insert(4, "Food");
map.insert(5, "Danger");
map.insert(6, "Left");
map.insert(7, "Right");
map.insert(8, "Straight");
map.insert(9, "First aid");
map.insert(10, "Fourth category");
map.insert(11, "Third category");
map.insert(12, "Second category");
map.insert(13, "First category");
map.insert(14, "Hors category");
map.insert(15, "Sprint");
map.insert(16, "Left fork");
map.insert(17, "Right fork");
map.insert(18, "Middle fork");
map.insert(19, "Slight left");
map.insert(20, "Sharp left");
map.insert(21, "Slight right");
map.insert(22, "Sharp right");
map.insert(23, "U-Turn");
map.insert(24, "Segment start");
map.insert(25, "Segment end");
return map;
}
static QMap<int, QString> coursePointDesc = coursePointDescInit();
bool FITParser::readData(QFile *file, char *data, size_t size)
{
@ -80,17 +118,12 @@ bool FITParser::readData(QFile *file, char *data, size_t size)
template<class T> bool FITParser::readValue(CTX &ctx, T &val)
{
T data;
if (!readData(ctx.file, (char*)&data, sizeof(T)))
if (!readData(ctx.file, (char*)&val, sizeof(T)))
return false;
ctx.len -= sizeof(T);
if (ctx.endian)
val = qFromBigEndian(data);
else
val = qFromLittleEndian(data);
if (sizeof(T) > 1)
val = (ctx.endian) ? qFromBigEndian(val) : qFromLittleEndian(val);
return true;
}
@ -167,41 +200,51 @@ bool FITParser::parseDefinitionMessage(CTX &ctx, quint8 header)
return true;
}
bool FITParser::readField(CTX &ctx, Field *field, quint32 &val)
bool FITParser::readField(CTX &ctx, Field *field, QVariant &val, bool &valid)
{
quint8 v8 = (quint8)-1;
quint16 v16 = (quint16)-1;
bool ret;
val = (quint32)-1;
#define VAL(type, inval) \
{type var; \
if (field->size == sizeof(var)) { \
ret = readValue(ctx, var); \
val = var; \
valid = (var != (inval)); \
} else { \
ret = skipValue(ctx, field->size); \
valid = false; \
}}
switch (field->type) {
case 0: // enum
case 1: // sint8
VAL(qint8, 0x7fU);
break;
case 2: // uint8
if (field->size == 1) {
ret = readValue(ctx, v8);
val = v8;
} else
ret = skipValue(ctx, field->size);
case 0: // enum
VAL(quint8, 0xffU);
break;
case 7: // UTF8 nul terminated string
{QByteArray ba(ctx.file->read(field->size));
ctx.len -= field->size;
ret = (ba.size() == field->size);
val = ret ? ba : QString();
valid = !ba.isEmpty();}
break;
case 0x83: // sint16
VAL(qint16, 0x7fffU);
break;
case 0x84: // uint16
if (field->size == 2) {
ret = readValue(ctx, v16);
val = v16;
} else
ret = skipValue(ctx, field->size);
VAL(quint16, 0xffffU);
break;
case 0x85: // sint32
VAL(qint32, 0x7fffffffU);
break;
case 0x86: // uint32
if (field->size == 4)
ret = readValue(ctx, val);
else
ret = skipValue(ctx, field->size);
VAL(quint32, 0xffffffffU);
break;
default:
ret = skipValue(ctx, field->size);
valid = false;
break;
}
@ -211,8 +254,10 @@ bool FITParser::readField(CTX &ctx, Field *field, quint32 &val)
bool FITParser::parseData(CTX &ctx, const MessageDefinition *def)
{
Field *field;
QVariant val;
bool valid;
Event event;
quint32 val;
Waypoint waypoint;
if (!def->fields && !def->devFields) {
@ -224,69 +269,79 @@ bool FITParser::parseData(CTX &ctx, const MessageDefinition *def)
for (int i = 0; i < def->numFields; i++) {
field = &def->fields[i];
if (!readField(ctx, field, val))
if (!readField(ctx, field, val, valid))
return false;
if (!valid)
continue;
if (field->id == TIMESTAMP_FIELD)
ctx.timestamp = val;
ctx.timestamp = val.toUInt();
else if (def->globalId == RECORD_MESSAGE) {
switch (field->id) {
case 0:
if (val != 0x7fffffff)
ctx.trackpoint.rcoordinates().setLat(
((qint32)val / (double)0x7fffffff) * 180);
ctx.trackpoint.rcoordinates().setLat(
(val.toInt() / (double)0x7fffffff) * 180);
break;
case 1:
if (val != 0x7fffffff)
ctx.trackpoint.rcoordinates().setLon(
((qint32)val / (double)0x7fffffff) * 180);
ctx.trackpoint.rcoordinates().setLon(
(val.toInt() / (double)0x7fffffff) * 180);
break;
case 2:
if (val != 0xffff)
ctx.trackpoint.setElevation((val / 5.0) - 500);
ctx.trackpoint.setElevation((val.toUInt() / 5.0) - 500);
break;
case 3:
if (val != 0xff)
ctx.trackpoint.setHeartRate(val);
ctx.trackpoint.setHeartRate(val.toUInt());
break;
case 4:
if (val != 0xff)
ctx.trackpoint.setCadence(val);
ctx.trackpoint.setCadence(val.toUInt());
break;
case 6:
if (val != 0xffff)
ctx.trackpoint.setSpeed(val / 1000.0f);
ctx.trackpoint.setSpeed(val.toUInt() / 1000.0f);
break;
case 7:
if (val != 0xffff)
ctx.trackpoint.setPower(val);
ctx.trackpoint.setPower(val.toUInt());
break;
case 13:
if (val != 0x7f)
ctx.trackpoint.setTemperature((qint8)val);
ctx.trackpoint.setTemperature(val.toInt());
break;
case 73:
if (val != 0xffffffff)
ctx.trackpoint.setSpeed(val / 1000.0f);
ctx.trackpoint.setSpeed(val.toUInt() / 1000.0f);
break;
case 78:
if (val != 0xffffffff)
ctx.trackpoint.setElevation((val / 5.0) - 500);
ctx.trackpoint.setElevation((val.toUInt() / 5.0) - 500);
break;
default:
break;
}
} else if (def->globalId == EVENT_MESSAGE) {
switch (field->id) {
case 0:
event.id = val;
event.id = val.toUInt();
break;
case 1:
event.type = val;
event.type = val.toUInt();
break;
case 3:
event.data = val;
event.data = val.toUInt();
break;
}
} else if (def->globalId == COURSE_POINT) {
switch (field->id) {
case 1:
waypoint.setTimestamp(QDateTime::fromTime_t(val.toUInt()
+ 631065600));
break;
case 2:
waypoint.rcoordinates().setLat(
(val.toInt() / (double)0x7fffffff) * 180);
break;
case 3:
waypoint.rcoordinates().setLon(
(val.toInt() / (double)0x7fffffff) * 180);
break;
case 5:
waypoint.setDescription(coursePointDesc.value(val.toUInt()));
break;
case 6:
waypoint.setName(val.toString());
break;
}
}
@ -294,7 +349,7 @@ bool FITParser::parseData(CTX &ctx, const MessageDefinition *def)
for (int i = 0; i < def->numDevFields; i++) {
field = &def->devFields[i];
if (!readField(ctx, field, val))
if (!readField(ctx, field, val, valid))
return false;
}
@ -315,7 +370,9 @@ bool FITParser::parseData(CTX &ctx, const MessageDefinition *def)
ctx.trackpoint = Trackpoint();
ctx.lastWrite = ctx.timestamp;
}
}
} else if (def->globalId == COURSE_POINT)
if (waypoint.coordinates().isValid())
ctx.waypoints.append(waypoint);
return true;
}
@ -381,9 +438,8 @@ bool FITParser::parse(QFile *file, QList<TrackData> &tracks,
QList<Area> &polygons, QVector<Waypoint> &waypoints)
{
Q_UNUSED(routes);
Q_UNUSED(waypoints);
Q_UNUSED(polygons);
CTX ctx(file);
CTX ctx(file, waypoints);
if (!parseHeader(ctx))

View File

@ -21,7 +21,7 @@ private:
bool readData(QFile *file, char *data, size_t size);
template<class T> bool readValue(CTX &ctx, T &val);
bool skipValue(CTX &ctx, quint8 size);
bool readField(CTX &ctx, Field *field, quint32 &val);
bool readField(CTX &ctx, Field *field, QVariant &val, bool &valid);
bool parseHeader(CTX &ctx);
bool parseRecord(CTX &ctx);

View File

@ -585,7 +585,9 @@ void KMLParser::document(QList<TrackData> &tracks, QList<Area> &areas,
QVector<Waypoint> &waypoints)
{
while (_reader.readNextStartElement()) {
if (_reader.name() == QLatin1String("Placemark"))
if (_reader.name() == QLatin1String("Document"))
document(tracks, areas, waypoints);
else if (_reader.name() == QLatin1String("Placemark"))
placemark(tracks, areas, waypoints);
else if (_reader.name() == QLatin1String("Folder"))
folder(tracks, areas, waypoints);

View File

@ -66,13 +66,25 @@ void TCXParser::heartRateBpm(Trackpoint &trackpoint)
}
}
void TCXParser::extensions(Trackpoint &trackpoint)
void TCXParser::TPX(Trackpoint &trackpoint)
{
while (_reader.readNextStartElement()) {
if (_reader.name() == QLatin1String("RunCadence"))
trackpoint.setCadence(number());
else if (_reader.name() == QLatin1String("Watts"))
trackpoint.setPower(number());
else if (_reader.name() == QLatin1String("Speed"))
trackpoint.setSpeed(number());
else
_reader.skipCurrentElement();
}
}
void TCXParser::extensions(Trackpoint &trackpoint)
{
while (_reader.readNextStartElement()) {
if (_reader.name() == QLatin1String("TPX"))
TPX(trackpoint);
else
_reader.skipCurrentElement();
}

View File

@ -26,6 +26,7 @@ private:
void trackpointData(Trackpoint &trackpoint);
void waypointData(Waypoint &waypoint);
void extensions(Trackpoint &trackpoint);
void TPX(Trackpoint &trackpoint);
void heartRateBpm(Trackpoint &trackpoint);
Coordinates position();
qreal number();

View File

@ -17,7 +17,7 @@ bool Track::_useReportedSpeed = false;
bool Track::_useDEM = false;
bool Track::_show2ndElevation = false;
bool Track::_show2ndSpeed = false;
bool Track::_useSegments = true;
static qreal avg(const QVector<qreal> &v)
{
@ -42,6 +42,12 @@ static qreal MAD(QVector<qreal> &v, qreal m)
return median(v);
}
/*
Modified Z-score (Iglewicz and Hoaglin)
The acceleration data distribution has usualy a (much) higher kurtosis than
the normal distribution thus a higher comparsion value than the usual 3.5 is
required.
*/
static QSet<int> eliminate(const QVector<qreal> &v)
{
QSet<int> rm;
@ -51,7 +57,7 @@ static QSet<int> eliminate(const QVector<qreal> &v)
qreal M = MAD(w, m);
for (int i = 0; i < v.size(); i++)
if (qAbs((0.6745 * (v.at(i) - m)) / M) > 3.5)
if (qAbs((0.6745 * (v.at(i) - m)) / M) > 5.0)
rm.insert(i);
return rm;
@ -82,10 +88,18 @@ static GraphSegment filter(const GraphSegment &g, int window)
}
Track::Track(const TrackData &data) : _data(data), _pause(0)
Track::Track(const TrackData &data) : _pause(0)
{
qreal ds, dt;
if (_useSegments)
_data = data;
else {
_data.append(SegmentData());
for (int i = 0; i < data.size(); i++)
_data[0] << data.at(i);
}
for (int i = 0; i < _data.size(); i++) {
const SegmentData &sd = _data.at(i);
_segments.append(Segment());

View File

@ -49,10 +49,9 @@ public:
{_outlierEliminate = eliminate;}
static void useReportedSpeed(bool use) {_useReportedSpeed = use;}
static void useDEM(bool use) {_useDEM = use;}
static void showSecondaryElevation(bool show)
{_show2ndElevation = show;}
static void showSecondarySpeed(bool show)
{_show2ndSpeed = show;}
static void showSecondaryElevation(bool show) {_show2ndElevation = show;}
static void showSecondarySpeed(bool show) {_show2ndSpeed = show;}
static void useSegments(bool use) {_useSegments = use;}
private:
struct Segment {
@ -87,6 +86,7 @@ private:
static bool _useDEM;
static bool _show2ndElevation;
static bool _show2ndSpeed;
static bool _useSegments;
};
#endif // TRACK_H

View File

@ -19,6 +19,7 @@ public:
: _coordinates(coordinates), _elevation(NAN) {}
const Coordinates &coordinates() const {return _coordinates;}
Coordinates &rcoordinates() {return _coordinates;}
const QString &name() const {return _name;}
const QString &description() const {return _description;}
const QString &comment() const {return _comment;}

View File

@ -1,4 +1,7 @@
#include "common/config.h"
#ifdef ENABLE_TIMEZONES
#include "GUI/timezoneinfo.h"
#endif // ENABLE_TIMEZONES
#include "GUI/app.h"
int main(int argc, char *argv[])
@ -7,6 +10,9 @@ int main(int argc, char *argv[])
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
#endif // ENABLE_HIDPI
#ifdef ENABLE_TIMEZONES
qRegisterMetaTypeStreamOperators<TimeZoneInfo>("TimeZoneInfo");
#endif // ENABLE_TIMEZONES
App app(argc, argv);
return app.run();

View File

@ -1,38 +1,9 @@
#include "bitstream.h"
bool BitStream1::read(int bits, quint32 &val)
{
val = 0;
for (int pos = 0; pos < bits; ) {
if (!_remaining) {
if (!_length || !_file.readUInt8(_hdl, _data))
return false;
_remaining = 8;
_length--;
}
quint32 get = bits - pos;
if (get >= _remaining) {
val |= _data << pos;
pos += _remaining;
_remaining = 0;
} else {
quint32 mask = (1<<get) - 1;
val |= (_data & mask)<<pos;
_data >>= get;
_remaining -= get;
break;
}
}
return true;
}
bool BitStream1::flush()
{
if (_length && !_file.seek(_hdl, _hdl.pos() + _length))
if (_length && !_file.seek(_hdl, _file.pos(_hdl) + _length))
return false;
_length = 0;
@ -41,8 +12,19 @@ bool BitStream1::flush()
return true;
}
bool BitStream4F::flush()
{
if (_length && !_file.seek(_hdl, _file.pos(_hdl) + _length))
return false;
bool BitStream4::read(int bits, quint32 &val)
_length = 0;
_used = 32;
_unused = 0;
return true;
}
bool BitStream4F::read(int bits, quint32 &val)
{
if (bits <= 32 - (int)(_used + _unused)) {
val = bits ? (_data << _used) >> (32 - bits) : 0;
@ -50,6 +32,8 @@ bool BitStream4::read(int bits, quint32 &val)
return true;
}
if (_unused)
return false;
quint32 old = (_used < 32) ? (_data << _used) >> (32 - bits) : 0;
quint32 bytes = qMin(_length, 4U);
@ -66,14 +50,149 @@ bool BitStream4::read(int bits, quint32 &val)
return true;
}
bool BitStream4::flush()
BitStream4R::BitStream4R(const SubFile &file, SubFile::Handle &hdl,
quint32 length) : BitStream4(file, hdl, length)
{
if (_length && !_file.seek(_hdl, _hdl.pos() + _length))
return false;
_file.seek(_hdl, _file.pos(_hdl) - 4);
}
_length = 0;
_used = 32;
_unused = 0;
bool BitStream4R::readBytes(int bytes, quint32 &val)
{
quint32 bits = _used % 8;
quint32 b;
if (bits) {
if (!read(8 - bits, b))
return false;
Q_ASSERT(!b);
}
val = 0;
for (int i = 0; i < bytes; i++) {
if (!read(8, b))
return false;
val |= (b << (i * 8));
}
return true;
}
bool BitStream4R::readVUInt32(quint32 &val)
{
quint32 b;
quint8 bytes, shift;
if (!readBytes(1, b))
return false;
if ((b & 1) == 0) {
if ((b & 2) == 0) {
bytes = ((b >> 2) & 1) ^ 3;
shift = 5;
} else {
shift = 6;
bytes = 1;
}
} else {
shift = 7;
bytes = 0;
}
val = b >> (8 - shift);
if (bytes) {
if (!readBytes(bytes, b))
return false;
val = val | (b << shift);
}
return true;
}
bool BitStream4R::readVuint32SM(quint32 &val1, quint32 &val2, quint32 &val2Bits)
{
quint32 b, eb;
if (!readBytes(1, b))
return false;
if (!(b & 1)) {
val1 = b >> 3;
val2 = b >> 1 & 3;
val2Bits = 2;
} else {
eb = b & 2;
val2 = b >> 2 & 0x3f;
val2Bits = eb * 2 + 6;
if (!readBytes((eb >> 1 | 2) - 1, b))
return false;
if (eb) {
val2 = val2 | (b & 0xf) << 6;
b = b >> 4 & 0xfff;
}
val1 = b;
}
return true;
}
bool BitStream4R::skip(quint32 bytes)
{
if (bytes * 8 > bitsAvailable())
return false;
quint32 ab = (32 - (_used + _unused))/8;
if (bytes <= ab)
_used += bytes * 8;
else {
quint32 seek = ((bytes - ab)/4)*4;
quint32 read = (bytes - ab)%4;
if (seek && !_file.seek(_hdl, _file.pos(_hdl) - seek))
return false;
_length -= seek;
if (read) {
quint32 rb = qMin(_length, 4U);
if (!_file.readUInt32(_hdl, _data))
return false;
if (!_file.seek(_hdl, _file.pos(_hdl) - 8))
return false;
_length -= rb;
_unused = (4 - rb) * 8;
_used = read * 8;
} else
_used = 32;
}
return true;
}
void BitStream4R::resize(quint32 bytes)
{
quint32 ab = (32 - (_used + _unused) + 7)/8;
if (ab <= bytes)
_length = bytes - ab;
else {
_length = 0;
_unused += (ab - bytes) * 8;
}
}
void BitStream4R::save(State &state)
{
state.pos = _file.pos(_hdl);
state.length = _length;
state.used = _used;
state.unused = _unused;
state.data = _data;
}
bool BitStream4R::restore(const State &state)
{
_length = state.length;
_used = state.used;
_unused = state.unused;
_data = state.data;
return _file.seek(_hdl, state.pos);
}

View File

@ -8,9 +8,9 @@ public:
BitStream1(const SubFile &file, SubFile::Handle &hdl, quint32 length)
: _file(file), _hdl(hdl), _length(length), _remaining(0) {}
bool read(int bits, quint32 &val);
template<typename T> bool read(int bits, T &val);
bool flush();
quint32 bitsAvailable() const {return _length * 8 + _remaining;}
quint64 bitsAvailable() const {return (quint64)_length * 8 + _remaining;}
private:
const SubFile &_file;
@ -25,15 +25,105 @@ public:
: _file(file), _hdl(hdl), _length(length), _used(32), _unused(0),
_data(0) {}
bool read(int bits, quint32 &val);
bool flush();
quint32 bitsAvailable() const {return _length * 8 + (32 - _used) - _unused;}
quint64 bitsAvailable() const
{return (quint64)_length * 8 + (32 - _used) - _unused;}
private:
protected:
const SubFile &_file;
SubFile::Handle &_hdl;
quint32 _length, _used, _unused;
quint32 _data;
};
class BitStream4F : public BitStream4 {
public:
BitStream4F(const SubFile &file, SubFile::Handle &hdl, quint32 length)
: BitStream4(file, hdl, length) {}
bool read(int bits, quint32 &val);
bool flush();
};
class BitStream4R : public BitStream4 {
public:
struct State {
quint32 pos;
quint32 length;
quint32 used;
quint32 unused;
quint32 data;
};
BitStream4R(const SubFile &file, SubFile::Handle &hdl, quint32 length);
template<typename T> bool read(int bits, T &val);
bool readBytes(int bytes, quint32 &val);
bool readVUInt32(quint32 &val);
bool readVuint32SM(quint32 &val1, quint32 &val2, quint32 &val2Bits);
bool skip(quint32 bytes);
void resize(quint32 bytes);
void save(State &state);
bool restore(const State &state);
};
template<typename T>
bool BitStream1::read(int bits, T &val)
{
val = 0;
for (int pos = 0; pos < bits; ) {
if (!_remaining) {
if (!_length || !_file.readUInt8(_hdl, _data))
return false;
_remaining = 8;
_length--;
}
quint32 get = bits - pos;
if (get >= _remaining) {
val |= _data << pos;
pos += _remaining;
_remaining = 0;
} else {
quint32 mask = (1<<get) - 1;
val |= (_data & mask)<<pos;
_data >>= get;
_remaining -= get;
break;
}
}
return true;
}
template<typename T>
bool BitStream4R::read(int bits, T &val)
{
if (bits <= 32 - (int)(_used + _unused)) {
val = bits ? (_data << _used) >> (32 - bits) : 0;
_used += bits;
return true;
}
if (_unused)
return false;
quint32 old = (_used < 32) ? (_data << _used) >> (32 - bits) : 0;
quint32 bytes = qMin(_length, 4U);
if (!_file.readUInt32(_hdl, _data))
return false;
if (!_file.seek(_hdl, _file.pos(_hdl) - 8))
return false;
_length -= bytes;
_used -= 32 - bits;
_unused = (4 - bytes) * 8;
val = _data >> (32 - _used) | old;
return true;
}
#endif // BITSTREAM_H

View File

@ -1,6 +1,5 @@
#include <QXmlStreamReader>
#include <QDir>
#include "map/osm.h"
#include "vectortile.h"
#include "gmap.h"
@ -104,11 +103,6 @@ bool GMAP::loadTile(const QDir &dir, bool baseMap)
if (tile->zooms().min() < _zooms.min())
_zooms.setMin(tile->zooms().min());
// Limit world maps bounds so that the maps can be projected using
// the default Web Mercator projection
if (_bounds.height() > 120)
_bounds &= OSM::BOUNDS;
return true;
}

View File

@ -1,74 +1,41 @@
#include "huffmanstream.h"
HuffmanStream::HuffmanStream(const SubFile &file, SubFile::Handle &hdl,
quint32 length, const HuffmanTable &table, bool line)
: BitStream4(file, hdl, length), _table(table), _symbolDataSize(0),
_symbolData(0)
bool HuffmanStreamF::init(bool line)
{
if (line) {
if (!(sign(_lonSign) && sign(_latSign)))
return;
return false;
} else {
_lonSign = 0;
_latSign = 0;
}
quint32 eb;
if (!read(1, eb))
return;
if (!_bs.read(1, eb))
return false;
if (eb) {
qWarning("Extended polygon/lines not supported");
flush();
}
}
bool HuffmanStream::sign(int &val)
{
quint32 bit;
val = 0;
if (!read(1, bit))
qWarning() << "Extended lines/polygons not supported";
return false;
if (bit) {
if (!read(1, bit))
return false;
val = bit ? -1 : 1;
}
return true;
}
bool HuffmanStream::readDelta(int sign, qint32 &symbol)
bool HuffmanStreamR::init()
{
quint8 size;
quint32 next;
quint8 nextSize = qMin((quint32)(32 - _symbolDataSize), bitsAvailable());
if (!read(nextSize, next))
if (!(sign(_lonSign) && sign(_latSign)))
return false;
_symbolData = (_symbolData << nextSize) | next;
_symbolDataSize += nextSize;
symbol = _table.symbol(_symbolData << (32 - _symbolDataSize), size);
if (size <= _symbolDataSize)
_symbolDataSize -= size;
else
return false;
if (symbol && !sign) {
if (!_symbolDataSize)
return false;
else {
sign = ((1U << (_symbolDataSize - 1)) & _symbolData) ? -1 : 1;
_symbolDataSize--;
}
}
symbol = sign * symbol;
return true;
}
bool HuffmanStreamR::init(int lonSign, int latSign, quint32 data,
quint32 dataSize)
{
_lonSign = lonSign;
_latSign = latSign;
_symbolData = data;
_symbolDataSize = dataSize;
return true;
}

View File

@ -4,11 +4,15 @@
#include "bitstream.h"
#include "huffmantable.h"
class HuffmanStream : public BitStream4 {
template <class BitStream>
class HuffmanStream {
public:
HuffmanStream(const SubFile &file, SubFile::Handle &hdl, quint32 length,
const HuffmanTable &table, bool line);
HuffmanStream(BitStream &bitstream, const HuffmanTable &table)
: _bs(bitstream), _table(table), _symbolDataSize(0), _symbolData(0),
_lonSign(0), _latSign(0) {}
bool read(int bits, quint32 &val);
bool readSymbol(quint32 &symbol);
bool readNext(qint32 &lonDelta, qint32 &latDelta)
{
if (!(readDelta(_lonSign, lonDelta) && readDelta(_latSign, latDelta)))
@ -17,19 +21,121 @@ public:
return (lonDelta || latDelta);
}
bool readOffset(qint32 &lonDelta, qint32 &latDelta)
{return (readDelta(1, lonDelta) && readDelta(1, latDelta));}
bool atEnd() const
{return _symbolDataSize + bitsAvailable() < _table.maxSymbolSize();}
{return _symbolDataSize + _bs.bitsAvailable() < _table.maxSymbolSize();}
bool flush() {return _bs.flush();}
private:
protected:
bool sign(int &val);
bool readDelta(int sign, qint32 &delta);
BitStream &_bs;
const HuffmanTable &_table;
quint32 _symbolDataSize;
quint32 _symbolData;
int _lonSign, _latSign;
};
template <class BitStream>
bool HuffmanStream<BitStream>::sign(int &val)
{
quint32 bit;
val = 0;
if (!_bs.read(1, bit))
return false;
if (bit) {
if (!_bs.read(1, bit))
return false;
val = bit ? -1 : 1;
}
return true;
}
template <class BitStream>
bool HuffmanStream<BitStream>::read(int bits, quint32 &val)
{
if (_symbolDataSize < (quint32)bits) {
quint32 next;
quint8 nextSize = qMin((quint64)(32 - _symbolDataSize),
_bs.bitsAvailable());
if (!_bs.read(nextSize, next))
return false;
_symbolData = (_symbolData << nextSize) | next;
_symbolDataSize += nextSize;
}
if (_symbolDataSize < (quint32)bits)
return false;
val = (_symbolData << (32-_symbolDataSize)) >> (32 - bits);
_symbolDataSize -= bits;
return true;
}
template <class BitStream>
bool HuffmanStream<BitStream>::readSymbol(quint32 &symbol)
{
quint8 size;
quint32 next;
quint8 nextSize = qMin((quint64)(32 - _symbolDataSize), _bs.bitsAvailable());
if (!_bs.read(nextSize, next))
return false;
_symbolData = (_symbolData << nextSize) | next;
_symbolDataSize += nextSize;
symbol = _table.symbol(_symbolData << (32 - _symbolDataSize), size);
if (size > _symbolDataSize)
return false;
_symbolDataSize -= size;
return true;
}
template <class BitStream>
bool HuffmanStream<BitStream>::readDelta(int sign, qint32 &delta)
{
quint32 symbol;
if (!readSymbol(symbol))
return false;
if (symbol && !sign) {
if (!_symbolDataSize)
return false;
else {
sign = ((1U << (_symbolDataSize - 1)) & _symbolData) ? -1 : 1;
_symbolDataSize--;
}
}
delta = sign * symbol;
return true;
}
class HuffmanStreamF : public HuffmanStream<BitStream4F> {
public:
HuffmanStreamF(BitStream4F &bitstream, const HuffmanTable &table)
: HuffmanStream(bitstream, table) {}
bool init(bool line);
bool readOffset(qint32 &lonDelta, qint32 &latDelta)
{return (readDelta(1, lonDelta) && readDelta(1, latDelta));}
};
class HuffmanStreamR : public HuffmanStream<BitStream4R> {
public:
HuffmanStreamR(BitStream4R &bitstream, const HuffmanTable &table)
: HuffmanStream(bitstream, table) {}
bool init();
bool init(int lonSign, int latSign, quint32 data, quint32 dataSize);
};
#endif // HUFFMANSTREAM_H

View File

@ -42,6 +42,8 @@ bool HuffmanTable::load(const SubFile &file, SubFile::Handle &hdl,
_s10 = _s14 + _s1c * _s1d;
_s18 = _s10 + (_s1 << _s0);
_id = id;
return true;
}
@ -55,7 +57,7 @@ bool HuffmanTable::getBuffer(const SubFile &file, SubFile::Handle &hdl,
return false;
if (!file.readVUInt32(hdl, recordSize))
return false;
recordOffset = hdl.pos() + recordSize;
recordOffset = file.pos(hdl) + recordSize;
if (recordOffset > offset + size)
return false;
};

View File

@ -13,6 +13,8 @@ public:
quint8 maxSymbolSize() const {return _s2;}
quint32 symbol(quint32 data, quint8 &size) const;
quint8 id() const {return _id;}
private:
bool getBuffer(const SubFile &file, SubFile::Handle &hdl, quint32 offset,
quint32 size, quint8 id);
@ -22,6 +24,8 @@ private:
quint8 *_s10, *_s14, *_s18;
quint8 _s1c, _s1d, _s1e, _s1f, _s20;
quint16 _s22;
quint8 _id;
};
#endif // HUFFMANTABLE_H

View File

@ -1,6 +1,5 @@
#include <QMap>
#include <QtEndian>
#include "map/osm.h"
#include "vectortile.h"
#include "img.h"
@ -60,7 +59,7 @@ IMG::IMG(const QString &fileName) : _file(fileName)
QByteArray nba(QByteArray(d1, sizeof(d1)) + QByteArray(d2, sizeof(d2)));
_name = QString::fromLatin1(nba.constData(), nba.size()-1).trimmed();
_blockSize = 1 << (e1 + e2);
_blockBits = e1 + e2;
// Read the FAT table
quint8 flag;
@ -133,7 +132,6 @@ IMG::IMG(const QString &fileName) : _file(fileName)
}
// Create tile tree
int minMapZoom = 24;
for (TileMap::const_iterator it = tileMap.constBegin();
it != tileMap.constEnd(); ++it) {
@ -160,19 +158,19 @@ IMG::IMG(const QString &fileName) : _file(fileName)
minMapZoom = tile->zooms().min();
}
for (TileMap::const_iterator it = tileMap.constBegin();
it != tileMap.constEnd(); ++it) {
VectorTile *tile = it.value();
// Detect and mark basemap
TileTree::Iterator it;
for (_tileTree.GetFirst(it); !_tileTree.IsNull(it); _tileTree.GetNext(it)) {
VectorTile *tile = _tileTree.GetAt(it);
if (tile->zooms().min() > minMapZoom)
_baseMap = true;
if (tile->zooms().min() == minMapZoom)
tile->markAsBasemap();
}
// Limit world maps bounds so that the maps can be projected using
// the default Web Mercator projection
if (_bounds.height() > 120)
_bounds &= OSM::BOUNDS;
// Allow some extra zoom out on maps without basemaps, but not too much as
// this would kill the rendering performance
if (!_baseMap)
_zooms.setMin(_zooms.min() - 2);
if (!_tileTree.Count())
_errorString = "No usable map tile found";
@ -203,9 +201,9 @@ template<class T> bool IMG::readValue(T &val)
bool IMG::readBlock(int blockNum, char *data)
{
if (!_file.seek((qint64)blockNum * (qint64)_blockSize))
if (!_file.seek((quint64)blockNum << _blockBits))
return false;
if (read(data, _blockSize) < _blockSize)
if (read(data, 1U<<_blockBits) < 1U<<_blockBits)
return false;
return true;

View File

@ -14,14 +14,14 @@ public:
private:
friend class SubFile;
int blockSize() const {return _blockSize;}
unsigned blockBits() const {return _blockBits;}
bool readBlock(int blockNum, char *data);
qint64 read(char *data, qint64 maxSize);
template<class T> bool readValue(T &val);
QFile _file;
quint8 _key;
int _blockSize;
unsigned _blockBits;
};
#endif // IMG_H

View File

@ -151,7 +151,9 @@ Label LBLFile::label8b(Handle &hdl, quint32 offset, bool capitalize) const
if (!c || c == 0x1d)
break;
if ((c >= 0x1e && c <= 0x1f)) {
if (c == 0x1c)
capitalize = false;
else if ((c >= 0x1e && c <= 0x1f)) {
if (bap == &shieldLabel)
bap = &label;
else

View File

@ -54,7 +54,7 @@ inline bool pointCb(VectorTile *tile, void *context)
}
MapData::MapData() : _typ(0), _style(0), _zooms(15, 28), _baseMap(false),
MapData::MapData() : _typ(0), _style(0), _zooms(24, 28), _baseMap(false),
_valid(false)
{
_polyCache.setMaxCost(CACHED_SUBDIVS_COUNT);

View File

@ -1,26 +1,508 @@
#include "bitstream.h"
#include "huffmanstream.h"
#include "subdiv.h"
#include "nodfile.h"
#include "lblfile.h"
#include "netfile.h"
static bool readAdjCounts(BitStream4R &bs, QVector<quint16> &cnts, quint16 &mask)
{
quint32 val, cnt, bits;
if (!bs.read(4, val))
return false;
cnt = ((val >> 2) & 3) + 2;
bits = ((val * 2) & 6) + 4;
mask = 1<<(3 + ((val * 2) & 6));
if (cnt == 5) {
if (!bs.read(8, cnt))
return false;
}
if (cnt < 2)
return false;
cnts.resize(cnt - 1);
for (int i = 0; i < cnts.size(); i++)
if (!bs.read(bits, cnts[i]))
return false;
return true;
}
static bool skipShape(BitStream4R &bs)
{
quint32 v1, v2, v2b;
if (!bs.readVuint32SM(v1, v2, v2b))
return false;
return bs.skip(v1);
}
static bool skipAdjShapes(BitStream4R &bs, const QVector<quint16> &cnts,
quint16 mask, bool firstIsShape)
{
if (firstIsShape && !skipShape(bs))
return false;
for (int i = 0; i < cnts.size(); i++) {
if (cnts.at(i) & mask) {
if (!skipShape(bs))
return false;
}
}
return true;
}
static bool seekToLevel(BitStream4R &bs, quint8 level)
{
quint32 v1, v2, v2b;
for (quint8 i = 1; i < level; ) {
if (!bs.readVuint32SM(v1, v2, v2b))
return false;
if (!bs.skip(v1))
return false;
if (v2 & 2)
return false;
if (v2 & 1)
i++;
};
return true;
}
static bool seekToLine(BitStream4R &bs, quint8 line)
{
quint32 v1, v2, v2b;
for (quint8 i = 0; i < line; i++) {
if (!bs.readVuint32SM(v1, v2, v2b))
return false;
if (!bs.skip(v1))
return false;
if (v2 & 2)
return false;
}
return true;
}
static bool readLine(BitStream4R &bs, const SubDiv *subdiv,
const HuffmanTable &table, IMG::Poly &poly)
{
quint32 v1, v2, v2b;
if (!bs.readVuint32SM(v1, v2, v2b))
return false;
bs.resize(v1);
quint32 lon, lat;
if (!(bs.read(0x12 - v2b, lon) && bs.read(16, lat)))
return false;
if (2 < v2b)
lon |= (v2 >> 2) << (0x12U - v2b);
QPoint pos = QPoint(LS(subdiv->lon(), 8) + LS((qint16)lon, 32-subdiv->bits()),
LS(subdiv->lat(), 8) + LS((qint16)lat, 32-subdiv->bits()));
Coordinates c(toWGS32(pos.x()), toWGS32(pos.y()));
poly.boundingRect = RectC(c, c);
poly.points.append(QPointF(c.lon(), c.lat()));
HuffmanStreamR stream(bs, table);
if (!stream.init())
return false;
qint32 lonDelta, latDelta;
while (stream.readNext(lonDelta, latDelta)) {
pos.rx() += LS(lonDelta, 32-subdiv->bits());
if (pos.rx() < 0 && subdiv->lon() >= 0)
pos.rx() = 0x7fffffff;
pos.ry() += LS(latDelta, 32-subdiv->bits());
Coordinates c(toWGS32(pos.x()), toWGS32(pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
}
return stream.atEnd();
}
static bool readNodeGeometry(NODFile *nod, SubFile::Handle &nodHdl,
NODFile::AdjacencyInfo &adj, IMG::Poly &poly, quint16 cnt = 0xFFFF)
{
for (int i = 0; i <= cnt; i++) {
int ret = nod->nextNode(nodHdl, adj);
if (ret < 0)
return false;
else if (ret > 0)
return (cnt == 0xFFFF);
Coordinates c(toWGS32(adj.nodeInfo.pos.x()),
toWGS32(adj.nodeInfo.pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
}
return true;
}
static bool skipNodes(NODFile *nod, SubFile::Handle &nodHdl,
NODFile::AdjacencyInfo &adj, int cnt)
{
for (int i = 0; i < cnt; i++)
if (nod->nextNode(nodHdl, adj))
return false;
return true;
}
static bool readShape(NODFile *nod, SubFile::Handle &nodHdl,
NODFile::AdjacencyInfo &adj, BitStream4R &bs, const HuffmanTable &table,
const SubDiv *subdiv, quint32 shift, IMG::Poly &poly, quint16 cnt = 0xFFFF,
bool check = false)
{
quint32 v1, v2, v2b;
if (!bs.readVuint32SM(v1, v2, v2b))
return false;
BitStream4R::State state;
bs.save(state);
bs.resize(v1);
quint32 flags;
if (!bs.read(8, flags))
return false;
flags |= (v2 << 8);
bool hasCoordinatesAdjustBit = flags & (1 << (v2b + 7));
bool useEosBit = flags & (1 << (v2b + 5));
bool startWithStream = flags & (1 << (v2b + 6));
quint32 extraBits;
int lonSign, latSign;
if ((flags >> (v2b + 4) & 1) == 0) {
extraBits = v2b + 4;
lonSign = 0;
} else {
extraBits = v2b + 3;
lonSign = 1;
if ((flags >> (v2b + 3) & 1) != 0) {
lonSign = -1;
}
}
extraBits -= 1;
if ((flags >> extraBits & 1) == 0) {
latSign = 0;
} else {
extraBits -= 1;
latSign = -1;
if ((flags >> extraBits & 1) == 0) {
latSign = 1;
}
}
if (nod->nextNode(nodHdl, adj))
return false;
QPoint pos(adj.nodeInfo.pos);
quint16 nodes = 0;
if (!startWithStream) {
Coordinates c(toWGS32(adj.nodeInfo.pos.x()),
toWGS32(adj.nodeInfo.pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
while (!(adj.flags & 1)) {
int ret = nod->nextNode(nodHdl, adj);
if (ret < 0)
return false;
else if (ret > 0)
break;
nodes++;
c = Coordinates(toWGS32(adj.nodeInfo.pos.x()),
toWGS32(adj.nodeInfo.pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
pos = adj.nodeInfo.pos;
}
}
HuffmanStreamR stream(bs, table);
if (!stream.init(lonSign, latSign, flags, extraBits))
return false;
qint32 lonDelta, latDelta;
QVector<QPoint> deltas;
quint32 adjustBit = 0;
quint32 stepsCnt = 0;
quint32 steps = 0;
quint32 eos = 0;
while (true) {
if ((stepsCnt == steps) && !useEosBit) {
if (!stream.readSymbol(steps))
break;
if (!steps)
break;
}
if (!stream.readNext(lonDelta, latDelta))
break;
if (hasCoordinatesAdjustBit && !stream.read(1, adjustBit))
return false;
stepsCnt++;
if (useEosBit) {
if (!stream.read(1, eos))
return false;
} else {
if (steps == stepsCnt)
eos = 1;
}
if (!startWithStream) {
pos.rx() += LS(lonDelta, 32-subdiv->bits()-shift);
pos.ry() += LS(latDelta, 32-subdiv->bits()-shift);
Coordinates c(toWGS32(pos.x()), toWGS32(pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
} else {
deltas.append(QPoint(lonDelta, latDelta));
poly.points.append(QPointF());
}
if (startWithStream && eos) {
for (int i = deltas.size() - 1, j = 0; i >= 0; i--, j++) {
pos.rx() -= LS(deltas.at(i).x(), 32-subdiv->bits()-shift);
pos.ry() -= LS(deltas.at(i).y(), 32-subdiv->bits()-shift);
Coordinates c(toWGS32(pos.x()), toWGS32(pos.y()));
poly.points[poly.points.size() - 1 - j] = QPointF(c.lon(), c.lat());
poly.boundingRect = poly.boundingRect.united(c);
}
pos = adj.nodeInfo.pos;
Coordinates c(toWGS32(pos.x()), toWGS32(pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
stepsCnt = 0;
steps = 0;
startWithStream = false;
if (adj.flags & 1)
eos = 0;
}
if (eos) {
if (nodes >= cnt)
break;
do {
int ret = nod->nextNode(nodHdl, adj);
if (ret < 0)
return false;
else if (ret > 0)
break;
nodes++;
if (check && nodes == cnt) {
if (!(bs.restore(state) && bs.skip(v1)
&& bs.readVuint32SM(v1, v2, v2b)))
return false;
if (5 < v2b)
v2 >>= v2b - 2;
if (v2 & 1)
break;
}
Coordinates c(toWGS32(adj.nodeInfo.pos.x()),
toWGS32(adj.nodeInfo.pos.y()));
poly.points.append(QPointF(c.lon(), c.lat()));
poly.boundingRect = poly.boundingRect.united(c);
pos = adj.nodeInfo.pos;
} while (!(adj.flags & 1) && nodes < cnt);
if (nodes == cnt)
break;
steps = 0;
stepsCnt = 0;
eos = 0;
}
}
return true;
}
bool NETFile::linkLabel(Handle &hdl, quint32 offset, quint32 size, LBLFile *lbl,
Handle &lblHdl, Label &label)
{
if (!seek(hdl, offset))
return false;
BitStream1 bs(*this, hdl, size);
quint32 flags, b, labelPtr = 0;
if (!bs.read(8, flags))
return false;
for (int i = 0; i < 3; i++) {
if (!bs.read(8, b))
return false;
labelPtr |= (b << (i * 8));
}
if (lbl && (labelPtr & 0x3FFFFF)) {
if (labelPtr & 0x400000) {
quint32 lblOff;
if (lblOffset(hdl, labelPtr & 0x3FFFFF, lblOff) && lblOff)
label = lbl->label(lblHdl, lblOff);
} else
label = lbl->label(lblHdl, labelPtr & 0x3FFFFF);
}
return true;
}
bool NETFile::init(Handle &hdl)
{
quint8 multiplier;
quint16 hdrLen;
if (!(seek(hdl, _gmpOffset) && readUInt16(hdl, hdrLen)
&& seek(hdl, _gmpOffset + 0x15) && readUInt32(hdl, _offset)
&& readUInt32(hdl, _size) && readUInt8(hdl, multiplier)))
&& readUInt32(hdl, _size) && readUInt8(hdl, _shift)))
return false;
_multiplier = 1<<multiplier;
if (hdrLen >= 0x47) {
quint32 info;
if (!(seek(hdl, _gmpOffset + 0x37) && readUInt32(hdl, info)))
return false;
_tableId = ((info >> 2) & 0xF);
if (!(seek(hdl, _gmpOffset + 0x43) && readUInt32(hdl, _linksOffset)
&& readUInt32(hdl, _linksSize) && readUInt8(hdl, _linksShift)))
return false;
}
_init = true;
return true;
}
bool NETFile::link(const SubDiv *subdiv, quint32 shift, Handle &hdl,
NODFile *nod, Handle &nodHdl, LBLFile *lbl, Handle &lblHdl,
const NODFile::BlockInfo blockInfo, quint8 linkId, quint8 lineId,
const HuffmanTable &table, QList<IMG::Poly> *lines)
{
if (!_init && !init(hdl))
return false;
Q_ASSERT(_tableId == table.id());
if (_tableId != table.id())
return false;
IMG::Poly poly;
if (!nod->linkType(nodHdl, blockInfo, linkId, poly.type))
return false;
NODFile::LinkInfo linkInfo;
if (!nod->linkInfo(nodHdl, blockInfo, linkId, linkInfo))
return false;
quint32 linkOffset = _linksOffset + (linkInfo.linkOffset << _linksShift);
if (linkOffset > _linksOffset + _linksSize)
return false;
if (!seek(hdl, linkOffset))
return false;
BitStream4R bs(*this, hdl, linkOffset - _linksOffset);
QVector<quint16> ca;
quint16 mask = 0;
quint32 size;
quint8 s68 = (linkInfo.flags >> 0x12) & 1;
quint8 s69 = (linkInfo.flags >> 0x11) & 1;
quint8 s6a = (linkInfo.flags >> 0x13) & 1;
if (s69 == 0 || s6a == 1) {
if (!bs.readVUInt32(size))
return false;
}
if (s69 == 0) {
if (!readAdjCounts(bs, ca, mask))
return false;
}
if (!subdiv->level()) {
NODFile::AdjacencyInfo adj(nod, blockInfo, linkId, linkInfo);
if (s69 == 1) {
if (s68 == 1) {
if (!readShape(nod, nodHdl, adj, bs, table, subdiv, shift, poly))
return false;
} else {
if (!readNodeGeometry(nod, nodHdl, adj, poly))
return false;
}
} else {
quint16 mask2 = mask + 0xffff;
for (int i = 0; i <= ca.size(); i++) {
quint16 step = (i < ca.size()) ? ca.at(i) & mask2 : 0xFFFF;
bool shape = (i > 0) ? ca.at(i-1) & mask : (s68 == 1);
if (i == lineId) {
if (shape) {
bool check = (i < ca.size()) ? (ca.at(i) & mask) : false;
if (!readShape(nod, nodHdl, adj, bs, table, subdiv,
shift, poly, step, check))
return false;
} else {
if (!readNodeGeometry(nod, nodHdl, adj, poly, step))
return false;
}
break;
}
if (shape && !skipShape(bs))
return false;
if (!skipNodes(nod, nodHdl, adj, step))
return false;
}
}
} else {
if (!skipAdjShapes(bs, ca, mask, s68 == 1))
return false;
if (!seekToLevel(bs, subdiv->level()))
return false;
if (!seekToLine(bs, lineId))
return false;
if (!readLine(bs, subdiv, table, poly))
return false;
}
linkLabel(hdl, linkOffset, _linksSize - (linkOffset - _linksOffset), lbl,
lblHdl, poly.label);
lines->append(poly);
return true;
}
bool NETFile::lblOffset(Handle &hdl, quint32 netOffset, quint32 &lblOffset)
{
if (!_multiplier && !init(hdl))
if (!_init && !init(hdl))
return false;
if (!(seek(hdl, _offset + netOffset * _multiplier)
if (!(seek(hdl, _offset + (netOffset << _shift))
&& readUInt24(hdl, lblOffset)))
return false;

View File

@ -1,25 +1,42 @@
#ifndef NETFILE_H
#define NETFILE_H
#include "img.h"
#include "subfile.h"
#include "nodfile.h"
class NODFile;
class LBLFile;
class SubDiv;
class HuffmanTable;
class NETFile : public SubFile
{
public:
NETFile(IMG *img)
: SubFile(img), _offset(0), _size(0), _multiplier(0) {}
NETFile(const QString &path)
: SubFile(path), _offset(0), _size(0), _multiplier(0) {}
NETFile(SubFile *gmp, quint32 offset)
: SubFile(gmp, offset), _offset(0), _size(0), _multiplier(0) {}
NETFile(IMG *img) : SubFile(img), _offset(0), _size(0), _linksOffset(0),
_linksSize(0), _shift(0), _linksShift(0), _init(false) {}
NETFile(const QString &path) : SubFile(path), _offset(0), _size(0),
_linksOffset(0), _linksSize(0), _shift(0), _linksShift(0),
_init(false) {}
NETFile(SubFile *gmp, quint32 offset) : SubFile(gmp, offset),
_offset(0), _size(0), _linksOffset(0), _linksSize(0), _shift(0),
_linksShift(0), _init(false) {}
bool lblOffset(Handle &hdl, quint32 netOffset, quint32 &lblOffset);
bool link(const SubDiv *subdiv, quint32 shift, Handle &hdl, NODFile *nod,
Handle &nodHdl, LBLFile *lbl, Handle &lblHdl,
const NODFile::BlockInfo blockInfo, quint8 linkId, quint8 lineId,
const HuffmanTable &table, QList<IMG::Poly> *lines);
private:
bool init(Handle &hdl);
bool linkLabel(Handle &hdl, quint32 offset, quint32 size, LBLFile *lbl,
Handle &lblHdl, Label &label);
quint32 _offset, _size;
quint8 _multiplier;
quint32 _offset, _size, _linksOffset, _linksSize;
quint8 _shift, _linksShift;
quint8 _tableId;
bool _init;
};
#endif // NETFILE_H

551
src/map/IMG/nodfile.cpp Normal file
View File

@ -0,0 +1,551 @@
#include "bitstream.h"
#include "nodfile.h"
#define ARRAY_SIZE(array) \
(sizeof(array) / sizeof(array[0]))
static const struct {
quint8 lon;
quint8 lat;
} LLBITS[] = {
{0xc, 0xc}, {0x8, 0x10}, {0x10, 0x8}, {0x10, 0x10}, {0xc, 0x14},
{0x14, 0xc}, {0x14, 0x14}
};
union NodeShift {
qint32 offset;
quint8 id;
};
static bool adjDistInfo(BitStream1 &bs, bool extraBit, quint8 &flags)
{
quint32 data, cnt;
if (!bs.read(extraBit | 8, data))
return false;
data <<= !extraBit;
flags |= (quint8)data & 1;
data >>= 1;
for (cnt = 0; (data >> cnt) & 1; cnt++) {
if (cnt == 4)
break;
}
if (!bs.read(cnt * 4, data))
return false;
return true;
}
static bool adjNodeInfo(BitStream1 &bs, bool extraBit, NodeShift &shift,
quint8 &flags)
{
quint32 data;
if (!bs.read(9, data))
return false;
data <<= !extraBit;
if (data & 1)
shift.id = data >> 1;
else {
quint32 bits = (data >> 1) & 7;
quint32 data2;
flags |= 2;
if (!bs.read(bits + extraBit + 1, data2))
return false;
data = data2 << (6 - extraBit) | data >> 4;
bits = 0x19 - bits;
shift.offset = ((qint32)(data << bits) >> bits);
}
return true;
}
static bool skipOptAdjData(BitStream1 &bs)
{
// TODO
Q_UNUSED(bs);
Q_ASSERT(false);
return false;
}
bool NODFile::init(Handle &hdl)
{
quint16 hdrLen;
if (!(seek(hdl, _gmpOffset) && readUInt16(hdl, hdrLen)))
return false;
if (hdrLen >= 0x7b) {
if (!(seek(hdl, _gmpOffset + 0x1d) && readUInt32(hdl, _flags)
&& readUInt8(hdl, _blockShift) && readUInt8(hdl, _nodeShift)))
return false;
if (!(seek(hdl, _gmpOffset + 0x67) && readUInt32(hdl, _blockOffset)
&& readUInt32(hdl, _blockSize) && readUInt16(hdl, _blockRecordSize)
&& readUInt32(hdl, _indexOffset) && readUInt32(hdl, _indexSize)
&& readUInt16(hdl, _indexRecordSize) && readUInt32(hdl, _indexFlags)))
return false;
}
return true;
}
quint32 NODFile::indexIdSize(Handle &hdl)
{
if (!_indexRecordSize && !init(hdl))
return 0;
quint32 indexCount = _indexSize / _indexRecordSize;
if (indexCount <= 0x100)
return 1;
else if (indexCount <= 0x1000)
return 2;
else if (indexCount <= 0x1000000)
return 3;
else
return 0;
}
bool NODFile::readBlock(Handle &hdl, quint32 blockOffset,
BlockInfo &blockInfo) const
{
blockInfo.offset = blockOffset;
if (!(seek(hdl, blockInfo.offset + _blockOffset)
&& readUInt16(hdl, blockInfo.hdr.s0) && readUInt32(hdl, blockInfo.hdr.s2)
&& readUInt32(hdl, blockInfo.hdr.s6) && readUInt32(hdl, blockInfo.hdr.sa)
&& readUInt16(hdl, blockInfo.hdr.se) && readUInt8(hdl, blockInfo.hdr.s10)
&& readUInt8(hdl, blockInfo.hdr.s11) && readUInt8(hdl, blockInfo.hdr.s12)))
return false;
return true;
}
bool NODFile::blockInfo(Handle &hdl, quint32 blockId, BlockInfo &blockInfo) const
{
quint32 blockOffset;
quint32 offset = _indexRecordSize * blockId + _indexOffset;
quint32 offsetSize = (_indexFlags & 3) + 1;
if (offset > _indexOffset + _indexSize)
return false;
if (!(seek(hdl, offset) && readVUInt32(hdl, offsetSize, blockOffset)))
return false;
return readBlock(hdl, blockOffset << _blockShift, blockInfo);
}
bool NODFile::linkInfo(Handle &hdl, const BlockInfo &blockInfo, quint32 linkId,
LinkInfo &linkInfo) const
{
if (linkId >= blockInfo.hdr.s10)
return false;
quint32 infoOffset = ((blockInfo.hdr.se * linkId) >> 3) + 0x13
+ ((blockInfo.hdr.s0 >> 0xb) & 1) + blockInfo.offset + _blockOffset;
quint32 s1 = ((blockInfo.hdr.s0 >> 2) & 0x1f) + 8;
quint32 s2 = (blockInfo.hdr.s0 >> 7) & 0xf;
quint32 skip = (blockInfo.hdr.se * linkId) & 7;
if (infoOffset > _blockOffset + _blockSize || infoOffset < blockInfo.offset)
return false;
if (!seek(hdl, infoOffset))
return false;
quint32 unused, flags;
BitStream1 bs(*this, hdl, _blockOffset + _blockSize - infoOffset);
if (!(bs.read(skip, unused) && bs.read(0xc, flags)))
return false;
linkInfo.flags = ((flags << 8) & 0xf0000) | (flags & 0xff);
if (!(flags << 8 & 0x10000)) {
if (!bs.read(s1, linkInfo.linkOffset))
return false;
} else {
if (!bs.read(s1 - s2, linkInfo.linkOffset))
return false;
linkInfo.linkOffset += blockInfo.hdr.sa;
}
if (!bs.read(s2, linkInfo.nodeOffset))
return false;
linkInfo.nodeOffset = (blockInfo.offset - linkInfo.nodeOffset)
>> _nodeShift;
return true;
}
bool NODFile::nodeInfo(Handle &hdl, const BlockInfo &blockInfo,
quint32 nodeOffset, NodeInfo &nodeInfo) const
{
quint32 infoOffset = (nodeOffset << _nodeShift) + _blockOffset;
if (infoOffset > _blockOffset + _blockSize || infoOffset < blockInfo.offset)
return false;
if (!seek(hdl, infoOffset))
return false;
BitStream1 bs(*this, hdl, _blockOffset + _blockSize - infoOffset);
if (!bs.read(8, nodeInfo.flags))
return false;
if ((nodeInfo.flags & 7) >= ARRAY_SIZE(LLBITS))
return false;
quint8 lonBits = LLBITS[nodeInfo.flags & 7].lon;
quint8 latBits = LLBITS[nodeInfo.flags & 7].lat;
quint8 maxBits = ((_flags >> 10) & 7) | 0x18;
quint32 lon, lat;
if (!(bs.read(lonBits, lon) && bs.read(latBits, lat)))
return false;
quint8 lonShift = 0x20 - lonBits;
quint8 latShift = 0x20 - latBits;
quint8 shift = 0x20 - maxBits;
QPoint pos((((int)(lon << lonShift) >> lonShift) << shift)
+ blockInfo.hdr.s2, (((int)(lat << latShift) >> latShift) << shift)
+ blockInfo.hdr.s6);
nodeInfo.bytes = ((lonBits + latBits) >> 3) + 1;
if ((maxBits < 0x1c) && (nodeInfo.flags & 8)) {
quint8 extraBits = 0x1c - maxBits;
quint32 extraLon, extraLat;
if (!(bs.read(extraBits, extraLon) && bs.read(extraBits, extraLat)))
return false;
pos.setX(pos.x() | extraLon << 4); pos.setY(pos.y() | extraLat << 4);
nodeInfo.bytes++;
}
// TODO?: extra bits
nodeInfo.pos = pos;
nodeInfo.flags &= 0xf8;
return true;
}
bool NODFile::nodeOffset(Handle &hdl, const BlockInfo &blockInfo,
quint8 nodeId, quint32 &nodeOffset) const
{
if (nodeId >= blockInfo.hdr.s11)
return false;
quint32 offset = ((blockInfo.hdr.s10 * blockInfo.hdr.se + 7) >> 3)
+ 0x13 + nodeId * 3 + _blockOffset + blockInfo.offset
+ ((blockInfo.hdr.s0 >> 0xb) & 1);
if (!(seek(hdl, offset) && readUInt24(hdl, nodeOffset)))
return false;
return true;
}
bool NODFile::nodeBlock(Handle &hdl, quint32 nodeOffset,
BlockInfo &blockInfo) const
{
int low = 0;
int high = _indexSize / _indexRecordSize - 1;
quint32 offsetSize = (_indexFlags & 3) + 1;
while (low <= high) {
quint32 m = ((low + high) / 2);
quint32 offset = _indexRecordSize * m + _indexOffset;
quint32 blockOffset, prevBlockOffset;
if (m > 0) {
if (!(seek(hdl, offset - _indexRecordSize)
&& readVUInt32(hdl, offsetSize, prevBlockOffset)
&& readVUInt32(hdl, offsetSize, blockOffset)))
return false;
} else {
if (!(seek(hdl, offset)
&& readVUInt32(hdl, offsetSize, blockOffset)))
return false;
prevBlockOffset = 0;
}
prevBlockOffset <<= _blockShift;
blockOffset <<= _blockShift;
if (blockOffset < nodeOffset)
low = m + 1;
else {
if (prevBlockOffset <= nodeOffset)
return readBlock(hdl, blockOffset, blockInfo);
else
high = m - 1;
}
}
return false;
}
bool NODFile::absAdjInfo(Handle &hdl, AdjacencyInfo &adj) const
{
quint32 infoOffset = (adj.nodeOffset << _nodeShift) + _blockOffset
+ adj.nodeInfo.bytes;
if (!seek(hdl, infoOffset))
return false;
BitStream1 bs(*this, hdl, _blockOffset + _blockSize - infoOffset);
quint8 linkId = adj.blockInfo.hdr.s10;
quint32 m2p = 2;
quint32 skip = 8;
quint32 flags;
quint32 nextOffset;
bool extraBit = (adj.nodeInfo.flags >> 6) & 1;
bool linkIdValid = true;
bool firstLoop = true;
do {
adj.flags = 0;
if (!bs.read(8, flags))
return false;
if (firstLoop) {
skip >>= (flags >> 5) & 1;
flags |= 0x20;
}
firstLoop = false;
quint32 f4 = flags & 0x10;
quint32 f4sn = (f4 >> 4) ^ 1;
quint32 m1 = (flags >> 5) & f4sn;
quint32 m2 = (f4 >> 3) | (f4sn & (flags >> 6));
if (m1) {
if (!bs.read(8, linkId))
return false;
linkIdValid = true;
}
if ((m2 != m2p) || (flags & 0x10) || m1) {
quint32 data;
if (!bs.read(skip, data))
return false;
}
if (!(flags & 0x10)) {
if (!adjDistInfo(bs, (m2 == 1 && linkIdValid), adj.flags))
return false;
NodeShift shift;
if (!adjNodeInfo(bs, extraBit, shift, adj.flags))
return false;
if (adj.flags & 2)
nextOffset = adj.nodeOffset + shift.offset;
else if (!nodeOffset(adj.extHdl, adj.blockInfo, shift.id, nextOffset))
return false;
m2p = m2;
}
if (flags & 0x8) {
quint32 data;
if (!bs.read(8, data))
return false;
if (!(data & 0xe0)) {
if (!bs.read(8, data))
return false;
}
}
if ((_flags & 0x18) && !skipOptAdjData(bs))
return false;
if ((m2 == 1) && linkIdValid) {
LinkInfo li;
if (adj.linkId == 0xFFFFFFFF) {
if (!linkInfo(adj.extHdl, adj.blockInfo, linkId, li))
return false;
} else
li.linkOffset = 0xFFFFFFFF;
if ((adj.linkOffset == li.linkOffset) || (adj.linkId == linkId)) {
adj.nodeOffset = nextOffset;
if (!(adj.flags & 2)) {
adj.linkId = 0xFFFFFFFF;
return nodeBlock(hdl, adj.nodeOffset << _nodeShift,
adj.blockInfo);
} else {
adj.linkId = linkId;
return true;
}
}
linkIdValid = false;
}
} while (!(flags & 0x80));
adj.nodeOffset = 0xFFFFFFFF;
return true;
}
bool NODFile::relAdjInfo(Handle &hdl, AdjacencyInfo &adj) const
{
quint32 infoOffset = (adj.nodeOffset << _nodeShift) + _blockOffset
+ adj.nodeInfo.bytes;
if (!seek(hdl, infoOffset))
return false;
BitStream1 bs(*this, hdl, _blockOffset + _blockSize - infoOffset);
quint32 linkId = adj.blockInfo.hdr.s10;
quint32 skip = 8;
quint32 flagsBits = 8;
quint32 flags;
quint32 nextOffset;
bool extraBit = (adj.nodeInfo.flags >> 6) & 1;
bool linkIdValid = true;
bool firstLoop = true;
do {
adj.flags = 0;
if (!bs.read(flagsBits, flags))
return false;
flags <<= (8U - flagsBits);
if (firstLoop) {
skip >>= (flags >> 5) & 1;
flags = ((flags >> 1) & 0x20) | (flags & 0xffffffdf);
}
firstLoop = false;
flagsBits >>= (flags >> 3) & 1;
quint32 m = (((flags & 0x70) == 0x30) << 1) | ((flags >> 6) & 1);
if (!m) {
adj.nodeOffset = 0xFFFFFFFF;
return true;
}
if ((flags & 0x60) == 0x60) {
if (!bs.read(8, linkId))
return false;
linkIdValid = true;
}
if (((flags & 0x70) == 0x70)) {
quint32 data;
if (!bs.read(skip, data))
return false;
}
if ((flags & 0x50) == 0x50) {
if (!adjDistInfo(bs, false, adj.flags))
return false;
adj.flags |= 1;
}
if ((flags >> 6) & 1) {
NodeShift shift;
if (!adjNodeInfo(bs, extraBit, shift, adj.flags))
return false;
if (adj.flags & 2)
nextOffset = adj.nodeOffset + shift.offset;
else if (!nodeOffset(adj.extHdl, adj.blockInfo, shift.id, nextOffset))
return false;
}
if ((_flags & 0x18) && !skipOptAdjData(bs))
return false;
if (((m == 1) && linkIdValid)) {
LinkInfo li;
if (adj.linkId == 0xFFFFFFFF) {
if (!linkInfo(adj.extHdl, adj.blockInfo, linkId, li))
return false;
} else
li.linkOffset = 0xFFFFFFFF;
if ((adj.linkOffset == li.linkOffset) || (adj.linkId == linkId)) {
adj.nodeOffset = nextOffset;
if (!(adj.flags & 2)) {
adj.linkId = 0xFFFFFFFF;
return nodeBlock(hdl, adj.nodeOffset << _nodeShift,
adj.blockInfo);
} else {
adj.linkId = linkId;
return true;
}
}
linkIdValid = false;
}
} while (!(flags & 0x80));
adj.nodeOffset = 0xFFFFFFFF;
return true;
}
int NODFile::nextNode(Handle &hdl, AdjacencyInfo &adjInfo)
{
if (adjInfo.nodeOffset == 0xFFFFFFFF)
return 1;
if (!nodeInfo(hdl, adjInfo.blockInfo, adjInfo.nodeOffset,
adjInfo.nodeInfo))
return -1;
if (!adjacencyInfo(hdl, adjInfo))
return -1;
return 0;
}
bool NODFile::linkType(Handle &hdl, const BlockInfo &blockInfo, quint8 linkId,
quint32 &type) const
{
quint32 offset = ((blockInfo.hdr.s10 * blockInfo.hdr.se + 7) >> 3) + 0x13
+ blockInfo.offset + _blockOffset + ((blockInfo.hdr.s0 >> 0xb) & 1)
+ blockInfo.hdr.s11 * 3;
quint32 low = 0;
quint32 high = blockInfo.hdr.s12 - 1;
quint32 pos;
quint16 val;
if (high > 1) {
do {
pos = (low + high) / 2;
if (!seek(hdl, offset + _blockRecordSize * pos))
return false;
if (!readUInt16(hdl, val))
return false;
quint32 tmp = pos;
if ((val >> 8) <= linkId) {
low = pos;
tmp = high;
}
high = tmp;
} while (low + 1 < high);
}
if (!seek(hdl, offset + _blockRecordSize * low))
return false;
if (!readUInt16(hdl, val))
return false;
type = val & 0x3f;
if ((low < high) && (pos != high)) {
if (!seek(hdl, offset + _blockRecordSize * high))
return false;
if (!readUInt16(hdl, val))
return false;
if ((val >> 8) <= linkId) {
type = (val & 0x3f);
}
}
type <<= 8;
return true;
}

98
src/map/IMG/nodfile.h Normal file
View File

@ -0,0 +1,98 @@
#ifndef NODFILE_H
#define NODFILE_H
#include "img.h"
#include "subfile.h"
class NODFile : public SubFile
{
public:
struct BlockInfo
{
quint32 offset;
struct
{
quint32 s2; // node lon base
quint32 s6; // node lat base
quint32 sa;
quint16 s0; // flags
quint16 se; // link info bit size
quint8 s10; // links count
quint8 s11; // nodes count
quint8 s12; // link types count
} hdr;
};
struct LinkInfo
{
quint32 linkOffset;
quint32 nodeOffset;
quint32 flags;
};
struct NodeInfo
{
QPoint pos;
quint8 flags;
quint8 bytes;
};
struct AdjacencyInfo
{
AdjacencyInfo(const SubFile *file, const BlockInfo &blockInfo,
quint32 linkId, const LinkInfo &linkInfo) : extHdl(file),
blockInfo(blockInfo), nodeOffset(linkInfo.nodeOffset),
linkOffset(linkInfo.linkOffset), linkId(linkId)
{}
Handle extHdl;
struct BlockInfo blockInfo;
struct NodeInfo nodeInfo;
quint32 nodeOffset;
quint32 linkOffset;
quint32 linkId;
quint8 flags;
};
NODFile(IMG *img) : SubFile(img), _indexOffset(0), _indexSize(0),
_indexFlags(0), _blockOffset(0), _blockSize(0), _indexRecordSize(0),
_blockRecordSize(0), _blockShift(0), _nodeShift(0) {}
NODFile(const QString &path) : SubFile(path), _indexOffset(0), _indexSize(0),
_indexFlags(0), _blockOffset(0), _blockSize(0), _indexRecordSize(0),
_blockRecordSize(0), _blockShift(0), _nodeShift(0) {}
NODFile(SubFile *gmp, quint32 offset) : SubFile(gmp, offset),
_indexOffset(0), _indexSize(0),_indexFlags(0), _blockOffset(0),
_blockSize(0), _indexRecordSize(0), _blockRecordSize(0), _blockShift(0),
_nodeShift(0) {}
quint32 indexIdSize(Handle &hdl);
bool blockInfo(Handle &hdl, quint32 blockId, BlockInfo &blockInfo) const;
bool linkInfo(Handle &hdl, const BlockInfo &blockInfo, quint32 linkId,
LinkInfo &linkInfo) const;
bool linkType(Handle &hdl, const BlockInfo &blockInfo, quint8 linkId,
quint32 &type) const;
int nextNode(Handle &hdl, AdjacencyInfo &adjInfo);
private:
bool init(Handle &hdl);
bool nodeInfo(Handle &hdl, const BlockInfo &blockInfo, quint32 nodeOffset,
NodeInfo &nodeInfo) const;
bool nodeOffset(Handle &hdl, const BlockInfo &blockInfo, quint8 nodeId,
quint32 &nodeOffset) const;
bool absAdjInfo(Handle &hdl, AdjacencyInfo &adj) const;
bool relAdjInfo(Handle &hdl, AdjacencyInfo &adj) const;
bool adjacencyInfo(Handle &hdl, AdjacencyInfo &adj) const
{
return (adj.nodeInfo.flags & 0x20) ? absAdjInfo(hdl, adj)
: relAdjInfo(hdl, adj);
}
bool nodeBlock(Handle &hdl, quint32 nodeOffset, BlockInfo &blockInfo) const;
bool readBlock(Handle &hdl, quint32 blockOffset, BlockInfo &blockInfo) const;
quint32 _indexOffset, _indexSize, _indexFlags, _blockOffset, _blockSize;
quint16 _indexRecordSize, _blockRecordSize;
quint8 _blockShift, _nodeShift;
quint32 _flags;
};
#endif // NETFILE_H

406
src/map/IMG/rastertile.cpp Normal file
View File

@ -0,0 +1,406 @@
#include <QFont>
#include <QPainter>
#include "textpathitem.h"
#include "textpointitem.h"
#include "bitmapline.h"
#include "style.h"
#include "rastertile.h"
#define AREA(rect) \
(rect.size().width() * rect.size().height())
static const QColor shieldColor(Qt::white);
static const QColor shieldBgColor1("#dd3e3e");
static const QColor shieldBgColor2("#379947");
static const QColor shieldBgColor3("#4a7fc1");
static QString convertUnits(const QString &str)
{
bool ok;
int number = str.toInt(&ok);
return ok ? QString::number(qRound(number * 0.3048)) : str;
}
static int minPOIZoom(Style::POIClass cl)
{
switch (cl) {
case Style::Food:
case Style::Shopping:
case Style::Services:
return 27;
case Style::Accommodation:
case Style::Recreation:
return 25;
case Style::ManmadePlaces:
case Style::NaturePlaces:
case Style::Transport:
case Style::Community:
case Style::Elementary:
return 23;
default:
return 0;
}
}
static QFont pixelSizeFont(int pixelSize)
{
QFont f;
f.setPixelSize(pixelSize);
return f;
}
static QFont *font(Style::FontSize size, Style::FontSize defaultSize
= Style::Normal)
{
/* The fonts must be initialized on first usage (after the QGuiApplication
instance is created) */
static QFont large = pixelSizeFont(16);
static QFont normal = pixelSizeFont(14);
static QFont small = pixelSizeFont(12);
static QFont extraSmall = pixelSizeFont(10);
switch (size) {
case Style::None:
return 0;
case Style::Large:
return &large;
case Style::Normal:
return &normal;
case Style::Small:
return &small;
case Style::ExtraSmall:
return &extraSmall;
default:
return font(defaultSize);
}
}
static QFont *poiFont(Style::FontSize size = Style::Normal)
{
static QFont poi = pixelSizeFont(10);
switch (size) {
case Style::None:
return 0;
default:
return &poi;
}
}
static const QColor *shieldBgColor(Label::Shield::Type type)
{
switch (type) {
case Label::Shield::USInterstate:
case Label::Shield::Hbox:
return &shieldBgColor1;
case Label::Shield::USShield:
case Label::Shield::Box:
return &shieldBgColor2;
case Label::Shield::USRound:
case Label::Shield::Oval:
return &shieldBgColor3;
default:
return 0;
}
}
static int minShieldZoom(Label::Shield::Type type)
{
switch (type) {
case Label::Shield::USInterstate:
case Label::Shield::Hbox:
return 17;
case Label::Shield::USShield:
case Label::Shield::Box:
return 19;
case Label::Shield::USRound:
case Label::Shield::Oval:
return 20;
default:
return 0;
}
}
static qreal area(const QVector<QPointF> &polygon)
{
qreal area = 0;
for (int i = 0; i < polygon.size(); i++) {
int j = (i + 1) % polygon.size();
area += polygon.at(i).x() * polygon.at(j).y();
area -= polygon.at(i).y() * polygon.at(j).x();
}
area /= 2.0;
return area;
}
static QPointF centroid(const QVector<QPointF> &polygon)
{
qreal cx = 0, cy = 0;
qreal factor = 1.0 / (6.0 * area(polygon));
for (int i = 0; i < polygon.size(); i++) {
int j = (i + 1) % polygon.size();
qreal f = (polygon.at(i).x() * polygon.at(j).y() - polygon.at(j).x()
* polygon.at(i).y());
cx += (polygon.at(i).x() + polygon.at(j).x()) * f;
cy += (polygon.at(i).y() + polygon.at(j).y()) * f;
}
return QPointF(cx * factor, cy * factor);
}
static bool rectNearPolygon(const QPolygonF &polygon, const QRectF &rect)
{
return (polygon.boundingRect().contains(rect)
&& (polygon.containsPoint(rect.topLeft(), Qt::OddEvenFill)
|| polygon.containsPoint(rect.topRight(), Qt::OddEvenFill)
|| polygon.containsPoint(rect.bottomLeft(), Qt::OddEvenFill)
|| polygon.containsPoint(rect.bottomRight(), Qt::OddEvenFill)));
}
void RasterTile::render()
{
QList<TextItem*> textItems;
processPoints(textItems);
processPolygons(textItems);
processLines(textItems);
_img.fill(Qt::transparent);
QPainter painter(&_img);
painter.setRenderHint(QPainter::SmoothPixmapTransform);
painter.setRenderHint(QPainter::Antialiasing);
painter.translate(-_xy.x(), -_xy.y());
drawPolygons(&painter);
drawLines(&painter);
drawTextItems(&painter, textItems);
//painter.setPen(Qt::red);
//painter.drawRect(QRect(_xy, _img.size()));
qDeleteAll(textItems);
}
void RasterTile::drawPolygons(QPainter *painter)
{
for (int n = 0; n < _style->drawOrder().size(); n++) {
for (int i = 0; i < _polygons.size(); i++) {
const MapData::Poly &poly = _polygons.at(i);
if (poly.type != _style->drawOrder().at(n))
continue;
const Style::Polygon &style = _style->polygon(poly.type);
painter->setPen(style.pen());
painter->setBrush(style.brush());
painter->drawPolygon(poly.points);
}
}
}
void RasterTile::drawLines(QPainter *painter)
{
painter->setBrush(Qt::NoBrush);
for (int i = 0; i < _lines.size(); i++) {
const MapData::Poly &poly = _lines.at(i);
const Style::Line &style = _style->line(poly.type);
if (style.background() == Qt::NoPen)
continue;
painter->setPen(style.background());
painter->drawPolyline(poly.points);
}
for (int i = 0; i < _lines.size(); i++) {
const MapData::Poly &poly = _lines.at(i);
const Style::Line &style = _style->line(poly.type);
if (!style.img().isNull())
BitmapLine::draw(painter, poly.points, style.img());
else if (style.foreground() != Qt::NoPen) {
painter->setPen(style.foreground());
painter->drawPolyline(poly.points);
}
}
}
void RasterTile::drawTextItems(QPainter *painter,
const QList<TextItem*> &textItems)
{
for (int i = 0; i < textItems.size(); i++)
textItems.at(i)->paint(painter);
}
void RasterTile::processPolygons(QList<TextItem*> &textItems)
{
for (int i = 0; i < _polygons.size(); i++) {
MapData::Poly &poly = _polygons[i];
if (poly.label.text().isEmpty())
continue;
if (_zoom <= 23 && (Style::isWaterArea(poly.type)
|| Style::isMilitaryArea(poly.type)
|| Style::isNatureReserve(poly.type))) {
const Style::Polygon &style = _style->polygon(poly.type);
TextPointItem *item = new TextPointItem(
centroid(poly.points).toPoint(), &poly.label.text(),
poiFont(), 0, &style.brush().color());
if (item->isValid() && !item->collides(textItems)
&& rectNearPolygon(poly.points, item->boundingRect()))
textItems.append(item);
else
delete item;
}
}
}
void RasterTile::processLines(QList<TextItem*> &textItems)
{
QRect tileRect(_xy, _img.size());
qStableSort(_lines);
if (_zoom >= 22)
processStreetNames(tileRect, textItems);
processShields(tileRect, textItems);
}
void RasterTile::processStreetNames(const QRect &tileRect,
QList<TextItem*> &textItems)
{
for (int i = 0; i < _lines.size(); i++) {
MapData::Poly &poly = _lines[i];
const Style::Line &style = _style->line(poly.type);
if (style.img().isNull() && style.foreground() == Qt::NoPen)
continue;
if (poly.label.text().isEmpty()
|| style.textFontSize() == Style::None)
continue;
if (Style::isContourLine(poly.type))
poly.label.setText(convertUnits(poly.label.text()));
const QFont *fnt = font(style.textFontSize(), Style::Small);
const QColor *color = style.textColor().isValid()
? &style.textColor() : 0;
TextPathItem *item = new TextPathItem(poly.points,
&poly.label.text(), tileRect, fnt, color);
if (item->isValid() && !item->collides(textItems))
textItems.append(item);
else
delete item;
}
}
void RasterTile::processShields(const QRect &tileRect,
QList<TextItem*> &textItems)
{
for (int type = FIRST_SHIELD; type <= LAST_SHIELD; type++) {
if (minShieldZoom(static_cast<Label::Shield::Type>(type)) > _zoom)
continue;
QHash<Label::Shield, QPolygonF> shields;
QHash<Label::Shield, const Label::Shield*> sp;
for (int i = 0; i < _lines.size(); i++) {
const MapData::Poly &poly = _lines.at(i);
const Label::Shield &shield = poly.label.shield();
if (!shield.isValid() || shield.type() != type
|| !Style::isMajorRoad(poly.type))
continue;
QPolygonF &p = shields[shield];
for (int j = 0; j < poly.points.size(); j++)
p.append(poly.points.at(j));
sp.insert(shield, &shield);
}
for (QHash<Label::Shield, QPolygonF>::const_iterator it
= shields.constBegin(); it != shields.constEnd(); ++it) {
const QPolygonF &p = it.value();
QRectF rect(p.boundingRect() & tileRect);
if (AREA(rect) < AREA(QRect(0, 0, _img.width()/4, _img.width()/4)))
continue;
QMap<qreal, int> map;
QPointF center = rect.center();
for (int j = 0; j < p.size(); j++) {
QLineF l(p.at(j), center);
map.insert(l.length(), j);
}
QMap<qreal, int>::const_iterator jt = map.constBegin();
TextPointItem *item = new TextPointItem(
p.at(jt.value()).toPoint(), &(sp.value(it.key())->text()),
poiFont(), 0, &shieldColor, shieldBgColor(it.key().type()));
bool valid = false;
while (true) {
if (!item->collides(textItems)
&& tileRect.contains(item->boundingRect().toRect())) {
valid = true;
break;
}
if (++jt == map.constEnd())
break;
item->setPos(p.at(jt.value()).toPoint());
}
if (valid)
textItems.append(item);
else
delete item;
}
}
}
void RasterTile::processPoints(QList<TextItem*> &textItems)
{
qSort(_points);
for (int i = 0; i < _points.size(); i++) {
MapData::Point &point = _points[i];
const Style::Point &style = _style->point(point.type);
if (point.poi && _zoom < minPOIZoom(Style::poiClass(point.type)))
continue;
const QString *label = point.label.text().isEmpty()
? 0 : &(point.label.text());
const QImage *img = style.img().isNull() ? 0 : &style.img();
const QFont *fnt = point.poi
? poiFont(style.textFontSize()) : font(style.textFontSize());
const QColor *color = style.textColor().isValid()
? &style.textColor() : 0;
if ((!label || !fnt) && !img)
continue;
if (Style::isSpot(point.type))
point.label.setText(convertUnits(point.label.text()));
if (Style::isSummit(point.type) && !point.label.text().isEmpty()) {
QStringList list = point.label.text().split(" ");
list.last() = convertUnits(list.last());
point.label = list.join(" ");
}
TextPointItem *item = new TextPointItem(QPoint(point.coordinates.lon(),
point.coordinates.lat()), label, fnt, img, color);
if (item->isValid() && !item->collides(textItems))
textItems.append(item);
else
delete item;
}
}

48
src/map/IMG/rastertile.h Normal file
View File

@ -0,0 +1,48 @@
#ifndef RASTERTILE_H
#define RASTERTILE_H
#include <QImage>
#include "mapdata.h"
class QPainter;
class TextItem;
class Style;
class RasterTile
{
public:
RasterTile(const Style *style, int zoom, const QRect &rect,
const QString &key, const QList<MapData::Poly> &polygons,
const QList<MapData::Poly> &lines, QList<MapData::Point> &points)
: _style(style), _zoom(zoom), _xy(rect.topLeft()),
_key(key), _img(rect.size(), QImage::Format_ARGB32_Premultiplied),
_polygons(polygons), _lines(lines), _points(points) {}
const QString &key() const {return _key;}
const QPoint &xy() const {return _xy;}
const QImage &img() const {return _img;}
void render();
private:
void drawPolygons(QPainter *painter);
void drawLines(QPainter *painter);
void drawTextItems(QPainter *painter, const QList<TextItem*> &textItems);
void processPolygons(QList<TextItem *> &textItems);
void processLines(QList<TextItem*> &textItems);
void processPoints(QList<TextItem*> &textItems);
void processShields(const QRect &tileRect, QList<TextItem*> &textItems);
void processStreetNames(const QRect &tileRect, QList<TextItem*> &textItems);
const Style *_style;
int _zoom;
QPoint _xy;
QString _key;
QImage _img;
QList<MapData::Poly> _polygons;
QList<MapData::Poly> _lines;
QList<MapData::Point> _points;
};
#endif // RASTERTILE_H

View File

@ -1,13 +1,15 @@
#include <cstring>
#include "common/rectc.h"
#include "common/garmin.h"
#include "deltastream.h"
#include "huffmanstream.h"
#include "lblfile.h"
#include "netfile.h"
#include "nodfile.h"
#include "rgnfile.h"
#define MASK(bits) ((2U << ((bits) - 1U)) - 1U)
static quint64 pointId(const QPoint &pos, quint32 type, quint32 labelPtr)
{
quint64 id;
@ -49,11 +51,10 @@ bool RGNFile::skipClassFields(Handle &hdl) const
break;
}
return seek(hdl, hdl.pos() + rs);
return seek(hdl, pos(hdl) + rs);
}
bool RGNFile::skipLclFields(Handle &hdl, const quint32 flags[3],
SegmentType type) const
bool RGNFile::skipLclFields(Handle &hdl, const quint32 flags[3]) const
{
quint32 bitfield = 0xFFFFFFFF;
@ -61,34 +62,38 @@ bool RGNFile::skipLclFields(Handle &hdl, const quint32 flags[3],
if (!readVBitfield32(hdl, bitfield))
return false;
for (int i = 0; i < 29; i++) {
for (int i = 0, j = 0; i < 29; i++) {
if ((flags[0] >> i) & 1) {
if (bitfield & 1) {
quint32 m = flags[(i >> 4) + 1] >> ((i * 2) & 0x1e) & 3;
switch (i) {
case 5:
if (m == 1 && type == Point) {
quint16 u16;
if (!readUInt16(hdl, u16))
return false;
}
break;
default:
break;
}
quint32 m = flags[(j >> 4) + 1] >> ((j * 2) & 0x1e) & 3;
quint32 skip = 0;
if (m == 3) {
if (!readVUInt32(hdl, skip))
return false;
} else
skip = m + 1;
if (!seek(hdl, pos(hdl) + skip))
return false;
}
bitfield >>= 1;
j++;
}
}
return true;
}
void RGNFile::clearFlags()
bool RGNFile::skipGblFields(Handle &hdl, quint32 flags) const
{
memset(_polygonsFlags, 0, sizeof(_polygonsFlags));
memset(_linesFlags, 0, sizeof(_linesFlags));
memset(_pointsFlags, 0, sizeof(_pointsFlags));
int cnt = 0;
do {
cnt = cnt + (flags & 3);
flags = flags >> 2;
} while (flags != 0);
return seek(hdl, pos(hdl) + cnt);
}
bool RGNFile::init(Handle &hdl)
@ -102,14 +107,20 @@ bool RGNFile::init(Handle &hdl)
if (hdrLen >= 0x68) {
if (!(readUInt32(hdl, _polygonsOffset) && readUInt32(hdl, _polygonsSize)
&& seek(hdl, _gmpOffset + 0x2D) && readUInt32(hdl, _polygonsFlags[0])
&& readUInt32(hdl, _polygonsFlags[1]) && readUInt32(hdl, _polygonsFlags[2])
&& seek(hdl, _gmpOffset + 0x29) && readUInt32(hdl, _polygonsGblFlags)
&& readUInt32(hdl, _polygonsLclFlags[0])
&& readUInt32(hdl, _polygonsLclFlags[1])
&& readUInt32(hdl, _polygonsLclFlags[2])
&& readUInt32(hdl, _linesOffset) && readUInt32(hdl, _linesSize)
&& seek(hdl, _gmpOffset + 0x49) && readUInt32(hdl, _linesFlags[0])
&& readUInt32(hdl, _linesFlags[1]) && readUInt32(hdl, _linesFlags[2])
&& seek(hdl, _gmpOffset + 0x45) && readUInt32(hdl, _linesGblFlags)
&& readUInt32(hdl, _linesLclFlags[0])
&& readUInt32(hdl, _linesLclFlags[1])
&& readUInt32(hdl, _linesLclFlags[2])
&& readUInt32(hdl, _pointsOffset) && readUInt32(hdl, _pointsSize)
&& seek(hdl, _gmpOffset + 0x65) && readUInt32(hdl, _pointsFlags[0])
&& readUInt32(hdl, _pointsFlags[1]) && readUInt32(hdl, _pointsFlags[2])))
&& seek(hdl, _gmpOffset + 0x61) && readUInt32(hdl, _pointsGblFlags)
&& readUInt32(hdl, _pointsLclFlags[0])
&& readUInt32(hdl, _pointsLclFlags[1])
&& readUInt32(hdl, _pointsLclFlags[2])))
return false;
}
@ -147,7 +158,7 @@ bool RGNFile::polyObjects(Handle &hdl, const SubDiv *subdiv,
qint16 lon, lat;
quint16 len;
while (hdl.pos() < (int)segment.end()) {
while (pos(hdl) < segment.end()) {
IMG::Poly poly;
if (!(readUInt8(hdl, type) && readUInt24(hdl, labelPtr)
@ -222,7 +233,7 @@ bool RGNFile::extPolyObjects(Handle &hdl, const SubDiv *subdiv, quint32 shift,
if (!seek(hdl, segment.offset()))
return false;
while (hdl.pos() < (int)segment.end()) {
while (pos(hdl) < segment.end()) {
IMG::Poly poly;
QPoint pos;
@ -230,6 +241,7 @@ bool RGNFile::extPolyObjects(Handle &hdl, const SubDiv *subdiv, quint32 shift,
&& readInt16(hdl, lon) && readInt16(hdl, lat)
&& readVUInt32(hdl, len)))
return false;
Q_ASSERT(SubFile::pos(hdl) + len <= segment.end());
poly.type = 0x10000 | (quint16(type)<<8) | (subtype & 0x1F);
labelPtr = 0;
@ -239,8 +251,10 @@ bool RGNFile::extPolyObjects(Handle &hdl, const SubDiv *subdiv, quint32 shift,
LS(subdiv->lat(), 8) + LS(lat, (32-subdiv->bits())));
qint32 lonDelta, latDelta;
HuffmanStream stream(*this, hdl, len, _huffmanTable,
segmentType == Line);
BitStream4F bs(*this, hdl, len);
HuffmanStreamF stream(bs, _huffmanTable);
if (!stream.init(segmentType == Line))
return false;
if (shift) {
if (!stream.readOffset(lonDelta, latDelta))
@ -298,7 +312,11 @@ bool RGNFile::extPolyObjects(Handle &hdl, const SubDiv *subdiv, quint32 shift,
if (subtype & 0x80 && !skipClassFields(hdl))
return false;
if (subtype & 0x40 && !skipLclFields(hdl, segmentType == Line
? _linesFlags : _polygonsFlags, segmentType))
? _linesLclFlags : _polygonsLclFlags))
return false;
quint32 gblFlags = (segmentType == Line)
? _linesGblFlags : _polygonsGblFlags;
if (gblFlags && !skipGblFields(hdl, gblFlags))
return false;
if (lbl && (labelPtr & 0x3FFFFF))
@ -317,12 +335,13 @@ bool RGNFile::pointObjects(Handle &hdl, const SubDiv *subdiv,
const SubDiv::Segment &segment = (segmentType == IndexedPoint)
? subdiv->idxPoints() : subdiv->points();
if (!segment.isValid())
return true;
if (!seek(hdl, segment.offset()))
return false;
while (hdl.pos() < (int)segment.end()) {
while (pos(hdl) < segment.end()) {
IMG::Point point;
quint8 type, subtype;
qint16 lon, lat;
@ -365,7 +384,7 @@ bool RGNFile::extPointObjects(Handle &hdl, const SubDiv *subdiv, LBLFile *lbl,
if (!seek(hdl, segment.offset()))
return false;
while (hdl.pos() < (int)segment.end()) {
while (pos(hdl) < segment.end()) {
IMG::Point point;
qint16 lon, lat;
quint8 type, subtype;
@ -379,7 +398,9 @@ bool RGNFile::extPointObjects(Handle &hdl, const SubDiv *subdiv, LBLFile *lbl,
return false;
if (subtype & 0x80 && !skipClassFields(hdl))
return false;
if (subtype & 0x40 && !skipLclFields(hdl, _pointsFlags, Point))
if (subtype & 0x40 && !skipLclFields(hdl, _pointsLclFlags))
return false;
if (_pointsGblFlags && !skipGblFields(hdl, _pointsGblFlags))
return false;
QPoint pos(subdiv->lon() + LS(lon, 24-subdiv->bits()),
@ -403,6 +424,87 @@ bool RGNFile::extPointObjects(Handle &hdl, const SubDiv *subdiv, LBLFile *lbl,
return true;
}
bool RGNFile::links(Handle &hdl, const SubDiv *subdiv, quint32 shift,
NETFile *net, Handle &netHdl, NODFile *nod, Handle &nodHdl, LBLFile *lbl,
Handle &lblHdl, QList<IMG::Poly> *lines) const
{
quint32 size, blockIndexIdSize, blockIndexId;
quint8 flags;
const SubDiv::Segment &segment = subdiv->roadReferences();
if (!segment.isValid())
return true;
if (!seek(hdl, segment.offset()))
return false;
if (!net || !nod)
return false;
if (!(blockIndexIdSize = nod->indexIdSize(nodHdl)))
return false;
while (pos(hdl) < segment.end()) {
if (!readVUInt32(hdl, size))
return false;
quint32 entryStart = pos(hdl);
if (!(readUInt8(hdl, flags) && readVUInt32(hdl, blockIndexIdSize,
blockIndexId)))
return false;
quint8 bits[3];
for (int i = 0; i < 3; i++)
bits[i] = 0x4000a08 >> (((flags >> (2*i) & 3) << 3) ^ 0x10);
quint8 byteSize = ((bits[0] + bits[1] + bits[2]) + 7) >> 3;
quint32 counts;
if (!readVUInt32(hdl, byteSize, counts))
return false;
quint16 b8 = bits[0] ? (MASK(bits[0]) & counts) + 1 : 0;
quint16 b10 = bits[1] ? (MASK(bits[1]) & (counts >> bits[0])) + 1 : 0;
quint16 b16 = bits[2] ? (MASK(bits[2]) & (counts >> (bits[0] + bits[1])))
+ 1 : 0;
NODFile::BlockInfo blockInfo;
if (!nod->blockInfo(nodHdl, blockIndexId, blockInfo))
return false;
quint8 linkId, lineId;
for (int i = 0; i < b8 + b10 + b16; i++) {
if (!b8 || b8 <= i) {
quint16 v16;
if (!readUInt16(hdl, v16))
return false;
if (!b16 || b8 + b16 <= i) {
int shift = ((i - (b8 + b16)) * 10) % 8;
linkId = (quint8)(v16 >> shift);
lineId = (((v16 >> shift) >> 8) & 3) + 1;
if (shift < 6 && i < b8 + b10 + b16 - 1)
seek(hdl, pos(hdl) - 1);
} else {
linkId = (quint8)v16;
lineId = v16 >> 8;
Q_ASSERT(lineId > 4);
}
} else {
if (!readUInt8(hdl, linkId))
return false;
lineId = 0;
}
net->link(subdiv, shift, netHdl, nod, nodHdl, lbl, lblHdl,
blockInfo, linkId, lineId, _huffmanTable, lines);
}
Q_ASSERT(entryStart + size == pos(hdl));
}
return true;
}
QMap<RGNFile::SegmentType, SubDiv::Segment> RGNFile::segments(Handle &hdl,
SubDiv *subdiv) const
{

View File

@ -8,6 +8,7 @@
class LBLFile;
class NETFile;
class NODFile;
class RGNFile : public SubFile
{
@ -23,15 +24,14 @@ public:
RGNFile(IMG *img)
: SubFile(img), _offset(0), _size(0), _polygonsOffset(0),
_polygonsSize(0), _linesOffset(0), _linesSize(0), _pointsOffset(0),
_pointsSize(0), _init(false) {clearFlags();}
_pointsSize(0), _init(false) {}
RGNFile(const QString &path)
: SubFile(path), _offset(0), _size(0), _polygonsOffset(0),
_polygonsSize(0), _linesOffset(0), _linesSize(0), _pointsOffset(0),
_pointsSize(0), _init(false) {clearFlags();}
_pointsSize(0), _init(false) {}
RGNFile(SubFile *gmp, quint32 offset) : SubFile(gmp, offset), _offset(0),
_size(0), _polygonsOffset(0), _polygonsSize(0), _linesOffset(0),
_linesSize(0), _pointsOffset(0), _pointsSize(0), _init(false)
{clearFlags();}
_linesSize(0), _pointsOffset(0), _pointsSize(0), _init(false) {}
bool initialized() const {return _init;}
bool init(Handle &hdl);
@ -46,29 +46,35 @@ public:
QList<IMG::Poly> *polys) const;
bool extPointObjects(Handle &hdl, const SubDiv *subdiv, LBLFile *lbl,
Handle &lblHdl, QList<IMG::Point> *points) const;
bool links(Handle &hdl, const SubDiv *subdiv, quint32 shift, NETFile *net,
Handle &netHdl, NODFile *nod, Handle &nodHdl, LBLFile *lbl, Handle &lblHdl,
QList<IMG::Poly> *lines) const;
bool subdivInit(Handle &hdl, SubDiv *subdiv) const;
private:
QMap<SegmentType, SubDiv::Segment> segments(Handle &hdl, SubDiv *subdiv)
const;
void clearFlags();
bool skipClassFields(Handle &hdl) const;
bool skipLclFields(Handle &hdl, const quint32 flags[3], SegmentType type)
bool skipLclFields(Handle &hdl, const quint32 flags[3])
const;
bool skipGblFields(Handle &hdl, quint32 flags) const;
quint32 _offset;
quint32 _size;
quint32 _polygonsOffset;
quint32 _polygonsSize;
quint32 _polygonsFlags[3];
quint32 _polygonsLclFlags[3];
quint32 _polygonsGblFlags;
quint32 _linesOffset;
quint32 _linesSize;
quint32 _linesFlags[3];
quint32 _linesLclFlags[3];
quint32 _linesGblFlags;
quint32 _pointsOffset;
quint32 _pointsSize;
quint32 _pointsFlags[3];
quint32 _pointsLclFlags[3];
quint32 _pointsGblFlags;
HuffmanTable _huffmanTable;

View File

@ -25,12 +25,12 @@ void Style::defaultPolygonStyle()
_polygons[TYPE(0x12)] = Polygon(QBrush("#e6e2d9"));
_polygons[TYPE(0x13)] = Polygon(QBrush("#dbd0b6"),
QPen(QColor("#cdccc4"), 1));
_polygons[TYPE(0x14)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x15)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x14)] = Polygon(QBrush("#cadfaf"));
_polygons[TYPE(0x15)] = Polygon(QBrush("#cadfaf"));
_polygons[TYPE(0x16)] = Polygon(QBrush(QColor("#9ac269"),
Qt::BDiagPattern));
_polygons[TYPE(0x17)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x18)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x17)] = Polygon(QBrush("#e4efcf"));
_polygons[TYPE(0x18)] = Polygon(QBrush("#e3edc6"));
_polygons[TYPE(0x19)] = Polygon(QBrush("#e3edc6"), QPen("#c9d3a5"));
_polygons[TYPE(0x1a)] = Polygon(QBrush("#000000", Qt::Dense6Pattern),
QPen(QColor("#cdccc4"), 1));
@ -60,23 +60,23 @@ void Style::defaultPolygonStyle()
_polygons[TYPE(0x4a)] = Polygon(QBrush("#f1f0e5"), QPen("#f1f0e5"));
_polygons[TYPE(0x4c)] = Polygon(QBrush("#9fc4e1", Qt::Dense6Pattern));
_polygons[TYPE(0x4d)] = Polygon(QBrush("#ddf1fd"));
_polygons[TYPE(0x4e)] = Polygon(QBrush("#e3edc1"));
_polygons[TYPE(0x4f)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x50)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x4e)] = Polygon(QBrush("#f8f8f8"));
_polygons[TYPE(0x4f)] = Polygon(QBrush("#e4efcf"));
_polygons[TYPE(0x50)] = Polygon(QBrush("#cadfaf"));
_polygons[TYPE(0x51)] = Polygon(QBrush("#9fc4e1", Qt::Dense4Pattern));
_polygons[TYPE(0x52)] = Polygon(QBrush("#d4ebb8"));
_polygons[TYPE(0x52)] = Polygon(QBrush("#cadfaf"));
_drawOrder << TYPE(0x4b) << TYPE(0x4a) << TYPE(0x01) << TYPE(0x02)
<< TYPE(0x03) << TYPE(0x17) << TYPE(0x18) << TYPE(0x19) << TYPE(0x1a)
<< TYPE(0x28) << TYPE(0x29) << TYPE(0x32) << TYPE(0x3b) << TYPE(0x3c)
<< TYPE(0x3d) << TYPE(0x3e) << TYPE(0x3f) << TYPE(0x40) << TYPE(0x41)
<< TYPE(0x42) << TYPE(0x43) << TYPE(0x44) << TYPE(0x45) << TYPE(0x46)
<< TYPE(0x47) << TYPE(0x48) << TYPE(0x49) << TYPE(0x4c) << TYPE(0x4d)
<< TYPE(0x4e) << TYPE(0x4f) << TYPE(0x50) << TYPE(0x51) << TYPE(0x52)
<< TYPE(0x14) << TYPE(0x15) << TYPE(0x16) << TYPE(0x1e) << TYPE(0x1f)
<< TYPE(0x04) << TYPE(0x05) << TYPE(0x06) << TYPE(0x07) << TYPE(0x08)
<< TYPE(0x09) << TYPE(0x0a) << TYPE(0x0b) << TYPE(0x0c) << TYPE(0x0d)
<< TYPE(0x0e) << TYPE(0x0f) << TYPE(0x10) << TYPE(0x11) << TYPE(0x12)
<< TYPE(0x03) << TYPE(0x17) << TYPE(0x18) << TYPE(0x1a) << TYPE(0x28)
<< TYPE(0x29) << TYPE(0x32) << TYPE(0x3b) << TYPE(0x3c) << TYPE(0x3d)
<< TYPE(0x3e) << TYPE(0x3f) << TYPE(0x40) << TYPE(0x41) << TYPE(0x42)
<< TYPE(0x43) << TYPE(0x44) << TYPE(0x45) << TYPE(0x46) << TYPE(0x47)
<< TYPE(0x48) << TYPE(0x49) << TYPE(0x4c) << TYPE(0x4d) << TYPE(0x4e)
<< TYPE(0x4f) << TYPE(0x50) << TYPE(0x51) << TYPE(0x52) << TYPE(0x14)
<< TYPE(0x15) << TYPE(0x16) << TYPE(0x1e) << TYPE(0x1f) << TYPE(0x04)
<< TYPE(0x05) << TYPE(0x06) << TYPE(0x07) << TYPE(0x08) << TYPE(0x09)
<< TYPE(0x0a) << TYPE(0x0b) << TYPE(0x0c) << TYPE(0x0d) << TYPE(0x0e)
<< TYPE(0x0f) << TYPE(0x10) << TYPE(0x11) << TYPE(0x12) << TYPE(0x19)
<< TYPE(0x13);
}
@ -359,7 +359,7 @@ static bool skipLocalization(SubFile *file, SubFile::Handle &hdl)
len = len >> 2;
}
if (!file->seek(hdl, hdl.pos() + len))
if (!file->seek(hdl, file->pos(hdl) + len))
return false;
return true;

View File

@ -21,8 +21,9 @@ public:
quint32 _offset, _end;
};
SubDiv(quint32 offset, qint32 lon, qint32 lat, int bits, quint8 objects)
: _lon(lon), _lat(lat), _bits(bits), _init(false)
SubDiv(quint32 offset, qint32 lon, qint32 lat, quint8 level, quint8 bits,
quint8 objects) : _lon(lon), _lat(lat), _level(level), _bits(bits),
_init(false)
{
_tre.objects = objects;
_tre.offset = offset;
@ -78,6 +79,7 @@ public:
qint32 lon() const {return _lon;}
qint32 lat() const {return _lat;}
quint8 bits() const {return _bits;}
quint8 level() const {return _level;}
// Valid only after initialization
Segment points() const
@ -94,6 +96,8 @@ public:
{return Segment(_rgn.extLinesOffset, _rgn.extLinesEnd);}
Segment extPolygons() const
{return Segment(_rgn.extPolygonsOffset, _rgn.extPolygonsEnd);}
Segment roadReferences() const
{return Segment(_rgn.roadReferencesOffset, _rgn.roadReferencesEnd);}
// Valid only until initialization
quint8 objects() const {return _tre.objects;}
@ -142,6 +146,7 @@ private:
};
qint32 _lon, _lat;
quint8 _level;
quint8 _bits;
bool _init;
union {

View File

@ -3,26 +3,28 @@
#include "subfile.h"
#define mod2n(x, m) ((x) & ((m) - 1));
bool SubFile::seek(Handle &handle, quint32 pos) const
{
if (handle._file) {
int blockNum = pos / BLOCK_SIZE;
int blockNum = pos >> BLOCK_BITS;
if (handle._blockNum != blockNum) {
if (!handle._file->seek((qint64)blockNum * BLOCK_SIZE))
if (!handle._file->seek((quint64)blockNum << BLOCK_BITS))
return false;
if (handle._file->read(handle._data.data(), BLOCK_SIZE) < 0)
if (handle._file->read(handle._data.data(), (1<<BLOCK_BITS)) < 0)
return false;
handle._blockNum = blockNum;
}
handle._blockPos = pos % BLOCK_SIZE;
handle._blockPos = mod2n(pos, 1U<<BLOCK_BITS);
handle._pos = pos;
return true;
} else {
quint32 blockSize = _img->blockSize();
int blockNum = pos / blockSize;
quint32 blockBits = _img->blockBits();
int blockNum = pos >> blockBits;
if (handle._blockNum != blockNum) {
if (blockNum >= _blocks->size())
@ -32,7 +34,7 @@ bool SubFile::seek(Handle &handle, quint32 pos) const
handle._blockNum = blockNum;
}
handle._blockPos = pos % blockSize;
handle._blockPos = mod2n(pos, 1U<<blockBits);
handle._pos = pos;
return true;
@ -70,6 +72,22 @@ bool SubFile::readVUInt32(Handle &hdl, quint32 &val) const
return true;
}
bool SubFile::readVUInt32(Handle &hdl, quint32 bytes, quint32 &val) const
{
switch (bytes) {
case 1:
return readUInt8(hdl, val);
case 2:
return readUInt16(hdl, val);
case 3:
return readUInt24(hdl, val);
case 4:
return readUInt32(hdl, val);
default:
return false;
}
}
bool SubFile::readVBitfield32(Handle &hdl, quint32 &bitfield) const
{
quint8 bits;

View File

@ -6,12 +6,12 @@
#include "img.h"
#define BLOCK_SIZE 4096
#define BLOCK_BITS 12 /* 4096 bytes */
class SubFile
{
public:
enum Type {Unknown, TRE, RGN, LBL, NET, TYP, GMP};
enum Type {Unknown, TRE, RGN, LBL, NET, NOD, TYP, GMP};
class Handle
{
@ -22,14 +22,12 @@ public:
if (subFile && subFile->_path) {
_file = new QFile(*(subFile->_path));
_file->open(QIODevice::ReadOnly);
_data.resize(BLOCK_SIZE);
_data.resize(1U<<BLOCK_BITS);
} else if (subFile)
_data.resize(subFile->_img->blockSize());
_data.resize(1U<<subFile->_img->blockBits());
}
~Handle() {delete _file;}
int pos() const {return _pos;}
private:
friend class SubFile;
@ -57,6 +55,7 @@ public:
void addBlock(quint16 block) {_blocks->append(block);}
bool seek(Handle &handle, quint32 pos) const;
quint32 pos(Handle &handle) const {return handle._pos;}
template<typename T>
bool readUInt8(Handle &handle, T &val) const
@ -132,6 +131,7 @@ public:
}
bool readVUInt32(Handle &hdl, quint32 &val) const;
bool readVUInt32(Handle &hdl, quint32 bytes, quint32 &val) const;
bool readVBitfield32(Handle &hdl, quint32 &bitfield) const;
QString fileName() const {return _path ? *_path : _img->fileName();}
@ -142,7 +142,7 @@ protected:
private:
bool readByte(Handle &handle, quint8 &val) const
{
int blockSize = _img ? _img->blockSize() : BLOCK_SIZE;
int blockSize = _img ? 1U<<_img->blockBits() : 1U<<BLOCK_BITS;
val = handle._data.at(handle._blockPos++);
handle._pos++;
return (handle._blockPos >= blockSize)

View File

@ -70,14 +70,16 @@ bool TREFile::init()
return false;
if (hdrLen > 0x9A) {
// TRE7 info
// TRE7 info + flags
if (!(seek(hdl, _gmpOffset + 0x7C) && readUInt32(hdl, _extended.offset)
&& readUInt32(hdl, _extended.size)
&& readUInt16(hdl, _extended.itemSize)))
return false;
// flags
if (!(seek(hdl, _gmpOffset + 0x86) && readUInt32(hdl, _flags)))
&& readUInt16(hdl, _extended.itemSize) && readUInt32(hdl, _flags)))
return false;
} else {
_extended.offset = 0;
_extended.size = 0;
_extended.itemSize = 0;
_flags = 0;
}
// Tile levels
@ -120,15 +122,43 @@ bool TREFile::init()
return (_firstLevel >= 0);
}
int TREFile::readExtEntry(Handle &hdl, quint32 &polygons, quint32 &lines,
quint32 &points)
{
int rb = 0;
if (_flags & 1) {
if (!readUInt32(hdl, polygons))
return -1;
rb += 4;
} else
polygons = 0;
if (_flags & 2) {
if (!readUInt32(hdl, lines))
return -1;
rb += 4;
} else
lines = 0;
if (_flags & 4) {
if (!readUInt32(hdl, points))
return -1;
rb += 4;
} else
points = 0;
return rb;
}
bool TREFile::load(int idx)
{
Handle hdl(this);
QList<SubDiv*> sl;
SubDiv *s = 0;
SubDivTree *tree = new SubDivTree();
const MapLevel &level = _levels.at(idx);
_subdivs.insert(_levels.at(idx).bits, tree);
_subdivs.insert(level.bits, tree);
quint32 skip = 0;
for (int i = 0; i < idx; i++)
@ -137,7 +167,7 @@ bool TREFile::load(int idx)
if (!seek(hdl, _subdivOffset + skip * 16))
return false;
for (int j = 0; j < _levels.at(idx).subdivs; j++) {
for (int j = 0; j < level.subdivs; j++) {
quint32 oo;
qint32 lon, lat, width, height;
quint16 nextLevel;
@ -156,10 +186,10 @@ bool TREFile::load(int idx)
s->setEnd(offset);
width &= 0x7FFF;
width = LS(width, 24 - _levels.at(idx).bits);
height = LS(height, 24 - _levels.at(idx).bits);
width = LS(width, 24 - level.bits);
height = LS(height, 24 - level.bits);
s = new SubDiv(offset, lon, lat, _levels.at(idx).bits, objects);
s = new SubDiv(offset, lon, lat, level.level, level.bits, objects);
sl.append(s);
double min[2], max[2];
@ -184,36 +214,31 @@ bool TREFile::load(int idx)
// Objects with extended types (TRE7)
if (_extended.size && _extended.itemSize >= 12) {
/* Some maps skip entries for the inherited levels, some don't. Our
decision is based on the difference between the extended subdivs
count and the total subdivs count. */
if (_extended.size && _extended.itemSize) {
quint32 totalSubdivs = 0;
for (int i = 0; i < _levels.size(); i++)
totalSubdivs += _levels.at(i).subdivs;
quint32 extendedSubdivs = _extended.size / _extended.itemSize;
quint32 diff = totalSubdivs - extendedSubdivs + 1;
quint32 polygons, lines, points;
if (!seek(hdl, _extended.offset + (skip - diff) * _extended.itemSize))
goto error;
quint32 polygons, lines, points;
int rb;
for (int i = 0; i < sl.size(); i++) {
if (!(readUInt32(hdl, polygons) && readUInt32(hdl, lines)
&& readUInt32(hdl, points)))
if ((rb = readExtEntry(hdl, polygons, lines, points)) < 0)
goto error;
sl.at(i)->setExtOffsets(polygons, lines, points);
if (i)
sl.at(i-1)->setExtEnds(polygons, lines, points);
if (!seek(hdl, hdl.pos() + _extended.itemSize - 12))
if (!seek(hdl, pos(hdl) + _extended.itemSize - rb))
goto error;
}
if (idx != _levels.size() - 1) {
if (!(readUInt32(hdl, polygons) && readUInt32(hdl, lines)
&& readUInt32(hdl, points)))
if (readExtEntry(hdl, polygons, lines, points) < 0)
goto error;
sl.last()->setExtEnds(polygons, lines, points);
}

View File

@ -46,9 +46,8 @@ private:
bool load(int idx);
int level(int bits, bool baseMap);
bool parsePoly(Handle hdl, quint32 pos, const QMap<int, int> &level2bits,
QMap<quint32, int> &map);
bool parsePoints(Handle hdl, quint32 pos, const QMap<int, int> &level2bits);
int readExtEntry(Handle &hdl, quint32 &polygons, quint32 &lines,
quint32 &points);
friend QDebug operator<<(QDebug dbg, const MapLevel &level);

View File

@ -29,6 +29,8 @@ SubFile *VectorTile::file(SubFile::Type type)
return _lbl;
case SubFile::NET:
return _net;
case SubFile::NOD:
return _nod;
case SubFile::GMP:
return _gmp;
default:
@ -51,6 +53,9 @@ SubFile *VectorTile::addFile(IMG *img, SubFile::Type type)
case SubFile::NET:
_net = new NETFile(img);
return _net;
case SubFile::NOD:
_nod = new NODFile(img);
return _nod;
case SubFile::GMP:
_gmp = new SubFile(img);
return _gmp;
@ -74,6 +79,9 @@ SubFile *VectorTile::addFile(const QString &path, SubFile::Type type)
case SubFile::NET:
_net = new NETFile(path);
return _net;
case SubFile::NOD:
_nod = new NODFile(path);
return _nod;
case SubFile::GMP:
_gmp = new SubFile(path);
return _gmp;
@ -96,17 +104,18 @@ bool VectorTile::init()
bool VectorTile::initGMP()
{
SubFile::Handle hdl(_gmp);
quint32 tre, rgn, lbl, net;
quint32 tre, rgn, lbl, net, nod;
if (!(_gmp->seek(hdl, 0x19) && _gmp->readUInt32(hdl, tre)
&& _gmp->readUInt32(hdl, rgn) && _gmp->readUInt32(hdl, lbl)
&& _gmp->readUInt32(hdl, net)))
&& _gmp->readUInt32(hdl, net) && _gmp->readUInt32(hdl, nod)))
return false;
_tre = tre ? new TREFile(_gmp, tre) : 0;
_rgn = rgn ? new RGNFile(_gmp, rgn) : 0;
_lbl = lbl ? new LBLFile(_gmp, lbl) : 0;
_net = net ? new NETFile(_gmp, net) : 0;
_nod = nod ? new NODFile(_gmp, nod) : 0;
return true;
}
@ -115,7 +124,7 @@ void VectorTile::polys(const RectC &rect, int bits, bool baseMap,
QList<IMG::Poly> *polygons, QList<IMG::Poly> *lines,
QCache<const SubDiv *, IMG::Polys> *polyCache) const
{
SubFile::Handle rgnHdl(_rgn), lblHdl(_lbl), netHdl(_net);
SubFile::Handle rgnHdl(_rgn), lblHdl(_lbl), netHdl(_net), nodHdl(_nod);
if (!_rgn->initialized() && !_rgn->init(rgnHdl))
return;
@ -140,6 +149,8 @@ void VectorTile::polys(const RectC &rect, int bits, bool baseMap,
lblHdl, &p);
_rgn->extPolyObjects(rgnHdl, subdiv, shift, RGNFile::Line, _lbl,
lblHdl, &l);
_rgn->links(rgnHdl, subdiv, shift, _net, netHdl, _nod, nodHdl, _lbl,
lblHdl, &l);
copyPolys(rect, &p, polygons);
copyPolys(rect, &l, lines);

View File

@ -6,13 +6,15 @@
#include "rgnfile.h"
#include "lblfile.h"
#include "netfile.h"
#include "nodfile.h"
class VectorTile {
public:
VectorTile() : _tre(0), _rgn(0), _lbl(0), _net(0), _gmp(0) {}
VectorTile() : _tre(0), _rgn(0), _lbl(0), _net(0), _nod(0), _gmp(0) {}
~VectorTile()
{
delete _tre; delete _rgn; delete _lbl; delete _net; delete _gmp;
delete _tre; delete _rgn; delete _lbl; delete _net; delete _nod;
delete _gmp;
}
bool init();
@ -37,7 +39,7 @@ public:
{
return (type == SubFile::TRE || type == SubFile::LBL
|| type == SubFile::RGN || type == SubFile::NET
|| type == SubFile::GMP);
|| type == SubFile::NOD || type == SubFile::GMP);
}
private:
@ -47,6 +49,7 @@ private:
RGNFile *_rgn;
LBLFile *_lbl;
NETFile *_net;
NODFile *_nod;
SubFile *_gmp;
};

View File

@ -222,3 +222,14 @@ Coordinates AlbersEqual::xy2ll(const PointD &p) const
return Coordinates(rad2deg(lon), rad2deg(lat));
}
bool AlbersEqual::operator==(const CT &ct) const
{
const AlbersEqual *other = dynamic_cast<const AlbersEqual*>(&ct);
return (other != 0 && _latitudeOrigin == other->_latitudeOrigin
&& _longitudeOrigin == other->_longitudeOrigin
&& _falseEasting == other->_falseEasting
&& _falseNorthing == other->_falseNorthing && _a2 == other->_a2
&& _es == other->_es && _rho0 == other->_rho0 && _c == other->_c
&& _n == other->_n);
}

View File

@ -13,6 +13,7 @@ public:
double falseEasting, double falseNorthing);
virtual CT *clone() const {return new AlbersEqual(*this);}
virtual bool operator==(const CT &ct) const;
virtual PointD ll2xy(const Coordinates &c) const;
virtual Coordinates xy2ll(const PointD &p) const;

View File

@ -10,13 +10,15 @@ public:
AngularUnits() : _code(0), _f(NAN) {}
AngularUnits(int code);
bool operator==(const AngularUnits &other) const
{return (_code == other._code && _f == other._f);}
bool isNull() const {return std::isnan(_f);}
bool isValid() const {return !std::isnan(_f);}
double toDegrees(double val) const;
double fromDegrees(double val) const;
friend bool operator==(const AngularUnits &au1, const AngularUnits &au2);
#ifndef QT_NO_DEBUG
friend QDebug operator<<(QDebug dbg, const AngularUnits &au);
#endif // QT_NO_DEBUG
@ -25,9 +27,6 @@ private:
double _f;
};
inline bool operator==(const AngularUnits &au1, const AngularUnits &au2)
{return (au1._f == au2._f);}
#ifndef QT_NO_DEBUG
QDebug operator<<(QDebug dbg, const AngularUnits &au);
#endif // QT_NO_DEBUG

View File

@ -12,6 +12,9 @@ public:
CoordinateSystem(AxisOrder axisOrder) : _axisOrder(axisOrder) {}
CoordinateSystem(int code);
bool operator==(const CoordinateSystem &other) const
{return (_axisOrder == other._axisOrder);}
bool isNull() const {return (_axisOrder == Unknown);}
bool isValid() const {return (_axisOrder != Unknown);}

View File

@ -20,6 +20,10 @@ Projection CRS::projection(const QString &crs)
authority = list.at(4);
code = list.at(6);
break;
case 8:
authority = list.at(4);
code = list.at(7);
break;
default:
return Projection();
}

View File

@ -9,6 +9,7 @@ public:
virtual ~CT() {}
virtual CT *clone() const = 0;
virtual bool operator==(const CT &ct) const = 0;
virtual PointD ll2xy(const Coordinates &c) const = 0;
virtual Coordinates xy2ll(const PointD &p) const = 0;

View File

@ -14,6 +14,12 @@ public:
const AngularUnits &angularUnits) : _datum(datum),
_primeMeridian(primeMeridian), _angularUnits(angularUnits) {}
bool operator==(const GCS &other) const
{
return (_datum == other._datum && _primeMeridian == other._primeMeridian
&& _angularUnits == other._angularUnits);
}
const PrimeMeridian &primeMeridian() const {return _primeMeridian;}
const AngularUnits &angularUnits() const {return _angularUnits;}
const Datum &datum() const {return _datum;}
@ -47,11 +53,6 @@ private:
static QList<Entry> _gcss;
};
inline bool operator==(const GCS &gcs1, const GCS &gcs2)
{return (gcs1.datum() == gcs2.datum()
&& gcs1.primeMeridian() == gcs2.primeMeridian()
&& gcs1.angularUnits() == gcs2.angularUnits());}
#ifndef QT_NO_DEBUG
QDebug operator<<(QDebug dbg, const GCS &gcs);
#endif // QT_NO_DEBUG

View File

@ -1,6 +1,5 @@
#include <QFile>
#include <QPainter>
#include <QFont>
#include <QPixmapCache>
#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
#include <QtCore>
@ -8,14 +7,12 @@
#include <QtConcurrent>
#endif // QT_VERSION < 5
#include "common/rectc.h"
#include "common/wgs84.h"
#include "common/range.h"
#include "IMG/textpathitem.h"
#include "IMG/textpointitem.h"
#include "IMG/bitmapline.h"
#include "IMG/style.h"
#include "common/wgs84.h"
#include "IMG/img.h"
#include "IMG/gmap.h"
#include "IMG/rastertile.h"
#include "osm.h"
#include "pcs.h"
#include "rectd.h"
#include "imgmap.h"
@ -24,227 +21,45 @@
#define TILE_SIZE 384
#define TEXT_EXTENT 160
#define AREA(rect) \
(rect.size().width() * rect.size().height())
class RasterTile
static QList<MapData*> overlays(const QString &fileName)
{
public:
RasterTile() : _map(0) {}
RasterTile(IMGMap *map, const QPoint &xy, const QString &key)
: _map(map), _xy(xy), _key(key),
_img(TILE_SIZE, TILE_SIZE, QImage::Format_ARGB32_Premultiplied) {}
QList<MapData*> list;
const QString &key() const {return _key;}
const QPoint &xy() const {return _xy;}
QImage &img() {return _img;}
QList<MapData::Poly> &polygons() {return _polygons;}
QList<MapData::Poly> &lines() {return _lines;}
QList<MapData::Point> &points() {return _points;}
void render()
{
QList<TextItem*> textItems;
QRect tileRect(_xy, QSize(TILE_SIZE, TILE_SIZE));
_map->processPoints(_points, textItems);
_map->processPolygons(_polygons, textItems);
_map->processLines(_lines, tileRect, textItems);
_img.fill(Qt::transparent);
QPainter painter(&_img);
painter.setRenderHint(QPainter::SmoothPixmapTransform);
painter.setRenderHint(QPainter::Antialiasing);
painter.translate(-_xy.x(), -_xy.y());
_map->drawPolygons(&painter, _polygons);
_map->drawLines(&painter, _lines);
_map->drawTextItems(&painter, textItems);
//painter.setPen(Qt::red);
//painter.drawRect(QRect(_xy, QSize(TILE_SIZE, TILE_SIZE)));
qDeleteAll(textItems);
for (int i = 1; i < 32; i++) {
QString ol(fileName + "." + QString::number(i));
if (QFileInfo(ol).isFile()) {
MapData *data = new IMG(ol);
if (data->isValid())
list.append(data);
else {
qWarning("%s: %s", qPrintable(data->fileName()),
qPrintable(data->errorString()));
delete data;
}
} else
break;
}
private:
IMGMap *_map;
QPoint _xy;
QString _key;
QImage _img;
QList<MapData::Poly> _polygons;
QList<MapData::Poly> _lines;
QList<MapData::Point> _points;
};
static const QColor shieldColor(Qt::white);
static const QColor shieldBgColor1("#dd3e3e");
static const QColor shieldBgColor2("#379947");
static const QColor shieldBgColor3("#4a7fc1");
static QString convertUnits(const QString &str)
{
bool ok;
int number = str.toInt(&ok);
return ok ? QString::number(qRound(number * 0.3048)) : str;
return list;
}
static int minPOIZoom(Style::POIClass cl)
{
switch (cl) {
case Style::Food:
case Style::Shopping:
case Style::Services:
return 27;
case Style::Accommodation:
case Style::Recreation:
return 25;
case Style::ManmadePlaces:
case Style::NaturePlaces:
case Style::Transport:
case Style::Community:
case Style::Elementary:
return 23;
default:
return 0;
}
}
static QFont pixelSizeFont(int pixelSize)
{
QFont f;
f.setPixelSize(pixelSize);
return f;
}
static QFont *font(Style::FontSize size, Style::FontSize defaultSize
= Style::Normal)
{
/* The fonts must be initialized on first usage (after the QGuiApplication
instance is created) */
static QFont large = pixelSizeFont(16);
static QFont normal = pixelSizeFont(14);
static QFont small = pixelSizeFont(12);
static QFont extraSmall = pixelSizeFont(10);
switch (size) {
case Style::None:
return 0;
case Style::Large:
return &large;
case Style::Normal:
return &normal;
case Style::Small:
return &small;
case Style::ExtraSmall:
return &extraSmall;
default:
return font(defaultSize);
}
}
static QFont *poiFont(Style::FontSize size = Style::Normal)
{
static QFont poi = pixelSizeFont(10);
switch (size) {
case Style::None:
return 0;
default:
return &poi;
}
}
static const QColor *shieldBgColor(Label::Shield::Type type)
{
switch (type) {
case Label::Shield::USInterstate:
case Label::Shield::Hbox:
return &shieldBgColor1;
case Label::Shield::USShield:
case Label::Shield::Box:
return &shieldBgColor2;
case Label::Shield::USRound:
case Label::Shield::Oval:
return &shieldBgColor3;
default:
return 0;
}
}
static int minShieldZoom(Label::Shield::Type type)
{
switch (type) {
case Label::Shield::USInterstate:
case Label::Shield::Hbox:
return 17;
case Label::Shield::USShield:
case Label::Shield::Box:
return 19;
case Label::Shield::USRound:
case Label::Shield::Oval:
return 20;
default:
return 0;
}
}
static qreal area(const QVector<QPointF> &polygon)
{
qreal area = 0;
for (int i = 0; i < polygon.size(); i++) {
int j = (i + 1) % polygon.size();
area += polygon.at(i).x() * polygon.at(j).y();
area -= polygon.at(i).y() * polygon.at(j).x();
}
area /= 2.0;
return area;
}
static QPointF centroid(const QVector<QPointF> &polygon)
{
qreal cx = 0, cy = 0;
qreal factor = 1.0 / (6.0 * area(polygon));
for (int i = 0; i < polygon.size(); i++) {
int j = (i + 1) % polygon.size();
qreal f = (polygon.at(i).x() * polygon.at(j).y() - polygon.at(j).x()
* polygon.at(i).y());
cx += (polygon.at(i).x() + polygon.at(j).x()) * f;
cy += (polygon.at(i).y() + polygon.at(j).y()) * f;
}
return QPointF(cx * factor, cy * factor);
}
static bool rectNearPolygon(const QPolygonF &polygon, const QRectF &rect)
{
return (polygon.boundingRect().contains(rect)
&& (polygon.containsPoint(rect.topLeft(), Qt::OddEvenFill)
|| polygon.containsPoint(rect.topRight(), Qt::OddEvenFill)
|| polygon.containsPoint(rect.bottomLeft(), Qt::OddEvenFill)
|| polygon.containsPoint(rect.bottomRight(), Qt::OddEvenFill)));
}
IMGMap::IMGMap(const QString &fileName, QObject *parent)
: Map(parent), _projection(PCS::pcs(3857)), _valid(false)
{
if (GMAP::isGMAP(fileName))
_data = new GMAP(fileName);
else
_data = new IMG(fileName);
_data.append(new GMAP(fileName));
else {
_data.append(new IMG(fileName));
_data.append(overlays(fileName));
}
if (!_data->isValid()) {
_errorString = _data->errorString();
if (!_data.first()->isValid()) {
_errorString = _data.first()->errorString();
return;
}
_zoom = _data->zooms().min();
_dataBounds = _data.first()->bounds() & OSM::BOUNDS;
_zoom = _data.first()->zooms().min();
updateTransform();
_valid = true;
@ -252,21 +67,25 @@ IMGMap::IMGMap(const QString &fileName, QObject *parent)
void IMGMap::load()
{
_data->load();
for (int i = 0; i < _data.size(); i++)
_data.at(i)->load();
}
void IMGMap::unload()
{
_data->clear();
for (int i = 0; i < _data.size(); i++)
_data.at(i)->clear();
}
int IMGMap::zoomFit(const QSize &size, const RectC &rect)
{
const Range &zooms = _data.first()->zooms();
if (rect.isValid()) {
RectD pr(rect, _projection, 10);
_zoom = _data->zooms().min();
for (int i = _data->zooms().min() + 1; i <= _data->zooms().max(); i++) {
_zoom = zooms.min();
for (int i = zooms.min() + 1; i <= zooms.max(); i++) {
Transform t(transform(i));
QRectF r(t.proj2img(pr.topLeft()), t.proj2img(pr.bottomRight()));
if (size.width() < r.width() || size.height() < r.height())
@ -274,7 +93,7 @@ int IMGMap::zoomFit(const QSize &size, const RectC &rect)
_zoom = i;
}
} else
_zoom = _data->zooms().max();
_zoom = zooms.max();
updateTransform();
@ -283,14 +102,14 @@ int IMGMap::zoomFit(const QSize &size, const RectC &rect)
int IMGMap::zoomIn()
{
_zoom = qMin(_zoom + 1, _data->zooms().max());
_zoom = qMin(_zoom + 1, _data.first()->zooms().max());
updateTransform();
return _zoom;
}
int IMGMap::zoomOut()
{
_zoom = qMax(_zoom - 1, _data->zooms().min());
_zoom = qMax(_zoom - 1, _data.first()->zooms().min());
updateTransform();
return _zoom;
}
@ -305,7 +124,7 @@ Transform IMGMap::transform(int zoom) const
{
double scale = _projection.isGeographic()
? 360.0 / (1<<zoom) : (2.0 * M_PI * WGS84_RADIUS) / (1<<zoom);
PointD topLeft(_projection.ll2xy(_data->bounds().topLeft()));
PointD topLeft(_projection.ll2xy(_dataBounds.topLeft()));
return Transform(ReferencePoint(PointD(0, 0), topLeft),
PointD(scale, scale));
}
@ -314,7 +133,7 @@ void IMGMap::updateTransform()
{
_transform = transform(_zoom);
RectD prect(_data->bounds(), _projection);
RectD prect(_dataBounds, _projection);
_bounds = QRectF(_transform.proj2img(prect.topLeft()),
_transform.proj2img(prect.bottomRight()));
}
@ -329,241 +148,25 @@ Coordinates IMGMap::xy2ll(const QPointF &p)
return _projection.xy2ll(_transform.img2proj(p));
}
void IMGMap::drawPolygons(QPainter *painter, const QList<MapData::Poly> &polygons)
void IMGMap::ll2xy(QList<MapData::Poly> &polys)
{
for (int n = 0; n < _data->style()->drawOrder().size(); n++) {
for (int i = 0; i < polygons.size(); i++) {
const MapData::Poly &poly = polygons.at(i);
if (poly.type != _data->style()->drawOrder().at(n))
continue;
const Style::Polygon &style = _data->style()->polygon(poly.type);
painter->setPen(style.pen());
painter->setBrush(style.brush());
painter->drawPolygon(poly.points);
}
}
}
void IMGMap::drawLines(QPainter *painter, const QList<MapData::Poly> &lines)
{
painter->setBrush(Qt::NoBrush);
for (int i = 0; i < lines.size(); i++) {
const MapData::Poly &poly = lines.at(i);
const Style::Line &style = _data->style()->line(poly.type);
if (style.background() == Qt::NoPen)
continue;
painter->setPen(style.background());
painter->drawPolyline(poly.points);
}
for (int i = 0; i < lines.size(); i++) {
const MapData::Poly &poly = lines.at(i);
const Style::Line &style = _data->style()->line(poly.type);
if (!style.img().isNull())
BitmapLine::draw(painter, poly.points, style.img());
else if (style.foreground() != Qt::NoPen) {
painter->setPen(style.foreground());
painter->drawPolyline(poly.points);
}
}
}
void IMGMap::drawTextItems(QPainter *painter, const QList<TextItem*> &textItems)
{
for (int i = 0; i < textItems.size(); i++)
textItems.at(i)->paint(painter);
}
void IMGMap::processPolygons(QList<MapData::Poly> &polygons,
QList<TextItem*> &textItems)
{
for (int i = 0; i < polygons.size(); i++) {
MapData::Poly &poly = polygons[i];
for (int j = 0; j < poly.points.size(); j++) {
QPointF &p = poly.points[j];
p = ll2xy(Coordinates(p.x(), p.y()));
}
if (poly.label.text().isEmpty())
continue;
if (_zoom <= 23 && (Style::isWaterArea(poly.type)
|| Style::isMilitaryArea(poly.type)
|| Style::isNatureReserve(poly.type))) {
const Style::Polygon &style = _data->style()->polygon(poly.type);
TextPointItem *item = new TextPointItem(
centroid(poly.points).toPoint(), &poly.label.text(),
poiFont(), 0, &style.brush().color());
if (item->isValid() && !item->collides(textItems)
&& rectNearPolygon(poly.points, item->boundingRect()))
textItems.append(item);
else
delete item;
}
}
}
void IMGMap::processLines(QList<MapData::Poly> &lines, const QRect &tileRect,
QList<TextItem*> &textItems)
{
qStableSort(lines);
for (int i = 0; i < lines.size(); i++) {
MapData::Poly &poly = lines[i];
for (int i = 0; i < polys.size(); i++) {
MapData::Poly &poly = polys[i];
for (int j = 0; j < poly.points.size(); j++) {
QPointF &p = poly.points[j];
p = ll2xy(Coordinates(p.x(), p.y()));
}
}
if (_zoom >= 22)
processStreetNames(lines, tileRect, textItems);
processShields(lines, tileRect, textItems);
}
void IMGMap::processStreetNames(QList<MapData::Poly> &lines,
const QRect &tileRect, QList<TextItem*> &textItems)
void IMGMap::ll2xy(QList<MapData::Point> &points)
{
for (int i = 0; i < lines.size(); i++) {
MapData::Poly &poly = lines[i];
const Style::Line &style = _data->style()->line(poly.type);
if (style.img().isNull() && style.foreground() == Qt::NoPen)
continue;
if (poly.label.text().isEmpty()
|| style.textFontSize() == Style::None)
continue;
if (Style::isContourLine(poly.type))
poly.label.setText(convertUnits(poly.label.text()));
const QFont *fnt = font(style.textFontSize(), Style::Small);
const QColor *color = style.textColor().isValid()
? &style.textColor() : 0;
TextPathItem *item = new TextPathItem(poly.points,
&poly.label.text(), tileRect, fnt, color);
if (item->isValid() && !item->collides(textItems))
textItems.append(item);
else
delete item;
}
}
void IMGMap::processShields(QList<MapData::Poly> &lines, const QRect &tileRect,
QList<TextItem*> &textItems)
{
for (int type = FIRST_SHIELD; type <= LAST_SHIELD; type++) {
if (minShieldZoom(static_cast<Label::Shield::Type>(type)) > _zoom)
continue;
QHash<Label::Shield, QPolygonF> shields;
QHash<Label::Shield, const Label::Shield*> sp;
for (int i = 0; i < lines.size(); i++) {
const MapData::Poly &poly = lines.at(i);
const Label::Shield &shield = poly.label.shield();
if (!shield.isValid() || shield.type() != type
|| !Style::isMajorRoad(poly.type))
continue;
QPolygonF &p = shields[shield];
for (int j = 0; j < poly.points.size(); j++)
p.append(poly.points.at(j));
sp.insert(shield, &shield);
}
for (QHash<Label::Shield, QPolygonF>::const_iterator it
= shields.constBegin(); it != shields.constEnd(); ++it) {
const QPolygonF &p = it.value();
QRectF rect(p.boundingRect() & tileRect);
if (qSqrt(AREA(rect)) < TILE_SIZE/8)
continue;
QMap<qreal, int> map;
QPointF center = rect.center();
for (int j = 0; j < p.size(); j++) {
QLineF l(p.at(j), center);
map.insert(l.length(), j);
}
QMap<qreal, int>::const_iterator jt = map.constBegin();
TextPointItem *item = new TextPointItem(
p.at(jt.value()).toPoint(), &(sp.value(it.key())->text()),
poiFont(), 0, &shieldColor, shieldBgColor(it.key().type()));
bool valid = false;
while (true) {
if (!item->collides(textItems)
&& tileRect.contains(item->boundingRect().toRect())) {
valid = true;
break;
}
if (++jt == map.constEnd())
break;
item->setPos(p.at(jt.value()).toPoint());
}
if (valid)
textItems.append(item);
else
delete item;
}
}
}
void IMGMap::processPoints(QList<MapData::Point> &points,
QList<TextItem*> &textItems)
{
qSort(points);
for (int i = 0; i < points.size(); i++) {
MapData::Point &point = points[i];
const Style::Point &style = _data->style()->point(point.type);
if (point.poi && _zoom < minPOIZoom(Style::poiClass(point.type)))
continue;
const QString *label = point.label.text().isEmpty()
? 0 : &(point.label.text());
const QImage *img = style.img().isNull() ? 0 : &style.img();
const QFont *fnt = point.poi
? poiFont(style.textFontSize()) : font(style.textFontSize());
const QColor *color = style.textColor().isValid()
? &style.textColor() : 0;
if ((!label || !fnt) && !img)
continue;
if (Style::isSpot(point.type))
point.label.setText(convertUnits(point.label.text()));
if (Style::isSummit(point.type) && !point.label.text().isEmpty()) {
QStringList list = point.label.text().split(" ");
list.last() = convertUnits(list.last());
point.label = list.join(" ");
}
TextPointItem *item = new TextPointItem(
ll2xy(point.coordinates).toPoint(), label, fnt, img, color);
if (item->isValid() && !item->collides(textItems))
textItems.append(item);
else
delete item;
QPointF p(ll2xy(points.at(i).coordinates));
points[i].coordinates = Coordinates(p.x(), p.y());
}
}
static void render(RasterTile &tile)
{
tile.render();
}
void IMGMap::draw(QPainter *painter, const QRectF &rect, Flags flags)
{
Q_UNUSED(flags);
@ -576,39 +179,47 @@ void IMGMap::draw(QPainter *painter, const QRectF &rect, Flags flags)
QList<RasterTile> tiles;
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
QPixmap pm;
QPoint ttl(tl.x() + i * TILE_SIZE, tl.y() + j * TILE_SIZE);
QString key = _data->fileName() + "-" + QString::number(_zoom) + "_"
+ QString::number(ttl.x()) + "_" + QString::number(ttl.y());
if (QPixmapCache::find(key, pm))
painter->drawPixmap(ttl, pm);
else {
tiles.append(RasterTile(this, ttl, key));
RasterTile &tile = tiles.last();
for (int n = 0; n < _data.size(); n++) {
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
QPixmap pm;
QPoint ttl(tl.x() + i * TILE_SIZE, tl.y() + j * TILE_SIZE);
QString key = _data.at(n)->fileName() + "-" + QString::number(_zoom)
+ "_" + QString::number(ttl.x()) + "_" + QString::number(ttl.y());
if (QPixmapCache::find(key, pm))
painter->drawPixmap(ttl, pm);
else {
QList<MapData::Poly> polygons, lines;
QList<MapData::Point> points;
QRectF polyRect(ttl, QPointF(ttl.x() + TILE_SIZE,
ttl.y() + TILE_SIZE));
polyRect &= bounds().adjusted(0.5, 0.5, -0.5, -0.5);
RectD polyRectD(_transform.img2proj(polyRect.topLeft()),
_transform.img2proj(polyRect.bottomRight()));
_data->polys(polyRectD.toRectC(_projection, 4), _zoom,
&(tile.polygons()), &(tile.lines()));
QRectF polyRect(ttl, QPointF(ttl.x() + TILE_SIZE,
ttl.y() + TILE_SIZE));
polyRect &= bounds().adjusted(0.5, 0.5, -0.5, -0.5);
RectD polyRectD(_transform.img2proj(polyRect.topLeft()),
_transform.img2proj(polyRect.bottomRight()));
_data.at(n)->polys(polyRectD.toRectC(_projection, 4), _zoom,
&polygons, &lines);
ll2xy(polygons); ll2xy(lines);
QRectF pointRect(QPointF(ttl.x() - TEXT_EXTENT,
ttl.y() - TEXT_EXTENT), QPointF(ttl.x() + TILE_SIZE
+ TEXT_EXTENT, ttl.y() + TILE_SIZE + TEXT_EXTENT));
pointRect &= bounds().adjusted(0.5, 0.5, -0.5, -0.5);
RectD pointRectD(_transform.img2proj(pointRect.topLeft()),
_transform.img2proj(pointRect.bottomRight()));
_data->points(pointRectD.toRectC(_projection, 4), _zoom,
&(tile.points()));
QRectF pointRect(QPointF(ttl.x() - TEXT_EXTENT,
ttl.y() - TEXT_EXTENT), QPointF(ttl.x() + TILE_SIZE
+ TEXT_EXTENT, ttl.y() + TILE_SIZE + TEXT_EXTENT));
pointRect &= bounds().adjusted(0.5, 0.5, -0.5, -0.5);
RectD pointRectD(_transform.img2proj(pointRect.topLeft()),
_transform.img2proj(pointRect.bottomRight()));
_data.at(n)->points(pointRectD.toRectC(_projection, 4),
_zoom, &points);
ll2xy(points);
tiles.append(RasterTile(_data.at(n)->style(), _zoom,
QRect(ttl, QSize(TILE_SIZE, TILE_SIZE)), key, polygons,
lines, points));
}
}
}
}
QFuture<void> future = QtConcurrent::map(tiles, render);
QFuture<void> future = QtConcurrent::map(tiles, &RasterTile::render);
future.waitForFinished();
for (int i = 0; i < tiles.size(); i++) {
@ -625,7 +236,15 @@ void IMGMap::draw(QPainter *painter, const QRectF &rect, Flags flags)
void IMGMap::setProjection(const Projection &projection)
{
if (projection == _projection)
return;
_projection = projection;
// Limit the bounds for some well known Mercator projections
// (GARMIN world maps have N/S bounds up to 90/-90!)
_dataBounds = (_projection == PCS::pcs(3857) || _projection == PCS::pcs(3395))
? _data.first()->bounds() & OSM::BOUNDS : _data.first()->bounds();
updateTransform();
QPixmapCache::clear();
}

View File

@ -6,7 +6,6 @@
#include "transform.h"
#include "IMG/mapdata.h"
class TextItem;
class IMGMap : public Map
{
@ -14,9 +13,9 @@ class IMGMap : public Map
public:
IMGMap(const QString &fileName, QObject *parent = 0);
~IMGMap() {delete _data;}
~IMGMap() {qDeleteAll(_data);}
QString name() const {return _data->name();}
QString name() const {return _data.first()->name();}
QRectF bounds() {return _bounds;}
@ -40,29 +39,17 @@ public:
QString errorString() const {return _errorString;}
private:
friend class RasterTile;
void ll2xy(QList<MapData::Poly> &polys);
void ll2xy(QList<MapData::Point> &points);
Transform transform(int zoom) const;
void updateTransform();
void drawPolygons(QPainter *painter, const QList<MapData::Poly> &polygons);
void drawLines(QPainter *painter, const QList<MapData::Poly> &lines);
void drawTextItems(QPainter *painter, const QList<TextItem*> &textItems);
void processPolygons(QList<MapData::Poly> &polygons,
QList<TextItem *> &textItems);
void processLines(QList<MapData::Poly> &lines, const QRect &tileRect,
QList<TextItem*> &textItems);
void processPoints(QList<MapData::Point> &points, QList<TextItem*> &textItems);
void processShields(QList<MapData::Poly> &lines, const QRect &tileRect,
QList<TextItem*> &textItems);
void processStreetNames(QList<MapData::Poly> &lines, const QRect &tileRect,
QList<TextItem*> &textItems);
MapData *_data;
QList<MapData *> _data;
int _zoom;
Projection _projection;
Transform _transform;
QRectF _bounds;
RectC _dataBounds;
bool _valid;
QString _errorString;

Some files were not shown because too many files have changed in this diff Show More