902 Commits

Author SHA1 Message Date
Nyall Dawson
ddbd25d046 Correctly emit panelAccepted when panel is not in dock mode
Fixes #15373 - refine current rule not working when symbol widgets
are not used in the style dock

This fixes a behavioural difference when new panels are opened
in a QgsPanelWidget when in docked/undocked mode. When in
docked mode, the newly opened panel will emit panelAccepted
when it is accepted. But for undocked mode, the parent
panel was emitting the panelAccepted signal and so the
connection to update the renderer was never
triggered. Now both docked/undocked panels will always
emit panelAccepted ONLY from the newly opened panel itself.

This also fixes memory leaks as the clean up code was never
run in undocked mode.

I've updated the docs to clarify this behaviour.
2016-10-05 12:59:59 +10:00
Juergen E. Fischer
ffaffadbfa fix typos 2016-10-01 17:58:12 +02:00
Nyall Dawson
ca7b504e5c Fix Travis warnings and missing docs/sip 2016-09-30 08:42:16 +10:00
Nyall Dawson
fd0c5ef950 Refactor symbol/renderer widgets to use QgsSymbolWidgetContext
instead of individually setting map canvas, expression context, etc

Will make it more easy in future to add additional parameters
to the widget context
2016-09-30 08:42:16 +10:00
Nyall Dawson
962a4e975f Expose renderer variables to users 2016-09-30 08:42:16 +10:00
Hugo Mercier
67c05b51c2 Fix some /Transfer/ annotations 2016-09-23 15:35:37 +02:00
Matthias Kuhn
8069154aad [Feature] Allow configuring link/unlink feature buttons on relation editor widget 2016-09-21 21:16:28 +02:00
Nyall Dawson
3c4f46dc79 Remove more code disabled under Qt5
Add todo note for QgsHttpTransaction and disable under docs and
sip bindings
2016-09-21 09:12:54 +10:00
Nyall Dawson
5e9619249e Merge pull request #3489 from nyalldawson/preset_color_ramp
[FEATURE] "Preset colors" color ramp
2016-09-17 08:33:13 +10:00
Nyall Dawson
7f9cc87f85 Merge pull request #3494 from nyalldawson/deprecated
Remove remaining deprecated methods
2016-09-16 21:02:25 +10:00
Nyall Dawson
8746932193 Merge pull request #3467 from pvalsecc/arrays
[FEATURE] Add support for array attributes
2016-09-16 06:13:34 +10:00
Nyall Dawson
2a9e5206e9 Remove deprecated QgsAttributeEditor 2016-09-15 18:50:39 +10:00
Nyall Dawson
fe65063c2b Remove many deprecated methods 2016-09-15 18:34:15 +10:00
Nyall Dawson
de7475ae72 Merge pull request #3486 from nyalldawson/symbol
Symbology QGIS 3.0 todos
2016-09-15 05:59:28 +10:00
Nyall Dawson
03907605e3 Avoid new colors in ramp overwriting old colors 2016-09-14 19:17:26 +10:00
Nyall Dawson
31e1661006 Ensure that colors are always added to recent color list from style panel 2016-09-14 19:17:26 +10:00
Nyall Dawson
ec50cac2ef [FEATURE] New "preset" colors color ramp option
Allows use of a color ramp consisting of a list of selected colors.
Currently there's no way in QGIS to classify a renderer using
some list of colors you've previously selected. So you can modify
the colors manually after classifying, but that's a pain
if you're regularly using the same color scheme.

Basically, it's like the color brewer color ramp options but
allowing users to pick their own preset list of colors to use*

(Because Cynthia Brewer isn't the only cartographic color expert!)
2016-09-14 19:17:26 +10:00
Nyall Dawson
56e8b9cff5 Consolidate some duplicate code 2016-09-14 15:17:28 +10:00
Nyall Dawson
b7111775e8 Fix some QGIS 3.0 symbology todos 2016-09-14 09:33:58 +10:00
Nyall Dawson
6e2d511c2d Merge pull request #3478 from mbernasocchi/patch-2
qgsmessagebar.pushMessage timeout is not respected in python
2016-09-14 07:57:24 +10:00
Patrick Valsecchi
57d00949f7 Add an editor widget for QVariantList 2016-09-13 09:16:17 +02:00
Nyall Dawson
041ceeaf9a Remove unused size/scale slots from renderer widgets 2016-09-13 11:05:45 +10:00
Nyall Dawson
ae9023fe0f Remove last deprecated methods from symbology 2016-09-13 11:05:45 +10:00
Marco Bernasocchi
bb4e6b8fb8 qgsmessagebar timeout is not respected in python
the default timeout is not respected in python

gui/qgsmessagebar.sip:51:    void pushMessage( const QString &text, MessageLevel level = INFO, int duration = 0 );


https://qgis.org/api/qgsmessagebar_8h_source.html#l00090
void pushMessage( const QString &text, MessageLevel level = INFO, int duration = 5 ) { return pushMessage( QString::null, text, level, duration ); }
2016-09-11 11:14:29 +02:00
Matthias Kuhn
aa87113995 Bindings and API docs 2016-09-09 14:26:27 +02:00
Matthias Kuhn
ac41436de3 Add QgsTabWidget
This is almost like the QTabWidget but has additional methods for
showing and hiding individual tabs
2016-09-09 14:26:27 +02:00
Nyall Dawson
f16b3870fa Use QgsFilterLineEdit for Qgs(Double)SpinBox
Fixes issues with the current approach:
- poor appearance on certain environments (esp OSX)
- large area on spin boxes' right which "swallows" clicks
and blocks interactivity

Fix #12920
2016-09-08 22:10:36 +10:00
Nyall Dawson
d959384c8b Allow hiding clear button in QgsFilterLineEdit 2016-09-08 21:48:25 +10:00
Nyall Dawson
d71453d84a Add ability to set default values for QgsFilterLineEdit
and have clearing the widget reset to default rather than
null
2016-09-08 21:48:25 +10:00
Nyall Dawson
edcc247c3e Add unit tests for QgsFilterLineEdit, improve docs, add clearValue slot 2016-09-08 21:48:25 +10:00
Patrick Valsecchi
e533f0ccf8 Add widget to edit QVariantMap 2016-09-08 11:11:08 +02:00
Nyall Dawson
98f25f59e7 Rework QgsFilterLineEdit handling of clear button
Don't use a child button but instead paint the icon when
required. Improves interaction with the widget/clear
button.
2016-09-06 16:45:32 +10:00
Patrick Valsecchi
7169079f91 Smarter default edit widgets with plugins to pick them
Now the widgets factories can give a score on how good they could handle
a widget.

Additionaly, plugins can be added to choose a widget factory in function
of an external information. One of them uses a table in PostgresQL to
allow specification of the widget type and configuration.

I took the opportunity to remove a few deprecated method in relation to
this.
2016-09-05 14:22:17 +02:00
Nyall Dawson
99405864ca Add a changed signal to QgsEditorConfigWidget
And update default value expression preview whenever editor
config changes

Sponsored by DB Fahrwegdienste GmbH
2016-08-30 12:40:52 +10:00
Matthias Kuhn
a529b448e7 Revert "Merge pull request #3338 from pvalsecc/editor_widgets_selection"
This reverts commit bbafbf48872eda48a2be8876cc89a0770552c6ad, reversing
changes made to 13ac0434e10fc7edd1eca665ea7c8b6cb5fd212d.
2016-08-29 19:22:04 +02:00
Matthias Kuhn
b1448233e9 Move QgsMapLayerProxyModel and QgsMapLayerProxyModel to core
Because it's also useful for non-widget applications
2016-08-29 18:43:20 +02:00
Patrick Valsecchi
24bde35ce6 Smarter default edit widgets with plugins to pick them
Now the widgets factories can give a score on how good they could handle
a widget.

Additionaly, plugins can be added to choose a widget factory in function
of an external information. One of them uses a table in PostgresQL to
allow specification of the widget type and configuration.

I took the opportunity to remove a few deprecated method in relation to
this.
2016-08-29 07:42:50 +02:00
Nyall Dawson
b225a82b3e [FEATURE] Make color brewer and limited random ramp editors show
inline in style panel
2016-08-24 21:01:03 +10:00
Nyall Dawson
b7716aa7fb Docs + cleanups for color ramp dialogs 2016-08-24 21:01:03 +10:00
Nyall Dawson
cf9292cc6d Color ramp dialogs no longer edit ramps in place
Now the dialogs use a copy of the ramp, and the edited
ramp is retrieved by calling ramp() on the dialog after
it is executed.

Avoids pointer lifetime issues by storing and working
on a ramp pointer which the dialog does not have ownership
on.

Also fix a bunch of leaks relating to cloning color ramps.
2016-08-24 21:01:03 +10:00
Nyall Dawson
7413db79b0 Rename color ramp dialogs to match new ramp class names 2016-08-24 21:01:03 +10:00
Nyall Dawson
932e469e5f Rename color ramp classes to more sensible names
QgsVectorColorRamp -> QgsColorRamp
QgsVectorGradientColorRamp -> QgsGradientColorRamp
QgsRandomColors -> QgsRandomColorRamp
QgsRandomColorRamp -> QgsLimitedRandomColorRamp
QgsVectorColorBrewerColorRamp -> QgsColorBrewerColorRamp

These color ramps are used throughout all of QGIS (not
just in vector symbology) and the current names are
misleading.
2016-08-24 21:01:03 +10:00
Nyall Dawson
5735be131f [FEATURE] Make map unit scaling dialog show inline in style dock 2016-08-24 07:51:03 +10:00
Denis Rouzaud
f5aa28bb32 rename QgsFieldProxyModel::Filter All to AllTypes 2016-08-23 15:42:37 +02:00
Denis Rouzaud
7fdade1a3a remove some deprecated methods, rename QgsAnnotation::mapPositionFixed() to hasFixedMapPosition() 2016-08-23 15:00:56 +02:00
Nyall Dawson
8f4ca47b70 New QgsExpressionLineEdit widget
Consists of a filter line edit + button to open expression builder

This widget is a bit like the existing QgsFieldExpressionWidget,
but for cases where a combo box does not make sense. Eg, when
no fields are available for the expression to use.

It also has an optional multiline mode, which allows it to be
used in place of the full-blown QgsExpressionBuilderWidget when
space is a problem.
2016-08-22 08:39:33 +10:00
Matthias Kuhn
6ae2daa145 Respect the "showLabel" flag on attribute editor elements 2016-08-19 14:50:22 +02:00
Nyall Dawson
eb5cc0c731 Add method to reset vector layer for data defined button 2016-08-17 10:56:51 +10:00
Nyall Dawson
cd4bc8887b Vertically stack the color widget when in dock mode 2016-08-16 19:47:28 +10:00
Nyall Dawson
5407ae8a6a [FEATURE] Color dialog can be embedded in layer style panel
Now clicking color buttons inside the layer style panel causes
the color picker dialog to be opened inside the style panel itself
rather than as a separate dialog
2016-08-15 18:04:07 +10:00