com.flagstone.transform
Class FSAction

java.lang.Object
  extended by com.flagstone.transform.FSTransformObject
      extended by com.flagstone.transform.FSActionObject
          extended by com.flagstone.transform.FSAction
All Implemented Interfaces:
java.lang.Cloneable

public class FSAction
extends FSActionObject

The FSAction class is used to represent stack-based actions, defined by simple byte-codes, that are executed by the Flash Player.

The operations supported by the FSAction class are:

Stack Manipulation

Action Description Stack Notation Example
Pop Pop value from the top of the stack. (valueA -- ) (4 -- )
Duplicate Duplicate the value at the top of the stack. (valueA -- valueA valueA) (4 -- 4 4)
Swap Swap the top two values on the stack. (valueA valueB -- valueB valueA) (4 3 -- 3 4)

FSPush is used to push literals onto the Stack. See also FSRegisterCopy which copies the value on top of the Stack to one of the Flash Player's internal registers.

Arithmetic

Action Description Stack Notation Example
Add Arithmetic Add: A + B (numA numB -- num) (4 3 -- 7)
Subtract Arithmetic Subtract: A - B (numA numB -- num) (4 3 -- 1)
Multiply Arithmetic Multiply: A * B (numA numB -- num) (4 3 -- 12)
Divide Arithmetic Divide: A / B (numA numB -- num) (4 3 -- 1.333)
Modulo Arithmetic Modulo: A % B (numA numB -- num) (4 3 -- 1)
Increment Add 1 to the value on the stack. (num -- num) (3 -- 4)
Decrement Subtracted 1 from the value on the stack. (num -- num) (4 -- 3)

Arithmetic add is supported by two actions. IntegerAdd was introduced in Flash 4. It was replaced in Flash 5 by the more flexible Add action which is able to add any two numbers and also concatenate strings. If a string and a number are added then the number is converted to its string representation before concatenation.

Comparison

Action Description Stack Notation Example
Less LessThan: A < B (numA numB -- boolean) (10 9 -- 0 )
StringLess String compare: stringA < stringB (stringA stringB -- boolean) ("abc" "ab" -- 0)
Equals Equals: A == B (numA numB -- boolean) (23 23 -- 1 )
StringEquals String compare: stringA == stringB (stringA stringB -- boolean) ("abc" "abc" -- 1)
StrictEquals Equals: A === B, are the types as well as the values equal. (valueA valueB -- boolean) ("23" 23 -- 0 )
Greater Greater Than: A > B (numA numB -- boolean) (10 9 -- 0 )
StringGreater String compare: stringA > stringB (stringA stringB -- boolean) ("abc" "ab" -- 0)

The less than comparison is supported by IntegerLess introduced in Flash 4 and Less introduced in Flash 5. The Less action is more flexible allowing comparison between any combination of two numbers and strings. In Flash 4 comparisons were only supported on values of the same type using either IntegerLess or StringLess.

The equals comparison is supported by IntegerEquals introduced in Flash 4 and Equals introduced in Flash 5. The Equals action is more flexible allowing comparison between any combination of two numbers and strings. In Flash 4 comparisons were only supported on values of the same type using either IntegerEquals or StringEquals.

Logical

Action Description Stack Notation Example
And Logical And: A && B (numA numB -- boolean) (3 0 -- 0)
Or Logical Or: A || B (numA numB -- boolean) (3 0 -- 1)
Not Logical Not: !A (num -- boolean) (3 -- 0)

Bitwise

Action Description Stack Notation Example
BitwiseAnd Bitwise And: A & B (numA numB -- num) (5 4 -- 4)
BitwiseOr Bitwise Or: A | B (numA numB -- num) (5 4 -- 5)
BitwiseXOr Bitwise Exclusive-Or: A ^ B (numA numB -- num) (5 4 -- 1)
LogicalShiftLeft Logical Shift Left: A << B (numA numB -- num) (4 1 -- 8)
LogicalShiftRight Logical Shift Right: A >>> B (numA numB -- num) (8 1 -- 4)
ArithmeticShiftRight Arithmetic Shift Right (sign extension): A >> B (numA numB -- num) (-1 1 -- -1)

String

Action Description Stack Notation Example
StringAdd Concatenate two strings (string string -- string) ("ab" "cd" -- "abcd")
StringLength Returns the length of a string (string -- num) ("abc" -- 3)
MBStringLength Returns the length of a string that contains characters from an extended set such as Unicode. (string -- num) ("abc" -- 3)
StringExtract Substring. Extract count characters from string starting at position index. (count index string -- string) (3 2 "abcde" -- "bcd")
MBStringExtract Multi-byte Substring. Extract count characters from string starting at position index. (count index string -- string) (3 2 "abcde" -- "bcd")

Type Conversion

Action Description Stack Notation Example
ToInteger Converts the value to an integer ( num -- num) ( 3.2 -- 3 )
ToNumber Converts the string value to a number. ( string -- num) ( "3.2" -- 3.2 )
ToString Converts the value to a string. ( num -- string) ( 3.2 -- "3.2" )
CharToAscii Convert the first character of a string to its ASCII value. (string -- num) ("abc" -- 97)
MBCharToAscii Convert the first character of string to its Unicode value. (string -- num) ("abc" -- 61)
AsciiToChar Convert the ASCII value to the equivalent character. (num -- string) (97 -- "a")
MBAsciiToChar Convert a Unicode value to the equivalent character. (num -- string) (61 -- "a")

Variables

Action Description Stack Notation Example
GetVariable Push the value for the specified variable on the stack (variableName -- value) ("FlashVersion" -- 4)
SetVariable Set the value of the specified variable (variableName value --) ("Var1" 123 --)
GetType Returns the type of the object or value at the top of the stack. (value -- value type) (--)
NewVariable Create a new user-defined variable. (name --) ("x" --)
InitVariable Create and initialise a user-defined variable. (value name --) (1 "x" --)
NewArray Create an array. (value+ count -- array) (1 2 3 4 4 -- array)
DeleteVariable Deletes a variable, returning true if the variable was deleted, false otherwise. (name -- boolean) ("x" -- 1)
Delete Deletes an object or variable, returning true if the object was deleted, false otherwise. (name -- boolean) ("x" -- 1)

Functions

Action Description Stack Notation Example
ExecuteFunction Execute the built-in function. (arg* functionName -- result*) (12.3 "isFinite" -- "1")
Return Return control from the function. (--) (--)

Objects

Action Description Stack Notation Example
GetAttribute Push the value of an objects attribute on the stack (string string -- value) ("Key" "SPACE" -- 32)
SetAttribute Set the value of a attribute of an object (variable string value --) (<_root> "variable" 1 --)
ExecuteMethod Execute a method of an object (string string -- value) ("Key" "getCode" -- num)
NewMethod Define a new method for an object    
NamedObject Construct an instance of a built-in object. (arg* count className -- instance) ("My String" 1 "String" -- instance)
NewObject Define a new class. ((name value)* count -- instance) ("Account" "123456" 1 -- value)
Enumerate Enumerate through the attributes of the object referenced by the name of the variable on the stack. ( "var" -- ) ( -- )
EnumerateObject Enumerate through the attributes of the object on the stack. ( "var" -- ) ( -- )

Movie Control

Action Description Stack Notation Example
GetTarget Returns a string representing the path to the movie clip in which the current action is executed. (-- clipName ) ( -- "_root/MovieClip")
SetTarget2 Change the context of the Flash Player so subsequent actions are applied to the movie clip, clipName. (clipName -- ) ("MovieClip" --)
GetProperty Push the value of the specified property on the stack. Properties are identified by reserved values, see the FSPush class for more details. (value -- value) ( <_totalframes> -- 36 )
SetProperty Set the value of a property (value propertyName --) ( 8000 <_width> -- )
CloneSprite Duplicate a movie clip clipName, on the display list layer depth with the name newName. ( depth clipName newName --) ( 19 "_root/MovieClip" "newClip" -- )
RemoveSprite Delete a movie clip ( clipName --) ( "_root/MovieClip" -- )
StartDrag Starts dragging a movie clip with an optional constraining rectangle defined by the corner points (x1,y1), (x2,y2). ( x1 y1 x2 y2 1 clipName --)

( 0 clipName --)
( 0 0 400 400 1 "movieClip" - )

( 0 "movieClip" - )
EndDrag Stops dragging a movie clip (--)  
NextFrame Go to the next frame of the current movie (--)  
PreviousFrame Go to the previous frame of the current movie (-- )  
Play Start playing the current movie at the current frame (--)  
Stop Stop playing the current movie (--)  
ToggleQuality Toggle the movie between high and low quality (--)  
StopSounds Stop playing all sounds (--)  

ActionScript 2.0

Starting with Flash 6 Macromedia extended the syntax of ActionScript to make it more object-oriented, moving the language closer to Java than JavaScript. Several actions were added to support the new keywords introduced into ActionScript 2.0.

Action Description Stack Notation Example
InstanceOf Return true or false to the stack if the object can be created using the constructor function. ( object function -- true | false)  
Implements Identifies a class implements a defined interface. ( (function) count function --)  
Extends Identifies that a class inherits from a class - used to increase the execution speed of ActionScript code. ( subclass superclass --)  
Cast Casts the type of an object on the stack, returning the object if it is the same type as the constructor function, null otherwise. (function object -- object | null)  
Throw Throw an exception. (--)  

Miscellaneous

Action Description Stack Notation Example
Trace Append value to debugging window (value --) ("X = 3" --)
GetTime Push the number of milliseconds that have elapsed since the player started on the stack. (-- num) (-- 1274832)
RandomNumber Push a random number on the stack. (maximumValue -- num) (10 -- 3)

Notes

Examples

The FSActionObject class defines a series of constants that lists the type of actions supported in the current release. Actions may be created by specifying the action type in the constructor:

 FSAction anAction = new FSAction(Add);
 

The FSPush class is used to push values onto the Flash Player's stack before an action is executed. For example to execute the expression (1+2)*3 when a frame is displayed the following sequence of actions are created:

 FSDoAction frameAction = new FSDoAction();
 
 frameAction.add(new FSPush(1));
 frameAction.add(new FSPush(2));
 frameAction.add(new FSAction(Add));
 frameAction.add(new FSPush(3));
 frameAction.add(new FSAction(Multiply));
 

The Flash Player also supported classes and object that represent different complex data types and system resources such as the mouse. These objects and the functions they support are referenced by name. String containing the names and the values (and number) of the arguments required are pushed onto the stack:

 // Push the arguments followed by the number of arguments onto the stack
 
 frameAction.add(new FSPush(aValue));
 frameAction.add(new FSPush(aValue));
 frameAction.add(new FSPush(2));
 
 // Place the name on the stack then execute the function.
 
 frameAction.add(new FSPush("FunctionName"));
 frameAction.add(new FSAction(ExecuteFunction));
 

To execute a method on a given object a reference to the object is retrieved and the name of the method and any arguments are specified. For example to play a movie clip starting at a named frame:

 // Push the arguments followed by the number of arguments onto the stack
 
 frameAction.add(new FSPush("frameName"));
 frameAction.add(new FSPush(1));
 
 // Get a reference to the object.
 
 frameAction.add(new FSPush("_root"));
 frameAction.add(new FSPush("movieClip"));
 frameAction.add(new FSAction(GetAttribute));
 
 // Place the name of the method on the stack then execute it.
 
 frameAction.add(new FSPush("gotoAndPlay"));
 frameAction.add(new FSAction(ExecuteMethod));
 

Note: The FSPush class allows more than one value to be pushed onto the stack at a time. In the above examples separate FSPush objects are created to make the code a little more readable.


Field Summary
static int Add
           
static int And
           
static int ArithmeticShiftRight
           
static int AsciiToChar
           
static int BitwiseAnd
           
static int BitwiseOr
           
static int BitwiseXOr
           
static int Cast
           
static int CharToAscii
           
static int CloneSprite
           
static int Decrement
           
static int Delete
           
static int DeleteVariable
           
static int Divide
           
static int Duplicate
           
static int End
          Type identifying the end of a sequence of actions.
static int EndDrag
           
static int Enumerate
           
static int EnumerateObject
           
static int Equals
           
static int ExecuteFunction
           
static int ExecuteMethod
           
static int Extends
           
static int GetAttribute
           
static int GetProperty
           
static int GetTarget
           
static int GetTime
           
static int GetType
           
static int GetVariable
           
static int Greater
           
static int Implements
           
static int Increment
           
static int InitVariable
           
static int InstanceOf
           
static int IntegerAdd
           
static int IntegerEquals
           
static int IntegerLess
           
static int Less
           
static int LogicalShiftLeft
           
static int LogicalShiftRight
           
static int MBAsciiToChar
           
static int MBCharToAscii
           
static int MBStringExtract
           
static int MBStringLength
           
static int Modulo
           
static int Multiply
           
static int NamedObject
           
static int NewArray
           
static int NewMethod
           
static int NewObject
           
static int NewVariable
           
static int NextFrame
          Type identifying a NextFrame stack-based action.
static int Not
           
static int Or
           
static int Play
          Type identifying a Play stack-based action.
static int Pop
           
static int PrevFrame
          Type identifying a PrevFrame stack-based action.
static int RandomNumber
           
static int RemoveSprite
           
static int Return
           
static int SetAttribute
           
static int SetProperty
           
static int SetTarget2
           
static int SetVariable
           
static int StartDrag
           
static int Stop
          Type identifying a Stop stack-based action.
static int StopSounds
          Type identifying a StopSounds stack-based action.
static int StrictEquals
           
static int StringAdd
           
static int StringEquals
           
static int StringExtract
           
static int StringGreater
           
static int StringLength
           
static int StringLess
           
static int Subtract
           
static int Swap
           
static int Throw
           
static int ToggleQuality
          Type identifying a ToggleQuality stack-based action.
static int ToInteger
           
static int ToNumber
           
static int ToString
           
static int Trace
           
 
Fields inherited from class com.flagstone.transform.FSActionObject
Call, ExceptionHandler, GetUrl, GetUrl2, GotoFrame, GotoFrame2, GotoLabel, If, Jump, length, NewFunction, NewFunction2, Push, RegisterCopy, SetTarget, Table, type, WaitForFrame, WaitForFrame2, With
 
Constructor Summary
FSAction(FSAction obj)
          Constructs an FSAction object by copying values from an existing object.
FSAction(FSCoder coder)
          Construct an FSAction object, initalizing it with values decoded from an encoded object.
FSAction(int aType)
          Constructs a stack-based action with the specified type.
 
Method Summary
static FSAction Add()
          Factory method for generating an FSAction object representing a Add action.
static FSAction And()
          Factory method for generating an FSAction object representing a And action.
 void appendDescription(java.lang.StringBuffer buffer, int depth)
          AppendDescription is used to present a string description of the object including all nested objects up to a specified depth.
static FSAction ArithmeticShiftRight()
          Factory method for generating an FSAction object representing a ArithmeticShiftRight action.
static FSAction AsciiToChar()
          Factory method for generating an FSAction object representing a AsciiToChar action.
static FSAction BitwiseAnd()
          Factory method for generating an FSAction object representing a BitwiseAnd action.
static FSAction BitwiseOr()
          Factory method for generating an FSAction object representing a BitwiseOr action.
static FSAction BitwiseXOr()
          Factory method for generating an FSAction object representing a BitwiseXOr action.
static FSAction Cast()
          Factory method for generating an FSAction object representing a Cast action.
static FSAction CharToAscii()
          Factory method for generating an FSAction object representing a CharToAscii action.
static FSAction CloneSprite()
          Factory method for generating an FSAction object representing a CloneSprite action.
 void decode(FSCoder coder)
           
static FSAction Decrement()
          Factory method for generating an FSAction object representing a Decrement action.
static FSAction Delete()
          Factory method for generating an FSAction object representing a Delete action.
static FSAction DeleteVariable()
          Factory method for generating an FSAction object representing a DeleteVariable action.
static FSAction Divide()
          Factory method for generating an FSAction object representing a Divide action.
static FSAction Duplicate()
          Factory method for generating an FSAction object representing a Duplicate action.
 void encode(FSCoder coder)
           
static FSAction End()
          Factory method for generating an FSAction object representing the end of a sequence of actions.
static FSAction EndDrag()
          Factory method for generating an FSAction object representing a EndDrag action.
static FSAction Enumerate()
          Factory method for generating an FSAction object representing a Enumerate action.
static FSAction EnumerateObject()
          Factory method for generating an FSAction object representing a EnumerateObject action.
static FSAction Equals()
          Factory method for generating an FSAction object representing a Equals action.
static FSAction ExecuteFunction()
          Factory method for generating an FSAction object representing a ExecuteFunction action.
static FSAction ExecuteMethod()
          Factory method for generating an FSAction object representing a ExecuteMethod action.
static FSAction Extends()
          Factory method for generating an FSAction object representing a Extends action.
static FSAction GetAttribute()
          Factory method for generating an FSAction object representing a GetAttribute action.
static FSAction GetProperty()
          Factory method for generating an FSAction object representing a GetProperty action.
static FSAction GetTarget()
          Factory method for generating an FSAction object representing a GetTarget action.
static FSAction GetTime()
          Factory method for generating an FSAction object representing a GetTime action.
static FSAction GetType()
          Factory method for generating an FSAction object representing a GetType action.
static FSAction GetVariable()
          Factory method for generating an FSAction object representing a GetVariable action.
static FSAction Greater()
          Factory method for generating an FSAction object representing a Greater action.
static FSAction Implements()
          Factory method for generating an FSAction object representing an Implements action.
static FSAction Increment()
          Factory method for generating an FSAction object representing a Increment action.
static FSAction InitVariable()
          Factory method for generating an FSAction object representing a InitVariable action.
static FSAction InstanceOf()
          Factory method for generating an FSAction object representing a InstanceOf action.
static FSAction Less()
          Factory method for generating an FSAction object representing a Less action.
static FSAction LogicalShiftLeft()
          Factory method for generating an FSAction object representing a LogicalShiftLeft action.
static FSAction LogicalShiftRight()
          Factory method for generating an FSAction object representing a LogicalShiftRight action.
static FSAction MBAsciiToChar()
          Factory method for generating an FSAction object representing a MBAsciiToChar action.
static FSAction MBCharToAscii()
          Factory method for generating an FSAction object representing a MBCharToAscii action.
static FSAction MBStringExtract()
          Factory method for generating an FSAction object representing a MBStringExtract action.
static FSAction MBStringLength()
          Factory method for generating an FSAction object representing a MBStringLength action.
static FSAction Modulo()
          Factory method for generating an FSAction object representing a Modulo action.
static FSAction Multiply()
          Factory method for generating an FSAction object representing a Multiply action.
 java.lang.String name()
          Returns a string identifying the type of stack-based action that the object represents.
static FSAction NamedObject()
          Factory method for generating an FSAction object representing a NamedObject action.
static FSAction NewArray()
          Factory method for generating an FSAction object representing a NewArray action.
static FSAction NewMethod()
          Factory method for generating an FSAction object representing a NewMethod action.
static FSAction NewObject()
          Factory method for generating an FSAction object representing a NewObject action.
static FSAction NewVariable()
          Factory method for generating an FSAction object representing a NewVariable action.
static FSAction NextFrame()
          Factory method for generating an FSAction object representing a NextFrame action.
static FSAction Not()
          Factory method for generating an FSAction object representing a Not action.
static FSAction Or()
          Factory method for generating an FSAction object representing a Or action.
static FSAction Play()
          Factory method for generating an FSAction object representing a Play action.
static FSAction Pop()
          Factory method for generating an FSAction object representing a Pop action.
static FSAction PrevFrame()
          Factory method for generating an FSAction object representing a PrevFrame action.
static FSAction RandomNumber()
          Factory method for generating an FSAction object representing a RandomNumber action.
static FSAction RemoveSprite()
          Factory method for generating an FSAction object representing a RemoveSprite action.
static FSAction Return()
          Factory method for generating an FSAction object representing a Return action.
static FSAction SetAttribute()
          Factory method for generating an FSAction object representing a SetAttribute action.
static FSAction SetProperty()
          Factory method for generating an FSAction object representing a SetProperty action.
static FSAction SetTarget2()
          Factory method for generating an FSAction object representing a SetTarget2 action.
static FSAction SetVariable()
          Factory method for generating an FSAction object representing a SetVariable action.
static FSAction StartDrag()
          Factory method for generating an FSAction object representing a StartDrag action.
static FSAction Stop()
          Factory method for generating an FSAction object representing a Stop action.
static FSAction StopSounds()
          Factory method for generating an FSAction object representing a StopSounds action.
static FSAction StrictEquals()
          Factory method for generating an FSAction object representing a StrictEquals action.
static FSAction StringAdd()
          Factory method for generating an FSAction object representing a StringAdd action.
static FSAction StringEquals()
          Factory method for generating an FSAction object representing a StringEquals action.
static FSAction StringExtract()
          Factory method for generating an FSAction object representing a StringExtract action.
static FSAction StringGreater()
          Factory method for generating an FSAction object representing a StringGreater action.
static FSAction StringLength()
          Factory method for generating an FSAction object representing a StringLength action.
static FSAction StringLess()
          Factory method for generating an FSAction object representing a StringLess action.
static FSAction Subtract()
          Factory method for generating an FSAction object representing a Subtract action.
static FSAction Swap()
          Factory method for generating an FSAction object representing a Swap action.
static FSAction Throw()
          Factory method for generating an FSAction object representing a Throw action.
static FSAction ToggleQuality()
          Factory method for generating an FSAction object representing a ToggleQuality action.
static FSAction ToInteger()
          Factory method for generating an FSAction object representing a ToInteger action.
static FSAction ToNumber()
          Factory method for generating an FSAction object representing a ToNumber action.
static FSAction ToString()
          Factory method for generating an FSAction object representing a ToString action.
static FSAction Trace()
          Factory method for generating an FSAction object representing a Trace action.
 
Methods inherited from class com.flagstone.transform.FSActionObject
equals, getType, length, length
 
Methods inherited from class com.flagstone.transform.FSTransformObject
clone, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

End

public static final int End
Type identifying the end of a sequence of actions.

See Also:
Constant Field Values

NextFrame

public static final int NextFrame
Type identifying a NextFrame stack-based action.

See Also:
Constant Field Values

PrevFrame

public static final int PrevFrame
Type identifying a PrevFrame stack-based action.

See Also:
Constant Field Values

Play

public static final int Play
Type identifying a Play stack-based action.

See Also:
Constant Field Values

Stop

public static final int Stop
Type identifying a Stop stack-based action.

See Also:
Constant Field Values

ToggleQuality

public static final int ToggleQuality
Type identifying a ToggleQuality stack-based action.

See Also:
Constant Field Values

StopSounds

public static final int StopSounds
Type identifying a StopSounds stack-based action.

See Also:
Constant Field Values

IntegerAdd

public static final int IntegerAdd
See Also:
Constant Field Values

Subtract

public static final int Subtract
See Also:
Constant Field Values

Multiply

public static final int Multiply
See Also:
Constant Field Values

Divide

public static final int Divide
See Also:
Constant Field Values

IntegerEquals

public static final int IntegerEquals
See Also:
Constant Field Values

IntegerLess

public static final int IntegerLess
See Also:
Constant Field Values

And

public static final int And
See Also:
Constant Field Values

Or

public static final int Or
See Also:
Constant Field Values

Not

public static final int Not
See Also:
Constant Field Values

StringEquals

public static final int StringEquals
See Also:
Constant Field Values

StringLength

public static final int StringLength
See Also:
Constant Field Values

StringExtract

public static final int StringExtract
See Also:
Constant Field Values

Pop

public static final int Pop
See Also:
Constant Field Values

ToInteger

public static final int ToInteger
See Also:
Constant Field Values

GetVariable

public static final int GetVariable
See Also:
Constant Field Values

SetVariable

public static final int SetVariable
See Also:
Constant Field Values

SetTarget2

public static final int SetTarget2
See Also:
Constant Field Values

StringAdd

public static final int StringAdd
See Also:
Constant Field Values

GetProperty

public static final int GetProperty
See Also:
Constant Field Values

SetProperty

public static final int SetProperty
See Also:
Constant Field Values

CloneSprite

public static final int CloneSprite
See Also:
Constant Field Values

RemoveSprite

public static final int RemoveSprite
See Also:
Constant Field Values

Trace

public static final int Trace
See Also:
Constant Field Values

StartDrag

public static final int StartDrag
See Also:
Constant Field Values

EndDrag

public static final int EndDrag
See Also:
Constant Field Values

StringLess

public static final int StringLess
See Also:
Constant Field Values

RandomNumber

public static final int RandomNumber
See Also:
Constant Field Values

MBStringLength

public static final int MBStringLength
See Also:
Constant Field Values

CharToAscii

public static final int CharToAscii
See Also:
Constant Field Values

AsciiToChar

public static final int AsciiToChar
See Also:
Constant Field Values

GetTime

public static final int GetTime
See Also:
Constant Field Values

MBStringExtract

public static final int MBStringExtract
See Also:
Constant Field Values

MBCharToAscii

public static final int MBCharToAscii
See Also:
Constant Field Values

MBAsciiToChar

public static final int MBAsciiToChar
See Also:
Constant Field Values

DeleteVariable

public static final int DeleteVariable
See Also:
Constant Field Values

Delete

public static final int Delete
See Also:
Constant Field Values

InitVariable

public static final int InitVariable
See Also:
Constant Field Values

ExecuteFunction

public static final int ExecuteFunction
See Also:
Constant Field Values

Return

public static final int Return
See Also:
Constant Field Values

Modulo

public static final int Modulo
See Also:
Constant Field Values

NamedObject

public static final int NamedObject
See Also:
Constant Field Values

NewVariable

public static final int NewVariable
See Also:
Constant Field Values

NewArray

public static final int NewArray
See Also:
Constant Field Values

NewObject

public static final int NewObject
See Also:
Constant Field Values

GetType

public static final int GetType
See Also:
Constant Field Values

GetTarget

public static final int GetTarget
See Also:
Constant Field Values

Enumerate

public static final int Enumerate
See Also:
Constant Field Values

Add

public static final int Add
See Also:
Constant Field Values

Less

public static final int Less
See Also:
Constant Field Values

Equals

public static final int Equals
See Also:
Constant Field Values

ToNumber

public static final int ToNumber
See Also:
Constant Field Values

ToString

public static final int ToString
See Also:
Constant Field Values

Duplicate

public static final int Duplicate
See Also:
Constant Field Values

Swap

public static final int Swap
See Also:
Constant Field Values

GetAttribute

public static final int GetAttribute
See Also:
Constant Field Values

SetAttribute

public static final int SetAttribute
See Also:
Constant Field Values

Increment

public static final int Increment
See Also:
Constant Field Values

Decrement

public static final int Decrement
See Also:
Constant Field Values

ExecuteMethod

public static final int ExecuteMethod
See Also:
Constant Field Values

NewMethod

public static final int NewMethod
See Also:
Constant Field Values

BitwiseAnd

public static final int BitwiseAnd
See Also:
Constant Field Values

BitwiseOr

public static final int BitwiseOr
See Also:
Constant Field Values

BitwiseXOr

public static final int BitwiseXOr
See Also:
Constant Field Values

LogicalShiftLeft

public static final int LogicalShiftLeft
See Also:
Constant Field Values

ArithmeticShiftRight

public static final int ArithmeticShiftRight
See Also:
Constant Field Values

LogicalShiftRight

public static final int LogicalShiftRight
See Also:
Constant Field Values

InstanceOf

public static final int InstanceOf
See Also:
Constant Field Values

EnumerateObject

public static final int EnumerateObject
See Also:
Constant Field Values

StrictEquals

public static final int StrictEquals
See Also:
Constant Field Values

Greater

public static final int Greater
See Also:
Constant Field Values

StringGreater

public static final int StringGreater
See Also:
Constant Field Values

Throw

public static final int Throw
See Also:
Constant Field Values

Cast

public static final int Cast
See Also:
Constant Field Values

Implements

public static final int Implements
See Also:
Constant Field Values

Extends

public static final int Extends
See Also:
Constant Field Values
Constructor Detail

FSAction

public FSAction(FSCoder coder)
Construct an FSAction object, initalizing it with values decoded from an encoded object.

Parameters:
coder - an FSCoder containing the binary data.

FSAction

public FSAction(int aType)
Constructs a stack-based action with the specified type.

Parameters:
aType - the code used to denote the type of action performed.

FSAction

public FSAction(FSAction obj)
Constructs an FSAction object by copying values from an existing object.

Parameters:
obj - an FSAction object.
Method Detail

End

public static FSAction End()
Factory method for generating an FSAction object representing the end of a sequence of actions.


NextFrame

public static FSAction NextFrame()
Factory method for generating an FSAction object representing a NextFrame action.


PrevFrame

public static FSAction PrevFrame()
Factory method for generating an FSAction object representing a PrevFrame action.


Play

public static FSAction Play()
Factory method for generating an FSAction object representing a Play action.


Stop

public static FSAction Stop()
Factory method for generating an FSAction object representing a Stop action.


ToggleQuality

public static FSAction ToggleQuality()
Factory method for generating an FSAction object representing a ToggleQuality action.


StopSounds

public static FSAction StopSounds()
Factory method for generating an FSAction object representing a StopSounds action.


Subtract

public static FSAction Subtract()
Factory method for generating an FSAction object representing a Subtract action.


Multiply

public static FSAction Multiply()
Factory method for generating an FSAction object representing a Multiply action.


Divide

public static FSAction Divide()
Factory method for generating an FSAction object representing a Divide action.


And

public static FSAction And()
Factory method for generating an FSAction object representing a And action.


Or

public static FSAction Or()
Factory method for generating an FSAction object representing a Or action.


Not

public static FSAction Not()
Factory method for generating an FSAction object representing a Not action.


StringEquals

public static FSAction StringEquals()
Factory method for generating an FSAction object representing a StringEquals action.


StringLength

public static FSAction StringLength()
Factory method for generating an FSAction object representing a StringLength action.


StringExtract

public static FSAction StringExtract()
Factory method for generating an FSAction object representing a StringExtract action.


Pop

public static FSAction Pop()
Factory method for generating an FSAction object representing a Pop action.


ToInteger

public static FSAction ToInteger()
Factory method for generating an FSAction object representing a ToInteger action.


GetVariable

public static FSAction GetVariable()
Factory method for generating an FSAction object representing a GetVariable action.


SetVariable

public static FSAction SetVariable()
Factory method for generating an FSAction object representing a SetVariable action.


SetTarget2

public static FSAction SetTarget2()
Factory method for generating an FSAction object representing a SetTarget2 action.


StringAdd

public static FSAction StringAdd()
Factory method for generating an FSAction object representing a StringAdd action.


GetProperty

public static FSAction GetProperty()
Factory method for generating an FSAction object representing a GetProperty action.


SetProperty

public static FSAction SetProperty()
Factory method for generating an FSAction object representing a SetProperty action.


CloneSprite

public static FSAction CloneSprite()
Factory method for generating an FSAction object representing a CloneSprite action.


RemoveSprite

public static FSAction RemoveSprite()
Factory method for generating an FSAction object representing a RemoveSprite action.


Trace

public static FSAction Trace()
Factory method for generating an FSAction object representing a Trace action.


StartDrag

public static FSAction StartDrag()
Factory method for generating an FSAction object representing a StartDrag action.


EndDrag

public static FSAction EndDrag()
Factory method for generating an FSAction object representing a EndDrag action.


StringLess

public static FSAction StringLess()
Factory method for generating an FSAction object representing a StringLess action.


RandomNumber

public static FSAction RandomNumber()
Factory method for generating an FSAction object representing a RandomNumber action.


MBStringLength

public static FSAction MBStringLength()
Factory method for generating an FSAction object representing a MBStringLength action.


CharToAscii

public static FSAction CharToAscii()
Factory method for generating an FSAction object representing a CharToAscii action.


AsciiToChar

public static FSAction AsciiToChar()
Factory method for generating an FSAction object representing a AsciiToChar action.


GetTime

public static FSAction GetTime()
Factory method for generating an FSAction object representing a GetTime action.


MBStringExtract

public static FSAction MBStringExtract()
Factory method for generating an FSAction object representing a MBStringExtract action.


MBCharToAscii

public static FSAction MBCharToAscii()
Factory method for generating an FSAction object representing a MBCharToAscii action.


MBAsciiToChar

public static FSAction MBAsciiToChar()
Factory method for generating an FSAction object representing a MBAsciiToChar action.


DeleteVariable

public static FSAction DeleteVariable()
Factory method for generating an FSAction object representing a DeleteVariable action.


Delete

public static FSAction Delete()
Factory method for generating an FSAction object representing a Delete action.


InitVariable

public static FSAction InitVariable()
Factory method for generating an FSAction object representing a InitVariable action.


ExecuteFunction

public static FSAction ExecuteFunction()
Factory method for generating an FSAction object representing a ExecuteFunction action.


Return

public static FSAction Return()
Factory method for generating an FSAction object representing a Return action.


Modulo

public static FSAction Modulo()
Factory method for generating an FSAction object representing a Modulo action.


NamedObject

public static FSAction NamedObject()
Factory method for generating an FSAction object representing a NamedObject action.


NewVariable

public static FSAction NewVariable()
Factory method for generating an FSAction object representing a NewVariable action.


NewArray

public static FSAction NewArray()
Factory method for generating an FSAction object representing a NewArray action.


NewObject

public static FSAction NewObject()
Factory method for generating an FSAction object representing a NewObject action.


GetType

public static FSAction GetType()
Factory method for generating an FSAction object representing a GetType action.


GetTarget

public static FSAction GetTarget()
Factory method for generating an FSAction object representing a GetTarget action.


Enumerate

public static FSAction Enumerate()
Factory method for generating an FSAction object representing a Enumerate action.


Add

public static FSAction Add()
Factory method for generating an FSAction object representing a Add action.


Less

public static FSAction Less()
Factory method for generating an FSAction object representing a Less action.


Equals

public static FSAction Equals()
Factory method for generating an FSAction object representing a Equals action.


ToNumber

public static FSAction ToNumber()
Factory method for generating an FSAction object representing a ToNumber action.


ToString

public static FSAction ToString()
Factory method for generating an FSAction object representing a ToString action.


Duplicate

public static FSAction Duplicate()
Factory method for generating an FSAction object representing a Duplicate action.


Swap

public static FSAction Swap()
Factory method for generating an FSAction object representing a Swap action.


GetAttribute

public static FSAction GetAttribute()
Factory method for generating an FSAction object representing a GetAttribute action.


SetAttribute

public static FSAction SetAttribute()
Factory method for generating an FSAction object representing a SetAttribute action.


Increment

public static FSAction Increment()
Factory method for generating an FSAction object representing a Increment action.


Decrement

public static FSAction Decrement()
Factory method for generating an FSAction object representing a Decrement action.


ExecuteMethod

public static FSAction ExecuteMethod()
Factory method for generating an FSAction object representing a ExecuteMethod action.


NewMethod

public static FSAction NewMethod()
Factory method for generating an FSAction object representing a NewMethod action.


BitwiseAnd

public static FSAction BitwiseAnd()
Factory method for generating an FSAction object representing a BitwiseAnd action.


BitwiseOr

public static FSAction BitwiseOr()
Factory method for generating an FSAction object representing a BitwiseOr action.


BitwiseXOr

public static FSAction BitwiseXOr()
Factory method for generating an FSAction object representing a BitwiseXOr action.


LogicalShiftLeft

public static FSAction LogicalShiftLeft()
Factory method for generating an FSAction object representing a LogicalShiftLeft action.


ArithmeticShiftRight

public static FSAction ArithmeticShiftRight()
Factory method for generating an FSAction object representing a ArithmeticShiftRight action.


LogicalShiftRight

public static FSAction LogicalShiftRight()
Factory method for generating an FSAction object representing a LogicalShiftRight action.


InstanceOf

public static FSAction InstanceOf()
Factory method for generating an FSAction object representing a InstanceOf action.


EnumerateObject

public static FSAction EnumerateObject()
Factory method for generating an FSAction object representing a EnumerateObject action.


Greater

public static FSAction Greater()
Factory method for generating an FSAction object representing a Greater action.


StringGreater

public static FSAction StringGreater()
Factory method for generating an FSAction object representing a StringGreater action.


StrictEquals

public static FSAction StrictEquals()
Factory method for generating an FSAction object representing a StrictEquals action.


Cast

public static FSAction Cast()
Factory method for generating an FSAction object representing a Cast action.


Implements

public static FSAction Implements()
Factory method for generating an FSAction object representing an Implements action.


Throw

public static FSAction Throw()
Factory method for generating an FSAction object representing a Throw action.


Extends

public static FSAction Extends()
Factory method for generating an FSAction object representing a Extends action.


name

public java.lang.String name()
Returns a string identifying the type of stack-based action that the object represents.

Overrides:
name in class FSTransformObject
Returns:
a string containing the name of the action.

appendDescription

public void appendDescription(java.lang.StringBuffer buffer,
                              int depth)
Description copied from class: FSTransformObject
AppendDescription is used to present a string description of the object including all nested objects up to a specified depth. This method provide a more controlled way of creating a string representation of an object since large objects such as font or shape definitions can contain dozens of nested objects. The representation of the object is appended to the StringBuffer, showing the name of the class and values of the attributes it contains. If the object contains any attributes that are objects then the object graph will be traversed up to the specified depth. If objects are nested at a level less than specified depth then the full string representation of the object is displayed. For objects at the specified depth only the name of the class is displayed. Any objects below this depth are not displayed.

Specified by:
appendDescription in class FSTransformObject
Parameters:
buffer - a StringBuffer to which the description of each object is appended.
depth - the maximum level of nesting up to which objects will be displayed.

encode

public void encode(FSCoder coder)
Overrides:
encode in class FSActionObject

decode

public void decode(FSCoder coder)
Overrides:
decode in class FSActionObject