We’re getting the following errors now (from the Flash Debugger) when trying to build core:
VerifyError: Error #1014: Class mx.core::IFlexModuleFactory could not be found. ReferenceError: Error # 1065: Variable _FlexUnitFlexJSApplication_org_apache_flex_core_ApplicationFactory is not defined. On Aug 2, 2016, at 10:33 PM, Alex Harui <aha...@adobe.com> wrote: > > > On 7/30/16, 11:05 PM, "Alex Harui" <aha...@adobe.com> wrote: >> I will probably try to code up the other option and see where >> the pain points are. There might be some killer issue. I'd like to avoid >> wrapping the CSSShape and friends. > > Well, I just pushed to the refactor-sprite branch changes to get > DataBindingExample to show up (but doesn't respond to events) with > -Application also wrapping a display object instead of extending Sprite > -CSSShape and friends are subclasses instead of wrappers > -UIHTMLElementWrapper extending HTMLElementWrapper as the base for all UI > widgets. > > IIRC, the main goal was to make sure there weren't all of those Flash APIs > that don't have JS equivalents exposed in the API surface in the > documentation and code intelligence in the IDEs. Hopefully these changes > will accomplish that without sacrificing performance at the leaves of the > tree of display objects. > It helps us in other ways as well in that the parent property is no longer > a DisplayObjectContainer like it used to be on the SWF side. And I think > that and other changes open the door for a lot more shared code between > the JS and SWF side. > > First I want to see if Harbs is ok with these changes in that it hides the > Flash APIs that were bugging him, then I might do a bit more refactoring > because I now don't like some of these class names. Right now > UIHTMLElementWrapper is the base for all widgets. There is still a > UIButtonBase that extends UIHTMLElementWrapper, and UIBase also extends > UIHTMLElementWrapper. What I think we should do is: > -rename HTMLElementWrapper to ElementWrapper > -rename UIHTMLElementWrapper to UIElementWrapper (Application will extend > UIElementWrapper) > -create a new UIBase that extends UIElementWrapper and implements IUIBase > (x,y,w,h,alpha,visible will move here from UIHTMLElementWrapper) > -rename UIButtonBase to ButtonBase > -rename the current UIBase to ComplexUIBase > > The current UIBase assumes that children can be added to the component, > which isn't always the case, and on the SWF side, Buttons were not UIBase > (which was a good test of forcing us to use IUIBase instead of UIBase > more. But with these additional changes, we can have a base class on the > SWF side for every component as well. > > Finishing this refactor could be a lot of work because of casting. There > are lots of places I've found already where the Strand is assumed to be a > DisplayObject. The compiler does not find these, you can only find them > by searching or at runtime. > > Anyway, I'm off to try to get the event system working. > > Opinions and questions welcome, > -Alex >