QskSkinStateChanger::resetStates added

This commit is contained in:
Uwe Rathmann 2023-06-30 14:24:31 +02:00
parent 3e00ae4c2a
commit a12de7a200

View File

@ -16,6 +16,7 @@ class QskSkinStateChanger
~QskSkinStateChanger(); ~QskSkinStateChanger();
void setStates( QskAspect::States ); void setStates( QskAspect::States );
void resetStates();
private: private:
QskSkinnable* m_skinnable; QskSkinnable* m_skinnable;
@ -30,8 +31,7 @@ inline QskSkinStateChanger::QskSkinStateChanger( const QskSkinnable* skinnable )
inline QskSkinStateChanger::~QskSkinStateChanger() inline QskSkinStateChanger::~QskSkinStateChanger()
{ {
if ( m_oldStates != m_skinnable->skinStates() ) resetStates();
m_skinnable->replaceSkinStates( m_oldStates );
} }
inline void QskSkinStateChanger::setStates( QskAspect::States states ) inline void QskSkinStateChanger::setStates( QskAspect::States states )
@ -40,4 +40,10 @@ inline void QskSkinStateChanger::setStates( QskAspect::States states )
m_skinnable->replaceSkinStates( states ); m_skinnable->replaceSkinStates( states );
} }
inline void QskSkinStateChanger::resetStates()
{
if ( m_oldStates != m_skinnable->skinStates() )
m_skinnable->replaceSkinStates( m_oldStates );
}
#endif #endif