The Amethyst 2.0 Debug Canvas
When you’ve got a bug (and I have been known to come across the occasional home grown specimen), there’s often no one technique that will help you track it down. It’s important to have a good array of debugging tools at your disposal. Remember, if all you have is a hammer, then every problem looks like a nail.
One of the problems I find is that the debugging ‘stack trace’ often gives a rather one dimensional, linear view of the problem. It does indeed show how you got to the breakpoint or exception that the debugger is currently halted at. But with the standard Visual Studio debugger, all you can see is the place where you are at the moment.
If you want to see where you’ve been - the code that ran in order to get to the breakpoint - you have to use the Call Stack window to navigate around, and you lose the original view as you do so.
In Amethyst 2, we’ve built a new debugger interface that allows a different view of the code in the stack frames, using ‘bubbles’:
Here, you can see all of the relevant code in the stack frame. Each code bubble contains just the method that is involved in the stack frame with links showing which method was called. You can also move, stack, cascade and minimize the bubbles using either the mouse or a context menu:
If there are a lot of calls in the stack frame, you can minimise all the bubbles that are of little interest and the layout will be recalled next time you hit the breakpoint.
You can also create independent ‘method’ bubbles by clicking on a method header and selecting Create Method Bubble, so that with a complicated piece of code, you can create your own personalized view into the code text:
The bubbles are interactive mini-editors – you can type and edit text. We don’t implement IntelliSense or outlining in bubbles as I would expect most people to do serious editing in the main code window. However, debug tooltips are available,
This is a preview of the forthcoming version of Amethyst 2 – our ActionScript/Flash IDE for Visual Studio 2012 and 2010. If you buy Amethyst 1.0 for Visual Studio 2010 now you will be entitled to a free update to Amethyst 2 when it is released. See the Amethyst 2012 announcement for more information.