respecting all local skin hints during skin transitions
This commit is contained in:
parent
2636c4a7af
commit
40aeb80618
@ -257,24 +257,6 @@ namespace
|
|||||||
// the control is not interested in the aspect
|
// the control is not interested in the aspect
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
QskAspect::Aspect a = candidate.aspect;
|
|
||||||
a.clearStates();
|
|
||||||
a.addState( control->skinState() );
|
|
||||||
|
|
||||||
const QskSkinHintStatus requestState = control->hintStatus( a );
|
|
||||||
|
|
||||||
if ( requestState.source != QskSkinHintStatus::Skin )
|
|
||||||
{
|
|
||||||
// The control does not resolve the aspect from the skin.
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( candidate.aspect != requestState.aspect )
|
|
||||||
{
|
|
||||||
// the aspect was resolved to something else
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -283,12 +265,30 @@ namespace
|
|||||||
if ( candidate.aspect.isBoxPrimitive() &&
|
if ( candidate.aspect.isBoxPrimitive() &&
|
||||||
( candidate.aspect.boxPrimitive() == QskAspect::Background ) )
|
( candidate.aspect.boxPrimitive() == QskAspect::Background ) )
|
||||||
{
|
{
|
||||||
// no need to animate the background if we show it
|
// no need to animate the background unless we show it
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QskAspect::Aspect a = candidate.aspect;
|
||||||
|
a.clearStates();
|
||||||
|
a.addState( control->skinState() );
|
||||||
|
|
||||||
|
const QskSkinHintStatus requestState = control->hintStatus( a );
|
||||||
|
|
||||||
|
if ( requestState.source != QskSkinHintStatus::Skin )
|
||||||
|
{
|
||||||
|
// The control does not resolve the aspect from the skin.
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( candidate.aspect != requestState.aspect )
|
||||||
|
{
|
||||||
|
// the aspect was resolved to something else
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
addAnimator( control, candidate, animatorHint );
|
addAnimator( control, candidate, animatorHint );
|
||||||
storeUpdateInfo( control, candidate.aspect );
|
storeUpdateInfo( control, candidate.aspect );
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user