The examples I see seem to use COMPILE blocks.

I’m not sure how this translates to the app level. Is there a way to define a 
single method which overrides a SWF one and implements a new JS one (without 
using COMPILE blocks)? That seems to me like a pretty common use case for 
migrated apps.

> On Jun 1, 2017, at 2:18 AM, Alex Harui <aha...@adobe.com.INVALID> wrote:
> 
> 
> 
> On 5/31/17, 2:38 PM, "Harbs" <harbs.li...@gmail.com 
> <mailto:harbs.li...@gmail.com>> wrote:
> 
>> I just switched to dual and I’m getting lots of errors. These errors seem
>> to be exactly what I was afraid of, and I’m not sure how to resolve
>> without being restricted by naming of properties and methods.
>> 
>> 1. I’m using a mask setter and getter for images it’s now giving override
>> errors.
>> 2. contains() is an incompatible override.
>> 3. scaleX and scaleY
>> 4. blendMode
>> 5. rotation
>> 6. filters
>> 7. mouseEnabled
>> etc….
>> 
>> I thought there was supposed to be something built into the compiler to
>> hide the flash-specific APIs and allow reuse of them.
> 
> Not just in the compiler, but in metadata.  Search the source for
> [SWFOverride].  I guess I don't understand why you want/need to change the
> type of scaleX/Y, blendMode, etc.  Wouldn't mouseEnabled always be a
> boolean?
> 
> SWFOverride is designed for properties like mask and methods like
> contains() that are defined as a flash.display.DisplayObject by Flash and
> we probably want to use UIBase instead.  SWFOverride will work because
> UIBase is a DisplayObject on Flash.  I did not anticipate a requirement
> that mouseEnabled would be something other than a boolean.  What types are
> you using for these other properties?  Or maybe you just need COMPILE::JS
> on mouseEnabled?
> 
> HTH,
> -Alex

Reply via email to