#5883 Icons : Use framework code to apply an overlay pixmap

This commit is contained in:
Magne Sjaastad
2020-05-06 14:03:35 +02:00
parent 28aafed44b
commit 1557d695b8
3 changed files with 17 additions and 36 deletions

View File

@@ -680,24 +680,19 @@ void RimEnsembleCurveSet::defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOr
uiTreeOrdering.skipRemainingChildren( true );
// Reset dynamic icon
this->setUiIcon( caf::QIconProvider() );
// Get static one
caf::QIconProvider iconProvider = this->uiIconProvider();
if ( iconProvider.isNull() ) return;
QIcon icon = iconProvider.icon();
RimEnsembleCurveSetCollection* coll = nullptr;
this->firstAncestorOrThisOfType( coll );
if ( coll && coll->curveSetForSourceStepping() == this )
{
QPixmap combined = icon.pixmap( 16, 16 );
QPainter painter( &combined );
QPixmap updownpixmap( ":/StepUpDownCorner16x16.png" );
painter.drawPixmap( 0, 0, updownpixmap );
iconProvider.setPixmap( combined );
QPixmap updownpixmap( ":/StepUpDownCorner16x16.png" );
iconProvider.setOverlayPixmap( updownpixmap );
}
else
{
iconProvider.setOverlayPixmap( QPixmap() );
}
this->setUiIcon( iconProvider );

View File

@@ -596,9 +596,6 @@ void RimSummaryCurve::defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOrderi
{
RimPlotCurve::defineUiTreeOrdering( uiTreeOrdering, uiConfigName );
// Reset dynamic icon
this->setUiIcon( caf::QIconProvider() );
// Get static one
caf::QIconProvider iconProvider = this->uiIconProvider();
if ( iconProvider.isNull() ) return;
@@ -608,13 +605,16 @@ void RimSummaryCurve::defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOrderi
this->firstAncestorOrThisOfType( coll );
if ( coll && coll->curveForSourceStepping() == this )
{
QPixmap combined = icon.pixmap( 16, 16 );
QPainter painter( &combined );
QPixmap updownpixmap( ":/StepUpDownCorner16x16.png" );
painter.drawPixmap( 0, 0, updownpixmap );
iconProvider.setPixmap( combined );
setUiIcon( iconProvider );
QPixmap updownpixmap( ":/StepUpDownCorner16x16.png" );
iconProvider.setOverlayPixmap( updownpixmap );
}
else
{
iconProvider.setOverlayPixmap( QPixmap() );
}
setUiIcon( iconProvider );
}
//--------------------------------------------------------------------------------------------------