15 Commits

Author SHA1 Message Date
Nyall Dawson
ffa99b7b64 Fix doxygen blocks which don't use the * prefix on all lines, which
prevents the auto format and sipify scripts from doing their full
formatting magic
2021-04-19 12:54:13 +10:00
Matthias Kuhn
a75f6ab903 [qt6] QVector and QList are unified 2021-03-28 06:26:33 +10:00
Nyall Dawson
40ed79393e Instead of double-iterating over features caused by calling
QgsVectorLayer::minimumValue and then QgsVectorLayer::maximumValue
when we need BOTH the min and max value for a field, add an
optimised QgsVectorLayer::minimumAndMaximumValue() method
which can calculate both min and max at the same time in
a single iteration.

Potentially halves the cost of calculating these values whenever
we are forced to do a full iteration to calculate them.
2021-03-27 12:09:09 +10:00
Denis Rouzaud
ba8a445850 run sipify 2021-03-22 21:13:52 +01:00
Nyall Dawson
d8aba0c65a Add FeatureSymbology capability to QgsVectorDataProvider
If present, the provider is able to retrieve embedded symbology
associated with individual features.
2021-03-06 16:37:46 +10:00
Nyall Dawson
c6370c7f52
Speed up QGIS compilation by removing all Qt Module-wide includes
Refs https://www.kdab.com/beware-of-qt-module-wide-includes/
2021-03-05 11:23:15 +10:00
tschmetzer
28c289d8ab
Improve QgsVectorLayer description (#41796)
Improve QgsVectorLayer description providing some more background explanation
2021-02-26 06:44:36 +10:00
Alessandro Pasotti
e89c163118 Complete test coverage for edit buffer
Fix tests
2021-02-13 11:54:16 +01:00
Alessandro Pasotti
8cb15c3260 Editing buffer passthrough 2021-02-12 19:00:57 +01:00
Nyall Dawson
c6613593c7 Don't loop through all selected features multiple times (once per
field) when the attribute form is opened.

This is incredibly expensive, yet only required in a very very small
corner case (field is from a joined layer without the upsert on edit
capabilities).

Refine logic to avoid the scan wherever we can.

Fixes #41366
Fixes #36863
2021-02-09 10:24:45 +10:00
Nyall Dawson
cd2df66674 Use unique_ptr 2021-02-08 13:23:37 +10:00
Nyall Dawson
d0882d0f06 When auto selecting the default identifier field for a layer,
prefer something like "admin_name" over "type_name".

By penalising results with "type", "class", "cat" in their names
we are less likely to accidentally select a category field as the
friendly identifier when a better one exists.

Also add tests for this logic.
2021-02-06 10:10:51 +10:00
Nyall Dawson
50b9beaad6 [sipify] Catch more class references and insert :py:class: annotations 2021-01-31 05:41:22 +10:00
Denis Rouzaud
2cc632ee5d follow up QVariant 2021-01-03 20:16:56 +01:00
Nyall Dawson
a9c80e5740 Code shuffle
Move vector, project and network related core .cpp/.h files into
dedicated subdirectories.

An attempt to organise src/core better to make things easier to find.
2020-12-29 11:38:11 +10:00