Archive for May, 2005

Alert component: non-modal pop-ups

Why, clever readers, did you know that you can use Flash MX Professional 2004’s Alert component to create non-modal pop-up windows instead of the default modal mode?

If you did, well, you can stop reading.

If you didn’t, you’re probably already typing up an angry email to me complaining how I haven’t defined the term “modal” or “nonmodal”. So, rest your ten angry digits and read on.

From our very own docs: A nonmodal window allows a user to interact with other windows in the application.

So, what this all means is that a modal Alert window prevents users from clicking on anything but the displayed Alert window itself. Therefore, a user can’t go any further until they dismiss the pop-up, similar to how the OS displays some error messages. A nonmodal Alert window lets users merrily click on either the Alert window or any components on gizmos underneath the Alert.

Enough of my jibber-jabber, on with some code…

Before you can test the code, add a copy of both the Button component and Alert component to your library. Add the follow code to Frame 1 of the main Timeline:

import mx.controls.Alert;

this.createClassObject(mx.controls.Button, “modal_button”, 10, {_x:10, _y:10});
this.createClassObject(mx.controls.Button, “nonmodal_button”, 20, {_x:120, _y:10});

modal_button.label = “modal”;
modal_button.addEventListener(“click”, modalListener); function modalListener(evt_obj:Object):Void {
var a:MovieClip =“This is a modal Alert window”, “Alert Test”, Alert.OK, this);
a.move(100, 100);

nonmodal_button.label = “nonmodal”;
nonmodal_button.addEventListener(“click”, nonmodalListener); function nonmodalListener(evt_obj:Object):Void {
var a:MovieClip =“This is a nonmodal Alert window”, “Alert Test”, Alert.OK | Alert.NONMODAL, this);
a.move(100, 100);

Test the movie, and click on the “modal” button to launch a modal window. This means you can no longer click on either of the Button instances on the Stage. Close the Alert and click the “nonmodal” button. Even though the nonmodal Alert window is visible, you can still click on either of the button instances on the Stage.

Thar ye be havin’ ‘t. Dasn’t say I neredo anythin’ fer ye. YAR!!!

Flash docs – now localized in Pirate?

If anyone be like me, you like pirates. And on occassion (to the irritation of co-workers), you speak in Pirate.

So I was thinking, why don’t we localize the documentation to Pirate? Would any of you strapping young buckaneers read it? Would it help make Flash easier? We’d easily have the capability to translate to Pirate, thanks to online Pirate translators.

For example, might see something along the lines of:

Usin’ layers
Layers be like transparent sheets o’ acetate stacked on top o’ each other. Layers help ye organize th’ artwork in yer document. Ye can draw an’ edit objects on one layer without affectin’ objects on another layer. ‘ere thar be nothin’ on a layer, ye can be seein’ through ‘t t’ th’ layers below. T’ draw, paint, or otherwise modify a layer or folder, ye select th’ layer t’ make ‘t active. A pencil icon next t’ a layer or folder name indicates that th’ layer or folder be active. Only one layer can be active at a time (although more than one layer can be selected at a time). When ye create a new Flash document, ‘t contains one layer. Ye can add more layers t’ organize th’ artwork, animation, an’ other elements in yer document. Th’ number o’ layers ye can create be limited only by yer computer`s memory, an’ layers do nay increase th’ file size o’ yer published SWF file. Ye can hide, lock, or rearrange layers. Ye can also organize an’ manage layers by creatin’ layer folders an’ placin’ layers in them. Ye can expand or collapse layers in th’ Timeline without affectin’ what ye be seein’ on th’ Stage. `Tis a good idee t’ use separate layers or folders fer sound files, actions, frame labels, an’ frame comments. This helps ye find these items smartly when ye need t’ edit them. In addition, ye can use special guide layers t’ make drawin’ an’ editin’ easier, an’ mask layers t’ help ye create sophisticated effects. Fer an interactive introduction t’ workin’ wi’ layers in Flash, select Help > How Do I > Basic Flash > Work wi’ Layers.

This section contains th’ followin’ topics:
* Creatin’ layers an’ layer folders
* Viewin’ layers an’ layer folders
* Editin’ layers an’ layer folders
* Organizin’ layers an’ layer folders
* Usin’ guide layers

Ya horn swollgin’ swabbie!

[This pirate-speak version of our documentation is courtesy of the much awesome web site:]


Protect FLV article

The latest edition of the EDGE (Macromedia newsletter) is out, featuring an interesting article on protecting FLV streams. I’ve had a couple people email me about setting up sites where users pay to watch FLV videos. Often, when you’re selling your content, you don’t want other people to rip it off. The service discussed in this article solves that problem. This article is by Tarun Bangari and Chris Hock.

For the latest EDGE, click here: The Macromedia user group managers are well represented this month!

Tech support rocks…

…especially Alan Musselman. The news here being this support guru just started a Macromedia weblog at this fine location:

Alan, now a member of team deseloper, is a big Fireworks nut, and also knows a whole lot about a wide range of products, including Flash. You have to be impressed by these multi-talented (and cool) guys in support (I sure am) – and it’s always good news when they start blogs.

But who cares what I think — stop reading my junk and go bookmark/aggregate/read his site!

Event Listeners in Flash Macrochat

So many Macrochats!! Here’s another, on Flash this time!

Event Listeners in Flash Macrochat
Tuesday, June 7, 2005
1:00 PM – 2:00 PM US/Eastern

To Register:

Event Listeners in Flash: From OnHandlers to Listener Objects–the right way! Many Flash developers are still using outdated event handlers to catch events. This was fine for ActionScript 1.0, but ActionScript 2.0 users and v2.0 components users should be using Listener Objects to catch events. Macromedia Product Support Engineer Bentley Wolfe will lead this live discussion on how to migrate away from On Event handlers and towards the correct use of listeners.

What You Will Learn

Using event handlers and click handlers
Where event handlers won

Nav bars in Dreamweaver MacroChat

Another MacroChat to consider:

Navigation Bars in Dreamweaver Macrochat
Tuesday, May 24, 2005
1:00 PM – 2:00 PM US/Eastern

Macromedia Support Engineer Larry Gonzales will lead this live product discussion on navigation bars in Dreamweaver. He will present several techniques available in Dreamweaver that allows developers to easily add JavaScript and CSS based Navigation bars to a web site. Larry will also discuss details and considerations about the different kinds of navbars that can be incorporated in a website.

What You Will Learn

* Brief overview of Navigation Bar types
* How to create a Navigation Bar Object in Dreamweaver
* Using an unordered list and CSS to create a Navbar in Dreamweaver
* Look at the features Fireworks MX 2004 affords Dreamweaver MX 2004 users for Navbars

Register here:

If you have any questions, please use the email address on the registration page (linked above). Enjoy!

ColdFusion, Flex and FlashLite (mobile) MacroChats

Three new MacroChats announced. Sign up using the links below! (Links only active before the event – after the event is over, these links 404).

Flex Your ColdFusion Muscles
Wednesday, May 11, 2005 12:00 PM – 1:00 PM US/Eastern

Team Macromedia member, Matt Woodward will lead this live discussion
on how Macromedia Flex offers ColdFusion developers an incredibly
powerful and easy way to build Rich Internet Applications (RIAs) by
combining their existing ColdFusion skills with the new capabilities
of Flex. Matt will discuss how an existing ColdFusion application can
be given a completely new RIA interface with surprisingly little code.
Matt will also illustrate some of the fantastic data presentation
capabilities of Flex and how ColdFusion developers can give their
users a better experience with RIAs built in Flex.

What You Will Learn
– A brief overview of what Flex is and how it works
– Why you should care about Flex and RIAs
– What applications are well-suited to be built as RIAs
– How to use ColdFusion and Flex to build RIAs

Register here:

Introduction to the onTap Framework for ColdFusion
Wednesday, May 18, 2005 6:00 PM – 7:00 PM US/Eastern

Team Macromedia member Isaac Dealey will provide an introduction to
the onTap framework, a robust framework for ColdFusion application
development available under the terms of the Lesser-GPL open-source
license. The framework’s features include platform independent
database management, i18n internationalization, a wealth of form
tools, modular / reuseable display and AJAX-like interface tools.

What You Will Learn
– What is a framework?
– What is the onTap framework?
– How to display content
– How to create and populate forms
– How to validate a form
– How to create and populate forms

Register here:

Applications for Mobile Devices using Flash Lite
Thursday, May 26, 2005 1:00 PM – 2:00 PM US/Eastern

This live Macrochat features Macromedia User Group Manager, Giorgio
Natili discussing Macromedia Flash Lite and the basic knowledge to
build a successful application for mobile devices. During the session
Giorgio will focus on the building blocks and usability aspects of
mobile applications.

Giorgio is the Manager of – MMUG and his passion for
Flash drives him to write tutorials for Italian web sites dealing with
Flash and ActionScript and to be a large presence on
macromedia.general.italy (Italian Macromedia Forums) in order to help
the Italian Flashers and explain the right use of Flash to build Rich
Internet Applications. Giorgio is a freelance Flash developer who
works on mobile projects in Rome, Italy.

What You Will Learn
– Devices and OS
– Using Flash MX 2004 to develop mobile applications
– Macromedia Flash Lite
– Application design and development processes
– Mobile applications usability

Register for this event at:

MediaPlayback scrubbing event

1. Drag a MediaPlayback instance onto the Stage.
2. Open the Component Inspector panel and enter an instance name of my_mp
3. Type in a URL to some FLV video of yours.
4. Open the Actions panel and paste the following code:

my_mp.addEventListener(“scrubbing”, scrubbingListener);
function scrubbingListener(evt_obj:Object):Void {
trace(evt_obj.type+” @ “+getTimer()+” ms (isScrubbing=”+evt_obj.detail+”)”);

5. Ctrl+Enter to test.
6. Scrub that video (that means drag the playhead). The Output panel will open and tell you where you scrub and true/false.

Don’t know if that’ll be useful to any of you or not, but there you are.

Flash player statistics updated

To read the latest Flash Player statistics, head to:

To read about how the survey is conducted, see: