minor optimizations

This commit is contained in:
Uwe Rathmann 2020-12-20 16:10:24 +01:00
parent 549031fe78
commit 63929da406
2 changed files with 11 additions and 9 deletions

View File

@ -561,7 +561,7 @@ bool QskSkinnable::resetHint( QskAspect::Aspect aspect )
a.setPlacement( effectivePlacement() );
if ( a.state() == QskAspect::NoState )
a = a | skinState();
a.setState( skinState() );
const auto oldHint = storedHint( a );
@ -573,18 +573,20 @@ bool QskSkinnable::resetHint( QskAspect::Aspect aspect )
QVariant QskSkinnable::effectiveHint(
QskAspect::Aspect aspect, QskSkinHintStatus* status ) const
{
aspect.setSubControl( effectiveSubcontrol( aspect.subControl() ) );
if ( const auto subControl = aspect.subControl() )
aspect.setSubControl( effectiveSubcontrol( subControl ) );
aspect.setPlacement( effectivePlacement() );
if ( aspect.isAnimator() )
return storedHint( aspect, status );
const QVariant v = animatedValue( aspect, status );
const auto v = animatedValue( aspect, status );
if ( v.isValid() )
return v;
if ( aspect.state() == QskAspect::NoState )
aspect = aspect | skinState();
aspect.setState( skinState() );
return storedHint( aspect, status );
}
@ -1042,6 +1044,11 @@ QskSkin* QskSkinnable::effectiveSkin() const
return skin ? skin : qskSetup->skin();
}
QskAspect::Placement QskSkinnable::effectivePlacement() const
{
return QskAspect::NoPlacement;
}
void QskSkinnable::updateNode( QSGNode* parentNode )
{
effectiveSkinlet()->updateNode( this, parentNode );

View File

@ -221,11 +221,6 @@ inline Qt::Alignment QskSkinnable::alignmentHint(
return flagHint< Qt::Alignment >( aspect | QskAspect::Alignment, defaultAlignment );
}
inline QskAspect::Placement QskSkinnable::effectivePlacement() const
{
return QskAspect::NoPlacement;
}
inline bool QskSkinnable::resetColor( QskAspect::Aspect aspect )
{
return resetHint( aspect | QskAspect::Color );