Skip to content

Commit 092265b

Browse files
committed
Fix model's signals if no symbology nodes are added
1 parent 045695a commit 092265b

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/gui/layertree/qgslayertreemodel.cpp

+9
Original file line numberDiff line numberDiff line change
@@ -642,6 +642,9 @@ void QgsLayerTreeModel::addSymbologyToVectorLayer( QgsLayerTreeLayer* nodeL )
642642
QSize iconSize( 16, 16 );
643643
QgsLegendSymbolList items = r->legendSymbolItems();
644644

645+
if ( items.count() == 0 )
646+
return;
647+
645648
beginInsertRows( node2index( nodeL ), 0, items.count() - 1 );
646649

647650
typedef QPair<QString, QgsSymbolV2*> XY;
@@ -676,6 +679,9 @@ void QgsLayerTreeModel::addSymbologyToRasterLayer( QgsLayerTreeLayer* nodeL )
676679
lst << new QgsLayerTreeModelSymbologyNode( nodeL, tr( "Double-click to view legend" ) );
677680
}
678681

682+
if ( rasterItemList.count() == 0 )
683+
return;
684+
679685
// Paletted raster may have many colors, for example UInt16 may have 65536 colors
680686
// and it is very slow, so we limit max count
681687
QSize iconSize( 16, 16 );
@@ -714,6 +720,9 @@ void QgsLayerTreeModel::addSymbologyToPluginLayer( QgsLayerTreeLayer* nodeL )
714720
QSize iconSize( 16, 16 );
715721
QgsLegendSymbologyList symbologyList = player->legendSymbologyItems( iconSize );
716722

723+
if ( symbologyList.count() == 0 )
724+
return;
725+
717726
beginInsertRows( node2index( nodeL ), 0, symbologyList.count() - 1 );
718727

719728
typedef QPair<QString, QPixmap> XY;

0 commit comments

Comments
 (0)