These days, Flash users fall into two main categories:
designers, who can dream up amazing Flash user interfaces, and
developers, who spend most of their time pressing Ctrl+Enter. The Flash
developer is a relatively new moniker. It describes someone who prefers
to interact with Flash using a text editor, rather than manipulating
movie clips on the stage. This article is an overview of must-have
tools for Flash developers. Most of them are free, some are not. But
all of them can save you time and effort.
ActionScript Editors
The following text editors offer features, such as code hinting,
that are superior to Flash's built-in text editor. Some features, such
as class browsing, aren't even available in Flash MX 2004.
PrimalScript
Of the many available third-party ActionScript editors,
PrimalScript arguably offers the most features in a single package.
It'll set you back almost 200 bucks, but it's worth it. The best
feature of PrimalScript is its code hinting. Unlike Flash MX 2004,
PrimalScript offers code hinting for custom ActionScript classes, as
well as a class browser that provides a quick reference to classes'
properties and methods. It's also possible to compile Flash movies
directly from PrimalScript using a JSFL command or a third-party tool
such as MTASC. The only real drawback is the lack of CVS integration -
currently, PrimalScript only supports MSSCCAPI-compliant source control
systems such as Perforce, Visual SourceSafe, PVCS and StarTeam - but
hopefully this will be added in a future release.
For more information, see the free Community MX article and videos, "Coding for Flash with PrimalScript."
SE|PY ActionScript Editor
SE|PY ActionScript Editor is free and offers many of the features
available in PrimalScript, and even some that aren't, such as word
wrap, auto-complete, and collapsible code ("code folding"). If you want
to move beyond Flash's built-in text editor and don't want to spend the
money on PrimalScript, SE|PY is a good place to start.
SciTE|Flash
SciTE|Flash is a little geekier, and not as feature-rich as
PrimalScript or SE|PY, but it does offer limited code hinting,
auto-complete, code folding, and (like SE|PY) built-in support for the
Flash compiler Flush. Visit the following link to download the
SciTE|Flash installer.
Eclipse
If you're not familiar with Eclipse, it's a top-notch, Java-based
IDE. Because it's open source and extensible, Eclipse boasts a huge
number of free plugins that enable it to edit almost anything, from
ActionScript to PHP to XML. The most popular ActionScript plugin is AS
Development Tool (ASDT), although it still has a way to go before it
replaces the tools mentioned above. Eclipse also integrates with CVS
and command-line compilers such as MTASC.
Utilities
In this section, we look at a number of utilities- some built
specifically for Flash, some not - that help you get your work done
faster.
Screen Ruler
Screen Ruler is a $25 shareware utility that enables you to measure
anything on your screen, vertically and horizontally, in pixels,
inches, picas, and other units. Screen Ruler is especially useful if
you're working from comps or wireframes and need to extract the
dimensions of an image and its elements.
Eyedropper
Eyedropper, like Screen Ruler, is one of those simple utilities
that should be bundled with Windows but isn't. Once you use it, you'll
wonder how you ever lived without it. With Eyedropper, you can point
your cursor at any object on the screen and get its color information
in Hex, RGB, or CMYK format.
FLV MetaData Injector (FLVMDI)
FLVDMDI is a free command-line tool that enables you to add
metadata information to your Flash video (FLV) files. A visual
interface, FLVMDI GUI, is also available:
With FLVMDI, you can select one or more FLVs on your computer and
it inserts the correct metadata. This is a lifesaver if your client
encodes FLVs with a tool that doesn't insert metadata (metadata
properties, such as duration, are required by many Flash video
components). You can also use FLVMDI to correct metadata generated by
Sorenson Squeeze (see blog).
FLV Player
Martijn de Visser's FLV Player is a free Windows executable that
registers itself as the default handler for Flash video (FLV) files.
Once installed, it enables you to double-click any FLV on your computer
and watch the video. You can also get additional information about the
video, such as width, height, and duration, by right-clicking the
player and choosing Media Properties. If you do any work with Flash
video, this one is indispensable.
NetConnection Debugger
This panel is added to Flash MX 2004 when you install Flash
Remoting for Flash MX 2004 ActionScript 2.0. What many Flash users
don't realize is that you can also run NCD outside of the Flash IDE
(thanks to Tom Muck for this tip). Simply create a shortcut to the SWF
file. On Windows XP Pro, you'll find it here:
C:Documents and Settings[Username]Local SettingsApplication
DataMacromediaFlash MX
2004[Language]ConfigurationWindowSWFNetConnection Debugger.swf
You can use NetConnection Debugger to debug Flash Remoting
applications in the test player, the standalone Flash Player, and the
browser.
BLDoc Community Edition
BLDoc is a documentation generator for ActionScript 2.0. The free community edition is available if you join the beta program.
BLDoc generates docs in one of three formats: a Javadoc-style
framed HTML interface, a Flash (SWF) interface with a table of contents
and index, and intrinsic class files for third-party IDEs. For the best
results, you must use Java-style comments in your ActionScript, which
enforces good coding habits.
Applications
In this section, we look at some more advanced Flash development
tools to assist you with compiling, debugging, and source code
management.
ActionScript Viewer (ASV)
In addition to being a Flash decompiler, ActionScript Viewer (ASV)
offers additional tools, such as SOL Viewer and Editor, a plugin that
enables you to read and edit local shared objects generated by Flash.
ASV is most useful when you need to recover Flash code but no longer
have access to the original FLA source file. It can also be a useful
learning tool when you want to see how another developer achieved a
certain result.
I've used it mainly to convert components to external
ActionScript classes - this is often easier than remembering to tell
other developers on your team to install an extension - and to find
undocumented methods and properties in Flash and Central.
AdminTool
AdminTool is a unique third-party Flash debugger that uses the
LocalConnection class to display "trace" statements outside of the
Flash IDE. But that just scratches the surface. The free AdminTool also
enables you to take a snapshot of your application and inspect and
manipulate movie clips and other objects in real time - even audio and
video. You can think of AdminTool as a remote control for your Flash
movies. Currently, AdminTool can be implemented via a Flash component,
or an external ActionScript class, so it's easy to add to an
application.
For more information, see "Debugging Flash Applications with AdminTool" on Community MX.
Flash Resource Manager
Flash Resource Manager, created by Mike Chambers, aggregates
information from Flash help into a single application. It's
particularly useful if you author and compile Flash applications
without the Flash IDE. You can also search Flash community sites, and
add additional help files in Macromedia LiveDocs format, such as
ColdFusion 7 and Flex.
For more information, see "Using Flash Resource Manager" on Community MX.
Motion-Twin ActionScript 2 Compiler (MTASC)
What sets MTASC apart from other Flash compilers such as Flush and
FlashCommand is that Flash MX 2004 doesn't have to be running - or even
installed - to compile SWF files. However, MTASC is a command-line
compiler and not for the faint of heart. Similar to Java, the compiler
expects a static entry point method called main() and is much stricter
than Flash MX 2004, so you may have to do more debugging before your
app compiles successfully. The upside is that MTASC compiles much, much
faster than Flash. For more information, see the "Usage" and "Tutorial" sections.
TortoiseCVS
TortoiseCVS is a free CVS version control client for Windows. If
you're working on a team with multiple Flash developers, TortoiseCVS
enables you to check out a remote repository, add files, commit them
back to the repository, and update your local copy when other
developers make changes. What's nice about TortoiseCVS is that it
integrates with the Windows Explorer shell, so you can right-click
files to perform CVS operations, and you can tell at a glance if a file
has been added or committed to CVS. TortoiseCVS also offers built-in
support for WinMerge. This means you can right-click an ActionScript
file, choose CVS Diff, and WinMerge launches to display your current
file and the previous version side-by-side. This is useful when you're
committing a new version and need to make comments about the latest
changes.
For more information, see Arman Danesh's excellent five-part series, "Using Source Code Management," on Community MX.
Conclusion
We hope you enjoyed this article. If you would like to recommend
additional Flash-related tools for inclusion in this article, please
use the feedback form below.