mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-24 13:05:34 +00:00
#844 lowercase/uppercase convertion in DefineTexts
This commit is contained in:
@@ -522,7 +522,7 @@ public final class SWF implements SWFContainerItem, Timelined {
|
||||
if (characters.containsKey(characterId)) {
|
||||
logger.log(Level.SEVERE, "SWF already contains characterId={0}", characterId);
|
||||
}
|
||||
|
||||
|
||||
if (characterId != 0) {
|
||||
characters.put(characterId, (CharacterTag) t);
|
||||
}
|
||||
|
||||
@@ -172,7 +172,7 @@ public class ActionScriptParser {
|
||||
}
|
||||
|
||||
private GraphTargetItem memberOrCall(TypeItem thisType, String pkg, Reference<Boolean> needsActivation, List<String> importedClasses, List<Integer> openedNamespaces, GraphTargetItem newcmds, HashMap<String, Integer> registerVars, boolean inFunction, boolean inMethod, List<AssignableAVM2Item> variables) throws IOException, AVM2ParseException {
|
||||
if(debugMode){
|
||||
if (debugMode) {
|
||||
System.out.println("memberOrCall:");
|
||||
}
|
||||
ParsedSymbol s = lex();
|
||||
@@ -213,8 +213,8 @@ public class ActionScriptParser {
|
||||
}
|
||||
|
||||
lexer.pushback(s);
|
||||
|
||||
if(debugMode){
|
||||
|
||||
if (debugMode) {
|
||||
System.out.println("/memberOrCall");
|
||||
}
|
||||
return ret;
|
||||
@@ -248,7 +248,7 @@ public class ActionScriptParser {
|
||||
}
|
||||
|
||||
private GraphTargetItem member(TypeItem thisType, String pkg, Reference<Boolean> needsActivation, List<String> importedClasses, List<Integer> openedNamespaces, GraphTargetItem obj, HashMap<String, Integer> registerVars, boolean inFunction, boolean inMethod, List<AssignableAVM2Item> variables) throws IOException, AVM2ParseException {
|
||||
if(debugMode){
|
||||
if (debugMode) {
|
||||
System.out.println("member:");
|
||||
}
|
||||
GraphTargetItem ret = obj;
|
||||
@@ -307,13 +307,13 @@ public class ActionScriptParser {
|
||||
s = lex();
|
||||
}
|
||||
}
|
||||
if(s.type.getPrecedence() == GraphTargetItem.PRECEDENCE_ASSIGMENT){
|
||||
if (s.type.getPrecedence() == GraphTargetItem.PRECEDENCE_ASSIGMENT) {
|
||||
ret = expression1(ret, s.type.getPrecedence(), thisType, pkg, needsActivation, importedClasses, openedNamespaces, inMethod, registerVars, inFunction, inMethod, false, variables);
|
||||
}else{
|
||||
} else {
|
||||
lexer.pushback(s);
|
||||
}
|
||||
|
||||
if(debugMode){
|
||||
|
||||
if (debugMode) {
|
||||
System.out.println("/member");
|
||||
}
|
||||
return ret;
|
||||
@@ -1390,7 +1390,7 @@ public class ActionScriptParser {
|
||||
if (firstCommand instanceof NameAVM2Item) {
|
||||
NameAVM2Item nai = (NameAVM2Item) firstCommand;
|
||||
if (nai.isDefinition() && nai.getAssignedValue() == null) { //??? WUT
|
||||
firstCommand = expression1(firstCommand,firstCommand.getPrecedence(),thisType, pkg, needsActivation, importedClasses,openedNamespaces,true, registerVars, inFunction, inMethod, true, variables);
|
||||
firstCommand = expression1(firstCommand, firstCommand.getPrecedence(), thisType, pkg, needsActivation, importedClasses, openedNamespaces, true, registerVars, inFunction, inMethod, true, variables);
|
||||
}
|
||||
}
|
||||
InAVM2Item inexpr = null;
|
||||
@@ -1682,9 +1682,9 @@ public class ActionScriptParser {
|
||||
/*
|
||||
fix > :
|
||||
a || b > c => a || (b > c)
|
||||
|
||||
|
||||
a < 0 || (b > c) + 1
|
||||
|
||||
|
||||
*/
|
||||
if (expr instanceof BinaryOp) {
|
||||
BinaryOp bo = (BinaryOp) expr;
|
||||
@@ -1787,7 +1787,7 @@ public class ActionScriptParser {
|
||||
|
||||
private GraphTargetItem expression(TypeItem thisType, String pkg, Reference<Boolean> needsActivation, List<String> importedClasses, List<Integer> openedNamespaces, boolean allowEmpty, HashMap<String, Integer> registerVars, boolean inFunction, boolean inMethod, boolean allowRemainder, List<AssignableAVM2Item> variables) throws IOException, AVM2ParseException {
|
||||
GraphTargetItem prim = expressionPrimary(thisType, pkg, needsActivation, importedClasses, openedNamespaces, allowEmpty, registerVars, inFunction, inMethod, allowRemainder, variables);
|
||||
if(prim==null){
|
||||
if (prim == null) {
|
||||
return null;
|
||||
}
|
||||
return expression1(prim, GraphTargetItem.NOPRECEDENCE, thisType, pkg, needsActivation, importedClasses, openedNamespaces, allowEmpty, registerVars, inFunction, inMethod, allowRemainder, variables);
|
||||
@@ -1801,7 +1801,7 @@ public class ActionScriptParser {
|
||||
*/
|
||||
private void xmlToGreaterFix(ParsedSymbol symb) {
|
||||
if (symb.isType(SymbolType.XML_STARTVARTAG_BEGIN, SymbolType.XML_STARTTAG_BEGIN)) {
|
||||
lexer.yypushbackstr(symb.value.toString().substring(1)); //parse again as GREATER_THAN
|
||||
lexer.yypushbackstr(symb.value.toString().substring(1)); //parse again as GREATER_THAN
|
||||
symb.type = SymbolType.GREATER_THAN;
|
||||
symb.group = SymbolGroup.OPERATOR;
|
||||
}
|
||||
@@ -2027,7 +2027,7 @@ public class ActionScriptParser {
|
||||
default:
|
||||
if (lhs instanceof ParenthesisItem) {
|
||||
GraphTargetItem coerced = expression(thisType, pkg, needsActivation, importedClasses, openedNamespaces, registerVars, inFunction, inMethod, allowRemainder, variables);
|
||||
if (coerced!=null && isType(((ParenthesisItem) lhs).value)) {
|
||||
if (coerced != null && isType(((ParenthesisItem) lhs).value)) {
|
||||
lhs = new CoerceAVM2Item(null, ((ParenthesisItem) lhs).value, coerced);
|
||||
}
|
||||
}
|
||||
@@ -2262,7 +2262,7 @@ public class ActionScriptParser {
|
||||
/*if (allowRemainder && existsRemainder) {
|
||||
GraphTargetItem rem = ret;
|
||||
do {
|
||||
rem = expressionRemainder(thisType, pkg, needsActivation, openedNamespaces, rem, registerVars, inFunction, inMethod, assocRight, variables, importedClasses);
|
||||
rem = expressionRemainder(thisType, pkg, needsActivation, openedNamespaces, rem, registerVars, inFunction, inMethod, assocRight, variables, importedClasses);
|
||||
if (rem != null) {
|
||||
ret = rem;
|
||||
}
|
||||
|
||||
@@ -334,7 +334,7 @@ public class NameAVM2Item extends AssignableAVM2Item {
|
||||
);
|
||||
} else {
|
||||
return toSourceMerge(localData, generator,
|
||||
(decrement? ins(isInteger ? new DecLocalIIns() : new DecLocalIns(), regNumber):ins(isInteger ? new IncLocalIIns() : new IncLocalIns(), regNumber)));
|
||||
(decrement ? ins(isInteger ? new DecLocalIIns() : new DecLocalIns(), regNumber) : ins(isInteger ? new IncLocalIIns() : new IncLocalIns(), regNumber)));
|
||||
}
|
||||
}
|
||||
return toSourceMerge(localData, generator,
|
||||
|
||||
@@ -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.
|
||||
*/
|
||||
@@ -25,116 +25,116 @@ import com.jpexs.decompiler.graph.GraphTargetItem;
|
||||
public enum SymbolType {
|
||||
//Keywords
|
||||
|
||||
BREAK ,
|
||||
CASE ,
|
||||
CONTINUE ,
|
||||
DEFAULT ,
|
||||
DO ,
|
||||
WHILE ,
|
||||
ELSE ,
|
||||
FOR ,
|
||||
EACH ,
|
||||
IN (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
IF ,
|
||||
RETURN ,
|
||||
SUPER (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
SWITCH ,
|
||||
THROW ,
|
||||
TRY ,
|
||||
CATCH ,
|
||||
FINALLY ,
|
||||
WITH ,
|
||||
DYNAMIC ,
|
||||
INTERNAL ,
|
||||
OVERRIDE ,
|
||||
PRIVATE ,
|
||||
PROTECTED ,
|
||||
PUBLIC ,
|
||||
STATIC ,
|
||||
CLASS ,
|
||||
CONST ,
|
||||
EXTENDS ,
|
||||
FUNCTION (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
GET ,
|
||||
IMPLEMENTS ,
|
||||
INTERFACE ,
|
||||
NAMESPACE ,
|
||||
PACKAGE ,
|
||||
SET ,
|
||||
VAR ,
|
||||
IMPORT ,
|
||||
USE ,
|
||||
FALSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NULL (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
THIS (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TRUE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
BREAK,
|
||||
CASE,
|
||||
CONTINUE,
|
||||
DEFAULT,
|
||||
DO,
|
||||
WHILE,
|
||||
ELSE,
|
||||
FOR,
|
||||
EACH,
|
||||
IN(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
IF,
|
||||
RETURN,
|
||||
SUPER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
SWITCH,
|
||||
THROW,
|
||||
TRY,
|
||||
CATCH,
|
||||
FINALLY,
|
||||
WITH,
|
||||
DYNAMIC,
|
||||
INTERNAL,
|
||||
OVERRIDE,
|
||||
PRIVATE,
|
||||
PROTECTED,
|
||||
PUBLIC,
|
||||
STATIC,
|
||||
CLASS,
|
||||
CONST,
|
||||
EXTENDS,
|
||||
FUNCTION(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GET,
|
||||
IMPLEMENTS,
|
||||
INTERFACE,
|
||||
NAMESPACE,
|
||||
PACKAGE,
|
||||
SET,
|
||||
VAR,
|
||||
IMPORT,
|
||||
USE,
|
||||
FALSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NULL(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
THIS(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TRUE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//Operators
|
||||
PARENT_OPEN (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PARENT_CLOSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
CURLY_OPEN (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
CURLY_CLOSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
BRACKET_OPEN (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
BRACKET_CLOSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
SEMICOLON ,
|
||||
COMMA (GraphTargetItem.PRECEDENCE_COMMA,false),
|
||||
REST ,
|
||||
DOT (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
ASSIGN (GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
GREATER_THAN (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
LOWER_THAN (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
NOT(GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
NEGATE (GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
TERNAR (GraphTargetItem.PRECEDENCE_CONDITIONAL,true,true), /*!! ternar !!!*/
|
||||
COLON(GraphTargetItem.PRECEDENCE_CONDITIONAL,false),/*!! ternar !!!*/
|
||||
EQUALS (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
STRICT_EQUALS (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
LOWER_EQUAL (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
GREATER_EQUAL (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
NOT_EQUAL (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
STRICT_NOT_EQUAL (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
AND(GraphTargetItem.PRECEDENCE_LOGICALAND,true),
|
||||
OR(GraphTargetItem.PRECEDENCE_LOGICALOR,true),
|
||||
INCREMENT(GraphTargetItem.PRECEDENCE_POSTFIX,false),//OR Unary
|
||||
DECREMENT(GraphTargetItem.PRECEDENCE_POSTFIX,false), //OR Unary
|
||||
PLUS(GraphTargetItem.PRECEDENCE_ADDITIVE,true),
|
||||
MINUS(GraphTargetItem.PRECEDENCE_ADDITIVE,true), //OR Unary
|
||||
MULTIPLY(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE,true),
|
||||
DIVIDE(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE,true),
|
||||
BITAND(GraphTargetItem.PRECEDENCE_BITWISEAND,true),
|
||||
BITOR(GraphTargetItem.PRECEDENCE_BITWISEOR,true),
|
||||
XOR(GraphTargetItem.PRECEDENCE_BITWISEXOR,true),
|
||||
MODULO(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
SHIFT_LEFT(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
ASSIGN_PLUS(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_MINUS(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_MULTIPLY(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_DIVIDE(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_BITAND(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_BITOR(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_XOR(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_MODULO(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_SHIFT_LEFT(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
AS(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
DELETE(GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
INSTANCEOF(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
IS(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
NAMESPACE_OP (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NEW(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TYPEOF (GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
VOID ,
|
||||
PARENT_OPEN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PARENT_CLOSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
CURLY_OPEN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
CURLY_CLOSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
BRACKET_OPEN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
BRACKET_CLOSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
SEMICOLON,
|
||||
COMMA(GraphTargetItem.PRECEDENCE_COMMA, false),
|
||||
REST,
|
||||
DOT(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
ASSIGN(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
GREATER_THAN(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
LOWER_THAN(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
NOT(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
NEGATE(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
TERNAR(GraphTargetItem.PRECEDENCE_CONDITIONAL, true, true), /*!! ternar !!!*/
|
||||
COLON(GraphTargetItem.PRECEDENCE_CONDITIONAL, false),/*!! ternar !!!*/
|
||||
EQUALS(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
STRICT_EQUALS(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
LOWER_EQUAL(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
GREATER_EQUAL(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
NOT_EQUAL(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
STRICT_NOT_EQUAL(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
AND(GraphTargetItem.PRECEDENCE_LOGICALAND, true),
|
||||
OR(GraphTargetItem.PRECEDENCE_LOGICALOR, true),
|
||||
INCREMENT(GraphTargetItem.PRECEDENCE_POSTFIX, false),//OR Unary
|
||||
DECREMENT(GraphTargetItem.PRECEDENCE_POSTFIX, false), //OR Unary
|
||||
PLUS(GraphTargetItem.PRECEDENCE_ADDITIVE, true),
|
||||
MINUS(GraphTargetItem.PRECEDENCE_ADDITIVE, true), //OR Unary
|
||||
MULTIPLY(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE, true),
|
||||
DIVIDE(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE, true),
|
||||
BITAND(GraphTargetItem.PRECEDENCE_BITWISEAND, true),
|
||||
BITOR(GraphTargetItem.PRECEDENCE_BITWISEOR, true),
|
||||
XOR(GraphTargetItem.PRECEDENCE_BITWISEXOR, true),
|
||||
MODULO(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
SHIFT_LEFT(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
ASSIGN_PLUS(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_MINUS(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_MULTIPLY(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_DIVIDE(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_BITAND(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_BITOR(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_XOR(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_MODULO(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_SHIFT_LEFT(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
AS(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
DELETE(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
INSTANCEOF(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
IS(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
NAMESPACE_OP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NEW(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TYPEOF(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
VOID,
|
||||
ATTRIBUTE,
|
||||
//Other
|
||||
STRING(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STRING(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
COMMENT,
|
||||
//XML,
|
||||
IDENTIFIER(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
INTEGER(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
DOUBLE(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TYPENAME(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
IDENTIFIER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
INTEGER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
DOUBLE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TYPENAME(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
EOF,
|
||||
//TRACE,
|
||||
//GETURL,
|
||||
@@ -163,16 +163,16 @@ public enum SymbolType {
|
||||
//STARTDRAG,
|
||||
//SUBSTR,
|
||||
//LENGTH, //string.length
|
||||
INT(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
INT(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//TARGETPATH,
|
||||
NUMBER_OP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STRING_OP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NUMBER_OP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
STRING_OP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//IFFRAMELOADED,
|
||||
INFINITY(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
INFINITY(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//EVAL,
|
||||
UNDEFINED(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
UNDEFINED(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//NEWLINE,
|
||||
NAN(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NAN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//GETVERSION,
|
||||
//CALL,
|
||||
//LOADMOVIENUM,
|
||||
@@ -184,31 +184,33 @@ public enum SymbolType {
|
||||
//UNLOADMOVIE,
|
||||
//UNLOADMOVIENUM,
|
||||
FINAL,
|
||||
XML_STARTTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // <xxx
|
||||
XML_STARTVARTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // <{
|
||||
XML_STARTTAG_END(GraphTargetItem.PRECEDENCE_PRIMARY,false), // >
|
||||
XML_FINISHVARTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // </{
|
||||
XML_FINISHTAG(GraphTargetItem.PRECEDENCE_PRIMARY,false), // </xxx>
|
||||
XML_STARTFINISHTAG_END(GraphTargetItem.PRECEDENCE_PRIMARY,false), // />
|
||||
XML_COMMENT(GraphTargetItem.PRECEDENCE_PRIMARY,false), // <!-- ... -->
|
||||
XML_CDATA(GraphTargetItem.PRECEDENCE_PRIMARY,false), //<![CDATA[ ... ]]>
|
||||
XML_INSTR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // <?xxx
|
||||
XML_INSTR_END(GraphTargetItem.PRECEDENCE_PRIMARY,false), // ?>
|
||||
XML_VAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // {
|
||||
XML_ATTRIBUTENAME(GraphTargetItem.PRECEDENCE_PRIMARY,false), // aaa=
|
||||
XML_ATTRIBUTEVALUE(GraphTargetItem.PRECEDENCE_PRIMARY,false), // "vvv"
|
||||
XML_TEXT(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
XML_ATTRNAMEVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // {...}=
|
||||
XML_ATTRVALVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // aaa={
|
||||
XML_INSTRATTRNAMEVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // {...}=
|
||||
XML_INSTRATTRVALVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // aaa={
|
||||
XML_INSTRVARTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY,false), // <?{
|
||||
FILTER(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
DESCENDANTS(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
XML_STARTTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // <xxx
|
||||
XML_STARTVARTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // <{
|
||||
XML_STARTTAG_END(GraphTargetItem.PRECEDENCE_PRIMARY, false), // >
|
||||
XML_FINISHVARTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // </{
|
||||
XML_FINISHTAG(GraphTargetItem.PRECEDENCE_PRIMARY, false), // </xxx>
|
||||
XML_STARTFINISHTAG_END(GraphTargetItem.PRECEDENCE_PRIMARY, false), // />
|
||||
XML_COMMENT(GraphTargetItem.PRECEDENCE_PRIMARY, false), // <!-- ... -->
|
||||
XML_CDATA(GraphTargetItem.PRECEDENCE_PRIMARY, false), //<![CDATA[ ... ]]>
|
||||
XML_INSTR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // <?xxx
|
||||
XML_INSTR_END(GraphTargetItem.PRECEDENCE_PRIMARY, false), // ?>
|
||||
XML_VAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // {
|
||||
XML_ATTRIBUTENAME(GraphTargetItem.PRECEDENCE_PRIMARY, false), // aaa=
|
||||
XML_ATTRIBUTEVALUE(GraphTargetItem.PRECEDENCE_PRIMARY, false), // "vvv"
|
||||
XML_TEXT(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
XML_ATTRNAMEVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // {...}=
|
||||
XML_ATTRVALVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // aaa={
|
||||
XML_INSTRATTRNAMEVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // {...}=
|
||||
XML_INSTRATTRVALVAR_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // aaa={
|
||||
XML_INSTRVARTAG_BEGIN(GraphTargetItem.PRECEDENCE_PRIMARY, false), // <?{
|
||||
FILTER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
DESCENDANTS(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NATIVE;
|
||||
|
||||
|
||||
private int precedence = GraphTargetItem.NOPRECEDENCE;
|
||||
|
||||
private boolean binary = false;
|
||||
|
||||
private boolean rightAssociative = false;
|
||||
|
||||
public boolean isBinary() {
|
||||
@@ -217,25 +219,24 @@ public enum SymbolType {
|
||||
|
||||
public boolean isRightAssociative() {
|
||||
return rightAssociative;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public int getPrecedence() {
|
||||
return precedence;
|
||||
}
|
||||
|
||||
|
||||
private SymbolType(int precedence,boolean binary){
|
||||
|
||||
private SymbolType(int precedence, boolean binary) {
|
||||
this.precedence = precedence;
|
||||
this.binary = binary;
|
||||
}
|
||||
|
||||
private SymbolType(int precedence,boolean binary, boolean rightAssociative){
|
||||
|
||||
private SymbolType(int precedence, boolean binary, boolean rightAssociative) {
|
||||
this.precedence = precedence;
|
||||
this.binary = binary;
|
||||
this.rightAssociative = rightAssociative;
|
||||
}
|
||||
|
||||
private SymbolType(){
|
||||
|
||||
|
||||
private SymbolType() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,15 +31,13 @@ public class ScriptInfo {
|
||||
private boolean modified = true;
|
||||
|
||||
public void setModified(boolean modified) {
|
||||
this.modified = modified;
|
||||
this.modified = modified;
|
||||
}
|
||||
|
||||
public boolean isModified() {
|
||||
return modified;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@Internal
|
||||
public boolean deleted;
|
||||
|
||||
@@ -48,7 +46,7 @@ public class ScriptInfo {
|
||||
public Traits traits;
|
||||
|
||||
public ScriptInfo() {
|
||||
traits = new Traits();
|
||||
traits = new Traits();
|
||||
}
|
||||
|
||||
public ScriptInfo(Traits traits) {
|
||||
|
||||
@@ -450,9 +450,8 @@ public class TraitClass extends Trait implements TraitWithSlot {
|
||||
writer.startBlock();
|
||||
|
||||
//static variables & constants
|
||||
abc.class_info.get(class_info).static_traits.toString(new Class[]{TraitSlotConst.class},this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, true, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
|
||||
abc.class_info.get(class_info).static_traits.toString(new Class[]{TraitSlotConst.class}, this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, true, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
//static initializer
|
||||
int bodyIndex = abc.findBodyIndex(abc.class_info.get(class_info).cinit_index);
|
||||
if (bodyIndex != -1) {
|
||||
@@ -471,9 +470,8 @@ public class TraitClass extends Trait implements TraitWithSlot {
|
||||
}
|
||||
|
||||
//instance variables
|
||||
abc.instance_info.get(class_info).instance_traits.toString(new Class[]{TraitSlotConst.class},this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, false, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
abc.instance_info.get(class_info).instance_traits.toString(new Class[]{TraitSlotConst.class}, this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, false, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
|
||||
//instance initializer - constructor
|
||||
if (!abc.instance_info.get(class_info).isInterface()) {
|
||||
String modifier = "";
|
||||
@@ -512,14 +510,13 @@ public class TraitClass extends Trait implements TraitWithSlot {
|
||||
writer.endMethod();
|
||||
writer.endTrait();
|
||||
}
|
||||
|
||||
//static methods
|
||||
abc.class_info.get(class_info).static_traits.toString(new Class[]{TraitClass.class,TraitFunction.class,TraitMethodGetterSetter.class},this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, true, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
//instance methods
|
||||
abc.instance_info.get(class_info).instance_traits.toString(new Class[]{TraitClass.class,TraitFunction.class,TraitMethodGetterSetter.class},this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, false, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
|
||||
//static methods
|
||||
abc.class_info.get(class_info).static_traits.toString(new Class[]{TraitClass.class, TraitFunction.class, TraitMethodGetterSetter.class}, this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, true, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
//instance methods
|
||||
abc.instance_info.get(class_info).instance_traits.toString(new Class[]{TraitClass.class, TraitFunction.class, TraitMethodGetterSetter.class}, this, path +/*packageName +*/ "/" + abc.instance_info.get(class_info).getName(abc.constants).getName(abc.constants, fullyQualifiedNames, false), abc, false, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel);
|
||||
|
||||
writer.endBlock(); // class
|
||||
writer.endClass();
|
||||
writer.newLine();
|
||||
|
||||
@@ -141,18 +141,18 @@ public class Traits implements Serializable {
|
||||
}
|
||||
}
|
||||
|
||||
public GraphTextWriter toString(Class[] traitTypes,Trait parent, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, boolean makePackages, int scriptIndex, int classIndex, GraphTextWriter writer, List<String> fullyQualifiedNames, boolean parallel) throws InterruptedException {
|
||||
for (int t = 0; t < traits.size(); t++) {
|
||||
public GraphTextWriter toString(Class[] traitTypes, Trait parent, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, boolean makePackages, int scriptIndex, int classIndex, GraphTextWriter writer, List<String> fullyQualifiedNames, boolean parallel) throws InterruptedException {
|
||||
for (int t = 0; t < traits.size(); t++) {
|
||||
Trait trait = traits.get(t);
|
||||
if(traitTypes!=null){
|
||||
if (traitTypes != null) {
|
||||
boolean found = false;
|
||||
for(Class c:traitTypes){
|
||||
if(c.isInstance(trait)){
|
||||
for (Class c : traitTypes) {
|
||||
if (c.isInstance(trait)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!found){
|
||||
if (!found) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
*/
|
||||
@@ -34,10 +34,10 @@ public enum SymbolType {
|
||||
ELSE,
|
||||
FOR,
|
||||
EACH,
|
||||
IN(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
IN(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
IF,
|
||||
RETURN,
|
||||
SUPER (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
SUPER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
SWITCH,
|
||||
THROW,
|
||||
TRY,
|
||||
@@ -54,7 +54,7 @@ public enum SymbolType {
|
||||
CLASS,
|
||||
CONST,
|
||||
EXTENDS,
|
||||
FUNCTION(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
FUNCTION(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GET,
|
||||
IMPLEMENTS,
|
||||
INTERFACE,
|
||||
@@ -64,131 +64,133 @@ public enum SymbolType {
|
||||
VAR,
|
||||
IMPORT,
|
||||
USE,
|
||||
FALSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NULL (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
THIS (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TRUE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
FALSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NULL(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
THIS(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TRUE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
//Operators
|
||||
PARENT_OPEN (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PARENT_CLOSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
CURLY_OPEN (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
CURLY_CLOSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
BRACKET_OPEN (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
BRACKET_CLOSE (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
SEMICOLON ,
|
||||
COMMA (GraphTargetItem.PRECEDENCE_COMMA,false),
|
||||
REST ,
|
||||
DOT (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
ASSIGN (GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
GREATER_THAN (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
LOWER_THAN (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
NOT(GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
NEGATE (GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
TERNAR (GraphTargetItem.PRECEDENCE_CONDITIONAL,true,true), /*!! ternar !!!*/
|
||||
COLON(GraphTargetItem.PRECEDENCE_CONDITIONAL,false),/*!! ternar !!!*/
|
||||
EQUALS (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
STRICT_EQUALS (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
LOWER_EQUAL (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
GREATER_EQUAL (GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
NOT_EQUAL (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
STRICT_NOT_EQUAL (GraphTargetItem.PRECEDENCE_EQUALITY,true),
|
||||
AND(GraphTargetItem.PRECEDENCE_LOGICALAND,true),
|
||||
OR(GraphTargetItem.PRECEDENCE_LOGICALOR,true),
|
||||
FULLAND(GraphTargetItem.PRECEDENCE_LOGICALAND,true),
|
||||
FULLOR(GraphTargetItem.PRECEDENCE_LOGICALOR,true),
|
||||
INCREMENT(GraphTargetItem.PRECEDENCE_POSTFIX,false),//OR Unary
|
||||
DECREMENT(GraphTargetItem.PRECEDENCE_POSTFIX,false), //OR Unary
|
||||
PLUS(GraphTargetItem.PRECEDENCE_ADDITIVE,true),
|
||||
MINUS(GraphTargetItem.PRECEDENCE_ADDITIVE,true), //OR Unary
|
||||
MULTIPLY(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE,true),
|
||||
DIVIDE(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE,true),
|
||||
BITAND(GraphTargetItem.PRECEDENCE_BITWISEAND,true),
|
||||
BITOR(GraphTargetItem.PRECEDENCE_BITWISEOR,true),
|
||||
XOR(GraphTargetItem.PRECEDENCE_BITWISEXOR,true),
|
||||
MODULO(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
SHIFT_LEFT(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT,true),
|
||||
ASSIGN_PLUS(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_MINUS(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_MULTIPLY(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_DIVIDE(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_BITAND(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_BITOR(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_XOR(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_MODULO(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_SHIFT_LEFT(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
ASSIGN_USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT,true,true),
|
||||
AS(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
DELETE(GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
INSTANCEOF(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
IS(GraphTargetItem.PRECEDENCE_RELATIONAL,true),
|
||||
NAMESPACE_OP (GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NEW(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TYPEOF (GraphTargetItem.PRECEDENCE_UNARY,false),
|
||||
VOID ,
|
||||
PARENT_OPEN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PARENT_CLOSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
CURLY_OPEN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
CURLY_CLOSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
BRACKET_OPEN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
BRACKET_CLOSE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
SEMICOLON,
|
||||
COMMA(GraphTargetItem.PRECEDENCE_COMMA, false),
|
||||
REST,
|
||||
DOT(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
ASSIGN(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
GREATER_THAN(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
LOWER_THAN(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
NOT(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
NEGATE(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
TERNAR(GraphTargetItem.PRECEDENCE_CONDITIONAL, true, true), /*!! ternar !!!*/
|
||||
COLON(GraphTargetItem.PRECEDENCE_CONDITIONAL, false),/*!! ternar !!!*/
|
||||
EQUALS(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
STRICT_EQUALS(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
LOWER_EQUAL(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
GREATER_EQUAL(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
NOT_EQUAL(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
STRICT_NOT_EQUAL(GraphTargetItem.PRECEDENCE_EQUALITY, true),
|
||||
AND(GraphTargetItem.PRECEDENCE_LOGICALAND, true),
|
||||
OR(GraphTargetItem.PRECEDENCE_LOGICALOR, true),
|
||||
FULLAND(GraphTargetItem.PRECEDENCE_LOGICALAND, true),
|
||||
FULLOR(GraphTargetItem.PRECEDENCE_LOGICALOR, true),
|
||||
INCREMENT(GraphTargetItem.PRECEDENCE_POSTFIX, false),//OR Unary
|
||||
DECREMENT(GraphTargetItem.PRECEDENCE_POSTFIX, false), //OR Unary
|
||||
PLUS(GraphTargetItem.PRECEDENCE_ADDITIVE, true),
|
||||
MINUS(GraphTargetItem.PRECEDENCE_ADDITIVE, true), //OR Unary
|
||||
MULTIPLY(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE, true),
|
||||
DIVIDE(GraphTargetItem.PRECEDENCE_MULTIPLICATIVE, true),
|
||||
BITAND(GraphTargetItem.PRECEDENCE_BITWISEAND, true),
|
||||
BITOR(GraphTargetItem.PRECEDENCE_BITWISEOR, true),
|
||||
XOR(GraphTargetItem.PRECEDENCE_BITWISEXOR, true),
|
||||
MODULO(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
SHIFT_LEFT(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_BITWISESHIFT, true),
|
||||
ASSIGN_PLUS(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_MINUS(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_MULTIPLY(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_DIVIDE(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_BITAND(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_BITOR(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_XOR(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_MODULO(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_SHIFT_LEFT(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_SHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
ASSIGN_USHIFT_RIGHT(GraphTargetItem.PRECEDENCE_ASSIGMENT, true, true),
|
||||
AS(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
DELETE(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
INSTANCEOF(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
IS(GraphTargetItem.PRECEDENCE_RELATIONAL, true),
|
||||
NAMESPACE_OP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NEW(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TYPEOF(GraphTargetItem.PRECEDENCE_UNARY, false),
|
||||
VOID,
|
||||
ATTRIBUTE,
|
||||
//Other
|
||||
STRING(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STRING(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
COMMENT,
|
||||
XML,
|
||||
IDENTIFIER(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
INTEGER(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
DOUBLE(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TYPENAME(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
IDENTIFIER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
INTEGER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
DOUBLE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TYPENAME(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
EOF,
|
||||
TRACE(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
GETURL(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
GOTOANDSTOP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NEXTFRAME(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PLAY(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PREVFRAME(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TELLTARGET(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STOP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STOPALLSOUNDS(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TOGGLEHIGHQUALITY(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
ORD(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
CHR(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
DUPLICATEMOVIECLIP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STOPDRAG(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
GETTIMER(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
LOADVARIABLES(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
LOADMOVIE(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
GOTOANDPLAY(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
MBORD(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
MBCHR(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
MBLENGTH(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
MBSUBSTRING(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
RANDOM(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
REMOVEMOVIECLIP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STARTDRAG(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
SUBSTR(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
LENGTH(GraphTargetItem.PRECEDENCE_PRIMARY,false), //string.length
|
||||
INT(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TARGETPATH(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NUMBER_OP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
STRING_OP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
TRACE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GETURL(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GOTOANDSTOP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NEXTFRAME(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PLAY(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PREVFRAME(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TELLTARGET(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
STOP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
STOPALLSOUNDS(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TOGGLEHIGHQUALITY(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
ORD(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
CHR(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
DUPLICATEMOVIECLIP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
STOPDRAG(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GETTIMER(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
LOADVARIABLES(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
LOADMOVIE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GOTOANDPLAY(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
MBORD(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
MBCHR(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
MBLENGTH(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
MBSUBSTRING(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
RANDOM(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
REMOVEMOVIECLIP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
STARTDRAG(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
SUBSTR(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
LENGTH(GraphTargetItem.PRECEDENCE_PRIMARY, false), //string.length
|
||||
INT(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
TARGETPATH(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NUMBER_OP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
STRING_OP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
IFFRAMELOADED,
|
||||
INFINITY(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
EVAL(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
UNDEFINED(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NEWLINE(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
NAN(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
GETVERSION(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
CALL(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
LOADMOVIENUM(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
LOADVARIABLESNUM(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PRINT(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PRINTNUM(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PRINTASBITMAP(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
PRINTASBITMAPNUM(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
UNLOADMOVIE(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
UNLOADMOVIENUM(GraphTargetItem.PRECEDENCE_PRIMARY,false),
|
||||
FSCOMMAND(GraphTargetItem.PRECEDENCE_PRIMARY,false);
|
||||
|
||||
INFINITY(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
EVAL(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
UNDEFINED(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NEWLINE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
NAN(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
GETVERSION(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
CALL(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
LOADMOVIENUM(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
LOADVARIABLESNUM(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PRINT(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PRINTNUM(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PRINTASBITMAP(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
PRINTASBITMAPNUM(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
UNLOADMOVIE(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
UNLOADMOVIENUM(GraphTargetItem.PRECEDENCE_PRIMARY, false),
|
||||
FSCOMMAND(GraphTargetItem.PRECEDENCE_PRIMARY, false);
|
||||
|
||||
private int precedence = GraphTargetItem.NOPRECEDENCE;
|
||||
|
||||
private boolean binary = false;
|
||||
|
||||
private boolean rightAssociative = false;
|
||||
|
||||
public boolean isBinary() {
|
||||
@@ -197,25 +199,24 @@ public enum SymbolType {
|
||||
|
||||
public boolean isRightAssociative() {
|
||||
return rightAssociative;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public int getPrecedence() {
|
||||
return precedence;
|
||||
}
|
||||
|
||||
|
||||
private SymbolType(int precedence,boolean binary){
|
||||
|
||||
private SymbolType(int precedence, boolean binary) {
|
||||
this.precedence = precedence;
|
||||
this.binary = binary;
|
||||
}
|
||||
|
||||
private SymbolType(int precedence,boolean binary, boolean rightAssociative){
|
||||
|
||||
private SymbolType(int precedence, boolean binary, boolean rightAssociative) {
|
||||
this.precedence = precedence;
|
||||
this.binary = binary;
|
||||
this.rightAssociative = rightAssociative;
|
||||
}
|
||||
|
||||
private SymbolType(){
|
||||
|
||||
|
||||
private SymbolType() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ public class BinaryDataExporter {
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (count == 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ public class FontExporter {
|
||||
String cop = t.getCopyright();
|
||||
|
||||
f.getEngine().setCopyrightYear(cop == null ? "" : cop);
|
||||
if (Configuration.setFFDecVersionInExportedFont.get()){
|
||||
if (Configuration.setFFDecVersionInExportedFont.get()) {
|
||||
f.setAuthor(ApplicationInfo.shortApplicationVerName);
|
||||
} else {
|
||||
f.setAuthor(ApplicationInfo.SHORT_APPLICATION_NAME);
|
||||
|
||||
@@ -131,12 +131,12 @@ public class DefineBinaryDataTag extends CharacterTag {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
if(super.isModified()){
|
||||
if (super.isModified()) {
|
||||
return true;
|
||||
}
|
||||
if(innerSwf!=null){
|
||||
if (innerSwf != null) {
|
||||
return innerSwf.isModified();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -267,7 +267,7 @@ public class DefineButton2Tag extends ButtonTag implements ASMSourceContainer {
|
||||
if (timeline != null) {
|
||||
return timeline;
|
||||
}
|
||||
|
||||
|
||||
timeline = new Timeline(swf, this, new ArrayList<Tag>(), buttonId, getRect());
|
||||
|
||||
int maxDepth = 0;
|
||||
@@ -301,25 +301,25 @@ public class DefineButton2Tag extends ButtonTag implements ASMSourceContainer {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
timeline.addFrame(frameUp);
|
||||
|
||||
|
||||
if (frameOver.layers.isEmpty()) {
|
||||
frameOver = frameUp;
|
||||
}
|
||||
|
||||
|
||||
timeline.addFrame(frameOver);
|
||||
|
||||
|
||||
if (frameDown.layers.isEmpty()) {
|
||||
frameDown = frameOver;
|
||||
}
|
||||
|
||||
|
||||
timeline.addFrame(frameDown);
|
||||
|
||||
|
||||
if (frameHit.layers.isEmpty()) {
|
||||
frameHit = frameUp;
|
||||
}
|
||||
|
||||
|
||||
timeline.addFrame(frameHit);
|
||||
return timeline;
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ public class DefineButtonCxformTag extends Tag implements CharacterIdTag {
|
||||
buttonId = sis.readUI16("buttonId");
|
||||
buttonColorTransform = sis.readCXFORM("buttonColorTransform");
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCharacterId() {
|
||||
return buttonId;
|
||||
|
||||
@@ -98,7 +98,7 @@ public class DefineFontAlignZonesTag extends Tag implements CharacterIdTag {
|
||||
}
|
||||
return baos.toByteArray();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCharacterId() {
|
||||
return fontID;
|
||||
|
||||
@@ -146,7 +146,7 @@ public class DefineFontInfo2Tag extends Tag implements CharacterIdTag {
|
||||
codeTable.add(sis.readUI16("code"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCharacterId() {
|
||||
return fontID;
|
||||
|
||||
@@ -147,7 +147,7 @@ public class DefineFontInfoTag extends Tag implements CharacterIdTag {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCharacterId() {
|
||||
return fontId;
|
||||
|
||||
@@ -80,7 +80,7 @@ public class DefineFontNameTag extends Tag implements CharacterIdTag {
|
||||
}
|
||||
return baos.toByteArray();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCharacterId() {
|
||||
return fontId;
|
||||
|
||||
@@ -79,7 +79,7 @@ public class DefineScalingGridTag extends Tag implements CharacterIdTag {
|
||||
}
|
||||
return baos.toByteArray();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCharacterId() {
|
||||
return characterId;
|
||||
|
||||
@@ -140,7 +140,7 @@ public class DoABCDefineTag extends Tag implements ABCContainerTag {
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void setModified(boolean value) {
|
||||
super.setModified(value);
|
||||
|
||||
@@ -123,5 +123,4 @@ public class DoABCTag extends Tag implements ABCContainerTag {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -27,7 +27,6 @@ import com.jpexs.decompiler.flash.exporters.modes.ScriptExportMode;
|
||||
import com.jpexs.decompiler.flash.helpers.GraphTextWriter;
|
||||
import com.jpexs.decompiler.flash.tags.base.ASMSource;
|
||||
import com.jpexs.decompiler.flash.tags.base.CharacterIdTag;
|
||||
import com.jpexs.decompiler.flash.tags.base.CharacterTag;
|
||||
import com.jpexs.decompiler.flash.types.BasicType;
|
||||
import com.jpexs.decompiler.flash.types.annotations.HideInRawEdit;
|
||||
import com.jpexs.decompiler.flash.types.annotations.SWFType;
|
||||
@@ -40,7 +39,7 @@ import java.util.List;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class DoInitActionTag extends Tag implements CharacterIdTag,ASMSource {
|
||||
public class DoInitActionTag extends Tag implements CharacterIdTag, ASMSource {
|
||||
|
||||
/**
|
||||
* Identifier of Sprite
|
||||
|
||||
@@ -80,14 +80,14 @@ public abstract class PlaceObjectTypeTag extends Tag implements CharacterIdTag {
|
||||
if (exportName != null) {
|
||||
nameAppend = ": " + exportName;
|
||||
}
|
||||
|
||||
|
||||
if (getCharacterId() != -1) {
|
||||
result += " (" + getCharacterId() + nameAppend + ")";
|
||||
}
|
||||
if (!nameAppend.isEmpty()) {
|
||||
result += " (" + nameAppend + ")";
|
||||
}
|
||||
|
||||
|
||||
return result + " Depth: " + getDepth();
|
||||
}
|
||||
|
||||
@@ -98,7 +98,7 @@ public abstract class PlaceObjectTypeTag extends Tag implements CharacterIdTag {
|
||||
if (exportName != null) {
|
||||
result += "_" + exportName;
|
||||
}
|
||||
|
||||
|
||||
result += "_" + getDepth();
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
*/
|
||||
@@ -40,7 +40,7 @@ public abstract class RemoveTag extends Tag {
|
||||
if (exportName != null) {
|
||||
nameAppend = ": " + exportName;
|
||||
}
|
||||
|
||||
|
||||
if (getCharacterId() != -1) {
|
||||
result += " (" + getCharacterId() + nameAppend + ")";
|
||||
}
|
||||
@@ -48,7 +48,7 @@ public abstract class RemoveTag extends Tag {
|
||||
if (!nameAppend.isEmpty()) {
|
||||
result += " (" + nameAppend + ")";
|
||||
}
|
||||
|
||||
|
||||
return result + " Depth: " + getDepth();
|
||||
}
|
||||
|
||||
@@ -63,7 +63,7 @@ public abstract class RemoveTag extends Tag {
|
||||
if (exportName != null) {
|
||||
result += "_" + exportName;
|
||||
}
|
||||
|
||||
|
||||
result += "_" + getDepth();
|
||||
return result;
|
||||
}
|
||||
@@ -72,7 +72,7 @@ public abstract class RemoveTag extends Tag {
|
||||
if (this instanceof CharacterIdTag) {
|
||||
return ((CharacterIdTag) this).getCharacterId();
|
||||
}
|
||||
|
||||
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,18 +116,16 @@ public class AS2Package implements TreeItem {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
for(ASMSource s:scripts.values()){
|
||||
if(s.isModified()){
|
||||
for (ASMSource s : scripts.values()) {
|
||||
if (s.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
for(AS2Package p:subPackages.values()){
|
||||
if(p.isModified()){
|
||||
for (AS2Package p : subPackages.values()) {
|
||||
if (p.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -150,20 +150,18 @@ public class AS3Package extends AS3ClassTreeItem {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
List<ScriptPack> sps=getScriptPacks();
|
||||
for(ScriptPack sp:sps){
|
||||
if(sp.isModified()){
|
||||
List<ScriptPack> sps = getScriptPacks();
|
||||
for (ScriptPack sp : sps) {
|
||||
if (sp.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
List<AS3Package> ps=getSubPackages();
|
||||
for(AS3Package p:ps){
|
||||
if(p.isModified()){
|
||||
List<AS3Package> ps = getSubPackages();
|
||||
for (AS3Package p : ps) {
|
||||
if (p.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -90,26 +90,24 @@ public class Frame implements TreeItem, Exportable {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
for(Tag t:innerTags){
|
||||
if(t.isModified()){
|
||||
for (Tag t : innerTags) {
|
||||
if (t.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
for(Tag t:actions){
|
||||
if(t.isModified()){
|
||||
for (Tag t : actions) {
|
||||
if (t.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
for(ASMSourceContainer t:actionContainers){
|
||||
if(t.isModified()){
|
||||
for (ASMSourceContainer t : actionContainers) {
|
||||
if (t.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if(showFrameTag!=null && showFrameTag.isModified()){
|
||||
if (showFrameTag != null && showFrameTag.isModified()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -58,6 +58,4 @@ public class FrameScript implements TreeItem, Exportable {
|
||||
public boolean isModified() {
|
||||
return frame.isModified();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -79,13 +79,11 @@ public class TagScript implements TreeItem, Exportable {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
for(TreeItem f:frames){
|
||||
if(f.isModified()){
|
||||
for (TreeItem f : frames) {
|
||||
if (f.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return tag.isModified();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -56,12 +56,11 @@ public class FolderItem implements TreeItem {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
for(TreeItem ti:subItems){
|
||||
if(ti.isModified()){
|
||||
for (TreeItem ti : subItems) {
|
||||
if (ti.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -47,6 +47,4 @@ public class HeaderItem implements TreeItem {
|
||||
public boolean isModified() {
|
||||
return false; //??
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -175,13 +175,11 @@ public class SWFList implements List<SWF>, SWFContainerItem {
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
for(SWF s:swfs){
|
||||
if(s.isModified()){
|
||||
for (SWF s : swfs) {
|
||||
if (s.isModified()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -25,6 +25,6 @@ import com.jpexs.decompiler.flash.SWF;
|
||||
public interface TreeItem {
|
||||
|
||||
public SWF getSwf();
|
||||
|
||||
|
||||
public boolean isModified();
|
||||
}
|
||||
|
||||
@@ -145,7 +145,7 @@ public class BUTTONCONDACTION implements ASMSource, Serializable {
|
||||
*/
|
||||
@Internal
|
||||
public ByteArrayRange actionBytes;
|
||||
|
||||
|
||||
/**
|
||||
* Sets actions associated with this object
|
||||
*
|
||||
@@ -246,8 +246,6 @@ public class BUTTONCONDACTION implements ASMSource, Serializable {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public GraphTextWriter getActionBytesAsHex(GraphTextWriter writer) {
|
||||
|
||||
@@ -43,7 +43,7 @@ import java.util.logging.Logger;
|
||||
* @author JPEXS
|
||||
*/
|
||||
public class CLIPACTIONRECORD implements ASMSource, Serializable {
|
||||
|
||||
|
||||
public static String keyToString(int key) {
|
||||
if ((key < CLIPACTIONRECORD.KEYNAMES.length) && (key > 0) && (CLIPACTIONRECORD.KEYNAMES[key] != null)) {
|
||||
return CLIPACTIONRECORD.KEYNAMES[key];
|
||||
@@ -229,19 +229,17 @@ public class CLIPACTIONRECORD implements ASMSource, Serializable {
|
||||
public void setModified() {
|
||||
if (tag != null) {
|
||||
tag.setModified(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isModified() {
|
||||
if (tag != null) {
|
||||
return tag.isModified();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public GraphTextWriter getActionBytesAsHex(GraphTextWriter writer) {
|
||||
return Helper.byteArrayToHexWithHeader(writer, actionBytes.getRangeData());
|
||||
|
||||
Reference in New Issue
Block a user