Creating the Framework

The My Page framework is a single Flash movie, myPage.fla, which performs the following tasks:

  • Loads available module types from an XML file, which it uses to populate a menu

  • Creates a new visual container (a custom component instance) when a user chooses a module and loads the module into it

  • Remembers each module’s position and state between sessions using a local shared object

Sharing Common Functions

The first step in creating the framework is to create the SupportFunctions.as file, which is shared among all the Flash movies, including myPage.fla. SupportFunctions.as should contain the following code:

MovieClip.prototype.getNewDepth = function (  ) {
  // If no currentDepth is defined, initialize it to 1.
  if (this.currentDepth == undefined) {
    this.currentDepth = 1;
  }
  // Return the new depth and increment it by 1 for next time.
  return this.currentDepth++;
};

This code adds a getNewDepth( ) method to the MovieClip class such that all MovieClip objects inherit it. The getNewDepth( ) method generates a unique depth each time it is called. This is important because this chapter creates all application elements at runtime via ActionScript. Each dynamically created element must reside on its own depth to prevent elements from overwriting each other.

Configuring the Available Modules

Later in this chapter we create three modules that are made available to the framework. However, the framework should be able to accommodate other modules as well. We achieve this flexibility ...

Get Actionscript Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.