Alessandro Pasotti
52dd15b764
Add test case for QgsAdvancedDigitizingDockWidget
2022-02-22 10:29:47 +01:00
Alessandro Pasotti
db10e7d4ec
Advanced digitizing: be nice with non-dot locales
...
Fix #47465
2022-02-21 17:15:01 +01:00
Julien Cabieces
2d2cd13c58
Merge pull request #47392 from signedav/fix_relref_nomodal
...
Avoid modal dialogs in relation reference / relation editor
2022-02-21 09:10:49 +01:00
Nyall Dawson
914dccbd5b
Allow access to feature geometry in generator subsymbols via
...
geometry($currentfeature)
When used in a geometry generator subsymbol, the expression
geometry($currentfeature)
should refer to the original feature's geometry, not the geometry
generated by the generator symbol (which is accessible through
$geometry)
Fixes #46455
2022-02-21 13:04:07 +10:00
Nyall Dawson
84f3b42861
The $geometry function should return the expression context's geometry
...
IF it has been explicitly set, not the context's feature's geometry
Refs #46455
2022-02-21 13:04:07 +10:00
Nyall Dawson
11a8d40a86
Allow geometries to be set separate to features in expression contexts
...
Refs #46455 -- we need a way to separate these too, as we don't always
want $geometry to refer to a feature's geometry
2022-02-21 13:04:07 +10:00
nirvn
a8eaf46995
Apply same group<->ELSE behavior to the {3D,labeling} ruling based renderer
2022-02-21 11:19:58 +10:00
nirvn
002cfb0375
Add test case covering fix
2022-02-21 11:19:58 +10:00
Nyall Dawson
7a27ff6dc6
Fix disabled children in a rule without a symbol incorrectly result in features rendered by parent level ELSE rule
2022-02-21 11:19:58 +10:00
Sandro Santilli
affa44e41e
Use read-only connection when writing is not needed
2022-02-21 09:13:20 +10:00
nirvn
4324a2a8b5
[auxiliary storage] Avoid needless spatialite database connection
2022-02-21 09:08:22 +10:00
Alessandro Pasotti
2f9dd9a66f
Fix NULL HTML edit widget
...
Fix #47363
2022-02-21 08:38:36 +10:00
Nyall Dawson
e73f5bccac
Fix test
2022-02-20 06:48:03 +10:00
Nyall Dawson
37b56f376d
Fix dox
2022-02-20 06:48:03 +10:00
Nyall Dawson
6c1ca4d2fd
Minor tweaks
2022-02-20 06:48:03 +10:00
Nyall Dawson
d06fb3dd11
[feature] Allow creation of new field domains through right click
...
menu on gpkg items in browser
Allows users to create new range, coded value or glob field domains
2022-02-20 06:48:03 +10:00
Nyall Dawson
dfac7df6fa
Fix error retrieval
2022-02-20 06:48:03 +10:00
Nyall Dawson
118b3d32c1
Create QgsFieldDomainDialog dialog for configuring a field domain
2022-02-20 06:48:03 +10:00
Nyall Dawson
9c4bcf0092
Add widgets for creation of field domains
2022-02-20 06:48:03 +10:00
Nyall Dawson
37de21e506
Fix build on older gdal
2022-02-20 06:48:03 +10:00
Nyall Dawson
a6ec4acf21
Fix documentation warning
2022-02-20 06:48:03 +10:00
Nyall Dawson
a06fcde895
Add action to unset an existing field domain
2022-02-20 06:48:03 +10:00
Nyall Dawson
c264eb50f5
Clarify removal
2022-02-20 06:48:03 +10:00
Nyall Dawson
7273b4d2d7
Fix state of browser properties splitter section is not correctly
...
saved/restored
2022-02-20 06:48:03 +10:00
Nyall Dawson
6e350be9c3
Refresh fields item when a field has a domain set for it
2022-02-20 06:48:03 +10:00
Nyall Dawson
3332b27edd
QgsFieldItem is only equal when the QgsField is also equal
...
Otherwise the field item will not be updated when the gpkg parent
item is refreshed and the field definition has changed (e.g.
the field type)
2022-02-20 06:48:03 +10:00
Nyall Dawson
51889b2248
When a gpkg item is refreshed in the browser, also refresh
...
the fields and field domains children
Otherwise the fields we show will not be correctly updated
when the gpkg item itself is refreshed
2022-02-20 06:48:03 +10:00
Nyall Dawson
f8bbcab8bb
Add flag for browser data item to indicate that children of the item
...
must be refreshed whenever the item is refreshed
This behaviour is not automatic. The new flag allows items to opt-in,
so that their children WILL be automatically refreshed when the
item is refreshed.
Should be used sparingly only to avoid expensive work
2022-02-20 06:48:03 +10:00
Nyall Dawson
886df44376
[feature] Show "Set Field Domain" action when right clicking
...
a field in the browser for a Geopackage table
Allows users to set the field domain associated with that field
2022-02-20 06:48:03 +10:00
Nyall Dawson
063e059359
Add API to QgsAbstractDatabaseProviderConnection to create new field
...
domains on a database and set field domain associated with a field
And implement for OGR database provider connection class
2022-02-20 06:48:03 +10:00
Nyall Dawson
7db84789f8
Add method to convert QgsFieldDomain to OGR field domain
2022-02-20 06:48:03 +10:00
Nyall Dawson
44844bc736
Add method to convert QVariant to OGRField
2022-02-20 06:48:03 +10:00
Nyall Dawson
eaba5b3efd
Add method to convert QVariant type to OGR field type
2022-02-20 06:48:03 +10:00
Nyall Dawson
4a7fb87af5
[feature] Add browser properties page for field and fields items
...
In particular, this allows users to easily see what field domain
may be attached to particular fields
2022-02-20 06:48:03 +10:00
Nyall Dawson
58f76f471b
Rename widget to generic name
2022-02-20 06:48:03 +10:00
Nyall Dawson
cd94ee086f
[ogr] Set domain name for fields where available
2022-02-20 06:48:03 +10:00
Nyall Dawson
e5a0d13ea4
Add domain name to QgsFieldConstraints
2022-02-20 06:48:03 +10:00
Nyall Dawson
f63bebd9aa
Silence debug
2022-02-20 06:48:03 +10:00
Nyall Dawson
d956af800e
Fix setting capabilities for Gpkg connection
2022-02-20 06:48:03 +10:00
Nyall Dawson
815b4c008e
Update test
2022-02-20 06:48:03 +10:00
Nyall Dawson
22ecaaba27
Fix warnings
2022-02-20 06:48:03 +10:00
Nyall Dawson
d18672939a
Split parts of QgsGeoPackageProviderConnection out to new base class
...
QgsOgrProviderConnection
This moves the generic parts of the GPKG connection class which rely
solely on OGR API out to a base class, leaving all the geopackage
specific functionality in the GPKG provider connection class.
It allows us to access a lot of the base level functionality from
this class for non-gpkg OGR supported database types, e.g.
spatialite, ESRI file geodatabases, MDB, etc.
2022-02-20 06:48:03 +10:00
Nyall Dawson
4261e6a577
Partial work on centralizing all QVariant::Type to display string
...
logic in a new QgsVariantUtils class
(I've likely missed a few places here, but it's a start!)
2022-02-20 06:48:03 +10:00
Nyall Dawson
c06cac2ad8
Test requires GDAL 3.3+
2022-02-20 06:48:03 +10:00
Nyall Dawson
a7b6b41fad
Add docs
2022-02-20 06:48:03 +10:00
Nyall Dawson
8cd9b80149
Add browser properties widget for showing the properties of an existing
...
field domain
2022-02-20 06:48:03 +10:00
Nyall Dawson
1729ab1bc5
Add python file
2022-02-20 06:48:03 +10:00
Nyall Dawson
f482c85069
Show a "Field Domains" item for geopackages under the browser,
...
which lists existing field domains in the database
2022-02-20 06:48:03 +10:00
Nyall Dawson
8036ea89ed
Add API to retrieve field domain names and definitions to QgsAbstractDatabaseProviderConnection
...
and implement for GPKG connections
2022-02-20 06:48:03 +10:00
Nyall Dawson
3d9a74176e
More repr
2022-02-20 06:48:03 +10:00