Wednesday, October 3, 2007

What is Thermo?

Yesterday at Adobe MAX 2007 in Chicago, I had the pleasure of seeing a sneak peak at a potential future product of Adobe's codenamed Thermo. I'm a developer and not a designer and have never worked with a designer, but I can see the appeal of the product. Plus it is technically cool.

During the demo they took a UI mockup drawn in Adobe Photoshop with layers. Thermo converted that mockup int MXML. The converted MXML had new "graphics" tags that will be added to the language. The graphics tags draw (as you may guess) graphics primitives (boxes, lines, etc), text, images, etc. While not interactive yet, the mockup can be compiled as a Flex application.

Then the magic comes in. Graphics items are selected and turned into controls. For example a box with some text in it was turned into text input. Relatively simple yes, but the compiled Flex app was now interactive. Next they turned a row of Album images with a drawing of a scroll bar in it into a scrollable list of albums. Thermo took the images given to populate the list and could add data, import new images, or just duplicate the images so there was something to scroll.

Interaction was added to the application in the form of a rollover on the albums that zoomed in and showed the title and artist. Overall it was an impressive show of the transformation of graphics to an application.

The "Flex Roadmap" session shed some light on what might be going on behind the scenes in MXML for Thermo (and any other Flex development). From what I hear skinning a control isn't easy (I haven't done so) but the future version will make it easy. They will split the controls into a MVC like architecture with a Skin, Controller, and Model.

The Model encapsulates data, the controller behavior, and skin all of the UI. The skin is all done in declarative MXML using the graphics tags (including transitions). During this demo they showed how to skin a list control to look like a standard list, list with icons, behavior, turning a list into tabs, turing a list into an accordion.

I'm looking forward to the future of Flex.

No comments:

Post a Comment