QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
qgsarrowsymbollayerwidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsarrowsymbollayerwidget.h
3  ---------------------
4  begin : February 2016
5  copyright : (C) 2016 by Hugo Mercier / Oslandia
6  email : hugo dot mercier at oslandia dot com
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 #ifndef QGSARROWSYMBOLLAYERWIDGET_H
16 #define QGSARROWSYMBOLLAYERWIDGET_H
17 
18 #include "ui_qgsarrowsymbollayerwidgetbase.h"
19 #include "qgssymbollayerv2widget.h"
20 
22 
26 class GUI_EXPORT QgsArrowSymbolLayerWidget: public QgsSymbolLayerV2Widget, private Ui::QgsArrowSymbolLayerWidgetBase
27 {
28  Q_OBJECT
29 
30  public:
35  QgsArrowSymbolLayerWidget( const QgsVectorLayer* layer, QWidget* parent = nullptr );
36 
40  static QgsSymbolLayerV2Widget* create( const QgsVectorLayer* layer ) { return new QgsArrowSymbolLayerWidget( layer ); }
41 
43  virtual void setSymbolLayer( QgsSymbolLayerV2* layer ) override;
45  virtual QgsSymbolLayerV2* symbolLayer() override;
46 
47  private:
48  QgsArrowSymbolLayer* mLayer;
49 
50  private slots:
51  void on_mArrowWidthSpin_valueChanged( double d );
52  void on_mArrowWidthUnitWidget_changed();
53 
54  void on_mArrowStartWidthSpin_valueChanged( double d );
55  void on_mArrowStartWidthUnitWidget_changed();
56 
57  void on_mHeadLengthSpin_valueChanged( double d );
58  void on_mHeadLengthUnitWidget_changed();
59  void on_mHeadThicknessSpin_valueChanged( double d );
60  void on_mHeadThicknessUnitWidget_changed();
61 
62  void on_mHeadTypeCombo_currentIndexChanged( int );
63  void on_mArrowTypeCombo_currentIndexChanged( int );
64 
65  void on_mOffsetSpin_valueChanged( double d );
66  void on_mOffsetUnitWidget_changed();
67 
68  void on_mCurvedArrowChck_stateChanged( int );
69  void on_mRepeatArrowChck_stateChanged( int );
70 };
71 
72 #endif
virtual void setSymbolLayer(QgsSymbolLayerV2 *layer)=0
static QgsSymbolLayerV2Widget * create(const QgsVectorLayer *layer)
Static creation method.
virtual QgsSymbolLayerV2 * symbolLayer()=0
Line symbol layer used for representing lines as arrows.
Represents a vector layer which manages a vector based data sets.