66389 Commits

Author SHA1 Message Date
Ivan Ivanov
6237ec0d41 Remove irrelevant test 2020-10-22 09:13:11 +10:00
Ivan Ivanov
915040b8fe Fix backwards compatibility of QgsFieldCalculatorAlgorithm 2020-10-22 09:13:11 +10:00
Even Rouault
5215f81e16 QgisApp::askUserForOGRSublayers(): make sure all layers get opened with the same GDAL datasets
This fixes a scenario inspired from #39431, but doesn't fix the exact one
of that ticket.

The scenario fixed by this ticket is:
- Enable grouped transaction in project settings
- Open a GeoPackage with 2 layers 'a' and 'b'
- Toggle edit mode
- Create a feature in 'a'
- Create a feature in 'b' -> when validating an error message of database
  locked would appear without this fix

The reason is that the 2 layers got opened in 2 separate GDAL datasets,
and this doesn't play well with the grouped transaction mechanism that will
start a transaction in each dataset. SQLite locking will then kick in.
So here we avoid this to happen by making sure the OGRProvider that is used
to return the list of sublayers is closed before opening them. That way the
mechanism in the OGR provider to share the same GDALDataset works.

This actaally explains why the scenario in #39431 still fails. When we
create the second layer, the OGR provider cannot re-use the GDALDataset used
to open the first layer, as it got modified in between (see
https://github.com/qgis/QGIS/pull/5689#issuecomment-346625386 for a case
where this was needed), and in particular doesn't know there are now 2 layers.
So we end up having 2 GDALDataset opened on the same .gpkg file and starting
transactions...

Fixing #39431 would propably require to modify QgsNewGeoPackageLayerDialog::apply()
to possibly use an existing GDALDataset openeded and cached in
QgsOgrProvider::sMapSharedDS global map.
Probably better, make QgsNewGeoPackageLayerDialog::apply() use
QgsOgrProvider::createEmptyLayer(), and modify that one to reuse an
existing GDALDataset, and no longer call QgsOgrProviderUtils::invalidateCachedLastModifiedDate()
2020-10-22 09:02:03 +10:00
Harrissou Sant-anna
7a8f52bfa5 Rename widget in svg selector dialog to avoid collision 2020-10-22 08:34:40 +10:00
Nyall Dawson
49c508921d Allow conversion of QgsFeatureStoreList results to Python objects
Fixes #39479
2020-10-22 02:45:17 +10:00
Nyall Dawson
0920242a5b Fix build on older Qt versions 2020-10-22 02:44:45 +10:00
Nyall Dawson
62409b92ce Fix preview symbol when offsetting point symbols isn't shown correctly 2020-10-22 02:44:45 +10:00
Nyall Dawson
00a3a6b805 [needs-docs] Also use click-click behavior for offset point symbols tool
To match consistency with all the other QGIS map tools!
2020-10-22 02:44:45 +10:00
Nyall Dawson
d5164e1e6f [needs-docs] Follow standard click-click behavior for rotate point
markers tool

Instead of click and hold to rotate, make this tool follow every
other QGIS map tool and use click-click to rotate, click-right click
to cancel.
2020-10-22 02:44:45 +10:00
Nyall Dawson
0480a646f5 Improve appearance and readability of rotate marker overlay 2020-10-22 02:44:45 +10:00
Nyall Dawson
690d403f55 Don't show horizontal grey line under arrow when rotating marker symbols using the Rotate Markers tool 2020-10-22 02:44:45 +10:00
Nyall Dawson
4f4b286d3d Add flag to turn off rendering crosshairs in the background of preview
images generated for markers by QgsSymbol::bigSymbolPreviewImage()
2020-10-22 02:44:45 +10:00
Nyall Dawson
9aa805c15b Truncate action text when showing a preview in the action manager table
There's no point showing the full action text in the table, as the table
columns are generally only wide enough to show <20 characters

Otherwise large actions (such as python scripts) can cause huge slowdowns in the
vector layer properties dialog when we try to insert the entire script
into a table cell...
2020-10-22 02:43:53 +10:00
Nyall Dawson
e304d4d7e3 When running a map action and clicking over multiple features, ensure
the popup feature menu uses the layer's defined display expression instead
of just showing raw feature ids

This matches the same menu behavior as the identify tool uses
2020-10-22 02:43:53 +10:00
Nyall Dawson
3019b82100 Rework 3d light configuration GUI so that point and directional
lights aren't separated into distinct tabs

This hopefully avoids the papercut issue where its not obvious
to users exactly which existing lights are in a scene, and also
follows the UI pattern used elsewhere (e.g. symbol layers)
2020-10-22 02:43:19 +10:00
Alessandro Pasotti
dd593fd716
Merge pull request #39502 from elpaso/server-standalone-wms-bug
Server standalone wms bug
2020-10-21 15:51:58 +02:00
Alessandro Pasotti
1b4b1fce0b
include thread for gcc 2020-10-21 14:04:27 +02:00
Paul Blottiere
7c38853df6
Merge pull request #39194 from lbartoletti/vertex_tool_snapping_interpolate_z_segment
Fix Z interpolation on vertex moved/added by the vertex tool.
2020-10-21 13:58:38 +02:00
Denis Rouzaud
22b622b163
also use SVG selector in SVG fill symbology (#39524) 2020-10-21 13:46:27 +02:00
Denis Rouzaud
2d82ef91d3
fix buttons in SVG source line edit (#39519) 2020-10-21 12:17:01 +02:00
Alessandro Pasotti
8ea93ec736 Display version in help 2020-10-21 11:26:09 +02:00
Alessandro Pasotti
ca644234d4 Use same version from QGIS desktop 2020-10-21 11:21:58 +02:00
Loïc Bartoletti
22ee3d068c fix tests 2020-10-21 11:19:05 +02:00
Loïc Bartoletti
4d50f005c7 fix topological edition when mid segment is snapped [vertex tool] 2020-10-21 11:19:05 +02:00
Loïc Bartoletti
430031f23f fix Z interpolation for Middle of Segment 2020-10-21 11:19:05 +02:00
Loïc Bartoletti
3eec50ea62 Add vertex information for QgsPointLocator::MiddleOfSegment in order to use Match::interpolatedPoint method 2020-10-21 11:19:05 +02:00
Loïc Bartoletti
4fa41bf62d Fix Z interpolation on vertex moved/added by the vertex tool. fixes #38561 2020-10-21 11:19:05 +02:00
Alessandro Pasotti
9ffc42be95 Take a nap 2020-10-21 10:31:03 +02:00
Denis Rouzaud
454a0951ab fix vertical spacer in SVG selector 2020-10-21 09:28:51 +02:00
vcloarec
f31b955719 remove spins 2020-10-21 14:35:30 +10:00
vcloarec
55ee533b22 remove qwt 2020-10-21 14:35:30 +10:00
vcloarec
51305598a5 improve 3D ui for directional light 2020-10-21 14:35:30 +10:00
Denis Rouzaud
139be61b29
Merge pull request #39421 from 3nids/svg-browser
make the SVG selector collapsible (+ remove duplicated code)
2020-10-21 06:10:06 +02:00
Nyall Dawson
f1fcd39370 Log message if selection cannot be determined even after geometry repair 2020-10-21 11:08:35 +10:00
Nyall Dawson
9d2ecb58d4 Use prepared geometries for faster selections 2020-10-21 11:08:35 +10:00
Nyall Dawson
929e2b19e4 Silence noisy GEOS messages when selecting invalid geometries, fix logic 2020-10-21 11:08:35 +10:00
Nyall Dawson
7e64d74f76 Add method to silence noisy GEOS error logging handling when not
desirable.

By default these errors are logged to the console and in the QGIS UI.
But for some operations errors are expected and logging these just results
in noise.
2020-10-21 11:08:35 +10:00
Nyall Dawson
2480814d24 Safer approach to handling invalid geometries in selection tools 2020-10-21 11:08:35 +10:00
Nyall Dawson
22c2c5a41c When selecting features via rect, ignore GEOS errors due to invalid
geometries and allow these features to be selected based on their
bounding boxes alone.

Fixes #38460
2020-10-21 11:08:35 +10:00
Nyall Dawson
5565a6858d Some doxygen grammar fixes 2020-10-21 09:32:15 +10:00
Nyall Dawson
d3adc10ec3 Move some todos so they don't sit between member doxygen and declaration
Sipify doesn't handle this, and drops off the docstring from the python method
2020-10-21 09:32:15 +10:00
Nyall Dawson
9f97955900 Further improvements to QgsProject dox 2020-10-21 09:32:15 +10:00
Julien Cabieces
a259f509ad
ReadEntry ok value must be set to False when property doesn't exist
Fixes #37851 : readEntry ok value must be set to False when property doesn't exist
2020-10-21 06:12:14 +10:00
Germán Carrillo
58280a0695 Update user groups symbology to use gradient type radial with centroid as base point 2020-10-21 06:09:20 +10:00
Richard Duivenvoorde
537761aa67 Homogenize the look of Identify Results for different LayerTypes
The code to build the Treeview for the Identify Results is split
in four, for the four different LayerTypes (vector, raster, mesh,
vector-tile).
But although vector and vector tile showed the 'toplevel' in bold
with the layername, the others showed... layer-count and name
in normal font.
This commit changes it so if you use the identify tool in a mixed
layer environment, they look more or less the same...
2020-10-21 04:21:04 +10:00
Alessandro Pasotti
f6b81ca23a Spelling 2020-10-20 14:09:12 +02:00
Alessandro Pasotti
14b0c24d87 Server standalone: reimplement without signals
Because of WMS internal event loop that will
crash on cascading.
2020-10-20 13:59:52 +02:00
Alessandro Pasotti
5d678a57a9 Server landing page: don't crash on bad layers 2020-10-20 13:59:03 +02:00
Nyall Dawson
7b61f08f41 Fix crash in test 2020-10-20 19:15:18 +10:00
Nyall Dawson
9482b1be70 Correctly expose metadata tab for mesh layers
Just like all other map layer types, meshes CAN have metadata set,
so expose this via a metadata tab in their layer properties window
just like any other layer type.
2020-10-20 19:15:18 +10:00