Skip to content

Commit 28836d2

Browse files
committedSep 12, 2018
hi-dpi friendly style manager icons
1 parent 68c0d7f commit 28836d2

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed
 

‎src/gui/symbology/qgsstylemanagerdialog.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -253,8 +253,9 @@ void QgsStyleManagerDialog::tabItemType_currentChanged( int )
253253
actnExportAsPNG->setVisible( flag );
254254
actnExportAsSVG->setVisible( flag );
255255

256-
listItems->setIconSize( QSize( 100, 90 ) );
257-
listItems->setGridSize( QSize( 120, 110 ) );
256+
double iconSize = Qgis::UI_SCALE_FACTOR * fontMetrics().width( 'X' ) * 10;
257+
listItems->setIconSize( QSize( static_cast< int >( iconSize ), static_cast< int >( iconSize * 0.9 ) ) ); // ~100, 90 on low dpi
258+
listItems->setGridSize( QSize( static_cast< int >( iconSize * 1.2 ), static_cast< int >( iconSize * 1.1 ) ) ); // ~120,110 on low dpi
258259

259260
populateList();
260261
}
@@ -283,7 +284,7 @@ void QgsStyleManagerDialog::populateSymbols( const QStringList &symbolNames, boo
283284
{
284285
QStringList tags = mStyle->tagsOfSymbol( QgsStyle::SymbolEntity, name );
285286
QStandardItem *item = new QStandardItem( name );
286-
QIcon icon = QgsSymbolLayerUtils::symbolPreviewIcon( symbol.get(), listItems->iconSize(), 18 );
287+
QIcon icon = QgsSymbolLayerUtils::symbolPreviewIcon( symbol.get(), listItems->iconSize(), static_cast< int >( listItems->iconSize().width() * 0.16 ) );
287288
item->setIcon( icon );
288289
item->setData( name ); // used to find out original name when user edited the name
289290
item->setCheckable( check );
@@ -308,7 +309,7 @@ void QgsStyleManagerDialog::populateColorRamps( const QStringList &colorRamps, b
308309
std::unique_ptr< QgsColorRamp > ramp( mStyle->colorRamp( name ) );
309310

310311
QStandardItem *item = new QStandardItem( name );
311-
QIcon icon = QgsSymbolLayerUtils::colorRampPreviewIcon( ramp.get(), listItems->iconSize(), 18 );
312+
QIcon icon = QgsSymbolLayerUtils::colorRampPreviewIcon( ramp.get(), listItems->iconSize(), static_cast< int >( listItems->iconSize().width() * 0.16 ) );
312313
item->setIcon( icon );
313314
item->setData( name ); // used to find out original name when user edited the name
314315
item->setCheckable( check );

0 commit comments

Comments
 (0)
Please sign in to comment.