/// <summary> /// /// </summary> /// <param name="input"></param> public virtual void Parse( Stream input ) { BitStream bits = new BitStream( input ); uint reserved = bits.GetBits( 2 ); if ( 0 != reserved ) { throw new SwfFormatException( "ButtonRecord reserved bits used" ); } _ButtonHasBlendMode = ( 0 != bits.GetBits( 1 ) ); _ButtonHasFilterList = ( 0 != bits.GetBits( 1 ) ); _ButtonStateHitTest = ( 0 != bits.GetBits( 1 ) ); _ButtonStateDown = ( 0 != bits.GetBits( 1 ) ); _ButtonStateOver = ( 0 != bits.GetBits( 1 ) ); _ButtonStateUp = ( 0 != bits.GetBits( 1 ) ); BinaryReader br = new BinaryReader( input ); _CharacterID = br.ReadUInt16(); _PlaceDepth = br.ReadUInt16(); _PlaceMatrix = new Matrix( this.Version ); _PlaceMatrix.Parse( input ); }