QskSkinnable::setSkinStates cleanup

This commit is contained in:
Uwe Rathmann 2021-09-17 16:32:01 +02:00
parent b1d80e37f1
commit 07aac221bb
2 changed files with 17 additions and 4 deletions

View File

@ -1091,7 +1091,7 @@ void QskSkinnable::setSkinStateFlag( QskAspect::State stateFlag, bool on )
? ( m_data->skinStates | stateFlag ) ? ( m_data->skinStates | stateFlag )
: ( m_data->skinStates & ~stateFlag ); : ( m_data->skinStates & ~stateFlag );
setSkinStates( newState, true ); setSkinStates( newState );
} }
void QskSkinnable::replaceSkinStates( QskAspect::States newStates ) void QskSkinnable::replaceSkinStates( QskAspect::States newStates )
@ -1099,7 +1099,17 @@ void QskSkinnable::replaceSkinStates( QskAspect::States newStates )
m_data->skinStates = newStates; m_data->skinStates = newStates;
} }
void QskSkinnable::setSkinStates( QskAspect::States newStates, bool animated ) void QskSkinnable::addSkinStates( QskAspect::States states )
{
setSkinStates( m_data->skinStates | states );
}
void QskSkinnable::clearSkinStates( QskAspect::States states )
{
setSkinStates( m_data->skinStates & ~states );
}
void QskSkinnable::setSkinStates( QskAspect::States newStates )
{ {
if ( m_data->skinStates == newStates ) if ( m_data->skinStates == newStates )
return; return;
@ -1126,7 +1136,7 @@ void QskSkinnable::setSkinStates( QskAspect::States newStates, bool animated )
} }
} }
if ( control->window() && animated && isTransitionAccepted( QskAspect() ) ) if ( control->window() && isTransitionAccepted( QskAspect() ) )
{ {
const auto placement = effectivePlacement(); const auto placement = effectivePlacement();
const auto primitiveCount = QskAspect::primitiveCount(); const auto primitiveCount = QskAspect::primitiveCount();

View File

@ -127,9 +127,12 @@ class QSK_EXPORT QskSkinnable
void debug( QDebug, QskAspect ) const; void debug( QDebug, QskAspect ) const;
void debug( QDebug, QskAspect::State ) const; void debug( QDebug, QskAspect::State ) const;
void setSkinStates( QskAspect::States, bool animated = true ); void setSkinStates( QskAspect::States );
void setSkinStateFlag( QskAspect::State, bool on = true ); void setSkinStateFlag( QskAspect::State, bool on = true );
void addSkinStates( QskAspect::States );
void clearSkinStates( QskAspect::States );
void replaceSkinStates( QskAspect::States ); void replaceSkinStates( QskAspect::States );
bool hasSkinState( QskAspect::State ) const; bool hasSkinState( QskAspect::State ) const;