This change adds two new advanced settings keys for gps:
app\gps\bearingAdjustment: allows for specifying a manual adjustment
factor to apply to bearings obtained from the GPS, in the case that
the GPS reports offset bearings
app\gps\correctForTrueNorth: whether to apply a correction for
true north to bearings obtained from the GPS (now defaults to off)
Instead of hardcoding these values, allow them to be customised by changing
settings in QSettings (either via the settings ini file or through the
advanced settings editor), as some serial GPS devices require non-default
settings for the connection to work correctly.
to be placed on the maximum number of point, line and polygon candidates
which are generated for label features
These settings are set via the core\rendering\label_candidates_limit_*
settings, and allow for global limits to be set on the maximum number
of candidates allowed for label features. Placing these limits can
improve map rendering time, at the expense of worse label placement or
potentially missing map labels. (By default no global limit is set, which
means the labeling engine auto calculates the limit or uses the project
level settings)
The intended use case is for server administrators who are seeking for
maximum rendering speed to globally set these limits, causing them to
apply to all projects without the need for project-specific tweaks.
a layer is loaded which has no CRS
This is the new default behavior. It effectively defers the choice of CRS
from layer loading time to a later time which is convenient for users. E.g.
it no longer asks for CRS choice 100x when loading 100 files into QGIS at once.
(Effectively an application crash/hang... no one will sit through these 100 dialogs!)
The new behavior means there's no prompt (by default!) when loading these layers,
and instead the layers will be shown in the layer tree with an "unknown CRS"
indicator icon. They'll also be un-referenced, with coordinates from the layer
treated as purely numerically, non-earth values. I.e. the same behavior
as all layers get when a project is set to have no CRS.
The user can then resolve these in their own time, and by using convenient
shortcuts like highlighting multiple layers at once and then setting the CRS
for all these in a single action.
Fixes#19762, #27634, #24815 (and probably others)
The previous approach was severely broken, because the default
CRS for new projects setting was ignored as soon as a layer
was added to the project.
Instead, refine the setting to add options
- "Use CRS from first layer added": same as previous behavior,
the project CRS is set to match the first layer added to a new
project
- "Use a default CRS": CRS for a new project is set to a preset
default CRS, and is left unchanged when adding layers to the
project
Also update qgis_global_settings.ini to reflect these changes.
Fixes#27516
If true, users may control whether the version check is enabled
or disabled through the QGIS settings dialog. (The default
check behavior is determined by the existing 'checkVersion' setting).
If false, no version checking will be performed AND users will NOT
have an option to enable this check in the settings dialog.
This setting is intended for use in enterprise installs where QGIS version
management is handled centrally.
- Switch to flags instead of boolean argument
- Move logic for layer validity to canRunUsingLayer
- Add unit test
Also remove settings flag to hide duplicate features action
Since there's a number of serious outstanding issues with these
tools, hide them by default and show them only if a QgsSettings
flag is set ("tools\showDuplicateFeatureActions").
This allows the tools to be reworked for 3.2, while still
making them accessible for users who require their functionality.