Skip to content

Conversation

@semuadmin
Copy link
Contributor

@semuadmin semuadmin commented Aug 23, 2025

PyGPSClient Pull Request Template

Description

ENHANCEMENTS:

  1. Internal streamlining and rationalisation of map handling across all dialogs and widgets which display maps (Mapview widget, GPX Track Viewer dialog, Import Custom Map dialog).
    • Location-centered zooming is now available for both offline and online maps (previously only online maps could be zoomed via MapQuest API). For offline maps, the minimum and maximum viable zoom levels will depend on the resolution and extents of the imported geo-referenced image(s).
    • For both online and offline maps, each zoom level (1-20) corresponds to a pre-calculated lat/lon bounding box. If you see black borders around an offline map, this signifies that the geo-referenced image does not extend to the current zoom level bounds - try increasing the zoom level until the map fills the canvas.
    • A new boolean configuration setting mapzoom_disabled_b governs the location-centered zoom behaviour for offline maps. To enable zoomable custom maps, set this to 0 (the default). To revert to the previous map-centered static handling, set this to 1.
    • NB: the MapCanvas class can only display one offline image at a time - it cannot 'tile' multiple images to form a single larger image on the canvas. The largest single image the map viewer can handle is around 150 million pixels (roughly 430 MB), though one would need an extremely high resolution screen (8K) to take advantage of images of such resolution.
  2. 'Map Type', 'Zoom' and 'Show Track' options moved from settings panel to mapview widget, allowing these to be altered even if the settings panel is hidden.
  3. A new boolean configuration setting transient_dialog_b (default 1) governs whether Toplevel dialogs are 'transient' (i.e. always on top of main application dialog) or not. A setting of 0 allows pop-up dialogs to be minimised independently of the main application window, but be mindful that some dialogs may end up hidden behind others e.g. "Open file/folder" dialogs. If a file open button appears unresponsive, check that the "Open file/folder" panel isn't already open but obscured. Applies to all Toplevel dialogs (UBX Configuration, NMEA Configuration, NTRIP Client, SPARTN Client, About, GPX Viewer, Import Custom Map, TTY Presets).

Fixes # (issue)

Testing

Please test all changes, however trivial, against the supplied pytest suite tests/test_*.py. Please describe any test cases you have amended or added to this suite to maintain >= 99% code coverage.

  • Test A
  • Test B

Checklist:

  • I agree to abide by the code of conduct (see CODE_OF_CONDUCT.md).
  • My code follows the style guidelines of this project (see CONTRIBUTING.MD).
  • I have performed a self-review of my own code.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have made corresponding changes to the documentation.
  • (if appropriate) I have added test cases to the tests/test_*.py unittest suite to maintain test coverage.
  • I have tested my code against the full tests/test_*.py unittest suite.
  • My changes generate no new warnings.
  • Any dependent changes have been merged and published in downstream modules.
  • I have signed my commits.
  • I understand and acknowledge that the code will be published under a BSD 3-Clause license.

@semuadmin semuadmin added this to the RC 1.5.13 milestone Aug 23, 2025
@semuadmin semuadmin requested a review from a team August 23, 2025 06:45
@semuadmin semuadmin self-assigned this Aug 23, 2025
@semuadmin semuadmin added the enhancement New feature or request label Aug 23, 2025
@semuadmin semuadmin marked this pull request as draft August 23, 2025 06:46
@semuadmin semuadmin marked this pull request as ready for review August 23, 2025 06:57
@semuadmin semuadmin merged commit 7879a46 into master Aug 23, 2025
@semuadmin semuadmin deleted the RC-1.5.13 branch August 24, 2025 15:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants