* fix QgsHttpHeaders:
* when key contains double //
* clean old sub group before adding new key to avoid duplicate
* fix QgsHttpHeaderWidget:
* QTableWidgetItem flags for value was not set
* call to QTableWidget edit function fail
* table was not cleaned properly when adding entries
* fix QgsHttpHeaders test
* add constructor without QgsSettings, using default
* add new const QgsHttpHeaders::KEY_REFERER
* add test for QgsOwsConnection
* QgsOwsConnection:
* fix usage of "referer" by using QgsHttpHeaders
* replace "qgis/" prefix by QgsSettings::Prefix::QGIS
- Move settings to be feature level, not layer level, and permit
data defined control of these settings
- Add additional option for overlap handling for "Always allow"
overlaps, which indicates that the user doesn't care at all
if the label overlaps other labels and that the ideal placement
should always be used for the label regardless of whether it
overlaps labels or not
To clarify further, the options are:
- Never Overlap : never ever place overlapping labels for the layer,
even if it means labels will be missing
- Allow Overls if Required: if the label can't otherwise be placed,
draw an overlapping label. This mode will cause the label to be moved
a less ideal placement if possible, e.g. moving the label further
from the center of a line or polygon, IF doing so will avoid overlapping
labels. But if there's no other positions possible, then draw the
label overlapping.
- Always Allow Overlaps": It doesn't matter at all if the label
overlaps other labels or obstacles, that's fine to do and the best
placement (e.g most central placement) should always be used even if an
alternate further placement is possible which avoids overlaps entirely.
two separate new options
This setting was ambiguous in meaning -- it could be interpreted
as either:
"I don't care about overlapping labels, use them when
you have no other choice"
OR
"I want to see labels for EVERYTHING in this layer, and I don't
care what you have to do to show me those"
This leads to situations like those discussed in #41043, where some
users interpret the setting as the first meaning and get confused
when eg. a curved label line layer starts showing horizontal placements
for some features which couldn't otherwise be labeled (eg short
lines).
So, split the setting into two new options (checkboxes) with explicit, clear
distinction:
- "Allow overlapping labels if unavoidable": This setting means labels
can be overlapping, if there's no other option. It does NOT gaurantee
that all features in the layer will have labels, because other
constraints (such as lines too short to fit a label's text) will still
be respected and may prevent labels for the feature.
- "Allow inferior fallback placements": This mode permits features
to fallback to worse placement options when there's no other choice,
e.g. when a line is too short to fit a curved label text then the
label may be placed horizontally just over the feature's center
point.
The combination of checking BOTH options WILL gaurantee that
all features in the layer are labelled, albeit with both overlapping
labels and the degraded placements!
Fixes#41043
transformations, such as those which happen across different
celestial bodies
If set, the flag indicates that no user-facing warnings should be
shown and instead the transform should be short circuited
* Implement saving stats as an EVLR
* Fix layout tests
* don't save statistics unless copc was generated by pdal
* Address Martin reviews
* Address reviews
* Only read stats EVLR and do not store count
* merge cleanup
* Address reviews
- Remove waiting for task to finish in ~QgsPointCloudLayer
- Fix failing ept provider test when maximum threads is set to 1.
- make PointCloudStatisticsCalculationState into enum class
- move AttributeStatistics outside QgsPointCloudStatistics