uiacceltk/hitchcock/coretoolkit/src/HuiLayout.cpp
branchRCL_3
changeset 19 e5af45d51884
parent 17 c9d868f1e20c
child 20 31fccae4f8a7
--- a/uiacceltk/hitchcock/coretoolkit/src/HuiLayout.cpp	Thu Aug 19 10:48:02 2010 +0300
+++ b/uiacceltk/hitchcock/coretoolkit/src/HuiLayout.cpp	Tue Aug 31 16:07:35 2010 +0300
@@ -494,7 +494,7 @@
     		}
     	}
 
-    if(iOpacity.Now() <= EPSILON && !Effect())
+    if(iOpacity.Now() <= EPSILON && (Effect() && !Effect()->IsSemitransparent()))
         {
         // This will not be visible due to being completely transparent.
         return;
@@ -540,33 +540,12 @@
     
     if (canUseEffectDrawing)
         {
-        Effectable()->EffectSetOpacityAdditive(0.0f, ETrue);
-        // PrepareDrawL will update iEffectOpacity for current frame
-        if(Effect()->PrepareDrawL(aGc, area))
-            {
-            if(iEffectOpacity <= 0.f)
-                {
-                if(Clipping())
-                    {
-                    // Restore original clipping rectangle.
-                    aGc.PopClip();
-                    }
-
-                
-                DrawBrushes(aGc, EHuiBrushLayerForeground);
-
-                // Restore original transformation.
-                Transform(aGc, EFalse);
-                EnterLocalProjection(aGc, EFalse);
-                return;
-                }
-        
-            // Note that EHuiVisualFlagOpaqueHint improves performance a lot in cached effect drawing 
-            TBool transparent = !(Flags() & EHuiVisualFlagOpaqueHint) && iOpacity.Now() < 1.0f;
-            TBool refreshCache = Changed();                
-            didDrawEffect =  Effect()->CachedDraw(aGc, area, refreshCache, !transparent);
-            }
+        // Note that EHuiVisualFlagOpaqueHint improves performance a lot in cached effect drawing 
+        TBool transparent = !(Flags() & EHuiVisualFlagOpaqueHint) && iOpacity.Now() < 1.0f;
+        TBool refreshCache = Changed();                
+        didDrawEffect =  Effect()->CachedDraw(aGc, area, refreshCache, !transparent);
         }
+    
     if ( !didDrawEffect )
         {
         // huilayout does not draw itself, only children.