swfobjects.int
上传用户:raido2005
上传日期:2022-06-22
资源大小:5044k
文件大小:116k
- //*******************************************************//
- // //
- // DelphiFlash.com //
- // Copyright (c) 2004-2008 FeatherySoft, Inc. //
- // info@delphiflash.com //
- // //
- //*******************************************************//
- // Description: Level of SWF-objects
- // Last update: 26 jun 2008
- {$I defines.inc}
- Unit SWFObjects;
- interface
- Uses Windows, SysUtils, Classes, SWFConst, Graphics, Contnrs,
- {$IFDEF ExternalUTF}
- Unicode,
- {$ENDIF}
- {$IFDEF VARIANTS}
- Variants,
- {$ENDIF}
- {$IFDEF XMLSupport}
- XMLIntf, XMLDoc, SWFXMLTools, SWFStrings,
- {$ENDIF}
- SWFTools;
- type
- TSWFRect = class (TObject)
- public
- procedure Assign(Source: TSWFRect);
- property Height: Integer read GetHeight;
- property Rec: recRect read GetRec write SetRec;
- property Rect: TRect read GetRect write SetRect;
- property Width: Integer read GetWidth;
- property Xmax: LongInt read FXmax write SetXmax;
- property Xmin: LongInt read FXmin write SetXmin;
- property Ymax: LongInt read FYmax write SetYmax;
- property Ymin: LongInt read FYmin write SetYmin;
- end;
- TSWFRGB = class (TObject)
- public
- procedure Assign(Source: TObject); virtual;
- property B: Byte read FB write FB;
- property G: Byte read FG write FG;
- property R: Byte read FR write FR;
- property RGB: recRGB read GetRGB write SetRGB;
- end;
- TSWFRGBA = class (TSWFRGB)
- public
- constructor Create(a: boolean = false);
- procedure Assign(Source: TObject); override;
- property A: Byte read FA write SetA;
- property HasAlpha: Boolean read FHasAlpha write SetHasAlpha;
- property RGBA: recRGBA read GetRGBA write SetRGBA;
- end;
- TSWFColorTransform = class (TObject)
- public
- procedure AddTint(Color: TColor);
- procedure Assign(Source: TSWFColorTransform);
- function CheckAddValue(value: integer): integer;
- function CheckMultValue(value: integer): integer;
- procedure SetAdd(R, G, B, A: integer);
- procedure SetMult(R, G, B, A: integer);
- property addA: Integer read FaddA write SetaddA;
- property addB: Integer read FaddB write SetaddB;
- property addG: Integer read FaddG write SetaddG;
- property addR: Integer read FaddR write SetaddR;
- property hasAdd: Boolean read FhasAdd write FhasAdd;
- property hasAlpha: Boolean read FhasAlpha write FhasAlpha;
- property hasMult: Boolean read FhasMult write FhasMult;
- property multA: Integer read FmultA write SetmultA;
- property multB: Integer read FmultB write SetmultB;
- property multG: Integer read FmultG write SetmultG;
- property multR: Integer read FmultR write SetmultR;
- property REC: recColorTransform read GetREC write SetREC;
- end;
- TSWFMatrix = class (TObject)
- public
- procedure Assign(M : TSWFMatrix);
- procedure SetRotate(angle: single);
- procedure SetScale(ScaleX, ScaleY: single);
- procedure SetSkew(SkewX, SkewY: single);
- procedure SetTranslate(X, Y: LongInt);
- property HasScale: Boolean read FHasScale write FHasScale;
- property HasSkew: Boolean read FHasSkew write FHasSkew;
- property REC: recMatrix read GetREC write SetREC;
- property ScaleX: Single read GetScaleX write SetScaleX;
- property ScaleY: Single read GetScaleY write SetScaleY;
- property SkewX: Single read GetSkewX write SetSkewX;
- property SkewY: Single read GetSkewY write SetSkewY;
- property TranslateX: LongInt read FTranslateX write FTranslateX;
- property TranslateY: LongInt read FTranslateY write FTranslateY;
- end;
- {$IFDEF XMLSupport}
- TBasedSWFObject = class;
- TSWFObject = class;
- TSWFObjectXMLRWEvent = procedure (sender: TBasedSWFObject; Node: IXMLNode) of object;
- TSWFLogicPart = (lpDefault, lpImage, lpSound, lpVideo, lpFont, lpActions, lpNotIdentified);
- TXMLWriteAsExternals = set of TSWFLogicPart;
- TXMLReadWriteSettings = class (TObject)
- public
- constructor Create;
- function GetResName(LP: TSWFLogicPart): string;
- function GetFullPath(LP: TSWFLogicPart): string;
- function GetFullName(LP: TSWFLogicPart; fname: string): string;
- function GetRelativePath(LP: TSWFLogicPart): string;
- property ActionsAsByteCode: boolean read FActionsAsByteCode write FActionsAsByteCode;
- property AsExternal: TXMLWriteAsExternals read FAsExternal write FAsExternal;
- property BasePath: string read FBasePath write SetBasePath;
- property CustomData: longint read FCustomData write FCustomData;
- property ExtCounter: word read FExtCounter write FExtCounter;
- property FileExtension: string read FFileExtension write FFileExtension;
- property FilePrefix: string read FFilePrefix write FFilePrefix;
- property FontAsByteCode: boolean read FFontAsByteCode write FFontAsByteCode;
- property Path: string read FPath write FPath;
- property PathActions: string read FPathActions write FPathActions;
- property PathImage: string read FPathImage write FPathImage;
- property PathSound: string read FPathSound write FPathSound;
- property PathFont: string read FPathFont write FPathFont;
- property PathVideo: string read FPathVideo write FPathVideo;
- property SomePath: boolean read FSomePath write FSomePath;
- // property PathDelimiter: Char read FPathDelimiter write FPathDelimiter;
- end;
- {$ENDIF}
- TBasedSWFObject = class (TObject)
- public
- procedure Assign(Source: TBasedSWFObject); virtual; abstract;
- procedure CopyFrom(Source: TBasedSWFObject); virtual;
- function LibraryLevel: Byte; virtual; abstract;
- function MinVersion: Byte; virtual;
- procedure WriteToStream(be: TBitsEngine); virtual; abstract;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); virtual;
- {$ENDIF}
- end;
- TSWFObject = class (TBasedSWFObject)
- public
- procedure Assign(Source: TBasedSWFObject); override;
- function GetFullSize: LongInt;
- function LibraryLevel: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); virtual;
- procedure WriteTagBody(be: TBitsEngine); virtual;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure WriteToXML(Parent: IXMLNode; Settings: TXMLReadWriteSettings);
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); virtual;
- {$ENDIF}
- property BodySize: LongWord read FBodySize write FBodySize;
- property TagID: Word read FTagID write FTagID;
- end;
- // TSWFErrorTag = class (TSWFObject)
- // private
- // FTagIDFrom: Word;
- // FText: string;
- // public
- // constructor Create;
- // property TagIDFrom: Word read FTagIDFrom write FTagIDFrom;
- // property Text: string read FText write FText;
- // end;
- TSWFTagEvent = procedure (sender: TSWFObject; BE: TBitsEngine) of object;
- // ===========================================================
- // Control Tags
- // ===========================================================
- TSWFSetBackgroundColor = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Color: TSWFRGB read FColor;
- end;
- TSWFFrameLabel = class (TSWFObject)
- public
- constructor Create; overload;
- constructor Create(fl: string); overload;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property isAnchor: Boolean read FisAnchor write FisAnchor;
- property Name: string read FName write FName;
- end;
- TSWFProtect = class (TSWFObject)
- public
- constructor Create; virtual;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Hash: string read FHash write FHash;
- property Password: string read FPassword write FPassword;
- end;
- TSWFEnd = class (TSWFObject)
- public
- constructor Create;
- end;
- TSWFExportAssets = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure SetAsset(Name: string; CharacterId: word);
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Assets: TStringList read FAssets;
- property CharacterId[name: string]: Integer read GetCharacterId write SetCharacterId;
- end;
- TSWFImportAssets = class (TSWFExportAssets)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property URL: string read FURL write FURL;
- end;
- TSWFImportAssets2 = class(TSWFImportAssets)
- public
- constructor Create; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- end;
- TSWFEnableDebugger = class (TSWFProtect)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFEnableDebugger2 = class (TSWFProtect)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFScriptLimits = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property MaxRecursionDepth: Word read FMaxRecursionDepth write FMaxRecursionDepth;
- property ScriptTimeoutSeconds: Word read FScriptTimeoutSeconds write FScriptTimeoutSeconds;
- end;
- TSWFSetTabIndex = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Depth: Word read FDepth write FDepth;
- property TabIndex: Word read FTabIndex write FTabIndex;
- end;
- TSWFSymbolClass = class (TSWFExportAssets)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFFileAttributes = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ActionScript3: boolean read FActionScript3 write FActionScript3;
- property HasMetadata: boolean read FHasMetadata write FHasMetadata;
- property UseNetwork: boolean read FUseNetwork write FUseNetwork;
- end;
- TSWFMetadata = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Metadata: AnsiString read FMetadata write FMetadata;
- end;
- TSWFProductInfo = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property MajorBuild: longword read FMajorBuild write FMajorBuild;
- property MinorBuild: longword read FMinorBuild write FMinorBuild;
- property CompilationDate: TDateTime read FCompilationDate write FCompilationDate;
- property Edition: longint read FEdition write FEdition;
- property MajorVersion: byte read FMajorVersion write FMajorVersion;
- property MinorVersion: byte read FMinorVersion write FMinorVersion;
- property ProductId: longint read FProductId write FProductId;
- end;
- TSWFDefineScalingGrid = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CharacterId: word read FCharacterId write FCharacterId;
- property Splitter: TSWFRect read FSplitter;
- end;
- // ===========================================================
- // Actions
- // ===========================================================
- // ------------ SWF 3 -----------
- TSWFAction = class (TObject)
- public
- procedure Assign(Source: TSWFAction); virtual;
- function GetFullSize: Word;
- function MinVersion: Byte; virtual;
- procedure ReadFromStream(be: TBitsEngine); virtual;
- procedure WriteActionBody(be: TBitsEngine); virtual;
- procedure WriteToStream(be: TBitsEngine); virtual;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual;
- procedure WriteToXML(Root: IXMLNode);
- procedure WriteToXMLNode(Node: IXMLNode); virtual;
- {$ENDIF}
- property ActionCode: Byte read FActionCode write FActionCode;
- property BodySize: Word read FBodySize write FBodySize;
- end;
- TSWFActionRecord = TSWFAction;
- TSWFActionGotoFrame = class (TSWFAction)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Frame: Word read FFrame write FFrame;
- end;
- TSWFActionGetUrl = class (TSWFAction)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Target: string read FTarget write FTarget;
- property URL: AnsiString read FURL write FURL;
- end;
- TSWFActionNextFrame = class (TSWFAction)
- public
- constructor Create;
- end;
- TSWFActionPreviousFrame = class (TSWFAction)
- public
- constructor Create;
- end;
- TSWFActionPlay = class (TSWFAction)
- public
- constructor Create;
- end;
- TSWFActionStop = class (TSWFAction)
- public
- constructor Create;
- end;
- TSWFActionToggleQuality = class (TSWFAction)
- public
- constructor Create;
- end;
- TSWFActionStopSounds = class (TSWFAction)
- public
- constructor Create;
- end;
- TSWFActionWaitForFrame = class (TSWFAction)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Frame: Word read FFrame write FFrame;
- property SkipCount: Byte read FSkipCount write FSkipCount;
- end;
- TSWFActionSetTarget = class (TSWFAction)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property TargetName: string read FTargetName write FTargetName;
- end;
- TSWFActionGoToLabel = class (TSWFAction)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property FrameLabel: string read FFrameLabel write FFrameLabel;
- end;
- // ------------ SWF 4 -----------
- TSWFAction4 = class (TSWFAction)
- public
- function MinVersion: Byte; override;
- end;
- TSWFOffsetMarker = class (TSWFAction)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure WriteOffset(be: TBitsEngine);
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property isUsing: Boolean read FisUsing write FisUsing;
- property JumpToBack: Boolean read FJumpToBack write FJumpToBack;
- property ManualSet: Boolean read FManualSet write FManualSet;
- property MarkerName: string read FMarkerName write FMarkerName;
- property RootStreamPosition: LongInt read FRootStreamPosition write FRootStreamPosition;
- property SizeOffset: Byte read FSizeOffset write FSizeOffset;
- property StartPosition: LongInt read FStartPosition write FStartPosition;
- end;
- TSWFTryOffsetMarker = class (TSWFOffsetMarker)
- public
- isValueInit: Boolean;
- property Value: Variant read FValue write SetValue;
- property ValueType: TSWFValueType read FValueType write SetValueType;
- end;
- TSWFActionPush = class (TSWFAction4)
- public
- constructor Create;
- destructor Destroy; override;
- function AddValue(V: Variant): Integer;
- procedure Assign(Source: TSWFAction); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- function ValueCount: Word;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Value[index: integer]: Variant read GetValue write SetValue;
- property ValueInfo[index: integer]: TPushValueInfo read GetValueInfo;
- end;
- TSWFActionPop = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Arithmetic Operators --
- TSWFActionAdd = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionSubtract = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionMultiply = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionDivide = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Numerical Comparison --
- TSWFActionEquals = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionLess = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Logical Operators --
- TSWFActionAnd = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionOr = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionNot = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- String Manipulation --
- TSWFActionStringEquals = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionStringLength = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionStringAdd = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionStringExtract = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionStringLess = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionMBStringLength = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionMBStringExtract = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Type Conversion --
- TSWFActionToInteger = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionCharToAscii = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionAsciiToChar = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionMBCharToAscii = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionMBAsciiToChar = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Control Flow --
- TSWFActionJump = class (TSWFAction4)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property BranchOffset: SmallInt read FBranchOffset write SetBranchOffset;
- property BranchOffsetMarker: TSWFOffsetMarker read GetBranchOffsetMarker write FBranchOffsetMarker;
- property StaticOffset: Boolean read FStaticOffset write FStaticOffset;
- end;
- TSWFActionIf = class (TSWFActionJump)
- public
- constructor Create;
- end;
- TSWFActionCall = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Variables --
- TSWFActionGetVariable = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionSetVariable = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Movie Control --
- TSWFActionGetURL2 = class (TSWFAction4)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property LoadTargetFlag: Boolean read FLoadTargetFlag write FLoadTargetFlag;
- property LoadVariablesFlag: Boolean read FLoadVariablesFlag write FLoadVariablesFlag;
- property SendVarsMethod: Byte read FSendVarsMethod write FSendVarsMethod;
- end;
- TSWFActionGotoFrame2 = class (TSWFAction4)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property PlayFlag: Boolean read FPlayFlag write FPlayFlag;
- property SceneBias: Word read FSceneBias write FSceneBias;
- property SceneBiasFlag: Boolean read FSceneBiasFlag write FSceneBiasFlag;
- end;
- TSWFActionSetTarget2 = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionGetProperty = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionSetProperty = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionCloneSprite = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionRemoveSprite = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionStartDrag = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionEndDrag = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionWaitForFrame2 = class (TSWFAction4)
- public
- constructor Create;
- end;
- // -- Utilities --
- TSWFActionTrace = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionGetTime = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionRandomNumber = class (TSWFAction4)
- public
- constructor Create;
- end;
- TSWFActionFSCommand2 = class (TSWFAction4)
- public
- constructor Create;
- end;
- // ------------ SWF 5 -----------
- // -- ScriptObject Actions --
- TSWFActionByteCode = class (TSWFAction4)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property ByteCode[Index: word]: Byte read GetByteCode write SetByteCode;
- property Data: TStream read GetData write SetData;
- property DataSize: LongInt read FDataSize write SetDataSize;
- property SelfDestroy: Boolean read FSelfDestroy write FSelfDestroy;
- property StrByteCode: AnsiString read GetStrByteCode write SetStrByteCode;
- end;
- TSWFAction5 = class (TSWFAction)
- public
- function MinVersion: Byte; override;
- end;
- TSWFActionCallFunction = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionCallMethod = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionConstantPool = class (TSWFAction5)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property ConstantPool: TStringList read FConstantPool;
- end;
- TSWFActionDefineFunction = class (TSWFAction5)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property CodeSize: Word read FCodeSize write SetCodeSize;
- property CodeSizeMarker: TSWFOffsetMarker read GetCodeSizeMarker write FCodeSizeMarker;
- property FunctionName: string read FFunctionName write FFunctionName;
- property Params: TStringList read FParams;
- property StaticOffset: Boolean read FStaticOffset write FStaticOffset;
- end;
- TSWFActionDefineLocal = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionDefineLocal2 = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionDelete = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionDelete2 = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionEnumerate = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionEquals2 = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionGetMember = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionInitArray = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionInitObject = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionNewMethod = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionNewObject = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionSetMember = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionTargetPath = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionWith = class (TSWFAction5)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Size: Word read FSize write SetSize;
- property SizeMarker: TSWFOffsetMarker read GetSizeMarker write FSizeMarker;
- property StaticOffset: Boolean read FStaticOffset write FStaticOffset;
- end;
- // -- Type Actions --
- TSWFActionToNumber = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionToString = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionTypeOf = class (TSWFAction5)
- public
- constructor Create;
- end;
- // -- Math Actions --
- TSWFActionAdd2 = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionLess2 = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionModulo = class (TSWFAction5)
- public
- constructor Create;
- end;
- // -- Stack Operator Actions --
- TSWFActionBitAnd = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionBitLShift = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionBitOr = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionBitRShift = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionBitURShift = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionBitXor = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionDecrement = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionIncrement = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionPushDuplicate = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionReturn = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionStackSwap = class (TSWFAction5)
- public
- constructor Create;
- end;
- TSWFActionStoreRegister = class (TSWFAction5)
- public
- constructor Create;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property RegisterNumber: Byte read FRegisterNumber write FRegisterNumber;
- end;
- // ------------ SWF 6 -----------
- TSWFAction6 = class (TSWFAction)
- public
- function MinVersion: Byte; override;
- end;
- TSWFActionInstanceOf = class (TSWFAction6)
- public
- constructor Create;
- end;
- TSWFActionEnumerate2 = class (TSWFAction6)
- public
- constructor Create;
- end;
- TSWFActionStrictEquals = class (TSWFAction6)
- public
- constructor Create;
- end;
- TSWFActionGreater = class (TSWFAction6)
- public
- constructor Create;
- end;
- TSWFActionStringGreater = class (TSWFAction6)
- public
- constructor Create;
- end;
- // ------------ SWF 7 -----------
- TSWFAction7 = class (TSWFAction)
- public
- function MinVersion: Byte; override;
- end;
- TSWFActionDefineFunction2 = class (TSWFAction7)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure AddParam(const param: string; reg: byte);
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property CodeSize: Word read FCodeSize write SetCodeSize;
- property CodeSizeMarker: TSWFOffsetMarker read GetCodeSizeMarker write FCodeSizeMarker;
- property FunctionName: string read FFunctionName write FFunctionName;
- property Parameters: TStringList read FParameters write FParameters;
- property ParamRegister[Index: byte]: byte read GetParamRegister write SetParamRegister;
- property PreloadArgumentsFlag: Boolean read FPreloadArgumentsFlag write FPreloadArgumentsFlag;
- property PreloadGlobalFlag: Boolean read FPreloadGlobalFlag write FPreloadGlobalFlag;
- property PreloadParentFlag: Boolean read FPreloadParentFlag write FPreloadParentFlag;
- property PreloadRootFlag: Boolean read FPreloadRootFlag write FPreloadRootFlag;
- property PreloadSuperFlag: Boolean read FPreloadSuperFlag write FPreloadSuperFlag;
- property PreloadThisFlag: Boolean read FPreloadThisFlag write FPreloadThisFlag;
- property RegisterCount: Byte read FRegisterCount write FRegisterCount;
- property StaticOffset: Boolean read FStaticOffset write FStaticOffset;
- property SuppressArgumentsFlag: Boolean read FSuppressArgumentsFlag write FSuppressArgumentsFlag;
- property SuppressSuperFlag: Boolean read FSuppressSuperFlag write FSuppressSuperFlag;
- property SuppressThisFlag: Boolean read FSuppressThisFlag write FSuppressThisFlag;
- end;
- TSWFActionExtends = class (TSWFAction7)
- public
- constructor Create;
- end;
- TSWFActionCastOp = class (TSWFAction7)
- public
- constructor Create;
- end;
- TSWFActionImplementsOp = class (TSWFAction7)
- public
- constructor Create;
- end;
- TSWFActionTry = class (TSWFAction7)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAction); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteActionBody(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property CatchBlockFlag: Boolean read FCatchBlockFlag write FCatchBlockFlag;
- property CatchInRegisterFlag: Boolean read FCatchInRegisterFlag write FCatchInRegisterFlag;
- property CatchName: string read FCatchName write FCatchName;
- property CatchRegister: Byte read FCatchRegister write FCatchRegister;
- property CatchSize: Word read FCatchSize write SetCatchSize;
- property CatchSizeMarker: TSWFTryOffsetMarker read GetCatchSizeMarker write FCatchSizeMarker;
- property FinallyBlockFlag: Boolean read FFinallyBlockFlag write FFinallyBlockFlag;
- property FinallySize: Word read FFinallySize write SetFinallySize;
- property FinallySizeMarker: TSWFTryOffsetMarker read GetFinallySizeMarker write FFinallySizeMarker;
- property StaticOffset: Boolean read FStaticOffset write FStaticOffset;
- property TrySize: Word read FTrySize write SetTrySize;
- property TrySizeMarker: TSWFTryOffsetMarker read GetTrySizeMarker write FTrySizeMarker;
- end;
- TSWFActionThrow = class (TSWFAction7)
- public
- constructor Create;
- end;
- TSWFActionList = class (TObjectList)
- public
- property Action[Index: word]: TSWFAction read GetAction write SetAction; default;
- end;
- TSWFDoAction = class (TSWFObject)
- public
- constructor Create; overload; virtual;
- constructor Create(A: TSWFActionList); overload; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Actions: TSWFActionList read FActions;
- property ParseActions: Boolean read FParseActions write FParseActions;
- {$IFDEF XMLSupport}
- property OnXMLReadAction: TSWFObjectXMLRWEvent read FOnXMLReadAction write FOnXMLReadAction;
- {$ENDIF}
- end;
- TSWFDoInitAction = class (TSWFDoAction)
- public
- constructor Create; override;
- constructor Create(A: TSWFActionList); override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property SpriteID: Word read FSpriteID write FSpriteID;
- end;
- // ===========================================================
- // AS3
- // ===========================================================
- TSWFDoubleObject = class (TObject)
- Value: Double;
- constructor Create(init: double);
- end;
- TSWFNameSpaceObject = class (TObject)
- Kind: byte;
- Name: Longint;
- constructor Create(kind: byte; name: Longint);
- end;
- TSWFIntegerList = class (TList)
- public
- {$IFDEF VER130}
- procedure Assign(source: TSWFIntegerList);
- {$ENDIF}
- procedure WriteToStream(be: TBitsEngine);
- procedure AddInt(value: longint);
- property Int[index: longint]: longint read GetInt write SetInt;
- end;
- TSWFBasedMultiNameObject = class (TObject)
- public
- procedure Assign(source: TSWFBasedMultiNameObject); virtual;
- procedure ReadFromStream(be: TBitsEngine); virtual;
- procedure WriteToStream(be: TBitsEngine); virtual;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual;
- procedure WriteToXMLNode(Node: IXMLNode); virtual;
- {$ENDIF}
- property MultinameKind: byte read FMultinameKind write FMultinameKind;
- end;
- TSWFmnQName = class (TSWFBasedMultiNameObject)
- public
- procedure Assign(source: TSWFBasedMultiNameObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property NS: Longint read FNS write FNS;
- property Name: Longint read FName write FName;
- end;
- TSWFmnRTQName = class (TSWFBasedMultiNameObject)
- public
- procedure Assign(source: TSWFBasedMultiNameObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Name: Longint read FName write FName;
- end;
- TSWFmnRTQNameL = TSWFBasedMultiNameObject;
- TSWFmnMultiname = class (TSWFBasedMultiNameObject)
- public
- procedure Assign(source: TSWFBasedMultiNameObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property NSSet: Longint read FNSSet write FNSSet;
- property Name: Longint read FName write FName;
- end;
- TSWFmnMultinameL = class (TSWFBasedMultiNameObject)
- public
- procedure Assign(source: TSWFBasedMultiNameObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property NSSet: Longint read FNSSet write FNSSet;
- end;
- TSWFAS3ConstantPool = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFAS3ConstantPool);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- property Double[index: longint]: Double read GetDouble write SetDouble;
- property DoubleCount: longint read GetDoubleCount;
- property Int[index: longint]: longint read GetInt write SetInt;
- property IntCount: longint read GetIntCount;
- property Multiname[index: longint]: TSWFBasedMultiNameObject read GetMultiname write SetMultiname;
- property MultinameCount: longint read GetMultinameCount;
- property NameSpace[index: longint]: TSWFNameSpaceObject read GetNameSpace write SetNameSpace;
- property NameSpaceCount: longint read GetNameSpaceCount;
- property NameSpaceSET[index: longint]: TSWFIntegerList read GetNameSpaceSET write SetNameSpaceSET;
- property NameSpaceSETCount: longint read GetNameSpaceSETCount;
- property Strings[index: longint]: string read GetStrings write SetStrings;
- property StringsCount: longint read GetStringsCount;
- property UInt[index: longint]: longword read GetUInt write SetUInt;
- property UIntCount: longword read GetUIntCount;
- end;
- TSWFAS3MethodOptions = class (TObject)
- val: longint;
- kind: byte;
- end;
- TSWFAS3Method = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3Method);
- function AddOption: TSWFAS3MethodOptions;
- property HasOptional: boolean read FHasOptional write FHasOptional;
- property HasParamNames: boolean read FHasParamNames write FHasParamNames;
- property Name: Longint read FName write FName;
- property NeedActivation: boolean read FNeedActivation write FNeedActivation;
- property NeedArguments: boolean read FNeedArguments write FNeedArguments;
- property NeedRest: boolean read FNeedRest write FNeedRest;
- property Option[index: integer]: TSWFAS3MethodOptions read GetOption;
- property Options: TObjectList read FOptions;
- property ParamNames: TSWFIntegerList read FParamNames;
- property ParamTypes: TSWFIntegerList read FParamTypes;
- property ReturnType: Longint read FReturnType write FReturnType;
- property SetDxns: boolean read FSetDxns write FSetDxns;
- end;
- TSWFAS3Methods = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3Methods);
- function AddMethod: TSWFAS3Method;
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- property Method[index: integer]: TSWFAS3Method read GetMethod;
- end;
- TSWFAS3MetadataItem = class (TObject)
- public
- property Value: LongInt read FValue write FValue;
- property Key: LongInt read FKey write FKey;
- end;
- TSWFAS3MetadataInfo = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3MetadataInfo);
- function AddMetadataItem: TSWFAS3MetadataItem;
- property InfoList: TObjectList read FInfoList;
- property MetaItem[index: integer]: TSWFAS3MetadataItem read GetItem;
- property Name: Longint read FName write FName;
- end;
- TSWFAS3Metadata = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3Metadata);
- function AddMetaInfo: TSWFAS3MetadataInfo;
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- {$IFDEF XMLSupport}
- procedure WriteToXMLNode(SelfNode: IXMLNode);
- {$ENDIF}
- property MetadataList: TObjectList read FMetadataList;
- property MetadataInfo[index: integer]: TSWFAS3MetadataInfo read GetMetadata;
- end;
- TSWFAS3Trait = class (TObject)
- public
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3Trait);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- {$IFDEF XMLSupport}
- procedure WriteToXMLNode(Node: IXMLNode);
- procedure ReadFromXMLNode(Node: IXMLNode);
- {$ENDIF}
- property ID: LongInt read FID write FID;
- property IsFinal: Boolean read FIsFinal write FIsFinal;
- property IsMetadata: Boolean read FIsMetadata write SetIsMetadata;
- property IsOverride: Boolean read FIsOverride write FIsOverride;
- property Name: LongInt read FName write FName;
- property TraitType: byte read FTraitType write FTraitType;
- property Metadata: TSWFIntegerList read GetMetadata;
- property SpecID: LongInt read FSpecID write FSpecID;
- property VIndex: LongInt read FVIndex write FVIndex;
- property VKind: byte read FVKind write FVKind;
- end;
- TSWFAS3Traits = class (TObject)
- FTraits: TObjectList;
- function GetTrait(Index: Integer): TSWFAS3Trait;
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3Traits);
- function AddTrait: TSWFAS3Trait;
- property Trait[Index: longint]: TSWFAS3Trait read GetTrait;
- property Traits: TObjectList read FTraits;
- end;
- TSWFAS3InstanceItem = class (TSWFAS3Traits)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3InstanceItem);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- property ClassFinal: Boolean read FClassFinal write FClassFinal;
- property ClassInterface: Boolean read FClassInterface write FClassInterface;
- property ClassProtectedNs: Boolean read FClassProtectedNs write FClassProtectedNs;
- property ClassSealed: Boolean read FClassSealed write FClassSealed;
- property Iinit: LongInt read FIinit write FIinit;
- property Interfaces: TSWFIntegerList read FInterfaces;
- property Name: LongInt read FName write FName;
- property ProtectedNs: LongInt read FProtectedNs write FProtectedNs;
- property SuperName: LongInt read FSuperName write FSuperName;
- end;
- TSWFAS3Instance = class (TObjectList)
- public
- procedure Assign(source: TSWFAS3Instance);
- function AddInstanceItem: TSWFAS3InstanceItem;
- procedure ReadFromStream(Count: Longint; be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- property InstanceItem[Index: longint]: TSWFAS3InstanceItem read GetInstanceItem;
- end;
- TSWFAS3ClassInfo = class (TSWFAS3Traits)
- public
- procedure Assign(source: TSWFAS3ClassInfo);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- property CInit: LongInt read FCInit write FCInit;
- end;
- TSWFAS3Classes = class(TObjectList)
- public
- procedure Assign(source: TSWFAS3Classes);
- procedure ReadFromStream(rcount: longInt; be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- function AddClassInfo: TSWFAS3ClassInfo;
- property _ClassInfo[Index: Integer]: TSWFAS3ClassInfo read GetClassInfo;
- end;
- TSWFAS3ScriptInfo = TSWFAS3ClassInfo;
- TSWFAS3Scripts = class(TObjectList)
- public
- procedure Assign(source: TSWFAS3Scripts);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- function AddScriptInfo: TSWFAS3ScriptInfo;
- property ScriptInfo[Index: Integer]: TSWFAS3ScriptInfo read GetScriptInfo;
- end;
- TSWFAS3Exception = class (TObject)
- public
- procedure Assign(source: TSWFAS3Exception);
- property ExcType: LongInt read FExcType write FExcType;
- property From: LongInt read FFrom write FFrom;
- property Target: LongInt read FTarget write FTarget;
- property VarName: LongInt read FVarName write FVarName;
- property _To: LongInt read F_To write F_To;
- end;
- TSWFAS3MethodBodyInfo = class (TSWFAS3Traits)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(source: TSWFAS3MethodBodyInfo);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- function AddException: TSWFAS3Exception;
- property Code: TMemoryStream read FCode;
- property StrCode: AnsiString read GetStrByteCode write SetStrByteCode;
- property CodeItem[Index: Integer]: byte read GetCodeItem write SetCodeItem;
- property Exception[Index: Integer]: TSWFAS3Exception read GetException;
- property Exceptions: TObjectList read FExceptions;
- property InitScopeDepth: LongInt read FInitScopeDepth write FInitScopeDepth;
- property LocalCount: LongInt read FLocalCount write FLocalCount;
- property MaxScopeDepth: LongInt read FMaxScopeDepth write FMaxScopeDepth;
- property MaxStack: LongInt read FMaxStack write FMaxStack;
- property Method: LongInt read FMethod write FMethod;
- end;
- TSWFAS3MethodBodies = class(TObjectList)
- public
- procedure Assign(source: TSWFAS3MethodBodies);
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- function AddMethodBodyInfo: TSWFAS3MethodBodyInfo;
- property MethodBodyInfo[Index: Integer]: TSWFAS3MethodBodyInfo read GetClassInfo;
- end;
- TSWFDoABC = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ActionName: string read FActionName write FActionName;
- property Classes: TSWFAS3Classes read GetClasses;
- property ConstantPool: TSWFAS3ConstantPool read FConstantPool;
- property Data: TStream read GetData write SetData;
- property DataSize: LongInt read FDataSize write SetDataSize;
- property DoAbcLazyInitializeFlag: boolean read FDoAbcLazyInitializeFlag write FDoAbcLazyInitializeFlag;
- property Instance: TSWFAS3Instance read GetInstance;
- property MajorVersion: Word read FMajorVersion write FMajorVersion;
- property Metadata: TSWFAS3Metadata read GetMetadata;
- property MethodBodies: TSWFAS3MethodBodies read GetMethodBodies;
- property Methods: TSWFAS3Methods read GetMethods;
- property MinorVersion: Word read FMinorVersion write FMinorVersion;
- property ParseActions: Boolean read FParseActions write FParseActions;
- property Scripts: TSWFAS3Scripts read GetScripts;
- property SelfDestroy: Boolean read FSelfDestroy write FSelfDestroy;
- property StrVersion: string read GetStrVersion write SetStrVersion;
- end;
- // ===========================================================
- // Display List
- // ===========================================================
- TSWFBasedPlaceObject = class (TSWFObject)
- public
- procedure Assign(Source: TBasedSWFObject); override;
- property CharacterId: Word read FCharacterId write SetCharacterId;
- property Depth: Word read FDepth write FDepth;
- end;
- TSWFPlaceObject = class (TSWFBasedPlaceObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ColorTransform: TSWFColorTransform read FColorTransform;
- property InitColorTransform: Boolean read GetInitColorTransform write FInitColorTransform;
- property Matrix: TSWFMatrix read FMatrix;
- end;
- TSWFClipActionRecord = class (TSWFActionList)
- public
- // constructor Create;
- // destructor Destroy; override;
- procedure Assign(Source: TSWFClipActionRecord);
- property Actions: TSWFActionList read GetActions;
- property EventFlags: TSWFClipEvents read FEventFlags write FEventFlags;
- property KeyCode: Byte read FKeyCode write SetKeyCode;
- end;
- TSWFClipActions = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- function AddActionRecord(EventFlags: TSWFClipEvents; KeyCode: byte): TSWFClipActionRecord;
- procedure Assign(Source: TSWFClipActions);
- function Count: integer;
- property ActionRecord[Index: Integer]: TSWFClipActionRecord read GetActionRecord;
- property ActionRecords: TObjectList read FActionRecords;
- property AllEventFlags: TSWFClipEvents read FAllEventFlags write FAllEventFlags;
- end;
- TSWFPlaceObject2 = class (TSWFBasedPlaceObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function ClipActions: TSWFClipActions;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure ReadEventActionsFromXML(Node: IXMLNode; Settings: TXMLReadWriteSettings);
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ClipDepth: Word read FClipDepth write SetClipDepth;
- property ColorTransform: TSWFColorTransform read GetColorTransform;
- property Matrix: TSWFMatrix read GetMatrix;
- property Name: string read FName write SetName;
- property ParseActions: Boolean read FParseActions write FParseActions;
- property PlaceFlagHasCharacter: Boolean read FPlaceFlagHasCharacter write FPlaceFlagHasCharacter;
- property PlaceFlagHasClipActions: Boolean read FPlaceFlagHasClipActions write FPlaceFlagHasClipActions;
- property PlaceFlagHasClipDepth: Boolean read FPlaceFlagHasClipDepth write FPlaceFlagHasClipDepth;
- property PlaceFlagHasColorTransform: Boolean read FPlaceFlagHasColorTransform write FPlaceFlagHasColorTransform;
- property PlaceFlagHasMatrix: Boolean read FPlaceFlagHasMatrix write FPlaceFlagHasMatrix;
- property PlaceFlagHasName: Boolean read FPlaceFlagHasName write FPlaceFlagHasName;
- property PlaceFlagHasRatio: Boolean read FPlaceFlagHasRatio write FPlaceFlagHasRatio;
- property PlaceFlagMove: Boolean read FPlaceFlagMove write FPlaceFlagMove;
- property Ratio: Word read FRatio write SetRatio;
- property SWFVersion: Byte read FSWFVersion write FSWFVersion;
- {$IFDEF XMLSupport}
- property OnXMLReadAction: TSWFObjectXMLRWEvent read FOnXMLReadAction write FOnXMLReadAction;
- {$ENDIF}
- end;
- TSWFFilter = class (TObject)
- public
- procedure Assign(Source: TSWFFilter); virtual; abstract;
- procedure ReadFromStream(be: TBitsEngine); virtual; abstract;
- procedure WriteToStream(be: TBitsEngine); virtual; abstract;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual; abstract;
- procedure WriteToXMLNode(Node: IXMLNode); virtual; abstract;
- {$ENDIF}
- property FilterID: TSWFFilterID read FFilterID write FFilterID;
- end;
- TSWFColorMatrixFilter = class (TSWFFilter)
- public
- constructor Create;
- procedure AdjustColor(Brightness, Contrast, Saturation, Hue: Integer);
- procedure Assign(Source: TSWFFilter); override;
- procedure ResetValues;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Matrix[Index: Integer]: single read GetMatrix write SetMatrix;
- property R0: single read GetR0 write SetR0;
- property R1: single read GetR1 write SetR1;
- property R2: single read GetR2 write SetR2;
- property R3: single read GetR3 write SetR3;
- property R4: single read GetR4 write SetR4;
- property G0: single read GetG0 write SetG0;
- property G1: single read GetG1 write SetG1;
- property G2: single read GetG2 write SetG2;
- property G3: single read GetG3 write SetG3;
- property G4: single read GetG4 write SetG4;
- property B0: single read GetB0 write SetB0;
- property B1: single read GetB1 write SetB1;
- property B2: single read GetB2 write SetB2;
- property B3: single read GetB3 write SetB3;
- property B4: single read GetB4 write SetB4;
- property A0: single read GetA0 write SetA0;
- property A1: single read GetA1 write SetA1;
- property A2: single read GetA2 write SetA2;
- property A3: single read GetA3 write SetA3;
- property A4: single read GetA4 write SetA4;
- end;
- TSWFConvolutionFilter = class (TSWFFilter)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFilter); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Bias: single read FBias write FBias;
- property Clamp: Boolean read FClamp write FClamp;
- property DefaultColor: TSWFRGBA read FDefaultColor;
- property Divisor: single read FDivisor write FDivisor;
- property Matrix[Index: Integer]: single read GetMatrix write SetMatrix;
- property MatrixX: byte read FMatrixX write FMatrixX;
- property MatrixY: byte read FMatrixY write FMatrixY;
- property PreserveAlpha: Boolean read FPreserveAlpha write FPreserveAlpha;
- end;
- TSWFBlurFilter = class (TSWFFilter)
- public
- constructor Create; virtual;
- procedure Assign(Source: TSWFFilter); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property BlurX: single read FBlurX write FBlurX;
- property BlurY: single read FBlurY write FBlurY;
- property Passes: byte read FPasses write FPasses;
- end;
- TSWFGlowFilter = class(TSWFBlurFilter)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFilter); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property GlowColor: TSWFRGBA read FGlowColor;
- property InnerGlow: Boolean read FInnerGlow write FInnerGlow;
- property Knockout: Boolean read FKnockout write FKnockout;
- property CompositeSource: Boolean read FCompositeSource write FCompositeSource;
- property Strength: single read FStrength write FStrength;
- end;
- TSWFDropShadowFilter = class (TSWFBlurFilter)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFilter); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Angle: single read FAngle write FAngle;
- property CompositeSource: Boolean read FCompositeSource write FCompositeSource;
- property Distance: single read FDistance write FDistance;
- property DropShadowColor: TSWFRGBA read FDropShadowColor;
- property InnerShadow: Boolean read FInnerShadow write FInnerShadow;
- property Knockout: Boolean read FKnockout write FKnockout;
- property Strength: single read FStrength write FStrength;
- end;
- TSWFBevelFilter = class(TSWFBlurFilter)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFilter); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Angle: single read FAngle write FAngle;
- property CompositeSource: Boolean read FCompositeSource write FCompositeSource;
- property Distance: single read FDistance write FDistance;
- property ShadowColor: TSWFRGBA read FShadowColor;
- property InnerShadow: Boolean read FInnerShadow write FInnerShadow;
- property Knockout: Boolean read FKnockout write FKnockout;
- property HighlightColor: TSWFRGBA read FHighlightColor;
- property OnTop: Boolean read FOnTop write FOnTop;
- property Strength: single read FStrength write FStrength;
- end;
- TSWFGradientRec = record
- color: recRGBA;
- ratio: byte;
- end;
- TSWFGradientGlowFilter = class(TSWFBlurFilter)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFilter); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Angle: single read FAngle write FAngle;
- property CompositeSource: Boolean read FCompositeSource write FCompositeSource;
- property Distance: single read FDistance write FDistance;
- property Gradient[Index: byte]: TSWFGradientRec read GetGradient;
- property GradientColor[Index: byte]: TSWFRGBA read GetGradientColor;
- property GradientRatio[Index: byte]: Byte read GetGradientRatio write SetGradientRatio;
- property InnerShadow: Boolean read FInnerShadow write FInnerShadow;
- property Knockout: Boolean read FKnockout write FKnockout;
- property NumColors: byte read FNumColors write SetNumColors;
- property OnTop: Boolean read FOnTop write FOnTop;
- property Strength: single read FStrength write FStrength;
- end;
- TSWFGradientBevelFilter = class (TSWFGradientGlowFilter)
- public
- constructor Create; override;
- end;
- TSWFFilterList = class (TObjectList)
- public
- function AddFilter(id: TSwfFilterID): TSWFFilter;
- procedure ReadFromStream(be: TBitsEngine);
- procedure WriteToStream(be: TBitsEngine);
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings);
- procedure WriteToXMLNode(Node: IXMLNode);
- {$ENDIF}
- property Filter[Index: Integer]: TSWFFilter read GetFilter;
- end;
- TSWFPlaceObject3 = class(TSWFPlaceObject2)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property BlendMode: TSWFBlendMode read FBlendMode write FBlendMode;
- property _ClassName: string read FClassName write SetClassName;
- property PlaceFlagHasCacheAsBitmap: Boolean read FPlaceFlagHasCacheAsBitmap
- write FPlaceFlagHasCacheAsBitmap;
- property PlaceFlagHasBlendMode: Boolean read FPlaceFlagHasBlendMode write
- FPlaceFlagHasBlendMode;
- property PlaceFlagHasImage: boolean read FPlaceFlagHasImage write FPlaceFlagHasImage;
- property PlaceFlagHasClassName: boolean read FPlaceFlagHasClassName write FPlaceFlagHasClassName;
- property PlaceFlagHasFilterList: Boolean read FPlaceFlagHasFilterList write
- FPlaceFlagHasFilterList;
- property SaveAsPO2: boolean read FSaveAsPO2 write FSaveAsPO2;
- property SurfaceFilterList: TSWFFilterList read GetSurfaceFilterList;
- end;
- TSWFRemoveObject = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CharacterID: Word read FCharacterID write FCharacterID;
- property Depth: Word read FDepth write FDepth;
- end;
- TSWFRemoveObject2 = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property depth: Word read Fdepth write Fdepth;
- end;
- TSWFShowFrame = class (TSWFObject)
- public
- constructor Create;
- end;
- // =========================================================
- // Shape
- // =========================================================
- TSWFFillStyle = class (TObject)
- public
- procedure Assign(Source: TSWFFillStyle); virtual;
- procedure ReadFromStream(be: TBitsEngine); virtual; abstract;
- procedure WriteToStream(be: TBitsEngine); virtual; abstract;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual; abstract;
- procedure WriteToXMLNode(Node: IXMLNode); virtual; abstract;
- {$ENDIF}
- property hasAlpha: Boolean read FhasAlpha write FhasAlpha;
- property SWFFillType: TSWFFillType read FSWFFillType write FSWFFillType;
- end;
- TSWFLineStyle = class (TObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TSWFLineStyle); virtual;
- procedure ReadFromStream(be: TBitsEngine); virtual;
- procedure WriteToStream(be: TBitsEngine); virtual;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual;
- procedure WriteToXMLNode(Node: IXMLNode); virtual;
- {$ENDIF}
- property Color: TSWFRGBA read FColor;
- property Width: Word read FWidth write FWidth;
- end;
- TSWFLineStyle2 = class (TSWFLineStyle)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TSWFLineStyle); override;
- function GetFillStyle(style: integer): TSWFFillStyle;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property HasFillFlag: Boolean read FHasFillFlag write FHasFillFlag;
- property StartCapStyle: byte read FStartCapStyle write FStartCapStyle;
- property JoinStyle: byte read FJoinStyle write FJoinStyle;
- property NoClose: Boolean read FNoClose write FNoClose;
- property NoHScaleFlag: Boolean read FNoHScaleFlag write FNoHScaleFlag;
- property NoVScaleFlag: Boolean read FNoVScaleFlag write FNoVScaleFlag;
- property PixelHintingFlag: Boolean read FPixelHintingFlag write
- FPixelHintingFlag;
- property EndCapStyle: byte read FEndCapStyle write FEndCapStyle;
- property MiterLimitFactor: single read FMiterLimitFactor write
- FMiterLimitFactor;
- end;
- TSWFColorFill = class (TSWFFillStyle)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Color: TSWFRGBA read FColor;
- end;
- TSWFImageFill = class (TSWFFillStyle)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure ScaleTo(Frame: TRect; W, H: word);
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property ImageID: Word read FImageID write FImageID;
- property Matrix: TSWFMatrix read FMatrix;
- end;
- TSWFBaseGradientFill = class(TSWFFillStyle)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Count: Byte read FCount write FCount;
- property Gradient[Index: byte]: TSWFGradientRec read GetGradient;
- property GradientColor[Index: Integer]: TSWFRGBA read GetGradientColor;
- property GradientRatio[Index: Integer]: Byte read GetGradientRatio write SetGradientRatio;
- end;
- TSWFGradientFill = class (TSWFBaseGradientFill)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure ScaleTo(Frame: TRect);
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Matrix: TSWFMatrix read FMatrix;
- end;
- TSWFFocalGradientFill = class(TSWFGradientFill)
- public
- constructor Create;
- procedure Assign(Source: TSWFFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property FocalPoint: single read GetFocalPoint write SetFocalPoint;
- property InterpolationMode;
- property SpreadMode;
- end;
- TSWFShapeRecord = class (TObject)
- public
- procedure Assign(Source: TSWFShapeRecord); virtual;
- procedure WriteToStream(be: TBitsEngine); virtual; abstract;
- property ShapeRecType: TShapeRecType read FShapeRecType write FShapeRecType;
- end;
- TSWFEndShapeRecord = class (TSWFShapeRecord)
- public
- constructor Create;
- procedure WriteToStream(be: TBitsEngine); override;
- end;
- TSWFStraightEdgeRecord = class (TSWFShapeRecord)
- public
- constructor Create;
- procedure Assign(Source: TSWFShapeRecord); override;
- procedure WriteToStream(be: TBitsEngine); override;
- property X: LongInt read FX write FX;
- property Y: LongInt read FY write FY;
- end;
- TSWFStyleChangeRecord = class (TSWFStraightEdgeRecord)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFShapeRecord); override;
- procedure WriteToStream(be: TBitsEngine); override;
- property Fill0Id: Word read FFill0Id write SetFill0Id;
- property Fill1Id: Word read FFill1Id write SetFill1Id;
- property LineId: Word read FLineId write SetLineId;
- property NewFillStyles: TObjectList read GetNewFillStyles;
- property NewLineStyles: TObjectList read GetNewLineStyles;
- property StateFillStyle0: Boolean read FStateFillStyle0 write FStateFillStyle0;
- property StateFillStyle1: Boolean read FStateFillStyle1 write FStateFillStyle1;
- property StateLineStyle: Boolean read FStateLineStyle write FStateLineStyle;
- property StateMoveTo: Boolean read FStateMoveTo write FStateMoveTo;
- property StateNewStyles: Boolean read FStateNewStyles write FStateNewStyles;
- end;
- TSWFCurvedEdgeRecord = class (TSWFShapeRecord)
- public
- constructor Create;
- procedure Assign(Source: TSWFShapeRecord); override;
- procedure WriteToStream(be: TBitsEngine); override;
- property AnchorX: LongInt read FAnchorX write FAnchorX;
- property AnchorY: LongInt read FAnchorY write FAnchorY;
- property ControlX: LongInt read FControlX write FControlX;
- property ControlY: LongInt read FControlY write FControlY;
- end;
- TSWFDefineShape = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property EdgeRecord[index: longint]: TSWFShapeRecord read GetEdgeRecord;
- property Edges: TObjectList read FEdges write FEdges;
- property FillStyles: TObjectList read FFillStyles;
- property hasAlpha: Boolean read FhasAlpha write FhasAlpha;
- property LineStyles: TObjectList read FLineStyles;
- property ShapeBounds: TSWFRect read FShapeBounds;
- property ShapeId: Word read FShapeId write FShapeId;
- end;
- TSWFDefineShape2 = class (TSWFDefineShape)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFDefineShape3 = class (TSWFDefineShape)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFDefineShape4 = class (TSWFDefineShape)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property EdgeBounds: TSWFRect read FEdgeBounds;
- property UsesNonScalingStrokes: Boolean read FUsesNonScalingStrokes write
- FUsesNonScalingStrokes;
- property UsesScalingStrokes: Boolean read FUsesScalingStrokes write
- FUsesScalingStrokes;
- end;
- // ==========================================================
- // Bitmaps
- // ==========================================================
- TSWFDataObject = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure CopyFrom(Source: TBasedSWFObject); override;
- property Data: TStream read GetData write SetData;
- property DataSize: Longint read FDataSize write SetDataSize;
- property OnDataWrite: TSWFTagEvent read FOnDataWrite write FOnDataWrite;
- property SelfDestroy: Boolean read FSelfDestroy write FSelfDestroy;
- end;
- TSWFDefineBinaryData = class (TSWFDataObject)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CharacterID: word read FCharacterID write FCharacterID;
- end;
- TSWFImageTag = class (TSWFDataObject)
- public
- procedure Assign(Source: TBasedSWFObject); override;
- property CharacterID: Word read FCharacterID write FCharacterID;
- end;
- TSWFDefineBits = class (TSWFImageTag)
- public
- constructor Create; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- end;
- TSWFJPEGTables = class (TSWFDataObject)
- public
- constructor Create; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- end;
- TSWFDefineBitsJPEG2 = class (TSWFDefineBits)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- procedure WriteTagBody(be: TBitsEngine); override;
- end;
- TSWFDefineBitsJPEG3 = class (TSWFDefineBitsJPEG2)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure CopyFrom(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property AlphaData: TStream read GetAlphaData write SetAlphaData;
- property AlphaDataSize: LongInt read FAlphaDataSize write FAlphaDataSize;
- property OnAlphaDataWrite: TSWFTagEvent read FOnAlphaDataWrite write FOnAlphaDataWrite;
- property SelfAlphaDestroy: Boolean read FSelfAlphaDestroy write FSelfAlphaDestroy;
- end;
- TSWFDefineBitsLossless = class (TSWFImageTag)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property BitmapColorTableSize: Byte read FBitmapColorTableSize write FBitmapColorTableSize;
- property BitmapFormat: Byte read FBitmapFormat write FBitmapFormat;
- property BitmapHeight: Word read FBitmapHeight write FBitmapHeight;
- property BitmapWidth: Word read FBitmapWidth write FBitmapWidth;
- end;
- TSWFDefineBitsLossless2 = class (TSWFDefineBitsLossless)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- // ==========================================================
- // Morphing
- // ==========================================================
- TSWFMorphGradientRec = record
- StartColor,
- EndColor: recRGBA;
- StartRatio,
- EndRatio: byte;
- end;
- TSWFMorphLineStyle = class (TObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TSWFMorphLineStyle);
- procedure ReadFromStream(be: TBitsEngine); virtual;
- procedure WriteToStream(be: TBitsEngine); virtual;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual;
- procedure WriteToXMLNode(Node: IXMLNode); virtual;
- {$ENDIF}
- property EndColor: TSWFRGBA read FEndColor;
- property EndWidth: Word read FEndWidth write FEndWidth;
- property StartColor: TSWFRGBA read FStartColor;
- property StartWidth: Word read FStartWidth write FStartWidth;
- end;
- TSWFMorphLineStyle2 = class (TSWFMorphLineStyle)
- public
- destructor Destroy; override;
- function GetFillStyle(style: integer): TSWFFillStyle;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property EndCapStyle: byte read FEndCapStyle write FEndCapStyle;
- property HasFillFlag: Boolean read FHasFillFlag write FHasFillFlag;
- property JoinStyle: byte read FJoinStyle write FJoinStyle;
- property MiterLimitFactor: single read FMiterLimitFactor write
- FMiterLimitFactor;
- property NoClose: Boolean read FNoClose write FNoClose;
- property NoHScaleFlag: Boolean read FNoHScaleFlag write FNoHScaleFlag;
- property NoVScaleFlag: Boolean read FNoVScaleFlag write FNoVScaleFlag;
- property PixelHintingFlag: Boolean read FPixelHintingFlag write
- FPixelHintingFlag;
- property StartCapStyle: byte read FStartCapStyle write FStartCapStyle;
- end;
- TSWFMorphFillStyle = class (TObject)
- public
- procedure Assign(Source: TSWFMorphFillStyle); virtual; abstract;
- procedure ReadFromStream(be: TBitsEngine); virtual; abstract;
- procedure WriteToStream(be: TBitsEngine); virtual; abstract;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); virtual; abstract;
- procedure WriteToXMLNode(Node: IXMLNode); virtual; abstract;
- {$ENDIF}
- property SWFFillType: TSWFFillType read FSWFFillType write FSWFFillType;
- end;
- TSWFMorphColorFill = class (TSWFMorphFillStyle)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFMorphFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property EndColor: TSWFRGBA read FEndColor;
- property StartColor: TSWFRGBA read FStartColor;
- end;
- TSWFMorphGradientFill = class (TSWFMorphFillStyle)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TSWFMorphFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property Count: Byte read FCount write FCount;
- property EndColor[Index: Integer]: TSWFRGBA read GetEndColor;
- property EndGradient[Index: byte]: TSWFGradientRec read GetEndGradient;
- property EndMatrix: TSWFMatrix read FEndMatrix;
- property EndRatio[Index: Integer]: Byte read GetEndRatio write SetEndRatio;
- property Gradient[Index: byte]: TSWFMorphGradientRec read GetGradient;
- property StartColor[Index: Integer]: TSWFRGBA read GetStartColor;
- property StartGradient[Index: byte]: TSWFGradientRec read GetStartGradient;
- property StartMatrix: TSWFMatrix read FStartMatrix;
- property StartRatio[Index: Integer]: Byte read GetStartRatio write SetStartRatio;
- end;
- TSWFMorphFocalGradientFill = class (TSWFMorphGradientFill)
- public
- constructor Create; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property StartFocalPoint: single read GetStartFocalPoint write SetStartFocalPoint;
- property EndFocalPoint: single read GetEndFocalPoint write SetEndFocalPoint;
- property InterpolationMode;
- property SpreadMode;
- end;
- TSWFMorphImageFill = class (TSWFMorphFillStyle)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFMorphFillStyle); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode); override;
- procedure WriteToXMLNode(Node: IXMLNode); override;
- {$ENDIF}
- property EndMatrix: TSWFMatrix read FEndMatrix;
- property ImageID: Word read FImageID write FImageID;
- property StartMatrix: TSWFMatrix read FStartMatrix;
- end;
- TSWFDefineMorphShape = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CharacterID: Word read FCharacterID write FCharacterID;
- property EndBounds: TSWFRect read FEndBounds;
- property EndEdgeRecord[Index: Integer]: TSWFShapeRecord read GetEndEdgeRecord;
- property EndEdges: TObjectList read FEndEdges;
- property MorphFillStyles: TObjectList read FMorphFillStyles;
- property MorphLineStyles: TObjectList read FMorphLineStyles;
- property StartBounds: TSWFRect read FStartBounds;
- property StartEdgeRecord[Index: Integer]: TSWFShapeRecord read GetStartEdgeRecord;
- property StartEdges: TObjectList read FStartEdges;
- end;
- TSWFDefineMorphShape2 = class (TSWFDefineMorphShape)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- property StartEdgeBounds: TSWFRect read FStartEdgeBounds;
- property EndEdgeBounds: TSWFRect read FEndEdgeBounds;
- property UsesNonScalingStrokes: Boolean read FUsesNonScalingStrokes write FUsesNonScalingStrokes;
- property UsesScalingStrokes: Boolean read FUsesScalingStrokes write FUsesScalingStrokes;
- end;
- // ==========================================================
- // TEXT
- // ==========================================================
- TSWFDefineFont = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property FontID: Word read FFontID write FFontID;
- property GlyphShapeTable: TObjectList read FGlyphShapeTable write FGlyphShapeTable;
- end;
- TSWFDefineFontInfo = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CodeTable: TList read FCodeTable;
- property FontFlagsANSI: Boolean read FFontFlagsANSI write FFontFlagsANSI;
- property FontFlagsBold: Boolean read FFontFlagsBold write FFontFlagsBold;
- property FontFlagsItalic: Boolean read FFontFlagsItalic write FFontFlagsItalic;
- property FontFlagsShiftJIS: Boolean read FFontFlagsShiftJIS write FFontFlagsShiftJIS;
- property FontFlagsSmallText: Boolean read FFontFlagsSmallText write FFontFlagsSmallText;
- property FontFlagsWideCodes: Boolean read FFontFlagsWideCodes write FFontFlagsWideCodes;
- property FontID: Word read FFontID write FFontID;
- property FontName: string read FFontName write FFontName;
- property SWFVersion: Byte read FSWFVersion write FSWFVersion;
- end;
- TSWFDefineFontInfo2 = class (TSWFDefineFontInfo)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- procedure WriteTagBody(be: TBitsEngine); override;
- property LanguageCode: Byte read FLanguageCode write FLanguageCode;
- end;
- TSWFKerningRecord = class (TObject)
- public
- procedure Assign(source: TSWFKerningRecord);
- property FontKerningAdjustment: Integer read FFontKerningAdjustment write FFontKerningAdjustment;
- property FontKerningCode1: Word read FFontKerningCode1 write FFontKerningCode1;
- property FontKerningCode2: Word read FFontKerningCode2 write FFontKerningCode2;
- end;
- TSWFDefineFont2 = class (TSWFDefineFont)
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CodeTable: TList read FCodeTable;
- property FontAdvanceTable: TList read FFontAdvanceTable;
- property FontAscent: Word read FFontAscent write FFontAscent;
- property FontBoundsTable: TObjectList read FFontBoundsTable;
- property FontDescent: Word read FFontDescent write FFontDescent;
- property FontFlagsANSI: Boolean read FFontFlagsANSI write FFontFlagsANSI;
- property FontFlagsBold: Boolean read FFontFlagsBold write FFontFlagsBold;
- property FontFlagsHasLayout: Boolean read FFontFlagsHasLayout write FFontFlagsHasLayout;
- property FontFlagsItalic: Boolean read FFontFlagsItalic write FFontFlagsItalic;
- property FontFlagsShiftJIS: Boolean read FFontFlagsShiftJIS write FFontFlagsShiftJIS;
- property FontFlagsSmallText: Boolean read FFontFlagsSmallText write FFontFlagsSmallText;
- property FontFlagsWideCodes: Boolean read FFontFlagsWideCodes write FFontFlagsWideCodes;
- property FontFlagsWideOffsets: Boolean read FFontFlagsWideOffsets write FFontFlagsWideOffsets;
- property FontKerningTable: TObjectList read GetFontKerningTable;
- property FontLeading: Word read FFontLeading write FFontLeading;
- property FontName: string read FFontName write FFontName;
- property KerningCount: Word read FKerningCount write FKerningCount;
- property LanguageCode: Byte read FLanguageCode write FLanguageCode;
- property SWFVersion: Byte read FSWFVersion write FSWFVersion;
- end;
- TSWFDefineFont3 = class (TSWFDefineFont2)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFZoneData = class (TObject)
- public
- property AlignmentCoordinate: word read FAlignmentCoordinate write
- FAlignmentCoordinate;
- property Range: word read FRange write FRange;
- end;
- TSWFZoneRecord = class (TObjectList)
- public
- procedure Assign(source: TSWFZoneRecord);
- function AddZoneData: TSWFZoneData;
- property NumZoneData: byte read FNumZoneData write FNumZoneData;
- property ZoneData[Index: Integer]: TSWFZoneData read GetZoneData;
- property ZoneMaskX: Boolean read FZoneMaskX write FZoneMaskX;
- property ZoneMaskY: Boolean read FZoneMaskY write FZoneMaskY;
- end;
- TSWFZoneTable = class (TObjectList)
- public
- function AddZoneRecord: TSWFZoneRecord;
- property ZoneRecord[Index: Integer]: TSWFZoneRecord read GetZoneRecord; default;
- end;
- TSWFDefineFontAlignZones = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CSMTableHint: byte read FCSMTableHint write FCSMTableHint;
- property FontID: word read FFontID write FFontID;
- property ZoneTable: TSWFZoneTable read FZoneTable;
- end;
- TSWFDefineFontName = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property FontID: word read FFontID write FFontID;
- property FontName: string read FFontName write FFontName;
- property FontCopyright: string read FFontCopyright write FFontCopyright;
- end;
- TSWFGlyphEntry = class (TObject)
- public
- property GlyphAdvance: Integer read FGlyphAdvance write FGlyphAdvance;
- property GlyphIndex: Word read FGlyphIndex write FGlyphIndex;
- end;
- TSWFTextRecord = class (TObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TSWFTextRecord);
- procedure WriteToStream(be: TBitsEngine; gb, ab: byte);
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; var gb, ab: byte);
- procedure WriteToXMLNode(Node: IXMLNode);
- {$ENDIF}
- property FontID: Word read FFontID write SetFontID;
- property GlyphEntries: TObjectList read FGlyphEntries;
- property GlyphEntry[Index: word]: TSWFGlyphEntry read GetGlyphEntry;
- property StyleFlagsHasColor: Boolean read FStyleFlagsHasColor write FStyleFlagsHasColor;
- property StyleFlagsHasFont: Boolean read FStyleFlagsHasFont write FStyleFlagsHasFont;
- property StyleFlagsHasXOffset: Boolean read FStyleFlagsHasXOffset write FStyleFlagsHasXOffset;
- property StyleFlagsHasYOffset: Boolean read FStyleFlagsHasYOffset write FStyleFlagsHasYOffset;
- property TextColor: TSWFRGBA read GetTextColor;
- property TextHeight: Word read FTextHeight write SetTextHeight;
- property XOffset: Integer read FXOffset write SetXOffset;
- property YOffset: Integer read FYOffset write SetYOffset;
- end;
- TSWFDefineText = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property AdvanceBits: Byte read FAdvanceBits write FAdvanceBits;
- property CharacterID: Word read FCharacterID write FCharacterID;
- property GlyphBits: Byte read FGlyphBits write FGlyphBits;
- property hasAlpha: Boolean read FhasAlpha write FhasAlpha;
- property TextBounds: TSWFRect read FTextBounds;
- property TextMatrix: TSWFMatrix read FTextMatrix;
- property TextRecord[Index: Integer]: TSWFTextRecord read GetTextRecord;
- property TextRecords: TObjectList read FTextRecords;
- end;
- TSWFDefineText2 = class (TSWFDefineText)
- public
- constructor Create;
- function MinVersion: Byte; override;
- end;
- TSWFDefineEditText = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Align: Byte read FAlign write FAlign;
- property AutoSize: Boolean read FAutoSize write FAutoSize;
- property Border: Boolean read FBorder write FBorder;
- property Bounds: TSWFRect read FBounds;
- property CharacterID: Word read FCharacterID write FCharacterID;
- property FontHeight: Word read FFontHeight write FFontHeight;
- property FontID: Word read FFontID write FFontID;
- property FontClass: string read FFontClass write FFontClass;
- property HasFont: Boolean read FHasFont write FHasFont;
- property HasFontClass: boolean read FHasFontClass write FHasFontClass;
- property HasLayout: Boolean read FHasLayout write FHasLayout;
- property HasMaxLength: Boolean read FHasMaxLength write FHasMaxLength;
- property HasText: Boolean read FHasText write FHasText;
- property HasTextColor: Boolean read FHasTextColor write FHasTextColor;
- property HTML: Boolean read FHTML write FHTML;
- property Indent: Word read FIndent write FIndent;
- property InitialText: AnsiString read FInitialText write FInitialText;
- property Leading: Word read FLeading write FLeading;
- property LeftMargin: Word read FLeftMargin write FLeftMargin;
- property MaxLength: Word read FMaxLength write FMaxLength;
- property Multiline: Boolean read FMultiline write FMultiline;
- property NoSelect: Boolean read FNoSelect write FNoSelect;
- property Password: Boolean read FPassword write FPassword;
- property ReadOnly: Boolean read FReadOnly write FReadOnly;
- property RightMargin: Word read FRightMargin write FRightMargin;
- property SWFVersion: Integer read FSWFVersion write FSWFVersion;
- property TextColor: TSWFRGBA read GetTextColor;
- property UseOutlines: Boolean read FUseOutlines write FUseOutlines;
- property VariableName: string read FVariableName write FVariableName;
- property WideInitialText: WideString read FWideInitialText write FWideInitialText;
- property WordWrap: Boolean read FWordWrap write FWordWrap;
- end;
- TSWFCSMTextSettings = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property GridFit: byte read FGridFit write FGridFit;
- property Sharpness: single read FSharpness write FSharpness;
- property TextID: word read FTextID write FTextID;
- property Thickness: single read FThickness write FThickness;
- property UseFlashType: byte read FUseFlashType write FUseFlashType;
- end;
- // ===========================================================
- // SOUND
- // ===========================================================
- TSWFDefineSound = class (TSWFDataObject)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property SeekSamples: Word read FSeekSamples write FSeekSamples;
- property SoundFormat: Byte read FSoundFormat write FSoundFormat;
- property SoundId: Word read FSoundId write FSoundId;
- property SoundRate: Byte read FSoundRate write FSoundRate;
- property SoundSampleCount: dword read FSoundSampleCount write FSoundSampleCount;
- property SoundSize: Boolean read FSoundSize write FSoundSize;
- property SoundType: Boolean read FSoundType write FSoundType;
- end;
- TSWFSoundEnvelope = class (TObject)
- public
- procedure Assign(Source: TSWFSoundEnvelope);
- property LeftLevel: Word read FLeftLevel write FLeftLevel;
- property Pos44: dword read FPos44 write FPos44;
- property RightLevel: Word read FRightLevel write FRightLevel;
- end;
- TSWFStartSound = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure AddEnvelope(pos: dword; left, right: word);
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property HasEnvelope: Boolean read FHasEnvelope write FHasEnvelope;
- property HasInPoint: Boolean read FHasInPoint write FHasInPoint;
- property HasLoops: Boolean read FHasLoops write FHasLoops;
- property HasOutPoint: Boolean read FHasOutPoint write FHasOutPoint;
- property InPoint: dword read FInPoint write SetInPoint;
- property LoopCount: Word read FLoopCount write SetLoopCount;
- property OutPoint: dword read FOutPoint write SetOutPoint;
- property SoundEnvelopes: TObjectList read FSoundEnvelopes;
- property SoundId: Word read FSoundId write FSoundId;
- property SyncNoMultiple: Boolean read FSyncNoMultiple write FSyncNoMultiple;
- property SyncStop: Boolean read FSyncStop write FSyncStop;
- end;
- TSWFStartSound2 = class(TSWFStartSound)
- public
- constructor Create;
- function MinVersion: Byte; override;
- property SoundClassName;
- end;
- TSWFSoundStreamHead = class (TSWFObject)
- public
- constructor Create; virtual;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property LatencySeek: Integer read FLatencySeek write FLatencySeek;
- property PlaybackSoundRate: Byte read FPlaybackSoundRate write FPlaybackSoundRate;
- property PlaybackSoundSize: Boolean read FPlaybackSoundSize write FPlaybackSoundSize;
- property PlaybackSoundType: Boolean read FPlaybackSoundType write FPlaybackSoundType;
- property StreamSoundCompression: Byte read FStreamSoundCompression write FStreamSoundCompression;
- property StreamSoundRate: Byte read FStreamSoundRate write FStreamSoundRate;
- property StreamSoundSampleCount: Word read FStreamSoundSampleCount write FStreamSoundSampleCount;
- property StreamSoundSize: Boolean read FStreamSoundSize write FStreamSoundSize;
- property StreamSoundType: Boolean read FStreamSoundType write FStreamSoundType;
- end;
- TSWFSoundStreamHead2 = class (TSWFSoundStreamHead)
- public
- constructor Create; override;
- function MinVersion: Byte; override;
- end;
- TSWFSoundStreamBlock = class (TSWFDataObject)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property SampleCount: Word read FSampleCount write FSampleCount;
- property SeekSamples: SmallInt read FSeekSamples write FSeekSamples;
- property StreamSoundCompression: Byte read FStreamSoundCompression write FStreamSoundCompression;
- end;
- // ==========================================================//
- // Buttons //
- // ==========================================================//
- TSWFButtonRecord = class (TObject)
- public
- constructor Create(ChID: word);
- destructor Destroy; override;
- procedure Assign(Source: TSWFButtonRecord);
- procedure WriteToStream(be: TBitsEngine);
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode);
- procedure WriteToXMLNode(Node: IXMLNode);
- {$ENDIF}
- property BlendMode: TSWFBlendMode read FBlendMode write FBlendMode;
- property ButtonHasBlendMode: Boolean read FButtonHasBlendMode write
- FButtonHasBlendMode;
- property ButtonHasFilterList: Boolean read FButtonHasFilterList write
- FButtonHasFilterList;
- property ButtonState: TSWFButtonStates read FButtonState write FButtonState;
- property CharacterID: Word read FCharacterID write FCharacterID;
- property ColorTransform: TSWFColorTransform read GetColorTransform;
- property Depth: Word read FDepth write FDepth;
- property hasColorTransform: Boolean read FhasColorTransform write FhasColorTransform;
- property Matrix: TSWFMatrix read GetMatrix;
- property FilterList: TSWFFilterList read GetFilterList;
- end;
- TSWFBasedButton = class (TSWFObject)
- public
- constructor Create; virtual;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- property Actions: TSWFActionList read FActions;
- property ButtonId: Word read FButtonId write FButtonId;
- property ButtonRecord[index: integer]: TSWFButtonRecord read GetButtonRecord;
- property ButtonRecords: TObjectList read FButtonRecords;
- property ParseActions: Boolean read FParseActions write FParseActions;
- {$IFDEF XMLSupport}
- property OnXMLReadAction: TSWFObjectXMLRWEvent read FOnXMLReadAction write FOnXMLReadAction;
- {$ENDIF}
- end;
- TSWFDefineButton = class (TSWFBasedButton)
- public
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property Action[Index: Integer]: TSWFAction read GetAction;
- end;
- TSWFButtonCondAction = class (TSWFActionList)
- public
- procedure Assign(Source: TSWFButtonCondAction);
- function Actions: TSWFActionList;
- procedure WriteToStream(be: TBitsEngine; isEnd:boolean);
- property ActionConditions: TSWFStateTransitions read FActionConditions write FActionConditions;
- property ID_Key: Byte read FID_Key write FID_Key;
- end;
- TSWFDefineButton2 = class (TSWFBasedButton)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadEventActionsFromXML(Node: IXMLNode; Settings: TXMLReadWriteSettings);
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CondAction[Index: Integer]: TSWFButtonCondAction read GetCondAction;
- property TrackAsMenu: Boolean read FTrackAsMenu write FTrackAsMenu;
- end;
- TSWFDefineButtonSound = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ButtonId: Word read FButtonId write FButtonId;
- property HasIdleToOverUp: Boolean read FHasIdleToOverUp write FHasIdleToOverUp;
- property HasOverDownToOverUp: Boolean read FHasOverDownToOverUp write FHasOverDownToOverUp;
- property HasOverUpToIdle: Boolean read FHasOverUpToIdle write FHasOverUpToIdle;
- property HasOverUpToOverDown: Boolean read FHasOverUpToOverDown write FHasOverUpToOverDown;
- property SndIdleToOverUp: TSWFStartSound read GetSndIdleToOverUp;
- property SndOverDownToOverUp: TSWFStartSound read GetSndOverDownToOverUp;
- property SndOverUpToIdle: TSWFStartSound read GetSndOverUpToIdle;
- property SndOverUpToOverDown: TSWFStartSound read GetSndOverUpToOverDown;
- end;
- TSWFDefineButtonCxform = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ButtonColorTransform: TSWFColorTransform read FButtonColorTransform;
- property ButtonId: Word read FButtonId write FButtonId;
- end;
- // ==========================================================//
- // SPRITE //
- // ==========================================================//
- TSWFDefineSprite = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ControlTag[Index: word]: TSWFObject read GetControlTag;
- property ControlTags: TObjectList read FControlTags;
- property FrameCount: Word read FFrameCount write FFrameCount;
- property ParseActions: Boolean read FParseActions write FParseActions;
- property SpriteID: Word read FSpriteID write FSpriteID;
- property SWFVersion: Byte read FSWFVersion write FSWFVersion;
- end;
- TSWFDefineSceneAndFrameLabelData = class (TSWFObject)
- public
- constructor Create;
- destructor Destroy; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property FrameLabels: TStringList read FFrameLabels;
- property Scenes: TStringList read FScenes;
- end;
- // ==========================================================//
- // Video //
- // ==========================================================//
- TSWFDefineVideoStream = class (TSWFObject)
- public
- constructor Create;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property CharacterID: Word read FCharacterID write FCharacterID;
- property CodecID: Byte read FCodecID write FCodecID;
- property Height: Word read FHeight write FHeight;
- property NumFrames: Word read FNumFrames write FNumFrames;
- property VideoFlagsDeblocking: Byte read FVideoFlagsDeblocking write FVideoFlagsDeblocking;
- property VideoFlagsSmoothing: Boolean read FVideoFlagsSmoothing write FVideoFlagsSmoothing;
- property Width: Word read FWidth write FWidth;
- end;
- TSWFVideoFrame = class (TSWFDataObject)
- public
- constructor Create; override;
- procedure Assign(Source: TBasedSWFObject); override;
- function MinVersion: Byte; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property FrameNum: Word read FFrameNum write FFrameNum;
- property StreamID: Word read FStreamID write FStreamID;
- end;
- // ================== undocumented tags ====================================
- TSWFByteCodeTag = class (TSWFDataObject)
- public
- constructor Create; override;
- procedure ReadFromStream(be: TBitsEngine); override;
- procedure WriteTagBody(be: TBitsEngine); override;
- procedure WriteToStream(be: TBitsEngine); override;
- {$IFDEF XMLSupport}
- procedure ReadFromXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- procedure WriteToXMLNode(Node: IXMLNode; Settings: TXMLReadWriteSettings); override;
- {$ENDIF}
- property ByteCode[Index: word]: Byte read GetByteCode;
- property TagIDFrom: Word read FTagIDFrom write FTagIDFrom;
- property Text: string read FText write FText;
- end;
- // ==================== tools ==============================
- Function GenerateSWFObject(ID: word): TSWFObject;
- Function GenerateSWFAction(ID: word): TSWFAction;
- procedure CopyActionList(Source, Dest: TSWFActionList);
- Procedure WriteCustomData(Dest: TStream; TagID: byte; data: pointer; Size: longint); overload;
- Procedure WriteCustomData(Dest: TStream; TagID: byte; data: TStream; Size: longint = 0); overload;
- procedure CopyShapeRecords(Source, Dest: TObjectList);
- {$IFDEF XMLSupport}
- procedure ReadLineStylesFromXML(Root:IXMLNode; LS: TObjectList; Alpha: boolean);
- procedure ReadFillStylesFromXML(Root: IXMLNode; FS: TObjectList; Alpha: boolean);
- procedure ReadActionListFromXML(Node: IXMLNode; AL: TSWFActionList; Settings: TXMLReadWriteSettings);
- Procedure ReadMorphFillStylesFromXML(Root:IXMLNode; FS: TObjectList);
- Procedure ReadMorphLineStylesFromXML(Root:IXMLNode; LS: TObjectList);
- {$ENDIF}
- const
- noSupport = false;
- implementation