Microsoft recently aquired Lookout, a company who’s search plug-in for Outlook I can’t recommend enough. After purchasing Lookout, Microsoft initially shut down sales of the product, but recently has released the plug-in for free, so if you use Outlook make sure to grab the plug-in. I can’t imagine using Outlook without it anymore.
You can download it here
Sapien has just posted the latest version of PrimalScript which adds support for the changes in file/folder locations in Flash 7.2 and support for multiple AS Class and Help Paths. On another note, some people may not know, but PrimalScrpit also support editing of MXML Files.
Click on Help > Check for Updates to download the latest version.
I’ve been too busy to Blog this earlier, but an article I wrote introducing methods of skinning Flash MX 2004 components was published on DevNet. In the article I detail different basic methods of skinning components that involve both using the library or code as well as discuss that pluses and minuses of each. I know there has been a lot of discussion and interest on the subject and hope you find this article helpful.
You can find the article here
The Alert component sizes itself based on content and doesn’t respond to setSize calls. However, the sizing doesn’t take embedded fonts into account and cuts off text when using embedded fonts.
To fix this bug we need to add two lines, one to mx.controls.alertClasses.AlertForm and another to mx.core.ext.UIObjectExtensions.
First in mx.controls.alertClasses.AlertForm find the getSize() function and add this line right before all of the current textMeasure_mc references.
textMeasure_mc.embedFonts = tf["embedFonts"];
Then in mx.core.ext.UIObjectExtensions find the TextFormat.prototype.getTextExtent2 mixin and add this line right after (and outside) the if statement.
_root._getTextExtent.embedFonts = this["embedFonts"];
If this bug is affecting you, you can choose to either make these changes directly to the core classes or create a local copy of the classes and change those, with a reference to them in each FLA’s classpath.
One of the additions to the Flash MX 2004 documentation that’s new with the 7.2 update is information and a list of steps on how to create a custom theme Defaults class. This is important when creating a new theme and you want to set the defaults for many components, as opposed to just a few style settings.
The complication with Defaults is that it has a reference from FocusRect so you need to provide both the Defaults class and the FocusRect class.
Download the example classes and FLA.
The example includes the two classes, Defaults and FocusRect, along with a FLA that has one component in it to demonstrate that the custom theme is being used.
The custom theme only makes the window title red, and thus could have been easier implemented using setStyle, but it’s meant as an example of creating a custom Defaults class and thus serves that purpose.
We had a need to use ASnative in a real application today for the first time. To our surprise, the first time we compiled we received this error message:
**Error** C:\CVSA\source\view\controls\DraggableTreeRow.as:
Line 99: There is no method with the name 'ASnative'.
if (ASnative(800, 2)(1)!=1) {
Total ActionScript Errors: 1 Reported Errors: 1
Turns out ASnative isn’t in toplevel.as, so it’s not recognized by the compiler as a valid function. This gave us two options: adding it to toplevel.as or calling it dynamically.
Adding it to toplevel.as makes the code less portable because all machines that compile the application need to have this modification. Instead, we opted for dynamic invocation, as in the following example.
if (["ASnative"](800, 2)(1)!=1) {
stopRowDrag();
}
Enjoy!
For more information on ASnative see this entry on the Flashcoders Wiki.
(btw, I’ll post on why I’m using it later)