Flex 4 States Syntax Changes

New specification on GMXML syntax for state has been posted http://opensource.adobe.com/wiki/display/flexsdk/Enhanced+States+Syntax

The idea is to make states more declarative and eliminate scripting as much as possible (completely in most cases). That should allow better model for programmatic skins for designers and simplify integration points.

Personally I think it is much simpler model, and it is going to get better acceptance just because of that. I would reserve my final review till the time new code generator is available so I can see integration points for really cinematographic applications our clients learned to love.

It looks also that MXML compiler goes through major overhaul. Please note “color.down” syntax – finally we see departure from old conventional XML markup toward DMXML ( Dynamic MXML). Seriously, if the new compiler is going to depart from pure XML syntax, let us talk about the new MXML syntax now – including color.runtime.down and other data related things that go way over simplistic CSS model.

I would also expect States have extensions for substate or at least device formats given Flex 4 release timeline. In other words,  what works for desktop is different from console and definetly from the phone – including selection of the controls, events and scripting. I would expect compiler to emit different SWFs for different format with full support through hierarchical states.

For majority of applications it is very significant change in the way customization and skinning is done. Switching to programmatic skins approach allows significantly reduce the size of flex applications and provide “streamable” applications with core functionality loadable fast. I do believe that major overhaul of tools to support it even with current model has to be done way before Flex 4 release. For large applications I have seen benefit in 30%–40% size application reduction and main problem for wide adoption is “dark programming” that makes it art of few.

Well, thanks to Flex team for “heads up” – back to daily tasks



Anatole Tartakovsky

Farata  Systems