QGIS API Documentation  3.20.0-Odense (decaadbb31)
qgsinterpolatedlinesymbollayerwidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsinterpolatedlinesymbollayerwidget.h - QgsInterpolatedLineSymbolLayerWidget
3 
4  ---------------------
5  begin : 23.3.2021
6  copyright : (C) 2021 by Vincent Cloarec
7  email : vcloarec 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 #ifndef QGSINTERPOLATEDLINESYMBOLLAYERWIDGET_H
17 #define QGSINTERPOLATEDLINESYMBOLLAYERWIDGET_H
18 
19 #include "qgsrendererwidget.h"
20 #include "qgssymbollayerwidget.h"
22 #include "ui_qgsinterpolatedlinesymbollayerwidgetbase.h"
23 
29 class GUI_EXPORT QgsInterpolatedLineSymbolLayerWidget: public QgsSymbolLayerWidget, private Ui::QgsInterpolatedLineSymbolLayerWidgetBase
30 {
31  Q_OBJECT
32  public:
33 
39  QgsInterpolatedLineSymbolLayerWidget( QgsVectorLayer *layer, QWidget *parent SIP_TRANSFERTHIS = nullptr );
40 
46 
47  void setSymbolLayer( QgsSymbolLayer *layer ) override;
48  QgsSymbolLayer *symbolLayer() override;
49 
50  private slots:
51  void apply();
52  void updateVisibleWidget();
53  void onReloadMinMaxValueWidth();
54  void onReloadMinMaxValueColor();
55  void reloadMinMaxWidthFromLayer();
56  void reloadMinMaxColorFromLayer();
57  void onColorMinMaxLineTextChanged();
58  void onColorMinMaxLineTextEdited();
59 
60  private:
61  QgsInterpolatedLineSymbolLayer *mLayer = nullptr;
62 
63  double mMinimumForWidthFromLayer = std::numeric_limits<double>::quiet_NaN();
64  double mMaximumForWidthFromLayer = std::numeric_limits<double>::quiet_NaN();
65 
66  double mMaximumForColorFromLayer = std::numeric_limits<double>::quiet_NaN();
67  double mMinimumForColorFromLayer = std::numeric_limits<double>::quiet_NaN();
68 
69  QgsInterpolatedLineWidth interpolatedLineWidth();
70  QgsInterpolatedLineColor interpolatedLineColor();
71  double lineEditValue( QLineEdit *lineEdit );
72  void setLineEditValue( QLineEdit *lineEdit, double value );
73 };
74 
75 #endif // QGSINTERPOLATEDLINESYMBOLLAYERWIDGET_H
Class defining color to render mesh datasets.
static QgsSymbolLayerWidget * create(QgsVectorLayer *layer)
Static creation method.
A symbol layer that represents vector layer line feature as interpolated line The interpolation is do...
Represents a width than can vary depending on values.
virtual void setSymbolLayer(QgsSymbolLayer *layer)=0
virtual QgsSymbolLayer * symbolLayer()=0
Represents a vector layer which manages a vector based data sets.
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_FACTORY
Definition: qgis_sip.h:76