Instead, record errors and report them all at the end of the batch
process. If we abort the remaining batch steps when encountering any
error, this blocks a useful use of the batch mode and prevents users
from running a batch process over a large number of input files, some
of which may be invalid.
This allows us a chance to correctly call start/stopRender on all
symbols which are used as part of the labels and ensure they are
nicely prepared and cleaned up.
Also adapt labeling engine to add calls to startRender/stopRender where
appropriate.
This causes the project to be read, but no data providers created for
layers (i.e. the same result as loading a project in the app and
choosing to leave bad layers in the project).
It's intended for occasions when you want to efficiently access properties
of a project without the (often very expensive) cost of actually
loading layers. E.g. to just read project metadata, parse the
layer tree structure, extract print layouts or renderer properties, etc.
* Add measurement tool bar.
* Add class for measure line.
* Get coordinate of clicked point.
* Add clicked point to string line.
* Store clicekd points to layer.
* Try to render the measurement line.
* Render the measurement line (with some problems).
* Store points in vector.
* Make identify and measure tool exlusive to each other.
* Add measurement dialog.
* Fix only one action must active.
* Some code suggestion from Martin.
* Revert code to show the line.
* Show segment length and the total.
* Implement close dialog means restart 3d measurement.
* Add new button.
* Add unit combo box.
* Fix shadowing private member of class.
* Add slot to combo box unit changes.
* Hide ellipsoid and cartesian radio button.
* Add measure line for QgsPoint.
* Add unit changes feature.
* Add help (pointed to 2D measurement tool).
* Add finish measurement using right click.
* Remove keypress event, it does not make sense.
* Add remove-last-point with middle button.
* Add crsChanged event.
* Remove confusing tooltip.
* Add pan (camera control) action tool for clear state of 3d map tool.
* Change 3D identify tool cursor.
* Fix distance 2D to 3D.
* Remove unclear method.
* Add unit test for measureLine3D.
* Add 3D measurement setting.
* Add header.
* Make extra 3D renderers refresh the scene when they are updated
+ update the 3D renderer every time the measurement line layer is modified
* Set Altitude clamping to absolute.
* Remove options for 3D measurement line.
* Remove help button in 3D measurement dialog.
* Merge duplicate code for handle clicked position.
* Use color for 3d measure line from 2d one.
* Remove unneeded reimplementation method.
* Remove 2D canvas reference.
* Unify update measurement layer.
Use local variable for feature and line
* Create measurement layer once.
* Use data provider to change the geometry.
* Add length3D for QgsLineString.
* Simplify distance calculation and presentation. Remove QgsDistanceArea measurement.
* Descaled z value based on the terrain vertical scale.
* Remove line when tool is deactivated.
* Enable changing the line color from setting, but after re-activation.
* Update color of measurement line after saving option.
* Remove debug message.
* Remove 3D length calculation from distancearea.
* Handle 2D case for length3D, more unit test, and docstring.
* Fix typos.
* Addressing Martin's and Nyall's review.
* Remove setMeasurement to avoid confussion.
to have a file filter string defined
Previously only an extension was settable, which prevented use when
multiple extension types are possible. A file filter string allows
for flexible file selection instead.
Many scopes/remark cross reference these, so by showing them in the
table of available operations we give users more clues how to pick
the correct one.
Adds:
- __len__ : returns number of symbol layers in symbol
- [ ] getter: returns a specific symbol layer, also allows negative indices to retrieve from end of symbol
- del [ ]: removes a specific symbol layer, also allows negative indices
- raise IndexError when an invalid symbol layer is requested
- allow iteration over symbol layers using
for layer in symbol:
print(layer.color())
Adds a new visitor pattern API for creation of visitors which visit
all the style entities (symbols, color ramps, text formats, and
label styles) associated with different objects. Can be used on a
renderer, map layer, or project wide level.
E.g. on a project wide level, allows collection of ALL the style
symbols/color ramps/text settings inside a project, including those
in layouts or annotations!
- Show area of use information, which gives users much more context
and clues for selecting the right transform from the list
- Fix missing scope and remarks for single operations