package com.intellij.flex.uiDesigner.abc; import com.intellij.flex.uiDesigner.AssetCounter; import com.intellij.flex.uiDesigner.io.ByteArrayOutputStreamEx; import com.intellij.openapi.util.io.FileUtil; import java.io.File; import java.io.IOException; @SuppressWarnings("UnusedDeclaration") final class AbcBlankMaker { public static void main(String[] args) throws IOException { // final AbcFilter abcFilter = new AbcFilter(true); // final File in = new File("/Developer/SDKs/flex_4.6.0/frameworks/projects/framework/assets/Assets.swf"); // abcFilter.filter(in, new File("idea-plugin/resources/AAASymbolOwnClass.abc"), new Condition<CharSequence>() { // @Override // public boolean value(CharSequence charSequence) { // return true; // } // }); //return; // makeBlanks(); movieSymbolTranscoder(); //new AbcFilter(false).filter(new File("abc-blank-maker/o/library.swf"), new File("idea-plugin/resources/SparkView.abc"), new AbcNameFilterByEquals("_v000")); //d(); //u(); //new AbcFilter().filter(new File("/Users/develar/workspace/idea/flex/tools/flex-ui-designer/idea-plugin/testData/libraryWithIncompatibleMxFlexModuleFactory.swf"), new File("/Users/develar/workspace/idea/flex/tools/flex-ui-designer/idea-plugin/testData/o.swf"), null); //new AbcFilter().filter(new File("/Users/develar/workspace/idea/flex/tools/flex-ui-designer/test-data-libs/target/test-data-libs 2/library.swf"), new File("/Users/develar/workspace/idea/flex/tools/flex-ui-designer/test-data-libs/target/test-data-libs 2/o.swf"), null); //new AbcFilter().filter(new File("/Developer/SDKs/flex_sdk_4.5.0.19786/frameworks/libs/core/library.swf"), new File("/Users/develar/ot.swf"), null); //new FlexSdkAbcInjector("4.5", null, new AssetCounter()).filter(new File("/Users/develar/workspace/idea/flex/tools/flex-ui-designer/idea-plugin/testData/sdk/4.5/mobilecomponents/library.swf"), new File("/Users/develar/ot.swf"), null); //new AbcFilter().filter(new File("/Users/develar/output.swf"), new File("/Users/develar/ot.swf"), null); //makeBlanks(); //fillAssetClassPoolGenerator(); //new MovieSymbolTranscoder().extract(new File("/Developer/SDKs/flex_4.5.1/frameworks/projects/framework/assets/Assets.swf"), new File("/Users/develar/r.swf"), "mx.containers.FormItem.Required".getBytes()); } private static void movieSymbolTranscoder() throws IOException { //new MovieSymbolTranscoder().transcode(new File("/Users/develar/Documents/idea/flex/tools/flex-ui-designer/idea-plugin/testData/src/common/AuxAnim.swf"), new File("/Users/develar/a.swf"), "myMC".getBytes()); new MovieSymbolTranscoder().transcode(new File("/Developer/SDKs/flex_4.6.0/frameworks/projects/framework/assets/Assets.swf"), new File("/Users/develar/b.swf"), "_SymbolOwnClass".getBytes()); //new EntireMovieTranscoder().transcode(new File("/Users/develar/Documents/idea/flex/tools/flex-ui-designer/idea-plugin/testData/mxml/AuxAnim.swf"), new File("/Users/develar/a.swf")); } private static void fillAssetClassPoolGenerator() throws IOException { ByteArrayOutputStreamEx out = new ByteArrayOutputStreamEx(1024); ClassPoolGenerator.generate(ClassPoolGenerator.Kind.IMAGE, 3, new AssetCounter(), out); FileUtil.writeToFile(new File("/Users/develar/classPool.swf"), out.toByteArray()); } private static void makeBlanks() throws IOException { final AbcFilter abcTagExtractor = new AbcFilter(false); final File in = new File("abc-blank-maker/o/library.swf"); abcTagExtractor.filter(in, new File("idea-plugin/resources/imageClassTemplate.abc"), new AbcNameFilterByEquals("_b000")); abcTagExtractor.filter(in, new File("idea-plugin/resources/swfClassTemplate.abc"), new AbcNameFilterByEquals("_s000")); // must be encoded as tag final AbcFilter abcFilter = new AbcFilter(true); abcFilter.filter(in, new File("idea-plugin/resources/SSymbolOwnClass.abc"), new AbcNameFilterByEquals("SSymbolOwnClass")); abcFilter.filter(in, new File("idea-plugin/resources/MSymbolOwnClass.abc"), new AbcNameFilterByEquals("MSymbolOwnClass")); } private static void d() throws IOException { final long time = System.currentTimeMillis(); new AbcFilter().filter(new File("/Developer/SDKs/flex_4.5.1/frameworks/libs/frameworkUnpacked/library.swf"), new File("/Users/develar/l.swf"), null); System.out.print("\n"); System.out.print(System.currentTimeMillis() - time); } private static void t() throws IOException { //new AbcFilter(null).filter(new File("/Users/develar/Library/Caches/IntelliJIdea10/plugins-sandbox/system/flashUIDesigner/framework.59cfca2cTEST-OUTTTTTT.swf"), new File("abc-blank-maker/src/b/u.swf"), new Condition<CharSequence>() { // @Override // public boolean value(CharSequence name) { // return !StringUtil.startsWith(name, "_"); // } //}); } }