From 90957416c2a527857d588182bd17901c7d37f35d Mon Sep 17 00:00:00 2001 From: "honfika@gmail.com" Date: Thu, 14 May 2015 16:55:57 +0200 Subject: [PATCH] setCharacterId methods moved after getCharacterId --- .../flash/importers/ImageImporter.java | 12 ++++---- .../flash/importers/ShapeImporter.java | 22 ++------------ .../flash/tags/DefineBinaryDataTag.java | 10 +++---- .../flash/tags/DefineBitsJPEG2Tag.java | 10 +++---- .../flash/tags/DefineBitsJPEG3Tag.java | 10 +++---- .../flash/tags/DefineBitsJPEG4Tag.java | 10 +++---- .../flash/tags/DefineBitsLossless2Tag.java | 10 +++---- .../flash/tags/DefineBitsLosslessTag.java | 10 +++---- .../decompiler/flash/tags/DefineBitsTag.java | 10 +++---- .../flash/tags/DefineButton2Tag.java | 10 +++---- .../flash/tags/DefineButtonSoundTag.java | 10 +++---- .../flash/tags/DefineButtonTag.java | 10 +++---- .../flash/tags/DefineEditTextTag.java | 10 +++---- .../decompiler/flash/tags/DefineFont2Tag.java | 10 +++---- .../decompiler/flash/tags/DefineFont3Tag.java | 10 +++---- .../decompiler/flash/tags/DefineFont4Tag.java | 10 +++---- .../decompiler/flash/tags/DefineFontTag.java | 10 +++---- .../flash/tags/DefineShape2Tag.java | 19 ++++-------- .../flash/tags/DefineShape3Tag.java | 19 ++++-------- .../flash/tags/DefineShape4Tag.java | 17 ++++------- .../decompiler/flash/tags/DefineShapeTag.java | 19 ++++-------- .../decompiler/flash/tags/DefineSoundTag.java | 10 +++---- .../flash/tags/DefineSpriteTag.java | 30 +++++++++---------- .../flash/tags/DefineVideoStreamTag.java | 10 +++---- .../flash/tags/DoInitActionTag.java | 10 +++---- .../flash/tags/PlaceObject2Tag.java | 11 +++---- .../flash/tags/PlaceObject3Tag.java | 11 +++---- .../flash/tags/PlaceObject4Tag.java | 11 +++---- .../decompiler/flash/tags/PlaceObjectTag.java | 10 +++---- .../flash/tags/SoundStreamHead2Tag.java | 10 +++---- .../flash/tags/SoundStreamHeadTag.java | 2 +- .../flash/tags/base/MorphShapeTag.java | 10 +++---- .../decompiler/flash/tags/base/ShapeTag.java | 9 ++++++ .../tags/base/SoundStreamHeadTypeTag.java | 8 ++--- .../flash/tags/base/StaticTextTag.java | 8 ++--- .../decompiler/flash/tags/base/TextTag.java | 3 -- .../flash/tags/gfx/DefineCompactedFont.java | 11 ++++--- 37 files changed, 188 insertions(+), 234 deletions(-) diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ImageImporter.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ImageImporter.java index 94ac41fe5..da0e1cb70 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ImageImporter.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ImageImporter.java @@ -1,18 +1,19 @@ /* * Copyright (C) 2010-2015 JPEXS, All rights reserved. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 3.0 of the License, or (at your option) any later version. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public - * License along with this library. */ + * License along with this library. + */ package com.jpexs.decompiler.flash.importers; import com.jpexs.decompiler.flash.SWF; @@ -22,7 +23,6 @@ import com.jpexs.decompiler.flash.tags.DefineBitsTag; import com.jpexs.decompiler.flash.tags.Tag; import com.jpexs.decompiler.flash.tags.base.ImageTag; import java.awt.image.BufferedImage; -import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -35,7 +35,7 @@ public class ImageImporter extends TagImporter { public Tag importImage(ImageTag it, byte[] newData) throws IOException { if (newData[0] == 'B' && newData[1] == 'M') { - BufferedImage b = ImageHelper.read(new ByteArrayInputStream(newData)); + BufferedImage b = ImageHelper.read(newData); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageHelper.write(b, "PNG", baos); newData = baos.toByteArray(); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ShapeImporter.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ShapeImporter.java index 2d526a083..7523f2fe2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ShapeImporter.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/importers/ShapeImporter.java @@ -19,15 +19,10 @@ package com.jpexs.decompiler.flash.importers; import com.jpexs.decompiler.flash.SWF; import com.jpexs.decompiler.flash.helpers.ImageHelper; import com.jpexs.decompiler.flash.tags.DefineBitsJPEG2Tag; -import com.jpexs.decompiler.flash.tags.DefineShape2Tag; -import com.jpexs.decompiler.flash.tags.DefineShape3Tag; -import com.jpexs.decompiler.flash.tags.DefineShape4Tag; -import com.jpexs.decompiler.flash.tags.DefineShapeTag; import com.jpexs.decompiler.flash.tags.Tag; import com.jpexs.decompiler.flash.tags.base.ShapeTag; import com.jpexs.decompiler.flash.types.SHAPEWITHSTYLE; import java.awt.image.BufferedImage; -import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -41,7 +36,7 @@ public class ShapeImporter { SWF swf = st.getSwf(); if (newData[0] == 'B' && newData[1] == 'M') { - BufferedImage b = ImageHelper.read(new ByteArrayInputStream(newData)); + BufferedImage b = ImageHelper.read(newData); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageHelper.write(b, "PNG", baos); newData = baos.toByteArray(); @@ -54,20 +49,7 @@ public class ShapeImporter { st.setModified(true); SHAPEWITHSTYLE shapes = jpeg2Tag.getShape(st.getRect(), true); - if (st instanceof DefineShapeTag) { - DefineShapeTag dst = (DefineShapeTag) st; - dst.shapes = shapes; - } else if (st instanceof DefineShape2Tag) { - DefineShape2Tag dst = (DefineShape2Tag) st; - dst.shapes = shapes; - } else if (st instanceof DefineShape3Tag) { - DefineShape3Tag dst = (DefineShape3Tag) st; - dst.shapes = shapes; - } else if (st instanceof DefineShape4Tag) { - DefineShape4Tag dst = (DefineShape4Tag) st; - dst.shapes = shapes; - } - + st.shapes = shapes; return (Tag) st; } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBinaryDataTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBinaryDataTag.java index c72810842..c83a3b708 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBinaryDataTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBinaryDataTag.java @@ -113,6 +113,11 @@ public class DefineBinaryDataTag extends CharacterTag { return tag; } + @Override + public void setCharacterId(int characterId) { + this.tag = characterId; + } + public boolean isSwfData() { try { if (binaryData.getLength() > 8) { @@ -143,9 +148,4 @@ public class DefineBinaryDataTag extends CharacterTag { } return false; } - - @Override - public void setCharacterId(int characterId) { - this.tag = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG2Tag.java index a3fe4b7a4..fb9ed5cec 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG2Tag.java @@ -54,6 +54,11 @@ public class DefineBitsJPEG2Tag extends ImageTag implements AloneTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + @Override public String getImageFormat() { return ImageTag.getImageFormat(imageData); @@ -134,9 +139,4 @@ public class DefineBitsJPEG2Tag extends ImageTag implements AloneTag { } return baos.toByteArray(); } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java index f83b57aa9..477bf3e98 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG3Tag.java @@ -58,6 +58,11 @@ public class DefineBitsJPEG3Tag extends ImageTag implements AloneTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + @Override public void setImage(byte[] data) throws IOException { if (ImageTag.getImageFormat(data).equals("jpg")) { @@ -167,9 +172,4 @@ public class DefineBitsJPEG3Tag extends ImageTag implements AloneTag { } return baos.toByteArray(); } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java index d74333da0..8cd03428a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsJPEG4Tag.java @@ -61,6 +61,11 @@ public class DefineBitsJPEG4Tag extends ImageTag implements AloneTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + @Override public String getImageFormat() { String fmt = ImageTag.getImageFormat(imageData); @@ -178,9 +183,4 @@ public class DefineBitsJPEG4Tag extends ImageTag implements AloneTag { imageData = sis.readByteRangeEx(alphaDataOffset, "imageData"); bitmapAlphaData = sis.readByteRangeEx(sis.available(), "bitmapAlphaData"); } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLossless2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLossless2Tag.java index 0b0e0e3fd..babc21f76 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLossless2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLossless2Tag.java @@ -86,6 +86,11 @@ public class DefineBitsLossless2Tag extends ImageTag implements AloneTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + private byte[] createEmptyImage() { try { ALPHABITMAPDATA bitmapData = new ALPHABITMAPDATA(); @@ -275,9 +280,4 @@ public class DefineBitsLossless2Tag extends ImageTag implements AloneTag { cachedImage = bi; return bi; } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLosslessTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLosslessTag.java index 858d1dc24..fca53349c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLosslessTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsLosslessTag.java @@ -191,6 +191,11 @@ public class DefineBitsLosslessTag extends ImageTag implements AloneTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + public COLORMAPDATA getColorMapData() { if (!decompressed) { uncompressData(); @@ -279,9 +284,4 @@ public class DefineBitsLosslessTag extends ImageTag implements AloneTag { public String getImageFormat() { return "png"; } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsTag.java index 42206f643..874d845e9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineBitsTag.java @@ -141,6 +141,11 @@ public class DefineBitsTag extends ImageTag implements TagChangedListener { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + @Override public String getImageFormat() { return "jpg"; @@ -150,9 +155,4 @@ public class DefineBitsTag extends ImageTag implements TagChangedListener { public void handleEvent(Tag tag) { clearCache(); } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java index 189b17d39..b301f2c91 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButton2Tag.java @@ -93,6 +93,11 @@ public class DefineButton2Tag extends ButtonTag implements ASMSourceContainer { return buttonId; } + @Override + public void setCharacterId(int characterId) { + this.buttonId = characterId; + } + @Override public List getRecords() { return characters; @@ -350,9 +355,4 @@ public class DefineButton2Tag extends ButtonTag implements ASMSourceContainer { timeline.addFrame(frameHit); } - - @Override - public void setCharacterId(int characterId) { - this.buttonId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonSoundTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonSoundTag.java index 3c78a61f9..01a4a9812 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonSoundTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonSoundTag.java @@ -64,6 +64,11 @@ public class DefineButtonSoundTag extends Tag implements CharacterIdTag { return buttonId; } + @Override + public void setCharacterId(int characterId) { + this.buttonId = characterId; + } + /** * Gets data bytes * @@ -139,9 +144,4 @@ public class DefineButtonSoundTag extends Tag implements CharacterIdTag { buttonSoundInfo3 = sis.readSOUNDINFO("buttonSoundInfo3"); } } - - @Override - public void setCharacterId(int characterId) { - this.buttonId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java index 8c13c557a..b4bc8aa37 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineButtonTag.java @@ -86,6 +86,11 @@ public class DefineButtonTag extends ButtonTag implements ASMSource { return buttonId; } + @Override + public void setCharacterId(int characterId) { + this.buttonId = characterId; + } + private Timeline timeline; private boolean isSingleFrameInitialized; @@ -441,9 +446,4 @@ public class DefineButtonTag extends ButtonTag implements ASMSource { public Tag getSourceTag() { return this; } - - @Override - public void setCharacterId(int characterId) { - this.buttonId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java index 08b420e40..aa7941be6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineEditTextTag.java @@ -736,6 +736,11 @@ public class DefineEditTextTag extends TextTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + /** * Gets data bytes * @@ -1126,9 +1131,4 @@ public class DefineEditTextTag extends TextTag { public boolean isSingleFrame() { return true; } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont2Tag.java index 73a606c43..89cda2b0d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont2Tag.java @@ -315,6 +315,11 @@ public class DefineFont2Tag extends FontTag { return fontId; } + @Override + public void setCharacterId(int characterId) { + this.fontId = characterId; + } + @Override public char glyphToChar(int glyphIndex) { return (char) (int) codeTable.get(glyphIndex); @@ -499,9 +504,4 @@ public class DefineFont2Tag extends FontTag { } return kerningAdjustment; } - - @Override - public void setCharacterId(int characterId) { - this.fontId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont3Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont3Tag.java index 18122da97..3bbe962ee 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont3Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont3Tag.java @@ -324,6 +324,11 @@ public class DefineFont3Tag extends FontTag { return fontId; } + @Override + public void setCharacterId(int characterId) { + this.fontId = characterId; + } + @Override public String getFontNameIntag() { String ret = fontName; @@ -519,9 +524,4 @@ public class DefineFont3Tag extends FontTag { } return kerningAdjustment; } - - @Override - public void setCharacterId(int characterId) { - this.fontId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont4Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont4Tag.java index 10611ae7a..6cc53d254 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont4Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFont4Tag.java @@ -58,6 +58,11 @@ public class DefineFont4Tag extends CharacterTag { return fontID; } + @Override + public void setCharacterId(int characterId) { + this.fontID = characterId; + } + /** * Constructor * @@ -109,9 +114,4 @@ public class DefineFont4Tag extends CharacterTag { } return baos.toByteArray(); } - - @Override - public void setCharacterId(int characterId) { - this.fontID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFontTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFontTag.java index 15b44206f..80597408c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFontTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineFontTag.java @@ -199,6 +199,11 @@ public class DefineFontTag extends FontTag { return fontId; } + @Override + public void setCharacterId(int characterId) { + this.fontId = characterId; + } + @Override public String getFontNameIntag() { ensureFontInfo(); @@ -360,9 +365,4 @@ public class DefineFontTag extends FontTag { public int getCharKerningAdjustment(char c1, char c2) { return 0; } - - @Override - public void setCharacterId(int characterId) { - this.fontId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java index 427179eaf..18fcb5ac0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape2Tag.java @@ -21,10 +21,8 @@ import com.jpexs.decompiler.flash.SWFInputStream; import com.jpexs.decompiler.flash.SWFOutputStream; import com.jpexs.decompiler.flash.tags.base.BoundedTag; import com.jpexs.decompiler.flash.tags.base.ShapeTag; -import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.RECT; import com.jpexs.decompiler.flash.types.SHAPEWITHSTYLE; -import com.jpexs.decompiler.flash.types.annotations.SWFType; import com.jpexs.helpers.ByteArrayRange; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -39,13 +37,6 @@ import java.util.logging.Logger; */ public class DefineShape2Tag extends ShapeTag { - @SWFType(BasicType.UI16) - public int shapeId; - - public RECT shapeBounds; - - public SHAPEWITHSTYLE shapes; - public static final int ID = 22; private ByteArrayRange shapeData; @@ -94,11 +85,6 @@ public class DefineShape2Tag extends ShapeTag { return modified; } - @Override - public int getCharacterId() { - return shapeId; - } - @Override public RECT getRect(Set added) { return shapeBounds; @@ -162,6 +148,11 @@ public class DefineShape2Tag extends ShapeTag { return true; } + @Override + public int getCharacterId() { + return shapeId; + } + @Override public void setCharacterId(int characterId) { this.shapeId = characterId; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java index bf5c7327f..07626809d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape3Tag.java @@ -21,10 +21,8 @@ import com.jpexs.decompiler.flash.SWFInputStream; import com.jpexs.decompiler.flash.SWFOutputStream; import com.jpexs.decompiler.flash.tags.base.BoundedTag; import com.jpexs.decompiler.flash.tags.base.ShapeTag; -import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.RECT; import com.jpexs.decompiler.flash.types.SHAPEWITHSTYLE; -import com.jpexs.decompiler.flash.types.annotations.SWFType; import com.jpexs.helpers.ByteArrayRange; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -39,13 +37,6 @@ import java.util.logging.Logger; */ public class DefineShape3Tag extends ShapeTag { - @SWFType(BasicType.UI16) - public int shapeId; - - public RECT shapeBounds; - - public SHAPEWITHSTYLE shapes; - public static final int ID = 32; private ByteArrayRange shapeData; @@ -99,11 +90,6 @@ public class DefineShape3Tag extends ShapeTag { return shapeBounds; } - @Override - public int getCharacterId() { - return shapeId; - } - /** * Constructor * @@ -162,6 +148,11 @@ public class DefineShape3Tag extends ShapeTag { return true; } + @Override + public int getCharacterId() { + return shapeId; + } + @Override public void setCharacterId(int characterId) { this.shapeId = characterId; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java index b0ebcbf94..f1477b51e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShape4Tag.java @@ -40,11 +40,6 @@ import java.util.logging.Logger; */ public class DefineShape4Tag extends ShapeTag { - @SWFType(BasicType.UI16) - public int shapeId; - - public RECT shapeBounds; - public RECT edgeBounds; @Reserved @@ -57,8 +52,6 @@ public class DefineShape4Tag extends ShapeTag { public boolean usesScalingStrokes; - public SHAPEWITHSTYLE shapes; - public static final int ID = 83; private ByteArrayRange shapeData; @@ -107,11 +100,6 @@ public class DefineShape4Tag extends ShapeTag { return modified; } - @Override - public int getCharacterId() { - return shapeId; - } - @Override public RECT getRect(Set added) { return shapeBounds; @@ -186,6 +174,11 @@ public class DefineShape4Tag extends ShapeTag { return true; } + @Override + public int getCharacterId() { + return shapeId; + } + @Override public void setCharacterId(int characterId) { this.shapeId = characterId; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java index 490c5c4a8..e02c3b398 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineShapeTag.java @@ -21,10 +21,8 @@ import com.jpexs.decompiler.flash.SWFInputStream; import com.jpexs.decompiler.flash.SWFOutputStream; import com.jpexs.decompiler.flash.tags.base.BoundedTag; import com.jpexs.decompiler.flash.tags.base.ShapeTag; -import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.RECT; import com.jpexs.decompiler.flash.types.SHAPEWITHSTYLE; -import com.jpexs.decompiler.flash.types.annotations.SWFType; import com.jpexs.helpers.ByteArrayRange; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -38,13 +36,6 @@ import java.util.logging.Logger; */ public class DefineShapeTag extends ShapeTag { - @SWFType(BasicType.UI16) - public int shapeId; - - public RECT shapeBounds; - - public SHAPEWITHSTYLE shapes; - public static final int ID = 2; private ByteArrayRange shapeData; @@ -145,11 +136,6 @@ public class DefineShapeTag extends ShapeTag { return baos.toByteArray(); } - @Override - public int getCharacterId() { - return shapeId; - } - @Override public int getNumFrames() { return 1; @@ -160,6 +146,11 @@ public class DefineShapeTag extends ShapeTag { return true; } + @Override + public int getCharacterId() { + return shapeId; + } + @Override public void setCharacterId(int characterId) { this.shapeId = characterId; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSoundTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSoundTag.java index 13713bd64..341ac04df 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSoundTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSoundTag.java @@ -72,6 +72,11 @@ public class DefineSoundTag extends CharacterTag implements SoundTag { return soundId; } + @Override + public void setCharacterId(int characterId) { + this.soundId = characterId; + } + /** * Gets data bytes * @@ -354,9 +359,4 @@ public class DefineSoundTag extends CharacterTag implements SoundTag { final int[] rateMap = {5512, 11025, 22050, 44100}; return new SoundFormat(getSoundFormatId(), rateMap[getSoundRate()], getSoundType()); } - - @Override - public void setCharacterId(int characterId) { - this.soundId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSpriteTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSpriteTag.java index ce40e4264..2049761c7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSpriteTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineSpriteTag.java @@ -107,6 +107,11 @@ public class DefineSpriteTag extends CharacterTag implements DrawableTag, Timeli return spriteId; } + @Override + public void setCharacterId(int characterId) { + this.spriteId = characterId; + } + private RECT getCharacterBounds(Set characters, Set added) { RECT ret = new RECT(Integer.MAX_VALUE, Integer.MIN_VALUE, Integer.MAX_VALUE, Integer.MIN_VALUE); boolean foundSomething = false; @@ -328,6 +333,11 @@ public class DefineSpriteTag extends CharacterTag implements DrawableTag, Timeli return PARAMETER_FRAME | PARAMETER_TIME | PARAMETER_RATIO; // inner tags can contain morphshapes, too } + @Override + public Shape getOutline(int frame, int time, int ratio, RenderContext renderContext, Matrix transformation) { + return getTimeline().getOutline(frame, time, ratio, renderContext, transformation); + } + @Override public void toImage(int frame, int time, int ratio, RenderContext renderContext, SerializableImage image, Matrix transformation, ColorTransform colorTransform) { SWF.frameToImage(getTimeline(), frame, time, renderContext, image, transformation, colorTransform); @@ -338,6 +348,11 @@ public class DefineSpriteTag extends CharacterTag implements DrawableTag, Timeli SWF.frameToSvg(getTimeline(), 0, 0, null, 0, exporter, colorTransform, level + 1, zoom); } + @Override + public String toHtmlCanvas(double unitDivisor) { + return getTimeline().toHtmlCanvas(unitDivisor, null); + } + @Override public int getNumFrames() { // flashplayer ignores the count stored in frameCount @@ -364,11 +379,6 @@ public class DefineSpriteTag extends CharacterTag implements DrawableTag, Timeli } } - @Override - public Shape getOutline(int frame, int time, int ratio, RenderContext renderContext, Matrix transformation) { - return getTimeline().getOutline(frame, time, ratio, renderContext, transformation); - } - @Override public boolean isModified() { if (super.isModified()) { @@ -381,14 +391,4 @@ public class DefineSpriteTag extends CharacterTag implements DrawableTag, Timeli } return false; } - - @Override - public String toHtmlCanvas(double unitDivisor) { - return getTimeline().toHtmlCanvas(unitDivisor, null); - } - - @Override - public void setCharacterId(int characterId) { - this.spriteId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineVideoStreamTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineVideoStreamTag.java index 3417f673e..f557f9e0d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineVideoStreamTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DefineVideoStreamTag.java @@ -76,6 +76,11 @@ public class DefineVideoStreamTag extends CharacterTag implements BoundedTag { return characterID; } + @Override + public void setCharacterId(int characterId) { + this.characterID = characterId; + } + /** * Gets data bytes * @@ -144,9 +149,4 @@ public class DefineVideoStreamTag extends CharacterTag implements BoundedTag { public RECT getRect(Set added) { return new RECT(0, (int) (SWF.unitDivisor * width), 0, (int) (SWF.unitDivisor * height)); } - - @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DoInitActionTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DoInitActionTag.java index b3658b5c0..9577090b5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DoInitActionTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/DoInitActionTag.java @@ -184,6 +184,11 @@ public class DoInitActionTag extends Tag implements CharacterIdTag, ASMSource { return spriteId; } + @Override + public void setCharacterId(int characterId) { + this.spriteId = characterId; + } + List listeners = new ArrayList<>(); @Override @@ -250,9 +255,4 @@ public class DoInitActionTag extends Tag implements CharacterIdTag, ASMSource { public Tag getSourceTag() { return this; } - - @Override - public void setCharacterId(int characterId) { - this.spriteId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java index b0bcc0ea8..cbf2e83ea 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject2Tag.java @@ -323,6 +323,12 @@ public class PlaceObject2Tag extends PlaceObjectTypeTag implements ASMSourceCont } } + @Override + public void setCharacterId(int characterId) { + placeFlagHasCharacter = true; + this.characterId = characterId; + } + @Override public int getDepth() { return depth; @@ -431,9 +437,4 @@ public class PlaceObject2Tag extends PlaceObjectTypeTag implements ASMSourceCont setModified(mod); matrix = old; } - - @Override - public void setCharacterId(int characterId) { - this.characterId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java index 9efda0ebf..8d33e9e9a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject3Tag.java @@ -458,6 +458,12 @@ public class PlaceObject3Tag extends PlaceObjectTypeTag implements ASMSourceCont } } + @Override + public void setCharacterId(int characterId) { + placeFlagHasCharacter = true; + this.characterId = characterId; + } + @Override public int getDepth() { return depth; @@ -576,9 +582,4 @@ public class PlaceObject3Tag extends PlaceObjectTypeTag implements ASMSourceCont setModified(mod); matrix = old; } - - @Override - public void setCharacterId(int characterId) { - this.characterId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java index bb4d129bf..3aa01f350 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObject4Tag.java @@ -461,6 +461,12 @@ public class PlaceObject4Tag extends PlaceObjectTypeTag implements ASMSourceCont } } + @Override + public void setCharacterId(int characterId) { + placeFlagHasCharacter = true; + this.characterId = characterId; + } + @Override public int getDepth() { return depth; @@ -579,9 +585,4 @@ public class PlaceObject4Tag extends PlaceObjectTypeTag implements ASMSourceCont setModified(mod); matrix = old; } - - @Override - public void setCharacterId(int characterId) { - this.characterId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java index ffd993843..f6f17b884 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/PlaceObjectTag.java @@ -162,6 +162,11 @@ public class PlaceObjectTag extends PlaceObjectTypeTag { return characterId; } + @Override + public void setCharacterId(int characterId) { + this.characterId = characterId; + } + @Override public int getDepth() { return depth; @@ -242,9 +247,4 @@ public class PlaceObjectTag extends PlaceObjectTypeTag { setModified(mod); matrix = old; } - - @Override - public void setCharacterId(int characterId) { - this.characterId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHead2Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHead2Tag.java index 4b329b007..e3f0a8540 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHead2Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHead2Tag.java @@ -79,6 +79,11 @@ public class SoundStreamHead2Tag extends Tag implements SoundStreamHeadTypeTag { return virtualCharacterId; } + @Override + public void setCharacterId(int characterId) { + virtualCharacterId = characterId; + } + @Override public String getExportFormat() { if (streamSoundCompression == SoundFormat.FORMAT_MP3) { @@ -243,9 +248,4 @@ public class SoundStreamHead2Tag extends Tag implements SoundStreamHeadTypeTag { String exportName = swf.getExportName(getCharacterId()); return getCharacterId() + (exportName != null ? "_" + exportName : ""); } - - @Override - public void setCharacterId(int characterId) { - this.virtualCharacterId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHeadTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHeadTag.java index 3f8167b87..771974259 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHeadTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/SoundStreamHeadTag.java @@ -100,7 +100,7 @@ public class SoundStreamHeadTag extends Tag implements SoundStreamHeadTypeTag { @Override public void setCharacterId(int characterId) { - this.virtualCharacterId = characterId; + virtualCharacterId = characterId; } @Override diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/MorphShapeTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/MorphShapeTag.java index 55f18f146..734309de4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/MorphShapeTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/MorphShapeTag.java @@ -117,6 +117,11 @@ public abstract class MorphShapeTag extends CharacterTag implements DrawableTag return characterId; } + @Override + public void setCharacterId(int characterId) { + this.characterId = characterId; + } + @Override public RECT getRect(Set added) { RECT rect = new RECT(); @@ -320,9 +325,4 @@ public abstract class MorphShapeTag extends CharacterTag implements DrawableTag cmse.export(); return cmse.getShapeData(); } - - @Override - public void setCharacterId(int characterId) { - this.characterId = characterId; - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/ShapeTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/ShapeTag.java index 6858a2193..9b75094ec 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/ShapeTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/ShapeTag.java @@ -25,9 +25,11 @@ import com.jpexs.decompiler.flash.exporters.shape.CanvasShapeExporter; import com.jpexs.decompiler.flash.exporters.shape.PathExporter; import com.jpexs.decompiler.flash.exporters.shape.SVGShapeExporter; import com.jpexs.decompiler.flash.helpers.LazyObject; +import com.jpexs.decompiler.flash.types.BasicType; import com.jpexs.decompiler.flash.types.ColorTransform; import com.jpexs.decompiler.flash.types.RECT; import com.jpexs.decompiler.flash.types.SHAPEWITHSTYLE; +import com.jpexs.decompiler.flash.types.annotations.SWFType; import com.jpexs.helpers.ByteArrayRange; import com.jpexs.helpers.SerializableImage; import java.awt.Color; @@ -46,6 +48,13 @@ import java.util.Set; */ public abstract class ShapeTag extends CharacterTag implements DrawableTag, LazyObject { + @SWFType(BasicType.UI16) + public int shapeId; + + public RECT shapeBounds; + + public SHAPEWITHSTYLE shapes; + private final int markerSize = 10; public ShapeTag(SWF swf, int id, String name, ByteArrayRange data) { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/SoundStreamHeadTypeTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/SoundStreamHeadTypeTag.java index 8e6095b4d..be6fda51c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/SoundStreamHeadTypeTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/SoundStreamHeadTypeTag.java @@ -1,16 +1,16 @@ /* * Copyright (C) 2010-2015 JPEXS, All rights reserved. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 3.0 of the License, or (at your option) any later version. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library. */ @@ -32,7 +32,5 @@ public interface SoundStreamHeadTypeTag extends CharacterIdTag, SoundTag { public void setVirtualCharacterId(int ch); - public int getCharacterId(); - public List getBlocks(); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/StaticTextTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/StaticTextTag.java index c40fe7182..896245017 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/StaticTextTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/StaticTextTag.java @@ -171,13 +171,13 @@ public abstract class StaticTextTag extends TextTag { } @Override - public void setCharacterId(int characterId) { - this.characterID = characterId; + public int getCharacterId() { + return characterID; } @Override - public int getCharacterId() { - return characterID; + public void setCharacterId(int characterId) { + this.characterID = characterId; } @Override diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/TextTag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/TextTag.java index 365b794e7..4409306d2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/TextTag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/base/TextTag.java @@ -93,9 +93,6 @@ public abstract class TextTag extends CharacterTag implements DrawableTag { public abstract boolean translateText(int diff); - @Override - public abstract int getCharacterId(); - public abstract RECT getBounds(); public abstract void setBounds(RECT r); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java index fbcbe604a..0dffca143 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/gfx/DefineCompactedFont.java @@ -22,7 +22,6 @@ import com.jpexs.decompiler.flash.SWFOutputStream; import com.jpexs.decompiler.flash.helpers.FontHelper; import com.jpexs.decompiler.flash.tags.DefineFont2Tag; import com.jpexs.decompiler.flash.tags.Tag; -import com.jpexs.decompiler.flash.tags.base.DrawableTag; import com.jpexs.decompiler.flash.tags.base.FontTag; import com.jpexs.decompiler.flash.types.KERNINGRECORD; import com.jpexs.decompiler.flash.types.LANGCODE; @@ -148,6 +147,11 @@ public final class DefineCompactedFont extends FontTag { return fontId; } + @Override + public void setCharacterId(int characterId) { + this.fontId = characterId; + } + @Override public int getFontId() { return fontId; @@ -423,9 +427,4 @@ public final class DefineCompactedFont extends FontTag { public boolean hasLayout() { return true; } - - @Override - public void setCharacterId(int characterId) { - this.fontId = characterId; - } }