I have found what appears to be another bug in Flex 2.  Effects assigned
to component triggers don't work if the component is a child of an
mx:Panel-derived MXML component.

The following simple example demonstrates this:

Compiled example <http://www.tommyb.com/flex/effectbug/EffectTest.html>

Source example:

(Custom mx:Panel-derived component, defined in myComps/myPanel.mxml)
<?xml version="1.0" encoding="utf-8"?>
<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml"; layout="absolute">
</mx:Panel>

(Main app mxml)
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
                 xmlns:myNameSpace="myComps.*"
                 layout="vertical"
                 viewSourceURL="srcview/index.html"
                 >
     <mx:WipeRight id="myFade" duration="500"/>
     <mx:Label text="FLEX BUG: Effects don't work in custom Panel-derived
component's children" fontSize="14" fontWeight="bold"/>
     <mx:Label text="The effects work if the component is a child of
mx:Panel"/>
     <mx:Panel width="250" height="200" title="mx:Panel"
layout="absolute">
         <mx:ControlBar>
             <mx:Button label="rollOverEffect Works Here"
rollOverEffect="myFade"/>
         </mx:ControlBar>
     </mx:Panel>
     <mx:Spacer height="25"/>
     <mx:Label text="They don't work if the panel is a custom MXML
component derived from mx:Panel"/>

     <myNameSpace:myPanel width="250" height="200"
title="myNameSpace:myPanel" layout="absolute">
         <mx:ControlBar>
             <mx:Button label="rollOverEffect Doesn't Work Here"
rollOverEffect="myFade"/>
         </mx:ControlBar>
     </myNameSpace:myPanel>

     <mx:Spacer height="25"/>
     <mx:Label text="(Right click and select 'View Source' to inspect
source code)"/>

</mx:Application>


Reply via email to