diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ABC.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ABC.java index f7b713b3f..75876ad75 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ABC.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ABC.java @@ -41,6 +41,7 @@ import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; +import com.jpexs.decompiler.flash.abc.types.traits.TraitType; import com.jpexs.decompiler.flash.abc.types.traits.Traits; import com.jpexs.decompiler.flash.abc.usages.ClassNameMultinameUsage; import com.jpexs.decompiler.flash.abc.usages.ConstVarNameMultinameUsage; @@ -58,6 +59,7 @@ import com.jpexs.decompiler.flash.abc.usages.TypeNameMultinameUsage; import com.jpexs.decompiler.flash.dumpview.DumpInfo; import com.jpexs.decompiler.flash.dumpview.DumpInfoSpecial; import com.jpexs.decompiler.flash.dumpview.DumpInfoSpecialType; +import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.flash.helpers.SWFDecompilerPlugin; import com.jpexs.decompiler.flash.importers.As3ScriptReplaceException; import com.jpexs.decompiler.flash.importers.As3ScriptReplacerInterface; @@ -1426,6 +1428,30 @@ public class ABC { return null; } + public int getGlobalTraitId(TraitType type, boolean isStatic, int classIndex, int index) { + if (type == TraitType.INITIALIZER) { + if (!isStatic) { + return GraphTextWriter.TRAIT_INSTANCE_INITIALIZER; + } else { + return GraphTextWriter.TRAIT_CLASS_INITIALIZER; + } + } + + if (type == TraitType.SCRIPT_INITIALIZER) { + return GraphTextWriter.TRAIT_SCRIPT_INITIALIZER; + } + + if (classIndex == -1) { + return index; + } + + if (isStatic) { + return index; + } else { + return class_info.get(classIndex).static_traits.traits.size() + index; + } + } + private void removeClassFromTraits(Traits traits, int index) { for (Trait t : traits.traits) { if (t instanceof TraitClass) { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ScriptPack.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ScriptPack.java index c3f14fb72..6948a10dd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ScriptPack.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/ScriptPack.java @@ -620,12 +620,12 @@ public class ScriptPack extends AS3ClassTreeItem { public void getMethodInfos(List methodInfos) { int script_init = abc.script_info.get(scriptIndex).init_index; - methodInfos.add(new MethodId(-1, script_init)); + methodInfos.add(new MethodId(GraphTextWriter.TRAIT_SCRIPT_INITIALIZER, -1, script_init)); List traits = abc.script_info.get(scriptIndex).traits.traits; - for (int t = 0; t < traitIndices.size(); t++) { + for (int t : traitIndices) { Trait trait = traits.get(t); - trait.getMethodInfos(abc, -1, methodInfos); + trait.getMethodInfos(abc, GraphTextWriter.TRAIT_UNKNOWN, -1, methodInfos); } } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java index 510217e13..b5a3e154e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java @@ -511,5 +511,5 @@ public abstract class Trait implements Cloneable, Serializable { return true; } - public abstract void getMethodInfos(ABC abc, int classIndex, List methodInfos); + public abstract void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java index 03070a2ad..170999309 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java @@ -278,19 +278,19 @@ public class TraitClass extends Trait implements TraitWithSlot { } @Override - public void getMethodInfos(ABC abc, int classIndex, List methodInfos) { + public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { InstanceInfo instanceInfo = abc.instance_info.get(class_info); ClassInfo classInfo = abc.class_info.get(class_info); //class initializer - methodInfos.add(new MethodId(class_info, classInfo.cinit_index)); + methodInfos.add(new MethodId(GraphTextWriter.TRAIT_CLASS_INITIALIZER, class_info, classInfo.cinit_index)); //constructor - instance initializer - methodInfos.add(new MethodId(class_info, instanceInfo.iinit_index)); + methodInfos.add(new MethodId(GraphTextWriter.TRAIT_INSTANCE_INITIALIZER, class_info, instanceInfo.iinit_index)); //static variables,constants & methods - classInfo.static_traits.getMethodInfos(abc, class_info, methodInfos); + classInfo.static_traits.getMethodInfos(abc, true, class_info, methodInfos); - instanceInfo.instance_traits.getMethodInfos(abc, class_info, methodInfos); + instanceInfo.instance_traits.getMethodInfos(abc, false, class_info, methodInfos); } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java index d8643fd3d..7c43cbbb0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java @@ -147,7 +147,7 @@ public class TraitFunction extends Trait implements TraitWithSlot { } @Override - public void getMethodInfos(ABC abc, int classIndex, List methodInfos) { - methodInfos.add(new MethodId(classIndex, method_info)); + public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { + methodInfos.add(new MethodId(traitId, classIndex, method_info)); } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java index e84aa51de..b4b18456d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java @@ -228,7 +228,7 @@ public class TraitMethodGetterSetter extends Trait { } @Override - public void getMethodInfos(ABC abc, int classIndex, List methodInfos) { - methodInfos.add(new MethodId(classIndex, method_info)); + public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { + methodInfos.add(new MethodId(traitId, classIndex, method_info)); } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java index 4d6607570..9af84110e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java @@ -247,6 +247,6 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { } @Override - public void getMethodInfos(ABC abc, int classIndex, List methodInfos) { + public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java new file mode 100644 index 000000000..b3fe2d395 --- /dev/null +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2010-2016 JPEXS + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package com.jpexs.decompiler.flash.abc.types.traits; + +/** + * + * @author JPEXS + */ +public enum TraitType { + METHOD, + VAR, + CONST, + INITIALIZER, + SCRIPT_INITIALIZER; + + public static TraitType getTypeForTrait(Trait t) { + if (t instanceof TraitMethodGetterSetter) { + return METHOD; + } + if (t instanceof TraitSlotConst) { + if (((TraitSlotConst) t).isConst()) { + return CONST; + } else { + return VAR; + } + } + return null; + } +} diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java index f8e8b261b..964ef46f7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java @@ -171,12 +171,7 @@ public class Traits implements Cloneable, Serializable { continue; } writer.newLine(); - int h = t; - if (classIndex != -1) { - if (!isStatic) { - h += abc.class_info.get(classIndex).static_traits.traits.size(); - } - } + int h = abc.getGlobalTraitId(TraitType.METHOD /*non-initializer*/, isStatic, classIndex, t); if (trait instanceof TraitClass) { writer.startClass(((TraitClass) trait).class_info); } else { @@ -252,10 +247,10 @@ public class Traits implements Cloneable, Serializable { } } - public void getMethodInfos(ABC abc, int classIndex, List methodInfos) { + public void getMethodInfos(ABC abc, boolean isStatic, int classIndex, List methodInfos) { for (int t = 0; t < traits.size(); t++) { Trait trait = traits.get(t); - trait.getMethodInfos(abc, classIndex, methodInfos); + trait.getMethodInfos(abc, abc.getGlobalTraitId(TraitType.METHOD /*non-initializer*/, isStatic, classIndex, t), classIndex, methodInfos); } } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/helpers/GraphTextWriter.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/helpers/GraphTextWriter.java index 14fc85280..895ee8e11 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/helpers/GraphTextWriter.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/helpers/GraphTextWriter.java @@ -39,6 +39,8 @@ public abstract class GraphTextWriter { public static final int TRAIT_SCRIPT_INITIALIZER = -3; + public static final int TRAIT_UNKNOWN = -4; + public CodeFormatting getFormatting() { return formatting; } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources.properties index d15c905c2..6fd45c58d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources.properties @@ -36,3 +36,7 @@ timeFormat.second = second timeFormat.seconds = seconds fontNotFound = Font with id=%fontId% was not found. + +trait.scriptinitializer = script initializer +trait.instanceinitializer = instance initializer +trait.classinitializer = class initializer diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ca.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ca.properties index 2a1286504..815e46846 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ca.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ca.properties @@ -36,3 +36,7 @@ timeFormat.second = segon timeFormat.seconds = segons fontNotFound = No s'ha trobat la tipografia amb id=%fontId%. + +trait.scriptinitializer = iniciador del script +trait.instanceinitializer = inicialitzador d'inst\u00e0ncia +trait.classinitializer = inicialitzador de classe diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_cs.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_cs.properties index e6b1d93e5..e4353f3ff 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_cs.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_cs.properties @@ -34,3 +34,7 @@ timeFormat.second = vte\u0159ina timeFormat.seconds = vte\u0159in fontNotFound = P\u00edsmo s id=%fontId% nebylo nalezeno. + +trait.scriptinitializer = inicializ\u00e1tor skriptu +trait.instanceinitializer = inicializ\u00e1tor instance +trait.classinitializer = inicializ\u00e1tor t\u0159\u00eddy diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_de.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_de.properties index b5848a881..2b2fe633d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_de.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_de.properties @@ -13,3 +13,5 @@ # You should have received a copy of the GNU Lesser General Public # License along with this library. +trait.instanceinitializer = Instanzen-Initialisierer +trait.classinitializer = Klassen-Initialisierer diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_es.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_es.properties index e2530120b..b234e54a9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_es.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_es.properties @@ -34,3 +34,7 @@ timeFormat.second = segundo timeFormat.seconds = segundos fontNotFound = La fuente con id=%fontId% no se encontr\u00f3. + +trait.scriptinitializer = inicializador de script +trait.instanceinitializer = inicializador de instancia +trait.classinitializer = inicializador de clase diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_fr.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_fr.properties index eb6209405..b7a0eb2b1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_fr.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_fr.properties @@ -36,3 +36,7 @@ timeFormat.second = seconde timeFormat.seconds = secondes fontNotFound = La police de caract\u00e8res n\u00ba%fontId% est introuvable. + +trait.scriptinitializer = Initialisateur de script +trait.instanceinitializer = instance d'initialisation +trait.classinitializer = classe d'initialisation diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_hu.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_hu.properties index 715b794e8..5c7c4a8ba 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_hu.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_hu.properties @@ -36,3 +36,7 @@ timeFormat.second = m\u00e1sodperc timeFormat.seconds = m\u00e1sodperc fontNotFound = Bet\u0171t\u00edpus (id=%fontId%) nem tal\u00e1lhat\u00f3. + +trait.scriptinitializer = szkript inicializ\u00e1l\u00f3 +trait.instanceinitializer = p\u00e9ld\u00e1ny inicializ\u00e1l\u00f3 +trait.classinitializer = oszt\u00e1ly inicializ\u00e1l\u00f3 diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_it.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_it.properties index 98841f279..6d2b412d6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_it.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_it.properties @@ -36,3 +36,7 @@ timeFormat.second = secondo timeFormat.seconds = secondi fontNotFound = Font con id=%fontId% non trovato. + +trait.scriptinitializer = Inizializzatore script +trait.instanceinitializer = instance initializer +trait.classinitializer = class initializer diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_nl.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_nl.properties index 010e60a01..a9d428ce2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_nl.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_nl.properties @@ -34,3 +34,6 @@ timeFormat.second = seconde timeFormat.seconds = seconden fontNotFound = Lettertype met id=%fontId% is niet gevonden. + +trait.instanceinitializer = instantie initialiseerder +trait.classinitializer = klasse initialiseerder diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pl.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pl.properties new file mode 100644 index 000000000..86f916691 --- /dev/null +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pl.properties @@ -0,0 +1,17 @@ +# Copyright (C) 2010-2016 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. + +trait.instanceinitializer = inicjator instancji +trait.classinitializer = inicjator klasy diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt.properties index b5848a881..640328265 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt.properties @@ -13,3 +13,5 @@ # You should have received a copy of the GNU Lesser General Public # License along with this library. +trait.instanceinitializer = inicializador de instancias +trait.classinitializer = inicializador de classes diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt_BR.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt_BR.properties index b5848a881..640328265 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt_BR.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_pt_BR.properties @@ -13,3 +13,5 @@ # You should have received a copy of the GNU Lesser General Public # License along with this library. +trait.instanceinitializer = inicializador de instancias +trait.classinitializer = inicializador de classes diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ru.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ru.properties index 2b234e48b..2a77dcaab 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ru.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_ru.properties @@ -34,3 +34,6 @@ timeFormat.second = \u0441\u0435\u043a. timeFormat.seconds = \u0441\u0435\u043a. fontNotFound = \u0428\u0440\u0438\u0444\u0442 \u0441 id=%fontId% \u043d\u0435 \u0431\u044b\u043b \u043d\u0430\u0439\u0434\u0435\u043d. + +trait.instanceinitializer = \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 +trait.classinitializer = \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043a\u043b\u0430\u0441\u0441\u0430 diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_sv.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_sv.properties index 6230eae7a..0e4b9989f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_sv.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_sv.properties @@ -34,3 +34,6 @@ timeFormat.second = sekund timeFormat.seconds = sekunder fontNotFound = Typsnitt med id=%fontId% hittades inte. + +trait.instanceinitializer = instans initierare +trait.classinitializer = klass initierare diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_uk.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_uk.properties index 70accbd3b..3edc38519 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_uk.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_uk.properties @@ -34,3 +34,6 @@ timeFormat.second = \u0441\u0435\u043a. timeFormat.seconds = \u0441\u0435\u043a. fontNotFound = \u0428\u0440\u0438\u0444\u0442 \u0437 id=%fontId% \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e. + +trait.instanceinitializer = \u0456\u043d\u0456\u0446\u0456\u0430\u043b\u0456\u0437\u0430\u0442\u043e\u0440 \u043e\u0431'\u0454\u043a\u0442\u0430 +trait.classinitializer = \u0456\u043d\u0456\u0446\u0456\u0430\u043b\u0456\u0437\u0430\u0442\u043e\u0440 \u043a\u043b\u0430\u0441\u0443 diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_zh.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_zh.properties index b5848a881..c7442ac7b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_zh.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/AppResources_zh.properties @@ -13,3 +13,6 @@ # You should have received a copy of the GNU Lesser General Public # License along with this library. +trait.scriptinitializer = \u521d\u59cb\u5316\u811a\u672c +trait.instanceinitializer = \u521d\u59cb\u5316\u5b9e\u4f8b +trait.classinitializer = \u521d\u59cb\u5316\u7c7b diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ABCSearchResult.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ABCSearchResult.java index 68ddbff11..9b1b5ac63 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ABCSearchResult.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ABCSearchResult.java @@ -16,7 +16,10 @@ */ package com.jpexs.decompiler.flash.search; +import com.jpexs.decompiler.flash.AppResources; +import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.ScriptPack; +import com.jpexs.decompiler.flash.helpers.GraphTextWriter; /** * @@ -24,38 +27,85 @@ import com.jpexs.decompiler.flash.abc.ScriptPack; */ public class ABCSearchResult { + public static String STR_INSTANCE_INITIALIZER = AppResources.translate("trait.instanceinitializer"); + + public static String STR_CLASS_INITIALIZER = AppResources.translate("trait.classinitializer"); + + public static String STR_SCRIPT_INITIALIZER = AppResources.translate("trait.scriptinitializer"); + private final ScriptPack scriptPack; + private final boolean pcode; + private final int classIndex; - private final int methodIndex; + private final int traitId; public ABCSearchResult(ScriptPack scriptPack) { this.scriptPack = scriptPack; + pcode = false; classIndex = 0; - methodIndex = 0; + traitId = GraphTextWriter.TRAIT_UNKNOWN; } - public ABCSearchResult(ScriptPack scriptPack, int classIndex, int methodIndex) { + public ABCSearchResult(ScriptPack scriptPack, int classIndex, int traitId) { this.scriptPack = scriptPack; + pcode = true; this.classIndex = classIndex; - this.methodIndex = methodIndex; + this.traitId = traitId; } public ScriptPack getScriptPack() { return scriptPack; } - public int getClassIndex() { - return classIndex; + public boolean isPcode() { + return pcode; } - public int getMethodIndex() { - return methodIndex; + public int getTraitId() { + return traitId; + } + + private String getTraitName() { + if (traitId == GraphTextWriter.TRAIT_SCRIPT_INITIALIZER) { + return STR_SCRIPT_INITIALIZER; + } + + if (classIndex == -1) { + return null; + } + + if (traitId == GraphTextWriter.TRAIT_CLASS_INITIALIZER) { + return STR_CLASS_INITIALIZER; + } + + if (traitId == GraphTextWriter.TRAIT_INSTANCE_INITIALIZER) { + return STR_INSTANCE_INITIALIZER; + } + + ABC abc = scriptPack.abc; + + int instanceTraitCount = abc.instance_info.get(classIndex).instance_traits.traits.size(); + boolean isStatic = traitId >= instanceTraitCount; + + if (isStatic) { + int index = traitId - instanceTraitCount; + return abc.class_info.get(classIndex).static_traits.traits.get(index).getName(abc).getName(abc.constants, null, false, true); + } else { + return abc.instance_info.get(classIndex).instance_traits.traits.get(traitId).getName(abc).getName(abc.constants, null, false, true); + } } @Override public String toString() { - return scriptPack.getClassPath().toString(); + String result = scriptPack.getClassPath().toString(); + + if (pcode) { + result += "/"; + result += getTraitName(); + } + + return result; } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ActionScriptSearch.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ActionScriptSearch.java index b12b29ab9..2c7caebea 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ActionScriptSearch.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/ActionScriptSearch.java @@ -159,7 +159,7 @@ public class ActionScriptSearch { abc.bodies.get(bodyIndex).getCode().toASMSource(abc.constants, abc.method_info.get(body.method_info), body, ScriptExportMode.PCODE, writer); String text = writer.toString(); if (pat.matcher(text).find()) { - ABCSearchResult searchResult = new ABCSearchResult(pack, methodInfo.getClassIndex(), methodInfo.getMethodIndex()); + ABCSearchResult searchResult = new ABCSearchResult(pack, methodInfo.getClassIndex(), methodInfo.getTraitId()); found.add(searchResult); } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/MethodId.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/MethodId.java index b8f88f347..6d39c0bbc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/MethodId.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/search/MethodId.java @@ -22,11 +22,14 @@ package com.jpexs.decompiler.flash.search; */ public class MethodId { + private final int traitId; + private final int classIndex; private final int methodIndex; - public MethodId(int classIndex, int methodIndex) { + public MethodId(int traitId, int classIndex, int methodIndex) { + this.traitId = traitId; this.classIndex = classIndex; this.methodIndex = methodIndex; } @@ -38,4 +41,8 @@ public class MethodId { public int getMethodIndex() { return methodIndex; } + + public int getTraitId() { + return traitId; + } } diff --git a/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java b/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java index 6b1f32d12..298eac3fa 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java @@ -1249,10 +1249,20 @@ public class ABCPanel extends JPanel implements ItemListener, SearchListener { - searchPanel.showQuickFindDialog(decompiledTextArea); + if (pcode) { + searchPanel.showQuickFindDialog(detailPanel.methodTraitPanel.methodCodePanel.getSourceTextArea()); + } else { + searchPanel.showQuickFindDialog(decompiledTextArea); + } }); } diff --git a/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java b/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java index b1a688f75..48a56ca19 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java @@ -608,7 +608,7 @@ public class DecompiledEditorPane extends DebuggableEditorPane implements CaretL Highlighting tc = Highlighting.searchIndex(highlightedText.getClassHighlights(), classIndex); if (tc != null || isScriptInit) { - Highlighting th = Highlighting.searchIndex(highlightedText.getTraitHighlights(), traitId, isScriptInit || tc == null ? 0 : tc.startPos, isScriptInit || tc == null ? -1 : tc.startPos + tc.len); + Highlighting th = Highlighting.searchIndex(highlightedText.getTraitHighlights(), traitId, isScriptInit ? 0 : tc.startPos, isScriptInit ? -1 : tc.startPos + tc.len); int pos = 0; if (th != null) { if (th.len > 1) { diff --git a/src/com/jpexs/decompiler/flash/gui/abc/IconListRenderer.java b/src/com/jpexs/decompiler/flash/gui/abc/IconListRenderer.java index 58ab74a4a..209f50b6e 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/IconListRenderer.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/IconListRenderer.java @@ -16,6 +16,7 @@ */ package com.jpexs.decompiler.flash.gui.abc; +import com.jpexs.decompiler.flash.abc.types.traits.TraitType; import com.jpexs.decompiler.flash.gui.View; import java.awt.Component; import java.net.URL; @@ -62,22 +63,26 @@ public class IconListRenderer extends DefaultListCellRenderer { // Get icon to use for the list item value TraitsListItem tli = (TraitsListItem) value; - if (tli.getType() == TraitsListItem.Type.CONST) { + if (tli.getType() == TraitType.CONST) { label.setIcon(constIcon); } - if (tli.getType() == TraitsListItem.Type.VAR) { + + if (tli.getType() == TraitType.VAR) { label.setIcon(variableIcon); } - if (tli.getType() == TraitsListItem.Type.METHOD) { - label.setIcon(functionIcon); - } - if (tli.getType() == TraitsListItem.Type.INITIALIZER) { + + if (tli.getType() == TraitType.METHOD) { label.setIcon(functionIcon); } - if (tli.getType() == TraitsListItem.Type.SCRIPT_INITIALIZER) { + if (tli.getType() == TraitType.INITIALIZER) { label.setIcon(functionIcon); } + + if (tli.getType() == TraitType.SCRIPT_INITIALIZER) { + label.setIcon(functionIcon); + } + return label; } } diff --git a/src/com/jpexs/decompiler/flash/gui/abc/TraitsList.java b/src/com/jpexs/decompiler/flash/gui/abc/TraitsList.java index 02f18ee85..7cb82c525 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/TraitsList.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/TraitsList.java @@ -17,6 +17,7 @@ package com.jpexs.decompiler.flash.gui.abc; import com.jpexs.decompiler.flash.abc.ABC; +import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Graphics; @@ -88,7 +89,7 @@ public class TraitsList extends JList implements ListSelectionListener { } lastSelected = getSelectedIndex(); TraitsListItem sel = (TraitsListItem) getSelectedValue(); - abcPanel.decompiledTextArea.gotoTrait(sel == null ? -1 : sel.getGlobalTraitId()); + abcPanel.decompiledTextArea.gotoTrait(sel == null ? GraphTextWriter.TRAIT_UNKNOWN : sel.getGlobalTraitId()); } @Override diff --git a/src/com/jpexs/decompiler/flash/gui/abc/TraitsListItem.java b/src/com/jpexs/decompiler/flash/gui/abc/TraitsListItem.java index d79c71651..720918a55 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/TraitsListItem.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/TraitsListItem.java @@ -19,14 +19,12 @@ package com.jpexs.decompiler.flash.gui.abc; import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.ConvertData; import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; +import com.jpexs.decompiler.flash.abc.types.traits.TraitType; import com.jpexs.decompiler.flash.configuration.Configuration; import com.jpexs.decompiler.flash.exporters.modes.ScriptExportMode; -import com.jpexs.decompiler.flash.gui.AppStrings; -import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.flash.helpers.HighlightedTextWriter; import com.jpexs.decompiler.flash.helpers.NulWriter; +import com.jpexs.decompiler.flash.search.ABCSearchResult; import java.util.ArrayList; import java.util.logging.Level; import java.util.logging.Logger; @@ -37,7 +35,7 @@ import java.util.logging.Logger; */ public class TraitsListItem { - private final Type type; + private final TraitType type; private final boolean isStatic; @@ -49,13 +47,13 @@ public class TraitsListItem { private final int scriptIndex; - public String STR_INSTANCE_INITIALIZER = AppStrings.translate("abc.traitslist.instanceinitializer"); + public static String STR_INSTANCE_INITIALIZER = ABCSearchResult.STR_INSTANCE_INITIALIZER; - public String STR_CLASS_INITIALIZER = AppStrings.translate("abc.traitslist.classinitializer"); + public static String STR_CLASS_INITIALIZER = ABCSearchResult.STR_CLASS_INITIALIZER; - public String STR_SCRIPT_INITIALIZER = AppStrings.translate("abc.traitslist.scriptinitializer"); + public static String STR_SCRIPT_INITIALIZER = ABCSearchResult.STR_SCRIPT_INITIALIZER; - public TraitsListItem(Type type, int index, boolean isStatic, ABC abc, int classIndex, int scriptIndex) { + public TraitsListItem(TraitType type, int index, boolean isStatic, ABC abc, int classIndex, int scriptIndex) { this.type = type; this.index = index; this.isStatic = isStatic; @@ -65,33 +63,19 @@ public class TraitsListItem { } public int getGlobalTraitId() { - if (type == Type.INITIALIZER) { - if (!isStatic) { - return GraphTextWriter.TRAIT_INSTANCE_INITIALIZER; - } else { - return GraphTextWriter.TRAIT_CLASS_INITIALIZER; - } - } - if (type == Type.SCRIPT_INITIALIZER) { - return GraphTextWriter.TRAIT_SCRIPT_INITIALIZER; - } - if (isStatic) { - return index; - } else { - return abc.class_info.get(classIndex).static_traits.traits.size() + index; - } + return abc.getGlobalTraitId(type, isStatic, classIndex, index); } public String toStringName() { - if (type == Type.INITIALIZER) { + if (type == TraitType.INITIALIZER) { if (!isStatic) { return "__" + STR_INSTANCE_INITIALIZER; } else { return "__" + STR_CLASS_INITIALIZER; } } - if (type == Type.SCRIPT_INITIALIZER) { + if (type == TraitType.SCRIPT_INITIALIZER) { return "__" + STR_SCRIPT_INITIALIZER; } if (isStatic) { @@ -105,9 +89,9 @@ public class TraitsListItem { public String toString() { String s = ""; try { - if (type == Type.SCRIPT_INITIALIZER) { + if (type == TraitType.SCRIPT_INITIALIZER) { s = STR_SCRIPT_INITIALIZER; - } else if (type == Type.INITIALIZER) { + } else if (type == TraitType.INITIALIZER) { if (!isStatic) { s = STR_INSTANCE_INITIALIZER; } else { @@ -135,7 +119,7 @@ public class TraitsListItem { return s; } - public Type getType() { + public TraitType getType() { return type; } @@ -143,25 +127,11 @@ public class TraitsListItem { return isStatic; } - public enum Type { - METHOD, - VAR, - CONST, - INITIALIZER, - SCRIPT_INITIALIZER; + public int getClassIndex() { + return classIndex; + } - public static Type getTypeForTrait(Trait t) { - if (t instanceof TraitMethodGetterSetter) { - return METHOD; - } - if (t instanceof TraitSlotConst) { - if (((TraitSlotConst) t).isConst()) { - return CONST; - } else { - return VAR; - } - } - return null; - } + public int getIndex() { + return index; } } diff --git a/src/com/jpexs/decompiler/flash/gui/abc/TraitsListModel.java b/src/com/jpexs/decompiler/flash/gui/abc/TraitsListModel.java index 3780bca55..626bfe782 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/TraitsListModel.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/TraitsListModel.java @@ -18,6 +18,7 @@ package com.jpexs.decompiler.flash.gui.abc; import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Trait; +import com.jpexs.decompiler.flash.abc.types.traits.TraitType; import com.jpexs.decompiler.flash.configuration.Configuration; import java.util.ArrayList; import java.util.Collections; @@ -58,24 +59,26 @@ public final class TraitsListModel implements ListModel { if (classIndex > -1) { List traits = abc.class_info.get(classIndex).static_traits.traits; for (int t = 0; t < traits.size(); t++) { - if (traits.get(t).isVisible(true, abc)) { - items.add(new TraitsListItem(TraitsListItem.Type.getTypeForTrait(traits.get(t)), t, true, abc, classIndex, scriptIndex)); + Trait trait = traits.get(t); + if (trait.isVisible(true, abc)) { + items.add(new TraitsListItem(TraitType.getTypeForTrait(trait), t, true, abc, classIndex, scriptIndex)); } } traits = abc.instance_info.get(classIndex).instance_traits.traits; for (int t = 0; t < traits.size(); t++) { - if (traits.get(t).isVisible(false, abc)) { - items.add(new TraitsListItem(TraitsListItem.Type.getTypeForTrait(traits.get(t)), t, false, abc, classIndex, scriptIndex)); + Trait trait = traits.get(t); + if (trait.isVisible(false, abc)) { + items.add(new TraitsListItem(TraitType.getTypeForTrait(trait), t, false, abc, classIndex, scriptIndex)); } } - items.add(new TraitsListItem(TraitsListItem.Type.INITIALIZER, 0, false, abc, classIndex, scriptIndex)); - items.add(new TraitsListItem(TraitsListItem.Type.INITIALIZER, 0, true, abc, classIndex, scriptIndex)); + items.add(new TraitsListItem(TraitType.INITIALIZER, 0, false, abc, classIndex, scriptIndex)); + items.add(new TraitsListItem(TraitType.INITIALIZER, 0, true, abc, classIndex, scriptIndex)); } if (Configuration.enableScriptInitializerDisplay.get()) { - items.add(new TraitsListItem(TraitsListItem.Type.SCRIPT_INITIALIZER, 0, true, abc, classIndex, scriptIndex)); + items.add(new TraitsListItem(TraitType.SCRIPT_INITIALIZER, 0, true, abc, classIndex, scriptIndex)); } } diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties index c6b0e091f..fcfeee3fa 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties @@ -200,9 +200,6 @@ info.selecttrait = Select class and click a trait in Actionscript source to edit button.viewgraph = View Graph button.viewhex = View Hex -abc.traitslist.instanceinitializer = instance initializer -abc.traitslist.classinitializer = class initializer - action.edit.experimental = (Experimental) message.action.saved = Code successfully saved @@ -631,7 +628,6 @@ error.image.alpha.invalid = Invalid alpha channel data. #after version 6.0.2 contextmenu.saveUncompressedToFile = Save to Uncompressed File -abc.traitslist.scriptinitializer = script initializer menu.settings.autoOpenLoadedSWFs = Open loaded SWFs while playing #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ca.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ca.properties index 24e3269bf..32e16a0a6 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ca.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ca.properties @@ -200,9 +200,6 @@ info.selecttrait = Selecciona una classe i fes clic sobre un tret al codi font d button.viewgraph = Visualitza Gr\u00e0fica button.viewhex = Visualitza Hex -abc.traitslist.instanceinitializer = inicialitzador d'inst\u00e0ncia -abc.traitslist.classinitializer = inicialitzador de classe - action.edit.experimental = (Experimental) message.action.saved = El codi s'ha desat correctament @@ -631,7 +628,6 @@ error.image.alpha.invalid = Dades inv\u00e0lides del canal alfa. #after version 6.0.2 contextmenu.saveUncompressedToFile = Desa a un Fitxer No Comprimit -abc.traitslist.scriptinitializer = iniciador del script menu.settings.autoOpenLoadedSWFs = Obre els SWFs carregats mentre es reprodueixen #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties index 057ffa238..26748160c 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties @@ -198,9 +198,6 @@ info.selecttrait = Vyberte t\u0159\u00eddu a klikn\u011bte na vlastnost v zdrojo button.viewgraph = Zobrazit Graf button.viewhex = Zobrazit Hex -abc.traitslist.instanceinitializer = inicializ\u00e1tor instance -abc.traitslist.classinitializer = inicializ\u00e1tor t\u0159\u00eddy - action.edit.experimental = (Experiment\u00e1ln\u00ed) message.action.saved = K\u00f3d \u00fasp\u011b\u0161n\u011b ulo\u017een @@ -626,7 +623,6 @@ error.image.alpha.invalid = Neplatn\u00e1 data alpha kan\u00e1lu. #after version 6.0.2 contextmenu.saveUncompressedToFile = Ulo\u017eit nekomprimovan\u011b -abc.traitslist.scriptinitializer = inicializ\u00e1tor skriptu menu.settings.autoOpenLoadedSWFs = Otev\u00edrat na\u010d\u00edtan\u00e1 SWF b\u011bhem p\u0159ehr\u00e1v\u00e1n\u00ed #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_de.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_de.properties index ac4fc6197..346d83cd8 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_de.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_de.properties @@ -198,9 +198,6 @@ info.selecttrait = W\u00e4hlen Sie eine Klasse aus und klicken Sie einen Trait i button.viewgraph = Flowchart Graph button.viewhex = Hexdata dump -abc.traitslist.instanceinitializer = Instanzen-Initialisierer -abc.traitslist.classinitializer = Klassen-Initialisierer - action.edit.experimental = (Experimentell) message.action.saved = Code erfolgreich gespeichert diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_es.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_es.properties index 761277e4a..f627def81 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_es.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_es.properties @@ -198,9 +198,6 @@ info.selecttrait = Seleccione la clase y clickee un atributo en el c\u00f3digo A button.viewgraph = Ver grafo button.viewhex = Ver en hexa -abc.traitslist.instanceinitializer = inicializador de instancia -abc.traitslist.classinitializer = inicializador de clase - action.edit.experimental = (Experimental) message.action.saved = C\u00f3digo guardado exitosamente @@ -629,7 +626,6 @@ error.image.alpha.invalid = Datos de canal alpha no v\u00e1lidos #after version 6.0.2 contextmenu.saveUncompressedToFile = Guardar en archivo no comprimido -abc.traitslist.scriptinitializer = inicializador de script menu.settings.autoOpenLoadedSWFs = Abrir los SWFs cargados mientras se reproducen #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_fr.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_fr.properties index 10419f9e0..f4916c1e0 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_fr.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_fr.properties @@ -198,9 +198,6 @@ info.selecttrait = S\u00e9lectionnez la classe et cliquez sur une caract\u00e9ri button.viewgraph = Afficher le Graphique button.viewhex = Afficher le code Hexad\u00e9cimal -abc.traitslist.instanceinitializer = instance d'initialisation -abc.traitslist.classinitializer = classe d'initialisation - action.edit.experimental = (Exp\u00e9rimental) message.action.saved = Le code a \u00e9t\u00e9 enregistr\u00e9 avec succ\u00e8s @@ -629,7 +626,6 @@ error.image.alpha.invalid = Les donn\u00e9es du canal alpha est invalide. #after version 6.0.2 contextmenu.saveUncompressedToFile = Enregistrer dans un fichier d\u00e9compress\u00e9 -abc.traitslist.scriptinitializer = Initialisateur de script menu.settings.autoOpenLoadedSWFs = Ouvrir les SWF charg\u00e9s lors de la lecture #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_hu.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_hu.properties index 8f3cd7abc..a3f216f87 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_hu.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_hu.properties @@ -198,9 +198,6 @@ info.selecttrait = V\u00e1lasszon ki egy oszt\u00e1lyt \u00e9s kattintson egy je button.viewgraph = Gr\u00e1f mutat\u00e1sa button.viewhex = Hexa mutat\u00e1sa -abc.traitslist.instanceinitializer = p\u00e9ld\u00e1ny inicializ\u00e1l\u00f3 -abc.traitslist.classinitializer = oszt\u00e1ly inicializ\u00e1l\u00f3 - action.edit.experimental = (K\u00eds\u00e9rleti) message.action.saved = K\u00f3d sikeresen lementve @@ -628,7 +625,6 @@ error.image.alpha.invalid = \u00c9rv\u00e9nytelen alfa csatorna adat. #after version 6.0.2 contextmenu.saveUncompressedToFile = Ment\u00e9s t\u00f6m\u00f6r\u00edtett f\u00e1jlba -abc.traitslist.scriptinitializer = szkript inicializ\u00e1l\u00f3 menu.settings.autoOpenLoadedSWFs = SWF-ek megnyit\u00e1sa lej\u00e1tsz\u00e1s k\u00f6zben #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_it.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_it.properties index d37651c6e..ea9de778a 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_it.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_it.properties @@ -199,9 +199,6 @@ info.selecttrait = Selezionare una classe e fare clic su un trait nel sorgente A button.viewgraph = Visualizza grafo button.viewhex = Visualizza listato -abc.traitslist.instanceinitializer = instance initializer -abc.traitslist.classinitializer = class initializer - action.edit.experimental = (Sperimentale) message.action.saved = Codice salvato con successo @@ -629,7 +626,6 @@ error.image.alpha.invalid = Valori canale alfa non validi. #after version 6.0.2 contextmenu.saveUncompressedToFile = Salva su file senza compressione -abc.traitslist.scriptinitializer = Inizializzatore script menu.settings.autoOpenLoadedSWFs = Apri SWF caricati durante la riproduzione #after version 6.1.1 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_nl.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_nl.properties index eb008820e..623c87fb0 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_nl.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_nl.properties @@ -198,9 +198,6 @@ info.selecttrait = Selecteer de klas en klik op een karaktertrek in Actionscript button.viewgraph = Graaf bekijken button.viewhex = Hex bekijken -abc.traitslist.instanceinitializer = instantie initialiseerder -abc.traitslist.classinitializer = klasse initialiseerder - action.edit.experimental = (Experimenteel) message.action.saved = Code is succesvol opgeslagen diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pl.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pl.properties index 57cd74b8f..43498f993 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pl.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pl.properties @@ -198,9 +198,6 @@ info.selecttrait = Wybierz klas\u0119 i kliknij cech\u0119 w \u017ar\u00f3dle ko button.viewgraph = Poka\u017c Wykres button.viewhex = Poka\u017c Hex -abc.traitslist.instanceinitializer = inicjator instancji -abc.traitslist.classinitializer = inicjator klasy - action.edit.experimental = (Eksperymentalne) message.action.saved = Kod pomy\u015blnie zapisano diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt.properties index c4d522882..01cfd7e17 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt.properties @@ -198,9 +198,6 @@ info.selecttrait = Selecione uma classe e click em um atributo no ActionScript p button.viewgraph = Ver Grafico button.viewhex = Ver Hex -abc.traitslist.instanceinitializer = inicializador de instancias -abc.traitslist.classinitializer = inicializador de classes - action.edit.experimental = (Experimental) message.action.saved = C\u00f3digo salvo com sucesso diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt_BR.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt_BR.properties index 8233ba523..8655a264c 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt_BR.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_pt_BR.properties @@ -198,9 +198,6 @@ info.selecttrait = Selecione uma classe e click em um atributo no ActionScript p button.viewgraph = Ver Grafico button.viewhex = Ver Hex -abc.traitslist.instanceinitializer = inicializador de instancias -abc.traitslist.classinitializer = inicializador de classes - action.edit.experimental = (Experimental) message.action.saved = C\u00f3digo salvo com sucesso diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ru.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ru.properties index a8f96637c..85f827df2 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ru.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_ru.properties @@ -198,9 +198,6 @@ info.selecttrait = \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043a\u043b button.viewgraph = \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0413\u0440\u0430\u0444\u0430 button.viewhex = \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 Hex -abc.traitslist.instanceinitializer = \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 -abc.traitslist.classinitializer = \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043a\u043b\u0430\u0441\u0441\u0430 - action.edit.experimental = (\u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e) message.action.saved = \u041a\u043e\u0434 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_sv.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_sv.properties index 10a5c5afd..14e2b939c 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_sv.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_sv.properties @@ -198,9 +198,6 @@ info.selecttrait = V\u00e4lj klass och klicka p\u00e5 en egenskap i Actionskript button.viewgraph = Visa Diagram button.viewhex = Visa Hex -abc.traitslist.instanceinitializer = instans initierare -abc.traitslist.classinitializer = klass initierare - action.edit.experimental = (experimentellt) message.action.saved = Koden har sparats diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_uk.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_uk.properties index 2ddf7f571..ce082ee94 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_uk.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_uk.properties @@ -198,9 +198,6 @@ info.selecttrait = \u0412\u0438\u0431\u0435\u0440\u0456\u0442\u044c \u043a\u043b button.viewgraph = \u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434 \u0413\u0440\u0430\u0444\u0430 button.viewhex = \u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434 Hex -abc.traitslist.instanceinitializer = \u0456\u043d\u0456\u0446\u0456\u0430\u043b\u0456\u0437\u0430\u0442\u043e\u0440 \u043e\u0431'\u0454\u043a\u0442\u0430 -abc.traitslist.classinitializer = \u0456\u043d\u0456\u0446\u0456\u0430\u043b\u0456\u0437\u0430\u0442\u043e\u0440 \u043a\u043b\u0430\u0441\u0443 - action.edit.experimental = (\u0415\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e) message.action.saved = \u041a\u043e\u0434 \u0443\u0441\u043f\u0456\u0448\u043d\u043e \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u0439 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_zh.properties index baa2e5fbb..811de2324 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_zh.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_zh.properties @@ -198,9 +198,6 @@ info.selecttrait = \u8bf7\u9009\u62e9\u7c7b\uff0c\u7136\u540e\u70b9\u51fb\u8fdb\ button.viewgraph = \u6d4f\u89c8\u56fe\u5f62 button.viewhex = \u6d4f\u89c8\u5341\u516d\u8fdb\u5236 -abc.traitslist.instanceinitializer = \u521d\u59cb\u5316\u5b9e\u4f8b -abc.traitslist.classinitializer = \u521d\u59cb\u5316\u7c7b - action.edit.experimental = (\u5b9e\u9a8c\u7684) message.action.saved = \u4fdd\u5b58\u4ee3\u7801\u6210\u529f @@ -629,7 +626,6 @@ error.image.alpha.invalid = \u65e0\u6548\u7684 Alpha \u901a\u9053\u6570\u636e\u3 #after version 6.0.2 contextmenu.saveUncompressedToFile = \u4fdd\u5b58\u5230\u672a\u538b\u7f29\u6587\u4ef6 -abc.traitslist.scriptinitializer = \u521d\u59cb\u5316\u811a\u672c menu.settings.autoOpenLoadedSWFs = \u6253\u5f00\u5df2\u8f7d\u5165 SWF \u6587\u4ef6\u65f6\u64ad\u653e #after version 6.1.1