本文整理汇总了C++中KeyframeAnimation::waitingForStyleAvailable方法的典型用法代码示例。如果您正苦于以下问题:C++ KeyframeAnimation::waitingForStyleAvailable方法的具体用法?C++ KeyframeAnimation::waitingForStyleAvailable怎么用?C++ KeyframeAnimation::waitingForStyleAvailable使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KeyframeAnimation
的用法示例。
在下文中一共展示了KeyframeAnimation::waitingForStyleAvailable方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: styleAvailable
void CompositeAnimationPrivate::styleAvailable()
{
if (m_numStyleAvailableWaiters == 0)
return;
// We have to go through animations in the order in which they appear in
// the style, because order matters for additivity.
Vector<RefPtr<KeyframeAnimation> > animations(m_keyframeAnimations.size());
copyValuesToVector(m_keyframeAnimations, animations);
if (animations.size() > 1)
std::stable_sort(animations.begin(), animations.end(), compareAnimationIndices);
for (size_t i = 0; i < animations.size(); ++i) {
KeyframeAnimation* anim = animations[i].get();
if (anim && anim->waitingForStyleAvailable())
anim->updateStateMachine(AnimationBase::AnimationStateInputStyleAvailable, -1);
}
CSSPropertyTransitionsMap::const_iterator end = m_transitions.end();
for (CSSPropertyTransitionsMap::const_iterator it = m_transitions.begin(); it != end; ++it) {
ImplicitAnimation* anim = it->second.get();
if (anim && anim->waitingForStyleAvailable())
anim->updateStateMachine(AnimationBase::AnimationStateInputStyleAvailable, -1);
}
}
示例2: styleAvailable
void CompositeAnimation::styleAvailable()
{
if (m_numStyleAvailableWaiters == 0)
return;
// We have to go through animations in the order in which they appear in
// the style, because order matters for additivity.
Vector<KeyframeAnimation*> animations(m_keyframeAnimations.size());
AnimationNameMap::const_iterator kfend = m_keyframeAnimations.end();
size_t i = 0;
for (AnimationNameMap::const_iterator it = m_keyframeAnimations.begin(); it != kfend; ++it) {
KeyframeAnimation* anim = it->second;
// We can't just insert based on anim->index() because invalid animations don't
// make it into the hash.
animations[i++] = anim;
}
if (animations.size() > 1)
std::stable_sort(animations.begin(), animations.end(), compareAnimationIndices);
for (i = 0; i < animations.size(); ++i) {
KeyframeAnimation* anim = animations[i];
if (anim && anim->waitingForStyleAvailable())
anim->updateStateMachine(AnimationBase::STATE_INPUT_STYLE_AVAILABLE, -1);
}
CSSPropertyTransitionsMap::const_iterator end = m_transitions.end();
for (CSSPropertyTransitionsMap::const_iterator it = m_transitions.begin(); it != end; ++it) {
ImplicitAnimation* anim = it->second;
if (anim && anim->waitingForStyleAvailable())
anim->updateStateMachine(AnimationBase::STATE_INPUT_STYLE_AVAILABLE, -1);
}
}