2221 Commits

Author SHA1 Message Date
Alessandro Pasotti
680b9f8ea0 [layout] Convert scalebar and legent from 2.x 2018-01-09 08:08:26 +01:00
Alessandro Pasotti
cd6e8204ed [layout] Import some more items: map, poly* and arrow 2018-01-09 08:08:26 +01:00
Alessandro Pasotti
4302910f94 [layout] Converter: fix frame fill in shapes 2018-01-09 08:08:26 +01:00
Alessandro Pasotti
af8a2296dc [layout] Converter: shapes 2018-01-09 08:08:26 +01:00
Alessandro Pasotti
da3636e566 [layout] Converter: initial implementation 2018-01-09 08:08:26 +01:00
Nyall Dawson
2b8143a206 Fix a TODO, restore correct variable handling for layouts 2018-01-08 17:55:37 +10:00
Nyall Dawson
aef9df8d5e Remove a redundant test 2018-01-08 05:51:29 +10:00
Nyall Dawson
f3124f0d82 Fix storing/reading multiframe items (TODO fix undo/redo support) 2018-01-08 05:51:29 +10:00
Nyall Dawson
1b969267fc Fix crash when deleting multiframe item child frames 2018-01-08 05:51:29 +10:00
Nyall Dawson
53b67069cc Standardise some layout api method naming/behavior 2018-01-07 16:07:05 +10:00
Nyall Dawson
852f8249bc Fix build 2018-01-06 17:05:21 +10:00
Nyall Dawson
b691998c68 Port some more tests to layouts, drop composer tests which
have been ported to layouts
2018-01-06 17:05:21 +10:00
Nyall Dawson
421ef88de0
Merge pull request #5966 from nyalldawson/layout_next
[layouts] Atlas and reporting framework
2018-01-05 15:29:28 +10:00
Nyall Dawson
e3daac407b Rename some test methods 2018-01-05 13:19:26 +10:00
Nyall Dawson
6f2c63f3e5 Add a common base class for print layouts and reports, and adapt
QgsLayoutManager to suit
2018-01-05 11:15:04 +10:00
Nyall Dawson
4d2f0deb1a Add a clone method to QgsLayout 2018-01-05 11:15:04 +10:00
Nyall Dawson
5bc543af6a Refactor layout context
Split render context from reporting context
2018-01-05 11:15:04 +10:00
Nyall Dawson
88a839061d Restore more unit tests 2018-01-05 11:15:03 +10:00
Nyall Dawson
ec67ddfc0e Restore more atlas tests 2018-01-05 11:15:03 +10:00
Nyall Dawson
3d03128e4a Restore some more atlas related tests 2018-01-05 11:15:03 +10:00
Nyall Dawson
1b932319a2 Fix some layout expression context handling, restore some tests 2018-01-05 11:15:03 +10:00
Nyall Dawson
69ddc32d0f Restore atlas map handling 2018-01-05 11:15:03 +10:00
Nyall Dawson
3ffdda3e30 Port predefined scale handling to layouts 2018-01-05 11:15:03 +10:00
Nyall Dawson
7c086beb92 Fix some map item todos 2018-01-05 11:15:03 +10:00
Nyall Dawson
49eaebbf40 Remove outdated icon support for item metadata
Now handled in QgsLayoutItem directly
2018-01-05 11:15:03 +10:00
Nyall Dawson
2ef3a5f199 Port current geometry from atlas to layouts 2018-01-05 11:15:03 +10:00
Nyall Dawson
92003c8797 Code shuffle, to make QgsLayoutContext aware of parent QgsLayout 2018-01-05 11:15:03 +10:00
Nyall Dawson
4a7813b953 Restore picture atlas handling 2018-01-05 11:15:03 +10:00
Nyall Dawson
2d43dac0b5 Refine behavior of QgsGeometry equals tests
Before we had two checks - equals() and isGeosEqual() which
performed the exact same check (since equals() called the geos
equality test)

Since the geos equality test is a slow, topological test, which
considers two geometries equal if their component edges overlap,
but disregards ordering of vertices this is not always what we
want. There's also the issue that geos cannot consider m values
when testing the geometries, so two geometries with different
m values would be reported equal.

So, now calling QgsGeometry::equals performs a very fast, strict
equality test where geometries are only equal if the have exactly
the same vertices, type, and order.

And swap most code which was calling the slow geos test to instead
use the fast strict native test.
2018-01-05 09:59:22 +10:00
Nyall Dawson
13aa5211d1 Expand equality operators for QgsAbstractGeometry subclasses 2018-01-05 09:37:27 +10:00
Nyall Dawson
b904731259 Respect transform context in point locator 2018-01-04 15:04:42 +11:00
Nyall Dawson
8f15cdf680 Respect transform contexts when tracing 2018-01-04 15:04:42 +11:00
Matthias Kuhn
6ed078c889
Merge pull request #5946 from DelazJ/nullMinMax
[needs-docs] Update min and max functions
2018-01-03 09:13:46 +01:00
Matthias Kuhn
0c292a0207 Add some more min/max tests 2017-12-27 21:46:11 +01:00
Matthias Kuhn
2e1b9ae0e4 Improve test output 2017-12-27 21:43:20 +01:00
Harrissou Sant-anna
c063710352 Add more tests 2017-12-27 21:43:20 +01:00
Harrissou Sant-anna
49a3af0034 Adding tests to min and max functions 2017-12-27 21:43:20 +01:00
Matthias Kuhn
d01f94f7ef Avoid crash with represent_value exp function
represent_value would crash when it was called via evaluate without any context specified.
2017-12-27 20:40:41 +01:00
Matthias Kuhn
a4141c7f03 Expression tests: change Q_ASSERT to QVERIFY 2017-12-27 19:53:10 +01:00
Matthias Kuhn
e552b9b2de Replace Q_ASSERT with QVERIFY in tests
Q_ASSERT's are only evaluated in debug mode. However, tests should trigger in debug or release mode.
2017-12-27 18:28:49 +01:00
Nyall Dawson
4ff72de62e
Merge pull request #5858 from lbartoletti/segment_intersection
Segment intersection
2017-12-22 21:43:13 +11:00
Nyall Dawson
4643712a1e Fix missing transform contexts for QgsDistanceArea
QgsDistanceArea.setSourceCrs() now requires a QgsTransformContext
argument.
2017-12-20 17:37:46 +10:00
Sandro Santilli
336995dc30
Allow age expression to represent time intervals above 130 years (#5914)
Uses a 64bit integer instead of 32bit one for seconds,
meaning about 584 billions of years rather than 136...

Closes #17681

Includes test
2017-12-19 19:11:13 +01:00
Nyall Dawson
25c3e135b0 Move datum transform structs out to their own header, to avoid
need to include private header file
2017-12-18 21:19:02 +10:00
Nyall Dawson
8cb4893817 Fix creation of QgsCoordinateReferenceSystem from "user:xxxx" strings
Fixes #17254
2017-12-18 09:27:00 +10:00
Nyall Dawson
831732f3a3 Sipify 2017-12-17 14:18:36 +10:00
Nyall Dawson
662ec7a77c Use unique_ptr over raw array 2017-12-17 14:14:48 +10:00
Nyall Dawson
5d6a509636 Restore data defined page orientation 2017-12-17 14:14:48 +10:00
Nyall Dawson
65f4c4acef Port orientation decoding code from composer 2017-12-17 14:14:48 +10:00
Nyall Dawson
f649f1f8a7 [layouts][needs-docs] Add control for whether pages should be
exported, including data defined setting

This replaces the 2.x data-defined "number of pages" setting.
Instead of requiring users to develop an expression to return
the number of pages, instead we allow individual pages to have
a data defined control of whether that page should be included
in the export.

This is more flexible, and works correctly with the mixed page
size model for layouts.
2017-12-17 14:14:48 +10:00