461 Commits

Author SHA1 Message Date
Nyall Dawson
48d43d37ed
Merge pull request #5497 from nyalldawson/svg_crash
Fix crashes and issues with SVG rendering
2017-11-01 05:21:37 +11:00
Nyall Dawson
05ad0bc04a Update API break dox 2017-10-31 16:01:33 +10:00
Nyall Dawson
b07f6757a5 Cleanup QgsSvgCache API
- Remove QgsSvgCacheEntry from public API (is an internal detail only)
- Modernize code
- Make protected QgsSvgCache members private, since this class is not
designed to be subclassed
2017-10-31 10:43:44 +10:00
Matthias Kuhn
82e6d1219f
Rename from[GeometryType] to from[GeometryType]XY
- QgsGeometry::fromPoint() was renamed to fromPointXY()
- QgsGeometry::fromMultiPoint() was renamed to fromMultiPointXY()
- QgsGeometry::fromMultiPolyline() was renamed to fromMultiPolylineXY()
- QgsGeometry::fromPolygon() was renamed to fromPolygonXY()
- QgsGeometry::fromMultiPolygon() was renamed to fromMultiPolygonXY()
2017-10-30 09:14:06 +01:00
Matthias Kuhn
ca74e391cd
Rename QgsGeometry.addPoints with XY / V2-less versions 2017-10-30 09:14:05 +01:00
Matthias Kuhn
b4e0ebe4a8
Document API breaks 2017-10-30 09:14:05 +01:00
Matthias Kuhn
28f2722650 QgsTransaction.create expects layers, not ids 2017-10-29 13:31:17 +01:00
Alessandro Pasotti
d64529f4ce [api][auth] Removed get prefix from all getters in auth manager 2017-10-27 14:27:29 +02:00
Nyall Dawson
c70a47e249 Update API break docs 2017-10-26 07:06:34 +10:00
Nyall Dawson
46a6f25d6f Merge pull request #5418 from nyalldawson/from_polyline
Rename QgsGeometry::fromPolyline as QgsGeometry::fromPolylineXY
2017-10-24 08:21:30 +11:00
Nyall Dawson
2e8e72d02d Optimise determination of adjacent vertices and move to QgsAbstractGeometry
Previously the method in QgsGeometryUtils was relying on
QgsAbstractGeometry::coordinateSequence, which is an absolute
performance killer.

Instead move to optimised methods in the various abstract
geometry subclasses which rely only on trivial calculations.
2017-10-23 08:03:22 +11:00
Nyall Dawson
c4f3832af2 Rename QgsGeometry::fromPolyline as QgsGeometry::fromPolylineXY
and add new QgsGeometry::fromPolyline which uses QgsPoint

We want to encourage people not to use the QgsPointXY method, as it drops
Z/M values. So it's moved across to a different name to make way
for a new QgsGeometry::fromPolyline which uses a QgsPoint list
instead of QgsPointXY, thus keeping Z/M values intact.

Similarly, QgsPolyline now is a list of QgsPoint (keeping z/m values)
and the old 2d QgsPolyline type was renamed to QgsPolylineXY.

Making the QgsPoint method the "preferred" method and making linestrings
just as easy to create from z/m dimensioned points as 2d points is
important to push people to write code which does not discard
these important dimensions.

As a bonus, the QgsPoint methods are more efficient anyway, since
they don't require creation of a temporary list.
2017-10-22 18:10:14 +10:00
Nyall Dawson
406425d68a Rename method, docs and api breaks documentation 2017-10-19 07:29:48 +10:00
Nyall Dawson
947b0cc49e Safer memory management in geos
Also speed up avoid intersections by removing unnecessary geometry
cloning
2017-10-13 19:55:57 +10:00
Nyall Dawson
c3fdaa950d Some safer memory management for geos 2017-10-13 19:54:00 +10:00
Martin Dobias
878dfddd3b Refactor CAD editing alignment logic to new QgsCadUtils class 2017-10-03 17:01:54 +02:00
Matthias Kuhn
0fbdb04594
API break documentation 2017-09-29 10:58:20 +02:00
Nyall Dawson
d704163884 Rename QgsRectangle::buffer to buffered and mark as const 2017-09-25 17:20:36 +10:00
Nyall Dawson
7c53dc1574 Correctly parent browser item actions to transient menu instance
Currently most browser item actions are parented to the item
itself, which is often long-lived (e.g. connection items
which last for the duration of the qgis session). This
commit adds an explicit parent widget parameter to
QgsDataItem::actions to ensure that the newly created actions
are correctly parented to the menu, and deleted after the
menu is removed.
2017-09-22 09:32:54 +10:00
Matthias Kuhn
37e522e77e
Document API breaks 2017-09-18 18:34:22 +02:00
Alessandro Pasotti
850fed557f Const getter and api break docs 2017-09-12 15:12:37 +02:00
Martin Dobias
f938b60f12 Handle mouse events of adv.digitizing map tools in the map tool base class 2017-09-10 16:34:13 +02:00
Martin Dobias
ae713b4c81 Move snapSegment() from map mouse event to private area of CAD dock 2017-09-10 16:34:13 +02:00
Martin Dobias
22ad67295b More advanced digitizing dock widget cleanups
- CaptureMode enum has been moved back to QgsMapToolCapture where it belongs
- map tools that need clearing of CAD points do so explicitly when needed
2017-09-10 16:34:13 +02:00
Martin Dobias
a2b2567ca3 Better control of CAD dock widget operation from map tools 2017-09-10 16:33:02 +02:00
Nyall Dawson
ea09aa92a3 Remove QgsTransectSample
Because:
- it's unused in master, and is more code to maintain
just for possible use by plugins
- it's unmaintained, and has had no work done (beside compilation
fixes) in the recent past
- there's no unit tests or detailed documentation to show
how the class should be used
2017-09-04 09:05:38 +10:00
Nyall Dawson
9ca57bd62c Use a QgsFeatureSink instead of path to shapefile in QgsTinInterpolator
Instead of just forcing writing the triangulation to a shapefile (boo!)
change the parameter to use a QgsFeatureSink, so that anything
which implements the QgsFeatureSink interface can be used for
storing the triangulation.
2017-08-29 21:46:35 +10:00
Nyall Dawson
eb7ad7aebe Swap final uses of QProgressDialog in analysis lib to QgsFeedback 2017-08-29 21:46:35 +10:00
Nyall Dawson
04fec09c3e Remove interpolation internal classes from stable API
These classes still need a lot of cleanup (e.g. use of proper
3d geometry classes instead of their own 3d line classes, etc)
and we don't want them locked into the 3.0 API.

Better to remove them from the API and reintroduce them after
they have been cleaned up (in >3.0). They are mostly implementation
details anyway, and unlikely to be used outside of the high
level interpolation classes.
2017-08-29 21:46:35 +10:00
Nyall Dawson
090bb9bba4 Use QgsFeedback instead of QProgressDialog in tin interpolator 2017-08-19 05:05:40 +10:00
Nyall Dawson
356588abf0 Use QgsFeedback in QgsGridFileWriter instead of QProgressDialog 2017-08-19 04:08:04 +10:00
Nyall Dawson
be48f17e2c Use a QgsFeedback object in QgsRelief instead of QProgressDialog 2017-08-19 00:09:12 +10:00
Nyall Dawson
5abbab1a11 Merge pull request #4993 from nyalldawson/remove_analyzer
Remove QgsGeometryAnalyzer, QgsOverlayAnalyzer, QgsPointSample
2017-08-17 15:54:43 +10:00
Martin Dobias
0be0a4e30c Always use snapping configuration from the project in adv.digitizing dock
It was slightly confusing to have another override for snapping while it is possible
to configure "no snapping" or "all layers" snapping mode in project anyway.
And with the nice snapping toolbar it can be also done very quickly.
2017-08-16 14:37:19 +02:00
Matthias Kuhn
7768f06776 Document api breaks 2017-08-13 20:19:32 +02:00
Harrissou Sant-anna
87c7ec3714 Typo fixes 2017-08-11 13:17:15 +02:00
Nyall Dawson
0227bdc376 Remove QgsGeometryAnalyzer, QgsOverlayAnalyzer, QgsPointSample
These classes are unused in the master QGIS code, and are
unmaintained and with no unit tests or other QA, and
have inflexible API (e.g. always requiring writing outputs
to shapefiles)

They all have equivalent algorithms available via Processing
(where the algorithms are unit tested and maintained). We should
be pushing all QGIS api users to use the Processing algorithms
instead.
2017-08-11 04:48:11 +10:00
Nyall Dawson
b1a6c790cf Remove QgsFileDropEdit widget and integrate functionality into QgsFileWidget
It makes no sense to have two classes covering this use case, with
partial functionality in each. Smash the two together so we can
safely use QgsFileWidget for all use cases in future.
2017-08-06 23:26:46 +10:00
Matthias Kuhn
4705c97511
Fix typo in api_break.dox 2017-07-28 12:48:07 +02:00
Nyall Dawson
ecaee1a3f2 QgsGeometry::vertexAt now returns QgsPoint, not QgsPointXY
Since it's easy to convert from a QgsPoint to a QgsPointXY,
but impossible to recover the Z/M values lost by only
returning a QgsPointXY.
2017-07-28 11:48:50 +10:00
Juergen E. Fischer
bae6d56388 consider datum transformation when pasting features (fixes #16846) 2017-07-17 22:22:49 +02:00
Alexander Bruy
f3d42a2cda [network analysis] use QgsFeedback for progress reporting and
cancelation
2017-07-16 14:36:04 +03:00
Alexander Bruy
126a27425a [network analysis] use QgsFeatureSource instead of QgsVectorLayer in
QgsVectorLayerDirector
2017-07-16 14:31:52 +03:00
Nyall Dawson
35e16b2f31 Add method for specifying variable description when adding to contexts
And use this description in expression builders when it's set.
2017-07-07 11:35:31 +10:00
Denis Rouzaud
5b8e2c2f27 remove QgsVectorLayer::hasGeometryType in favor of QgsMapLayer::isSpatial 2017-07-05 10:18:32 +02:00
Nyall Dawson
144d733b12 Use a QgsFeedback instead of QProgressBar for QgsNineCellFilter
Gives progress reports and allows cancelation of processing
aspect algorithm
2017-06-29 08:03:57 +10:00
Mathieu Pellerin
a6b14a0b40 [processing] restore zonal statistics (qgis) alg (#4784) 2017-06-27 18:09:44 +07:00
Nyall Dawson
f196246852 Merge pull request #4734 from nyalldawson/addfeatures
Add a flag argument to QgsFeatureSink::addFeatures, support fast feature insert
2017-06-23 05:59:21 +10:00
Martin Dobias
7cd517c6ba [FEATURE] Legend for markers with data-defined size
(Merge pull request #4752 from wonder-sk/legend-data-defined-size)
2017-06-22 15:29:10 +02:00
Martin Dobias
e3270edb7a Read/write also legend symbol in DDS legend, update DDS legend dialog 2017-06-19 15:55:46 +02:00