Skip to content

Commit 4ec73c0

Browse files
author
mhugent
committedOct 4, 2008
Take the label for the composer legend if there is one
git-svn-id: http://svn.osgeo.org/qgis/trunk@9431 c8812cc2-4d05-0410-92ff-de0c093fc19c
1 parent 054c7bc commit 4ec73c0

File tree

1 file changed

+17
-47
lines changed

1 file changed

+17
-47
lines changed
 

‎src/core/composer/qgslegendmodel.cpp

Lines changed: 17 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -132,46 +132,6 @@ int QgsLegendModel::addVectorLayerItems( QStandardItem* layerItem, QgsMapLayer*
132132
continue;
133133
}
134134

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-
175135
QStandardItem* currentSymbolItem = itemFromSymbol( *symbolIt );
176136
if ( !currentSymbolItem )
177137
{
@@ -465,30 +425,40 @@ QStandardItem* QgsLegendModel::itemFromSymbol( QgsSymbol* s )
465425
QStandardItem* currentSymbolItem = 0;
466426

467427
//label
428+
QString itemText;
468429
QString label;
430+
469431
QString lowerValue = s->lowerValue();
470432
QString upperValue = s->upperValue();
471433

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() )
473443
{
474-
label = lowerValue;
444+
itemText = lowerValue;
475445
}
476-
else
446+
else //or value range
477447
{
478-
label = lowerValue + " - " + upperValue;
448+
itemText = lowerValue + " - " + upperValue;
479449
}
480450

481451
//icon item
482452
switch ( s->type() )
483453
{
484454
case QGis::Point:
485-
currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage( s->getPointSymbolAsImage() ) ), label );
455+
currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage( s->getPointSymbolAsImage() ) ), itemText );
486456
break;
487457
case QGis::Line:
488-
currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage( s->getLineSymbolAsImage() ) ), label );
458+
currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage( s->getLineSymbolAsImage() ) ), itemText );
489459
break;
490460
case QGis::Polygon:
491-
currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage( s->getPolygonSymbolAsImage() ) ), label );
461+
currentSymbolItem = new QStandardItem( QIcon( QPixmap::fromImage( s->getPolygonSymbolAsImage() ) ), itemText );
492462
break;
493463
default:
494464
currentSymbolItem = 0;

0 commit comments

Comments
 (0)
Please sign in to comment.