15 Commits

Author SHA1 Message Date
Sandro Mani
1642eb1601 [Geometry checker] Adapt for API changes 2017-10-23 17:25:06 +02:00
Sandro Mani
b52b2c51e4 [Geometry checker] Introduce QgsGeometryCheckerUtils::LayerFeatures 2017-10-23 17:25:06 +02:00
Sandro Mani
2a92bfb2c9 [Geometry checker] Introduce QgsGeometryCheckerContext 2017-10-23 17:25:06 +02:00
Sandro Mani
31cc65df49 [Geometry checker] Initial multi-layer support 2017-10-23 17:25:06 +02:00
Denis Rouzaud
2e7de50b42 run astyle on src/* 2017-03-03 09:09:37 +01:00
Nyall Dawson
231f6af0e1 Don't return const references to implicitly shared Qt classes
Instead return the inexpensive copies. Should provide extra safety
against issues like #14822

(refs #14822)
2017-01-14 15:53:45 +10:00
Juergen E. Fischer
0688621046 scripts/replacev2.sh run 2016-08-10 12:08:52 +02:00
Matthias Kuhn
bb79d13e82 Remove deprecated Qgis::WKBType and API cleanup (#3325)
* Remove deprecated Qgis::WKBType and API cleanup

Renames QgsWKBTypes to QgsWkbTypes

Replaces usage of the enums:

* Qgis::WKBType with QgsWkbTypes::Type
* Qgis::GeometryType with QgsWkbTypes::GeometryType

Their values should be forward compatible (a fact that was already
explited up to now by casting between the types)

Renames some SSLxxx to SslXxx and URIxxx to UriXxx

* Fix build warnings and simplify type handling

* Add a fixer to rewrite imports

* The forgotten rebase conflictThe forgotten rebase conflicts

* QgsDataSourcURI > QgsDataSourceUri

* QgsWKBTypes > QgsWkbTypes

* Qgis.WKBGeom > QgsWkbTypes.Geom

* Further python fixes

* Guess what... Qgis::wkbDimensions != QgsWkbTypes::wkbDimensions

* Fix tests

* Python 3 updates

* [travis] pull request caching cannot be disabled

so at least use it in r/w mode

* Fix python3 print in plugins
2016-08-04 09:10:08 +02:00
Nyall Dawson
bd7d913379 Refine QgsFeature geometry getters/setters
All pointer based methods have been removed.

Now we have only:

  void setGeometry( const QgsGeometry& geom )

and

  QgsGeometry geometry() const

Benefits include avoiding a whole lot of tricky pointer lifetime
issues, potential memory leaks, and finally closing #777, which
has survived for over 9 years!...

Impacts on PyQGIS code:
- no more need for the messy
  g = QgsGeometry( feature.geometry() )
  workaround, just use g = feature.geometry() instead
- IMPORTANT: you can no longer test whether a feature has geometry
 using `if f.geometry():`, since QgsFeature::geometry() will
 *always* return an object. Instead, use
 `if not f.geometry().isEmpty():`, or preferably the new method
 `if not f.hasGeometry():`

Fix #777
2016-08-01 16:25:46 +10:00
Nyall Dawson
aceddae65a QgsFeature cleanup, part 1
Deprecate some QgsFeature methods which take or return pointers,
update other classes as required
2016-07-31 21:23:07 +10:00
Sandro Mani
54e424faf7 [Geometry checker] QgsGeomUtils -> QgsGeometryCheckerUtils 2016-07-14 16:41:35 +02:00
Juergen E. Fischer
6e66eef1ef add missing copyright headers 2016-06-03 10:33:09 +02:00
Nyall Dawson
566dd4bd43 Always pass QgsFeatureId by value, not reference
Since it's just a int64, it's faster to pass by value
2015-12-30 22:51:32 +11:00
Nyall Dawson
9319176a7c More clazy recommended optimisations:
- Use constFind instead of find where applicable
- Use midRef instead of mid
- const ref when using Q_FOREACH
- foreach->Q_FOREACH
2015-10-19 17:36:02 +11:00
Sandro Mani
e9e638f6f4 Geometry Checker and Geometry Snapper plugins 2015-09-21 10:03:24 +02:00