User Guide

6Contents
flash.text package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .342
flash.ui package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .342
flash.utils package. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .343
flash.xml package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .343
Chapter 13: Handling Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Introduction to Event Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .346
How ActionScript 3.0 event handling differs from earlier versions . 347
The event flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Event objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .352
Event listeners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .357
Example: Alarm Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .365
Chapter 14: Networking and Communication . . . . . . . . . . . . . . . 371
Working with external data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .372
Connecting to other Flash Player instances . . . . . . . . . . . . . . . . . . . . .379
Socket connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .385
Storing local data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Working with file upload and download . . . . . . . . . . . . . . . . . . . . . . . . 394
Example: Building a Telnet client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Example: Uploading and downloading files. . . . . . . . . . . . . . . . . . . . . 408
Chapter 15: Working with Geometry . . . . . . . . . . . . . . . . . . . . . . 417
Using Point objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Using Rectangle objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Using Matrix objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .423
Example: Applying a matrix transformation to a display object. . . . .428
Chapter 16: Client System Environment . . . . . . . . . . . . . . . . . . 433
System class. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .433
Capabilities class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .435
ApplicationDomain class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .436
IME class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Example: Detecting system capabilities. . . . . . . . . . . . . . . . . . . . . . . . 444
Chapter 17: Flash Player Security. . . . . . . . . . . . . . . . . . . . . . . . 449
Flash Player Security overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Overview of permission controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
Security sandboxes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
Restricting networking APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Full-screen mode security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .465