201 Commits

Author SHA1 Message Date
Nyall Dawson
3c71498c3e Add some missing /TransferThis/ to sip bindings for QObject parents 2015-02-18 17:35:47 +11:00
Juergen E. Fischer
abd4a04399 sip update 2015-02-03 02:21:52 +01:00
Juergen E. Fischer
cce2eb50cb indentation update 2015-01-22 20:56:02 +01:00
Nyall Dawson
6a080bada1 Add some missing type conversions to python bindings 2015-01-21 11:04:38 +11:00
Martin Dobias
5266fd97ee [FEATURE] Composer map - optionally store layer styles
There is a new check box that allows the user to tell whether a map should
keep the layer styles (it will store the state when the check box is checked).
The stored layer styles keep a snapshot of each layer's configuration
instead of just keeping name of the style.

This solves issues with styles and visibility presets in composer which were
not completely compatible.

This code has been funded by Tuscany Region (Italy) - SITA (CIG: 6002233F59)
and commissioned to Gis3W s.a.s.
2015-01-19 15:18:55 +07:00
Martin Dobias
4dead724f5 Allow multiple styles of layers in composer maps
When layer set is locked in composer map, also the styles associated with layers are kept.
As a result, a composition can contain maps of the same layer just with different styles.

Map settings and map renderer jobs have been improved to support temporary override of layer's style.
It is possible to pass to map settings which layers should have overridden style and map jobs
will temporarily replace the style (just for the rendering).
2015-01-09 21:48:15 +07:00
Nyall Dawson
949185179e [composer] Fix refresh HTML item always using cached copy (fix #11747) 2014-11-27 13:15:37 +11:00
Juergen E. Fischer
9ceb5ceab6 sip sync 2014-11-21 01:17:21 +01:00
Juergen E. Fischer
a57066a48d * fix cppcheck warnings
* some sip updates
* [API] fix spelling QgsMultiRenderChecker::drawBackround
* [API] fix spelling QgsSymbolLayerV2Utils::drawStippledBackround
* [API] fix spelling QgsMapSettings::layerTransfrom
2014-11-20 15:02:35 +01:00
Juergen E. Fischer
d4f64d9bde indentation update and typo fixes 2014-11-13 23:13:13 +01:00
Nyall Dawson
8b29097f36 [FEATURE][composer] Vertical descending direction for annotations
This change adds a new descending vertical direction mode for
map grid annotations. Previously only ascending text was
supported for vertical annotations.
2014-11-07 10:31:59 +11:00
Nyall Dawson
ac9220d35b [FEATURE][composer] Finer control of frame and annotation display
Previously, for rotated maps or reprojected grids, the composer would
draw all coordinates for every map side. This resulted in a mix of
latitude/y and longitude/x coordinates showing on a side. This change
allows users to control whether they want all coordinates, latitude
only or longitude only for each map frame side. Similar options have
also been added for controlling how a map grid frame is divided.

In related news... the composer map dialog is now the ugliest,
most cluttered and un-user friendly dialog in all of QGIS. I'd
love suggestions/mockups from the UX team for ways this could
be improved.
2014-11-04 13:17:44 +11:00
Nyall Dawson
7b537f640f [FEATURE][composer] Add view menu option to hide bounding boxes
This allows users to hide the bounding boxes for selected items
within a composition. It's a handy feature for allowing interaction
with items while previewing exactly how they will look when the
composition is exported, without large boxes blocking the view.
2014-11-01 06:38:51 +11:00
Nyall Dawson
a57080cc71 [FEATURE][composer] Allow negative margins for label items
If negative margins are set for a label, the label contents will
begin outside the bounds of the label. This is desirable for
aligning label items with other items while allowing for optical
margin alignment for the label type.
2014-11-01 06:38:51 +11:00
Nyall Dawson
a2a094bd02 [FEATURE][composer] Allow control of hoz and vert margins for labels
Previously only a single margin setting would apply to both
horizontal and vertical margins. This change allows users to specify
different horizontal and vertical margins.
2014-11-01 06:38:51 +11:00
Nyall Dawson
5b9210b91d [composer] Respect reference point when resizing scalebar and legend
Previously, the reference point (and data defined position/size) were
ignored when scalebars or legends resized themselves.

Fix #11321, #11380
2014-10-21 23:03:55 +11:00
Juergen E. Fischer
82b6e0342a cosmetic cleanups, typo fixes, formatting 2014-10-21 01:33:20 +02:00
Nyall Dawson
0f4bd4e0fc [composer] Move ungrouping logic from composer view to composition
As per previous commit, this is useful for plugin authors. It also
fixes a potential bad crash (itemRemoved emitted for group item after
the group item was already deleted) and adds unit tests.
2014-10-19 14:45:19 +11:00
Nyall Dawson
993f0dcd3d [composer] Move code for creating groups to QgsComposition
Previously this code was located in QgsComposerView. Moving it to
QgsComposition simplifies grouping items for plugins. Also start
a new unit test for QgsComposerItemGroup.
2014-10-19 14:45:19 +11:00
Nyall Dawson
71fbe9c9ce [composer] Fixes to composer item sip bindings
- Added some missing /TransferThis/ arguments
- Ensure that correct item type is returned for all item types
2014-10-19 14:45:18 +11:00
Nyall Dawson
4ea5c80948 [composer] Avoid crash when using redo on multiframe (fix #11351)
Since multiframe changes can remove and create new frame items,
it's not safe to directly manipulate frame items in
QgsComposerItemCommand. Now, commands which apply to a frame always
fetch a reference to the correct frame item directly from the
parent multiframe. Also added unit tests for this crash.
2014-10-15 20:17:10 +11:00
Nyall Dawson
1cb22c084d [composer] Seperate draw empty rows option from empty table behaviour
Now "draw empty rows" is a seperate checkbox (fix #11392)
2014-10-14 21:25:12 +11:00
Nyall Dawson
a5b5bd4c45 [composer] Fix new frames not inheriting outline color, clean up item api a bit 2014-10-09 19:56:59 +11:00
Nyall Dawson
6ec751f634 [composer] Cache transformed grid lines and intersections to slightly
speed up grid drawing
2014-10-03 23:11:47 +10:00
Nyall Dawson
10d75c0066 [composer] Fix display name for attribute table frames 2014-10-03 09:15:07 +10:00
Nyall Dawson
456e971372 [composer] Fix table background extending beyond table rows (fix #11272).
It was necessary to add a new 'table background' color option to prevent
regressions when loading old compositions, since users may desire
the old behaviour where the entire frame is filled.
2014-10-03 09:08:23 +10:00
Nyall Dawson
fb7415c3ff [composer] Refresh refetches atlas feature from provider, more removal of duplicate map redraws 2014-09-30 20:37:16 +10:00
Nyall Dawson
8c502c19fc [composer] Fix pages are added but never removed with multiframe resizing 2014-09-29 22:19:08 +10:00
Nyall Dawson
8725c2df4b [composer] Fix ctrl modifier not applying to wheel events when in move item
content mode, add missing undo merge command for item zoom (refs #7974)
2014-09-29 19:21:01 +10:00
Nyall Dawson
a9c97ae153 [composer] Add a checkbox to prevent drawing border and background for empty frame items 2014-09-26 17:45:07 +10:00
Nyall Dawson
ce2142585a [FEATURE][composer] Add checkbox and data defined button for controlling
whether an item is excluded from composer exports/printouts.
2014-09-26 16:03:31 +10:00
Nyall Dawson
89a7573faf [FEATURE][composer] Allow data defined control of atlas margin for maps 2014-09-26 09:05:52 +10:00
Nyall Dawson
272b79b6ca [FEATURE][composer] Add checkbox to frame items for preventing export
of page containing frame when frame is empty. This change allows
users to create multiple pages containing extra frames for multiframe
items (currently HTML and Attribute Table items), which are then only
printed/exported if required. Sponsored by the City of Uster, Switzerland.
2014-09-26 01:08:07 +10:00
Martin Dobias
e37a5ad8df [FEATURE] Legend filtering based on map content (in main window, composer, WMS)
There is new "filter" button in layers panel that toggles this functionality
and in composer legend widget.

Related feature is that layer tree now shows symbols in map units with correct size
(even when filtering is not enabled) so as the map view changes the legend node icons
are updated too (if they use map units).

GetLegendGraphics in WMS server
-------------------------------

This is an extension of standard GetLegendGraphics request according to MapServer RFC 101.
See the document for more details: http://mapserver.org/development/rfc/ms-rfc-101.html

In summary, clients need to add BBOX and CRS/SRS parameters to get appropriate legend based on the given map view.
Parameters WIDTH and HEIGHT are also taken into account as they specify map view image size for correct calculation
of size of legend symbols (if they are based on map units).

--

This software has been commissioned by Tuscany Region (Italy),
co-funded by the European Commission and developed under the project LIFE12 ENV/IT/001054 LIFE + IMAGINE.
The software has been realized by Gis3W s.a.s.

Questo software è stato commissionato da Regione Toscana (Italia),
cofinanziato dalla Commissione Europea e sviluppato nell'ambito del progetto LIFE12 ENV/IT/001054 LIFE + IMAGINE.
Il software è stato realizzato da Gis3W s.a.s.
2014-09-25 12:56:37 +02:00
Nyall Dawson
34f00d106f [FEATURE][composer] Add checkbox for showing unique records only in composer
attribute tables. (Sponsored by my OCD)
2014-09-23 19:28:40 +10:00
Nyall Dawson
30ada2833a [FEATURE][composer] Add a checkbox to filter attribute tables to
features which intersect the current atlas feature. Sponsored by City
of Uster, Switzerland.
2014-09-22 22:59:39 +10:00
Nyall Dawson
14690d0716 [FEATURE][composer] Add choice of display style for empty tables. Options
include hiding the entire table, showing empty cells, or displaying a
set message in the table body. Sponsored by City of Uster, Switzerland.
2014-09-22 22:59:30 +10:00
Nyall Dawson
c3ec4b9eb0 [FEATURE][composer] Add option for showing child features from a relation
for attribute tables in the composer. If selected, the attribute table
will show all related features to the current atlas feature within
the table body. Sponsored by City of Uster, Switzerland.
2014-09-22 22:59:20 +10:00
Nyall Dawson
f58768c550 [FEATURE][composer] Option for current atlas feature as source for
attribute tables. Sponsored by City of Uster, Switzerland.
2014-09-22 22:59:07 +10:00
Nyall Dawson
d85f6251f2 Merge pull request #1540 from manisandro/composer_html_fixes
Recompute webpage viewport dimensions when resizing html frames
2014-09-22 20:20:52 +10:00
Nyall Dawson
b893cb241c [FEATURE][composer] Allow manual control of column widths for attribute table items. 2014-09-22 19:13:47 +10:00
Nyall Dawson
7904c100cf [composer] Add some missing Transfer/TransferThis methods to sip bindings 2014-09-21 21:05:29 +10:00
Nyall Dawson
ccad38bf33 [composer] Clean up QgsComposerMap api, add docs and missing sip bindings for composer overviews 2014-09-21 00:47:57 +10:00
Nyall Dawson
05524d7017 [composer] Remove gui controls for adding deprecated table item (sponsored
by City of Uster, Switzerland)
2014-09-17 22:59:01 +10:00
Nyall Dawson
9fd73901a6 [composer] API docs and python bindings for QgsComposerTableV2 (sponsored
by City of Uster, Switzerland)
2014-09-17 22:58:49 +10:00
Nyall Dawson
37dbbd55a8 [composer] Begin work on calculating rows for QgsComposerTableV2
(sponsored by City of Uster, Switzerland)
2014-09-17 22:57:48 +10:00
Nyall Dawson
d1e26f24e5 [composer] Option for fixed frame sizes set by multi frame (sponsored
by City of Uster, Switzerland)
2014-09-17 22:57:48 +10:00
Ross Gammon
79b3a8f889 Description: Fix qreal VS double issues.
This patch tries to fix qreal VS double issues for ARM

 There are two seperate issues, the first is trivial just a typecast on
 a const.

 The second is however less-trivial and needs to be checked
 before merging. sip doesn't seem to like the type
 QVector<double> on platforms where qreal is float but changing
 the type to qreal may have knock-on impacts on the native code.

 QGIS Issue: http://hub.qgis.org/issues/11148
 Debian Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760535

Author: Peter Michael Green <plugwash@debian.org>
2014-09-05 20:51:13 +02:00
Nyall Dawson
1b773165f2 [composer] Update sip bindings, add missing sip bindings for
QgsComposerMapGrid (sponsored by NIWA, New Zealand)
2014-09-03 21:22:29 +10:00
Nyall Dawson
a64e7b134c More const correctness, fix crash with atlas 2014-09-02 19:31:43 +10:00