Object.registerClass()

Availability

Flash Player 6. If you are using external class files, you can use the ActionScript 2.0 Class field in the Linkage Properties or Symbol Properties dialog box to associate an object with a class instead of using this method.

Usage

Object.registerClass(symbolID, theClass)

Parameters

symbolID The linkage identifier of the movie clip symbol, or the string identifier for the ActionScript class.

theClass A reference to the constructor function of the ActionScript class, or null to unregister the symbol.

Returns

If the class registration succeeds, a value of true is returned; otherwise, false is returned.

Description

Method; associates a movie clip symbol with an ActionScript object class. If a symbol doesn't exist, Flash creates an association between a string identifier and an object class.

When an instance of the specified movie clip symbol is placed by the Timeline, it is registered to the class specified by the theClass parameter rather than to class MovieClip.

When an instance of the specified movie clip symbol is created by means of MovieClip.attachMovie() or MovieClip.duplicateMovieClip(), it is registered to the class specified by theClass rather than to the MovieClip class. If theClass is null, this method removes any ActionScript class definition associated with the specified movie clip symbol or class identifier. For movie clip symbols, any existing instances of the movie clip remain unchanged, but new instances of the symbol are associated with the default class MovieClip.

If a symbol is already registered to a class, this method replaces it with the new registration.

When a movie clip instance is placed by the Timeline or created using attachMovie() or duplicateMovieClip(), ActionScript invokes the constructor for the appropriate class with the keyword this pointing to the object. The constructor function is invoked with no parameters.

If you use this method to register a movie clip with an ActionScript class other than MovieClip, the movie clip symbol doesn't inherit the methods, properties, and events of the built-in MovieClip class unless you include the MovieClip class in the prototype chain of the new class. The following code creates a new ActionScript class called theClass that inherits the properties of the MovieClip class:

theClass.prototype = new MovieClip();

See also

MovieClip.attachMovie(), MovieClip.duplicateMovieClip()