After talking with Alex a bit more, it seems there are two paths we can take, both valid and both really worth exploring.
One is the MXML/designer UI path where skins are specific either in MXML, drawn in some way, and/or created using a design tool. This skins follow from Spark skins. The other is CSS based which works backwards from the HTML/JS side and attempts to replicate styles in ActionScript. If you look at things like TopCoat[1] (or even jQuery since it offers styles and themes in a similar manner) you could imagine applying that same CSS to the ActionScript version of an app and getting the same look and feel. And I guess there is a converged third path that combines a little of both somehow. It looks like Om is pursuing the first path so I am going to look at the second and we'll see where we wind up. Peter Ent Adobe Systems On 1/28/15, 2:07 PM, "Peter Ent" <p...@adobe.com> wrote: >Working backwards from JS/CSS seems to be the best route, no matter how it >is implemented. We know there are some least-common denominators such as >background color and border, so perhaps we start there to formulate a >plan. > >I do think we should try and use the core.graphics package which is >style-able from CSS and we can mimic that much in AS. I've been looking at >the TextButton on the AS side and makes use of a border bead and a >background bead if there are border and style properties present. > >I am thinking that we make skins a required element of FlexJS so that >everything has at least a default skin and TextButton would not even care >about such things, it would turn that work over to its skins (up, down, >over) and those skins can make use of core.graphics. This more >implementation detail, I know. > >—peter > >On 1/28/15, 1:08 PM, "Alex Harui" <aha...@adobe.com> wrote: > >>I don’t have well-formed thoughts on this topic, but the following >>occurred to me. >> >>On the JS side, the browser has a powerful CSS engine. Drawing skins in >>AS/MXML won’t leverage that. So these kinds of themes may not be >>styleable. I think that’s fine, but IMO, Spark skins were designed to >>have other tools modify/create these non-styleable skins, generally by >>buying Adobe products. >> >>Thus, maybe there will be another kind of theme in FlexJS that is more >>oriented to being tailored by CSS. I’m not an expert on JS themes at all, >>but I think I’ve read that lots of them are really “drawn” via CSS. We >>may need to support this kind of theme in FlexJS as well. The AS code >>will have to handle more advanced CSS. IMO, these CSS skins will be >>smaller and faster than code skins. >> >>I think I recall that FlatSpark is heavily derived from some JS CSS skin. >>If so, should the default FlexJS implementation leverage CSS on the JS >>side, or should it really cross compile from its MXML/AS? >> >>Or, I could be totally wrong.. >> >>-Alex >> >> >>On 1/27/15, 1:04 PM, "Peter Ent" <p...@adobe.com> wrote: >> >>> >>> >>>On 1/27/15, 2:31 PM, "OmPrakash Muppirala" <bigosma...@gmail.com> wrote: >>> >>>>On Tue, Jan 27, 2015 at 11:21 AM, Peter Ent <p...@adobe.com> wrote: >>>> >>>>> Hi, >>>>> >>>>> I am thinking about using FlatSpark as either inspiration for a set >>>>>of >>>>> "skins" for FlexJS or porting it over to FlexJS. Since FlexJS is >>>>>more >>>>> JavaScript-minded (what you can do in ActionScript/MXML must >>>>>translate >>>>>to >>>>> JavaScript) I'm thinking that FlexJS skins would need to keep this in >>>>>mind. >>>>> >>>>> Please share your thoughts and ideas if you can. >>>>> >>>>> >>>>Peter, >>>> >>>>This was next on my plate as well. I want to try and continue where I >>>>left >>>>off with the MXML based drawing API which gets translated to SVG on the >>>>JS >>>>side. I had good success getting the visuals to work correctly. I got >>>>tripped up with tracking the mouse events on the JS side. I think Alex >>>>might have checked in something in the meantime that might have fixed >>>>my >>>>issues. >>>> >>>>I have gotten sidetracked with the Android4/iOS8 skins and my vacation >>>>before I could finish this work. I hope to get back to this soon. >>>> >>>>Can you share what you have in mind in terms of FlexJS skinning? >>> >>>I've just started to look into this myself. My first thought is there >>>should be an explicit way to attach the skin such as a skin property or, >>>more likely for FlexJS, a skin bead. >>> >>>I think what you (Om) were doing with core.graphics is a good step with >>>the ability to place some of the constructs in MXML. Alex has done more >>>work with events so perhaps what was tripping you up will have cleared >>>itself up by now. >>> >>>In the meantime, I need to get re-aquainted with skinning in Flex so >>>dive >>>in, by all means. >>>‹peter >>> >>>> >>>>Thanks, >>>>Om >>>> >>>> >>>>> Thanks, >>>>> Peter Ent >>>>> Adobe Systems >>>>> >>> >> >