Customizing toString()

Monday, September 8th, 2008

When writing classes for a framework I usually put a custom toString method into important classes so that debugging becomes easier. Normally they would go like something along the lines of:

override public function toString():String {
	return "[ClassName]";
}

… Sometimes adding properties to the returned String that give back information about the class, e.g.

override public function toString():String {
	return "[ImageClass, size=" + _size + "]";
}

But writing them rigid like that is a disadvantage when you decide later to refactor class names. Admittedly it’s also not a very elegant way so I got the idea to take the class name that is returned by getQualifiedClassName(). The only problem is that getQualifiedClassName not only provides the type name but also the whole package String of the class. Regular Expressions to the rescue! After twiddling around with them for a while (I’m by no means a RegExp expert) I got my toString method into the shape that I desired:

override public function toString():String {
	return "[" + getQualifiedClassName(this).match("[^:]*$")[0] + ", size=" + _size + "]";
}

This way it matches the String returned by getQualifiedClassName with the Regular Expression [^:]*$ which checks from the right end for an arbitrary text up to the first occurring colon, but without including the colon. Taking the first element of the Array returned by match() and you got what you need!

A nice way of using this is when writing abstract classes that contain the toString method and any subclass can use that toString method without the need to override it … that is of course unless you want ot add other output information.

Alcon 3 Out Now!

Monday, August 25th, 2008

It took longer than expected thanks to obstacles like a crashed harddisk and other minorities in between but it’s finally done and I now can announce the immediate availability of Alcon 3! It runs currently on Windows and Mac and hopefully soon on Linux too. When I tested it on Ubuntu it installed and started fine but the LocalConnection seems not to cut it in the current alpha release of the Linux AIR Runtime. Anyone know more details about this?

I recommend to check out the Alcon Page for more details and of course the download link. Enjoy your debugging!

Alcon 3 Preview

Thursday, August 21st, 2008

Since so many of you (well, at least four people) are feverishly waiting for the release of Alcon 3 here’s a preview screenshot to comfort your waiting time. The shot shows Alcon’s trace output panel with some bogus Array being traced iteratively and as a hex dump. the top of the window displays Alcon’s new App Monitor which can be used to monitor framerate, frame render time and memory consumption. It also shows the version of the runtime that the monitored application is run in (clicking on the version text will list all System.capabilities properties in the Trace panel).

Then there’s the Options dialog with Trace options opened where you will be able to set font, colors etc. On the File Loggers Options you will be able to optionally enable up to two File Loggers that can be used for example to log the flashlog.txt to see output made by ActionScript’s own trace method.
There’s of course the new Object Inspector and a new Help panel for Quickstart Help and API Docs. Alcon 3 is being written 99% in ActionScript 3 using FDT (the 1% left being the Main.mxml that is necessary to compile a Flex application). It’s only a matter of a few days now until release, some bug fixing, finishing touches and a few more documentation to write and it will be out so please endure!

Announcing Alcon 3

Wednesday, July 23rd, 2008

Alcon 3 is in the works! The new version is being written for Adobe AIR and that means no more hackish OS integration! Thanks to AIR the debugging tool will run nice and smooth on any supported OS and it will restore your windows size and position where you last left it, Stay On Top works properly, auto-update etc. etc. etc.

Some of the new features besides the already existing Trace Command and File Loggers are a Memory Consumption and Frames-Per-Second Monitor, a completely new and improved Object Inspector that is finally useful for Debugging, an Options dialog to comfortably configure Alcon, proper AS2 support and a couple of other minorities here and there.

The progress moves on quick enough that I dare to say that the release date is only a few weeks away from now so sit tight, it’ll be there in a heartbeat.

Font Creation with Flex

Sunday, May 18th, 2008

Fontstruct is an online font creator whose editor has been obviously developed with Flex. Users can register and design their own fonts which are made available for download. Looks slick!

Container bug in Flex3 beta2

Friday, October 19th, 2007

Update: This bug has long been fixed by Adobe. Please ignore this post, Flex 3 is wonderful!

Makes me wonder why nobody else has yet written anything about this bug … when using any container component like for example a Panel or TitleWindow with a different borderStyle than the default, e.g. borderStyle: solid all your contents of that container reach into the the chrome of the Panel/Window/etc. pretty much messing up your layout. How could this escape the eyes of Adobe’s Flex devs? Here’s the thread at Adobe’s Flex forum. This is bad because it sort of prevents me from writing any Flex/AIR applications until this issue has been fixed, I’m using a custom theme for all my projects that use a solid borderStyle (similar to the one used in the Flex Style Explorer). The marvels of open beta software pushed by corporations for mere publicity purpose!

AIR application: FEAT (Freelancer’s Estimation Assistance Tool)

Wednesday, August 29th, 2007

I finally came to play a bit more with AIR and it’s specific features and wrote a small tool that is helpful for freelancers like you and me to make pricing estimation calculations. With FEAT you can calculate your hourly rate based on your expenses and some other factors and it provides a wizard to calculate project pricing estimates (another thing that is hard to get used to for many freelancing starters). It also stores all your values and changes its color if you want and can cook coffee and wash vegetables and …. ok wait, the last part is not true but still, this is a nifty little tool! Find more info and download at this LINK!

feat_screen_01_thumb.jpg

Using Flex 2 for GameDev Middleware

Tuesday, January 16th, 2007

While the whole world is hyping Rich Internet Applications, I’m sitting here in my lab and could not bother less! Flex is really neat and who says that it’s only useful for shopping- or flight-ticket booking systems?! Nobody? Good! I’m using Flex to develop my game development Middleware, i.e. editors like the TileSetTool that I’m working on (if I’m not working on the hexagon framework what I’m doing most of the time). When Flex2 was still really fresh I’ve pondered to use Java for this instead but as it turned out, ActionScript 3 is fast enough for most of my desired operations.
So for now this TileSetTool can be used to convert my (custom format) tileset XML files and their belonging tileset image files into combined tsc file which are compressed and saved to disk by the tool (using Zinc). This editor is probably just the first stage to a much more versatile tilemap editor. The tool uses parts of the hexagon framework which also will contain a tile engine to support the tilesets and maps.
It’s fantastic how quick you can knock an application out of the ground with Flex and AS3 while others are still fighting with their IDE.

You can click the image to see a full screenshot of the tool. In case you’re wondering … no, I’m not working on a Flash version of Uridium 2 (would be an idea though). The tileset is only for testing purposes.

Waiting for AS 3.0 Books

Monday, October 16th, 2006

A couple of days ago the ActionScript 3.0 Cookbook has been published. Obviously it’s a Must-Have but so far I resisted to buy it, waiting for some User Reviews on Amazon. Anyone else got it already? I would be interested in if many new stuff is covered or if it’s just a AS3.0 fitted version of the older AS Cookbook (though I doubt that when I read the authors names).

Then there is the highly anticipated Flex 2 book which is due for the 1. quarter next year and so it still takes a while until then. Another book I’m looking forward to is Advanced ActionScript 3 with Design Patterns, also by Joey Lott, especially because I still haven’t fully grasped patterns. Maybe this will help.

Changing the Syntax Color in Flex Builder 2.0

Wednesday, May 24th, 2006

Mike Morearty of Adobe wrote in his blog how to change the syntax colors in Flex Builder 2.0. This is useful stuff since I loathe the default blue and green colors of Flex’s syntax colors. Think about it! If you code the whole day long you have to look at your source all day long and you will look all the time at these colors! Sooner or later you start wearing blue shirts and green pants with pink socks! ;) To know this is even more important since Mike states in one of the comments that Flex 2.0 will not have any preferences to change these colors and that such a feature might be part of a later version. Another thing about the default syntax style that confuses me is that strings in quotes are in bold while keywords are not. I usually have it vice versa.

Welcome to H1DD3N.R350URC3!

These are the adventures of a random guy trying to be an independant game developer, utilizing ActionScript for programming and talking abouting gaming and nonsense in general.

Need any news feed?

 Main Feed (contains all categories), Dev Feed, Design Feed, Audio Feed, Gaming Feed, Miscellaneous Feed
Find entries: