diff --git a/trunk/src/com/jpexs/decompiler/flash/SWF.java b/trunk/src/com/jpexs/decompiler/flash/SWF.java index 9ca219e47..6729a853b 100644 --- a/trunk/src/com/jpexs/decompiler/flash/SWF.java +++ b/trunk/src/com/jpexs/decompiler/flash/SWF.java @@ -99,8 +99,6 @@ import com.jpexs.decompiler.flash.treenodes.ContainerNode; import com.jpexs.decompiler.flash.treenodes.FrameNode; import com.jpexs.decompiler.flash.treenodes.TagNode; import com.jpexs.decompiler.flash.treenodes.TreeNode; -import com.jpexs.decompiler.flash.types.CXFORM; -import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; import com.jpexs.decompiler.flash.types.RECT; @@ -128,7 +126,6 @@ import java.awt.Rectangle; import java.awt.RenderingHints; import java.awt.Shape; import java.awt.geom.AffineTransform; -import java.awt.geom.Area; import java.awt.image.BufferedImage; import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; diff --git a/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java b/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java index 931e706b2..2728423b9 100644 --- a/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java +++ b/trunk/src/com/jpexs/decompiler/flash/SWFInputStream.java @@ -859,7 +859,7 @@ public class SWFInputStream extends InputStream { while (true) { long pos = getPos(); try { - tag = readTag(swf, level, pos, parseTags && !parallel, parallel, skipUnusualTags, gfx); + tag = readTag(swf, level, pos, parseTags && !parallel, parallel, skipUnusualTags, gfx); } catch (EOFException | EndOfStreamException ex) { tag = null; } @@ -947,7 +947,7 @@ public class SWFInputStream extends InputStream { } catch (ExecutionException e) { Logger.getLogger(SWFInputStream.class.getName()).log(Level.SEVERE, "Error during tag reading", e); } - } + } executor.shutdown(); } diff --git a/trunk/src/com/jpexs/decompiler/flash/SWFSearch.java b/trunk/src/com/jpexs/decompiler/flash/SWFSearch.java index 61337bd8b..9d3c32fa0 100644 --- a/trunk/src/com/jpexs/decompiler/flash/SWFSearch.java +++ b/trunk/src/com/jpexs/decompiler/flash/SWFSearch.java @@ -85,8 +85,8 @@ public class SWFSearch { mis.reset(); PosMarkedInputStream pmi = new PosMarkedInputStream(mis); SWF swf = noCheck ? new SWF(pmi) : new SWF(pmi, null, false, true); - boolean valid = swf.fileSize > 0 - && swf.version > 0 + boolean valid = swf.fileSize > 0 + && swf.version > 0 && (!swf.tags.isEmpty() || noCheck) && swf.version < 25; // Needs to be fixed when SWF versions reaches this value if (valid) { diff --git a/trunk/src/com/jpexs/decompiler/flash/SearchMode.java b/trunk/src/com/jpexs/decompiler/flash/SearchMode.java index d1e98dbd0..87783b929 100644 --- a/trunk/src/com/jpexs/decompiler/flash/SearchMode.java +++ b/trunk/src/com/jpexs/decompiler/flash/SearchMode.java @@ -21,6 +21,6 @@ package com.jpexs.decompiler.flash; * @author JPEXS */ public enum SearchMode { - + ALL, BIGGEST, SMALLEST, FIRST, LAST } diff --git a/trunk/src/com/jpexs/decompiler/flash/action/Action.java b/trunk/src/com/jpexs/decompiler/flash/action/Action.java index e7257269e..a8d9fee09 100644 --- a/trunk/src/com/jpexs/decompiler/flash/action/Action.java +++ b/trunk/src/com/jpexs/decompiler/flash/action/Action.java @@ -1007,14 +1007,14 @@ public class Action implements GraphSourceItem { action.translate(stack, constants, output, registerNames); } } */ else { - - if(action instanceof ActionStore){ - ActionStore store=(ActionStore)action; - store.setStore(actions.subList(ip+1, ip+1+store.getStoreSize())); - ip = ip + 1 + store.getStoreSize() -1/*ip++ will be next*/; + + if (action instanceof ActionStore) { + ActionStore store = (ActionStore) action; + store.setStore(actions.subList(ip + 1, ip + 1 + store.getStoreSize())); + ip = ip + 1 + store.getStoreSize() - 1/*ip++ will be next*/; } - - try { + + try { action.translate(localData, stack, output, staticOperation, path); } catch (EmptyStackException ese) { Logger.getLogger(Action.class.getName()).log(Level.SEVERE, "Decompilation error in: " + path, ese); diff --git a/trunk/src/com/jpexs/decompiler/flash/action/model/DeleteActionItem.java b/trunk/src/com/jpexs/decompiler/flash/action/model/DeleteActionItem.java index 7a76affcc..f97c841b9 100644 --- a/trunk/src/com/jpexs/decompiler/flash/action/model/DeleteActionItem.java +++ b/trunk/src/com/jpexs/decompiler/flash/action/model/DeleteActionItem.java @@ -68,7 +68,7 @@ public class DeleteActionItem extends ActionItem { @Override public List toSource(SourceGeneratorLocalData localData, SourceGenerator generator) { - if(object == null){ + if (object == null) { return toSourceMerge(localData, generator, propertyName, new ActionDelete2()); } return toSourceMerge(localData, generator, object, propertyName, new ActionDelete()); diff --git a/trunk/src/com/jpexs/decompiler/flash/action/parser/pcode/ASMParser.java b/trunk/src/com/jpexs/decompiler/flash/action/parser/pcode/ASMParser.java index f5064fe86..d658675f5 100644 --- a/trunk/src/com/jpexs/decompiler/flash/action/parser/pcode/ASMParser.java +++ b/trunk/src/com/jpexs/decompiler/flash/action/parser/pcode/ASMParser.java @@ -22,7 +22,6 @@ import com.jpexs.decompiler.flash.action.flashlite.ActionStrictMode; import com.jpexs.decompiler.flash.action.parser.ParseException; import com.jpexs.decompiler.flash.action.special.ActionDeobfuscatePop; import com.jpexs.decompiler.flash.action.special.ActionNop; -import com.jpexs.decompiler.flash.action.special.ActionStore; import com.jpexs.decompiler.flash.action.swf3.ActionGetURL; import com.jpexs.decompiler.flash.action.swf3.ActionGoToLabel; import com.jpexs.decompiler.flash.action.swf3.ActionGotoFrame; diff --git a/trunk/src/com/jpexs/decompiler/flash/action/special/ActionStore.java b/trunk/src/com/jpexs/decompiler/flash/action/special/ActionStore.java index b0641b062..5d066ac17 100644 --- a/trunk/src/com/jpexs/decompiler/flash/action/special/ActionStore.java +++ b/trunk/src/com/jpexs/decompiler/flash/action/special/ActionStore.java @@ -26,6 +26,6 @@ import java.util.List; public interface ActionStore { public int getStoreSize(); - + public void setStore(List store); } diff --git a/trunk/src/com/jpexs/decompiler/flash/action/swf4/ActionWaitForFrame2.java b/trunk/src/com/jpexs/decompiler/flash/action/swf4/ActionWaitForFrame2.java index e58e6ded5..c1f4b7498 100644 --- a/trunk/src/com/jpexs/decompiler/flash/action/swf4/ActionWaitForFrame2.java +++ b/trunk/src/com/jpexs/decompiler/flash/action/swf4/ActionWaitForFrame2.java @@ -25,7 +25,6 @@ import com.jpexs.decompiler.flash.action.model.ConstantPool; import com.jpexs.decompiler.flash.action.model.clauses.IfFrameLoadedActionItem; import com.jpexs.decompiler.flash.action.parser.ParseException; import com.jpexs.decompiler.flash.action.parser.pcode.FlasmLexer; -import com.jpexs.decompiler.flash.action.special.ActionEnd; import com.jpexs.decompiler.flash.action.special.ActionStore; import com.jpexs.decompiler.graph.ExportMode; import com.jpexs.decompiler.graph.GraphSourceItem; @@ -120,11 +119,11 @@ public class ActionWaitForFrame2 extends Action implements ActionStore { public String getASMSource(List container, List knownAddreses, List constantPool, int version, ExportMode exportMode) { String ret = "WaitForFrame2 " + skipCount; /*for (int i = 0; i < skipped.size(); i++) { - if (skipped.get(i) instanceof ActionEnd) { - break; - } - ret += "\r\n" + skipped.get(i).getASMSource(container, knownAddreses, constantPool, version, exportMode); - }*/ + if (skipped.get(i) instanceof ActionEnd) { + break; + } + ret += "\r\n" + skipped.get(i).getASMSource(container, knownAddreses, constantPool, version, exportMode); + }*/ return ret; } diff --git a/trunk/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java b/trunk/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java index 8c9e37e22..ade59d558 100644 --- a/trunk/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java +++ b/trunk/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java @@ -767,7 +767,7 @@ public class CommandLineArgumentParser { boolean noCheck = false; String output = null; - + if (args.size() > 0 && args.peek().toLowerCase().equals("-o")) { args.remove(); if (args.size() < 1) { @@ -829,7 +829,7 @@ public class CommandLineArgumentParser { fileNameOut = Path.combine(output, fileNameOut); } } - + try (OutputStream fos = new BufferedOutputStream(new FileOutputStream(fileNameOut))) { byte[] swfData = new byte[stream.available()]; int cnt = stream.read(swfData); diff --git a/trunk/src/com/jpexs/decompiler/flash/exporters/BitmapExporter.java b/trunk/src/com/jpexs/decompiler/flash/exporters/BitmapExporter.java index e157eea49..b734b824a 100644 --- a/trunk/src/com/jpexs/decompiler/flash/exporters/BitmapExporter.java +++ b/trunk/src/com/jpexs/decompiler/flash/exporters/BitmapExporter.java @@ -67,7 +67,6 @@ public class BitmapExporter extends ShapeExporterBase implements IShapeExporter private Stroke lineStroke; private Stroke defaultStroke; private double unitDivisor; - public static SerializableImage export(SWF swf, SHAPE shape, Color defaultColor, ColorTransform colorTransform) { BitmapExporter exporter = new BitmapExporter(swf, shape, defaultColor, colorTransform); @@ -76,12 +75,12 @@ public class BitmapExporter extends ShapeExporterBase implements IShapeExporter } public static void exportTo(SWF swf, SHAPE shape, Color defaultColor, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { - BitmapExporter exporter = new BitmapExporter(swf, shape, defaultColor,colorTransform); + BitmapExporter exporter = new BitmapExporter(swf, shape, defaultColor, colorTransform); exporter.exportTo(image, transformation); } private BitmapExporter(SWF swf, SHAPE shape, Color defaultColor, ColorTransform colorTransform) { - super(shape,colorTransform); + super(shape, colorTransform); this.swf = swf; this.defaultColor = defaultColor; } @@ -304,7 +303,7 @@ public class BitmapExporter extends ShapeExporterBase implements IShapeExporter } } if (image != null) { - SerializableImage img = image.getImage(swf.tags); + SerializableImage img = image.getImage(swf.tags); if (img != null) { img = colorTransform.apply(img); fillPaint = new TexturePaint(img.getBufferedImage(), new java.awt.Rectangle(img.getWidth(), img.getHeight())); diff --git a/trunk/src/com/jpexs/decompiler/flash/exporters/DefaultSVGShapeExporter.java b/trunk/src/com/jpexs/decompiler/flash/exporters/DefaultSVGShapeExporter.java index f02ce2725..8a60b8646 100644 --- a/trunk/src/com/jpexs/decompiler/flash/exporters/DefaultSVGShapeExporter.java +++ b/trunk/src/com/jpexs/decompiler/flash/exporters/DefaultSVGShapeExporter.java @@ -34,8 +34,8 @@ public class DefaultSVGShapeExporter extends ShapeExporterBase implements IShape protected String currentDrawCommand = ""; protected String pathData; - public DefaultSVGShapeExporter(SHAPE shape,ColorTransform colorTransform) { - super(shape,colorTransform); + public DefaultSVGShapeExporter(SHAPE shape, ColorTransform colorTransform) { + super(shape, colorTransform); } @Override @@ -74,7 +74,7 @@ public class DefaultSVGShapeExporter extends ShapeExporterBase implements IShape } @Override - public void beginBitmapFill(int bitmapId, Matrix matrix, boolean repeat, boolean smooth,ColorTransform colorTransform) { + public void beginBitmapFill(int bitmapId, Matrix matrix, boolean repeat, boolean smooth, ColorTransform colorTransform) { finalizePath(); } diff --git a/trunk/src/com/jpexs/decompiler/flash/exporters/ShapeExporterBase.java b/trunk/src/com/jpexs/decompiler/flash/exporters/ShapeExporterBase.java index 6bdb6bb5c..9d8e54cbf 100644 --- a/trunk/src/com/jpexs/decompiler/flash/exporters/ShapeExporterBase.java +++ b/trunk/src/com/jpexs/decompiler/flash/exporters/ShapeExporterBase.java @@ -59,7 +59,7 @@ public abstract class ShapeExporterBase implements IShapeExporter { private boolean edgeMapsCreated; protected ColorTransform colorTransform; - public ShapeExporterBase(SHAPE shape,ColorTransform colorTransform) { + public ShapeExporterBase(SHAPE shape, ColorTransform colorTransform) { this.shape = shape; this.colorTransform = colorTransform; _fillStyles = new ArrayList<>(); diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/ImagePanel.java b/trunk/src/com/jpexs/decompiler/flash/gui/ImagePanel.java index 4e678edd9..51a7df289 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/ImagePanel.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/ImagePanel.java @@ -29,9 +29,7 @@ import com.jpexs.helpers.SerializableImage; import java.awt.AlphaComposite; import java.awt.BorderLayout; import java.awt.Color; -import java.awt.Composite; import java.awt.FlowLayout; -import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.event.ActionEvent; @@ -150,10 +148,10 @@ public final class ImagePanel extends JPanel implements ActionListener, FlashDis g.fillRect(0, 0, image.getWidth(), image.getHeight()); Matrix m = new Matrix(); m.translate(-rect.Xmin, -rect.Ymin); - drawable.toImage(0, 0, swf.tags, characters, new Stack(), image, m,new ColorTransform()); + drawable.toImage(0, 0, swf.tags, characters, new Stack(), image, m, new ColorTransform()); img = image; } else { - img = drawable.toImage(0, 0, swf.tags, characters, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor),new ColorTransform()); + img = drawable.toImage(0, 0, swf.tags, characters, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor), new ColorTransform()); } SWF.putToCache(key, img); } @@ -228,11 +226,11 @@ public final class ImagePanel extends JPanel implements ActionListener, FlashDis g.fillRect(0, 0, image.getWidth(), image.getHeight()); Matrix m = new Matrix(); m.translate(-rect.Xmin, -rect.Ymin); - drawable.toImage(nframe, nframe, swf.tags, characters, new Stack(), image, m,new ColorTransform()); + drawable.toImage(nframe, nframe, swf.tags, characters, new Stack(), image, m, new ColorTransform()); img = image; } else { - img = drawable.toImage(nframe, nframe, swf.tags, characters, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor),new ColorTransform()); + img = drawable.toImage(nframe, nframe, swf.tags, characters, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor), new ColorTransform()); } SWF.putToCache(key, img); } diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbon.java b/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbon.java index 09eba68a5..a581e0fce 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbon.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/MainFrameRibbon.java @@ -228,7 +228,7 @@ public final class MainFrameRibbon extends AppRibbonFrame implements MainFrame { mui.setHoverIcon(View.getResizableIcon("buttonicon_hover_256")); mui.setNormalIcon(View.getResizableIcon("buttonicon_256")); mui.setClickIcon(View.getResizableIcon("buttonicon_down_256")); - mbutton.repaint(); + mbutton.repaint(); } cancel(); //cancel task so it does not run again } diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/MainPanel.java b/trunk/src/com/jpexs/decompiler/flash/gui/MainPanel.java index 31f13c3fb..162859ccb 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/MainPanel.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/MainPanel.java @@ -2463,7 +2463,7 @@ public final class MainPanel extends JPanel implements ActionListener, TreeSelec rect = ((DefineSpriteTag) fn.getParent()).getRect(swf.characters, new Stack()); totalFrameCount = ((DefineSpriteTag) fn.getParent()).frameCount; } - previewImagePanel.setImage(SWF.frameToImage(containerId, fn.getFrame() - 1, swf.tags, controlTags, rect, totalFrameCount, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor),new ColorTransform())); + previewImagePanel.setImage(SWF.frameToImage(containerId, fn.getFrame() - 1, swf.tags, controlTags, rect, totalFrameCount, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor), new ColorTransform())); } else if (((tagObj instanceof FrameNodeItem) && ((FrameNodeItem) tagObj).isDisplayed()) || ((tagObj instanceof CharacterTag) || (tagObj instanceof FontTag)) && (tagObj instanceof Tag)) { ((CardLayout) viewerCards.getLayout()).show(viewerCards, FLASH_VIEWER_CARD); createAndShowTempSwf(tagObj); diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/SWFPreviwPanel.java b/trunk/src/com/jpexs/decompiler/flash/gui/SWFPreviwPanel.java index 785b8cc61..fc92df98a 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/SWFPreviwPanel.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/SWFPreviwPanel.java @@ -68,7 +68,7 @@ public class SWFPreviwPanel extends JPanel implements FlashDisplay { @Override public void run() { buffering.setVisible(true); - SWF.framesToImage(0, frameImages, 0, swf.frameCount - 1, swf.tags, swf.tags, swf.displayRect, swf.frameCount, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor),new ColorTransform()); + SWF.framesToImage(0, frameImages, 0, swf.frameCount - 1, swf.tags, swf.tags, swf.displayRect, swf.frameCount, new Stack(), Matrix.getScaleInstance(1 / SWF.unitDivisor), new ColorTransform()); buffering.setVisible(false); } }.start(); diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java index e0a82ea36..03df87899 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java @@ -254,12 +254,12 @@ public class DefineButton2Tag extends CharacterTag implements Container, Bounded } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { if (visited.contains(buttonId)) { return; } @@ -283,7 +283,7 @@ public class DefineButton2Tag extends CharacterTag implements Container, Bounded visited.pop(); RECT displayRect = getRect(characters, visited); visited.push(buttonId); - SWF.frameToImage(buttonId, maxDepth, layers, new Color(0, 0, 0, 0), characters, 1, tags, tags, displayRect, visited, image, transformation,colorTransform); + SWF.frameToImage(buttonId, maxDepth, layers, new Color(0, 0, 0, 0), characters, 1, tags, tags, displayRect, visited, image, transformation, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java index 42575c0f0..ccac8cafb 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java @@ -275,12 +275,12 @@ public class DefineButtonTag extends CharacterTag implements ASMSource, BoundedT } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { if (visited.contains(buttonId)) { return; } @@ -304,7 +304,7 @@ public class DefineButtonTag extends CharacterTag implements ASMSource, BoundedT visited.pop(); RECT displayRect = getRect(characters, visited); visited.push(buttonId); - SWF.frameToImage(buttonId, maxDepth, layers, new Color(0, 0, 0, 0), characters, 1, tags, tags, displayRect, visited, image, transformation,colorTransform); + SWF.frameToImage(buttonId, maxDepth, layers, new Color(0, 0, 0, 0), characters, 1, tags, tags, displayRect, visited, image, transformation, colorTransform); visited.pop(); } diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java index ea6d8576f..4e1250b96 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java @@ -280,7 +280,7 @@ public class DefineEditTextTag extends TextTag implements DrawableTag { } return ret; } - + private void addCharacters(List list, String str, TextStyle style) { for (int i = 0; i < str.length(); i++) { char ch = str.charAt(i); @@ -723,12 +723,12 @@ public class DefineEditTextTag extends TextTag implements DrawableTag { } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { FontTag font = null; for (Tag tag : tags) { if (tag instanceof FontTag) { @@ -809,7 +809,7 @@ public class DefineEditTextTag extends TextTag implements DrawableTag { // todo; break; } - staticTextToImage(swf, characters, textRecords, 2, image, getTextMatrix(), transformation,colorTransform); + staticTextToImage(swf, characters, textRecords, 2, image, getTextMatrix(), transformation, colorTransform); } } @@ -822,19 +822,20 @@ public class DefineEditTextTag extends TextTag implements DrawableTag { public int getNumFrames() { return 1; } - + private class TextStyle { - + public int fontHeight; - + public boolean bold; - + public boolean italic; public boolean underlined; public RGBA textColor; - + + @Override public TextStyle clone() { TextStyle result = new TextStyle(); result.fontHeight = fontHeight; @@ -845,11 +846,11 @@ public class DefineEditTextTag extends TextTag implements DrawableTag { return result; } } - + private class CharacterWithStyle { - + public char character; - + public TextStyle style; } } diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineMorphShape2Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineMorphShape2Tag.java index 5e5345ed9..6450bbc3b 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineMorphShape2Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineMorphShape2Tag.java @@ -316,18 +316,18 @@ public class DefineMorphShape2Tag extends CharacterTag implements BoundedTag, Mo } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { SHAPEWITHSTYLE shape = getShapeAtRatio(ratio); // shapeNum: 4 // todo: Currently the generated image is not cached, because the cache // key contains the hashCode of the finalRecord object, and it is always // recreated - BitmapExporter.exportTo(swf, shape, null, image, transformation,colorTransform); + BitmapExporter.exportTo(swf, shape, null, image, transformation, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java index 3a7967c25..593037c35 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java @@ -67,19 +67,19 @@ public class DefineShape2Tag extends CharacterTag implements ShapeTag { @Override public String toSVG() { - SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(),new ColorTransform() /*FIXME?*/); + SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(), new ColorTransform() /*FIXME?*/); exporter.export(); return exporter.getSVG(); } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { - BitmapExporter.exportTo(swf, getShapes(), null, image, transformation,colorTransform); + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { + BitmapExporter.exportTo(swf, getShapes(), null, image, transformation, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java index 5b7120857..68b6bd594 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java @@ -72,19 +72,19 @@ public class DefineShape3Tag extends CharacterTag implements ShapeTag { @Override public String toSVG() { - SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(),new ColorTransform() /*FIXME?*/); + SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(), new ColorTransform() /*FIXME?*/); exporter.export(); return exporter.getSVG(); } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { - BitmapExporter.exportTo(swf, getShapes(), null, image, transformation,colorTransform); + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { + BitmapExporter.exportTo(swf, getShapes(), null, image, transformation, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java index 02dfa1431..9db07e917 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java @@ -75,19 +75,19 @@ public class DefineShape4Tag extends CharacterTag implements ShapeTag { @Override public String toSVG() { - SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(),new ColorTransform() /*FIXME?*/); + SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(), new ColorTransform() /*FIXME?*/); exporter.export(); return exporter.getSVG(); } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } @Override - public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation,ColorTransform colorTransform) { - BitmapExporter.exportTo(swf, getShapes(), null, image, transformation,colorTransform); + public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { + BitmapExporter.exportTo(swf, getShapes(), null, image, transformation, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java index 379c41497..bfd3e140c 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java @@ -100,7 +100,7 @@ public class DefineShapeTag extends CharacterTag implements ShapeTag { @Override public String toSVG() { - SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(),new ColorTransform() /*FIXME?*/); + SVGShapeExporter exporter = new SVGShapeExporter(swf, getShapes(), new ColorTransform() /*FIXME?*/); exporter.export(); return exporter.getSVG(); } @@ -112,7 +112,7 @@ public class DefineShapeTag extends CharacterTag implements ShapeTag { @Override public void toImage(int frame, int ratio, List tags, Map characters, Stack visited, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { - BitmapExporter.exportTo(swf, getShapes(), null, image, transformation,colorTransform); + BitmapExporter.exportTo(swf, getShapes(), null, image, transformation, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/DefineTextTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/DefineTextTag.java index 65b4ce02f..27342fc88 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/DefineTextTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/DefineTextTag.java @@ -508,7 +508,7 @@ public class DefineTextTag extends TextTag implements DrawableTag { } @Override - public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation,ColorTransform colorTransform) { + public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { throw new Error("this overload of toImage call is not supported on BoundedTag"); } diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java index 55261a959..ffc70c43f 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java @@ -27,7 +27,6 @@ import com.jpexs.decompiler.flash.tags.base.ContainerItem; import com.jpexs.decompiler.flash.tags.base.PlaceObjectTypeTag; import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; @@ -333,7 +332,6 @@ public class PlaceObject2Tag extends CharacterIdTag implements Container, PlaceO } } - @Override public int getBlendMode() { return 0; diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java index 7222524eb..56cc73343 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java @@ -28,7 +28,6 @@ import com.jpexs.decompiler.flash.tags.base.ContainerItem; import com.jpexs.decompiler.flash.tags.base.PlaceObjectTypeTag; import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java index 90bb90633..dcd2d6318 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java @@ -28,7 +28,6 @@ import com.jpexs.decompiler.flash.tags.base.ContainerItem; import com.jpexs.decompiler.flash.tags.base.PlaceObjectTypeTag; import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java index bc2a5cf51..f96dadfd9 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java @@ -24,7 +24,6 @@ import com.jpexs.decompiler.flash.tags.base.PlaceObjectTypeTag; import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.CLIPACTIONS; import com.jpexs.decompiler.flash.types.CXFORM; -import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; import com.jpexs.decompiler.flash.types.RGBA; diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java index 1856f580c..b41573a85 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/base/FontTag.java @@ -248,7 +248,7 @@ public abstract class FontTag extends CharacterTag implements AloneTag, Drawable @Override public SerializableImage toImage(int frame, int ratio, List tags, Map characters, Stack visited, Matrix transformation, ColorTransform colorTransform) { - return SHAPERECORD.shapeListToImage(swf, getGlyphShapeTable(), 500, 500, Color.black,colorTransform); + return SHAPERECORD.shapeListToImage(swf, getGlyphShapeTable(), 500, 500, Color.black, colorTransform); } @Override diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/base/PlaceObjectTypeTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/base/PlaceObjectTypeTag.java index f6cb95b7c..4b9db035c 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/base/PlaceObjectTypeTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/base/PlaceObjectTypeTag.java @@ -17,8 +17,6 @@ package com.jpexs.decompiler.flash.tags.base; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; -import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; import com.jpexs.decompiler.flash.types.RGBA; diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/base/TextTag.java b/trunk/src/com/jpexs/decompiler/flash/tags/base/TextTag.java index 8584e3ad1..528659188 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/base/TextTag.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/base/TextTag.java @@ -33,7 +33,6 @@ import java.awt.Color; import java.awt.Font; import java.awt.FontMetrics; import java.awt.Graphics2D; -import java.awt.RenderingHints; import java.awt.font.LineMetrics; import java.util.ArrayList; import java.util.HashMap; @@ -193,13 +192,13 @@ public abstract class TextTag extends CharacterTag implements BoundedTag { return att; } - public static void staticTextToImage(SWF swf, Map characters, List textRecords, int numText, SerializableImage image, MATRIX textMatrix, Matrix transformation,ColorTransform colorTransform) { + public static void staticTextToImage(SWF swf, Map characters, List textRecords, int numText, SerializableImage image, MATRIX textMatrix, Matrix transformation, ColorTransform colorTransform) { Color textColor = new Color(0, 0, 0); FontTag font = null; int textHeight = 12; int x = 0; int y = 0; - Graphics2D g = (Graphics2D) image.getGraphics(); + Graphics2D g = (Graphics2D) image.getGraphics(); List glyphs = new ArrayList<>(); for (TEXTRECORD rec : textRecords) { if (rec.styleFlagsHasColor) { @@ -232,7 +231,7 @@ public abstract class TextTag extends CharacterTag implements BoundedTag { if (entry.glyphIndex != -1) { // shapeNum: 1 SHAPE shape = glyphs.get(entry.glyphIndex); - BitmapExporter.exportTo(swf, shape, textColor, image, mat,colorTransform); + BitmapExporter.exportTo(swf, shape, textColor, image, mat, colorTransform); x += entry.glyphAdvance; } } diff --git a/trunk/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java b/trunk/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java index 62ae5f943..4c76a96bd 100644 --- a/trunk/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java +++ b/trunk/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java @@ -126,7 +126,7 @@ public final class DefineCompactedFont extends FontTag implements DrawableTag { if (size / cols < 30) { size = cols * 30; } - SerializableImage ret = SHAPERECORD.shapeListToImage(swf, shapes, size, size, Color.black,colorTransform); + SerializableImage ret = SHAPERECORD.shapeListToImage(swf, shapes, size, size, Color.black, colorTransform); return ret; } diff --git a/trunk/src/com/jpexs/decompiler/flash/timeline/DepthState.java b/trunk/src/com/jpexs/decompiler/flash/timeline/DepthState.java index 0e0325cf0..101e8e04e 100644 --- a/trunk/src/com/jpexs/decompiler/flash/timeline/DepthState.java +++ b/trunk/src/com/jpexs/decompiler/flash/timeline/DepthState.java @@ -17,8 +17,6 @@ package com.jpexs.decompiler.flash.timeline; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; -import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; import com.jpexs.decompiler.flash.types.RGBA; diff --git a/trunk/src/com/jpexs/decompiler/flash/timeline/Timeline.java b/trunk/src/com/jpexs/decompiler/flash/timeline/Timeline.java index 1f05f418e..c8655e1fb 100644 --- a/trunk/src/com/jpexs/decompiler/flash/timeline/Timeline.java +++ b/trunk/src/com/jpexs/decompiler/flash/timeline/Timeline.java @@ -23,8 +23,6 @@ import com.jpexs.decompiler.flash.tags.Tag; import com.jpexs.decompiler.flash.tags.base.PlaceObjectTypeTag; import com.jpexs.decompiler.flash.tags.base.RemoveTag; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; -import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.MATRIX; import com.jpexs.decompiler.flash.types.filters.FILTER; @@ -86,7 +84,6 @@ public class Timeline { fl.colorTransForm = colorTransForm2; } - CLIPACTIONS clipActions2 = po.getClipActions(); if (clipActions2 != null) { fl.clipActions = clipActions2; diff --git a/trunk/src/com/jpexs/decompiler/flash/types/CXFORM.java b/trunk/src/com/jpexs/decompiler/flash/types/CXFORM.java index f05e86c28..bca0c66b4 100644 --- a/trunk/src/com/jpexs/decompiler/flash/types/CXFORM.java +++ b/trunk/src/com/jpexs/decompiler/flash/types/CXFORM.java @@ -18,9 +18,6 @@ package com.jpexs.decompiler.flash.types; import com.jpexs.decompiler.flash.types.annotations.Calculated; import com.jpexs.decompiler.flash.types.annotations.SWFType; -import com.jpexs.decompiler.flash.types.filters.Filtering; -import com.jpexs.helpers.SerializableImage; -import java.awt.Color; import java.io.Serializable; /** @@ -75,32 +72,32 @@ public class CXFORM extends ColorTransform implements Serializable { @Override public int getRedAdd() { - return hasAddTerms?redAddTerm:super.getRedAdd(); + return hasAddTerms ? redAddTerm : super.getRedAdd(); } @Override public int getGreenAdd() { - return hasAddTerms?greenAddTerm:super.getGreenAdd(); + return hasAddTerms ? greenAddTerm : super.getGreenAdd(); } - + @Override public int getBlueAdd() { - return hasAddTerms?blueAddTerm:super.getBlueAdd(); + return hasAddTerms ? blueAddTerm : super.getBlueAdd(); } @Override public int getRedMulti() { - return hasMultTerms?redMultTerm:super.getRedMulti(); + return hasMultTerms ? redMultTerm : super.getRedMulti(); } - + @Override public int getGreenMulti() { - return hasMultTerms?greenMultTerm:super.getGreenMulti(); + return hasMultTerms ? greenMultTerm : super.getGreenMulti(); } - + @Override public int getBlueMulti() { - return hasMultTerms?blueMultTerm:super.getBlueMulti(); + return hasMultTerms ? blueMultTerm : super.getBlueMulti(); } - + } diff --git a/trunk/src/com/jpexs/decompiler/flash/types/CXFORMWITHALPHA.java b/trunk/src/com/jpexs/decompiler/flash/types/CXFORMWITHALPHA.java index 500f520ab..2f4054a51 100644 --- a/trunk/src/com/jpexs/decompiler/flash/types/CXFORMWITHALPHA.java +++ b/trunk/src/com/jpexs/decompiler/flash/types/CXFORMWITHALPHA.java @@ -19,9 +19,6 @@ package com.jpexs.decompiler.flash.types; import com.jpexs.decompiler.flash.types.annotations.Calculated; import com.jpexs.decompiler.flash.types.annotations.Conditional; import com.jpexs.decompiler.flash.types.annotations.SWFType; -import com.jpexs.decompiler.flash.types.filters.Filtering; -import com.jpexs.helpers.SerializableImage; -import java.awt.Color; import java.io.Serializable; /** @@ -95,42 +92,42 @@ public class CXFORMWITHALPHA extends ColorTransform implements Serializable { @Override public int getRedAdd() { - return hasAddTerms?redAddTerm:super.getRedAdd(); + return hasAddTerms ? redAddTerm : super.getRedAdd(); } @Override public int getGreenAdd() { - return hasAddTerms?greenAddTerm:super.getGreenAdd(); + return hasAddTerms ? greenAddTerm : super.getGreenAdd(); } - + @Override public int getBlueAdd() { - return hasAddTerms?blueAddTerm:super.getBlueAdd(); + return hasAddTerms ? blueAddTerm : super.getBlueAdd(); } - + @Override public int getAlphaAdd() { - return hasAddTerms?alphaAddTerm:super.getAlphaAdd(); + return hasAddTerms ? alphaAddTerm : super.getAlphaAdd(); } @Override public int getRedMulti() { - return hasMultTerms?redMultTerm:super.getRedMulti(); + return hasMultTerms ? redMultTerm : super.getRedMulti(); } - + @Override public int getGreenMulti() { - return hasMultTerms?greenMultTerm:super.getGreenMulti(); + return hasMultTerms ? greenMultTerm : super.getGreenMulti(); } - + @Override public int getBlueMulti() { - return hasMultTerms?blueMultTerm:super.getBlueMulti(); + return hasMultTerms ? blueMultTerm : super.getBlueMulti(); } - + @Override public int getAlphaMulti() { - return hasMultTerms?alphaMultTerm:super.getAlphaMulti(); + return hasMultTerms ? alphaMultTerm : super.getAlphaMulti(); } - + } diff --git a/trunk/src/com/jpexs/decompiler/flash/types/ColorTransform.java b/trunk/src/com/jpexs/decompiler/flash/types/ColorTransform.java index 938e9a222..bd4d02f31 100644 --- a/trunk/src/com/jpexs/decompiler/flash/types/ColorTransform.java +++ b/trunk/src/com/jpexs/decompiler/flash/types/ColorTransform.java @@ -28,11 +28,10 @@ import java.io.Serializable; * @author JPEXS */ public class ColorTransform implements Serializable { - - public RescaleOp toRescaleOp(){ - return new RescaleOp(new float[]{getRedMulti()/255f,getGreenMulti()/255f,getBlueMulti()/255f,getAlphaMulti()/255f}, - new float[]{getRedAdd(),getGreenAdd(),getBlueAdd(),getAlphaAdd()} - , null); + + public RescaleOp toRescaleOp() { + return new RescaleOp(new float[]{getRedMulti() / 255f, getGreenMulti() / 255f, getBlueMulti() / 255f, getAlphaMulti() / 255f}, + new float[]{getRedAdd(), getGreenAdd(), getBlueAdd(), getAlphaAdd()}, null); } public SerializableImage apply(SerializableImage src) { @@ -46,20 +45,20 @@ public class ColorTransform implements Serializable { public RGB apply(RGB color) { return new RGBA(Filtering.colorEffect(color.toColor(), getRedAdd(), getGreenAdd(), getBlueAdd(), getAlphaAdd(), getRedMulti(), getGreenMulti(), getBlueMulti(), getAlphaMulti())); } - + public RGBA apply(RGBA color) { return new RGBA(Filtering.colorEffect(color.toColor(), getRedAdd(), getGreenAdd(), getBlueAdd(), getAlphaAdd(), getRedMulti(), getGreenMulti(), getBlueMulti(), getAlphaMulti())); } - - public GRADRECORD[] apply(GRADRECORD[] gradRecords){ + + public GRADRECORD[] apply(GRADRECORD[] gradRecords) { @SuppressWarnings("unchecked") - GRADRECORD[] ret=(GRADRECORD[])Helper.deepCopy(gradRecords); - for(GRADRECORD r:ret){ - r.color = apply(r.color); + GRADRECORD[] ret = (GRADRECORD[]) Helper.deepCopy(gradRecords); + for (GRADRECORD r : ret) { + r.color = apply(r.color); } return ret; } - + public int getRedAdd() { return 0; } @@ -118,31 +117,30 @@ public class ColorTransform implements Serializable { @Override public int getRedMulti() { - return (int)((float)t.getRedMulti() / 255f * c.getRedMulti()); + return (int) ((float) t.getRedMulti() / 255f * c.getRedMulti()); } @Override public int getGreenMulti() { - return (int)((float)t.getGreenMulti()/ 255f * c.getGreenMulti()); + return (int) ((float) t.getGreenMulti() / 255f * c.getGreenMulti()); } @Override public int getBlueMulti() { - return (int)((float)t.getBlueMulti()/ 255f * c.getBlueMulti()); + return (int) ((float) t.getBlueMulti() / 255f * c.getBlueMulti()); } @Override public int getAlphaMulti() { - return (int)((float)t.getAlphaMulti()/ 255f * c.getAlphaMulti()); + return (int) ((float) t.getAlphaMulti() / 255f * c.getAlphaMulti()); } }; } @Override public String toString() { - return "[colorTransform redAdd="+getRedAdd()+", greenAdd="+getGreenAdd()+", blueAdd="+getBlueAdd()+", alphaAdd="+getAlphaAdd()+ - ", redMulti="+getRedMulti()+", greenMulti="+getGreenMulti()+", blueMulti="+getBlueMulti()+", alphaMulti="+getAlphaMulti()+"]"; + return "[colorTransform redAdd=" + getRedAdd() + ", greenAdd=" + getGreenAdd() + ", blueAdd=" + getBlueAdd() + ", alphaAdd=" + getAlphaAdd() + + ", redMulti=" + getRedMulti() + ", greenMulti=" + getGreenMulti() + ", blueMulti=" + getBlueMulti() + ", alphaMulti=" + getAlphaMulti() + "]"; } - - + } diff --git a/trunk/src/com/jpexs/decompiler/flash/types/filters/BlendComposite.java b/trunk/src/com/jpexs/decompiler/flash/types/filters/BlendComposite.java index fff03b674..b13b7b2a9 100644 --- a/trunk/src/com/jpexs/decompiler/flash/types/filters/BlendComposite.java +++ b/trunk/src/com/jpexs/decompiler/flash/types/filters/BlendComposite.java @@ -183,23 +183,23 @@ public final class BlendComposite implements Composite { dstPixel[3] = (pixel >> 24) & 0xFF; blender.blend(srcPixel, dstPixel, result); - + retPixel[0] = ((int) (dstPixel[0] + (result[0] - dstPixel[0]) * alpha) & 0xFF); retPixel[1] = ((int) (dstPixel[1] + (result[1] - dstPixel[1]) * alpha) & 0xFF); - retPixel[2] = (int) (dstPixel[2] + (result[2] - dstPixel[2]) * alpha)& 0xFF; - retPixel[3] = ((int) (dstPixel[3] + (result[3] - dstPixel[3]) * alpha) & 0xFF); - - float af=((float)srcPixel[3])/255f; - retPixel[0] = (int)((1f-af)*dstPixel[0]+af*retPixel[0]); - retPixel[1] = (int)((1f-af)*dstPixel[1]+af*retPixel[1]); - retPixel[2] = (int)((1f-af)*dstPixel[2]+af*retPixel[2]); - retPixel[3] = (int)((1f-af)*dstPixel[3]+af*retPixel[3]); - + retPixel[2] = (int) (dstPixel[2] + (result[2] - dstPixel[2]) * alpha) & 0xFF; + retPixel[3] = ((int) (dstPixel[3] + (result[3] - dstPixel[3]) * alpha) & 0xFF); + + float af = ((float) srcPixel[3]) / 255f; + retPixel[0] = (int) ((1f - af) * dstPixel[0] + af * retPixel[0]); + retPixel[1] = (int) ((1f - af) * dstPixel[1] + af * retPixel[1]); + retPixel[2] = (int) ((1f - af) * dstPixel[2] + af * retPixel[2]); + retPixel[3] = (int) ((1f - af) * dstPixel[3] + af * retPixel[3]); + dstPixels[x] = (retPixel[3] << 24) - | retPixel[0] << 16 - | retPixel[1] << 8 - | retPixel[2]; - } + | retPixel[0] << 16 + | retPixel[1] << 8 + | retPixel[2]; + } dstOut.setDataElements(0, y, width, 1, dstPixels); } } @@ -258,8 +258,8 @@ public final class BlendComposite implements Composite { public void blend(int[] src, int[] dst, int[] result) { result[0] = Math.min(src[0], dst[0]); result[1] = Math.min(src[1], dst[1]); - result[2] = Math.min(src[2], dst[2]); - result[3] = Math.min(255, src[3] + dst[3] - (src[3] * dst[3]) / 255); + result[2] = Math.min(src[2], dst[2]); + result[3] = Math.min(255, src[3] + dst[3] - (src[3] * dst[3]) / 255); } }; case DIFFERENCE: diff --git a/trunk/src/com/jpexs/decompiler/flash/types/filters/Filtering.java b/trunk/src/com/jpexs/decompiler/flash/types/filters/Filtering.java index 9c418c4b9..5f14e8d27 100644 --- a/trunk/src/com/jpexs/decompiler/flash/types/filters/Filtering.java +++ b/trunk/src/com/jpexs/decompiler/flash/types/filters/Filtering.java @@ -455,7 +455,7 @@ public class Filtering { return i; } - public static Color colorEffect(Color color, + public static Color colorEffect(Color color, int redAddTerm, int greenAddTerm, int blueAddTerm, int alphaAddTerm, int redMultTerm, int greenMultTerm, int blueMultTerm, int alphaMultTerm) { int rgb = color.getRGB(); @@ -467,7 +467,7 @@ public class Filtering { g = Math.max(0, Math.min(((g * greenMultTerm) / 255) + greenAddTerm, 255)); b = Math.max(0, Math.min(((b * blueMultTerm) / 255) + blueAddTerm, 255)); a = Math.max(0, Math.min(((a * alphaMultTerm) / 255) + alphaAddTerm, 255)); - return new Color(r,g,b,a); + return new Color(r, g, b, a); } public static SerializableImage colorEffect(SerializableImage src, diff --git a/trunk/src/com/jpexs/decompiler/flash/types/shaperecords/SHAPERECORD.java b/trunk/src/com/jpexs/decompiler/flash/types/shaperecords/SHAPERECORD.java index bbaf74479..4d0d82041 100644 --- a/trunk/src/com/jpexs/decompiler/flash/types/shaperecords/SHAPERECORD.java +++ b/trunk/src/com/jpexs/decompiler/flash/types/shaperecords/SHAPERECORD.java @@ -129,7 +129,7 @@ public abstract class SHAPERECORD implements Cloneable, NeedsCharacters, Seriali if (shapes.isEmpty()) { SerializableImage image = new SerializableImage(1, 1, BufferedImage.TYPE_INT_RGB); //Make all pixels transparent - Graphics2D g = (Graphics2D)image.getGraphics(); + Graphics2D g = (Graphics2D) image.getGraphics(); g.setComposite(AlphaComposite.Src); g.setColor(new Color(0, 0, 0, 0f)); g.fillRect(0, 0, image.getWidth(), image.getHeight()); diff --git a/trunk/src/com/jpexs/decompiler/flash/xfl/XFLConverter.java b/trunk/src/com/jpexs/decompiler/flash/xfl/XFLConverter.java index 3c174d1e1..87aaf2eac 100644 --- a/trunk/src/com/jpexs/decompiler/flash/xfl/XFLConverter.java +++ b/trunk/src/com/jpexs/decompiler/flash/xfl/XFLConverter.java @@ -61,7 +61,6 @@ import com.jpexs.decompiler.flash.types.BUTTONCONDACTION; import com.jpexs.decompiler.flash.types.BUTTONRECORD; import com.jpexs.decompiler.flash.types.CLIPACTIONRECORD; import com.jpexs.decompiler.flash.types.CLIPACTIONS; -import com.jpexs.decompiler.flash.types.CXFORM; import com.jpexs.decompiler.flash.types.CXFORMWITHALPHA; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.FILLSTYLE; diff --git a/trunk/src/com/jpexs/helpers/Path.java b/trunk/src/com/jpexs/helpers/Path.java index b494d5b71..11729dace 100644 --- a/trunk/src/com/jpexs/helpers/Path.java +++ b/trunk/src/com/jpexs/helpers/Path.java @@ -23,7 +23,7 @@ import java.io.File; * @author JPEXS */ public class Path { - + public static String combine(String... paths) { String result = ""; String separator = File.separator; diff --git a/trunk/src/com/jpexs/helpers/StreamSearch.java b/trunk/src/com/jpexs/helpers/StreamSearch.java index fa3fa88b4..1020bcff4 100644 --- a/trunk/src/com/jpexs/helpers/StreamSearch.java +++ b/trunk/src/com/jpexs/helpers/StreamSearch.java @@ -71,7 +71,7 @@ public class StreamSearch implements Searchable { if (last != null) { b = last[last.length + i + d]; } else { - continue; + continue; } } else if (i + d >= buf.length) { continue; diff --git a/trunk/src/com/jpexs/helpers/SwfHeaderStreamSearch.java b/trunk/src/com/jpexs/helpers/SwfHeaderStreamSearch.java index f36bf3184..a968f0515 100644 --- a/trunk/src/com/jpexs/helpers/SwfHeaderStreamSearch.java +++ b/trunk/src/com/jpexs/helpers/SwfHeaderStreamSearch.java @@ -36,12 +36,14 @@ public class SwfHeaderStreamSearch implements Searchable { } @Override - public Map search(byte[]... data) { + public Map search(byte[] + ... data) { return search(null, data); } @Override - public Map search(ProgressListener progListener, byte[]... data) { + public Map search(ProgressListener progListener, byte[] + ... data) { // Ignore data parameter, find only FWS, CWS, ZWS, GFX and CFX Map ret = new HashMap<>(); diff --git a/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java b/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java index 342c801c5..1086a804b 100644 --- a/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java +++ b/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java @@ -61,7 +61,7 @@ public class RecompileTest { } } - //@Test + @Test public void testRecompile() { File dir = new File(TESTDATADIR); if (!dir.exists()) { @@ -95,8 +95,7 @@ public class RecompileTest { try { asm.setActions(par.actionsFromString(as)); } catch (ParseException ex) { - String a = as; - //fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); + fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); } writer = new HilightedTextWriter(new CodeFormatting(), false); Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); @@ -104,14 +103,13 @@ public class RecompileTest { try { asm.setActions(par.actionsFromString(as2)); } catch (ParseException ex) { - String a = as; - //fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); + fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); } writer = new HilightedTextWriter(new CodeFormatting(), false); Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); String as3 = writer.toString(); if (!as3.equals(as2)) { - //fail("ActionScript is diffrent: " + item.getSwf().getShortFileName() + "/" + item.toString()); + fail("ActionScript is diffrent: " + item.getSwf().getShortFileName() + "/" + item.toString()); } } catch (InterruptedException | IOException | OutOfMemoryError | TranslateException | StackOverflowError ex) { }