Ok seeing the fact you were setting the background with an svg element.

When you want to start working on this and have a git connection again, let
me know, we can hash it out. :)

Mike

On Tue, May 19, 2015 at 4:09 PM, OmPrakash Muppirala <bigosma...@gmail.com>
wrote:

> On Tue, May 19, 2015 at 12:36 PM, Michael Schmalle <
> teotigraphix...@gmail.com> wrote:
>
> > Ok thanks Om, lots to think about. Some more questions.
> >
> > I am still a bit naive with HTML and SVG. Can SVG be used to skin an HTML
> > button? Or is it that you have to "Wrap" an html button with an SVG tag
> to
> > pretty much draw under it?
> >
>
> No, SVG cannot be used to skin a native HTML button. The skin class has to
> be just another display object under the component, just like the Spark
> Button in the current SDK.
>
>
> >
> > I love the idea of a Spark like skinning system and would totally help on
> > this, I am just trying to see how it would be implemented and how it
> > coincides with the HTML side, the AS side is obvious, the HTML side the
> SVG
> > is a child of the this.element?
> >
>
> Yes, that is correct.  Although, I have not exactly implemented this
> approach.  We should know more when I actually start coding a simple skin.
>
>
> >
> > Question: Is SVG meant to be interactive like a Button element or is it
> > meant for graphics.
>
>
> My current thinking is that for each state of the interactive button, a set
> of SVG elements would be drawn.  Again, much like today's Spark Button +
> skin paradigm.  The good thing about SVG is that event handlers can be
> attached to individual elements, so the interaction can be passed to the
> component which can respond by changing the state on itself and on its
> skin.
>
>
> > I am just trying to see the point at which the
> > component in html is either SVG or an HTML element. Since you say the SVG
> > is just created on the DOM, then aren't you saying that the SVG element
> is
> > just a child of the main component?
> >
>
> Yes, all the SVG elements would be children of the skin, which in turn
> would be a child of the main component.
>
>
> >
> > Do you have any prototypes of this going?
> >
>
> I have one, but based on the older FXG -> SVG XSLT approach [1], [2]
>
> Left side is Flash, right side is HTML5/SVG.  In this approach, I set the
> SVG by setting CSS pseudo-classes .  This is still an option going forward,
> but one that I don't like that much.  I prefer MXML states vs. CSS
> pseudo-classes because of the greater flexibility we'll get.
>
> Thanks,
> Om
>
> [1]
> http://people.apache.org/~bigosmallm/fxg2svg/buttonskin/flexVhtml5.html
>
>
>
>
> >
> > Mike
> >
> >
> >
> >
> >
> > On Tue, May 19, 2015 at 3:21 PM, OmPrakash Muppirala <
> bigosma...@gmail.com
> > >
> > wrote:
> >
> > > On Tue, May 19, 2015 at 11:29 AM, Michael Schmalle <
> > > teotigraphix...@gmail.com> wrote:
> > >
> > > > Ironically Om, this was my next post! SVG and what are we doing to
> use
> > > it.
> > > >
> > > > Maybe through all my bable of the last thread some might see where I
> am
> > > > coming from, I am really trying to figure out, what are we building
> on.
> > > >
> > > > Now SVG I understand, Canvas I understand.
> > > >
> > > > Om, what are the pluses and minuses of each paradigm? I was just
> > reading
> > > > about this today, canvas doesn't have event handlers, svg does.
> > > >
> > >
> > > Canvas is a fire and forget mode of rendering.  Think of Canvas as an
> > > equivalent to Flash's BitmapData.  Once you draw on a Canvas, you
> cannot
> > > get access to individual elements without doing a lot of complicated
> > > hittests or other kind of hacks.  Moreover, it is a raster object.  So,
> > if
> > > you draw on a Canvas and resize it up, it gets pixelated.
> > >
> > > SVG, on the other hand is a retained mode of rendering.  All elements
> > drawn
> > > in SVG become part of the DOM.  This means that you can do event
> > handling,
> > > animation, etc. much more easily.  Also, SVG is vector drawing.  So
> > drawing
> > > in any size and scaling keeps the rendering quality intact.
> > >
> > > Canvas is generally used for drawing a ton of elements in runtime
> without
> > > needing them to be individually interactive.  SVG is less performant
> > > because of the added dom related overhead on each element, and is
> > (should)
> > > generally used for building interactive UI components (charts, maps,
> > etc.)
> > >
> > >
> > > >
> > > > FXG -> SVG, is there currently a parser/renderer for this? How were
> you
> > > > planning on doing this.
> > > >
> > >
> > > So, my first approach was to write an FXG to SVG transformer[1]
> > stylesheet
> > > that I imagined would be invoked by the compiler.  It turns out that
> > doing
> > > it the 'FlexJS' way was much easier.  Basically, I created the
> > primitives -
> > > Line, Circle, Path, Fill, Stroke, etc. in the AS side [2] Then, I
> created
> > > their JS equivalents [3] where I draw SVG elements via JavaScript.
> That
> > is
> > > pretty much it.  The MXML/FXG parsing, cross-compilation from AS to JS
> > etc.
> > > is handled automatically by FlexJS (magic for me ;-) )
> > >
> > > The idea from here on is that anything you draw on the screen via AS3
> > will
> > > look exactly the same in Flash vs. HTML/JS.  Here is an example of
> flash
> > > [4] vs html [5]  Put them side by side and see if you can tell the
> > > difference :-)
> > >
> > > The next progression was to build FlexJS charts out of these.  Here is
> a
> > > set of chart components that Peter Ent built on top of this core
> graphics
> > > classes:  Flash [6] vs HTML5[7]  There is a pretty detailed wiki page
> for
> > > these charts [8]
> > >
> > >
> > >
> > > >
> > > > Is this something we could write that would pretty much cross compile
> > to
> > > > js?
> > > >
> > >
> > > Yes, I believe we are at a point where things are getting more and more
> > > cross-compiled as opposed to be hand-written.  Of course, the beauty is
> > > that you can draw in MXML/FXG and you can see a drawing in the JS side.
> > > Pretty cool.
> > >
> > >
> > > >
> > > > Tell me your ideas, I am very interested in this part.
> > > >
> > > >
> > > My next few TODOs are to build a spark like skinning system in FlexJS.
> > > Basically create FXG skins on the AS3 side and mirror them with SVG
> based
> > > skins on the JS side.  Peter has built a small example that will let me
> > > play around with event driven, states based skins.  I hope to get on
> this
> > > as soon as I get my Git access back.
> > >
> > > Of course, the core graphics packages needs more love with things like
> > > RadialGradients, and more fancy graphics primitives.
> > >
> > > After that I would like to tackle animation.  I haven't given a lot of
> > > thought into this, so not sure how easy/hard this is going to be.
> > >
> > > Thanks,
> > > Om
> > >
> > >
> > > >
> > > >
> > > > Mike
> > > >
> > > >
> > > [1] https://github.com/apache/flex-asjs/tree/develop/fxg2svg
> > > [2]
> > >
> > >
> >
> https://github.com/apache/flex-asjs/tree/develop/frameworks/projects/Graphics/as/src/org/apache/flex/core/graphics
> > > [3]
> > >
> > >
> >
> https://github.com/apache/flex-asjs/tree/develop/frameworks/projects/Graphics/js/src/org/apache/flex/core/graphics
> > > [4] http://people.apache.org/~bigosmallm/flexjs/drawing/flash/
> > > [5] http://people.apache.org/~bigosmallm/flexjs/drawing/html5/
> > > [6] http://people.apache.org/~pent/chartswf/
> > > [7] http://people.apache.org/~pent/chartjs/
> > > [8] https://cwiki.apache.org/confluence/display/FLEX/FlexJS+Charts
> > >
> > >
> > > >
> > > > > See this is my problem, Randori was a straight cross compile with
> > shims
> > > > and
> > > > > worked awesome. So all my questions to you are like me "unlearning"
> > > what
> > > > I
> > > > > spent 6+ months working on in that project.
> > > > >
> > > > > The compiler's emitter just puked out js and we locked in SWCs in
> the
> > > > apps
> > > > > that used js API surfaces.
> > > > >
> > > > > Although, the one thing as you know was Mike disagreed with
> FlexJS's
> > > view
> > > > > in ActionScript because he said HTML/CSS designers should just do
> > what
> > > > they
> > > > > do and design in HTML/CSS.
> > > > >
> > > >
> > > > I disagree fundamentally with this idea.  For one, HTML/CSS is a
> > terrible
> > > > terrible paradigm.  No designer is happy with the way things work
> > > today.  I
> > > > would rather provide a better way of doing the visuals via MXML+FXG
> > (like
> > > > we do in Flex's spark skins) and cross compile them over to JS + SVG
> +
> > > > Canvas as needed.
> > > >
> > > > Even the HTML/JS world is waking up to this idea.  This presentation
> > [1]
> > > > does a great job of explaining why SVG is better than CSS for
> > interfaces
> > > > building.  FlexJS is in a great position to provide this out of the
> box
> > > to
> > > > developers.
> > > >
> > > > Thanks,
> > > > Om
> > > >
> > > > [1]
> > http://slides.com/sarasoueidan/building-better-interfaces-with-svg#/
> > > >
> > >
> >
>

Reply via email to