QGIS API Documentation  3.22.4-Białowieża (ce8e65e95e)
qgsmeshrenderervectorsettingswidget.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsmeshrenderervectorsettingswidget.h
3  -------------------------------------
4  begin : June 2018
5  copyright : (C) 2018 by Peter Petrik
6  email : zilolv at gmail 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 
16 #ifndef QGSMESHRENDERERVECTORSETTINGSWIDGET_H
17 #define QGSMESHRENDERERVECTORSETTINGSWIDGET_H
18 
19 #include "ui_qgsmeshrenderervectorsettingswidgetbase.h"
20 #include "qgis_gui.h"
22 #include "qgsmeshdataprovider.h"
24 
25 #include <memory>
26 #include <QWidget>
27 
29 
30 class QgsMeshLayer;
31 
40 class QgsMeshRendererVectorSettingsWidget : public QWidget, private Ui::QgsMeshRendererVectorSettingsWidgetBase
41 {
42  Q_OBJECT
43 
44  public:
45 
50  QgsMeshRendererVectorSettingsWidget( QWidget *parent = nullptr );
51 
53  void setLayer( QgsMeshLayer *layer );
54 
56  void setActiveDatasetGroup( int groupIndex ) { mActiveDatasetGroup = groupIndex; }
57 
60 
62  void syncToLayer();
63 
64  signals:
66  void widgetChanged();
67 
68  private slots:
69  void onSymbologyChanged( int currentIndex );
70  void onStreamLineSeedingMethodChanged( int currentIndex );
71  void onColoringMethodChanged();
72  void onColorRampMinMaxChanged();
73  void loadColorRampShader();
74 
75  private:
76 
81  double filterValue( const QgsDoubleSpinBox *spinBox, double err_val ) const;
82 
83  QgsMeshLayer *mMeshLayer = nullptr; //not owned
84  int mActiveDatasetGroup = -1;
85 };
86 
87 #endif // QGSMESHRENDERERVECTORSETTINGSWIDGET_H
The QgsSpinBox is a spin box with a clear button that will set the value to the defined clear value.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Definition: qgsmeshlayer.h:97
A widget for setup of the vector dataset renderer settings of a mesh layer.
QgsMeshRendererVectorSettingsWidget(QWidget *parent=nullptr)
A widget to hold the renderer Vector settings for a mesh layer.
void setActiveDatasetGroup(int groupIndex)
Associates a dataset group with the widget (should be set before syncToLayer())
QgsMeshRendererVectorSettings settings() const
Returns vector settings.
void syncToLayer()
Synchronizes widgets state with associated mesh layer.
void setLayer(QgsMeshLayer *layer)
Associates mesh layer with the widget.
void widgetChanged()
Mesh rendering settings changed.
Represents a renderer settings for vector datasets.
#define SIP_NO_FILE