Controls and Components

Display HTML Tables in Flash AS2.0

We all know Flash has very limited support of HTML markup, right? I had a recent AS2.0 update project where the client gave me content that included some tables, so I went looking for a 3rd party component that might be able to do the trick.

And I found it. I bought TableMaker for $24.99 from FlashRelief.

My content looks like this:

<table width='530' embedfont='GothamMedium' cellpadding='2' border='1' bordercolor='#000000'><tr bgcolor='#CCCCCC'><td>Intensity</td><td>Time</td><td>RPE</td><td>Talk Test</td></tr><tr><td>Warm up</td><td>4 min.</td><td>4-5</td><td>You can speak in full sentences (slightly breathless)</td></tr><tr><td>Speed burst</td><td>1 min.</td><td>8-9</td><td>You can only say short words (very breathless)</td></tr><tr><td>Recover</td><td>2 min.</td><td>4-5</td><td>You can speak in full sentences (slightly breathless)</td></tr><tr><td colspan='4'>Repeat speed burst/recovery combo 7 more times for a total of 8 intervals (heart rateZone 4/2), going directly from final recovery into cooldown.</td></tr><tr><td>Cool down</td><td>2 min.</td><td>3</td><td>You can speak easily</td></tr></table

For my needs, this component works flawlessly. You can embed fonts, style the cells, span columns, etc. By default it’s setup to load from an external file with HTML, HEAD, and BODY tags.

To load up content from a string looks like this:

var table_str:String "<html><body><table width='530' embedfont='GothamMedium' cellpadding='2' border='1' bordercolor='#000000'><tr bgcolor='#CCCCCC'><td>Intensity</td><td>Time</td><td>RPE</td><td>Talk Test</td></tr><tr><td>Warm up</td><td>4 min.</td><td>4-5</td><td>You can speak in full sentences (slightly breathless)</td></tr><tr><td>Speed burst</td><td>1 min.</td><td>8-9</td><td>You can only say short words (very breathless)</td></tr><tr><td>Recover</td><td>2 min.</td><td>4-5</td><td>You can speak in full sentences (slightly breathless)</td></tr><tr><td colspan='4'>Repeat speed burst/recovery combo 7 more times for a total of 8 intervals (heart rate: Zone 4/2), going directly from final recovery into cooldown.</td></tr><tr><td>Cool down</td><td>2 min.</td><td>3</td><td>You can speak easily</td></tr></table></body></html>";

_page _root.createEmptyMovieClip("_page"_root.getNextHighestDepth());
_page.attachMovie("TableMaker""_table"_page.getNextHighestDepth()); // TableMaker is the linkage name of this component in the Library
_page._table.onTableRendered = function() {
("page rendered");

Notice I’m also using an embedded font in the library named “GothamMedium”. The component also works behind masks and inside of ScrollPanes.

This is actually the first adventure back to AS2 I’ve done in over a year of all AS3 projects. I’m glad I found this component, because it saved me a lot of time AND impressed the client who wasn’t expecting to see a table in Flash.

Categories: FlashControls and ComponentsPermalink

My Relationship With 3rd Party Controls

There comes a point in this developer’s relationship with his faithful sidekick, the 3rd party control, when faith is broken.

Things have been going along well, everything I read on the website that the control could do is working, and everything I believe the control should do succeeds (beware the false expectation). The sun is shining and all is well with the world. And then it happens: something doesn’t work. Suddenly (well, it’s not sudden at all….) a black hole opens up and sucks away 2, 3, 4, 12 hours of my life trying to figure out if I’m doing something wrong with the control or if the control just flat doesn’t do what I thought it would.

Asking the right question is key to getting the right answer. I get that. So, I generally assume I’m a knucklehead and have done something wrong or incomplete.

My phases of conflict resolution with the offending sidekick go something like this:

  1) Documentation - is there an example of what I’m trying to accomplish that I can mimic? Is there a tutorial or decent reference entry to tell me that the property TextWrap is not just a boolean but will infact override every width setting and take my column from 760 pixels to a nicely (right) stacked column 20 pixels wide.

  2) Latest Version - do I have the latest and greatest? I don’t want to update to the latest unless I KNOW it solves my issue or discover it has strong merit otherwise. Who needs to swap 1 problem for 10.

  3) Knowledge Base - can you tell me anything I don’t already know that I don’t know from the documentation? No? Ok, next.

  4) Forums - aha, my friends the other knuckleheads are out in force and I will now likely discover that it’s not just me. Comfort at last…wait, it doesn’t work and the vendor (apart from promises) will not be doing anything about it even though every other vendor listed provides that same functionality. Well, at least I know have a list of other sidekicks to interview.

In fairness, I more often than not find the solution at some point along the way, and will on occasion jump straight to the forums for a quick search. And, of course, Google is a developer’s best friend.

Here are some of the ASP.NET sidekicks that have served me well in the past.

ComponentArt WebUI - I have had success with the menu, tabstrip, navbar, treeview and breadcrumb. I like the various design samples which makes bidding and creating comps easier.
Cute Editor - This wysiwyg editor weighs in a little on the heavy side, but has been extremely customizable and useful for me. I’ve liked the integrated file upload and image editing capabilities, but I’m not so much a fan of the client assets that I need to deploy along with the site.
Intersoft WebGrid - I use this control extensively in an intranet project where we needed a lot of onscreen filtering, grouping and sorting made easy. For that this grid fit the bill, but again is another control I’d say is on the heavy side. I would be extremely reluctant to use this grid elsewhere. I tried using their combo box control which had some promising features, but in the end was never able to deploy it. This was at the very early release of the ASP.NET Ajax toolkit and the combo box was just too buggy.

Do I even need to say I use the ASP.NET Ajax framework and Ajax Control Toolkit? However, you will not catch me using the update panel, sorry.

Other controls I’ve used:

  * Telerik RadControls Editor - used it a little and it seemed ok. Felt bulky and loaded slowly
  * TinyMCE - seems very lightweight and robust. This is one I’d like to spend more time with.

And while they don’t qualify as controls, I have at times found the following ORM and data access pieces invaluable:

  * Enterprise Library and before that SqlHelper
  * SubSonic - love it, but why in the world is MySql in medium trust such a nightmare?!
  * EntitySpaces - ok, I haven’t used this one yet in production because SubSonic has done very well, but gimme a week and I will. The ability to use SQL and MySql in medium trust is invaluable to me with the clients I have. Darn you SubSonic, why do you push me away?!?!

So who are your sidekicks that make life easier for you?

Categories: ASP.NETControls and ComponentsPermalink

In my Flash components panel right now…

To follow up on the ASP.NET controls that I regularly use, I thought I'd share the handy Flash components that have helped me solve a problem or two and save me a little time along the way.

Accordian Panel V3 (Jumpeye) - this is a nice and versatile control as far as accordians go. I was able to skin it extensively and achieve the site designers desired interface (

Bit Component Set ( - this is a very lightweight set for form controls for AS2. I find it very easy to skin personally, but more importantly for the designers that I work with. And did I mention lightweight? In a recent project I was able to replace native controls with these and the filesize dropped substantially.

Various Filters ( - these are filters that add nice effects when transitioning between images/_mcs.

Flash Tooltip ( - every now and then you just need a little tip

SlideShowPro - the definitive slideshow and gallery component for photos and videos. Like this and this

Sound Player Pro ( -  a slick and easily skinned mp3 player with playlist component. You can hear it used on this site

Ultimate Scroller ( - this is a handy little scroller that'll snap to just about anything you drop it on and scroll it.



Categories: FlashControls and ComponentsPermalink