21352 Commits

Author SHA1 Message Date
Samweli
df3b3d122e Added new logic for handling hiding of expression variables, this will help to have a clear way of not showing variables that are not needed anymore but they can break past QGIS projects if they are removed. 2022-08-31 10:42:01 +02:00
Mathieu Pellerin
b7e31d4508
[feature][ui] Add a Show in Attribute Table action to the right click menu of legend class symbols (#49984) 2022-08-29 10:18:06 +00:00
Germán Carrillo
ca179c55d2 [processing] Add generic option to show feature count for processing vector outputs (fix #39522) 2022-08-28 20:08:28 +10:00
Nyall Dawson
73692a6a41 Create QgsProviderSqlQueryBuilder
QgsProviderSqlQueryBuilder provides an interface for creation of SQL queries, which
can be overridden for backend provider specific SQL syntax.

Initially add a virtual method for creation of row limited select *
queries.
2022-08-28 15:37:15 +10:00
Alessandro Pasotti
f704cd09fa
Fetch geometries when conditional formatting rule requires it
Fixes #43252
2022-08-23 12:28:20 +10:00
Nyall Dawson
b79ca2951f Cleaner docs 2022-08-23 10:07:54 +10:00
Damiano Lombardi
67bdadfead
Fix rollback not leaving a consistent state for buffered transaction 2022-08-23 10:04:17 +10:00
Germán Carrillo
e9fd5f1fe5 [processing] Harmonize tags in processing algorithms related to error finding and fixing 2022-08-22 11:16:07 +10:00
Nyall Dawson
8171b76ddd Introduce QgsVariantUtils::isNull( QVariant )
This method restores the Qt 5 logic for testing for null variants,
where for core Qt types the isNull check is forwarded to the actual
data type.

E.g. on Qt 5:  QVariant( QDateTime()).isNull() is true, but
on Qt 6 it's false

This breaks a LOT of assumptions made throughout QGIS. The new
helper method avoids this breakage by ensuring we follow the Qt 5
logic also on Qt 6 builds, and also gives us the option to extend
this logic for user types (e.g QVariant( QgsGeometry() ).isNull() could
return true). (That's not included here)
2022-08-20 15:35:09 +10:00
Nyall Dawson
ab2c55aac4 [qt6] Deal with the move of QBuffer/QGeometry/QAttribute from Qt3DRender to
Qt3DCore
2022-08-18 13:23:55 +10:00
Nyall Dawson
bc7b580a12 Deprecate the old test image anomaly system 2022-08-17 22:21:20 +10:00
Nyall Dawson
deff4a1faf Use QMultiMap for qt 6 compatibility 2022-08-16 08:01:55 +02:00
Nyall Dawson
7fedb1af77 Remove logical dpi handling from QgsScreenHelper
Unless we REALLLLLLLY need this, it's better to keep the API
simple and avoid the confusion between two different dpi values
2022-08-16 12:25:52 +10:00
Nyall Dawson
e88867de91 Port QgsMeshRenderer3dAveragingWidget away from QDesktopWidget 2022-08-16 12:25:52 +10:00
Nyall Dawson
c306fa0a21 Port elevation canvas away from QDesktopWidget 2022-08-16 12:25:52 +10:00
Nyall Dawson
e7a9961ea8 Add availableGeometry handling to QgsScreenHelper 2022-08-16 12:25:52 +10:00
Nyall Dawson
44ba8aca2a Use QgsScreenHandler instead of duplicate screen dpi handling code 2022-08-16 12:25:52 +10:00
Nyall Dawson
22edb68eac Introduce QgsScreenHelper
A utility class for dyanmic handling of changes to screen properties
2022-08-16 12:25:52 +10:00
Nyall Dawson
f9415af325 Add API to QgsProjectViewSettings to allow setting default map rotation
Provides a stable means for scripts to set the map rotation
2022-08-16 12:22:05 +10:00
Nyall Dawson
6b0ee5edb5 Add method to retrieve action by string instead of uuid
Required for qt 6 builds
2022-08-15 16:22:48 +10:00
Nyall Dawson
51e3c0833b Sip update 2022-08-12 20:36:07 +10:00
Nyall Dawson
33788b6cb4 Remove more old qt fallbacks 2022-08-12 20:36:07 +10:00
Nyall Dawson
94ea21764b Fix storing reference to feature which goes out of scope leads
to crashes in rule based renderer
2022-08-10 17:00:48 +10:00
Nyall Dawson
9d1fc68c1d Get remaining processing tests working on newer systems 2022-08-10 16:33:18 +10:00
Nyall Dawson
9f07b782f2 More working processing tests on newer systems 2022-08-10 16:33:18 +10:00
Nyall Dawson
6e6759f482 Fix some more processing tests on newer libraries 2022-08-10 16:33:18 +10:00
Nyall Dawson
7b7d0ba77e When running hub lines tool in geodesic mode, always drop m/z values
Otherwise we end up with geometries full of nan z/m values, which
are problematic and can't be used with newer GDAL versions
2022-08-10 16:33:18 +10:00
Nyall Dawson
44c06b7be4 Get some processing tests passing on newer libraries 2022-08-10 16:33:18 +10:00
Nyall Dawson
085aa726fd Add mechanism to flag that a render check is expected to fail 2022-08-10 08:46:34 +10:00
Zayne Tomlins
c7aa662662 Cleaned up docs 2022-08-10 08:04:42 +10:00
Nyall Dawson
b03f2cd024 [sip] Fix conversion of null QgsLayoutItem* pointer variant values
on newer qt/sip versions

This was incorrectly returning a malformed/semi-null QVariant
...something?!?

We probably need to add more cases here, but this one was directly
causing a test failure and so was easy to identify
2022-08-09 12:59:01 +10:00
Nyall Dawson
f361ad2df8 Get some more processing tests passing on newer grass 2022-08-08 17:50:06 +10:00
Nyall Dawson
53a86528f1 More processing test fixes 2022-08-08 17:50:06 +10:00
Nyall Dawson
4af0e4c1a0 Get some more processing tests working on newer GDAL/GEOS 2022-08-08 17:50:06 +10:00
Nyall Dawson
b17ad2f703 Add some more methods to normalize geometries for processing tests 2022-08-08 17:50:06 +10:00
Nyall Dawson
089be6f8ab Don't dump rendered images as base64 in logs anymore
We now have an alternative way to get rendered images (via the
artifacts), so we can massively reduce the size of logs by
avoiding this output
2022-08-08 09:28:56 +10:00
Nyall Dawson
c08cbfae4a Store test report as an artifact after running test workflow 2022-08-08 06:01:37 +10:00
Nyall Dawson
dea6f793b6 Put diff and rendered image for failing tests in a separate
qgis_test_report folder, and generate the failing test report
in that folder too
2022-08-08 06:01:37 +10:00
Nyall Dawson
ea41c3ded7 Sipify 2022-08-06 08:01:58 +10:00
bdm-oslandia
cbbf0b757e revert QgsLogger changes 2022-08-02 06:41:52 -07:00
bdm-oslandia
bc34c8fbd2 3DAxis: fix debug messages by adding trace macro and isTraceEnabled()/isDebugEnabled() functions 2022-08-02 06:41:52 -07:00
Nyall Dawson
fe7964bb1a Show sublayers in a tree, respecting schema/dataset groupings where known 2022-08-02 17:20:37 +10:00
Nyall Dawson
e9e6756c12 Add method to convert QgsProviderSublayerDetails to mime uris 2022-08-02 17:20:37 +10:00
Nyall Dawson
6522ef92a3 Rework QgsWeakRelation::resolvedRelation to instead return a list
of resolved relationships, so that it can handle resolving
a many-to-many weak relationship to two QgsRelations (which is
required to represent a many-to-many relationship using QgsRelation)
2022-08-02 15:44:40 +10:00
Nyall Dawson
7275fb2033 Also show a relationships item when expanding out tables for
tables which form the parent side of a relationship
2022-08-02 15:44:40 +10:00
Nyall Dawson
eeda423e5e Rework QgsWeakRelation so that it can losslessly represent many-to-many relations 2022-08-02 15:44:40 +10:00
Nyall Dawson
ff6df1e89a Add some methods to get translated strings for relationship enums 2022-08-02 15:44:40 +10:00
Nyall Dawson
c4cebde0f9 Add additional properties to QgsWeakRelation to match those available
through GDAL api
2022-08-02 15:44:40 +10:00
Nyall Dawson
6d65e4e450 Show existing relationships in browser when expanding datasources 2022-08-02 15:44:40 +10:00
Nyall Dawson
b46ef1fab0 Implement relationship retrieval for ogr provider connection 2022-08-02 15:44:40 +10:00