ActionScript for Flash MX: The Definitive Guide, 2nd Edition by Colin Moock The following errata were *corrected* in the 2/06 reprint: Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem (xxiv) last bullet point in the section entitled Chapter 13 Movie Clips; * Removed the quiz example, which is superceded by... NOW READS: * Removed the quiz example, which is superseded by... page 34, Example 1-4, the second comment; // Create an onscreen text field do display the user's score. NOW READS: // Create an onscreen text field to display the user's score. page 210, last line of the second code sample; initFormFields(editFields, highlightField); NOW READS: initFormFields(editFields, handleFieldFocus); page 243 Example 10-2, immediately before the example; The following HAS BEEN ADDED: "The box_mc clip must be square, and must have an initial size between box_mc.maxHeight and box_mc.minHeight." NOTE: For the curious, here's a version of the example that does not impose those limitations (though the added complexity distracts from the example's real focus, event handlers): // Set oscillation parameters. box_mc.scaleIncrement = 10; box_mc.maxHeight = 200; box_mc.minHeight = 20; // Start the box off at the maximum size. var heightRatio = box_mc._height / box_mc.maxHeight; box_mc._xscale /= heightRatio; box_mc._yscale /= heightRatio; // Adjust the scale increment to match the new size. box_mc.scaleIncrement /= heightRatio; // Resize the box with each passing frame. box_mc.onEnterFrame = function () { if (this._height >= this.maxHeight || this._height <= this.minHeight) { this.scaleIncrement = -this.scaleIncrement; } this._xscale += this.scaleIncrement; this._yscale += this.scaleIncrement; } page 622 IN PRINT: The entire "Mouse.removeListener() Method" entry HAS BEEN MOVED so that it appears before: the "Mouse.show() Method" entry page 625 IN PRINT: In Table R-12, the "Method description" for "loadMovie()"; "Loads an external .swf file into the Player." NOW READS: "Loads an external .swf or .jpg file into the Player." page 627 In Table R-14, the asterisk next to onLoad() HAS BEEN REMOVED (in accordance with the erratum for page 684). page 628 IN PRINT: In Table R-14; "onMouseMove() Primary mouse button is depressed and then released while the clip is on stage" and "onMouseUp() Mouse pointer moves (even a teensy bit) while the clip is on stage" NOW READ: "onMouseMove() Mouse pointer moves (even a teensy bit) while the clip is on stage" and "onMouseUp() Primary mouse button is depressed and then released while the clip is on stage" page 650 In the description for MovieClip._droptarget, the following sentence: "A movie clip is considered to be 'over' another clip if the registration point of the dragged clip overlaps any portion of the target clip." NOW READS: "A movie clip is considered to be 'over' another clip if the mouse pointer overlaps any portion of the target clip." page 684 IN PRINT: Second sentence at the top of the page: "It does not apply to main movies (e.g., _root, _level1, etc.)." NOW READS: "For main movies, onLoad() works only when assigned on frame one of the movie loaded onto _level0 in the Flash Player." page 819 IN PRINT: second to last prose paragraph on this page, the final two sentences of the paragraph: "Unfortunately, at the time of writing, a bug prevents this proxy-movie system from working in the current build of Flash Player 6 (6.0.61.0). Macromedia is aware of the issue and is working to address it." NOW READS: "Unfortunately, in releases of Flash Player 6 prior to version 6.0.47.0, a bug prevents this proxy-movie system from working. Source files demonstrating the technique are available at: http://www.moock.org/asdg/technotes/crossDomainLoad." {936} top of the page in the code example; if(myDoc.childNodes[i].nodeName.toUppercase() == "H1") NOW READS: if(myDoc.childNodes[i].nodeName.toUpperCase() == "H1") (949) all XMLNode section; The section on XMLNode was previously written as "XMLnode" (with a lowercase "n"). Flash MX 2004 is now case-sensitive, so it NOW APPEARS as: XMLNode.