Archive for March, 2009


Easy tweaking of Flex component skins

We run a dark grey theme for our Print application. This has required quite a lot of tweaking to get it right and despite using the css way of configuring and skinning all components, Adobe did not have dark palettes in mind when they designed the Halo theme.


E.g.: to get the selected and rollover color right for lists, we had to extend and hack the Activator class because default color handling mixes the theme color with white to get the different shades needed. Which look quite odd in a dark theme. Continue reading ‘Easy tweaking of Flex component skins’


Program manager

Joel Spolsky of Fog Creek software has posted an interesting article:

Reading it was one of those “ah! I knew that” moments – where you’ve experienced something, but haven’t really put it into words.

The gist of the article is that a programming project needs someone who doesn’t write code to ensure that the end users needs aren’t forgotten. And that is really important because the person responsible for coding the project will almost inevitably focus on solving code problems, sacrificing end-user needs. I know that I do that myself. If I’m in charge of delivering code, that’s the focus; if I’m in charge of the design, end user needs are at the forefront. Continue reading ‘Program manager’


ErrorEvent – equivalent to throw new Error?

A technical question for you out there:

I had a class that dispatched an ErrorEvent which was not listened for by any other class. That resulted in the player popping up an error dialogue very similar to the one you get from throwing Errors – and not catching them.

Nice image – imagine a juggler throwing three or four Errors into the air and catching some of them.

The documentation for ErrorEvents says that ErrorEvents without listeners will be displayed by the debugger, but I can’t quite see how it’s handled. ErrorEvent inherits TextEvent, nothing special there. I just wonder how the flashPlayer detects these events. Is there hard coded special handling of Errors? Or are there attributes of the ErrorEvent that tells the player to treat it differently from other events?

File under “unecessary fidling with the API”