royale-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Carlos Rovira <>
Subject Re: Terminology and Concepts (was Re: [DISCUSS] Explanation of the changes)
Date Tue, 15 May 2018 15:58:25 GMT
Very interesting Alex,

I think this is not working now in Jewel now, but we should get to it.
Maybe that would need even to take into account the SWF version that I'm
not focusing, as I get some time I'll try to see what is missing and try to
make this work



2018-05-15 17:40 GMT+02:00 Alex Harui <>:

> Renaming to separate feedback on the wiki page.
> One comment inline below.
> ´╗┐On 5/15/18, 3:17 AM, " on behalf of Carlos
> Rovira" < on behalf of>
> wrote:
>     * Exploded Component:This should be really great, but I think in
> components
>     and I think is difficult for most of them. Think in a TextButton, if
> you
>     exploded in UIBase and its beads, you'll not have text or html
> properties.
> I'm interested in how I can explain this better in the wiki because
> actually it does work.  Using Basic.SWC, if I do:
> <js:TextButton text="foo"/>
> It really can be re-created by doing:
> <js:UIBase>
>   <js:beads>
>     <!-- these are the model and view beads for TextButton in specified in
> defaults.css -->
>     <js:TextModel text="foo" />
>     <js:CSSTextButtonView />
>   </js:beads>
> </js:UIBase>
> It used to work.  I haven't tried it in a while.  If it doesn't, we should
> fix it so it does.
> We should want Jewel to work as exploded components.  Because if the Jewel
> views do not make assumptions on the Jewel TLCs then we can reuse Jewel
> views and themes in the emulation components.  The reason that we don't
> mandate that TLCs in one component set must subclass TLCs in another
> component set is because the emulation component set has a higher priority
> goal, which is to emulate the class hierarchy of Flex.  So the emulation
> for mx:Button cannot subclass js:Button.  Instead, there is an emulation
> for UIComponent that subclasses UIBase, and ALL emulation components MUST
> eventually subclass UIComponent.  The backward compatibility goal outweighs
> the goal of reusing what should be little bits of proxy code in the Basic
> TLCs.  If you look at changes I've been making in the MXRoyale branch, it
> is to further reduce assumptions of beads on the TLCs.
> But as the emulation components become operational, they will still look
> like Basic components and I think we want them to look like Jewel
> components.  So the ability to use Jewel views and other beads on other
> strands is important and the exploded component test is a good way to keep
> from making too many assumptions when making view and other beads.  All we
> should need to do is copy the classreferences the Jewel defaults.css  and
> the proxy code from the Jewel TLCs.  That is essentially what we are doing
> to make the emulation components operational now.  We are copying
> classreferences from Basic's defaults.css and proxy code from the Basic
> TLCs.
> Thoughts?
> -Alex

Carlos Rovira

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message