diff --git a/python/gui/qgsmapstylepanel.sip b/python/gui/qgsmapstylepanel.sip index 520261ae444..4793384ee69 100644 --- a/python/gui/qgsmapstylepanel.sip +++ b/python/gui/qgsmapstylepanel.sip @@ -69,10 +69,10 @@ class QgsMapStylePanelFactory virtual QString title() = 0; /** - * @brief Supported layer type for the widget. - * @return The layer type this widget is supported for. + * @brief Check if the layer is supported for this widget. + * @return True if this layer is supported for this widget */ - virtual LayerTypesFlags layerType() = 0; + virtual bool supportsLayer( QgsMapLayer *layer ) = 0; /** * @brief Factory fucntion to create the widget on demand as needed by the dock. diff --git a/src/app/qgsmapstylingwidget.cpp b/src/app/qgsmapstylingwidget.cpp index 7eb031b8355..31c944d2855 100644 --- a/src/app/qgsmapstylingwidget.cpp +++ b/src/app/qgsmapstylingwidget.cpp @@ -125,7 +125,7 @@ void QgsMapStylingWidget::setLayer( QgsMapLayer *layer ) Q_FOREACH ( QgsMapStylePanelFactory* factory, mPageFactories ) { - if ( factory->layerType().testFlag( layer->type() ) ) + if ( factory->supportsLayer( layer ) ) { QListWidgetItem* item = new QListWidgetItem( factory->icon(), "" ); mOptionsListWidget->addItem( item ); @@ -404,7 +404,7 @@ QgsMapStylePanel *QgsMapLayerStyleManagerWidgetFactory::createPanel( QgsMapLayer } -QgsMapStylePanelFactory::LayerTypesFlags QgsMapLayerStyleManagerWidgetFactory::layerType() +bool QgsMapLayerStyleManagerWidgetFactory::supportsLayer( QgsMapLayer *layer ) { - return QgsMapLayer::VectorLayer; + return ( layer->type() == QgsMapLayer::VectorLayer || layer->type() == QgsMapLayer::RasterLayer ); } diff --git a/src/app/qgsmapstylingwidget.h b/src/app/qgsmapstylingwidget.h index b109af221df..b770c8f47ff 100644 --- a/src/app/qgsmapstylingwidget.h +++ b/src/app/qgsmapstylingwidget.h @@ -45,7 +45,7 @@ class APP_EXPORT QgsMapLayerStyleManagerWidgetFactory : public QgsMapStylePanelF QIcon icon() override; QString title() override; QgsMapStylePanel *createPanel( QgsMapLayer *layer, QgsMapCanvas *canvas, QWidget *parent ) override; - LayerTypesFlags layerType() override; + bool supportsLayer( QgsMapLayer *layer ) override; }; class APP_EXPORT QgsMapLayerStyleCommand : public QUndoCommand diff --git a/src/gui/qgsmapstylepanel.h b/src/gui/qgsmapstylepanel.h index 7298e555771..ca91aa6706e 100644 --- a/src/gui/qgsmapstylepanel.h +++ b/src/gui/qgsmapstylepanel.h @@ -93,10 +93,10 @@ class GUI_EXPORT QgsMapStylePanelFactory virtual QString title() = 0; /** - * @brief Supported layer type for the widget. - * @return The layer type this widget is supported for. + * @brief Check if the layer is supported for this widget. + * @return True if this layer is supported for this widget */ - virtual LayerTypesFlags layerType() = 0; + virtual bool supportsLayer( QgsMapLayer *layer ) = 0; /** * @brief Factory fucntion to create the widget on demand as needed by the dock. diff --git a/src/gui/symbology-ng/qgsrendererv2widget.h b/src/gui/symbology-ng/qgsrendererv2widget.h index b96afbf991a..aa13160db90 100644 --- a/src/gui/symbology-ng/qgsrendererv2widget.h +++ b/src/gui/symbology-ng/qgsrendererv2widget.h @@ -92,7 +92,7 @@ class GUI_EXPORT QgsRendererV2Widget : public QWidget /** * @brief Emitted when a sub panel for the widget is opened. * The renderer can open inline sub panels instead of dialogs. - * @param opened + * @param opened True of the a sub panel is opened. */ void panelOpened( bool opened );