@@ -132,46 +132,6 @@ int QgsLegendModel::addVectorLayerItems( QStandardItem* layerItem, QgsMapLayer*
132
132
continue ;
133
133
}
134
134
135
- #if 0
136
- //label
137
- QString label;
138
- QString lowerValue = ( *symbolIt )->lowerValue();
139
- QString upperValue = ( *symbolIt )->upperValue();
140
-
141
- if ( lowerValue == upperValue || upperValue.isEmpty() )
142
- {
143
- label = lowerValue;
144
- }
145
- else
146
- {
147
- label = lowerValue + " - " + upperValue;
148
- }
149
-
150
- //icon item
151
- switch (( *symbolIt )->type() )
152
- {
153
- case QGis::Point:
154
- currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage(( *symbolIt )->getPointSymbolAsImage() ) ), label );
155
- break;
156
- case QGis::Line:
157
- currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage(( *symbolIt )->getLineSymbolAsImage() ) ), label );
158
- break;
159
- case QGis::Polygon:
160
- currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage(( *symbolIt )->getPolygonSymbolAsImage() ) ), label );
161
- break;
162
- default:
163
- currentSymbolItem = 0;
164
- break;
165
- }
166
-
167
- //Pass deep copy of QgsSymbol as user data. Cast to void* necessary such that QMetaType handles it
168
- QgsSymbol* symbolCopy = new QgsSymbol( **symbolIt );
169
- currentSymbolItem->setData( QVariant::fromValue(( void* )symbolCopy ) );
170
- insertSymbol( symbolCopy );
171
-
172
- currentSymbolItem->setFlags( Qt::ItemIsEnabled | Qt::ItemIsSelectable );
173
- #endif // 0
174
-
175
135
QStandardItem* currentSymbolItem = itemFromSymbol ( *symbolIt );
176
136
if ( !currentSymbolItem )
177
137
{
@@ -465,30 +425,40 @@ QStandardItem* QgsLegendModel::itemFromSymbol( QgsSymbol* s )
465
425
QStandardItem* currentSymbolItem = 0 ;
466
426
467
427
// label
428
+ QString itemText;
468
429
QString label;
430
+
469
431
QString lowerValue = s->lowerValue ();
470
432
QString upperValue = s->upperValue ();
471
433
472
- if ( lowerValue == upperValue || upperValue.isEmpty () )
434
+ label = s->label ();
435
+
436
+ // Take the label as item text if it is there
437
+ if (!label.isEmpty ())
438
+ {
439
+ itemText = label;
440
+ }
441
+ // take single value
442
+ else if ( lowerValue == upperValue || upperValue.isEmpty () )
473
443
{
474
- label = lowerValue;
444
+ itemText = lowerValue;
475
445
}
476
- else
446
+ else // or value range
477
447
{
478
- label = lowerValue + " - " + upperValue;
448
+ itemText = lowerValue + " - " + upperValue;
479
449
}
480
450
481
451
// icon item
482
452
switch ( s->type () )
483
453
{
484
454
case QGis::Point:
485
- currentSymbolItem = new QStandardItem ( QIcon ( QPixmap::fromImage ( s->getPointSymbolAsImage () ) ), label );
455
+ currentSymbolItem = new QStandardItem ( QIcon ( QPixmap::fromImage ( s->getPointSymbolAsImage () ) ), itemText );
486
456
break ;
487
457
case QGis::Line:
488
- currentSymbolItem = new QStandardItem ( QIcon ( QPixmap::fromImage ( s->getLineSymbolAsImage () ) ), label );
458
+ currentSymbolItem = new QStandardItem ( QIcon ( QPixmap::fromImage ( s->getLineSymbolAsImage () ) ), itemText );
489
459
break ;
490
460
case QGis::Polygon:
491
- currentSymbolItem = new QStandardItem ( QIcon ( QPixmap::fromImage ( s->getPolygonSymbolAsImage () ) ), label );
461
+ currentSymbolItem = new QStandardItem ( QIcon ( QPixmap::fromImage ( s->getPolygonSymbolAsImage () ) ), itemText );
492
462
break ;
493
463
default :
494
464
currentSymbolItem = 0 ;
0 commit comments