QGIS API Documentation  2.15.0-Master (972fc9f)
qgssymbollayerv2widget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgssymbollayerv2widget.h - symbol layer widgets
3 
4  ---------------------
5  begin : November 2009
6  copyright : (C) 2009 by Martin Dobias
7  email : wonder dot sk at gmail dot com
8  ***************************************************************************
9  * *
10  * This program is free software; you can redistribute it and/or modify *
11  * it under the terms of the GNU General Public License as published by *
12  * the Free Software Foundation; either version 2 of the License, or *
13  * (at your option) any later version. *
14  * *
15  ***************************************************************************/
16 
17 #ifndef QGSSYMBOLLAYERV2WIDGET_H
18 #define QGSSYMBOLLAYERV2WIDGET_H
19 
20 #include <qgsdatadefinedbutton.h>
21 
22 #include <QWidget>
23 #include <QStandardItemModel>
24 
25 class QgsSymbolLayerV2;
26 class QgsVectorLayer;
27 class QgsMapCanvas;
28 
29 class GUI_EXPORT QgsSymbolLayerV2Widget : public QWidget
30 {
31  Q_OBJECT
32 
33  public:
34  QgsSymbolLayerV2Widget( QWidget* parent, const QgsVectorLayer* vl = nullptr )
35  : QWidget( parent )
36  , mVectorLayer( vl )
37  , mPresetExpressionContext( nullptr )
38  , mMapCanvas( nullptr )
39  {}
41 
42  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) = 0;
43  virtual QgsSymbolLayerV2* symbolLayer() = 0;
44 
51  QgsExpressionContext* expressionContext() const { return mPresetExpressionContext; }
52 
59  virtual void setMapCanvas( QgsMapCanvas* canvas );
60 
65  const QgsMapCanvas* mapCanvas() const;
66 
70  const QgsVectorLayer* vectorLayer() const { return mVectorLayer; }
71 
72  public slots:
73 
82  void setExpressionContext( QgsExpressionContext* context ) { mPresetExpressionContext = context; }
83 
84  protected:
86 
89 
91 
92  void registerDataDefinedButton( QgsDataDefinedButton * button, const QString & propertyName, QgsDataDefinedButton::DataType type, const QString & description );
93 
99  Q_DECL_DEPRECATED virtual QString dataDefinedPropertyLabel( const QString &entryName );
100 
101  signals:
106  void changed();
113  void symbolChanged();
114 
115  protected slots:
116  void updateDataDefinedProperty();
117 };
118 
120 
121 #include "ui_widget_simpleline.h"
122 
124 
125 class GUI_EXPORT QgsSimpleLineSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetSimpleLine
126 {
127  Q_OBJECT
128 
129  public:
130  QgsSimpleLineSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
131 
133 
135 
136  // from base class
137  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
138  virtual QgsSymbolLayerV2* symbolLayer() override;
139 
140  public slots:
141  void penWidthChanged();
142  void colorChanged( const QColor& color );
143  void penStyleChanged();
144  void offsetChanged();
145  void on_mCustomCheckBox_stateChanged( int state );
146  void on_mChangePatternButton_clicked();
147  void on_mPenWidthUnitWidget_changed();
148  void on_mOffsetUnitWidget_changed();
149  void on_mDashPatternUnitWidget_changed();
150  void on_mDrawInsideCheckBox_stateChanged( int state );
151 
152  protected:
154 
155  //creates a new icon for the 'change pattern' button
156  void updatePatternIcon();
157 
158  private slots:
159 
160  void updateAssistantSymbol();
161 
162  private:
163 
164  QgsLineSymbolV2* mAssistantPreviewSymbol;
165 
166 };
167 
169 
170 #include "ui_widget_simplemarker.h"
171 
173 
174 class GUI_EXPORT QgsSimpleMarkerSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetSimpleMarker
175 {
176  Q_OBJECT
177 
178  public:
179  QgsSimpleMarkerSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
181 
183 
184  // from base class
185  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
186  virtual QgsSymbolLayerV2* symbolLayer() override;
187 
188  public slots:
189  //TODO QGIS 3.0 - rename to setShape
190  void setName();
191  void setColorBorder( const QColor& color );
192  void setColorFill( const QColor& color );
193  void setSize();
194  void setAngle();
195  void setOffset();
196  void on_mSizeUnitWidget_changed();
197  void on_mOffsetUnitWidget_changed();
198  void on_mOutlineWidthUnitWidget_changed();
199  void on_mOutlineStyleComboBox_currentIndexChanged( int index );
200  void on_mOutlineWidthSpinBox_valueChanged( double d );
201  void on_mHorizontalAnchorComboBox_currentIndexChanged( int index );
202  void on_mVerticalAnchorComboBox_currentIndexChanged( int index );
203 
204  protected:
206 
207  private slots:
208 
209  void updateAssistantSymbol();
210  void penJoinStyleChanged();
211 
212  private:
213 
214  QgsMarkerSymbolV2* mAssistantPreviewSymbol;
215 };
216 
218 
219 #include "ui_widget_simplefill.h"
220 
222 
223 class GUI_EXPORT QgsSimpleFillSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetSimpleFill
224 {
225  Q_OBJECT
226 
227  public:
228  QgsSimpleFillSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
229 
231 
232  // from base class
233  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
234  virtual QgsSymbolLayerV2* symbolLayer() override;
235 
236  public slots:
237  void setColor( const QColor& color );
238  void setBorderColor( const QColor& color );
239  void setBrushStyle();
240  void borderWidthChanged();
241  void borderStyleChanged();
242  void offsetChanged();
243  void on_mBorderWidthUnitWidget_changed();
244  void on_mOffsetUnitWidget_changed();
245 
246  protected:
248 };
249 
250 
252 
253 #include "ui_widget_filledmarker.h"
254 
256 
262 class GUI_EXPORT QgsFilledMarkerSymbolLayerWidget : public QgsSymbolLayerV2Widget, private Ui::WidgetFilledMarker
263 {
264  Q_OBJECT
265 
266  public:
267 
272  QgsFilledMarkerSymbolLayerWidget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
273 
275 
280 
281  // from base class
282  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
283  virtual QgsSymbolLayerV2* symbolLayer() override;
284 
285  protected:
287 
288  private slots:
289 
290  void updateAssistantSymbol();
291  void setShape();
292  void setSize();
293  void setAngle();
294  void setOffset();
295  void on_mSizeUnitWidget_changed();
296  void on_mOffsetUnitWidget_changed();
297  void on_mHorizontalAnchorComboBox_currentIndexChanged( int index );
298  void on_mVerticalAnchorComboBox_currentIndexChanged( int index );
299 
300  private:
301 
302  QgsMarkerSymbolV2* mAssistantPreviewSymbol;
303 };
304 
306 
307 #include "ui_widget_gradientfill.h"
308 
310 
311 class GUI_EXPORT QgsGradientFillSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetGradientFill
312 {
313  Q_OBJECT
314 
315  public:
316  QgsGradientFillSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
317 
319 
320  // from base class
321  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
322  virtual QgsSymbolLayerV2* symbolLayer() override;
323 
324  public slots:
325  void setColor( const QColor& color );
326  void setColor2( const QColor& color );
327  void applyColorRamp();
328  void setGradientType( int index );
329  void setCoordinateMode( int index );
330  void setGradientSpread( int index );
331  void offsetChanged();
332  void referencePointChanged();
333  void on_mOffsetUnitWidget_changed();
334  void colorModeChanged();
335  void on_mSpinAngle_valueChanged( double value );
336 
337  protected:
339 };
340 
342 
343 #include "ui_widget_shapeburstfill.h"
344 
346 
347 class GUI_EXPORT QgsShapeburstFillSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetShapeburstFill
348 {
349  Q_OBJECT
350 
351  public:
352  QgsShapeburstFillSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
353 
355 
356  // from base class
357  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
358  virtual QgsSymbolLayerV2* symbolLayer() override;
359 
360  public slots:
361  void setColor( const QColor& color );
362  void setColor2( const QColor& color );
363  void colorModeChanged();
364  void on_mSpinBlurRadius_valueChanged( int value );
365  void on_mSpinMaxDistance_valueChanged( double value );
366  void on_mDistanceUnitWidget_changed();
367  void on_mRadioUseWholeShape_toggled( bool value );
368  void applyColorRamp();
369  void offsetChanged();
370  void on_mOffsetUnitWidget_changed();
371  void on_mIgnoreRingsCheckBox_stateChanged( int state );
372 
373  protected:
375 };
376 
378 
379 #include "ui_widget_markerline.h"
380 
382 
383 class GUI_EXPORT QgsMarkerLineSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetMarkerLine
384 {
385  Q_OBJECT
386 
387  public:
388  QgsMarkerLineSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
389 
391 
392  // from base class
393  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
394  virtual QgsSymbolLayerV2* symbolLayer() override;
395 
396  public slots:
397 
398  void setInterval( double val );
399  void setOffsetAlongLine( double val );
400  void setRotate();
401  void setOffset();
402  void setPlacement();
403  void on_mIntervalUnitWidget_changed();
404  void on_mOffsetUnitWidget_changed();
405  void on_mOffsetAlongLineUnitWidget_changed();
406 
407  protected:
408 
410 };
411 
412 
414 
415 #include "ui_widget_svgmarker.h"
416 
418 
419 class GUI_EXPORT QgsSvgMarkerSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetSvgMarker
420 {
421  Q_OBJECT
422 
423  public:
424  QgsSvgMarkerSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
426 
428 
429  // from base class
430  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
431  virtual QgsSymbolLayerV2* symbolLayer() override;
432 
433  public slots:
434  void setName( const QModelIndex& idx );
435  void populateIcons( const QModelIndex& idx );
436  void setSize();
437  void setAngle();
438  void setOffset();
439  void on_mFileToolButton_clicked();
440  void on_mFileLineEdit_textEdited( const QString& text );
441  void on_mFileLineEdit_editingFinished();
442  void on_mChangeColorButton_colorChanged( const QColor& color );
443  void on_mChangeBorderColorButton_colorChanged( const QColor& color );
444  void on_mBorderWidthSpinBox_valueChanged( double d );
445  void on_mSizeUnitWidget_changed();
446  void on_mBorderWidthUnitWidget_changed();
447  void on_mOffsetUnitWidget_changed();
448  void on_mHorizontalAnchorComboBox_currentIndexChanged( int index );
449  void on_mVerticalAnchorComboBox_currentIndexChanged( int index );
450 
451  protected:
452 
453  void populateList();
454  //update gui for svg file (insert new path, update activation of gui elements for svg params)
455  void setGuiForSvg( const QgsSvgMarkerSymbolLayerV2* layer );
456 
458 
459  private slots:
460 
461  void updateAssistantSymbol();
462 
463  private:
464 
465  QgsMarkerSymbolV2* mAssistantPreviewSymbol;
466 
467 };
468 
470 
471 #include "ui_widget_rasterfill.h"
472 
474 
475 class GUI_EXPORT QgsRasterFillSymbolLayerWidget : public QgsSymbolLayerV2Widget, private Ui::WidgetRasterFill
476 {
477  Q_OBJECT
478 
479  public:
480  QgsRasterFillSymbolLayerWidget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
481 
483 
484  // from base class
485  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
486  virtual QgsSymbolLayerV2* symbolLayer() override;
487 
488  protected:
490 
491  private slots:
492  void on_mBrowseToolButton_clicked();
493  void on_mImageLineEdit_editingFinished();
494  void setCoordinateMode( int index );
495  void on_mSpinTransparency_valueChanged( int value );
496  void offsetChanged();
497  void on_mOffsetUnitWidget_changed();
498  void on_mRotationSpinBox_valueChanged( double d );
499  void on_mWidthUnitWidget_changed();
500  void on_mWidthSpinBox_valueChanged( double d );
501 
502  private:
503  void updatePreviewImage();
504 };
505 
507 
508 #include "ui_widget_svgfill.h"
509 
511 
512 class GUI_EXPORT QgsSVGFillSymbolLayerWidget : public QgsSymbolLayerV2Widget, private Ui::WidgetSVGFill
513 {
514  Q_OBJECT
515 
516  public:
517  QgsSVGFillSymbolLayerWidget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
518 
519  static QgsSymbolLayerV2Widget* create( const QgsVectorLayer* vl ) { return new QgsSVGFillSymbolLayerWidget( vl ); }
520 
521  // from base class
522  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
523  virtual QgsSymbolLayerV2* symbolLayer() override;
524 
525  protected:
527  void insertIcons();
533  void updateParamGui( bool resetValues = true );
534 
535  private slots:
536  void on_mBrowseToolButton_clicked();
537  void on_mTextureWidthSpinBox_valueChanged( double d );
538  void on_mSVGLineEdit_textEdited( const QString & text );
539  void on_mSVGLineEdit_editingFinished();
540  void setFile( const QModelIndex& item );
541  void populateIcons( const QModelIndex& item );
542  void on_mRotationSpinBox_valueChanged( double d );
543  void on_mChangeColorButton_colorChanged( const QColor& color );
544  void on_mChangeBorderColorButton_colorChanged( const QColor& color );
545  void on_mBorderWidthSpinBox_valueChanged( double d );
546  void on_mTextureWidthUnitWidget_changed();
547  void on_mSvgOutlineWidthUnitWidget_changed();
548 };
549 
551 
552 #include "ui_widget_linepatternfill.h"
553 
555 
556 class GUI_EXPORT QgsLinePatternFillSymbolLayerWidget : public QgsSymbolLayerV2Widget, private Ui::WidgetLinePatternFill
557 {
558  Q_OBJECT
559 
560  public:
561 
562  QgsLinePatternFillSymbolLayerWidget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
564 
565  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
566  virtual QgsSymbolLayerV2* symbolLayer() override;
567 
568  protected:
570 
571  private slots:
572  void on_mAngleSpinBox_valueChanged( double d );
573  void on_mDistanceSpinBox_valueChanged( double d );
574  void on_mOffsetSpinBox_valueChanged( double d );
575  void on_mDistanceUnitWidget_changed();
576  void on_mOffsetUnitWidget_changed();
577 };
578 
580 
581 #include "ui_widget_pointpatternfill.h"
582 
584 
585 class GUI_EXPORT QgsPointPatternFillSymbolLayerWidget: public QgsSymbolLayerV2Widget, private Ui::WidgetPointPatternFill
586 {
587  Q_OBJECT
588 
589  public:
590  QgsPointPatternFillSymbolLayerWidget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
592 
593  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
594  virtual QgsSymbolLayerV2* symbolLayer() override;
595 
596  protected:
598 
599  private slots:
600  void on_mHorizontalDistanceSpinBox_valueChanged( double d );
601  void on_mVerticalDistanceSpinBox_valueChanged( double d );
602  void on_mHorizontalDisplacementSpinBox_valueChanged( double d );
603  void on_mVerticalDisplacementSpinBox_valueChanged( double d );
604  void on_mHorizontalDistanceUnitWidget_changed();
605  void on_mVerticalDistanceUnitWidget_changed();
606  void on_mHorizontalDisplacementUnitWidget_changed();
607  void on_mVerticalDisplacementUnitWidget_changed();
608 };
609 
611 
612 #include "ui_widget_fontmarker.h"
613 
615 class CharacterWidget;
616 
617 class GUI_EXPORT QgsFontMarkerSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetFontMarker
618 {
619  Q_OBJECT
620 
621  public:
622  QgsFontMarkerSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
623 
625 
627 
628  // from base class
629  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
630  virtual QgsSymbolLayerV2* symbolLayer() override;
631 
632  public slots:
633  void setFontFamily( const QFont& font );
634  void setColor( const QColor& color );
635 
638  void setColorBorder( const QColor& color );
639  void setSize( double size );
640  void setAngle( double angle );
641  void setCharacter( QChar chr );
642  void setOffset();
643  void on_mSizeUnitWidget_changed();
644  void on_mOffsetUnitWidget_changed();
645  void on_mBorderWidthUnitWidget_changed();
646  void on_mBorderWidthSpinBox_valueChanged( double d );
647  void on_mHorizontalAnchorComboBox_currentIndexChanged( int index );
648  void on_mVerticalAnchorComboBox_currentIndexChanged( int index );
649 
650  protected:
653 
654  private slots:
655 
656  void penJoinStyleChanged();
657  void updateAssistantSymbol();
658 
659  private:
660 
661  QgsMarkerSymbolV2* mAssistantPreviewSymbol;
662 
663 };
664 
666 
667 
668 #include "ui_widget_centroidfill.h"
669 
671 
672 class GUI_EXPORT QgsCentroidFillSymbolLayerV2Widget : public QgsSymbolLayerV2Widget, private Ui::WidgetCentroidFill
673 {
674  Q_OBJECT
675 
676  public:
677  QgsCentroidFillSymbolLayerV2Widget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
678 
680 
681  // from base class
682  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
683  virtual QgsSymbolLayerV2* symbolLayer() override;
684 
685  protected:
687 
688  private slots:
689  void on_mDrawInsideCheckBox_stateChanged( int state );
690  void on_mDrawAllPartsCheckBox_stateChanged( int state );
691 
692 };
693 
694 
696 
697 class QgsSvgListModel : public QAbstractListModel
698 {
699  Q_OBJECT
700 
701  public:
702  explicit QgsSvgListModel( QObject* parent );
703 
704  // Constructor to create model for icons in a specific path
705  QgsSvgListModel( QObject* parent, const QString& path );
706 
707  int rowCount( const QModelIndex & parent = QModelIndex() ) const override;
708 
709  QVariant data( const QModelIndex & index, int role = Qt::DisplayRole ) const override;
710 
711  protected:
712  QStringList mSvgFiles;
713 };
714 
715 class QgsSvgGroupsModel : public QStandardItemModel
716 {
717  Q_OBJECT
718 
719  public:
720  explicit QgsSvgGroupsModel( QObject* parent );
721 
722  private:
723  void createTree( QStandardItem* &parentGroup );
724 };
725 
727 
728 #include "ui_qgsgeometrygeneratorwidgetbase.h"
729 
731 
732 class GUI_EXPORT QgsGeometryGeneratorSymbolLayerWidget : public QgsSymbolLayerV2Widget, private Ui::GeometryGeneratorWidgetBase
733 {
734  Q_OBJECT
735 
736  public:
737  QgsGeometryGeneratorSymbolLayerWidget( const QgsVectorLayer* vl, QWidget* parent = nullptr );
738 
743 
744  // from base class
745  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
746  virtual QgsSymbolLayerV2* symbolLayer() override;
747 
748  private:
750 
751  private slots:
752  void updateExpression();
753  void updateSymbolType();
754 };
755 
756 #endif
virtual void setSymbolLayer(QgsSymbolLayerV2 *layer)=0
static unsigned index
QgsGradientFillSymbolLayerV2 * mLayer
QgsSimpleLineSymbolLayerV2 * mLayer
QgsLinePatternFillSymbolLayer * mLayer
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
QgsFontMarkerSymbolLayerV2 * mLayer
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
const QgsVectorLayer * vectorLayer() const
Returns the vector layer associated with the widget.
Map canvas is a class for displaying all GIS data types on a canvas.
Definition: qgsmapcanvas.h:109
const QgsVectorLayer * mVectorLayer
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
A class for filling symbols with a repeated raster image.
Widget for configuring QgsFilledMarkerSymbolLayer symbol layers.
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
QgsFilledMarkerSymbolLayer * mLayer
QgsPointPatternFillSymbolLayer * mLayer
QgsRasterFillSymbolLayer * mLayer
QgsMarkerLineSymbolLayerV2 * mLayer
A button for defining data source field mappings or expressions.
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
void setName(const char *name)
double ANALYSIS_EXPORT angle(Point3D *p1, Point3D *p2, Point3D *p3, Point3D *p4)
Calculates the angle between two segments (in 2 dimension, z-values are ignored)
QgsCentroidFillSymbolLayerV2 * mLayer
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
QgsSimpleMarkerSymbolLayerV2 * mLayer
QgsExpressionContext * expressionContext() const
Returns the expression context used for the widget, if set.
A class for svg fill patterns.
QgsExpressionContext * mPresetExpressionContext
Optional preset expression context.
QgsSvgMarkerSymbolLayerV2 * mLayer
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
QgsSymbolLayerV2Widget(QWidget *parent, const QgsVectorLayer *vl=nullptr)
virtual QgsSymbolLayerV2 * symbolLayer()=0
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
Will be registered as factory.
QgsShapeburstFillSymbolLayerV2 * mLayer
Filled marker symbol layer, consisting of a shape which is rendered using a QgsFillSymbolV2.
Represents a vector layer which manages a vector based data sets.
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
Creates a new QgsFilledMarkerSymbolLayerWidget.
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *vl)
Simple marker symbol layer, consisting of a rendered shape with solid fill color and an outline...
QgsSVGFillSymbolLayer * mLayer
QgsSimpleFillSymbolLayerV2 * mLayer
void setExpressionContext(QgsExpressionContext *context)
Sets the optional expression context used for the widget.