1185 Commits

Author SHA1 Message Date
Larry Shaffer
921a0c75e3 Updates to QgsPasswordLineEdit
- Add public func to set password visibility (instead of exposing slot)
- Add initial password visibility param; default to obfuscated (false)
- Fix bug where initial visibility was true, but show/hide was opposite
- Add generic tool tips to show/hide action
2017-03-17 16:33:40 -06:00
Etienne Trimaille
24e3214eda add checkbox to open sublayers in a group 2017-03-17 17:19:51 +01:00
Nyall Dawson
e5f581405e Allow clicking mouse back button on stacked panel widgets
Only works if click occurs outside of widgets - we probably should
start ignoring clicks which aren't left/middle/right in any
mouse event handlers
2017-03-17 13:57:53 +10:00
Nyall Dawson
738f4415d9 Merge pull request #4253 from nyalldawson/multi_canvas2
[FEATURE] Multi canvas/additional map views
2017-03-15 10:06:39 +10:00
Alexander Bruy
a537c0c052 add SIP bindings 2017-03-14 12:42:30 +02:00
Nyall Dawson
2d37ca9bd9 Add method to interface to close map canvases 2017-03-14 12:20:58 +10:00
Nyall Dawson
ea10cc68f0 Allow annotations to be toggled in additional map views 2017-03-14 09:28:34 +10:00
Nyall Dawson
29d77b0ce1 [FEATURE] Shell functionality for creating new canvases
Allows new "map views" to be created in the main QGIS interface.
These are map canvases, but with limited functionality (ie
no use of map tools beyond pan tool).
2017-03-14 09:28:33 +10:00
Nyall Dawson
5eccaf6020 Project layer order returns all layers in order, not just visible ones
Otherwise map themes with different visible layers cannot be
correctly ordered
2017-03-13 12:52:55 +10:00
Nyall Dawson
9842fcbfc7 Add convience method to block while canvas is rendering
NOT to be called from anything but unit tests and standalone
scripts!!
2017-03-13 10:00:36 +10:00
Nyall Dawson
af532ecdf3 Improved docs for QgsMapCanvas::setTheme, handle setLayers and
setLayerStyleOverrides when canvas is following a map theme
2017-03-13 09:53:09 +10:00
Nyall Dawson
1e6bffe414 Allow setting map canvases to auto follow a map theme 2017-03-13 08:39:37 +10:00
Nyall Dawson
c11ef583ce Generalise editor widget config saving/restoring props from gui 2017-03-10 11:02:16 +01:00
Matthias Kuhn
0170580019 Save QgsProperty related objects via QVariants 2017-03-09 20:54:44 +01:00
Nyall Dawson
2d807f5405 [FEATURE] Interface for plugins to embed pages in the options dialog
Allows plugins to embed their options into the standard options
dialog, instead of implementing their own config dialog and having
to have extra menu items just for those...
2017-03-07 18:12:44 +10:00
Nyall Dawson
6cd97d8bcb Avoid unnecessary reloads layer for attribute table
On behalf of Faunalia, sponsored by ENEL
2017-03-05 12:06:17 +10:00
Juergen E. Fischer
a10c890383 More QgsSettings updates:
* revives WMS
* QgsSettings::clear() added
* section added to QgsSettings::contains()
* type parameter added to sip binding of QgsSettings.value()
* TODO: customization & evis
2017-03-04 02:37:59 +01:00
Nyall Dawson
3c7c65e6d5 Allow a "no projection" option in projection selection widget/dialog
This option allows users to select "no projection", when
there's no suitable projection to select...
2017-03-01 10:14:37 +10:00
Nyall Dawson
79fb8aeb97 Improve documentation for QgsMapCanvas and remove false QGIS 3 TODO 2017-03-01 07:29:35 +10:00
Nyall Dawson
8094cf996b Remove support for setting map units in QgsMapSettings, QgsMapCanvas and QgsDxfExport
In a post-OTF-disabled world these are no longer required. The
map units are dictated by the map units for the destination
CRS.

It's dangerous to separate these two properties as setting
the incorrect map units for a given CRS will result in
incorrect scale calculations.
2017-03-01 07:29:35 +10:00
Nyall Dawson
20c07a58e6 Remove support for disabling OTF reprojection
Because
- OTF reprojection is mature and stable
- Should be no cost when not required - transforms are shortcut
when not required
- Reduces code complexity
- Canvas OTF support was being incorrectly used as a flag for
whether measurements should be made in ellipsoidal mode. Instead
the project's ellipsoid setting should be checked for this.
- Should simplify behavior for new users
2017-03-01 07:29:35 +10:00
Nyall Dawson
b681b7bf3f Flip QgsMapCanvas connects to new style
Also remove unneeded duplicate signal
2017-02-28 11:06:38 +10:00
Nyall Dawson
5312965e61 Rename projection selection widgets and cleanup API
The current names for QgsProjectionSelector and
QgsGenericProjectionSelector are confusing
2017-02-28 09:45:31 +10:00
Martin Dobias
fd616ae94e A bit of const-correctness and new convenience methods for edit tools 2017-02-24 11:27:45 +08:00
Nyall Dawson
47683fca4f [needs-docs] Rename Outline and Border -> Stroke
This change is being driven by:

- need for consistent terminology in the api. Currently there's
a confusing mix of border/outline used
- need for consistent terminology in the gui - we have a mix
of "border"/"outline"/"pen"
- bringing QGIS into line with the standard terminology used
in other graphic editing programs
2017-02-22 19:22:45 +10:00
Nyall Dawson
5c42c7636b [FEATURE] Show a histogram for values behind curve editor
in property assistant

Makes it easier to set suitable curves. Populated in the
background for a nice reponsive widget!
2017-02-22 11:16:54 +10:00
Nyall Dawson
cc9b5a47b7 [FEATURE] Interactive curve editing for property overrides
This adds a new interactive "curve" to the assistant widgets.
It allows you to fine tune exactly how input values get
mapped to output sizes/colors/etc.

Think GIMP or Photoshop curves, but for your data...
2017-02-22 11:16:54 +10:00
Denis Rouzaud
7812d4fb17 remove the-prefix from source code
this might result in variables having the same name as some methods
2017-02-21 18:14:58 +01:00
Matthias Kuhn
35d9b83aa5 Merge pull request #4138 from nyalldawson/touch
Rework map touch tool
2017-02-16 12:00:16 +01:00
Nyall Dawson
3ca0b90a97 Update sip bindings 2017-02-14 13:48:11 +10:00
Nyall Dawson
516bdfeed9 Fix build 2017-02-14 13:48:11 +10:00
Nyall Dawson
be46f78d7c Remove QgsDataDefinedButton
Now completely replaced by QgsPropertyOverrideButton
2017-02-14 13:48:11 +10:00
Nyall Dawson
f70a03116e Add basic shell for widget 2017-02-14 13:48:11 +10:00
Vincent Mora
77bf999094 Merge pull request #3905 from nextgis/25d_enhancement
[FEATURE] QGIS setting to choose default Z value
2017-02-13 09:11:27 +01:00
Nyall Dawson
c26ed69c6b Rework map touch tool
Qt5 allows runtime detection of touch devices. This commit reworks
the current touch map tool by pulling its behavior into the normal
pan tool when a touch device is detected.

It avoids the need for a seperate map tool for touch interaction,
and also avoids having this tool always appear on the Windows
builds (regardless of the presence of a touch device)
2017-02-12 15:06:24 +10:00
Denis Rouzaud
4cba47814b use stylesheet rather than palette
add doxygen comments and fix sip bindings
2017-02-11 22:36:20 +01:00
Denis Rouzaud
f3102bbf8f option to show a search icon in QgsFilterLineEdit 2017-02-11 22:36:20 +01:00
alisovenko
d780ba7593 Merged master fixed conflict. 2017-02-03 18:11:49 +03:00
Nyall Dawson
41fe33551c Add missing python bindings 2017-01-30 17:40:41 +10:00
Nyall Dawson
c853f4fe89 Refactor annotations
Splits the rendering component of annotations out from map
canvas item component.

A new core abstract base class QgsAnnotation handles the
management of the common properties associated with an
annotation, and handles rendering the annotation onto a
QgsRenderContext destination.

Existing annotation classes have been ported to this, and
with the exception of the form annotation moved into core.
Form annotations are dependant on editor widgets and must
remain in GUI.

A new QgsMapCanvasAnnotationItem item class implements
a QgsMapCanvasItem which draws an annotation inside the
canvas, and handles synchronising the position and size
of the canvas item with the QgsAnnotation position/size.

This allows annotations to be safely used in a multi-canvas
environment, with a single QgsAnnotation being displayed
in multiple canvases (even if the canvases have different
extent/crs/etc).

Additionally it allows annotations to be directly rendered
to a map (eg in composer) without going through the
gui based Qt graphics scene framework.

Also removes lots of duplicate code, and adds some basic
unit tests for annotations.
2017-01-30 08:36:19 +10:00
Juergen E. Fischer
a64f909474 spelling fixes 2017-01-25 16:53:34 +01:00
Nyall Dawson
b41f3a7860 [composer] Don't use canvas map settings to determine canvas layers
Instead make the layer tree canvas bridge advise on layer set
changes, and tie this into composer. So now composer acts
as a go-between to sync the composer map item's layer set to
the layer tree/canvas layers.

It's not an ideal solution, but avoids the hard link between
compositions and the map canvas.
2017-01-24 12:24:33 +10:00
Juergen E. Fischer
6a56cb0dd0 updates and fixes for windows qt5/py3 build 2017-01-24 01:25:59 +01:00
Nyall Dawson
b833c247dc Add missing sip bindings 2017-01-23 12:45:22 +10:00
Nyall Dawson
d5664ed635 Clean up GUI for properties 2017-01-23 12:45:21 +10:00
Nyall Dawson
ffaa40edc4 Refactor properties
Remove QgsAbstractProperty and subclasses, and instead use a single
QgsProperty class which covers the use of QgsAbstractProperty
and its subclasses. This simplifies the API and avoids pointer
handling. QgsProperty is implicitly shared for memory efficiency
and inexpensive copies.
2017-01-23 12:45:21 +10:00
Nyall Dawson
90e80c1353 Stronger definitions of properties in collections
Instead of defining the suitable field types and values for
properties when registering them to a data defined button,
now properties are fully defined when the valid
property keys are defined.
2017-01-23 12:45:21 +10:00
Nyall Dawson
ad2324021d Port symbology and composer to properties framework 2017-01-23 12:45:21 +10:00
Nyall Dawson
710a12cabd Avoid use of composition map settings to set initial composer map extent 2017-01-18 12:30:47 +10:00
Denis Rouzaud
b119744773 replace cancelling, cancelled and cancellation by canceling, canceled and cancelation, respectively (#4000)
* replace cancelling and cancelled by canceling and canceled, respectively

see https://github.com/qgis/qgis3_UIX_discussion/issues/19

* replace cancellation by cancelation
2017-01-16 22:27:14 +01:00