I’ve been hearing a few “where did my components go?” questions from people working with Flash CS3 Professional. Just in case anyone is in that boat, don’t worry, they are still there!
If you set an FLA to export for ActionScript 1, or ActionScript 2, the components panel will automatically refresh with the components that you are familiar with from Flash 8 Professional. If you change the file to export for ActionScript 3.0, you will see the new components. Flash will always show you all the components that you are able to use given your export target.
In Flash CS3, the Flash team added a number of light-weight, easily skinnable components that are written in AS 3.0. However, since they are built to use the new ActionScript Virtual Machine (AVM2), they are only going to work in SWFs that are exported for Flash Player 9 or higher and for ActionScript 3.0.
For those that haven’t started working with Flash CS3 Professional yet, these components are hot! I have to admit that I have never liked components. I prefer to build things from the ground up myself and have complete design control. Also, my days of working on advertiser-related projects has left me with an obsession for small file sizes that has never let me use the AS2 components.
When I first started at Adobe and got to see behind the curtain, I was really shocked by the new components. The team had really listened to all of the objections about the components and done something about them.
Now, the components work off shared classes which means incremental growth in SWF size per additional component. The base component class is under 10K and is screaming fast. Grant Skinner showed an example of a data grid with ONE MILLION entries with text and images that scrolled smoothly, efficiently, and without spiking the processor.
Beyond the geek factor though, the components are skinnable in a way that makes sense to designers. Shifting sides of the brain for a moment, the way I edit a symbol in Flash is to double click on it, make my changes, and go back out to the parent of the instance I was editing. It allows me to see the object in the context of what I am creating. This was probably the most valuable feature among some pretty heavy hitting features in Flash 5.
In Flash CS3, the same is now true for components. If you double click on a components, something happens now! You will see all of the states and elements that make up the component as symbols laid out on the stage. They are nicely labeled in their custom layout, and all you have to do to change the styling is to double click again on the state you want to modify, make your changes and….. well, there is no more and. that’s it.
Back on the developer side though, you also have APIs to style the components at runtime if you happen to prefer things that way. You can also target all of the instances of a components, or just a single one. I’m pretty amazed by the many ways the new components keep demonstrating their flexibility.