2261 Commits

Author SHA1 Message Date
lbartoletti
18e9766d51 dox 2020-01-08 08:35:27 +13:00
lbartoletti
2b031cf418 Expose shape digitizing methods to QgisInterface 2020-01-08 08:35:27 +13:00
Nyall Dawson
70ee385f4a [processing] Add message bar to widget context 2020-01-05 08:59:38 +10:00
Nyall Dawson
f8e5861dca Fix rule-based renderer widgets swallow copy/paste/delete shortcut keys
when opened in panel modes

Fixes #33592
2020-01-05 05:32:03 +10:00
Vincent Cloarec
30569bce1f Move QgsRasterLayerProperties class to the gui API
Motivation :
Move the QgsRasterLayerProperties class to the GUI API.
So, this class could be used using the QGIS API, notably for standalone applications.

The instance of this class was dependent, since QGIS 3.8, from the QgisApp instance, when calling the askUserForDatumTransform(). As this method, defines a title and only call QgsDatumTransformDialog::run() method from the gui API, this PR purpose to :
2020-01-02 13:02:32 +10:00
Nyall Dawson
fb5b440d5d [FEATURE] Allow dropping a map layer from the layer tree onto
a projection selection widget to set the projection to match that layer

Just a little timesaving shortcut!
2019-12-23 05:17:40 +10:00
Nyall Dawson
d5821feb9f [api] Add api to allow panel widgets to show a "hamburger" style
menu in the top right of the panel

This gives the panel a place to add menu actions like help links
for the panel.
2019-12-22 20:33:55 +10:00
Nyall Dawson
521080cd13 Add API to auto set QgsCoordinateOperationWidget selection to match
a QgsCoordinateTransformContext's state
2019-12-21 05:07:39 +10:00
Nyall Dawson
c04d4faf7f Allow double-clicking on coordinate operation to quickly select them 2019-12-21 05:07:39 +10:00
Nyall Dawson
f0f63d3802 Use QgsCoordinateOperationWidget in QgsDatumTransformDialog 2019-12-21 05:07:39 +10:00
Nyall Dawson
cb8b4a8831 Move guts of datum transformation dialog to a new standalone widget
QgsCoordinateOperationWidget

This widget shows a list of the available operations between a source
and destination CRS along with their properties
2019-12-21 05:07:39 +10:00
David Signer
ea912a170c since information 2019-12-20 09:39:50 +01:00
signedav
7f9aa3d2bb
Merge branch 'master' into relating_values 2019-12-19 14:12:38 +00:00
Alessandro Pasotti
a8c0e4cbf6 User expressions followup
- renamed the group to "User"
- added help text for the group
- added QgsSettings Expressions namespace
- reworded tooltips for store/remove actions
2019-12-18 14:24:02 +01:00
Alessandro Pasotti
89cacd7180
Merge pull request #33437 from elpaso/stored-expressions
[feature] Stored expressions
2019-12-17 20:13:32 +01:00
Alessandro Pasotti
fd6075e80b Renamed stored expressions to user expressions 2019-12-17 17:10:43 +01:00
Alessandro Pasotti
6b232414f2 Added new files header 2019-12-17 15:00:48 +01:00
signedav
4cbd9a1ee3
Merge pull request #33197 from signedav/searchtags_functions
Search tags on expression functions
2019-12-17 09:28:26 +00:00
Alessandro Pasotti
e4b4459af0 Use QStringLiteral 2019-12-17 10:19:16 +01:00
nirvn
3404dff67e [labelling] Fix masked symbol layers loss when
- opening layer properties window; or
- changing label settings in style dock
2019-12-17 15:15:49 +07:00
David Signer
83be397f8d menu action to only display the used values if formatter can provide available values 2019-12-16 18:28:18 +01:00
Alessandro Pasotti
09345b5130 Add QgsExpressionStoreDialog 2019-12-16 17:29:30 +01:00
Alessandro Pasotti
2ab794bcc5 Add tests and utility methods 2019-12-16 17:29:30 +01:00
Alessandro Pasotti
e8d76e2a92 Stored expressions initial implementation 2019-12-16 17:29:30 +01:00
Matthias Kuhn
b42a31ec2f
Merge pull request #32472 from troopa81/feature_selectionwidget_in_featureselectiondialog
Selection widget in feature selection dialog
2019-12-16 11:32:25 +01:00
Alessandro Pasotti
7464290ae3
Merge pull request #33379 from elpaso/widget-dependencies-move-to-formatter
Move layerDependencies to formatter
2019-12-14 09:00:08 +01:00
Julien Cabieces
80a362375c gather protected instructions 2019-12-13 18:00:16 +01:00
Julien Cabieces
d224a7ce99 [FEATURE][needs-docs] Add feature filtering and selection actions in feature selection
dialog
2019-12-13 17:33:40 +01:00
Alessandro Pasotti
4ad62aa6ff Move layerDependencies to formatter
... from the widget
2019-12-13 11:54:25 +01:00
Nyall Dawson
d3da0e0281 Also move labeling gui files to dedicated subdirectory 2019-12-11 14:05:44 +10:00
Nyall Dawson
99c8afe4e9 [FEATURE] Show the total pan distance and bearing in the status bar during
canvas pan operations

Allows users to know exactly how far (and in what direction) they've dragged
the map.
2019-12-06 04:50:17 +10:00
Denis Rouzaud
d147a8dffa
Merge pull request #33233 from 3nids/class_method_params
Option to filter negative values in logarithmic classification method
2019-12-05 14:59:04 +01:00
David Signer
153a5ff1bc tags instead of searchTags 2019-12-05 10:05:42 +01:00
Denis Rouzaud
aec68661ca update python bindings 2019-12-04 22:20:26 +01:00
Julien Cabieces
ba925bb36d Create child feature with geometry from the relation editor (#32528)
* [FEATURE][needs-docs] Create geometric child feature from relation editor
2019-12-04 14:46:32 +01:00
Nyall Dawson
b4bc7cbffd iface.newProject() should return False if a new project could not
be created (e.g. if the user opts to cancel when prompted to save the
current project)
2019-12-04 19:02:46 +10:00
Nyall Dawson
66456a30e7 [labeling] When a layer is set to "blocking" mode, expose the obstacle
settings widget to allow users to tweak the obstacle behavior

Previously these settings were stuck inside the disabled label settings
widget, which meant that to edit them you had to temporarily enable simple
labels, tweak the setting, and then set back to obstacle mode... woot.
2019-12-04 14:47:36 +10:00
Nyall Dawson
d63714ae63 Fix spelling 2019-12-04 14:47:36 +10:00
Nyall Dawson
02fffdc64b [needs-docs] Move label obstacle settings to "placement" tab
and show detailed settings in a stacked panel widget

Because:

1. The settings belong next to the placement settings, because they
affect label placement directly (and are closely associated with the
label priority setting in this tab)

2. The label settings widget is ridiculously complex and overwhelming
even for experienced QGIS users. By moving detailed settings into
stacked panels we can avoid the initial complexity of the label settings
whilst also allowing us more flexibility to expose additional settings
in future without adding to the mess. So in future, I propose we move
all detailed settings to sub panels, and leave only the initial "enable"
setting at the top level (e.g. [x] "Repeat levels" -> click settings -> see
all repeat settings).
2019-12-04 14:47:36 +10:00
Nyall Dawson
ed93ebd91c Add QgsLabelObstacleSettingsWidget widget for customising label obstacle settings 2019-12-04 14:47:36 +10:00
Nyall Dawson
de2b60d7ef Hookup data defined properties support for QgsLabelSettingsWidgetBase 2019-12-04 14:47:36 +10:00
Nyall Dawson
060cfb4eeb [api] New class QgsLabelSettingsWidgetBase
Base class for widgets which allow customisation of label engine properties,
such as label placement settings.
2019-12-04 14:47:36 +10:00
David Signer
161af6ad26 search tags in expression function to look up the functionality in the expression builder 2019-11-28 16:47:48 +01:00
Alessandro Pasotti
d89745aec6
Merge pull request #33103 from elpaso/relation-reference-restore
Relation-reference widget: load dependencies
2019-11-28 10:25:55 +01:00
Nyall Dawson
2800798fef [FEATURE][layouts] Allow drag and drop of pictures onto layouts
E.g. drag an svg from a file explorer onto the layout to create a
new picture item containing that svg image.

Convenience++!
2019-11-28 18:38:31 +10:00
Alessandro Pasotti
37c42c3665 Relation-reference widget: load dependencies
Same behavior of value-relation widget.

Funded by: ARPA Piemonte
2019-11-27 17:54:16 +01:00
Alessandro Pasotti
bcdbc3a85d Attribute table pass fid on ctx menu signals
instead of passing an index that could belong to
one of the (three) models that live in the dual
view.

This hopefully makes the code a bit less error
prone and readable.

Fixes #32952
2019-11-21 05:00:27 +10:00
Nyall Dawson
9a2e015158 Move QObject declaration to header 2019-11-20 10:08:13 +10:00
Matthias Kuhn
be121984bf Apparently sip doesn't like double QObject inheritance
If a list of objects (QList<QgsMapCanvasItem *>) is converted to a list of python objects, sip fails if items inherit from QObject.
Fix #32700
2019-11-11 04:12:47 +10:00
Matthias Kuhn
cb688cbbcc Revert "Remove SIP convert to subclass code for QgsRubberBand and QgsVertexMarker"
This reverts commit 4b014e6e84093fc59ce9ee085657161b56be189c.
2019-11-11 04:12:47 +10:00