14153 Commits

Author SHA1 Message Date
Nyall Dawson
27e1ef5c1c Add method to QgsCurvePolygon to force RHR, ensuring standard ring orientation 2018-11-09 19:06:48 +10:00
Nyall Dawson
c22364d45e Add method to determine orientation of closed curves 2018-11-09 19:06:48 +10:00
Etienne Trimaille
6e16651d96 [FEATURE] explode hstore algorithm (#8212) 2018-11-09 13:00:29 +07:00
Alessandro Pasotti
02ecb56d95 QgsDataSourceSelectDialog: filter, refresh and scroll to last selected item
plus:
- expand children of last selected item
- save/restore status
2018-11-07 11:08:49 +01:00
Nyall Dawson
4b32e7cc78 [afs] Implemented decodeUri for AFS provider
Allows retrieval of the web URL for an AFS layer
2018-11-07 15:30:17 +10:00
Alessandro Pasotti
c8b26771cf
Merge pull request #8359 from elpaso/handle-bad-layers2
[needs-docs][feature] Deferred handling of bad layers
2018-11-06 08:43:18 +01:00
Nyall Dawson
dc72f06e53 Bump minimum Qt version to 5.9 2018-11-06 08:45:37 +10:00
Luigi Pirelli
993dc81812
Merge pull request #8241 from NaturalGIS/fix_grass7_r_stats_quantile
fix GRASS7 r_stats_quantile
2018-11-05 22:25:37 +01:00
Nyall Dawson
19ef2f904b Add missing /Factory/ annotation 2018-11-05 22:02:32 +10:00
Nyall Dawson
82baff87d4 Add a __repr__ method to QgsMimeDataUtils::Uri 2018-11-05 22:02:32 +10:00
Alessandro Pasotti
64bd7a7ced Added ~QgsDataSourceSelectDialog destructor 2018-11-05 10:45:40 +01:00
Alessandro Pasotti
f02345bd8b Remove unnecessary project from test data 2018-11-05 10:27:02 +01:00
Alessandro Pasotti
eb02004b60 Store original style as QDomDocument instead of an XML string 2018-11-05 10:27:02 +01:00
Nyall Dawson
bc8574ce5c Small cleanups for QgsDataSourceSelectDialog 2018-11-05 10:27:02 +01:00
Alessandro Pasotti
a4182c1e04 Remove unnecessary project from test data 2018-11-05 10:26:39 +01:00
Alessandro Pasotti
7a259c6ea5 Better handling of invalid relations ...
- do not add them to the manager dialog
- do not add relations to not existent layers (but keep relations to invalid layers)
2018-11-05 10:26:39 +01:00
Alessandro Pasotti
bc424d09c1 Store original style as QDomDocument instead of an XML string 2018-11-05 10:26:39 +01:00
Alessandro Pasotti
8493636f18 Data source select dialog now accepts a model 2018-11-05 10:26:39 +01:00
Alessandro Pasotti
0cd21c91f1 Keep invalid relations and update them when the data source changes
Added a check for layer.isValid in relation.isValid, keep
relations in the manager even if they are not valid and
connect dataSourceChanged with updateRelationStatus
2018-11-05 10:24:35 +01:00
Alessandro Pasotti
2bd90da9c1 Added a validOnly flag to mapLayers to filter for valid layers only 2018-11-05 10:24:35 +01:00
Alessandro Pasotti
3fe7848c16 Noted in the method documentation that dataProvider() may return null 2018-11-05 10:24:35 +01:00
Alessandro Pasotti
f856b4c8e3 Renamed originalXmlProperties methods and variables 2018-11-05 10:24:35 +01:00
Alessandro Pasotti
326640d881 Implement setDataSource for rasters 2018-11-05 10:24:35 +01:00
Alessandro Pasotti
c32d542be5 Move setDataSource to QgsMapLayer
also setter and getter for providerType
2018-11-05 10:24:35 +01:00
Alessandro Pasotti
497a7da9de Added API methods to retrieve only valid maplayers
... and to count them

Tests updated accordingly, note that from now on
the assumption that a layer store or a layer project
contains only valid layers will not be true anymore.

To be honest it has never been true, because a
layer can become invalid at any time during
its life cycle, so better never assume that a
layer from the store or from the project is vaid.
2018-11-05 10:24:35 +01:00
Alessandro Pasotti
1b041f4f4f Add storeInvalidLayersProperties to store invalid layers
This can be used to restore initial layer status or to
apply styles and other layer properties if the data
source is changed.

The idea is that the user can fix bad layers at any time,
and by setting a new datasource she probably wants
to keep the original layer properties.
2018-11-05 10:24:35 +01:00
Alessandro Pasotti
bc4a1efac4 The store can now add invalid maplayers 2018-11-05 10:24:35 +01:00
Alessandro Pasotti
ceb33f0156
Merge pull request #8407 from elpaso/bugfix-20338-qgsfeatureselectiondlg-sizing
Make sure QgsFeatureSelectionDlg does not outgrow the window
2018-11-05 09:55:33 +01:00
Nyall Dawson
bac5fbbe0d Small cleanups for QgsDataSourceSelectDialog 2018-11-05 16:51:31 +10:00
Nyall Dawson
ea9d5bb363 Fix mangled fonts in script editors
Don't override default font letter spacing or stretch -- it's not
safe to do because the results are very dependent on the individual
font's appearance and rendering hints.

Fixes #20349
2018-11-05 10:35:18 +10:00
Nyall Dawson
7be2925649 Remove QgsGeometry bool operator
This is too dangerous -- it gets silently casted to numeric values
instead of throwing compilation errors
2018-11-05 08:39:10 +10:00
Nyall Dawson
8c5f79575a Fix dox 2018-11-04 21:07:27 +10:00
Nyall Dawson
a890622996 Remove executeExport* methods from QgsWindowManagerInterface
No longer required, and of limited value anyway
2018-11-04 21:07:27 +10:00
Nyall Dawson
fa3a08e397 Add method to handle browser item double clicks to QgsDataItemGuiProvider
And move handling of layer/project file double clicks in browser dock
from gui->app
2018-11-04 21:07:27 +10:00
Nyall Dawson
40443ebb3b [FEATURE][browser] Add "New" menu to context menu on directories
With option to create a new geopackage or shapefile in the
clicked directory
2018-11-04 21:07:27 +10:00
Nyall Dawson
10d7f6e54c Spelling 2018-11-04 21:07:27 +10:00
Nyall Dawson
c085d0edd5 Move favorites action handling from gui to app 2018-11-04 21:07:27 +10:00
Nyall Dawson
48e7e204c0 Move some browser directory action handling from core/gui to app 2018-11-04 21:07:27 +10:00
Nyall Dawson
310d4f94fa Link the application browser dock to the application message bar 2018-11-04 21:07:27 +10:00
Nyall Dawson
153f1b1138 Also pass complete list of all selected items to createContextMenu,
so that actions can operate on ALL selected items

E.g. delete multiple layers from a geopackage at once
2018-11-04 21:07:27 +10:00
Nyall Dawson
c98d13d2f4 Add method to populate browser context menu to QgsDataItemGuiProvider 2018-11-04 21:07:27 +10:00
Nyall Dawson
6ec7f02e83 Add a QgsDataItemGuiProvider interface and registry for providers
These providers will be used to control how the browser data items
behave within GUI, and to allow separation of GUI related
properties of browser items from the core code.

A new registry QgsDataItemGuiProviderRegistry has been created
(modeled off QgsDataItemProviderRegistry), with an application
wide instance available from QgsGui::instance()->dataItemGuiProviderRegistry()
2018-11-04 21:07:27 +10:00
Nyall Dawson
928779bf51 Sipify 2018-11-04 19:22:09 +10:00
Alessandro Pasotti
c962573c82 Make sure QgsFeatureSelectionDlg does not outgrow the window
Fixes #20338 - Can not scroll through attribute list in dialog window when linking existing child features
2018-11-03 15:27:38 +01:00
Alessandro Pasotti
eca00ba3c9
Merge pull request #8396 from elpaso/datasource-select-dialog
QgsDataSourceSelectDialog: a simple browser-based reusable data sourc…
2018-11-02 08:47:33 +01:00
Alessandro Pasotti
105455ca2c Layout fixes 2018-11-01 17:29:51 +01:00
Nyall Dawson
4dd3e211e2 Unit tests for reomve duplicates by attribute 2018-11-01 21:47:28 +10:00
Alessandro Pasotti
083208c1eb QgsDataSourceSelectDialog: a simple browser-based reusable data source select dialog 2018-11-01 12:02:38 +01:00
Nyall Dawson
850eae1606 [browser] Avoid expanding/collapsing nodes if the double click
was specifically handled by an item itself
2018-11-01 20:41:08 +10:00
Nyall Dawson
5c5f2ed7e3 Add method to get QgsLayerItem::LayerType from a map layer 2018-11-01 20:41:08 +10:00