File tree Expand file tree Collapse file tree 2 files changed +13
-7
lines changed
Expand file tree Collapse file tree 2 files changed +13
-7
lines changed Original file line number Diff line number Diff line change 3737using namespace Qt ::StringLiterals;
3838
3939QgsSingleSymbol3DRendererWidget::QgsSingleSymbol3DRendererWidget ( QgsVectorLayer *layer, QWidget *parent )
40- : QWidget ( parent )
40+ : QgsPanelWidget ( parent )
4141 , mLayer( layer )
4242{
4343 // If layer is null, the widget cannot be created.
@@ -72,16 +72,21 @@ void QgsSingleSymbol3DRendererWidget::setLayer( QgsVectorLayer *layer )
7272 if ( r && r->type () == " vector" _L1 )
7373 {
7474 QgsVectorLayer3DRenderer *vectorRenderer = static_cast <QgsVectorLayer3DRenderer *>( r );
75- widgetSymbol-> setSymbol ( vectorRenderer->symbol (), mLayer );
75+ setSymbol ( vectorRenderer->symbol () );
7676 }
7777 else
7878 {
7979 const std::unique_ptr<QgsAbstract3DSymbol> sym ( QgsApplication::symbol3DRegistry ()->defaultSymbolForGeometryType ( mLayer ->geometryType () ) );
8080 sym->setDefaultPropertiesFromLayer ( mLayer );
81- widgetSymbol-> setSymbol ( sym.get (), mLayer );
81+ setSymbol ( sym.get () );
8282 }
8383}
8484
85+ void QgsSingleSymbol3DRendererWidget::setSymbol ( const QgsAbstract3DSymbol *symbol )
86+ {
87+ widgetSymbol->setSymbol ( symbol, mLayer );
88+ }
89+
8590std::unique_ptr<QgsAbstract3DSymbol> QgsSingleSymbol3DRendererWidget::symbol ()
8691{
8792 return widgetSymbol->symbol (); // cloned or null
Original file line number Diff line number Diff line change 2020
2121#include " qgsmaplayerconfigwidget.h"
2222#include " qgsmaplayerconfigwidgetfactory.h"
23+ #include " qgspanelwidget.h"
2324#include " qgsvectorlayer3drenderer.h"
2425
2526class QComboBox ;
@@ -35,7 +36,7 @@ class QgsSymbol3DWidget;
3536class QgsVectorLayer3DPropertiesWidget ;
3637
3738
38- class QgsSingleSymbol3DRendererWidget : public QWidget
39+ class QgsSingleSymbol3DRendererWidget : public QgsPanelWidget
3940{
4041 Q_OBJECT
4142 public:
@@ -44,12 +45,12 @@ class QgsSingleSymbol3DRendererWidget : public QWidget
4445 // ! no transfer of ownership
4546 void setLayer ( QgsVectorLayer *layer );
4647
48+ // ! no transfer of ownership
49+ void setSymbol ( const QgsAbstract3DSymbol *symbol );
50+
4751 // ! Returns the cloned symbol or NULLPTR.
4852 std::unique_ptr<QgsAbstract3DSymbol> symbol ();
4953
50- signals:
51- void widgetChanged ();
52-
5354 private:
5455 QgsSymbol3DWidget *widgetSymbol = nullptr ;
5556 QgsVectorLayer *mLayer = nullptr ;
You can’t perform that action at this time.
0 commit comments