equal
deleted
inserted
replaced
75 #endif |
75 #endif |
76 #ifndef HUIFX_EFFECTCACHE_ENABLED |
76 #ifndef HUIFX_EFFECTCACHE_ENABLED |
77 return EFalse; |
77 return EFalse; |
78 #endif |
78 #endif |
79 } |
79 } |
|
80 EXPORT_C TBool CHuiFxEngine::FxmlUsesOpaqueHint(const TDesC &aFileName) |
|
81 { |
|
82 #ifdef HUIFX_EFFECTCACHE_ENABLED |
|
83 return iCache->FxmlUsesOpaqueHint(aFileName); |
|
84 #endif |
|
85 #ifndef HUIFX_EFFECTCACHE_ENABLED |
|
86 return EFalse; |
|
87 #endif |
|
88 } |
80 |
89 |
81 TBool CHuiFxEngine::FxmlUsesInput1(CHuiFxEffect& aEffect) |
90 TBool CHuiFxEngine::FxmlUsesInput1(CHuiFxEffect& aEffect) |
82 { |
91 { |
83 RArray<THuiFxVisualSrcType> array; |
92 RArray<THuiFxVisualSrcType> array; |
84 aEffect.FxmlVisualInputs(array); |
93 aEffect.FxmlVisualInputs(array); |
285 if (!(effect->EffectFlags() & KHuiFadeEffectFlag) && !effect->Changed()) |
294 if (!(effect->EffectFlags() & KHuiFadeEffectFlag) && !effect->Changed()) |
286 { |
295 { |
287 #ifdef HUIFX_TRACE |
296 #ifdef HUIFX_TRACE |
288 RDebug::Printf("void CHuiFxEngine::NotifyEffectEndObservers() calling NotifyEffectEndObserver"); |
297 RDebug::Printf("void CHuiFxEngine::NotifyEffectEndObservers() calling NotifyEffectEndObserver"); |
289 #endif |
298 #endif |
290 effect->NotifyEffectEndObserver(); |
299 if (!effect->NotifyEffectEndObserver()) |
|
300 { |
|
301 // this effect is not in effect cleanupstack and does not have end observer on coretoolkit |
|
302 // side. However, it might have observer on alf side, that is notified from RemoveEffect. |
|
303 // Alf clients are responsible for destroying their own effects |
|
304 RemoveEffect(effect); |
|
305 } |
291 } |
306 } |
292 } |
307 } |
293 } |
308 } |
294 |
309 |
295 EXPORT_C void CHuiFxEngine::AdvanceTime(TReal32 aElapsedTime) |
310 EXPORT_C void CHuiFxEngine::AdvanceTime(TReal32 aElapsedTime) |
364 RDebug::Print(_L("CHuiFxEngine::RemoveEffect - 0x%x "), aEffect); |
379 RDebug::Print(_L("CHuiFxEngine::RemoveEffect - 0x%x "), aEffect); |
365 #endif |
380 #endif |
366 TInt i = iActiveEffects.Find(aEffect); |
381 TInt i = iActiveEffects.Find(aEffect); |
367 if (i >= 0) |
382 if (i >= 0) |
368 { |
383 { |
|
384 // Note, will effecsts will be drawn until they are destroyed. Removing |
|
385 // from iActiveEffects list only stops timeline updates. |
369 iActiveEffects.Remove(i); |
386 iActiveEffects.Remove(i); |
370 if (iEffectObserver) |
387 if (iEffectObserver) |
371 { |
388 { |
372 iEffectObserver->EffectComplete(aEffect); |
389 iEffectObserver->EffectComplete(aEffect); |
373 } |
390 } |