Monthly Archives: September, 2007

MAX 2007 in Chicago is hitting record numbers!

We just got word that we are almost at 4000 attendees for MAX which will be at least 1600 people more than previous years. This is great! The more the merrier. It’s always fun to meet customers using our product, people we’ve conversed with over email and new faces to network with. There are a ton of sessions on Flex and Adobe AIR that I’m looking forward to going to. Even though I work at Adobe, I still tend to learn a lot from each of the sessions. Plus, I get to know some of Adobe’s other products that I don’t get as much exposure to. Specifically, I hope to attend “Flex on Rails”, “Working With Persistent Data in AIR”, “Customizing the Flex Framework” (Deepa is a great speaker, by the way), and maybe “Building AIR Applications in CS3” . Who knows… there are tons to choose from. And of course, at least half of the Flex team will be in attendance. I’m sure we’ll have a “Meet the Flex Team” event on one of the nights. I think that all of the AIR team will be in attendance as well.

If you haven’t registered for MAX yet, do it now!! Hotels are running out. You can register here.

The Flex Team is Hiring!

At our last team meeting, they were talking about the upcoming projects within the Flex organization and all of the jobs to fill to get it done. Word on the street is that we have about 13 job openings. Here is a rough breakdown of what we need:
– 4 Developers

– 7 QA enginners (Some of these will be on the Flex SDK team and others will be testing Flex tools)

– 2 Engineering Managers

– 1 Program Manager

I’m not sure if all of these are posted on adobe.com , but, did see a couple of them posted there.  If you want, you can leave me a private comment with your email address so that you can  pass a resume to me directly and I’ll get it to the right hiring managers.

Dynamic itemRenderer using a ComboBox

Someone on flexcoders asked how you would create an itemRenderer which sometimes displayed a ComboBox while not displaying it other times. I decided to try and create this itemRenderer. Since the visibility of this ComboBox would be determined by the data, I created a custom itemRenderer that changes the visibility of a ComboBox and a Label in the set data function.

Here is the Demo and Code –

Demo: dynamicItemRendererExample.swf

Sample Code: dynamicItemRendererExample.mxml , DynRenderer.mxml

I did not choose to use an editable DataGridColumn because in this example, changing one of the ComboBoxes in the “Available Colors” column doesn’t actually change the data for the ‘colors’ property of the dataProvider which is the dataField for this column. Therefore, the default editable DataGrid code doesn’t work since that code expects that if I edit a cell in the “Available Colors” column, I am wanting to change the ‘colors’ property in some way. Instead, I am handling all changes to data in my itemRenderer. I am updating my DataGrid’s dataProvider on the change event of the ComboBox.

Note, that this is the way that I solved this problem. This doesn’t necessarily reflect best practice or anything. I’m not 100% sure what best practice for this scenario is. I’m just providing one solution. Thanks!

Marquee Component

A while back the blog Flex Wares had a simple marquee component. But, I can’t seem to download it anymore, so, I decided to write my own. It was simple and only took a few minutes. Note, it may not be the most efficient, but, its just an example of using some of the Flex effect properties that don’t get as much press like repeatCount=0 (which makes an effect play forever) and repeatDelay. Here is the Flex Marquee in an Application:

Demo: indexMarquee.swf

Sample Code: indexMarquee.mxml, MyMarquee.mxml

The MyMarquee component is based on a Canvas, so you can change any of the properties or styles on it such as its width, height, backgroundColor etc. I’ve also added in a few other custom properties including:

direction: “left” or “right”. The default is “left”.

moveDuration: The time in milliseconds for the marquee to show the full text.;

marqueeText: The text displayed by the marquee;

textStyleName: A class selector defining the styles for the text. In the example, I change the default color, fontSize and fontWeight.

So, here is the code from my sample using the MyMarquee component:

<MyMarquee id=”mm” width=”200″ moveDuration=”20000″
marqueeText=”Thunder and lightning are rare in San Francisco.”
textStyleName=”myText” backgroundColor=”0x000000″ borderStyle=”inset”
borderThickness=”2″ />