Free ActionScript Specification V0.2

Rob Savoye


    
  

This specification describes version 0.2 of this document.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this link or in the file COPYING-DOCS distributed with this manual.

Revision History
Revision Free ActionScript Specification V0.2March 2007

Rob Savoye Updated for the alpha release.

Free Software Foundation


Table of Contents

Introduction
Specification
Authors
A. GNU Free Documentation License
0. PREAMBLE
1. APPLICABILITY AND DEFINITIONS
2. VERBATIM COPYING
3. COPYING IN QUANTITY
4. MODIFICATIONS
5. COMBINING DOCUMENTS
6. COLLECTIONS OF DOCUMENTS
7. AGGREGATION WITH INDEPENDENT WORKS
8. TRANSLATION
9. TERMINATION
10. FUTURE REVISIONS OF THIS LICENSE
Addendum

Introduction

This is an Freely redistributable specifiction for Flash ActionScript maintained by the open source community of Flash developers.

ActionScript, like JavaScript, is based on the ECMA 262 Specification. The current version that fully supports this is ActionScript, and is implemented in the current Adobe Flash player version 9. Prior versions of the Flash player used ActionScript 2, which implemented a subset of the fully specification, plus differed some.

Specification

Accessibility ActionScript Class

This class implements an Accessibility object.

The Methods of the Class

isActive()

Return whether a screen reader is in use.

updateProperties()

Change the display to use a screen reader.

Accessibility Class Conformance

Class Name

Conformance.

isActive()

This method is unimplemented.

updateProperties()

This method is unimplemented.

Array ActionScript Class

This class implements an array container.

The Methods of the Array Class

concat()

Concatenates two objects and returns a new array.

join()

Join all the array elements into a string.

pop()

Return the last element in the array by removing if from the array.

push()

Push an element onto the end of the array.

reverse()

Reverse the order of the elements in an array.

shift()

Return the first element in the array by removing if from the array.

sort()

Sort the elements in the array.

sortOn()

Sort the elements in the array based on one field.

Splice()

Return a subset of the array elements as a new array.

toString()

Return the elements in an array as a string.

unshift()

Place an element on the front of the array.

The Properties of the Array Class

length

The number of objects in the array.

Array Class Conformance

Class Name

Conformance

concat()

This method is implemented.

join()

This method is implemented.

pop()

This method is implemented.

push()

This method is implemented.

reverse()

This method is implemented.

shift()

This method is implemented.

slice()

This method is implemented.

sort()

This method is implemented.

sortOn()

This method is implemented.

splice()

This method is implemented.

toString()

This method is implemented.

unshift()

This method is implemented.

length

This property is implemented.

Boolean ActionScript Class

This class implements a Boolean object, the primary purpose of which is to return a string representation of a Boolean value.

The Methods of the Boolean Class

toString()

Concatenates two objects and returns a new Boolean.

valueOf()

Join all the Boolean elements into a string.

Boolean Class Conformance

Class Name

Conformance

toString()

This method is implemented.

valueOf()

This method is implemented.

Button ActionScript Class

This class implements an Button object.

The Methods of the Button Class

getDepth()

The Properties of the Button Class

_alpha

enabled

_focusrect

_height

menu

_name

_parent

_quality

_rotation

_soundbuftime

tabEnabled

tabIndex

_target

trackAsMenu

_url

useHandCursor

_visible

_width

_x

_xmouse

_xscale

_y

_ymouse

_yscale

The Event Handlers of the Button Class

onDragOut

onDragOver

onKeyDown

onKeyUp

onKillFocus

onPress

onRelease

onReleaseOutside

onRollOut

onRollOver

onSetFocus

Button Class Conformance

Class Name

Conformance

getDepth()

This method is implemented.

_alpha

This property is implemented.

enabled

This property has an unknown status.

_focusrect

This property is implemented.

_height

This property is implemented.

_menu

This property is unimplemented.

_name

This property is implemented.

_parent

This property is implemented.

_quality

This property is implemented.

_rotation

This property is implemented.

_soundbuftime

This property is implemented.

_tabEnabled

This property is unimplemented.

_tabIndex

This property is unimplemented.

_target

This property is implemented.

_trackAsMenu

This property is unimplemented.

_url

This property is implemented.

_useHandCursor

This property is unimplemented.

_visible

This property is implemented.

_width

This property is implemented.

_x

This property is implemented.

_xmouse

This property is implemented.

_xscale

This property is implemented.

_y

This property is implemented.

_ymouse

This property is implemented.

_yscale

This property is implemented.

onDragOut

This event handler is implemented.

onDragOver

This event handler is implemented.

onKeyDown

This event handler is implemented.

onKeyUp

This event handler is implemented.

onKillFocus

This event handler is not implemented.

onPress

This event handler is implemented.

onRelease

This event handler is implemented.

onReleaseOutside

This event handler is not implemented.

onRollOut

This event handler is not implemented.

onRollOver

This event handler is not implemented.

onSetDocus

This event handler is not implemented.

Camera ActionScript Class

This class implements an Camera object.

The Methods of the Class

get()

setMode()

setMotionLevel()

setQuality()

The Properties of the Camera Class

activityLevel

bandwidth

currentFps

fps

height

index

motionLevel

motionTimeOut

muted

name

names

onActivity

onStatus

quality

width

Camera Class Conformance

Class Name

Conformance

get()

This method is unimplemented.

setMode()

This method is unimplemented.

setMotionLevel()

This method is unimplemented.

setQuality()

This method is unimplemented.

activityLevel

This property is unimplemented.

bandwidth

This property is unimplemented.

currentFps

This property is unimplemented.

fps

This property is unimplemented.

height

This property is unimplemented.

index

This property is unimplemented.

motionLevel

This property is unimplemented.

motionTimeOut

This property is unimplemented.

muted

This property is unimplemented.

name

This property is unimplemented.

names

This property is unimplemented.

onActivity

This property is unimplemented.

onStatus

This property is unimplemented.

quality

This property is unimplemented.

width

This property is unimplemented.

Color ActionScript Class

This class implements an Color object.

The Methods of the Class

getRGB()

getTransform()

setRGB()

setTransform()

The Properties of the Color Class

Color Class Conformance

Class Name

Conformance

getRGB()

This method has an unknown status.

getTransform()

This method has an unknown status.

setRGB()

This method has an unknown status.

setTransform()

This method has an unknown status.

ContextMenu ActionScript Class

This class implements an ContextMenu object.

The Methods of the Class

copy()

Return a copy of the menu.

hideBuiltInItems()

Hide most menu items.

The Properties of the ContextMenu Class

builtInItems

Returns an array of the built-in menu items.

customItems

An undefined array to contain menu item names.

onSelect

Called before the menu is displayed.

ContextMenu Class Conformance

Class Name

Conformance

copy()

This method is unimplemented.

hideBuiltInItems()

This method is unimplemented.

builtInItems

This property is unimplemented.

customItems

This property is unimplemented.

onSelect

This property is unimplemented.

Math ActionScript Class

This class implements an Math object.

The Methods of the Math Class

abs()

acos()

asin()

atan()

atan2()

ceil()

cos()

exp()

floor()

log()

max()

min()

pow()

random()

round()

sin()

sqrt()

tan()

The Properties of the Math Class

E

LN2

LN10

LOG2E

LOG10E

PI

SQRT1_2

SQRT2

Math Class Conformance

Class Name

Conformance

abs()

This method is implemented.

acos()

This method is implemented.

asin()

This method is implemented.

atan()

This method is implemented.

atan2()

This method is implemented.

ceil()

This method is implemented.

cos()

This method is implemented.

exp()

This method is implemented.

floor()

This method is implemented.

log()

This method is implemented.

max()

This method is implemented.

min()

This method is implemented.

pow()

This method is implemented.

random()

This method is implemented.

round()

This method is implemented.

sin()

This method is implemented.

sqrt()

This method is implemented.

tan()

This method is implemented.

E

This property is implemented.

LN2

This property is implemented.

LN10

This property is implemented.

LOG2E

This property is implemented.

LOG10E

This property is implemented.

PI

This property is implemented.

SQRT1_2

This property is implemented.

SQRT2

This property is implemented.

NetConnection ActionScript Class

This class implements an NetConnection object. The NetConnection object opens a client connection to load an FLV video file from a local system, or a remote one using the RTMP or RTMPT protocols. RTMP connections use port 1935, and RTMPT connections use port 80.

This class was first introduced for swf v7 and the behavior has recently changed slightly to allow the loading of files from external systems. Prior to this, you were required to pass NULL to this class. Gnash handles both cases. The older behavior is default when connecting to the local filesystem for the file.

The URL that can be passed to connect() in newer versions of the swf format is as follows:

      protocol:[//host][:port]/appname/[instanceName]
    

For protocol, specify either RTMP or RTMPT. If rtmp is specified, Flash Player will create a client connection. If RTMPT is specified, Flash Player will create an HTTP "tunneling" connection to the server.

You can omit the host parameter if the Flash movie is served from localhost. If the instanceName parameter is omitted, Flash Player connects to the application's default instance (_definst_).

The Methods of the Class
NetConnection.connect(const char *)

Connect to a local or remote system to load a FLV file. Arg can be NULL, or a URL.

NetConnection Class Conformance

Class Name

Conformance

NetConnection.connect()

This method is partially implemented. It can only be used in conjunction with the NetStream and Video classes; it cannot load a FLV file by itself.

Number ActionScript Class

This class implements an Number object.

The Methods of the Number Class

toString()

valueOf()

The Properties of the Number Class

MAX_VALUE

MIN_VALUE

NaN

NEGATIVE_INFINITY

POSITIVE_INFINITY

Number Class Conformance

Class Name

Conformance

MAX_VALUE

Unimplemented.

MIN_VALUE

Unimplemented.

NaN

Implemented.

NEGATIVE_INFINITY

Implemented.

POSITIVE_INFINITY

Implemented.

toString()

Implemented.

valueOf()

Implemented.

String ActionScript Class

This class implements an String object.

The Methods of the String Class

charAt()

charCodeAt()

concat()

fromCharCode()

indexOf()

lastIndexOf()

slice()

split()

substr()

substring()

toLowerCase()

toUpperCase()

The Properties of the String Class

length

The length of the string.

String Class Conformance

Class Name

Conformance

charAt()

This method is implemented.

charCodeAt()

This method is implemented.

concat()

This method is not implemented.

fromCharCode()

This method is implemented.

indexOf()

This method is implemented.

lastIndexOf()

This method is not implemented.

slice()

This method is not implemented.

split()

This method is not implemented.

substr()

This method is not implemented.

substring()

This method is implemented.

toLowerCase()

The method is implemented.

toUpperCase()

This method is implemented.

length

This property is implemented.

CustomActions ActionScript Class

This class implements an CustomActions object.

The Methods of the Class

get()

install()

list()

uninstall()

The Properties of the CustomActions Class

CustomActions Class Conformance

Class Name

Conformance

get()

This method is unimplemented.

install()

This method is unimplemented.

list()

This method is unimplemented.

uninstall()

This method is unimplemented.

Date ActionScript Class

This class implements the Date object.

The Methods of the Class

getDate()

Returns a Date's day-of-month from 1 to 31 according to local time.

getDay()

Returns the day-of-the-week for a Date, according to local time, in the range 0-6 where 0 means Sunday and 6 means Saturday.

getFullYear()

Returns the Gregorian year number for a Date, according to local time. Since Gnash currently uses POSIX date routines internally, this probably only works for dates from 13 Dec 1901 to 19 Jan 2038.

getHours()

Returns the hour-of-the-day for a Date, according to local time, in the range 0-23.

getMilliseconds()

Returns the milliseconds component of a Date as an integer in the range 0-999.

getMinutes()

Returns the minutes-past-the-hour for a Date, according to local time, in the range 0-59.

getMonth()

Returns the month of the year for a Date, according to local time, in the range 0-11 where 0 means January and 11 means December.

getSeconds()

Returns the seconds past the minute for a Date, in the range 0-59.

getTime()

Returns the number of milliseconds elapsed since 1 Jan 1970 00:00:00 in Universal Coordinated Time, as a floating point number: fractions of milliseconds are included. Negative values indicate times before 1 Jan 1970.

getTimezoneOffset()

Returns the difference between Universal Coordinated Time and the local time represented by a Date, including Daylight Savings Time if it was in effect at that time in the current locale. The return value is in minutes; negative for timezones east of Greenwich and positive for those west of Greenwich.

For example in the GMT+1 timezone, one hour east of Greenwich, for a time when DST was not in effect, the result would be -60. In the same timezone when DST is in effect, the extra hour in advance of UTC makes the value -120. Positive values are returned for locales west of Greenwich.

getUTCDate()

Returns a Date's day-of-month from 1 to 31, according to Universal Coordinated Time.

getUTCDay()

Returns the day-of-the-week for a Date, according to local time, in the range 0-6 where 0 means Sunday and 6 means Saturday.

getUTCFullYear()

Returns the Gregorian year number for a Date, according to Universal Coordinated Time. Since Gnash currently uses POSIX date routines internally, this probably only works for dates from 13 Dec 1901 to 19 Jan 2038.

getUTCHours()

Returns the hour-of-the-day for a Date, according to Universal Coordinated Time, in the range 0-23.

getUTCMilliseconds()

Returns the milliseconds component of a Date as an integer in the range 0-999.

getUTCMinutes()

Returns the minutes-past-the-hour for a Date, according to Universal Coordinated Time, in the range 0-59.

getUTCMonth()

Returns the month of the year for a Date, according to Universal Coordinated Time, in the range 0-11 where 0 means January and 11 means December.

getUTCSeconds()

Returns the seconds past the minute for a Date, in the range 0-59.

getYear()

Returns the number of Gregorian years elapsed between 1900 and a Date, according to local time.

For dates past 1st Jan 2000 it returns values from 100 onwards; for years before 1900 it returns negative values.

This function is a historical wart left over from the days when nobody could believe we would still be using Flash in 2000.

setDate(dayofmonth)

Sets the day-of-month for a Date object, in the range 1-31, leaving the year, month, and time-of-day unchanged for valid values.

If dayofmonth is greater than the number of days in the month in question, it wraps into the following month: for example, trying to set the 35th to a date in January will result in the 4th of February. If it is zero or negative, this will take the Date back to a previous month and possibly a previous year.

If there are no parameters to setDate, if dayofmonth is not of type Number (or a String that contains a decimal number or the Boolean values "true" and "false", which behave the same as 1 and 0) is an infinity or NotANumber, this sets the value of the Date object to "Not A Number", which is converted to a string as "Invalid date".

setFullYear(year,[month[,dayofmonth]])

If a single parameter is given, this sets the Gregorian year number for a Date, normally leaving the month and day-of-month unchanged.

When changing from a leap year to a non-leap year when the date is set to 29th February, the resulting date is 1st March of the same year.

If month, and maybe dayofmonth, are also given, they simultaneously set the month (and day of month), following the usual rules whereby excessively large or negative values carry over to affect the month or year and still give a valid date.

If any supplied value cannot be converted to a valid number, the Date's value is set to NotANumber.

setHours(hour)

Sets the hour-of-the-day, normally in the range 0-23, leaving the calendar date and minutes/seconds unchanged.

Values greater than 23 will make the date roll over to one of the following days; negative values will result in previous dates. If no parameter is given, or if it is not of a type that can be converted to a number, the resulting date value is NotANumber, which prints as "Invalid date".

setMilliseconds()

Sets the milliseconds with a resolution of one millisecond: fractional parts of a millisecond are ignored.

The parameter is normally a value from 0-999, but values outside this range will carry over into, or borrow from, the seconds (and minutes, hours etc if necessary).

If no parameters are given, or if the parameter cannot be converted to a number, the Date's value is set to NotANumber. Any extra parameters are ignored.

setMinutes(minutes[,seconds[,milliseconds]])

Sets the minutes-past-the-hour normally in the range 0-59, leaving the calendar date and hour/seconds unchanged.

"Minutes" greater than 59 carry over into the hours (and may consequently advance the date); simiarly, negative values borrow from them.

The optional second and third parameters simultaneously set the seconds and millisecond components, with similar carry/borrow if they are outside the ranges 0-59 and 0-999; fractions of seconds and milliseconds are ignored.

If no parameter is given, or if it is not of a type that can be converted to a number, the resulting date value is NotANumber, which prints as "Invalid date". Gnash differs from the commercial Flash player in this, which, given a non-numeric value for "minutes", returns a seemingly random date such as 9th December, 2077 BC.

setMonth(month[,day])

Sets the month of the year, normally in the range 0-11, leaving the year and time of day (in localtime) unchanged.

Values greater than 11 will make the date roll over into a following year; negative values will result in previous years.

If only the month is given, the new month has less days that the old, and the day-of-month is beyond the end of the new month, the date wraps over into the first days of the month after the specified one. Gnash differs in this from the commercial player, which leaves the date set to the last day of the requested month.

If no parameter is given, or if it is not of a type that can be converted to a number, the month is set to January without changing the year.

If the optional extra parameter "day" is given, both the month and day-of-month are set. As usual, day numbers beyond the last day of the selected month wrap over into the following month(s), and negative values take us back to previous months and possibly years.

Unlike the "month" parameter, non-numeric values for "day" result in the Date's value being set to NotANumber.

Any further parameters are ignored.

setSeconds(seconds[,milliseconds])

Sets the seconds component of a Date. If the value of "seconds" is from 0-59, the hours and minutes will be unchanged.

An optional extra parameter can be used to simultanously set the milliseconds, though only to a precision of one millisecond: fractions of milliseconds can be given but are ignored). Likewise, any fractional part of a second is ignored.

As usual, values outside the range 0-999 for milliseconds are (added or subtracted) from the seconds, and values outside the range 0-59 for the seconds carry over into the minutes, hours etc.

Non-numerical values for "seconds" or "milliseconds" result in the Date's value being set to NotANumber.

setTime()

Sets a Date object to a specified number of milliseconds since 1 Jan 1970 in Universal Coordinated Time. Fractions of milliseconds are ignored; the only way to set a a date to sub-millisecond accuracy is to use the single-argument version of the Date constructor.

If no parameters are supplied, or if the parameter cannot be converted to a number, the Date's value is set to NotANumber.

setUTCDate()

Is the same as setDate(), but specifying the time in Universal Coordinated Time.

setUTCFullYear()

Is the same as setFullYear(), but specifying the time in Universal Coordinated Time.

setUTCHours()

Is the same as setHours(), but specifying the time in Universal Coordinated Time.

setUTCMilliseconds()

Is the same as setMilliseconds().

setUTCMinutes()

Is the same as setMinutes(), but specifying the time in Universal Coordinated Time.

This differs from setMinutes in countries that have a time offset that is not a whole number of hours and on Lord Howe Island which also has daylight savings time of half an hour.

setUTCMonth()

Is the same as setMonth(), but specifying the time in Universal Coordinated Time.

setUTCSeconds()

Is the same as setSeconds(),

setYear(year[,month[,dayofmonth]])

Is the same as setFullYear(), except that values from 0 to 99 specify the years 1900 to 1999, and negative values specify a year prior to 1900. Thus the only way to specify the year 55AD with this method is to use -1845.

toString()

Converts a Date object to a printable string in the form "Thu Jan 1 00:00:00 GMT+0000 1970" in local time, according to the local timezone and whether Daylight Saving Time was in force at the time in question.

If the Date's value is NotANumber or Infinity, the string "Invalid Date" is returned.

UTC(year,month[,dayofmonth[,hour[,minutes[,seconds[,milliseconds]]]]])

Is a static function that converts the specified time, expressed in Universal Coordinated Time, to a Date value. It is most often used in conjunction with the Date constructor or the setTime method, to create a Date object according to UTC.

All parameters are 0-based except "month" which is 1-based, and the usual carry/borrow rules apply for oversized and negative values.

A missing day-of-month defaults to the first of the month; the other parameters default to zero.

If less than two paramemters are supplied, or if any supplied parameters cannot be converted to numeric values, the Date's value is set to NotANumber.

Date Class Conformance

Class Name

Conformance

getDate()

Implemented.

getDay()

Implemented.

getFullYear()

Implemented.

getHours()

Implemented.

getMilliseconds()

Implemented.

getMinutes()

Implemented.

getMonth()

Implemented.

getSeconds()

Implemented.

getTime()

Implemented.

getTimezoneOffset()

Implemented.

getUTCDate()

Implemented.

getUTCDay()

Implemented.

getUTCFullYear()

Implemented.

getUTCHours()

Implemented.

getUTCMilliseconds()

Implemented.

getUTCMinutes()

Implemented.

getUTCMonth()

Implemented.

getUTCSeconds()

Implemented.

getYear()

Implemented.

setDate()

Implemented.

setFullYear()

Implemented.

setHours()

Implemented.

setMilliseconds()

Implemented.

setMinutes()

Implemented.

The commercial player, given d.setMinutes(), leaves the date set to a random value such as 9th December 2077 BC. Gnash gives NotANumber, in the same way as all the other functions.

setMonth()

Implemented.

setSeconds()

Implemented.

setTime()

Implemented.

setUTCDate()

Implemented.

setUTCFullYear()

Implemented.

setUTCHours()

Implemented.

setUTCMilliseconds()

Implemented.

setUTCMinutes()

Implemented. See setMinutes above.

setUTCMonth()

Implemented.

setUTCSeconds()

Implemented.

setYear()

Implemented.

toString()

Implemented.

UTC()

Implemented.

The commercial player, given Date.UTC(Infinity, 0), returns -6.77681005679712e+19; Gnash returns NAN if any parameter is non-numeric.

Error ActionScript Class

This class implements an Error object.

The Methods of the Class

toString()

Returns the error object as a string

The Properties of the Error Class

message

Returns an error message as a string.

name

Returns the name of the error object.

Error Class Conformance

Class Name

Conformance

toString()

This method is unimplemented.

message

This property is unimplemented.

name

This property is unimplemented.

Function ActionScript Class

This class implements an Function object.

The Methods of the Class

apply()

call()

The Properties of the Function Class

Function Class Conformance

Class Name

Conformance

apply()

This method has an unknown status.

call()

This method has an unknown status.

Key ActionScript Class

This class implements an Key object.

The Methods of the Class

addListener()

Add a callback for key up and down events.

getAscii()

Return the ASCII value of the key.

getCode()

Return the key code of the key.

isDown()

Returns true if the specified key is down.

isToggled()

Returns true if the Num Lock key is on.

removeListener()

Remove the event handler.

The Properties of the Key Class

BACKSPACE

A constant representing the backspace key.

CAPSLOCK

A constant representing the Caps Lock key.

CONTROL

A constant representing the Control key.

DELETEKEY

A constant representing the Delete key.

DOWN

A constant representing the Down arrow key.

END

A constant representing the End key.

ENTER

A constant representing the Enter key.

ESCAPE

A constant representing the Escape key.

HOME

A constant representing the Home key.

INSERT

A constant representing the Insert key.

LEFT

A constant representing the left arrow key.

PGDN

A constant representing the Page Down key.

PGUP

A constant representing the Page Up key.

RIGHT

A constant representing the right arrow key.

SHIFT

A constant representing the shift key.

SPACE

TAB

A constant representing the space bar.

UP

A constant representing the up arrow key.

Key Class Event Handlers
onKeyDown

onKeyUp

Key Class Conformance

Class Name

Conformance

addListener()

This method is implemented.

getAscii()

This method is implemented.

getCode()

This method is implemented.

isDown()

This method is implemented.

isToggled()

This method is implemented.

removeListener()

This method is implemented.

BACKSPACE

This constant is implemented.

CAPSLOCK

This constant is implemented.

CONTROL

This constant is implemented.

DELETEKEY

This constant is implemented.

DOWN

This constant is implemented.

END

This constant is implemented.

ENTER

This constant is implemented.

ESCAPE

This constant is implemented.

HOME

This constant is implemented.

INSERT

This constant is implemented.

LEFT

This constant is implemented.

onKeyDown

This constant is implemented.

onKeyUp

This constant is implemented.

PGDN

This constant is implemented.

PGUP

This constant is implemented.

RIGHT

This constant is implemented.

SHIFT

This constant is implemented.

SPACE

This constant is implemented.

TAB

This constant is implemented.

UP

This constant is implemented.

LoadVars ActionScript Class

This class implements an LoadVars object.

The Methods of the Class

addRequestHeader()

decode()

getBytesLoaded()

getBytesTotal()

load()

send()

sendAndLoad()

toString()

The Properties of the LoadVars Class

contentType

loaded

onData

onLoad

LoadVars Class Conformance

Class Name

Conformance

addRequestHeader()

This method is unimplemented.

decode()

This method is unimplemented.

getBytesLoaded()

This method is unimplemented.

getBytesTotal()

This method is unimplemented.

load()

This method is unimplemented.

send()

This method is unimplemented.

sendAndLoad()

This method is unimplemented.

toString()

This method is unimplemented.

contentType

This property is unimplemented.

loaded

This property is unimplemented.

onData

This property is unimplemented.

onLoad

This property is unimplemented.

LocalConnection ActionScript Class

This class implements an LocalConnection object. This is basically a Flash version of the a standard RPC (Remote Procedure Call). This is used to have multiple flash movies exchange data without converting it to XML first. This class uses shared memory to transfer the data in the AMF format.

There is some documentation of the AMF format online, but not much. There appear to be a few free AMF projects, but none that I could find have any code. So I'm stuck developing a C/C++ based AMF library to transfer data.

The Methods of the Class

close()

Close the current open connection, and remove the shared memory segment.

connect(const char *)

This establishes a connection point so other movies can remotely execute methods in this movie. The shared memory segment is created in a form that can be attached to by a client. The code that actually remotely executes a method has yet to be written for Gnash.

domain()

This returns the network domain for this connection. The default is to return "localhost".

send()

Execute a method of the local object. Data is encoded in the AMF format.

The Event Handlers of the LocalConnection Class

allowDomain

Called for every method being executed.

allowInsecureDomain

Called when a request is received over the network.

onStatus

Returns the status of the method that was executed.

LocalConnection Class Conformance

Class Name

Conformance

close()

This method is implemented.

connect()

This method is implemented.

domain()

This method is implemented.

send()

This method is unimplemented.

allowDomain

This property is unimplemented.

allowInsecureDomain

This property is unimplemented.

onStatus

This property is unimplemented.

Microphone ActionScript Class

This class implements an Microphone object.

The Methods of the Class

get()

setGain()

setRate()

setSilenceLevel()

setUseEchoSuppression()

The Properties of the Microphone Class

activityLevel

gain

index

muted

name

names

onActivity

onStatus

rate

silenceLevel

silenceTimeOut

useEchoSuppression

Microphone Class Conformance

Class Name

Conformance

get()

This method is unimplemented.

setGain()

This method is unimplemented.

setRate()

This method is unimplemented.

setSilenceLevel()

This method is unimplemented.

setUseEchoSuppression()

This method is unimplemented.

activityLevel

This property is unimplemented.

gain

This property is unimplemented.

index

This property is unimplemented.

muted

This property is unimplemented.

name

This property is unimplemented.

names

This property is unimplemented.

onActivity

This property is unimplemented.

onStatus

This property has an unknown status.

rate

This property has an unknown status.

silenceLevel

This property has an unknown status.

silenceTimeOut

This property has an unknown status.

useEchoSuppression

This property has an unknown status.

Mouse ActionScript Class

This class implements an Mouse object.

The Methods of the Class

addListener()

hide()

removeListener()

show()

The Properties of the Mouse Class

onMouseDown

onMouseMove

onMouseUp

onMouseWheel

Mouse Class Conformance

Class Name

Conformance

addListener()

This method is unimplemented.

hide()

This method is unimplemented.

removeListener()

This method is unimplemented.

show()

This method is unimplemented.

onMouseDown

This property is unimplemented.

onMouseMove

This property is unimplemented.

onMouseUp

This property is unimplemented.

onMouseWheel

This property is unimplemented.

MovieClip ActionScript Class

This class implements an MovieClip object.

The Methods of the Class

attachAudio()

attachMovie()

beginFill([rgba])

Set fill color for subsequent drawing. The value is interpreted as a 32bit integer composed of red (highest byte), green, blue and alpha (lowest byte). If first argument is missing the fill color will be black with alpha 255.

beginGradientFill()

clear()

Clear all dynamic drawing on this MovieClip.

createEmptyMovieClip(name, depth)

Create an empty movieclip and place it in this clip displaylist at the given depth. Return a reference to the created clip. If called with less the two arguments the method returns undefined and no action is taken. TOCHECK: what if a character with the given name already exist ? TOCHECK: what if a character at the given depth already exist ?

createTextField()

curveTo(cx, cy, ax, ay)

Draw a quadratic bezier curve with current linestyle and current fill from current pen position to the anchor point ax,ay using control point cx, cy. If any argument is missing nothing is drawn. The function always returns undefined.

duplicateMovieClip(newname, newdepth, [initObject])

Make a clone of this MovieClip and place it in this MovieClip parent's DisplayList. If given a third argument, it will be taken as an object to use for initializing properties of the clone. Return the cloned object. An absolute root movieclip (_levelx) can not be duplicated, if attempted, no action is taken and undefined is returned. TOCHECK: what if a character with the given name already exists in parent's display list ? TOCHECK: what if a character at the given depth already exists in parent's display list ? TODO: add info about what does it mean to 'clone' (what's cloned and what not).

endFill()

Reset any fill information. Next drawing calls will not be filled. If a fill was in effect (see beginFill and beginGradientFill) the current path is closed so that last point equals the first point of the filled shape.

getBounds([target])

Returns an object with members 'xMin', 'yMin', 'xMax' and 'yMax' representing the bounding box of this MovieClip. When called with no args the bounding box is in local coordinate space. When given an character as first argument, the bounding box is in the given character's coordinate space.

getBytesLoaded()

getBytesTotal()

getDepth()

Return the depth on this character in its parent DisplayList. TOCHECK: what's returned when called against a character with no parent (_levelx) ?

getInstanceAtDepth()

getNextHighestDepth()

Return the next available depth for placing a new character in this MovieClip displaylist. TOCHECK: if depths 1 and 3 are occupied, returns 4, not 2 , right ? NOTE: this function always return a number >= 0, negative depths are never returned.

getSWFVersion()

TOCHECK : I don't think there's such a function ...

getTextSnapshot()

getURL()

globalToLocal(obj)

Take members 'x', and 'y' in the object 'obj' and transform them from global to local coordinate space. If the parameter doesn't cast to an object, or the object doesn't contain both 'x' and 'y', the call is invalid and nothing is modified.

gotoAndPlay()

gotoAndStop()

hitTest(target), hitTest(x,y), hitTest(x,y,shapeFlag)

In the first form, check for the bounding boxes of this and target characters to intersect. In the second and third form, check if the given point is inside the bounding box or the visible shape of this character; shapeFlag (false) in the 2 args version says wheter actual shape or just bounds has to be checked; coordinates values are in Stage coordinate space.

lineStyle(), lineStyle(thickness, [color])

In the first form (no args) it will reset all line style info so that next drawing will have a transparent drawing. Note that by 'transparent' is not intended 0-alpha as no color transformation will be able to augment the alpha value. The line is simply always invisible instead.

In the second form, set thickness and color of strokes for subsequent drawing. If color is omitted, it defaults to black with 255 alpha. If thickness is zero the line will always be an 'hariline', which is always displaied with the same width at any scale. Other thickness will be in pixels and scale togheter with the MovieClip itself.

lineTo(x, y)

Draw a straight line from current position to point x,y using current styles.

loadMovie()

loadVariables()

localToGlobal(obj)

Take members 'x', and 'y' in the object 'obj' and transform them from local to global coordinate space. If the parameter doesn't cast to an object, or the object doesn't contain both 'x' and 'y', the call is invalid and nothing is modified.

moveTo()

nextFrame()

play()

prevFrame()

removeMovieClip()

setMask()

startDrag()

stop()

stopDrag()

swapDepths()

unloadMovie()

The Properties of the MovieClip Class

_alpha

_currentframe

_droptarget

enabled

focusEnabled

_focusrect

_framesloaded

_height

hitArea

_lockroot

menu

_name

This is a read-write property of MovieClip objects. Changing the _name property of a MovieClip also changes it's _target and the _target of any child.

Dynamically-created clips are always created with a name, while for statically defined one this is optional in the SWF, but will be syntetized by the player if missing. TODO: check if _name reflects the syntetized naming (_instancex). For the root movie syntetization doesn't happen and the _name property is the empty string for SWF6 and higher or null for SWF5 and lower.

Valid values for _name are: ....

NOTE: mm player7 and player9 differ on typeof(_root._name) on startup.

onData

onDragOut

onDragOver

onEnterFrame

onKeyDown

onKeyUp

onKillFocus

onLoad

onMouseDown

onMouseMove

onMouseUp

onPress

onRelease

onReleaseOutside

onRollOut

onRollOver

onSetFocus

onUnload

_parent

_quality

_rotation

_soundbuftime

tabChildren

tabEnabled

tabIndex

_target

_totalframes

trackAsMenu

_url

useHandCursor

_visible

_width

_x

_xmouse

_xscale

_y

_ymouse

_yscale

MovieClip Class Conformance

Class Name

Conformance

attachAudio()

This method has an unknown status.

attachMovie()

This method has an unknown status.

beginFill()

Implemented and tested.

beginGradientFill()

This method has an unknown status.

clear()

Implemented and tested.

createEmptyMovieClip()

Implemented and tested. Needs more tests for corner cases (ie: depth occupied or name existing).

createTextField()

This method has an unknown status.

curveTo()

Implemented and tested.

duplicateMovieClip()

Implemented and tested. Needs more testing.

endFill()

Implemented and tested.

getBounds()

Implemented and tested.

getBytesLoaded()

This method has an unknown status.

getBytesTotal()

This method has an unknown status.

getDepth()

Implemented and tested.

getInstanceAtDepth()

This method has an unknown status.

getNextHighestDepth()

Implemented and tested. Needs more tests.

getSWFVersion()

This method has an unknown status.

getTextSnapshot()

This method has an unknown status.

getURL()

This method has an unknown status.

globalToLocal()

Implemented and tested in Gnash.

gotoAndPlay()

This method has an unknown status.

gotoAndStop()

This method has an unknown status.

hitTest()

Implemented and tested in Gnash.

lineStyle()

Implemented and tested.

lineTo()

Implemented and tested.

loadMovie()

This method has an unknown status.

loadVariables()

This method has an unknown status.

localToGlobal()

Implemented and tested in Gnash.

moveTo()

This method has an unknown status.

nextFrame()

This method has an unknown status.

play()

This method has an unknown status.

prevFrame()

This method has an unknown status.

removeMovieClip()

This method has an unknown status.

setMask()

This method has an unknown status.

startDrag()

This method has an unknown status.

stop()

This method has an unknown status.

stopDrag()

This method has an unknown status.

swapDepths()

This method has an unknown status.

unloadMovie()

This method has an unknown status.

_alpha

This property has an unknown status.

_currentframe

This property has an unknown status.

_droptarget

This property has an unknown status.

enabled

This property has an unknown status.

focusEnabled

This property has an unknown status.

_focusrect

This property has an unknown status.

_framesloaded

This property has an unknown status.

_height

This property has an unknown status.

hitArea

This property has an unknown status.

_lockroot

This property has an unknown status.

menu

This property has an unknown status.

_name

This property has an unknown status.

onData

This property has an unknown status.

onDragOut

This property has an unknown status.

onDragOver

This property has an unknown status.

onEnterFrame

This property has an unknown status.

onKeyDown

This property has an unknown status.

onKeyUp

This property has an unknown status.

onKillFocus

This property has an unknown status.

onLoad

This property has an unknown status.

onMouseDown

This property has an unknown status.

onMouseMove

This property has an unknown status.

onMouseUp

This property has an unknown status.

onPress

This property has an unknown status.

onRelease

This property has an unknown status.

onReleaseOutside

This property has an unknown status.

onRollOut

This property has an unknown status.

onRollOver

This property has an unknown status.

onSetFocus

This property has an unknown status.

onUnload

This property has an unknown status.

_parent

This property has an unknown status.

_quality

This property has an unknown status.

_rotation

This property has an unknown status.

_soundbuftime

This property has an unknown status.

tabChildren

This property has an unknown status.

tabEnabled

This property has an unknown status.

tabIndex

This property has an unknown status.

_target

This property has an unknown status.

_totalframes

This property has an unknown status.

trackAsMenu

This property has an unknown status.

_url

This property has an unknown status.

useHandCursor

This property has an unknown status.

_visible

This property has an unknown status.

_width

This property has an unknown status.

_x

This property has an unknown status.

_xmouse

This property has an unknown status.

_xscale

This property has an unknown status.

_y

This property has an unknown status.

_ymouse

This property has an unknown status.

_yscale

This property has an unknown status.

MovieClipLoader ActionScript Class

This class implements an MovieClipLoader object.

The Methods of the Class

addListener()

getProgress()

loadClip()

removeListener()

unloadClip()

The Properties of the MovieClipLoader Class

onLoadComplete

onLoadError

onLoadInit

onLoadProgress

onLoadStart

MovieClipLoader Class Conformance

Class Name

Conformance

addListener()

This method has an unknown status.

getProgress()

This method has an unknown status.

loadClip()

This method has an unknown status.

removeListener()

This method has an unknown status.

unloadClip()

This method has an unknown status.

onLoadComplete

This property has an unknown status.

onLoadError

This property has an unknown status.

onLoadInit

This property has an unknown status.

onLoadProgress

This property has an unknown status.

onLoadStart

This property has an unknown status.

NetStream ActionScript Class

This class implements an NetStream object.

The Methods of the Class

close()

pause()

play()

seek()

setBufferTime()

The Properties of the NetStream Class

bufferLength

bufferTime

bytesLoaded

bytesTotal

currentFps

onStatus

time

NetStream Class Conformance

Class Name

Conformance

close()

This method is unimplemented.

pause()

This method is unimplemented.

play()

This method is unimplemented.

seek()

This method is unimplemented.

setBufferTime()

This method is unimplemented.

bufferLength

This property is unimplemented.

bufferTime

This property is unimplemented.

bytesLoaded

This property is unimplemented.

bytesTotal

This property is unimplemented.

currentFps

This property is unimplemented.

onStatus

This property is unimplemented.

time

This property is unimplemented.

Selection ActionScript Class

This class implements an Selection object.

The Methods of the Class

addListener()

getBeginIndex()

getCaretIndex()

getEndIndex()

getFocus()

removeListener()

setFocus()

setSelection()

The Properties of the Selection Class

onSetFocus

Selection Class Conformance

Class Name

Conformance

addListener()

This method is unimplemented.

getBeginIndex()

This method is unimplemented.

getCaretIndex()

This method is unimplemented.

getEndIndex()

This method is unimplemented.

getFocus()

This method is unimplemented.

removeListener()

This method is unimplemented.

setFocus()

This method is unimplemented.

setSelection()

This method is unimplemented.

onSetFocus

This property is unimplemented.

SharedObject ActionScript Class

This class implements an SharedObject object.

The Methods of the Class

clear()

flush()

getLocal()

getSize()

The Properties of the SharedObject Class

data

onStatus

SharedObject Class Conformance

Class Name

Conformance

clear()

This method is unimplemented.

flush()

This method is unimplemented.

getLocal()

This method is unimplemented.

getSize()

This method is unimplemented.

data

This property is unimplemented.

onStatus

This property is unimplemented.

Sound ActionScript Class

This class implements an Sound object.

The Methods of the Class

attachSound()

Attach the specified sound.

getBytesLoaded()

Returns how many bytes of the sound have been loaded.

getBytesTotal()

Returns the total size of the sound.

getPan()

Returns the value of the previous call to setPan().

getTransform()

Returns the value of the previous call to setTransform().

getVolume()

Returns the value of the previous call to setVolumne().

loadSound()

Load an MP3 file.

setPan()

Change the balance.

setTransform()

Set the channel amounts for each speaker.

setVolume()

Set the volume for playing.

start()

Play the loaded sound.

stop()

Stop playing the sound.

The Properties of the Sound Class

duration

The length in milliseconds of the sound.

id3

Returns the ID3 tag of an MP3 file.

position

Returns the amount of time the sound has been playing.

Event Handlers of the Sound Class

onID3

Called when ID3 data is available.

onLoad

Called when a sound is loaded.

onSoundComplete

Called when a sound is done playing.

Sound Class Conformance

Class Name

Conformance

attachSound()

This method is implemented.

getBytesLoaded()

This method has an unknown status.

getBytesTotal()

This method has an unknown status.

getPan()

This method is unimplemented.

getTransform()

This method has an unknown status.

getVolume()

This method is unimplemented.

loadSound()

This method is unimplemented.

setPan()

This method is unimplemented.

setTransform()

This method is unimplemented.

setVolume()

This method is unimplemented.

start()

This method is implemented.

stop()

This method is implemented.

duration

This property has an unknown status.

id3

This property is unimplemented.

onID3

This event handler is unimplemented.

onLoad

This event handler is unimplemented.

onSoundComplete

This event handler is unimplemented.

position

This property is implemented.

Stage ActionScript Class

This class implements an Stage object.

The Methods of the Class

addListener()

removeListener()

The Properties of the Stage Class

align

height

onResize

scaleMode

showMenu

width

Stage Class Conformance

Class Name

Conformance

addListener()

This method is unimplemented.

removeListener()

This method is unimplemented.

align

This property is unimplemented.

height

This property is unimplemented.

onResize

This property is unimplemented.

scaleMode

This property is unimplemented.

showMenu

This property is unimplemented.

width

This property is unimplemented.

System ActionScript Class

This class implements an System object.

The Methods of the Class

security.allowDomain()

security.allowInsecureDomain()

security.loadPolicyFile()

setClipboard()

showSettings()

The Properties of the System Class

capabilities

object

capabilities.avHardwareDisable

capabilities.hasAccessibility

capabilities.hasAudio

capabilities.hasAudioEncoder

capabilities.hasEmbeddedVideo

capabilities.hasMP3

capabilities.hasPrinting

capabilities.hasScreenBroadcast

capabilities.hasScreenPlayback

capabilities.hasStreamingAudio

capabilities.hasStreamingVideo

capabilities.hasVideoEncoder

capabilities.isDebugger

capabilities.language

capabilities.localFileReadDisable

capabilities.manufacturer

capabilities.os

capabilities.pixelAspectRatio

capabilities.playerType

capabilities.screenColor

capabilities.screenDPI

capabilities.screenResolutionX

capabilities.screenResolutionY

capabilities.serverString

capabilities.version

security

object

exactSettings

onStatus

useCodepage

System Class Conformance

Class Name

Conformance

security.allowDomain()

This method has an unknown status.

security.allowInsecureDomain()

This method has an unknown status.

security.loadPolicyFile()

This method has an unknown status.

setClipboard()

This method has an unknown status.

showSettings()

This method has an unknown status.

capabilities

This property has an unknown status.

object

This property has an unknown status.

capabilities.avHardwareDisable

This property has an unknown status.

capabilities.hasAccessibility

This property has an unknown status.

capabilities.hasAudio

This property has an unknown status.

capabilities.hasAudioEncoder

This property has an unknown status.

capabilities.hasEmbeddedVideo

This property has an unknown status.

capabilities.hasMP3

This property has an unknown status.

capabilities.hasPrinting

This property has an unknown status.

capabilities.hasScreenBroadcast

This property has an unknown status.

capabilities.hasScreenPlayback

This property has an unknown status.

capabilities.hasStreamingAudio

This property has an unknown status.

capabilities.hasStreamingVideo

This property has an unknown status.

capabilities.hasVideoEncoder

This property has an unknown status.

capabilities.isDebugger

This property has an unknown status.

capabilities.language

This property has an unknown status.

capabilities.localFileReadDisable

This property has an unknown status.

capabilities.manufacturer

This property has an unknown status.

capabilities.os

This property has an unknown status.

capabilities.pixelAspectRatio

This property has an unknown status.

capabilities.playerType

This property has an unknown status.

capabilities.screenColor

This property has an unknown status.

capabilities.screenDPI

This property has an unknown status.

capabilities.screenResolutionX

This property has an unknown status.

capabilities.screenResolutionY

This property has an unknown status.

capabilities.serverString

This property has an unknown status.

capabilities.version

This property has an unknown status.

security

This property has an unknown status.

object

This property has an unknown status.

exactSettings

This property has an unknown status.

onStatus

This property has an unknown status.

useCodepage

This property has an unknown status.

TextField ActionScript Class

This class implements an TextField object.

The Methods of the Class

StyleSheet.clear()

StyleSheet.getStyle()

StyleSheet.getStyleNames()

StyleSheet.load()

StyleSheet.parseCSS()

StyleSheet.setStyle()

StyleSheet.transform()

addListener()

getDepth()

getFontList()

getNewTextFormat()

getTextFormat()

removeListener()

removeTextField()

replaceSel()

replaceText()

setNewTextFormat()

setTextFormat()

The Properties of the TextField Class

StyleSheet

class

StyleSheet.onLoad

_alpha

autoSize

background

backgroundColor

border

borderColor

bottomScroll

condenseWhite

embedFonts

_height

hscroll

html

htmlText

length

maxChars

maxhscroll

maxscroll

menu

mouseWheelEnabled

multiline

_name

onChanged

onKillFocus

onScroller

onSetFocus

_parent

password

_quality

restrict

_rotation

scroll

selectable

styleSheet

tabEnabled

tabIndex

_target

text

textColor

textHeight

textWidth

type

_url

variable

_visible

_width

wordWrap

_x

_xmouse

_xscale

_y

_ymouse

_yscale

TextField Class Conformance

Class Name

Conformance

StyleSheet.clear()

This method has an unknown status.

StyleSheet.getStyle()

This method has an unknown status.

StyleSheet.getStyleNames()

This method has an unknown status.

StyleSheet.load()

This method has an unknown status.

StyleSheet.parseCSS()

This method has an unknown status.

StyleSheet.setStyle()

This method has an unknown status.

StyleSheet.transform()

This method has an unknown status.

addListener()

This method has an unknown status.

getDepth()

This method has an unknown status.

getFontList()

This method has an unknown status.

getNewTextFormat()

This method has an unknown status.

getTextFormat()

This method has an unknown status.

removeListener()

This method has an unknown status.

removeTextField()

This method has an unknown status.

replaceSel()

This method has an unknown status.

replaceText()

This method has an unknown status.

setNewTextFormat()

This method has an unknown status.

setTextFormat()

This method has an unknown status.

StyleSheet

This property has an unknown status.

class

This property has an unknown status.

StyleSheet.onLoad

This property has an unknown status.

_alpha

This property has an unknown status.

autoSize

This property has an unknown status.

background

This property has an unknown status.

backgroundColor

This property has an unknown status.

border

This property has an unknown status.

borderColor

This property has an unknown status.

bottomScroll

This property has an unknown status.

condenseWhite

This property has an unknown status.

embedFonts

This property has an unknown status.

_height

This property has an unknown status.

hscroll

This property has an unknown status.

html

This property has an unknown status.

htmlText

This property has an unknown status.

length

This property has an unknown status.

maxChars

This property has an unknown status.

maxhscroll

This property has an unknown status.

maxscroll

This property has an unknown status.

menu

This property has an unknown status.

mouseWheelEnabled

This property has an unknown status.

multiline

This property has an unknown status.

_name

This property has an unknown status.

onChanged

This property has an unknown status.

onKillFocus

This property has an unknown status.

onScroller

This property has an unknown status.

onSetFocus

This property has an unknown status.

_parent

This property has an unknown status.

password

This property has an unknown status.

_quality

This property has an unknown status.

restrict

This property has an unknown status.

_rotation

This property has an unknown status.

scroll

This property has an unknown status.

selectable

This property has an unknown status.

styleSheet

This property has an unknown status.

tabEnabled

This property has an unknown status.

tabIndex

This property has an unknown status.

_target

This property has an unknown status.

text

This property has an unknown status.

textColor

This property has an unknown status.

textHeight

This property has an unknown status.

textWidth

This property has an unknown status.

type

This property has an unknown status.

_url

This property has an unknown status.

variable

This property has an unknown status.

_visible

This property has an unknown status.

_width

This property has an unknown status.

wordWrap

This property has an unknown status.

_x

This property has an unknown status.

_xmouse

This property has an unknown status.

_xscale

This property has an unknown status.

_y

This property has an unknown status.

_ymouse

This property has an unknown status.

_yscale

This property has an unknown status.

TextFormat ActionScript Class

This class implements an TextFormat object.

The Methods of the Class

getTextExtent()

The Properties of the TextFormat Class

align

blockIndent

bold

bullet

color

font

indent

italic

leadingxmlsocket.xml

leftMargin

rightMargin

size

tabStops

target

underline

url

TextFormat Class Conformance

Class Name

Conformance

getTextExtent()

This method has an unknown status.

align

This property has an unknown status.

blockIndent

This property has an unknown status.

bold

This property has an unknown status.

bullet

This property has an unknown status.

color

This property has an unknown status.

font

This property has an unknown status.

indent

This property has an unknown status.

italic

This property has an unknown status.

leadingxmlsocket.xml

This property has an unknown status.

leftMargin

This property has an unknown status.

rightMargin

This property has an unknown status.

size

This property has an unknown status.

tabStops

This property has an unknown status.

target

This property has an unknown status.

underline

This property has an unknown status.

url

This property has an unknown status.

TextSnapshot ActionScript Class

This class implements an TextSnapshot object.

The Methods of the Class

findText()

getCount()

getSelected()

getSelectedText()

getText()

hitTestTextNearPos()

setSelectColor()

setSelected()

The Properties of the TextSnapshot Class

TextSnapshot Class Conformance

Class Name

Conformance

findText()

This method is unimplemented.

getCount()

This method is unimplemented.

getSelected()

This method is unimplemented.

getSelectedText()

This method is unimplemented.

getText()

This method is unimplemented.

hitTestTextNearPos()

This method has an unknown status.

setSelectColor()

This method has an unknown status.

setSelected()

This method has an unknown status.

Video ActionScript Class

This class implements an Video object.

The Methods of the Class

attachVideo()

clear()

The Properties of the Video Class

deblocking

height

smoothing

width

Video Class Conformance

Class Name

Conformance

attachVideo()

This method is unimplemented.

clear()

This method is unimplemented.

deblocking

This property is unimplemented.

height

This property is unimplemented.

smoothing

This property is unimplemented.

width

This property is unimplemented.

XMLNode ActionScript Class

This class implements an XMLNode object. This is mostly only used internally by Gnash for holding the data for a node. It does exist within the interpreter as a valid object though, so its properties and methods can be accessed by a flash movie script.

As the XML class is derived from this one, many of these methods are the same as for that class.

The Methods of the Class

appendChild()

Append a child node to this node.

cloneNode()

Copy a node, returning an XMLNode *.

hasChildNodes()

Return true if this node has any children.

insertBefore()

Insert a node before this node.

removeNode()

Remove a node from the parent's list.

toString()

Convert the node and its children to a string representation.

The Properties of the XMLNode Class

attributes

Returns an array of the attributes of a node.

childNodes

Returns an array of the children of a node.

firstChild

Returns the first child node.

lastChild
Returns the last child node.

nextSibling

Returns the next child node.

previousSibling

Returns the child node before this one.

nodeName

Returns the name of the node.

nodeType

Returns the type of a node.

nodeValue

Contains the text for a text node type.

parentNode

Returns this node's parent.

XMLNode Class Conformance

Class Name

Conformance

appendChild()

This method is implemented.

cloneNode()

This method is implemented.

hasChildNodes()

This method is implemented.

insertBefore()

This method is unimplemented.

removeNode()

This method is unimplemented.

toString()

This method is unimplemented.

attributes

This property is unimplemented.

childNodes

This property is unimplemented.

firstChild

This property is implemented.

lastChild

This property is implemented.

nextSibling

This property is implemented.

previousSibling

This property is implemented.

nodeName

This property is implemented.

nodeType

This property is implemented.

nodeValue

This property is implemented.

parentNode

This property is unimplemented.

XML ActionScript Class

This class implements an XML object.

The Methods of the Class

addRequestHeader()

Change the HTTP header.

appendChild()

Append a child node to this node.

cloneNode()

Copy a node.

createElement()

Create an element for a node.

createTextNode()

Create a text node.

getBytesLoaded()

getBytesTotal()

Return the size of the XML source.

hasChildNodes()

Return if this node has any children.

insertBefore()

Insert a node before this node.

load()

Load a XML message in memory.

parseXML()

Parse an XML document.

removeNode()

Remove a node.

send()

Send the node through the network.

sendAndLoad()

Send a node, and get the result using the network.

toString()

Convert the node and its children to a string.

The Properties of the XML Class

contentType

The MIME type.

attributes

Returns an array of the attributes of a node.

childNodes

Returns an array of the children of a node.

xmlDecl

Specify document's declaration.

docTypeDecl

Get a string version of a document's declaration.

firstChild

Returns the first child node.

ignoreWhite

If set, blank nodes are deleted.

lastChild
Returns the last child node.

loaded

A flag that signifies if a file was loaded.

nextSibling

Returns the next child node.

nodeName

Returns the name of the node.

nodeType

Returns the type of a node.

nodeValue

Contains the text for a text node type.

parentNode

Returns this node's parent.

status

Returns the status code from parsing the XML document.

previousSibling

Returns the child node before this one.

XML Class Conformance

Class Name

Conformance

addRequestHeader()

This method is unimplemented.

appendChild()

This method is unimplemented.

cloneNode()

This method is unimplemented.

createElement()

This method is unimplemented.

createTextNode()

This method is unimplemented.

getBytesLoaded()

This method is unimplemented.

getBytesTotal()

This method is unimplemented.

hasChildNodes()

This method is implemented.

insertBefore()

This method is unimplemented.

load()

This method is implemented.

parseXML()

This method is implemented.

removeNode()

This method is unimplemented.

send()

This method is unimplemented.

sendAndLoad()

This method is unimplemented.

toString()

This method is unimplemented.

contentType

This property is unimplemented.

attributes

This property is implemented.

childNodes

This property is implemented.

xmlDecl

This property is unimplemented.

docTypeDecl

This property is unimplemented.

firstChild

This property is implemented.

ignoreWhite

This property is unimplemented.

lastChild

This property is unimplemented.

loaded

This property is implemented.

nextSibling

This property is unimplemented.

nodeName

This property is unimplemented.

nodeType

This property is implemented.

nodeValue

This property is unimplemented.

onData

This event handler is implemented.

onLoad

This event handler is implemented.

parentNode

This event handler is implemented.

status

This event handler is unimplemented.

previousSibling

This event handler is unimplemented.

XMLSocket ActionScript Class

This class implements an XMLSocket object.

The Methods of the Class

close()

Close the socket connection.

connect()

Connect to a host over a network connection.

send()

Send a message through a network connection.

The Event Handlers of the XMLSocket Class

onClose

Called when a network connection is closed.

onConnect

Called when a network connect has connected.

onData

Called then there is a message from the network.

onXML

Called when an XML message is received.

XMLSocket Class Conformance

Class Name

Conformance

close()

This method is implemented.

connect()

This method is implemented.

send()

This method is implemented.

onClose

This event handler is unimplemented.

onConnect

This event handler is implemented.

onData

This event handler is implemented.

onXML

This event handler is implemented.

Authors

This Free ActionScript Specification is maintained by the Gnash team and others. Please send all comments to .

A. GNU Free Documentation License

0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other written document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or non-commercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.

This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.

We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.

1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you".

A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.

The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License.

The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License.

A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not "Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML produced by some word processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.

2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.

You may also lend copies, under the same conditions stated above, and you may publicly display copies.

3. COPYING IN QUANTITY

If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.

If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.

If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.

It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.

4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

  • A.  Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.

  • B.  List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five).

  • C.  State on the Title Page the name of the publisher of the Modified Version, as the publisher.

  • D.  Preserve all the copyright notices of the Document.

  • E.  Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.

  • F.  Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.

  • G.  Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.

  • H.  Include an unaltered copy of this License.

  • I.  Preserve the section entitled "History", and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.

  • J.  Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.

  • K.  In any section entitled "Acknowledgements" or "Dedications", preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.

  • L.  Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.

  • M.  Delete any section entitled "Endorsements". Such a section may not be included in the Modified Version.

  • N.  Do not retitle any existing section as "Endorsements" or to conflict in title with any Invariant Section.

If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.

You may add a section entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.

You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version .

5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice.

The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.

In the combination, you must combine any sections entitled "History" in the various original documents, forming one section entitled "History"; likewise combine any sections entitled "Acknowledgements", and any sections entitled "Dedications". You must delete all sections entitled "Endorsements."

6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.

You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.

7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an "aggregate", and this License does not apply to the other self-contained works thus compiled with the Document , on account of their being thus compiled, if they are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document's Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate.

8. TRANSLATION

Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail.

9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

Addendum

To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:

Copyright YEAR YOUR NAME.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A copy of the license is included in the section entitled "GNU Free Documentation License".

If you have no Invariant Sections, write "with no Invariant Sections" instead of saying which ones are invariant. If you have no Front-Cover Texts, write "no Front-Cover Texts" instead of "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.

If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.