You think macromedia code in perfect? try their combobox. Recently, i was in this project that loads external swfs into mcs. There were different mcs at different levels that loads swfs and some swfs contain drop downs. The mc that is one level down from _level0 was behaving correctly - combobox would be able to detect the border and know it'll not make it and rolls up. The one that is two levels down, got it wrong and rolls down and consequently rolls beneath the border.
Since redesigning the interface wasn't possible, so i could only debug the macromedia codes. But... where do i find the codes behind the combobox?
One thing - the combobox is stored as swc (components) and loaded into flash every time flash starts. Location is C:\Program Files\Macromedia\Flash 8\en\Configuration\Components\User Interface.
Second... how to generate these swcs...
to make swcs, or any flash objects, you'll need the fla, and the as file.
The AS: can be found @ C:\Program Files\Macromedia\Flash 8\en\First Run\Classes\mx\controls
The fla.. is found @ C:\Program Files\Macromedia\Flash 8\en\Configuration\ComponentFLA
The file you're looking for is StandardComponents.fla
It's a fla that contains all flash standard components there are.
So to make the swcs.. all you have to do is change the as file, and then right click on the comboxbox in the library and say "export to swc".. specify your location, and that's it..
Now the tricky thing is... and i think it's because i'm skinning the thing, so the source is not in the above location but in C:\Documents and Settings\kleong\Local Settings\Application Data\Macromedia\Flash 8\en\Configuration\Classes\mx\controls.
Very strange..
But that's the scoop.