Skip to content

Commit bb6e275

Browse files
committedJan 31, 2018
Don't show non-spatial layers as disabled in layer tree
1 parent e73161f commit bb6e275

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed
 

‎src/core/layertree/qgslayertreemodel.cpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -242,11 +242,10 @@ QVariant QgsLayerTreeModel::data( const QModelIndex &index, int role ) const
242242
if ( QgsLayerTree::isLayer( node ) )
243243
{
244244
QgsLayerTreeLayer *nodeLayer = QgsLayerTree::toLayer( node );
245-
if ( nodeLayer->layer() && nodeLayer->layer()->type() == QgsMapLayer::VectorLayer )
246-
{
247-
if ( qobject_cast<QgsVectorLayer *>( nodeLayer->layer() )->geometryType() == QgsWkbTypes::NullGeometry )
248-
return QVariant(); // do not show checkbox for non-spatial tables
249-
}
245+
246+
if ( nodeLayer->layer() && !nodeLayer->layer()->isSpatial() )
247+
return QVariant(); // do not show checkbox for non-spatial tables
248+
250249
return nodeLayer->itemVisibilityChecked() ? Qt::Checked : Qt::Unchecked;
251250
}
252251
else if ( QgsLayerTree::isGroup( node ) )
@@ -270,7 +269,7 @@ QVariant QgsLayerTreeModel::data( const QModelIndex &index, int role ) const
270269
if ( QgsLayerTree::isLayer( node ) )
271270
{
272271
const QgsMapLayer *layer = QgsLayerTree::toLayer( node )->layer();
273-
if ( !node->isVisible() || ( layer && !layer->isInScaleRange( mLegendMapViewScale ) ) )
272+
if ( ( !node->isVisible() && ( !layer || layer->isSpatial() ) ) || ( layer && !layer->isInScaleRange( mLegendMapViewScale ) ) )
274273
{
275274
brush.setColor( Qt::lightGray );
276275
}

0 commit comments

Comments
 (0)
Please sign in to comment.