Removing AS3 scripts ("ScriptPacks")

This commit is contained in:
Jindra Petřík
2021-02-24 19:55:59 +01:00
parent 3385211b54
commit b54b51d206
4 changed files with 52 additions and 4 deletions
@@ -27,6 +27,7 @@ import com.jpexs.decompiler.flash.abc.types.ConvertData;
import com.jpexs.decompiler.flash.abc.types.MethodBody;
import com.jpexs.decompiler.flash.abc.types.Multiname;
import com.jpexs.decompiler.flash.abc.types.Namespace;
import com.jpexs.decompiler.flash.abc.types.ScriptInfo;
import com.jpexs.decompiler.flash.abc.types.traits.Trait;
import com.jpexs.decompiler.flash.abc.types.traits.TraitClass;
import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction;
@@ -331,6 +332,9 @@ public class ScriptPack extends AS3ClassTreeItem {
@Override
public boolean isModified() {
if (scriptIndex >= abc.script_info.size()) {
return false;
}
return abc.script_info.get(scriptIndex).isModified();
}
@@ -637,4 +641,15 @@ public class ScriptPack extends AS3ClassTreeItem {
trait.getMethodInfos(abc, GraphTextWriter.TRAIT_UNKNOWN, -1, methodInfos);
}
}
public void delete(ABC abc, boolean d) {
ScriptInfo si = abc.script_info.get(scriptIndex);
if (isSimple) {
si.delete(abc, d);
} else {
for (int t : traitIndices) {
si.traits.traits.get(t).delete(abc, d);
}
}
}
}