1
0
mirror of https://github.com/tumic0/GPXSee.git synced 2025-07-16 03:44:24 +02:00

Compare commits

..

58 Commits

Author SHA1 Message Date
602690ddc4 Updated gradle file 2025-07-10 10:22:45 +02:00
ced9eb20b0 Added missing Android build stuff 2025-07-10 10:22:26 +02:00
2f5c87af53 Merge branch 'master' into android-latest 2025-07-10 08:45:18 +02:00
5d2b818781 Follow HTTP redirects 2025-07-07 20:09:34 +02:00
3076a7a57f Fixed job name 2025-07-07 18:29:42 +02:00
4ddc6fbee2 Fixed pbf4.dll plugin path 2025-07-07 17:38:38 +02:00
b9bf09fd27 Add QtPBFImagePlugin to the Windows build 2025-07-07 17:16:34 +02:00
820f4be230 Yet another paths fix attempt 2025-07-06 21:44:04 +02:00
a8518d6c9e Try a different absolute path variable 2025-07-06 21:01:29 +02:00
65a8e37eea Try absolute plugin paths 2025-07-06 20:34:03 +02:00
704b372122 Fixed ANDROID_EXTRA_PLUGINS path 2025-07-06 20:17:18 +02:00
3e03ba19ab Yet another Android plugins path fix 2025-07-06 19:55:58 +02:00
9cfe8f1d1c Yet another plugins path fix 2025-07-06 19:38:05 +02:00
e3d8e91990 Fix the plugins path 2025-07-06 19:28:40 +02:00
f878e0a6be Fixed copy&paste error 2025-07-06 19:15:43 +02:00
0153c01282 Include QtPBFImagePlugin in the Android build 2025-07-06 19:13:53 +02:00
0627d067d2 Fixed YAML syntax 2025-07-06 15:15:31 +02:00
20a9bdccd4 QtPBFImagePlugin run-id fetch fix #2 2025-07-06 15:10:42 +02:00
1575fb7e55 Properly fetch the latest run-id 2025-07-06 14:50:43 +02:00
0fbc99c96f Use the latest QtPBFImagePlugin build 2025-07-06 14:30:30 +02:00
31b9694bb5 Use name instead of build ID and the "merge-multiple" option 2025-07-06 14:08:18 +02:00
136a56d92e Try a different QtPBFImagePlugin build and token 2025-07-06 13:56:16 +02:00
49621e82ac Try to use the artifact ID instead of the name 2025-07-06 13:05:02 +02:00
3b45cdfea6 Use a valid run ID 2025-07-06 12:58:17 +02:00
7341a02742 Fixed Mac build action 2025-07-06 12:46:48 +02:00
9674acf541 Include QtPBFImagePlugin in the Mac build 2025-07-06 12:42:43 +02:00
81b60ce1c5 Translated using Weblate (Turkish)
Currently translated at 99.7% (492 of 493 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/tr/
2025-07-02 17:04:35 +02:00
e7c3cd5f7d Translated using Weblate (Norwegian Bokmål)
Currently translated at 99.5% (491 of 493 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/nb_NO/
2025-06-30 10:01:46 +02:00
ae5d1a1e39 Merge branch 'origin/master' into Weblate. 2025-06-28 10:42:26 +02:00
1054f2a330 Map details & hillshading default parameters adjustements 2025-06-28 10:41:39 +02:00
732bae0e8f Assert all areas to render are closed 2025-06-28 09:51:25 +02:00
u
fd127a80b1 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (493 of 493 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/zh_Hans/
2025-06-27 07:01:46 +00:00
50a46a6a9f Merge branch 'origin/master' into Weblate. 2025-06-21 04:04:32 +00:00
0c2ff90ad9 Added Latvian localization stub 2025-06-21 06:03:30 +02:00
raf
6ff1d89273 Translated using Weblate (Catalan)
Currently translated at 100.0% (493 of 493 strings)

Translation: GPXSee/Translations
Translate-URL: https://hosted.weblate.org/projects/gpxsee/translations/ca/
2025-06-20 12:22:06 +02:00
c80cb6ac5a Use Qt 6.9.1 in OS X builds 2025-06-12 08:55:33 +02:00
c4bf30b97b Version++ 2025-06-12 08:55:00 +02:00
a204fc2bc0 Merge branch 'master' into android-latest 2025-06-07 20:35:11 +02:00
2628e7824e Merge branch 'master' into android-latest 2025-05-20 22:58:43 +02:00
a9fa3a4bcf Merge branch 'master' into android-latest 2025-05-20 08:43:44 +02:00
a4141f52d6 Merge branch 'master' into android-latest 2025-05-07 23:35:49 +02:00
5898cd0878 Merge branch 'master' into android-latest 2025-04-22 19:22:36 +02:00
f5f71ab46e Merge branch 'master' into android-latest 2025-04-16 09:27:33 +02:00
e450e298a2 Merge branch 'master' into android-latest 2025-03-21 22:30:11 +01:00
977fea9330 Merge branch 'master' into android-latest 2025-03-08 15:32:39 +01:00
636aff6f31 Merge branch 'master' into android-latest 2025-02-21 00:56:25 +01:00
ed0ab7f0aa Merge branch 'master' into android-latest 2025-02-19 07:56:37 +01:00
bded204816 Merge branch 'master' into android-latest 2025-02-13 23:48:32 +01:00
1ce8072b62 Merge branch 'master' into android-latest 2025-02-11 08:26:02 +01:00
a06dbf7676 Merge branch 'master' into android-latest 2025-02-11 08:20:29 +01:00
afae851d56 Merge branch 'master' into android-latest 2025-01-25 16:19:30 +01:00
b9999a5c4f Added geo URI support info 2025-01-25 16:15:02 +01:00
03ee575aac Merge branch 'master' into android-latest 2025-01-25 11:56:15 +01:00
fc196543a1 Merge branch 'master' into android-latest 2025-01-25 11:31:08 +01:00
9d60d1c9fc Merge branch 'master' into android-latest 2025-01-21 21:48:01 +01:00
8d4236c898 Merge branch 'master' into android-latest 2025-01-05 09:44:20 +01:00
4ee39fe707 Merge branch 'master' into android-latest 2025-01-03 19:50:00 +01:00
347212f012 Make the build work with Qt 6.8.1 (and newer)
As for now, this is just for Qt debuging as multiple stuff is broken in Qt 6.8.1
- The new style has serious render issues
- Reading files in a directory is by multiple order of magnitude slower
- The zoom gestures do not work reliably

Qt versions prior to 6.8.1 are completely unusable due to the broken main menu.
2024-12-17 14:39:42 +01:00
17 changed files with 2801 additions and 41 deletions

View File

@ -1,4 +1,4 @@
version: 13.44.{build}
version: 13.45.{build}
configuration:
- Release
@ -10,10 +10,12 @@ environment:
NSISDIR: C:\Program Files (x86)\NSIS
JOMDIR: C:\Qt\Tools\QtCreator\bin\jom
matrix:
- QTDIR: C:\Qt\5.15\msvc2019_64
- job_name: Qt5
QTDIR: C:\Qt\5.15\msvc2019_64
OPENSSLDIR: C:\OpenSSL-v111-Win64\bin
NSISDEF: /DOPENSSL /DANGLE
- QTDIR: C:\Qt\6.8\msvc2022_64
- job_name: Qt6
QTDIR: C:\Qt\6.8\msvc2022_64
NSISDEF: /DQT6
install:
@ -27,9 +29,12 @@ build_script:
qmake gpxsee.pro
jom release
after_build:
- cmd: |-
md installer
copy release\GPXSee.exe installer
windeployqt --release installer\GPXSee.exe
curl -L -o installer\imageformats\pbf4.dll https://ci.appveyor.com/api/projects/tumic0/QtPBFImagePlugin/artifacts/release/pbf4.dll?job=%APPVEYOR_JOB_NAME%
copy pkg\windows\gpxsee64.nsi installer
xcopy data\CRS installer\CRS /i
xcopy data\maps installer\maps /i
@ -38,7 +43,6 @@ build_script:
copy licence.txt installer
IF DEFINED OPENSSLDIR (copy %OPENSSLDIR%\libcrypto-*-x64.dll installer)
IF DEFINED OPENSSLDIR (copy %OPENSSLDIR%\libssl-*-x64.dll installer)
makensis.exe %NSISDEF% installer\gpxsee64.nsi
artifacts:

View File

@ -38,10 +38,26 @@ jobs:
modules: qtimageformats qtpositioning qtserialport qt5compat
- name: Install Android OpenSSL
run: git clone https://github.com/KDAB/android_openssl.git
- name: Get latest QtPBFImagePlugin run-id
id: runid
run: echo "runid=$(gh run list --repo tumic0/QtPBFImagePlugin --workflow 'Android' --limit 1 --json databaseId -q '.[0].databaseId')" >> $GITHUB_OUTPUT
env:
GH_TOKEN: ${{ github.token }}
- name: Create the plugins dir
run: mkdir plugins
- name: Download QtPBFImagePlugin
uses: actions/download-artifact@v4
with:
name: libplugins_imageformats_libpbf_arm64-v8a.so
github-token: ${{ github.token }}
repository: tumic0/QtPBFImagePlugin
path: plugins
merge-multiple: true
run-id: ${{steps.runid.outputs.runid}}
- name: Create localization
run: lrelease gpxsee.pro
- name: Configure build
run: qmake gpxsee.pro OPENSSL_PATH=android_openssl
run: qmake gpxsee.pro OPENSSL_PATH=android_openssl ANDROID_EXTRA_PLUGINS=${{ github.workspace }}/plugins
- name: Build project
run: make -j4 apk
- name: Upload artifacts

View File

@ -15,7 +15,7 @@ jobs:
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: '6.8.2'
version: '6.9.1'
modules: qtpositioning qtserialport qtimageformats
- name: Create localization
run: lrelease gpxsee.pro
@ -23,6 +23,20 @@ jobs:
run: qmake gpxsee.pro QMAKE_APPLE_DEVICE_ARCHS="x86_64h arm64"
- name: Build project
run: make -j3
- name: Get latest QtPBFImagePlugin run-id
id: runid
run: echo "runid=$(gh run list --repo tumic0/QtPBFImagePlugin --workflow 'OS X' --limit 1 --json databaseId -q '.[0].databaseId')" >> $GITHUB_OUTPUT
env:
GH_TOKEN: ${{ github.token }}
- name: Download QtPBFImagePlugin
uses: actions/download-artifact@v4
with:
name: libpbf.dylib
github-token: ${{ github.token }}
repository: tumic0/QtPBFImagePlugin
path: GPXSee.app/Contents/Plugins/imageformats
merge-multiple: true
run-id: ${{steps.runid.outputs.runid}}
- name: Create DMG
run: macdeployqt GPXSee.app -dmg -appstore-compliant
- name: Upload artifacts

View File

@ -42,7 +42,7 @@
<rule e="way" closed="yes" k="landuse" v="comercial|residential|retail" zoom-min="10">
<area fill="#e6e2d9"/>
</rule>
<rule e="way" closed="yes" k="landuse" v="forest|wood" zoom-min="10">
<rule e="way" closed="yes" k="landuse" v="forest|wood" zoom-min="9">
<area fill="#cadfaf"/>
</rule>
<rule e="way" closed="yes" k="landuse" v="meadow|grass|greenfield|village_green" zoom-min="10">
@ -56,7 +56,7 @@
</rule>
<!-- Hillshading -->
<hillshading zoom-min="10" zoom-max="15"/>
<hillshading zoom-min="9" zoom-max="15"/>
<!-- Contour lines -->
<rule e="way" k="contour_ext" v="*">
@ -198,13 +198,13 @@
</rule>
<!-- Area overlays -->
<rule e="way" k="landuse" v="military" zoom-min="10">
<rule e="way" closed="yes" k="landuse" v="military" zoom-min="9">
<area src=":/patterns/military-area.svg" symbol-height="4"/>
<rule e="way" k="*" v="*" zoom-min="16">
<caption fill="#ff4040" font-size="10" font-style="italic" text-transform="uppercase" k="name" stroke="#ffffff" stroke-width="2"/>
</rule>
</rule>
<rule e="way" k="boundary" v="protected_area|national_park" zoom-min="10" zoom-max="14">
<rule e="way" closed="yes" k="boundary" v="protected_area|national_park" zoom-min="9" zoom-max="14">
<rule e="way" k="protect_class" v="pr_2">
<area src=":/patterns/nature-reserve.svg" symbol-height="4"/>
<rule e="way" k="*" v="*" zoom-max="11">
@ -214,17 +214,17 @@
</rule>
<!-- Buildings -->
<rule e="way" k="building" v="-|civic|office|cathedral|church|basilica">
<rule e="way" closed="yes" k="building" v="-|civic|office|cathedral|church|basilica">
<area fill="#dbd0b6" stroke="#cdccc4" stroke-width="0.1"/>
</rule>
<rule e="way" k="building" v="civic|office">
<rule e="way" closed="yes" k="building" v="civic|office">
<area fill="#cfc4b3" stroke="#cdccc4" stroke-width="0.1"/>
<rule e="way" k="*" v="*" zoom-min="16">
<caption fill="#000000" font-size="10" font-style="italic" k="name" stroke="#FFFFFF" stroke-width="2" priority="-10"/>
</rule>
</rule>
<rule e="way" k="building" v="cathedral|church|basilica">
<rule e="way" closed="yes" k="building" v="cathedral|church|basilica">
<area fill="#a19d96" stroke="#cdccc4" stroke-width="0.1"/>
<rule e="way" k="*" v="*" zoom-min="16">
<caption fill="#000000" font-size="10" font-style="italic" k="name" stroke="#FFFFFF" stroke-width="2"/>

View File

@ -3,7 +3,7 @@ unix:!macx:!android {
} else {
TARGET = GPXSee
}
VERSION = 13.44
VERSION = 13.45
QT += core \
gui \

View File

@ -579,7 +579,7 @@
<message>
<location filename="../src/GUI/gui.cpp" line="451"/>
<source>Legend</source>
<translation type="unfinished"></translation>
<translation>Llegenda</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="459"/>

2681
lang/gpxsee_lv.ts Normal file

File diff suppressed because it is too large Load Diff

View File

@ -172,12 +172,12 @@
<message>
<location filename="../src/data/data.cpp" line="254"/>
<source>VKX files</source>
<translation type="unfinished"></translation>
<translation>VKX-filer</translation>
</message>
<message>
<location filename="../src/data/data.cpp" line="255"/>
<source>VTK files</source>
<translation type="unfinished"></translation>
<translation>VTK-filer</translation>
</message>
<message>
<location filename="../src/data/data.cpp" line="256"/>
@ -579,7 +579,7 @@
<message>
<location filename="../src/GUI/gui.cpp" line="451"/>
<source>Legend</source>
<translation type="unfinished"></translation>
<translation>Forklaring</translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="459"/>

View File

@ -172,12 +172,12 @@
<message>
<location filename="../src/data/data.cpp" line="254"/>
<source>VKX files</source>
<translation type="unfinished"></translation>
<translation>VKX dosyaları</translation>
</message>
<message>
<location filename="../src/data/data.cpp" line="255"/>
<source>VTK files</source>
<translation type="unfinished"></translation>
<translation>VTK dosyaları</translation>
</message>
<message>
<location filename="../src/data/data.cpp" line="256"/>

View File

@ -579,7 +579,7 @@
<message>
<location filename="../src/GUI/gui.cpp" line="451"/>
<source>Legend</source>
<translation type="unfinished"></translation>
<translation></translation>
</message>
<message>
<location filename="../src/GUI/gui.cpp" line="459"/>

View File

@ -1,10 +1,30 @@
<?xml version="1.0"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.gpxsee.gpxsee" android:installLocation="auto" android:versionCode="-- %%INSERT_VERSION_CODE%% --" android:versionName="-- %%INSERT_VERSION_NAME%% --">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.gpxsee.gpxsee"
android:installLocation="auto"
android:versionCode="-- %%INSERT_VERSION_CODE%% --"
android:versionName="-- %%INSERT_VERSION_NAME%% --">
<!-- %%INSERT_PERMISSIONS -->
<!-- %%INSERT_FEATURES -->
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:smallScreens="true"/>
<application android:name="org.qtproject.qt.android.bindings.QtApplication" android:extractNativeLibs="true" android:hardwareAccelerated="true" android:label="-- %%INSERT_APP_NAME%% --" android:requestLegacyExternalStorage="true" android:allowNativeHeapPointerTagging="false" android:icon="@drawable/icon">
<activity android:name="org.gpxsee.gpxsee.Activity" android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation|mcc|mnc|density" android:label="-- %%INSERT_APP_NAME%% --" android:launchMode="singleTop" android:screenOrientation="unspecified" android:exported="true">
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"/>
<application
android:name="org.qtproject.qt.android.bindings.QtApplication"
android:hardwareAccelerated="true"
android:label="-- %%INSERT_APP_NAME%% --"
android:requestLegacyExternalStorage="true"
android:allowBackup="true"
android:fullBackupOnly="false"
android:icon="@drawable/icon">
<activity
android:name="org.gpxsee.gpxsee.Activity"
android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation|mcc|mnc|density"
android:launchMode="singleTop"
android:screenOrientation="unspecified"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
@ -28,10 +48,22 @@
<data android:scheme="geo"/>
</intent-filter>
<meta-data android:name="android.app.lib_name" android:value="-- %%INSERT_APP_LIB_NAME%% --"/>
<meta-data android:name="android.app.arguments" android:value="-- %%INSERT_APP_ARGUMENTS%% --"/>
<meta-data android:name="android.app.extract_android_style" android:value="minimal"/>
<meta-data
android:name="android.app.lib_name"
android:value="-- %%INSERT_APP_LIB_NAME%% --"/>
<meta-data
android:name="android.app.arguments"
android:value="-- %%INSERT_APP_ARGUMENTS%% --"/>
</activity>
</application>
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.qtprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/qtprovider_paths"/>
</provider>
</application>
</manifest>

View File

@ -5,7 +5,8 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:7.2.1'
//noinspection AndroidGradlePluginVersion
classpath 'com.android.tools.build:gradle:8.8.0'
}
}
@ -14,10 +15,12 @@ repositories {
mavenCentral()
}
apply plugin: 'com.android.application'
apply plugin: qtGradlePluginType
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
//noinspection GradleDependency
implementation 'androidx.core:core:1.13.1'
}
android {
@ -28,20 +31,18 @@ android {
* - qtAndroidDir - holds the path to qt android files
* needed to build any Qt application
* on Android.
* - qtGradlePluginType - whether to build an app or a library
*
* are defined in gradle.properties file. This file is
* updated by QtCreator and androiddeployqt tools.
* Changing them manually might break the compilation!
*******************************************************/
//compileSdkVersion androidCompileSdkVersion
compileSdkVersion "android-33"
namespace androidPackageName
compileSdkVersion androidCompileSdkVersion
buildToolsVersion androidBuildToolsVersion
ndkVersion androidNdkVersion
// Extract native libraries from the APK
packagingOptions.jniLibs.useLegacyPackaging true
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'

View File

@ -17,4 +17,5 @@
<string name="static_init_classes"><!-- %%INSERT_INIT_CLASSES%% --></string>
<string name="use_local_qt_libs"><!-- %%USE_LOCAL_QT_LIBS%% --></string>
<string name="bundle_local_qt_libs"><!-- %%BUNDLE_LOCAL_QT_LIBS%% --></string>
<string name="system_libs_prefix"><!-- %%SYSTEM_LIBS_PREFIX%% --></string>
</resources>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<!-- For getFilesDirectory() -->
<files-path name="files_path" path="/"/>
<!-- For getExternalStorageDirectory() -->
<external-path name="external_path" path="/"/>
<!-- For getExternalFilesDir() -->
<external-files-path name="external_files_path" path="/"/>
<!-- For getExternalCacheDir() -->
<external-cache-path name="external_cache_path" path="/"/>
</paths>

View File

@ -49,7 +49,7 @@ Unicode true
; The name of the installer
Name "GPXSee"
; Program version
!define VERSION "13.44"
!define VERSION "13.45"
; The file to write
OutFile "GPXSee-${VERSION}_x64.exe"

View File

@ -250,12 +250,12 @@ SETTING(demURL, "demURL", DEM_TILES_URL );
SETTING(demAuthentication, "demAuthentication", false );
SETTING(demUsername, "demUsername", "" );
SETTING(demPassword, "demPassword", "" );
SETTING(hillshadingAlpha, "hillshadingAlpha", 102 );
SETTING(hillshadingLightening,"hillshadingLightening", 0.2 );
SETTING(hillshadingAlpha, "hillshadingAlpha", 85 );
SETTING(hillshadingLightening,"hillshadingLightening", 0.25 );
SETTING(hillshadingBlur, "hillshadingBlur", 3 );
SETTING(hillshadingAzimuth, "hillshadingAzimuth", 315 );
SETTING(hillshadingAltitude, "hillshadingAltitude", 45 );
SETTING(hillshadingZFactor, "hillshadingZFactor", 0.6 );
SETTING(hillshadingZFactor, "hillshadingZFactor", 0.8 );
SETTING(useOpenGL, "useOpenGL", false );
SETTING(enableHTTP2, "enableHTTP2", true );
SETTING(pixmapCache, "pixmapCache", PIXMAP_CACHE );

View File

@ -652,7 +652,7 @@ MatrixD RasterTile::elevation(int extend) const
void RasterTile::drawHillShading(QPainter *painter) const
{
if (_hillShading && _zoom >= 18 && _zoom <= 24) {
if (_hillShading && _zoom >= 17 && _zoom <= 24) {
if (HillShading::blur()) {
MatrixD dem(Filter::blur(elevation(HillShading::blur() + 1),
HillShading::blur()));