On Thu, Mar 1, 2012 at 7:34 AM, Jonathan Campos
<jonbcam...@gmail.com>wrote:
On Thu, Mar 1, 2012 at 2:13 AM, Omar Gonzalez <omarg.develo...@gmail.com
wrote:
I've added a page to the wiki to keep track of the current
inventory of
MX
components, their Spark counterparts, and whether they are currently
missing.
I don't want to just go editing your work without some discussion,
so I'm
throwing the discussion here. There are some components that I
don't see
the need to be "spark'ed" nor do I consider them missing.
Specifically:
Grid (group + tilelayout)
I disagree here. We should have the convenience class, it makes things
easier to find and illustrates proper use of the framework and its
layout
objects.
Also writing:
<s:TileGroup>
</s:TileGroup>
Is a lot less verbose than:
<s:Group>
<s:layout>
<s:TileLayout />
</s:layout>
</s:Group>
Plus it falls in line with the other convenience classes such as
<s:HGroup/> and <s:VGroup/> and it helps with migration for people
that
will immediately look to replace some MX layouts.
LinkBar (button bar + skin) <- new skin could be made easily
LinkButton (button + skin) <- new skin could be made easily
Again, while creating skins that mimic LinkButton and LinkBar I
still see
that convenience classes can help here. Instead of subclassing
s:Button,
writing a custom skin class, adding a click listener and writing up a
navigateToUrl() this call all be conveniently wrapped into a
component u
can use like this:
<s:LinkButton href="http://www.site.com/" target="_blank />
That is far more convenient and less code to write for a simple link
and
again helps to mitigate the migration path.
PopupButton (calloutbutton) <- needs to be generalized from just
mobile
specific
Agreed on this one.
Spacer (mx:spacer or rect)
My pet peeve here is having to still use the mx namespace. I wouldn't
really care if the s:Spacer was line for line identical to
mx:Spacer, its
just the lack of consistency that really drives me up the wall. Also,
couldn't we just use s:Rect and again make a convenience class just
to keep
the LoC shorter?
TileList (9as already posted list+tilelayout)
Again, this class would be a convenience class and would help mitigate
migration path from MX to Spark. It also falls in line with other
convenience classes such as s:HGroup and s:VGroup.
I'd prefer to have:
<s:TileList />
than
<s:List>
<s:layout>
<s:TileLayout />
<s:/layout>
</s:List>
ToggleButtonBar (buttonbar + skin) <- new skin could be made easily
ToggleButton !== Button, I think another component is needed here
no? Or
does s:ButtonBar have some properties that allow it to behave like a
ToggleButtonBar?
VRule and HRule (rect)
Again, a convenience class to help with migration. This could very
well
subclass s:Rect and just provide convenience setters to its styling
properties
All Charting (they are already very spark-ish)
I'm not sure on which way to go with these. They are definitely not
Spark-ish as they do not follow the Spark skinning model at all.
However
they have been deemed as performant enough by Adobe that they've
openly
said they're ok to work in mobile environments. I just think we
should at
least look at how the charting components can be improved in their
skinning
to be more inline with the Spark skinning model.
While I get the intention I think that to go down this path will
cause
confusion and also reduce people's abilities to see new features and
functionality (specifically in the case of TileList, HRule/VRule,
LinkButton... well all of them).
I would think that these can just be marked as resolved and ended.
I think the convenience classes are important as they both provide a
cleaner migration path while at the same time help to illustrate the
use of
core features of the framework, such as layouts.
With charting I could agree that there could be an update to make
skinning
them simpler but I have done many custom skins already with these
components.
--
Jonathan Campos
I agree its possible to customize the skins of these components. I
just
find it flawed that if we keep these MX charting components then
there are
two skinning approaches that have to be taken, and that's just not
nice. We
should try to Spark-ify the skinning model in the charting components.
--
Omar Gonzalez
s9tpep...@apache.org
Apache Flex PPMC Member