Commit Graph

100 Commits

Author SHA1 Message Date
Mike Welsh 44c9262089 Make various read methods public
Made various Reader methods public for use in Ruffle, and use
structs for Tag enum variants to make the API consistent.
2019-07-22 18:29:39 -07:00
Mike Welsh a908935809 Add inherent TagCode::from_u16 2019-07-22 10:31:37 -07:00
Mike Welsh afbf8fdea5 Make Reader::new public 2019-06-17 02:53:18 -07:00
Mike Welsh d20a7c1123 Make read_ubits and read_sbits private 2019-06-17 01:52:13 -07:00
Mike Welsh d64ec2e133 read_swf decompresses SWF all at once 2019-06-17 01:51:21 -07:00
Mike Welsh bd46c273ee Update doc test filenames 2019-06-17 00:56:26 -07:00
Mike Welsh 8697457e05 Merge branch 'master' into ruffle 2019-06-17 00:52:31 -07:00
Mike Welsh 608f090501 Clean up test naming 2019-06-17 00:33:58 -07:00
Mike Welsh 6ab8c4a7d1 Export TagCode 2019-06-16 23:41:27 -07:00
Mike Welsh 9d1f21eaa4 Add some documentation and clean up reader 2019-06-16 21:23:31 -07:00
Mike Welsh eadc1da798 Keep Twips as integers
Add Twips wrapper type around i32. Keep Twips coordinates as i32.
Add conversion methods to convert to/from pixels.
2019-05-17 13:07:42 -07:00
Mike Welsh d8a8f4da60 Make read_ubits public 2019-05-08 11:54:43 -07:00
Mike Welsh 76393136ca Fluster work 2019-04-25 20:28:02 -07:00
Mike Welsh 4edbdc91ec Fix reading Protect tag with no password
swf::read was not handling when an SWF was protected without a
password. Fixed and added a test case.
2019-04-24 13:34:04 -07:00
Mike Welsh 76c5c2bbc4 Rustfmt pass 2019-04-23 00:31:12 -07:00
Mike Welsh 64dd94b1db Fix clippy warnings 2019-04-23 00:24:33 -07:00
Mike Welsh 2461db8076 Update clippy lints 2019-04-22 23:39:01 -07:00
Mike Welsh d23a489886 Update import paths for Rust 2018
Add crate:: where appropriate to fix paths
2019-04-22 23:09:06 -07:00
Mike Welsh ee534374c9 Switch to libflate by default
Switch from flate2 to libflate by default for WebAssembly support.
flate2 can still be enabled using the "flate2" feature.
2018-06-10 12:51:17 -07:00
Mike Welsh c67f7dad42 style: uncompressed_length -> _uncompressed_length 2018-06-10 12:01:08 -07:00
Mike Welsh 5a0e7a8fd3 refactor: make LZMA support an optional feature 2018-06-10 11:59:26 -07:00
Mike Welsh 120f94711a chore: switch to num-derive crate 2018-06-10 11:37:40 -07:00
Mike Welsh 0c9f79cc91 Don't auto-parse AVM1 ops in DoAction tags 2017-11-17 18:13:33 -08:00
Mike Welsh 0ed2272e76 ActionScript 3 (AVM2) parsing 2017-08-26 01:18:51 -07:00
Mike Welsh 3ef5485cdb Update Travis config; Fix some clippy lints
Try to get rustfmt and clippy running on travis.
Fix some travis warnings.
2017-07-03 21:50:47 -07:00
Mike Welsh ffa8f41a1a Run clippy on travis 2017-06-24 16:01:14 -07:00
Mike Welsh f7547aed37 Initial clippy pass 2017-06-24 14:42:37 -07:00
Mike Welsh 976f7c16dd Run rustfmt 2017-06-24 12:56:49 -07:00
Mike Welsh 4715934eb6 Implement PlaceObject4 tag. 2017-02-24 20:11:28 -08:00
Mike Welsh 8900d79ed3 Implement DefineBitsLossless2 and DefineBitsJpeg tags. 2017-02-24 19:33:20 -08:00
Mike Welsh fab0afe9ec Implement DefineVideoStream and VideoFrame tags. 2017-02-22 19:53:56 -08:00
Mike Welsh b5a67bad71 Implement DefineMorphShape tags. 2017-02-22 18:48:12 -08:00
Mike Welsh d76aef617b Implement DefineFont4 and DefineFontName tags. 2017-02-21 15:22:59 -08:00
Mike Welsh ebfde3d18e Implement DefineFont3, CSMFontSettings, and DefineFontAlignZones tags 2017-02-20 23:01:51 -08:00
Mike Welsh cf6eec9310 Initial implementation of DefineFont2/3 tags 2017-02-20 16:40:53 -08:00
Mike Welsh 52ba1aaaf5 Fix reading layout in DefineEditText tag 2017-02-19 21:58:02 -08:00
Mike Welsh 575991c14b Replace try! with ? 2017-02-19 20:04:20 -08:00
Mike Welsh 2fa889a414 Implement DefineFontInfo2 tag 2017-02-17 12:24:11 -08:00
Mike Welsh 840bcb9877 Implement DefineEditText tag 2017-02-16 20:04:56 -08:00
Mike Welsh b0e97f0981 Initial implementation of DefineBitsLossless tag 2017-02-15 21:16:47 -08:00
Mike Welsh 1c81e89e46 Implement DefineText tag 2017-02-15 19:07:08 -08:00
Mike Welsh fe2e09083c Implement DefineFontInfo tag 2017-02-12 20:23:50 -08:00
Mike Welsh 56f8376cd8 Implement DefineFont tag 2017-02-10 17:57:25 -08:00
Mike Welsh 8e6e3fad3a Implement DefineBits2 tag 2016-12-16 16:52:03 -08:00
Mike Welsh b563cf7d83 Implement DefineBits and JpegTables tags 2016-12-16 15:57:29 -08:00
Mike Welsh 8799e8ae23 Implement AVM1 ActionPush 2016-11-09 15:50:54 -08:00
Mike Welsh 99d2721e87 Implement SwfRead/SwfWrite traits in AVM1 Reader/Write 2016-11-08 10:51:34 -08:00
Michael Welsh 5ce15e1748 Add SwfRead/SwfWrite traits for convenience 2016-11-07 23:58:58 -08:00
Mike Welsh 98664cd2b9 Parse AVM1 data in DoAction tag 2016-10-14 21:22:02 -07:00
Mike Welsh 7e1519b573 Stub out AVM1 reader and writer 2016-09-25 13:30:09 -07:00