diff --git a/README.md b/README.md index 45560e84ad..27b7d473ab 100644 --- a/README.md +++ b/README.md @@ -113,7 +113,7 @@ The application was made in Czech Republic. ### Translators * **Jaume Badiella Aguilera** - catalan translation * **Capasha** - swedish translation -* **王晨旭** (Chenxu Wang), **晓之车**, **安安**, **流水渺渺** - chinese translation +* **王晨旭** (Chenxu Wang), **晓之车**, **安安**, **流水渺渺**, **老biu** - chinese translation * **focus** - russian translation * **honfika** - hungarian translation * **kalip** - italian translation diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/docs/pcode/AS2_zh.properties b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/docs/pcode/AS2_zh.properties index 131ad9e3b1..5e90ef27d8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/docs/pcode/AS2_zh.properties +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/locales/docs/pcode/AS2_zh.properties @@ -1,5 +1,612 @@ +#String for whole list generation +ui.list.heading = \u52a8\u4f5c\u5217\u8868 +ui.list.pageTitle = \u52a8\u4f5c\u5217\u8868 +ui.list.documentTitle = \u52a8\u4f5c\u5217\u8868 +ui.list.pageDescription = \u6240\u6709\u5df2\u77e5\u64cd\u4f5c\u53ca\u5176\u64cd\u4f5c\u6570\u548c\u5806\u6808\u503c\u7684\u5217\u8868 +#various strings in UI: +ui.unknown = ??? +ui.stack = \u5806\u6808: +ui.stack.before = ..., +ui.stack.before.empty = ... +ui.stack.to = \ \u279e +ui.flags = \u6807\u7b7e: +ui.description = \u8bf4\u660e: +ui.filter.hide = \u9690\u85cf: +ui.filter.byname = \u6309\u540d\u79f0\u67e5\u627e: +ui.filter.order = \u6392\u5e8f: +ui.filter.order.code = \u4ee3\u7801 +ui.filter.order.name = \u540d\u79f0 +ui.swfVersion = \u81eaSWF\u7248\u672c\u4ee5\u6765: +#----------------------- Actions +action.gotoframe.name = GotoFrame +action.gotoframe.code = 0x81 +action.gotoframe.swfVersion = 3 +action.gotoframe.shortDescription = \u8f6c\u5230\u5e27 +action.gotoframe.operands = frame:UI16 +action.geturl.name = GetURL +action.geturl.code = 0x83 +action.geturl.swfVersion = 3 +action.geturl.shortDescription = \u83b7\u53d6URL +action.geturl.operands = urlString:STRING, targetString:STRING +action.nextframe.name = NextFrame +action.nextframe.code = 0x04 +action.nextframe.swfVersion = 3 +action.nextframe.shortDescription = \u8f6c\u5230\u4e0b\u4e00\u5e27 +action.prevframe.name = PrevFrame +action.prevframe.code = 0x05 +action.prevframe.swfVersion = 3 +action.prevframe.shortDescription = \u8f6c\u5230\u4e0a\u4e00\u5e27 +action.play.name = Play +action.play.code = 0x06 +action.play.swfVersion = 3 +action.play.shortDescription = \u64ad\u653e +action.play.description = \u4ece\u5f53\u524d\u5e27\u5f00\u59cb\u64ad\u653e +action.stop.name = Stop +action.stop.code = 0x07 +action.stop.swfVersion = 3 +action.stop.shortDescription = \u505c\u6b62\u64ad\u653e +action.stop.description = \u5728\u5f53\u524d\u5e27\u505c\u6b62\u64ad\u653e action.stop.stackBefore = action.stop.stackAfter = action.stop.operands = +action.togglequality.name = ToggleQuality +action.togglequality.code = 0x08 +action.togglequality.swfVersion = 3 +action.togglequality.shortDescription = \u5207\u6362\u8d28\u91cf +action.togglequality.description = \u5728\u9ad8\u548c\u4f4e\u4e4b\u95f4\u5207\u6362\u663e\u793a\u8d28\u91cf action.togglequality.stackBefore = action.togglequality.stackAfter = +action.stopsounds.name = StopSounds +action.stopsounds.code = 0x09 +action.stopsounds.swfVersion = 3 +action.stopsounds.shortDescription = \u505c\u6b62\u58f0\u97f3 +action.stopsounds.description = \u505c\u6b62\u64ad\u653e\u6240\u6709\u58f0\u97f3 +action.waitforframe.name = WaitForFrame +action.waitforframe.code = 0x8A +action.waitforframe.swfVersion = 3 +action.waitforframe.shortDescription = \u7b49\u5f85\u5e27 +action.waitforframe.operands = frame:UI16, skipCount:UI8 +action.settarget.name = SetTarget +action.settarget.code = 0x8B +action.settarget.swfVersion = 3 +action.settarget.shortDescription = \u8bbe\u5b9a\u76ee\u6807 +action.settarget.description = \u66f4\u6539\u540e\u7eed\u52a8\u4f5c\u7684\u4e0a\u4e0b\u6587 +action.settarget.operands = targetName:STRING +action.gotolabel.name = GoToLabel +action.gotolabel.code = 0x8C +action.gotolabel.swfVersion = 3 +action.gotolabel.shortDescription = \u8f6c\u5230\u6807\u7b7e +action.gotolabel.description = \u8f6c\u5230\u4e0e\u6307\u5b9a\u6807\u7b7e\u5173\u8054\u7684\u5e27 +action.gotolabel.operands = label:STRING +action.push.name = Push +action.push.code = 0x96 +action.push.swfVersion = 4 +action.push.shortDescription = \u63a8\u9001\u503c(s) +action.push.description = \u5c06\u4e00\u4e2a\u6216\u591a\u4e2a\u503c\u63a8\u9001\u5230\u5806\u6808 +action.push.stackAfter = value1, value2, ... +action.push.operands = value1:*, [value2:*, ...] +action.pop.name = Pop +action.pop.code = 0x17 +action.pop.swfVersion = 4 +action.pop.shortDescription = \u5f39\u51fa\u503c +action.pop.description = \u4ece\u5806\u6808\u4e2d\u5f39\u51fa\u503c\u5e76\u5c06\u5176\u4e22\u5f03 +action.pop.stackBefore = value +action.add.name = Add +action.add.code = 0x0A +action.add.swfVersion = 4 +action.add.shortDescription = \u6dfb\u52a0\u4e24\u4e2a\u503c +action.add.description = \u5c06\u4e24\u4e2a\u6570\u5b57\u76f8\u52a0\u5e76\u5c06\u7ed3\u679c\u63a8\u56de\u5806\u6808 +action.add.stackBefore = value1, value2 +action.add.stackAfter = result +action.subtract.name = Subtract +action.subtract.code = 0x0B +action.subtract.swfVersion = 4 +action.subtract.shortDescription = \u51cf\u53bb\u4e24\u4e2a\u503c +action.subtract.description = \u51cf\u53bb\u4e24\u4e2a\u6570\u5b57\u5e76\u5c06\u7ed3\u679c\u63a8\u56de\u5806\u6808 +action.subtract.stackBefore = value1, value2 +action.subtract.stackAfter = result +action.multiply.name = Multiply +action.multiply.code = 0x0C +action.multiply.swfVersion = 4 +action.multiply.shortDescription = \u5c06\u4e24\u4e2a\u503c\u76f8\u4e58 +action.multiply.description = \u5c06\u4e24\u4e2a\u6570\u5b57\u76f8\u4e58\u5e76\u5c06\u7ed3\u679c\u63a8\u56de\u5806\u6808 +action.multiply.stackBefore = value1, value2 +action.multiply.stackAfter = result +action.divide.name = Divide +action.divide.code = 0x0D +action.divide.swfVersion = 4 +action.divide.shortDescription = \u5c06\u4e24\u4e2a\u503c\u76f8\u9664 +action.divide.description = \u5c06\u4e24\u4e2a\u6570\u5b57\u76f8\u9664\u5e76\u5c06\u7ed3\u679c\u63a8\u56de\u5806\u6808 +action.divide.stackBefore = value1, value2 +action.divide.stackAfter = result +action.equals.name = Equals +action.equals.code = 0x0E +action.equals.swfVersion = 4 +action.equals.shortDescription = \u68c0\u67e5\u4e24\u4e2a\u503c\u662f\u5426\u76f8\u7b49 +action.equals.stackBefore = value1, value2 +action.equals.stackAfter = booleanResult +action.less.name = Less +action.less.code = 0x0F +action.less.swfVersion = 4 +action.less.shortDescription = \u68c0\u67e5\u8be5\u503c\u662f\u5426\u5c0f\u4e8e\u5176\u4ed6\u503c +action.less.stackBefore = value1, value2 +action.less.stackAfter = booleanResult +action.and.name = And +action.and.code = 0x10 +action.and.swfVersion = 4 +action.and.shortDescription = \u903b\u8f91\u4e0e +action.and.description = \u5bf9\u4e24\u4e2a\u6570\u5b57\u6267\u884c\u903b\u8f91\u4e0e\u8fd0\u7b97 +action.and.stackBefore = value1, value2 +action.and.stackAfter = booleanResult +action.or.name = Or +action.or.code = 0x11 +action.or.swfVersion = 4 +action.or.shortDescription = \u903b\u8f91\u6216 +action.or.description = \u5bf9\u4e24\u4e2a\u6570\u5b57\u6267\u884c\u903b\u8f91\u6216\u8fd0\u7b97 +action.or.stackBefore = value1, value2 +action.or.stackAfter = booleanResult +action.not.name = Not +action.not.code = 0x12 +action.not.swfVersion = 4 +action.not.shortDescription = \u903b\u8f91\u975e +action.not.description = \u5bf9\u4e00\u4e2a\u6570\u5b57\u6267\u884c\u903b\u8f91\u975e\u8fd0\u7b97 +action.not.stackBefore = value +action.not.stackAfter = booleanResult +action.stringequals.name = StringEquals +action.stringequals.code = 0x13 +action.stringequals.swfVersion = 4 +action.stringequals.shortDescription = \u68c0\u67e5\u4e24\u4e2a\u5b57\u7b26\u4e32\u662f\u5426\u76f8\u7b49 +action.stringequals.stackBefore = value1, value2 +action.stringequals.stackAfter = booleanResult +action.stringlength.name = StringLength +action.stringlength.code = 0x14 +action.stringlength.swfVersion = 4 +action.stringlength.shortDescription = \u5b57\u7b26\u4e32\u7684\u957f\u5ea6 +action.stringlength.description = \u8ba1\u7b97\u5b57\u7b26\u4e32\u7684\u957f\u5ea6 +action.stringlength.stackBefore = value +action.stringlength.stackAfter = result +action.stringadd.name = StringAdd +action.stringadd.code = 0x21 +action.stringadd.swfVersion = 4 +action.stringadd.shortDescription = \u8fde\u63a5\u4e24\u4e2a\u5b57\u7b26\u4e32 +action.stringadd.stackBefore = value1, value2 +action.stringadd.stackAfter = result +action.stringextract.name = StringExtract +action.stringextract.code = 0x15 +action.stringextract.swfVersion = 4 +action.stringextract.shortDescription = \u4ece\u5b57\u7b26\u4e32\u4e2d\u63d0\u53d6\u5b50\u5b57\u7b26\u4e32 +action.stringextract.stackBefore = count, index, string +action.stringextract.stackAfter = result +action.stringless.name = StringLess +action.stringless.code = 0x29 +action.stringless.swfVersion = 4 +action.stringless.shortDescription = \u68c0\u67e5\u5b57\u7b26\u4e32\u662f\u5426\u5c0f\u4e8e\u5176\u4ed6\u5b57\u7b26\u4e32 +action.stringless.stackBefore = value1, value2 +action.stringless.stackAfter = booleanResult +action.mbstringlength.name = MBStringLength +action.mbstringlength.code = 0x31 +action.mbstringlength.swfVersion = 4 +action.mbstringlength.shortDescription = \u5b57\u7b26\u4e32\u957f\u5ea6\u591a\u5b57\u8282\u611f\u77e5 +action.mbstringlength.description = \u8ba1\u7b97\u591a\u5b57\u8282\u611f\u77e5\u5b57\u7b26\u4e32\u7684\u957f\u5ea6 +action.mbstringlength.stackBefore = value +action.mbstringlength.stackAfter = result +action.mbstringextract.name = MBStringExtract +action.mbstringextract.code = 0x35 +action.mbstringextract.swfVersion = 4 +action.mbstringextract.shortDescription = \u4ece\u652f\u6301\u591a\u5b57\u8282\u7684\u5b57\u7b26\u4e32\u4e2d\u63d0\u53d6\u5b50\u5b57\u7b26\u4e32 +action.mbstringextract.stackBefore = count, index, string +action.mbstringextract.stackAfter = result +action.tointeger.name = ToInteger +action.tointeger.code = 0x18 +action.tointeger.swfVersion = 4 +action.tointeger.shortDescription = \u5c06\u503c\u8f6c\u6362\u4e3a\u6574\u6570 +action.tointeger.stackBefore = value +action.tointeger.stackAfter = result +action.chartoascii.name = CharToAscii +action.chartoascii.code = 0x32 +action.chartoascii.swfVersion = 4 +action.chartoascii.shortDescription = \u5c06\u5b57\u7b26\u4ee3\u7801\u8f6c\u6362\u4e3aASCII\u7801 +action.chartoascii.stackBefore = value +action.chartoascii.stackAfter = result +action.asciitochar.name = AsciiToChar +action.asciitochar.code = 0x33 +action.asciitochar.swfVersion = 4 +action.asciitochar.shortDescription = \u5c06\u503c\u8f6c\u6362\u4e3aASCII\u5b57\u7b26\u4ee3\u7801 +action.asciitochar.stackBefore = value +action.asciitochar.stackAfter = result +action.mbchartoascii.name = MBCharToAscii +action.mbchartoascii.code = 0x36 +action.mbchartoascii.swfVersion = 4 +action.mbchartoascii.shortDescription = \u5c06\u5b57\u7b26\u4ee3\u7801\u8f6c\u6362\u4e3aASCII\u591a\u5b57\u8282\u611f\u77e5 +action.mbchartoascii.stackBefore = value +action.mbchartoascii.stackAfter = result +action.mbasciitochar.name = MBAsciiToChar +action.mbasciitochar.code = 0x37 +action.mbasciitochar.swfVersion = 4 +action.mbasciitochar.shortDescription = \u5c06\u503c\u8f6c\u6362\u4e3a\u652f\u6301\u591a\u5b57\u8282\u7684ASCII\u5b57\u7b26\u4ee3\u7801 +action.mbasciitochar.stackBefore = value +action.mbasciitochar.stackAfter = result +action.jump.name = Jump +action.jump.code = 0x99 +action.jump.swfVersion = 4 +action.jump.shortDescription = \u8df3\u8f6c\u5230\u4f4d\u7f6e +action.jump.operands = location:identifier +action.if.name = If +action.if.code = 0x9D +action.if.swfVersion = 4 +action.if.shortDescription = \u5982\u679c\u5206\u652f +action.if.description = \u521b\u5efa\u6761\u4ef6\u6d4b\u8bd5\u548c\u5206\u652f +action.if.stackBefore = condition +action.if.operands = branchTarget:identifier +action.call.name = Call +action.call.code = 0x9E +action.call.swfVersion = 4 +action.call.shortDescription = \u8c03\u7528\u5b50\u7a0b\u5e8f +action.call.stackBefore = value +action.getvariable.name = GetVariable +action.getvariable.code = 0x1C +action.getvariable.swfVersion = 4 +action.getvariable.shortDescription = \u83b7\u53d6\u53d8\u91cf\u503c +action.getvariable.stackBefore = name +action.getvariable.stackAfter = value +action.setvariable.name = SetVariable +action.setvariable.code = 0x1D +action.setvariable.swfVersion = 4 +action.setvariable.shortDescription = \u8bbe\u7f6e\u53d8\u91cf\u503c +action.setvariable.stackBefore = value, name +action.geturl2.name = GetURL2 +action.geturl2.code = 0x9A +action.geturl2.swfVersion = 4 +action.geturl2.shortDescription = \u83b7\u53d6URL(\u57fa\u4e8e\u5806\u6808) +action.geturl2.stackBefore = target, url +# Note: official documentation has the order of fields wrong +action.geturl2.operands = loadVariablesFlag:boolean, loadTargetFlag:boolean, sendVarsMethod:integer +action.gotoframe2.name = GotoFrame2 +action.gotoframe2.code = 0x9F +action.gotoframe2.swfVersion = 4 +action.gotoframe2.shortDescription = \u8f6c\u5230\u5e27(\u57fa\u4e8e\u5806\u6808) +action.gotoframe2.stackBefore = frame +action.gotoframe2.operands = sceneBiasFlag:boolean, playFlag:boolean, [sceneBias:UI16] +action.settarget2.name = SetTarget2 +action.settarget2.code = 0x20 +action.settarget2.swfVersion = 4 +action.settarget2.shortDescription = \u8bbe\u7f6e\u5f53\u524d\u4e0a\u4e0b\u6587(\u57fa\u4e8e\u5806\u6808) +action.settarget2.stackBefore = target +action.getproperty.name = GetProperty +action.getproperty.code = 0x22 +action.getproperty.swfVersion = 4 +action.getproperty.shortDescription = \u83b7\u53d6\u5c5e\u6027\u503c +action.getproperty.stackBefore = index, target +action.getproperty.stackAfter = value +action.setproperty.name = SetProperty +action.setproperty.code = 0x23 +action.setproperty.swfVersion = 4 +action.setproperty.shortDescription = \u8bbe\u7f6e\u5c5e\u6027\u503c +action.setproperty.stackBefore = value, index, target +action.clonesprite.name = CloneSprite +action.clonesprite.code = 0x24 +action.clonesprite.swfVersion = 4 +action.clonesprite.shortDescription = \u514b\u9686\u4e00\u4e2a\u7cbe\u7075 +action.clonesprite.stackBefore = depth, target, source +action.removesprite.name = RemoveSprite +action.removesprite.code = 0x25 +action.removesprite.swfVersion = 4 +action.removesprite.shortDescription = \u79fb\u9664\u7cbe\u7075 +action.removesprite.stackBefore = target +action.startdrag.name = StartDrag +action.startdrag.code = 0x27 +action.startdrag.swfVersion = 4 +action.startdrag.shortDescription = \u5f00\u59cb\u62d6\u52a8\u4e00\u4e2a\u5f71\u7247\u526a\u8f91 +action.startdrag.stackBefore = target, lockcenter, constrain, [y2, x2, y1, x1] +action.enddrag.name = EndDrag +action.enddrag.code = 0x28 +action.enddrag.swfVersion = 4 +action.enddrag.shortDescription = \u7ed3\u675f\u62d6\u52a8\u64cd\u4f5c +action.waitforframe2.name = WaitForFrame2 +action.waitforframe2.code = 0x8D +action.waitforframe2.swfVersion = 4 +action.waitforframe2.shortDescription = \u7b49\u5f85\u5e27(\u57fa\u4e8e\u5806\u6808) +action.waitforframe2.stackBefore = frame +action.waitforframe2.operands = skipCount:UI8 +action.trace.name = Trace +action.trace.code = 0x26 +action.trace.swfVersion = 4 +action.trace.shortDescription = \u53d1\u9001\u8c03\u8bd5\u8f93\u51fa\u5b57\u7b26\u4e32 +action.trace.stackBefore = value +action.gettime.name = GetTime +action.gettime.code = 0x34 +action.gettime.swfVersion = 4 +action.gettime.shortDescription = \u83b7\u53d6FP\u542f\u52a8\u540e\u7684\u6beb\u79d2\u6570 +action.gettime.stackAfter = value +action.randomnumber.name = RandomNumber +action.randomnumber.code = 0x30 +action.randomnumber.swfVersion = 4 +action.randomnumber.shortDescription = \u8ba1\u7b97\u968f\u673a\u6570 +action.randomnumber.stackBefore = maximum +action.randomnumber.stackAfter = result +action.callfunction.name = CallFunction +action.callfunction.code = 0x3D +action.callfunction.swfVersion = 5 +action.callfunction.shortDescription = \u6267\u884c\u4e00\u4e2a\u51fd\u6570 +action.callfunction.stackBefore = functionName, numArgs, [argument1, argument2, ...] +action.callfunction.stackAfter = result +action.callmethod.name = CallMethod +action.callmethod.code = 0x52 +action.callmethod.swfVersion = 5 +action.callmethod.shortDescription = \u5728\u5bf9\u8c61\u4e0a\u6267\u884c\u65b9\u6cd5 +action.callmethod.stackBefore = methodName, object, numArgs, [argument1, argument2, ...] +action.callmethod.stackAfter = result +action.constantpool.name = ConstantPool +action.constantpool.code = 0x88 +action.constantpool.swfVersion = 5 +action.constantpool.shortDescription = \u521b\u5efa\u65b0\u7684\u5e38\u91cf\u6c60 +action.constantpool.operands = constant1:STRING, [constant2:STRING, ...] +action.definefunction.name = DefineFunction +action.definefunction.code = 0x9B +action.definefunction.swfVersion = 5 +action.definefunction.shortDescription = \u5b9a\u4e49\u4e00\u4e2a\u51fd\u6570 +action.definefunction.stackAfter = result +action.definefunction.operands = functionName:STRING, numParams:UI16, [paramName1, paramName2, ...] +action.definelocal.name = DefineLocal +action.definelocal.code = 0x3C +action.definelocal.swfVersion = 5 +action.definelocal.shortDescription = \u5b9a\u4e49\u5c40\u90e8\u53d8\u91cf\u5e76\u8bbe\u7f6e\u5176\u503c +action.definelocal.stackBefore = value, name +action.definelocal2.name = DefineLocal2 +action.definelocal2.code = 0x41 +action.definelocal2.swfVersion = 5 +action.definelocal2.shortDescription = \u5b9a\u4e49\u5c40\u90e8\u53d8\u91cf\u800c\u4e0d\u8bbe\u7f6e\u5176\u503c +action.definelocal2.stackBefore = name +action.delete.name = Delete +action.delete.code = 0x3A +action.delete.swfVersion = 5 +action.delete.shortDescription = \u4ecescriptObject\u4e2d\u5220\u9664\u547d\u540d\u5c5e\u6027 +action.delete.stackBefore = name, object +action.delete2.name = Delete2 +action.delete2.code = 0x3B +action.delete2.swfVersion = 5 +action.delete2.shortDescription = \u5220\u9664\u547d\u540d\u5c5e\u6027 +action.delete2.stackBefore = name +action.enumerate.name = Enumerate +action.enumerate.code = 0x46 +action.enumerate.swfVersion = 5 +action.enumerate.shortDescription = \u4ece\u5bf9\u8c61\u4e2d\u83b7\u53d6\u6240\u6709\u69fd\u7684\u540d\u79f0 +action.enumerate.stackBefore = objectName +action.enumerate.stackAfter = null, [slotName1, slotName2, ...] +action.equals2.name = Equals2 +action.equals2.code = 0x49 +action.equals2.swfVersion = 5 +action.equals2.shortDescription = \u6839\u636e\u7c7b\u578b\u68c0\u67e5\u4e24\u4e2a\u503c\u662f\u5426\u76f8\u7b49 +action.equals2.stackBefore = value1, value2 +action.equals2.stackAfter = result +action.getmember.name = GetMember +action.getmember.code = 0x4E +action.getmember.swfVersion = 5 +action.getmember.shortDescription = \u4ece\u5bf9\u8c61\u4e2d\u83b7\u53d6\u547d\u540d\u5c5e\u6027 +action.getmember.stackBefore = propertyName, object +action.getmember.stackAfter = result +action.initarray.name = InitArray +action.initarray.code = 0x42 +action.initarray.swfVersion = 5 +action.initarray.shortDescription = \u521d\u59cb\u5316\u6570\u7ec4 +action.initarray.stackBefore = numArgs, [argument1, argument2, ...] +action.initarray.stackAfter = result +action.initobject.name = InitObject +action.initobject.code = 0x43 +action.initobject.swfVersion = 5 +action.initobject.shortDescription = \u521d\u59cb\u5316\u5bf9\u8c61 +action.initobject.stackBefore = numProps, [value1, name1, value2, name2, ...] +action.initobject.stackAfter = result +action.newmethod.name = NewMethod +action.newmethod.code = 0x53 +action.newmethod.swfVersion = 5 +action.newmethod.shortDescription = \u8c03\u7528\u6784\u9020\u65b9\u6cd5\u5e76\u521b\u5efa\u65b0\u5bf9\u8c61 +action.newmethod.stackBefore = methodName, object, numArgs, [argument1, argument2, ...] +action.newmethod.stackAfter = result +action.newobject.name = NewObject +action.newobject.code = 0x40 +action.newobject.swfVersion = 5 +action.newobject.shortDescription = \u8c03\u7528\u6784\u9020\u51fd\u6570\u5e76\u521b\u5efa\u65b0\u5bf9\u8c61 +action.newobject.stackBefore = objectName, numArgs, [argument1, argument2, ...] +action.newobject.stackAfter = result +action.setmember.name = SetMember +action.setmember.code = 0x4F +action.setmember.swfVersion = 5 +action.setmember.shortDescription = \u8bbe\u7f6e\u5bf9\u8c61\u7684\u547d\u540d\u5c5e\u6027 +action.setmember.stackBefore = value, propertyName, object +action.targetpath.name = TargetPath +action.targetpath.code = 0x45 +action.targetpath.swfVersion = 5 +action.targetpath.shortDescription = \u83b7\u53d6\u5bf9\u8c61\u76ee\u6807\u8def\u5f84 +action.targetpath.stackBefore = object +action.targetpath.stackAfter = result +action.with.name = With +action.with.code = 0x94 +action.with.swfVersion = 5 +action.with.shortDescription = \u7528\u5757\u5b9a\u4e49 +action.with.stackBefore = object +action.tonumber.name = ToNumber +action.tonumber.code = 0x4A +action.tonumber.swfVersion = 5 +action.tonumber.shortDescription = \u5c06\u503c\u8f6c\u6362\u4e3a\u6570\u5b57 +action.tonumber.stackBefore = value +action.tonumber.stackAfter = result +action.tostring.name = ToString +action.tostring.code = 0x4B +action.tostring.swfVersion = 5 +action.tostring.shortDescription = \u5c06\u503c\u8f6c\u6362\u4e3a\u5b57\u7b26\u4e32 +action.tostring.stackBefore = value +action.tostring.stackAfter = result +action.typeof.name = TypeOf +action.typeof.code = 0x44 +action.typeof.swfVersion = 5 +action.typeof.shortDescription = \u83b7\u53d6\u5bf9\u8c61\u7c7b\u578b +action.typeof.stackBefore = value +action.typeof.stackAfter = result +action.add2.name = Add2 +action.add2.code = 0x47 +action.add2.swfVersion = 5 +action.add2.shortDescription = \u6839\u636e\u7c7b\u578b\u6dfb\u52a0\u4e24\u4e2a\u503c +action.add2.stackBefore = value1, value2 +action.add2.stackAfter = result +action.less2.name = Less2 +action.less2.code = 0x48 +action.less2.swfVersion = 5 +action.less2.shortDescription = \u6839\u636e\u7c7b\u578b\u68c0\u67e5\u8be5\u503c\u662f\u5426\u5c0f\u4e8e\u5176\u4ed6\u503c +action.less2.stackBefore = value1, value2 +action.less2.stackAfter = booleanResult +action.modulo.name = Modulo +action.modulo.code = 0x3F +action.modulo.swfVersion = 5 +action.modulo.shortDescription = \u8ba1\u7b97\u4e24\u4e2a\u6570\u7684\u6a21 +action.modulo.description = \u8ba1\u7b97\u4e24\u4e2a\u6570\u5b57\u7684\u6a21\u5e76\u5c06\u7ed3\u679c\u63a8\u56de\u5806\u6808 +action.modulo.stackBefore = value1, value2 +action.modulo.stackAfter = result +action.bitand.name = BitAnd +action.bitand.code = 0x60 +action.bitand.swfVersion = 5 +action.bitand.shortDescription = \u6309\u4f4d\u4e0e +action.bitand.description = \u5bf9\u4e24\u4e2a\u6570\u5b57\u6267\u884c\u6309\u4f4d\u4e0e\u8fd0\u7b97 +action.bitand.stackBefore = value1, value2 +action.bitand.stackAfter = result +action.bitlshift.name = BitLShift +action.bitlshift.code = 0x63 +action.bitlshift.swfVersion = 5 +action.bitlshift.shortDescription = \u5de6\u79fb\u4f4d +action.bitlshift.stackBefore = shiftCount, value +action.bitlshift.stackAfter = result +action.bitor.name = BitOr +action.bitor.code = 0x61 +action.bitor.swfVersion = 5 +action.bitor.shortDescription = \u6309\u4f4d\u6216 +action.bitor.description = \u5bf9\u4e24\u4e2a\u6570\u5b57\u6267\u884c\u6309\u4f4d\u6216\u8fd0\u7b97 +action.bitor.stackBefore = value1, value2 +action.bitor.stackAfter = result +action.bitrshift.name = BitRShift +action.bitrshift.code = 0x64 +action.bitrshift.swfVersion = 5 +action.bitrshift.shortDescription = \u53f3\u79fb\u4f4d +action.bitrshift.stackBefore = shiftCount, value +action.bitrshift.stackAfter = result +action.biturshift.name = BitURShift +action.biturshift.code = 0x65 +action.biturshift.swfVersion = 5 +action.biturshift.shortDescription = \u65e0\u7b26\u53f7\u53f3\u79fb +action.biturshift.stackBefore = shiftCount, value +action.biturshift.stackAfter = result +action.bitxor.name = BitXor +action.bitxor.code = 0x62 +action.bitxor.swfVersion = 5 +action.bitxor.shortDescription = \u6309\u4f4d\u5f02\u6216 +action.bitxor.description = \u5bf9\u4e24\u4e2a\u6570\u5b57\u6267\u884c\u6309\u4f4d\u5f02\u6216\u8fd0\u7b97 +action.bitxor.stackBefore = value1, value2 +action.bitxor.stackAfter = result +action.decrement.name = Decrement +action.decrement.code = 0x51 +action.decrement.swfVersion = 5 +action.decrement.shortDescription = \u9012\u51cf\u503c +action.decrement.stackBefore = value +action.decrement.stackAfter = result +action.increment.name = Increment +action.increment.code = 0x50 +action.increment.swfVersion = 5 +action.increment.shortDescription = \u589e\u91cf\u503c +action.increment.stackBefore = value +action.increment.stackAfter = result +action.pushduplicate.name = PushDuplicate +action.pushduplicate.code = 0x4C +action.pushduplicate.swfVersion = 5 +action.pushduplicate.shortDescription = \u590d\u5236\u5806\u6808\u9876\u90e8 +action.pushduplicate.stackBefore = value +action.pushduplicate.stackAfter = value, value +action.return.name = Return +action.return.code = 0x3E +action.return.swfVersion = 5 +action.return.shortDescription = \u8fd4\u56de\u503c +action.return.stackBefore = value +action.stackswap.name = StackSwap +action.stackswap.code = 0x4D +action.stackswap.swfVersion = 5 +action.stackswap.shortDescription = \u4ea4\u6362\u5806\u6808\u4e0a\u7684\u524d\u4e24\u4e2a\u503c +action.stackswap.stackBefore = value1, value2 +action.stackswap.stackAfter = value2, value1 +action.storeregister.name = StoreRegister +action.storeregister.code = 0x87 +action.storeregister.swfVersion = 5 +action.storeregister.shortDescription = \u5c06\u503c\u5b58\u50a8\u5230\u5bc4\u5b58\u5668\u4e2d +action.storeregister.stackBefore = value +action.storeregister.stackAfter = value +action.storeregister.operands = registerNumber:UI8 +action.instanceof.name = InstanceOf +action.instanceof.code = 0x54 +action.instanceof.swfVersion = 6 +action.instanceof.shortDescription = \u5bf9\u8c61\u662f\u7c7b\u7684\u5b9e\u4f8b +action.instanceof.stackBefore = constructor, object +action.instanceof.stackAfter = booleanResult +action.enumerate2.name = Enumerate2 +action.enumerate2.code = 0x55 +action.enumerate2.swfVersion = 6 +action.enumerate2.shortDescription = \u4ece\u5bf9\u8c61\u4e2d\u83b7\u53d6\u6240\u6709\u69fd\u7684\u540d\u79f0(\u5806\u6808\u53c2\u6570\u662f\u5bf9\u8c61\u7c7b\u578b) +action.enumerate2.stackBefore = object +action.enumerate2.stackAfter = null, [slotName1, slotName2, ...] +action.strictequals.name = StrictEquals +action.strictequals.code = 0x66 +action.strictequals.swfVersion = 6 +action.strictequals.shortDescription = \u68c0\u67e5\u4e24\u4e2a\u503c\u662f\u5426\u76f8\u7b49\u4e14\u7c7b\u578b\u76f8\u540c +action.strictequals.stackBefore = value1, value2 +action.strictequals.stackAfter = booleanResult +action.greater.name = Greater +action.greater.code = 0x67 +action.greater.swfVersion = 6 +action.greater.shortDescription = \u68c0\u67e5\u8be5\u503c\u662f\u5426\u5927\u4e8e\u5176\u4ed6\u503c +action.greater.stackBefore = value1, value2 +action.greater.stackAfter = booleanResult +action.stringgreater.name = StringGreater +action.stringgreater.code = 0x68 +action.stringgreater.swfVersion = 6 +action.stringgreater.shortDescription = \u68c0\u67e5\u5b57\u7b26\u4e32\u662f\u5426\u5927\u4e8e\u5176\u4ed6\u503c +action.stringgreater.stackBefore = value1, value2 +action.stringgreater.stackAfter = booleanResult +action.definefunction2.name = DefineFunction2 +action.definefunction2.code = 0x8E +action.definefunction2.swfVersion = 7 +action.definefunction2.shortDescription = \u5b9a\u4e49\u4e00\u4e2a\u51fd\u6570(\u9644\u52a0\u529f\u80fd) +action.definefunction2.stackAfter = result +action.definefunction2.operands = functionName:STRING, numParams:UI16, \ + registerCount:UI8, \ + preloadParentFlag:boolean, \ + preloadRootFlag:boolean, \ + suppressSuperFlag:boolean, \ + preloadSuperFlag:boolean, \ + suppressArgumentsFlag:boolean, \ + preloadArgumentsFlag:boolean, \ + suppressThisFlag:boolean, \ + preloadThisFlag:boolean, \ + preloadGlobalFlag:boolean, \ + [register1:UI8, paramName1:STRING, register2:UI8, paramName2:STRING, ...] +action.extends.name = Extends +action.extends.code = 0x69 +action.extends.swfVersion = 7 +action.extends.shortDescription = \u521b\u5efa\u7ee7\u627f\u5173\u7cfb +action.extends.stackBefore = superClassConstructor, subClassConstructor +action.castop.name = CastOp +action.castop.code = 0x2B +action.castop.swfVersion = 7 +action.castop.shortDescription = \u5f3a\u5236\u8f6c\u6362\u6570\u636e\u7c7b\u578b +action.castop.stackBefore = object, constructor +action.castop.stackAfter = result +action.implementsop.name = ImplementsOp +action.implementsop.code = 0x2C +action.implementsop.swfVersion = 7 +action.implementsop.shortDescription = \u6307\u5b9a\u7c7b\u5b9e\u73b0\u7684\u63a5\u53e3 +action.implementsop.stackBefore = classConstructor, numInterfaces, [interfaceConstructor1, interfaceConstructor2, ...] +action.try.name = Try +action.try.code = 0x8F +action.try.swfVersion = 7 +action.try.shortDescription = \u4e3a\u7279\u6b8a\u60c5\u51b5\u5b9a\u4e49\u5904\u7406\u7a0b\u5e8f +action.try.operands = catchTarget:register|STRING +action.throw.name = Throw +action.throw.code = 0x2A +action.throw.swfVersion = 7 +action.throw.shortDescription = \u629b\u51fa\u5f02\u5e38\u60c5\u51b5 +action.throw.stackBefore = value diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AboutDialog_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/AboutDialog_zh.properties index 45e5d7305c..5ba397df26 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AboutDialog_zh.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AboutDialog_zh.properties @@ -20,7 +20,7 @@ contributors = \u8d21\u732e\u8005: #In the translation, replace "english" with target language name translation.author.label = \u4e2d\u6587\u7ffb\u8bd1\uff1a #In the translation, insert your name here -translation.author = \u6653\u4e4b\u8f66,\u5b89\u5b89,\u738b\u6668\u65ed,\u6d41\u6c34\u6e3a\u6e3a +translation.author = \u6653\u4e4b\u8f66,\u5b89\u5b89,\u738b\u6668\u65ed,\u6d41\u6c34\u6e3a\u6e3a,\u8001biu developers = \u5f00\u53d1: developers.others = \u4ee5\u53caGitHub\u4e0eGoogleCode\u7684\u5176\u4ed6\u4eba translators = \u7ffb\u8bd1\u8005: diff --git a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_zh.properties index 44b0f5a0bf..e0ad19fd30 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_zh.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/AdvancedSettingsDialog_zh.properties @@ -480,6 +480,14 @@ config.name.lastFlaExportCompressed = \u6700\u65b0\u7684FLA\u538b\u7f29\u65b9\u5 config.description.lastFlaExportCompressed = \u4e0a\u6b21\u5bfc\u51fa\u7684FLA\u538b\u7f29\u65b9\u5f0f #after 19.0.0 config.name.showImportSpriteInfo = \u5bfc\u5165\u7cbe\u7075(sprite)\u524d\u663e\u793a\u4fe1\u606f +config.description.showImportSpriteInfo = \u5728\u83dc\u5355\u4e2d\u5355\u51fb"\u5bfc\u5165\u7cbe\u7075"\u540e\u663e\u793a\u6709\u5173\u5bfc\u5165\u7cbe\u7075\u5982\u4f55\u5de5\u4f5c\u7684\u4e00\u4e9b\u4fe1\u606f +config.name.displayAs12PCodeDocsPanel = \u5728AS1/2 P-code\u4e2d\u663e\u793a\u6587\u6863\u9762\u677f +config.description.displayAs12PCodeDocsPanel = \u5728AS1/2 P-code\u7f16\u8f91\u548c\u5c55\u793a\u4e2d\u663e\u793a\u5305\u542b\u64cd\u4f5c\u6587\u6863\u7684\u9762\u677f +config.name.gui.action.splitPane.docs.dividerLocationPercent = (\u5185\u90e8)AS 1/2\u5206\u9694\u9762\u677f\u6587\u6863\u5206\u9694\u7b26\u4f4d\u7f6e\u767e\u5206\u6bd4 +config.description.action.avm2.splitPane.docs.dividerLocationPercent = AS 1/2\u5206\u9694\u9762\u677f\u6587\u6863\u5206\u9694\u7b26\u4f4d\u7f6e\u767e\u5206\u6bd4 +#after 19.1.2 +config.name.rememberLastScreen = \u8bb0\u4f4f\u4e0a\u6b21\u4f7f\u7528\u7684\u5c4f\u5e55\uff08\u5728\u591a\u4e2a\u663e\u793a\u5668\u4e0a\uff09 +config.description.rememberLastScreen = \u5728\u591a\u5c4f\u5e55\u914d\u7f6e\u4e2d\u8bb0\u4f4f\u4e0a\u6b21\u4f7f\u7528\u7684\u5c4f\u5e55 config.name.lastMainWindowScreenIndex = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53e3\u7684\u5c4f\u5e55\u7d22\u5f15 config.description.lastMainWindowScreenIndex = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53e3\u7684\u5c4f\u5e55\u7d22\u5f15 config.name.lastMainWindowScreenX = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53e3\u7684\u5c4f\u5e55X @@ -490,3 +498,41 @@ config.name.lastMainWindowScreenWidth = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53 config.description.lastMainWindowScreenWidth = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53e3\u7684\u5c4f\u5e55\u5bbd\u5ea6 config.name.lastMainWindowScreenHeight = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53e3\u7684\u5c4f\u5e55\u5bbd\u5ea6 config.description.lastMainWindowScreenHeight = \u6700\u540e\u4e00\u4e2a\u4e3b\u7a97\u53e3\u7684\u5c4f\u5e55\u5bbd\u5ea6 +config.name.displayAs12PCodePanel = \u663e\u793aAS1/2 P-code\u9762\u677f +config.description.displayAs12PCodePanel = \u663e\u793aActionScript 1\u548c2\u7684\u53cd\u6c47\u7f16P-code\u64cd\u4f5c\u9762\u677f +config.name.displayAs3PCodePanel = \u663e\u793aAS3 P-code\u9762\u677f +config.description.displayAs3PCodePanel = \u663e\u793aActionScript 3\u7684\u53cd\u6c47\u7f16P-code\u6307\u4ee4\u9762\u677f +config.name.flaExportUseMappedFontLayout = FLA\u5bfc\u51fa-\u4f7f\u7528\u6620\u5c04\u5b57\u4f53\u5e03\u5c40 +config.description.flaExportUseMappedFontLayout = \u5f53FLA\u5bfc\u51fa\u8fc7\u7a0b\u4e2d\u5b9e\u9645\u5b57\u4f53\u6ca1\u6709\u5e03\u5c40\u65f6,\u5728\u786e\u5b9a\u5b57\u6bcd\u95f4\u8ddd\u65f6\u4f7f\u7528\u6307\u5b9a\u7684\u6e90\u5b57\u4f53\u524d\u8fdb\u503c +#after 20.0.0 +config.name.formatting.tab.size = \u9009\u9879\u5361\u5927\u5c0f +config.description.formatting.tab.size = \u6bcf\u4e2a\u9009\u9879\u5361\u7684\u7a7a\u683c\u6570 +config.name.boxBlurPixelsLimit = \u6846\u6a21\u7cca\u6ee4\u955c\u50cf\u7d20\u9650\u5236 +config.description.boxBlurPixelsLimit = \u8ba1\u7b97boxblur\u6ee4\u955c\u7684\u6700\u5927\u50cf\u7d20\u6570.\u5b9e\u9645\u9650\u5236\u662f\u8fd9\u4e2a\u6570\u5b57\u4e58\u4ee510000.\u5982\u679c\u50cf\u7d20\u6570\u8f83\u5927,\u5219blurX\u548cblurY\u4f1a\u51cf\u5c11 +config.name.as3ExportNamesUseClassNamesOnly = \u5bfc\u51fa\u8d44\u4ea7\u7684\u540d\u79f0\u4ec5\u57fa\u4e8e\u7c7b\u522b(AS3) +config.description.as3ExportNamesUseClassNamesOnly = \u5bfc\u51fa\u7684\u8d44\u4ea7\u6587\u4ef6(\u56fe\u50cf,\u58f0\u97f3\u7b49)\u4ec5\u4eceSymbolClass\u6807\u7b7e\u4e2d\u83b7\u53d6\u540d\u79f0,\u5373\u5176\u5206\u914d\u7684\u7c7b\u522b.\u672a\u6dfb\u52a0\u5b57\u7b26id.\u6b64\u5916,\u5f53\u4e3a\u540c\u4e00\u8d44\u4ea7\u5206\u914d\u591a\u4e2a\u7c7b\u522b\u65f6,\u5b83\u4f1a\u88ab\u591a\u6b21\u5bfc\u51fa.(\u9002\u7528\u4e8eActionScript 3 SWF) +config.name.jnaTempDirectory = JNA\u4e34\u65f6\u76ee\u5f55 +config.description.jnaTempDirectory = JNA DLL\u7684\u4e34\u65f6\u76ee\u5f55\u8def\u5f84\u7b49.\u8fd9\u9700\u8981\u8bbe\u7f6e\u4e3a\u4e0d\u5305\u542b\u4efb\u4f55Unicode\u5b57\u7b26\u7684\u8def\u5f84.\u5982\u679c\u672a\u8bbe\u7f6e,\u5219\u4f7f\u7528\u5f53\u524d\u7528\u6237TEMP\u76ee\u5f55 +config.name.flaExportFixShapes = FLA\u5bfc\u51fa-\u4fee\u590d\u5f62\u72b6(\u7f13\u6162) +config.description.flaExportFixShapes = \u5e94\u7528\u5206\u5272\u91cd\u53e0\u8fb9\u7684\u8fc7\u7a0b\u6765\u5c1d\u8bd5\u4fee\u590d\u67d0\u4e9b\u5f62\u72b6\u4e0a\u7f3a\u5931\u7684\u586b\u5145.\u5bf9\u4e8e\u67d0\u4e9b\u590d\u6742\u7684\u5f62\u72b6,\u8fd9\u53ef\u80fd\u4f1a\u975e\u5e38\u7f13\u6162 +config.name.lastExportResampleWav = \u91cd\u65b0\u91c7\u6837wav\u7684\u6700\u540e\u8bbe\u7f6e +config.description.lastExportResampleWav = \u4e0a\u6b21\u5c06wav\u91cd\u65b0\u91c7\u6837\u8bbe\u7f6e\u4e3a44kHz +config.name.previewResampleSound = \u5728\u58f0\u97f3\u9884\u89c8\u4e2d\u91cd\u65b0\u91c7\u6837 +config.description.previewResampleSound = \u5728\u58f0\u97f3\u9884\u89c8\u4e2d\u91cd\u65b0\u91c7\u6837\u81f344kHz +config.name.lastExportTransparentBackground = \u5e27\u5bfc\u51fa\u4e2d\u5ffd\u7565\u80cc\u666f\u989c\u8272\u7684\u6700\u540e\u8bbe\u7f6e +config.description.lastExportTransparentBackground = \u5ffd\u7565\u5e27\u5bfc\u51fa\u7684\u80cc\u666f\u989c\u8272\u4ee5\u4f7f\u80cc\u666f\u900f\u660e\u7684\u6700\u540e\u8bbe\u7f6e +config.name.warningAbcClean = \u6e05\u7406\u5b57\u8282\u7801\u64cd\u4f5c\u65f6\u8b66\u544a +config.description.warningAbcClean = \u5728\u6267\u884c\u5b57\u8282\u7801\u6e05\u7406\u64cd\u4f5c\u4e4b\u524d\u663e\u793a\u8b66\u544a +config.name.warningAddFunction = \u5728AS3 P-code\u4e2d\u6dfb\u52a0\u65b0\u51fd\u6570\u65f6\u8b66\u544a +config.description.warningAddFunction = \u5728AS3 P-code\u4e2d\u521b\u5efa\u65b0\u51fd\u6570\u4e4b\u524d\u663e\u793a\u8b66\u544a.\u5b83\u8fd8\u663e\u793a\u4e86\u4e00\u4e9b\u64cd\u4f5c\u5982\u4f55\u5de5\u4f5c\u7684\u4fe1\u606f +#after 21.0.2 +config.name.linkAllClasses = \u6dfb\u52a0\u6240\u6709\u7c7b(\u58f0\u97f3,\u5b57\u4f53,\u56fe\u50cf)\u7684\u94fe\u63a5 +config.description.linkAllClasses = \u6dfb\u52a0\u94fe\u63a5SWF\u4e2d\u6240\u6709(\u58f0\u97f3,\u5b57\u4f53,\u56fe\u50cf)\u7c7b\u7684\u7279\u6b8a\u811a\u672c.\u5f53\u6ca1\u6709\u5176\u4ed6\u811a\u672c\u94fe\u63a5\u5b83\u4eec\u65f6\u5f88\u6709\u7528,\u5728\u7f16\u8bd1\u6587\u4ef6\u4e2d\u4ecd\u7136\u53ef\u7528 +#after 21.1.0 +config.name.recentColors = \u6700\u8fd1\u7684\u989c\u8272 +config.description.recentColors = \u989c\u8272\u5bf9\u8bdd\u6846\u4e2d\u7684\u6700\u65b0\u989c\u8272 +#after 21.1.1 +config.name.gui.splitPaneEasyVertical.dividerLocationPercent = (\u5185\u90e8)\u7b80\u6613UI\u5782\u76f4\u62c6\u5206\u5668\u4f4d\u7f6e +config.name.gui.splitPaneEasyHorizontal.dividerLocationPercent = (\u5185\u90e8)\u7b80\u6613UI\u6c34\u5e73\u62c6\u5206\u5668\u4f4d\u7f6e +config.name.lastSessionEasySwf = \u4e0a\u6b21\u7b80\u6613\u6a21\u5f0f\u4f1a\u8bdd\u6587\u4ef6 +config.description.lastSessionEasySwf = \u5305\u542b\u5728\u7b80\u6613\u6a21\u5f0f\u4e0b\u4e0a\u6b21\u4f1a\u8bdd\u4e2d\u9009\u62e9\u7684SWF diff --git a/src/com/jpexs/decompiler/flash/gui/locales/ColorChooserDialog_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/ColorChooserDialog_zh.properties new file mode 100644 index 0000000000..06f11182ed --- /dev/null +++ b/src/com/jpexs/decompiler/flash/gui/locales/ColorChooserDialog_zh.properties @@ -0,0 +1,16 @@ +# Copyright (C) 2024 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 . +dialog.title = \u9009\u62e9\u989c\u8272 +recent.add = \u6dfb\u52a0 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/ConvertPlaceObjectTypeDialog_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/ConvertPlaceObjectTypeDialog_zh.properties new file mode 100644 index 0000000000..64ee226745 --- /dev/null +++ b/src/com/jpexs/decompiler/flash/gui/locales/ConvertPlaceObjectTypeDialog_zh.properties @@ -0,0 +1,23 @@ +# Copyright (C) 2024 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 . +dialog.title = \u8f6c\u6362\u653e\u7f6e\u5bf9\u8c61\u7c7b\u578b +place1 = \u989c\u8272\u53d8\u6362,\u6df1\u5ea6,\u5b57\u7b26id,\u77e9\u9635 +place2 = \u6807\u5fd7\u79fb\u52a8,\u526a\u8f91\u52a8\u4f5c,\u526a\u8f91\u6df1\u5ea6,alpha\u989c\u8272\u53d8\u6362,\u540d\u79f0,\u6bd4\u7387 +place3 = \u7c7b\u540d,\u80cc\u666f\u989c\u8272,\u4f4d\u56fe\u7f13\u5b58,\u6df7\u5408\u6a21\u5f0f,\u8fc7\u6ee4\u5668,\u53ef\u89c1\u6027 +place4 = AMF\u6570\u636e +minimum = (\u6700\u5c0f\u503c) +unsupported = (\u4e0d\u652f\u6301) +button.ok = \u786e\u5b9a +button.cancel = \u53d6\u6d88 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/ConvertShapeTypeDialog_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/ConvertShapeTypeDialog_zh.properties new file mode 100644 index 0000000000..2dadd326ab --- /dev/null +++ b/src/com/jpexs/decompiler/flash/gui/locales/ConvertShapeTypeDialog_zh.properties @@ -0,0 +1,23 @@ +# Copyright (C) 2024 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 . +dialog.title = \u8f6c\u6362\u5f62\u72b6\u7c7b\u578b +shape1 = \u9996\u4e2a\u7248\u672c +shape2 = \u6837\u5f0f\u5217\u8868\u4e2d\u6709255\u591a\u79cd\u6837\u5f0f,\u591a\u4e2a\u6837\u5f0f\u5217\u8868 +shape3 = \u989c\u8272\u900f\u660e\u5ea6 +shape4 = LINESTYLE2(\u8fde\u63a5,\u5927\u5199,\u7f29\u653e,\u7b14\u5212\u586b\u5145),\u8fb9\u7f18\u8fb9\u754c,\u7126\u70b9\u6e10\u53d8,\u5c55\u5f00\u6a21\u5f0f,\u63d2\u503c\u6a21\u5f0f,numgradients>8 +minimum = (\u6700\u5c0f\u503c) +unsupported = (\u4e0d\u652f\u6301) +button.ok = \u786e\u5b9a +button.cancel = \u53d6\u6d88 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/EasyPanel_zh.properties b/src/com/jpexs/decompiler/flash/gui/locales/EasyPanel_zh.properties new file mode 100644 index 0000000000..922968f39d --- /dev/null +++ b/src/com/jpexs/decompiler/flash/gui/locales/EasyPanel_zh.properties @@ -0,0 +1,77 @@ +# Copyright (C) 2024 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 . +library = \u5e93 +library.folder.images = \u56fe\u50cf +library.folder.graphics = \u56fe\u5f62 +library.folder.shapeTweens = \u5f62\u72b6\u8865\u95f4 +library.folder.texts = \u6587\u672c +library.folder.fonts = \u5b57\u4f53 +library.folder.movieClips = \u5f71\u7247\u526a\u8f91 +library.folder.buttons = \u6309\u94ae +library.folder.sounds = \u58f0\u97f3 +library.folder.videos = \u89c6\u9891 +library.header.name = \u540d\u79f0 +library.header.asLinkage = AS\u94fe\u63a5 +item.image = \u56fe\u50cf +item.graphic = \u56fe\u5f62 +item.shapeTween = \u5f62\u72b6\u8865\u95f4 +item.text = \u6587\u672c +item.font = \u5b57\u4f53 +item.movieClip = \u5f71\u7247\u526a\u8f91 +item.button = \u6309\u94ae +item.sound = \u58f0\u97f3 +item.video = \u89c6\u9891 +item.uknown = \u672a\u77e5 +undo = \u64a4\u9500 %action% +undo.cannot = \u65e0\u6cd5\u64a4\u9500 +redo = \u91cd\u505a %action% +redo.cannot = \u65e0\u6cd5\u91cd\u505a +transform = \u8f6c\u6362 +action.addFrame = \u6dfb\u52a0\u5e27 +action.addKeyFrame = \u6dfb\u52a0\u5173\u952e\u5e27 +action.addKeyFrameWithBlankFrameBefore = \u5728\u7a7a\u767d\u5e27\u4e4b\u524d\u6dfb\u52a0\u5173\u952e\u5e27 +action.removeFrame = \u79fb\u9664\u5e27 +action.transform = \u8f6c\u6362 +action.move = \u79fb\u52a8 +action.addToStage = \u6dfb\u52a0\u5230\u821e\u53f0 +action.change = \u66f4\u6539 %item% +action.change.compression = \u538b\u7f29 +action.change.swfVersion = SWF\u7248\u672c +action.change.encrypted = \u52a0\u5bc6 +action.change.gfx = GFX +action.change.frameRate = \u5e27\u7387 +action.change.width = \u5bbd +action.change.height = \u9ad8 +action.change.colorEffect = \u989c\u8272\u6548\u679c +timeline.main = \u4e3b\u65f6\u95f4\u8f74 +timeline.item = \u65f6\u95f4\u8f74 %item% +timeline.item.cancel = \u53d6\u6d88-\u5355\u51fb\u4ee5\u8f6c\u5230\u4e3b\u65f6\u95f4\u8f74 +properties = \u5c5e\u6027 +properties.document = \u6587\u6863 +properties.instance.single = \u5b9e\u4f8b %item% +properties.instance.multiple = %count% \u5b9e\u4f8b +properties.instance.none = \u65e0\u5b9e\u4f8b +properties.instance.header.positionSize = \u4f4d\u7f6e\u548c\u5927\u5c0f +properties.instance.header.colorEffect = \u989c\u8272\u6548\u679c +property.label = %item%: +property.instance.item = \u9879\u76ee +property.instance.colorEffect.alpha = Alpha +property.instance.colorEffect.red = \u7ea2 +property.instance.colorEffect.green = \u7eff +property.instance.colorEffect.blue = \u84dd +property.instance.positionSize.x = X +property.instance.positionSize.y = Y +property.instance.positionSize.width = \u5bbd +property.instance.positionSize.height = \u9ad8 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 6ac2fe5f44..be2c64121b 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_zh.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_zh.properties @@ -61,7 +61,7 @@ node.sounds = \u58f0\u97f3 node.binaryData = \u4e8c\u8fdb\u5236\u6570\u636e node.fonts = \u5b57\u4f53 node.sprites = \u7cbe\u7075 -node.shapes = \u56fe\u5f62 +node.shapes = \u5f62\u72b6 node.morphshapes = \u53d8\u5f62\u5f62\u72b6 node.buttons = \u6309\u94ae node.frames = \u5e27 @@ -612,7 +612,7 @@ script.seemsBroken = \u8b66\u544a: \u4ee3\u7801\u53cd\u6c47\u7f16\u5305\u \u6216\u811a\u672c\u662f\u7531\u975e\u6807\u51c6\u7684\u7f16\u8bd1\u5668\u751f\u6210\u7684(\u5982Haxe\u7b49)\u3002 \ #after 13.0.3 -button.removetrait = \u5220\u9664\u7279\u5f81 +button.removetrait = \u5220\u9664trait message.confirm.removetrait = \u60a8\u786e\u5b9a\u8981\u5220\u9664\u9009\u4e2d\u7684trait? contextmenu.addScript = \u6dfb\u52a0\u811a\u672c contextmenu.addClass = \u6dfb\u52a0\u7c7b @@ -753,9 +753,9 @@ contextmenu.unpin.all = \u5168\u90e8\u53d6\u6d88\u56fa\u5b9a contextmenu.unpin.others = \u53d6\u6d88\u56fa\u5b9a\u5176\u4ed6 menu.tools.otherTools.clearPinnedItems = \u6e05\u7a7a\u56fa\u5b9a\u9879\u76ee menu.settings.flattenASPackages = \u5c55\u5f00ActionScript\u5305 -work.reading.abc = \u8bfb\u53d6ABC +work.reading.abc = \u8bfb\u53d6\u5b57\u8282\u7801 filter.abc = ActionScript3\u5b57\u8282\u7801\u6587\u4ef6(*.abc) -contextmenu.exportAbc = \u5bfc\u51faABC +contextmenu.exportAbc = \u5bfc\u51fa\u5b57\u8282\u7801 contextmenu.pin = \u56fa\u5b9a #after 17.0.4 productinfo.product = \u751f\u4ea7: @@ -872,10 +872,22 @@ warning.cannotencrypt = \u8b66\u544a:\u6587\u4ef6%file%\u4f7f\u7528HARMAN Air\u5 #after 18.5.0 warning.edit.headerframecount = \u8b66\u544a:\u7f16\u8f91\u6587\u4ef6\u5934(header)\u4e2d\u7684\u5e27\u6570\u4e0d\u4f1a\u66f4\u65b0SWF\u65f6\u95f4\u8f74\u4e0a\u663e\u793a\u5e27(ShowFrame)\u6807\u7b7e\u7684\u5fc5\u8981\u6570\u91cf\r\n\u8981\u6dfb\u52a0\u65b0\u7684\u5e27\uff0c\u60a8\u6700\u597d\u4f7f\u7528SWF\u4e0a\u7684\u53f3\u952e\u5355\u51fb\u4e0a\u4e0b\u6587\u83dc\u5355 -> \u6dfb\u52a0\u5e27\r\n\ \u82e5\u5982\u6b64\u505a,\u8fd9\u5c06\u76f8\u5e94\u7684\u66f4\u65b0\u6587\u4ef6\u5934(header)\u4e2d\u7684\u5e27\u6570 -menu.tools.abcexplorer = ABC\u6d4f\u89c8\u5668 -contextmenu.abcexplorer = \u6d4f\u89c8ABC\u5b57\u8282\u7801 +warning.icon = \u70b9\u51fb\u663e\u793a\u76f8\u5173\u8b66\u544a +button.export = \u5bfc\u51fa +error.font.cannotaddcharacter = \u9519\u8bef:\u65e0\u6cd5\u5411\u5b57\u4f53\u6dfb\u52a0\u66f4\u591a\u5b57\u7b26.\r\n\u5df2\u6210\u529f\u6dfb\u52a0\u5b57\u7b26:%numchars% +info.noteditable.compound = \u8be5\u811a\u672c\u662f\u590d\u5408\u7684,\u5177\u6709\u591a\u4e2a\u5916\u90e8\u53ef\u89c1\u7684\u5b9a\u4e49.\u76f4\u63a5\u7f16\u8f91\u4e0d\u53ef\u7528 +menu.tools.abcexplorer = \u5b57\u8282\u7801\u6d4f\u89c8\u5668 +contextmenu.abcexplorer = \u6d4f\u89c8\u5b57\u8282\u7801 +button.abcexploretrait = \u5728\u5b57\u8282\u7801\u6d4f\u89c8\u5668\u4e2d\u663e\u793atrait +#after 19.0.0 +binarydata.swfInside.packer = \u770b\u8d77\u6765\u8fd9\u4e2a\u4e8c\u8fdb\u5236\u6570\u636e\u6807\u7b7e\u4e2d\u6709SWF,\u7528%packer%\u6253\u5305.\u5355\u51fb\u6b64\u5904\u89e3\u538b\u7f29SWF\u5e76\u5c06\u5176\u4f5c\u4e3a\u5b50\u6811\u52a0\u8f7d +button.replaceWithGif = \u66ff\u6362\u4e3aGIF... +message.info.importSprites = \u5728\u5bfc\u5165\u7cbe\u7075\u65f6,\u60a8\u9700\u8981\u9009\u62e9\u4e00\u4e2a\u6587\u4ef6\u5939.\r\n\ + \u8be5\u6587\u4ef6\u5939\u5fc5\u987b\u5305\u542b"sprites"\u5b50\u6587\u4ef6\u5939,\u5176\u4e2d\u7684\u6587\u4ef6\u540d\u5fc5\u987b\u4e0e\u5f53\u524d\u9009\u5b9aSWF\u4e2d\u7684\u73b0\u6709sprites\u5339\u914d.\r\n\ + \u6bcf\u4e2a\u6587\u4ef6\u5fc5\u987b\u5177\u6709".gif"\u6269\u5c55\u540d import.sprite.result = \u5df2\u5bfc\u5165%count%\u4e2a\u7cbe\u7075 menu.file.import.sprite = \u4eceGIF\u5bfc\u5165\u7cbe\u7075 +error.shapeTooLarge = \u5f62\u72b6\u4e2d\u7684\u67d0\u4e9b\u957f\u5ea6\u592a\u5927,\u65e0\u6cd5\u4fdd\u5b58.\\r\n\u7ee7\u7eed\u64cd\u4f5c\u4e4b\u524d,\u8bf7\u5c06\u70b9\u79fb\u8fd1,\u8c03\u6574\u5f62\u72b6\u5927\u5c0f\u548c/\u6216\u5728\u957f\u8fb9\u4e2d\u95f4\u63d2\u5165\u4e00\u4e2a\u70b9 #after 19.1.2 tagInfo.fileName = \u6587\u4ef6\u540d\u79f0 tagInfo.exportName = \u5bfc\u51fa\u540d\u79f0 @@ -891,15 +903,61 @@ tagInfo.flags = \u6807\u5fd7 tagInfo.prefix = \u524d\u7f00 tagInfo.swfName = SWF\u540d\u79f0 tagInfo.codeOffsets = \u4ee3\u7801\u504f\u79fb\u91cf +tagInfo.gradientSize = \u6e10\u53d8\u5927\u5c0f tagInfo.textureId = \u7eb9\u7406Id -tag.shape.create = \u4ece\u6587\u4ef6\u521b\u5efa\u5f62\u72b6(shape)... -tag.image.create = \u4ece\u6587\u4ef6\u521b\u5efa\u56fe\u50cf(image)... +tagInfo.textureFormat = \u7eb9\u7406\u683c\u5f0f +tagInfo.padPixels = \u586b\u5145\u50cf\u7d20 +tagInfo.nominalGlyphSz = \u6807\u79f0\u5b57\u5f62\u5927\u5c0f +tagInfo.glyphCount = \u5b57\u5f62\u8ba1\u6570 +tagInfo.fontCount = \u5b57\u4f53\u8ba1\u6570 +tag.shape.create = \u4ece\u6587\u4ef6\u521b\u5efa\u5f62\u72b6... +tag.image.create = \u4ece\u6587\u4ef6\u521b\u5efa\u56fe\u50cf... +tag.sprite.create = \u4eceGIF\u6587\u4ef6\u521b\u5efa\u7cbe\u7075... +tag.movie.create = \u4ece\u6587\u4ef6\u521b\u5efa\u89c6\u9891... +tag.sound.create = \u4ece\u6587\u4ef6\u521b\u5efa\u58f0\u97f3... +tag.font.create = \u4f7f\u7528\u5bf9\u8bdd\u6846\u521b\u5efa\u5b57\u4f53... +tag.binaryData.create = \u4ece\u6587\u4ef6\u521b\u5efa\u4e8c\u8fdb\u5236\u6570\u636e... +tag.morphshape.create = \u4ece\u5f62\u72b6\u6587\u4ef6\u521b\u5efa\u53d8\u5f62\u5f62\u72b6... +dialog.morphshape.startShape = \u9009\u62e9\u8d77\u59cb\u5f62\u72b6 +dialog.morphshape.endShape = \u9009\u62e9\u7aef\u70b9\u5f62\u72b6.\u5355\u51fb"\u53d6\u6d88"\u4f7f\u7ed3\u675f\u5f62\u72b6\u4e0e\u5f00\u59cb\u5f62\u72b6\u76f8\u540c +error.morphshape.incompatible = \u65e0\u6cd5\u521b\u5efa\u53d8\u5f62\u5f62\u72b6:\u5f00\u59cb\u548c\u7ed3\u675f\u5f62\u72b6\u7684\u586b\u5145/\u7ebf\u6761\u6837\u5f0f\u4e0d\u517c\u5bb9 +shaperecords.edge.style = \u6837\u5f0f\u66f4\u6539 (%details%) +shaperecords.edge.style.move = \u79fb\u52a8\u5230 %x%, %y% +shaperecords.edge.end = \u5f62\u72b6\u7ed3\u675f +#after 20.0.0 +contextmenu.copyFrame = \u5c06\u5e27\u590d\u5236\u5230 +contextmenu.copyFrame.clipboard = \u590d\u5236\u5230\u5e27\u526a\u8d34\u677f +contextmenu.cutFrame = \u526a\u5207\u5230\u5e27\u526a\u8d34\u677f +contextmenu.moveFrame = \u5c06\u5e27\u79fb\u52a8\u5230 +contextmenu.clipboard.frame = \u5e27\u526a\u8d34\u677f +clipboard.hint.frame = \u5e27\u526a\u8d34\u677f\u4e2d\u7684\u9879\u76ee\u6570 +clipboard.clear.frame = \u6e05\u9664\u5e27\u526a\u8d34\u677f +debug.export = \u5bfc\u51fa %name% +debug.export.bytearray = \u5bfc\u51fa\u5b57\u8282\u6570\u7ec4\u6570\u636e... +debug.import = \u5bfc\u5165\u5230 %name% +debug.import.bytearray = \u5bfc\u5165\u5b57\u8282\u6570\u7ec4\u6570\u636e... action.edit.flex = (Flex \u7f16\u8bd1\u5668) header.encrypted = Harman\u52a0\u5bc6 header.warning.unsupportedGfxEncryption = GFX\u4e0d\u652f\u6301Harman\u52a0\u5bc6 contextmenu.applyUnpacker = \u5e94\u7528\u89e3\u5305\u5668 +binarydata.dataInside.packer = \u770b\u8d77\u6765\u8fd9\u4e2a\u4e8c\u8fdb\u5236\u6570\u636e\u662f\u7528%packer%\u6253\u5305\u7684.\u5355\u51fb\u6b64\u5904\u89e3\u538b\u7f29\u4e8c\u8fdb\u5236\u6570\u636e +error.wrong.packer = %item%\r\n\u65e0\u6cd5\u4f7f\u7528%packer%\u89e3\u538b\u7f29\u4e8c\u8fdb\u5236\u6570\u636e.\\r\n\u6b64\u6253\u5305\u5668\u53ef\u80fd\u672a\u6253\u5305\u6570\u636e +contextmenu.copyTagToReplaceByClass = \u5c06\u6807\u7b7e\u590d\u5236\u5230(\u66ff\u6362\u4e3a\u7c7b\u540d) +contextmenu.copyTagToReplaceByExportName = \u5c06\u6807\u7b7e\u590d\u5236\u5230(\u66ff\u6362\u4e3a\u5bfc\u51fa\u540d\u79f0) button.breakpointList = \u663e\u793a\u65ad\u70b9\u5217\u8868 node.scenes = \u573a\u666f +contextmenu.showInFramesFolder = \u5728\u5e27\u6587\u4ef6\u5939\u4e2d\u663e\u793a +#after 20.1.0 +contextmenu.collapseAll = \u5168\u90e8\u6298\u53e0 +contextmenu.collectDepthAsSprites = \u6536\u96c6\u4e0e\u7cbe\u7075\u6df1\u5ea6\u76f8\u540c\u7684\u6807\u7b7e +preview.resample = \u5c06\u58f0\u97f3\u91cd\u65b0\u91c7\u6837\u523044kHz +contextmenu.setAs3ClassLinkage = \u8bbe\u7f6eAS3\u7c7b\u94fe\u63a5 +contextmenu.cleanAbc = \u6e05\u7406\u5b57\u8282\u7801-\u79fb\u9664\u672a\u4f7f\u7528\u7684\u9879\u76ee +warning.cleanAbc = \u6b64\u64cd\u4f5c\u5c06\u4ece\u5b57\u8282\u7801\u4e2d\u5220\u9664\u4f7f\u7528\u7387\u4e3a\u96f6\u7684\u9879\u76ee,\u8fd9\u4e9b\u9879\u76ee\u4e0d\u4f1a\u4ece\u4efb\u4f55\u811a\u672c\u4e2d\u5f15\u7528.\r\n\ + \u67d0\u4e9b\u6df7\u6dc6\u7684SWF\u6587\u4ef6\u53ef\u80fd\u4f1a\u4ee5\u8fd9\u79cd\u65b9\u5f0f\u53d7\u635f.\r\n\ + \u4f7f\u7528\u5b83\u7684\u98ce\u9669\u7531\u4f60\u81ea\u5df1\u627f\u62c5,\u4f60\u60f3\u7ee7\u7eed\u5417? +tagInfo.idType = id\u7684\u7c7b\u578b +contextmenu.configurePathResolving = \u914d\u7f6e\u8def\u5f84\u89e3\u6790... contextmenu.setAsLinkage = \u8bbe\u7f6eAS\u94fe\u63a5 contextmenu.exportFlashDevelop = \u5bfc\u51fa\u4e3aFlashDevelop\u5de5\u7a0b filter.as3proj = FlashDevelop AS3\u5de5\u7a0b (*.as3proj) @@ -919,6 +977,10 @@ filter.exe.projectorLinux = Linux\u653e\u6620\u6587\u4ef6 callStack.header.swf = SWF #after 21.0.0 button.addfunction = \u6dfb\u52a0\u65b0\u51fd\u6570 +message.confirm.addfunction = \u6b64\u64cd\u4f5c\u5c06\u4f7f\u7528\u5206\u914d\u7684MethodBody\u521b\u5efa\u4e00\u4e2a\u65b0\u7684MethodInfo\u5bf9\u8c61,\u5e76\u8fd4\u56de\u65b9\u6cd5\u4fe1\u606f\u7d22\u5f15\r\n\ + \u60a8\u53ef\u4ee5\u5c06\u5176\u7528\u4f5c\u65b0\u51fd\u6570\u6307\u4ee4\u7684\u64cd\u4f5c\u6570.\r\n\ + \u8981\u7f16\u8f91\u6b64\u51fd\u6570\u7684\u4e3b\u4f53\u548c\u53c2\u6570,\u60a8\u5fc5\u987b\u5728ActionScript\u89c6\u56fe\u4e2d\u627e\u5230\u5b83 +addfunction.result = \u751f\u6210\u7684\u65b0\u65b9\u6cd5\u4fe1\u606fid:%method_info_index%.\u6309"\u786e\u5b9a"\u5c06\u5176\u590d\u5236\u5230\u526a\u8d34\u677f addfunction.result.title = \u65b0\u65b9\u6cd5\u4fe1\u606f #after 21.0.2 filter.air.as3proj = FlashDevelop AS3\u5de5\u7a0b (*.as3proj) @@ -928,3 +990,9 @@ packer.key = \u8f93\u5165\u6253\u5305\u5de5\u5177"%packer%"\u7684\u5bc6\u94a5: contextmenu.exportVsCode = \u5bfc\u51fa\u4e3aVS Code\u5de5\u7a0b work.exporting.vsCode = \u6b63\u5728\u5bfc\u51fa\u4e3aVS Code\u5de5\u7a0b menu.file.export.vsCode = \u5bfc\u51fa\u4e3aVS Code\u5de5\u7a0b +#after 21.1.0 +contextmenu.convertShapeType = \u8f6c\u6362\u5f62\u72b6\u7c7b\u578b +contextmenu.convertPlaceObjectType = \u8f6c\u6362\u653e\u7f6e\u5bf9\u8c61\u7c7b\u578b +work.decompiling.allScripts.ucf = \u53cd\u7f16\u8bd1\u6240\u6709\u811a\u672c\u4ee5\u83b7\u5f97\u672a\u521d\u59cb\u5316\u7684\u7c7b\u5b57\u6bb5.\u8fd9\u53ef\u80fd\u9700\u8981\u4e00\u6bb5\u65f6\u95f4 +#after 21.1.1 +menu.file.view.easy = \u7b80\u6613\u6a21\u5f0f