0000: ef bb bf 24 65 6e 67 69 6e 65 20 4a 53 63 72 69 ...$engine JScri
0010: 70 74 0d 0a 24 75 6e 61 6d 65 20 77 61 74 63 68 pt..$uname watch
0020: 5f 65 78 74 0d 0a 24 64 6e 61 6d 65 20 d0 a0 d0 _ext..$dname ...
0030: b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 bd d0 ................
0040: be d0 b5 20 d1 82 d0 b0 d0 b1 d0 bb d0 be 0d 0a ... ............
0050: 24 61 64 64 69 6e 20 73 74 64 63 6f 6d 6d 61 6e $addin stdcomman
0060: 64 73 0d 0a 24 61 64 64 69 6e 20 73 74 64 6c 69 ds..$addin stdli
0070: 62 0d 0a 24 61 64 64 69 6e 20 67 6c 6f 62 61 6c b..$addin global
0080: 0d 0a 0d 0a 73 74 64 6c 69 62 2e 72 65 71 75 69 ....stdlib.requi
0090: 72 65 28 27 53 79 6e 74 61 78 41 6e 61 6c 79 73 re('SyntaxAnalys
00a0: 69 73 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 69 is.js', SelfScri
00b0: 70 74 29 3b 0d 0a 73 74 64 6c 69 62 2e 72 65 71 pt);..stdlib.req
00c0: 75 69 72 65 28 27 54 65 78 74 57 69 6e 64 6f 77 uire('TextWindow
00d0: 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 69 70 74 .js', SelfScript
00e0: 29 3b 0d 0a 73 74 64 6c 69 62 2e 72 65 71 75 69 );..stdlib.requi
00f0: 72 65 28 27 53 65 74 74 69 6e 67 73 4d 61 6e 61 re('SettingsMana
0100: 67 65 6d 65 6e 74 2e 6a 73 27 2c 20 53 65 6c 66 gement.js', Self
0110: 53 63 72 69 70 74 29 3b 0d 0a 0d 0a 73 74 64 6c Script);....stdl
0120: 69 62 2e 72 65 71 75 69 72 65 28 27 6c 6f 67 34 ib.require('log4
0130: 6a 73 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 69 js.js', SelfScri
0140: 70 74 29 3b 0d 0a 0d 0a 67 6c 6f 62 61 6c 2e 63 pt);....global.c
0150: 6f 6e 6e 65 63 74 47 6c 6f 62 61 6c 73 28 53 65 onnectGlobals(Se
0160: 6c 66 53 63 72 69 70 74 29 3b 0d 0a 0d 0a 0d 0a lfScript);......
0170: 76 61 72 20 6c 6f 67 67 65 72 20 3d 20 4c 6f 67 var logger = Log
0180: 34 6a 73 2e 67 65 74 4c 6f 67 67 65 72 28 53 65 4js.getLogger(Se
0190: 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65 4e lfScript.uniqueN
01a0: 61 6d 65 29 3b 0d 0a 76 61 72 20 61 70 70 65 6e ame);..var appen
01b0: 64 65 72 20 3d 20 6e 65 77 20 4c 6f 67 34 6a 73 der = new Log4js
01c0: 2e 42 72 6f 77 73 65 72 43 6f 6e 73 6f 6c 65 41 .BrowserConsoleA
01d0: 70 70 65 6e 64 65 72 28 29 3b 0d 0a 61 70 70 65 ppender();..appe
01e0: 6e 64 65 72 2e 73 65 74 4c 61 79 6f 75 74 28 6e nder.setLayout(n
01f0: 65 77 20 4c 6f 67 34 6a 73 2e 50 61 74 74 65 72 ew Log4js.Patter
0200: 6e 4c 61 79 6f 75 74 28 4c 6f 67 34 6a 73 2e 50 nLayout(Log4js.P
0210: 61 74 74 65 72 6e 4c 61 79 6f 75 74 2e 54 54 43 atternLayout.TTC
0220: 43 5f 43 4f 4e 56 45 52 53 49 4f 4e 5f 50 41 54 C_CONVERSION_PAT
0230: 54 45 52 4e 29 29 3b 0d 0a 6c 6f 67 67 65 72 2e TERN));..logger.
0240: 61 64 64 41 70 70 65 6e 64 65 72 28 61 70 70 65 addAppender(appe
0250: 6e 64 65 72 29 3b 0d 0a 6c 6f 67 67 65 72 2e 73 nder);..logger.s
0260: 65 74 4c 65 76 65 6c 28 4c 6f 67 34 6a 73 2e 4c etLevel(Log4js.L
0270: 65 76 65 6c 2e 45 52 52 4f 52 29 3b 0d 0a 76 61 evel.ERROR);..va
0280: 72 20 6c 6f 67 67 65 72 49 6e 66 6f 20 3d 20 4c r loggerInfo = L
0290: 6f 67 34 6a 73 2e 67 65 74 4c 6f 67 67 65 72 28 og4js.getLogger(
02a0: 53 65 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 SelfScript.uniqu
02b0: 65 4e 61 6d 65 2b 22 69 6e 66 6f 22 29 3b 0d 0a eName+"info");..
02c0: 6c 6f 67 67 65 72 49 6e 66 6f 2e 61 64 64 41 70 loggerInfo.addAp
02d0: 70 65 6e 64 65 72 28 61 70 70 65 6e 64 65 72 29 pender(appender)
02e0: 3b 0d 0a 6c 6f 67 67 65 72 49 6e 66 6f 2e 73 65 ;..loggerInfo.se
02f0: 74 4c 65 76 65 6c 28 4c 6f 67 34 6a 73 2e 4c 65 tLevel(Log4js.Le
0300: 76 65 6c 2e 49 4e 46 4f 29 3b 0d 0a 0d 0a 0d 0a vel.INFO);......
0310: 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 ..events.connect
0320: 28 76 38 64 65 62 75 67 2c 20 22 6f 6e 44 65 62 (v8debug, "onDeb
0330: 75 67 45 76 65 6e 74 22 2c 20 53 65 6c 66 53 63 ugEvent", SelfSc
0340: 72 69 70 74 2e 53 65 6c 66 29 0d 0a 73 74 64 63 ript.Self)..stdc
0350: 6f 6d 6d 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 ommands.CDebug.B
0360: 72 65 61 6b 2e 61 64 64 48 61 6e 64 6c 65 72 28 reak.addHandler(
0370: 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 2c SelfScript.self,
0380: 20 22 6f 6e 53 74 6f 70 44 65 62 75 67 22 29 0d "onStopDebug").
0390: 0a 0d 0a 76 61 72 20 66 6f 72 6d 20 3d 20 6c 6f ...var form = lo
03a0: 61 64 53 63 72 69 70 74 46 6f 72 6d 28 53 65 6c adScriptForm(Sel
03b0: 66 53 63 72 69 70 74 2e 66 75 6c 6c 50 61 74 68 fScript.fullPath
03c0: 2e 72 65 70 6c 61 63 65 28 2f 6a 73 24 2f 69 2c .replace(/js$/i,
03d0: 20 22 73 73 66 22 29 2c 20 53 65 6c 66 53 63 72 "ssf"), SelfScr
03e0: 69 70 74 2e 73 65 6c 66 29 0d 0a 66 6f 72 6d 2e ipt.self)..form.
03f0: d0 9a d0 bb d1 8e d1 87 d0 a1 d0 be d1 85 d1 80 ................
0400: d0 b0 d0 bd d0 b5 d0 bd d0 b8 d1 8f d0 9f d0 be ................
0410: d0 bb d0 be d0 b6 d0 b5 d0 bd d0 b8 d1 8f d0 9e ................
0420: d0 ba d0 bd d0 b0 20 3d 20 22 77 61 74 63 68 5f ...... = "watch_
0430: 65 78 74 22 0d 0a 66 6f 72 6d 2e d0 9f d0 b5 d1 ext"..form......
0440: 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 ................
0450: 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 9a ................
0460: d0 be d0 bb d0 be d0 bd d0 ba d0 b8 2e d0 94 d0 ................
0470: be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 22 4d .............("M
0480: 6f 64 69 66 69 65 64 22 29 0d 0a 76 61 72 20 72 odified")..var r
0490: 4d 6f 64 75 6c 65 20 3d 20 66 6f 72 6d 2e d0 9f Module = form...
04a0: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b ................
04b0: d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 ................
04c0: 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 94 ................
04d0: d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 29 ..............()
04e0: 3b 0d 0a 72 4d 6f 64 75 6c 65 2e d0 9d d0 b0 d0 ;..rModule......
04f0: b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 3d 20 22 d0 ........... = ".
0500: 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 ................
0510: 8b d0 b5 20 d0 bc d0 be d0 b4 d1 83 d0 bb d1 8f ... ............
0520: 22 3b 0d 0a 76 61 72 20 72 50 61 72 61 6d 73 20 ";..var rParams
0530: 3d 20 66 6f 72 6d 2e d0 9f d0 b5 d1 80 d0 b5 d0 = form..........
0540: bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 ................
0550: bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a1 d1 82 d1 80 ................
0560: d0 be d0 ba d0 b8 2e d0 94 d0 be d0 b1 d0 b0 d0 ................
0570: b2 d0 b8 d1 82 d1 8c 28 29 3b 0d 0a 72 50 61 72 .......();..rPar
0580: 61 6d 73 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd ams.............
0590: d0 b8 d0 b5 20 3d 20 22 d0 9f d0 b0 d1 80 d0 b0 .... = "........
05a0: d0 bc d0 b5 d1 82 d1 80 d1 8b 20 d0 bc d0 b5 d1 .......... .....
05b0: 82 d0 be d0 b4 d0 b0 22 3b 0d 0a 76 61 72 20 72 .......";..var r
05c0: 4c 6f 63 61 6c 20 3d 20 66 6f 72 6d 2e d0 9f d0 Local = form....
05d0: b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 ................
05e0: b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e ................
05f0: d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 94 d0 ................
0600: be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 29 3b .............();
0610: 0d 0a 72 4c 6f 63 61 6c 2e d0 9d d0 b0 d0 b7 d0 ..rLocal........
0620: b2 d0 b0 d0 bd d0 b8 d0 b5 20 3d 20 22 d0 9b d0 ......... = "...
0630: be d0 ba d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b5 20 ...............
0640: d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd ................
0650: d1 8b d0 b5 22 3b 0d 0a 76 61 72 20 72 48 61 6e ....";..var rHan
0660: 64 73 20 3d 20 66 6f 72 6d 2e d0 9f d0 b5 d1 80 ds = form.......
0670: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e ................
0680: d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a1 d1 ................
0690: 82 d1 80 d0 be d0 ba d0 b8 2e d0 94 d0 be d0 b1 ................
06a0: d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 29 3b 0d 0a 72 ..........();..r
06b0: 48 61 6e 64 73 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 Hands...........
06c0: d0 bd d0 b8 d0 b5 20 3d 20 22 d0 a2 d0 b0 d0 b1 ...... = "......
06d0: d0 bb d0 be 22 3b 0d 0a 67 65 74 52 6f 77 28 72 ....";..getRow(r
06e0: 48 61 6e 64 73 2c 20 27 27 29 3b 0d 0a 76 61 72 Hands, '');..var
06f0: 20 63 6f 6c 6f 72 52 65 64 20 3d 20 76 38 6e 65 colorRed = v8ne
0700: 77 28 22 d0 a6 d0 b2 d0 b5 d1 82 22 2c 20 32 35 w("........", 25
0710: 35 2c 20 30 2c 20 30 29 2c 20 63 6f 6c 6f 72 47 5, 0, 0), colorG
0720: 72 61 79 20 3d 20 76 38 6e 65 77 28 22 d0 a6 d0 ray = v8new("...
0730: b2 d0 b5 d1 82 22 2c 20 32 30 30 2c 20 32 30 30 .....", 200, 200
0740: 2c 20 32 30 30 29 0d 0a 76 61 72 20 63 75 72 56 , 200)..var curV
0750: 69 65 77 48 77 6e 64 20 3d 20 22 22 3b 0d 0a 76 iewHwnd = "";..v
0760: 61 72 20 63 75 72 53 79 6e 74 61 78 41 6e 61 6c ar curSyntaxAnal
0770: 79 73 69 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 76 61 ysis = null;..va
0780: 72 20 6e 65 65 64 54 65 73 74 4d 6f 64 69 66 69 r needTestModifi
0790: 65 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 76 61 72 ed = false;..var
07a0: 20 74 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e timerExpression
07b0: 55 70 64 61 74 65 72 20 3d 20 6e 75 6c 6c 3b 0d Updater = null;.
07c0: 0a 76 61 72 20 76 61 6c 75 65 42 72 6b 70 74 43 .var valueBrkptC
07d0: 6f 6e 64 20 3d 20 22 22 3b 0d 0a 0d 0a 53 65 6c ond = "";....Sel
07e0: 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 fScript.self['ma
07f0: 63 72 6f 73 d0 9e d1 82 d0 ba d1 80 d1 8b d1 82 cros............
0800: d1 8c 20 d0 be d0 ba d0 bd d0 be 20 d0 be d1 82 .. ........ ....
0810: d0 bb d0 b0 d0 b4 d0 ba d0 b8 27 5d 20 3d 20 66 ..........'] = f
0820: 75 6e 63 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 09 0d unction()..{....
0830: 0a 20 20 20 20 66 6f 72 6d 2e 4f 70 65 6e 28 29 . form.Open()
0840: 20 2f 2f 20 d0 9f d0 be d0 ba d0 b0 d0 b6 d0 b5 // ............
0850: d0 bc 20 d0 be d0 ba d0 bd d0 be 0d 0a 7d 0d 0a .. ..........}..
0860: 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c ..SelfScript.sel
0870: 66 5b 27 6d 61 63 72 6f 73 d0 9f d0 b5 d1 80 d0 f['macros.......
0880: b5 d0 ba d0 bb d1 8e d1 87 d0 b8 d1 82 d1 8c d0 ................
0890: b0 d0 b2 d1 82 d0 be d0 be d0 b1 d0 bd d0 be d0 ................
08a0: b2 d0 bb d0 b5 d0 bd d0 b8 d0 b5 27 5d 20 3d 20 ...........'] =
08b0: 66 75 6e 63 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 20 function()..{..
08c0: 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 logger.debug(
08d0: 74 68 69 73 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 this.name);..
08e0: 20 69 66 20 28 21 74 69 6d 65 72 45 78 70 72 65 if (!timerExpre
08f0: 73 73 69 6f 6e 55 70 64 61 74 65 72 29 7b 0d 0a ssionUpdater){..
0900: 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 logger.d
0910: 65 62 75 67 28 22 74 69 6d 65 72 45 78 70 72 65 ebug("timerExpre
0920: 73 73 69 6f 6e 55 70 64 61 74 65 72 3a 20 22 2b ssionUpdater: "+
0930: 74 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 timerExpressionU
0940: 70 64 61 74 65 72 29 3b 0d 0a 20 20 20 20 7d 0d pdater);.. }.
0950: 0a 20 20 20 20 65 6c 73 65 20 7b 0d 0a 0d 0a 20 . else {....
0960: 20 20 20 20 20 20 20 74 69 6d 65 72 45 78 70 72 timerExpr
0970: 65 73 73 69 6f 6e 55 70 64 61 74 65 72 2e 73 74 essionUpdater.st
0980: 6f 70 20 3d 20 21 74 69 6d 65 72 45 78 70 72 65 op = !timerExpre
0990: 73 73 69 6f 6e 55 70 64 61 74 65 72 2e 73 74 6f ssionUpdater.sto
09a0: 70 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 4d 65 p;.. //Me
09b0: 73 73 61 67 65 28 22 d0 a2 d0 b5 d0 bf d0 b5 d1 ssage(".........
09c0: 80 d1 8c 20 d0 b0 d0 b2 d1 82 d0 be d0 be d0 b1 ... ............
09d0: d0 bd d0 be d0 b2 d0 bb d0 b5 d0 bd d0 b8 d0 b5 ................
09e0: 20 22 2b 74 69 6d 65 72 45 78 70 72 65 73 73 69 "+timerExpressi
09f0: 6f 6e 55 70 64 61 74 65 72 2e 73 74 6f 70 3f 22 onUpdater.stop?"
0a00: d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 bb ................
0a10: d0 b5 d0 bd d0 bd d0 be 22 20 3a 20 22 d0 b2 d0 ........" : "...
0a20: ba d0 bb d1 8e d1 87 d0 b5 d0 bd d0 be 22 29 3b .............");
0a30: 0d 0a 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 .. logger
0a40: 49 6e 66 6f 2e 69 6e 66 6f 28 22 74 69 6d 65 72 Info.info("timer
0a50: 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 ExpressionUpdate
0a60: 72 2e 73 74 6f 70 20 69 73 20 22 2b 74 69 6d 65 r.stop is "+time
0a70: 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 rExpressionUpdat
0a80: 65 72 2e 73 74 6f 70 29 3b 0d 0a 20 20 20 20 7d er.stop);.. }
0a90: 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 d0 92 d0 be d0 b7 ..}..../* ......
0aa0: d0 b2 d1 80 d0 b0 d1 89 d0 b0 d0 b5 d1 82 20 d0 .............. .
0ab0: bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 ...............
0ac0: d0 bc d0 b0 d0 ba d1 80 d0 be d1 81 d0 b0 20 d0 .............. .
0ad0: bf d0 be 20 d1 83 d0 bc d0 be d0 bb d1 87 d0 b0 ... ............
0ae0: d0 bd d0 b8 d1 8e 20 2d 20 d0 b2 d1 8b d0 b7 d1 ...... - .......
0af0: 8b d0 b2 d0 b0 d0 b5 d1 82 d1 81 d1 8f 2c 20 d0 ............., .
0b00: ba d0 be d0 b3 d0 b4 d0 b0 20 d0 bf d0 be d0 bb ......... ......
0b10: d1 8c d0 b7 d0 be d0 b2 d0 b0 d1 82 d0 b5 d0 bb ................
0b20: d1 8c 20 0d 0a d0 b4 d0 b2 d0 b0 d0 b6 d0 b4 d1 .. .............
0b30: 8b 20 d1 89 d0 b5 d0 bb d0 ba d0 b0 d0 b5 d1 82 . ..............
0b40: 20 d0 bc d1 8b d1 88 d1 8c d1 8e 20 d0 bf d0 be .......... ....
0b50: 20 d0 bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d1 ...............
0b60: 8e 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 . ..............
0b70: 20 d0 b2 20 d0 be d0 ba d0 bd d0 b5 20 d0 a1 d0 .. ........ ...
0b80: bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1 82 d0 b0 2e ................
0b90: 20 2a 2f 0d 0a 66 75 6e 63 74 69 6f 6e 20 67 65 */..function ge
0ba0: 74 44 65 66 61 75 6c 74 4d 61 63 72 6f 73 28 29 tDefaultMacros()
0bb0: 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 27 {.. return '
0bc0: d0 9f d0 b5 d1 80 d0 b5 d0 ba d0 bb d1 8e d1 87 ................
0bd0: d0 b8 d1 82 d1 8c d0 b0 d0 b2 d1 82 d0 be d0 be ................
0be0: d0 b1 d0 bd d0 be d0 b2 d0 bb d0 b5 d0 bd d0 b8 ................
0bf0: d0 b5 27 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 ..';..}....funct
0c00: 69 6f 6e 20 73 65 74 54 69 6d 65 46 6f 72 55 70 ion setTimeForUp
0c10: 64 61 74 65 45 78 70 72 65 73 73 69 6f 6e 28 74 dateExpression(t
0c20: 69 6d 65 6f 75 74 29 20 7b 0d 0a 0d 0a 20 20 20 imeout) {....
0c30: 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 68 logger.debug(th
0c40: 69 73 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 69 is.name);.. i
0c50: 66 20 28 21 74 69 6d 65 72 45 78 70 72 65 73 73 f (!timerExpress
0c60: 69 6f 6e 55 70 64 61 74 65 72 29 7b 0d 0a 20 20 ionUpdater){..
0c70: 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20 } else {..
0c80: 20 20 20 20 69 66 20 28 28 74 69 6d 65 72 45 78 if ((timerEx
0c90: 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 72 2e pressionUpdater.
0ca0: 74 69 6d 65 6f 75 74 20 2b 20 74 69 6d 65 6f 75 timeout + timeou
0cb0: 74 29 20 3c 20 30 20 29 20 7b 0d 0a 20 20 20 20 t) < 0 ) {..
0cc0: 20 20 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 Message(
0cd0: 22 d0 92 d1 80 d0 b5 d0 bc d1 8f 20 d0 bd d0 b8 ".......... ....
0ce0: d0 b6 d0 b5 20 d0 bd d1 83 d0 bb d1 8f 20 d0 bd .... ........ ..
0cf0: d0 b5 d0 bb d1 8c d0 b7 d1 8f 2e 20 22 2b 28 74 ........... "+(t
0d00: 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 imerExpressionUp
0d10: 64 61 74 65 72 2e 74 69 6d 65 6f 75 74 20 2b 20 dater.timeout +
0d20: 74 69 6d 65 6f 75 74 29 29 3b 0d 0a 20 20 20 20 timeout));..
0d30: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d return;.
0d40: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 . }..
0d50: 20 20 20 20 74 69 6d 65 72 45 78 70 72 65 73 73 timerExpress
0d60: 69 6f 6e 55 70 64 61 74 65 72 2e 74 69 6d 65 6f ionUpdater.timeo
0d70: 75 74 20 3d 20 74 69 6d 65 72 45 78 70 72 65 73 ut = timerExpres
0d80: 73 69 6f 6e 55 70 64 61 74 65 72 2e 74 69 6d 65 sionUpdater.time
0d90: 6f 75 74 20 2b 20 74 69 6d 65 6f 75 74 3b 0d 0a out + timeout;..
0da0: 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 6c 6f 67 }.... log
0db0: 67 65 72 2e 64 65 62 75 67 28 74 69 6d 65 72 45 ger.debug(timerE
0dc0: 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 72 xpressionUpdater
0dd0: 2e 74 69 6d 65 6f 75 74 29 3b 0d 0a 0d 0a 7d 0d .timeout);....}.
0de0: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 68 6f 6f 6b ...function hook
0df0: 42 72 6b 70 74 43 6f 6e 64 28 64 6c 67 49 6e 66 BrkptCond(dlgInf
0e00: 6f 29 0d 0a 7b 0d 0a 20 20 20 20 69 66 28 64 6c o)..{.. if(dl
0e10: 67 49 6e 66 6f 2e 73 74 61 67 65 20 3d 3d 20 6f gInfo.stage == o
0e20: 70 65 6e 4d 6f 64 61 6c 57 6e 64 29 0d 0a 20 20 penModalWnd)..
0e30: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 64 6c 67 {.. dlg
0e40: 49 6e 66 6f 2e 66 6f 72 6d 2e 67 65 74 43 6f 6e Info.form.getCon
0e50: 74 72 6f 6c 28 22 43 6f 6e 64 69 74 69 6f 6e 22 trol("Condition"
0e60: 29 2e 76 61 6c 75 65 20 3d 20 76 61 6c 75 65 42 ).value = valueB
0e70: 72 6b 70 74 43 6f 6e 64 3b 0d 0a 0d 0a 20 20 20 rkptCond;....
0e80: 20 20 20 20 20 64 6c 67 49 6e 66 6f 2e 63 61 6e dlgInfo.can
0e90: 63 65 6c 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 cel = false;..
0ea0: 20 20 20 20 20 20 64 6c 67 49 6e 66 6f 2e 72 65 dlgInfo.re
0eb0: 73 75 6c 74 20 3d 20 6d 62 61 4f 6b 3b 0d 0a 20 sult = mbaOk;..
0ec0: 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 }..}....funct
0ed0: 69 6f 6e 20 68 6f 6f 6b 42 72 6b 70 74 43 6f 6e ion hookBrkptCon
0ee0: 64 41 75 74 6f 28 64 6c 67 49 6e 66 6f 29 0d 0a dAuto(dlgInfo)..
0ef0: 7b 0d 0a 20 20 20 20 69 66 28 64 6c 67 49 6e 66 {.. if(dlgInf
0f00: 6f 2e 73 74 61 67 65 20 3d 3d 20 6f 70 65 6e 4d o.stage == openM
0f10: 6f 64 61 6c 57 6e 64 29 0d 0a 20 20 20 20 7b 0d odalWnd).. {.
0f20: 0a 20 20 20 20 20 20 20 20 64 6c 67 49 6e 66 6f . dlgInfo
0f30: 2e 66 6f 72 6d 2e 67 65 74 43 6f 6e 74 72 6f 6c .form.getControl
0f40: 28 22 43 6f 6e 64 69 74 69 6f 6e 22 29 2e 76 61 ("Condition").va
0f50: 6c 75 65 20 3d 20 76 61 6c 75 65 42 72 6b 70 74 lue = valueBrkpt
0f60: 43 6f 6e 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 Cond;....
0f70: 20 64 6c 67 49 6e 66 6f 2e 63 61 6e 63 65 6c 20 dlgInfo.cancel
0f80: 3d 20 74 72 75 65 20 20 20 2f 2f 20 d0 9e d1 82 = true // ....
0f90: d0 bc d0 b5 d0 bd d1 8f d0 b5 d0 bc 20 d0 bf d0 ............ ...
0fa0: be d0 ba d0 b0 d0 b7 20 d0 b4 d0 b8 d0 b0 d0 bb ....... ........
0fb0: d0 be d0 b3 d0 b0 0d 0a 20 20 20 20 20 20 20 20 ........
0fc0: 64 6c 67 49 6e 66 6f 2e 72 65 73 75 6c 74 20 3d dlgInfo.result =
0fd0: 20 31 20 20 20 20 20 20 2f 2f 20 d0 ba d0 b0 d0 1 // .....
0fe0: ba 20 d0 b1 d1 83 d0 b4 d1 82 d0 be 20 d0 b2 20 . .......... ..
0ff0: d0 bd d0 b5 d0 bc 20 d0 bd d0 b0 d0 b6 d0 b0 d0 ...... .........
1000: bb d0 b8 20 d0 9e d0 ba 0d 0a 20 20 20 20 7d 0d ... ...... }.
1010: 0a 7d 0d 0a 0d 0a 0d 0a 0d 0a 53 65 6c 66 53 63 .}........SelfSc
1020: 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f ript.self['macro
1030: 73 d0 a3 d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 s...............
1040: b8 d1 82 d1 8c 20 d1 82 d0 be d1 87 d0 ba d1 83 ..... ..........
1050: 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 ...............
1060: b0 20 d0 bf d0 be 20 d1 83 d1 81 d0 bb d0 be d0 . .... .........
1070: b2 d0 b8 d1 8e 27 5d 20 3d 20 66 75 6e 63 74 69 .....'] = functi
1080: 6f 6e 28 29 7b 0d 0a 20 20 20 20 69 66 20 28 21 on(){.. if (!
1090: 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 form............
10a0: bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e ................
10b0: d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd ................
10c0: d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba ................
10d0: d0 b8 2e d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 ................
10e0: 8f d0 a1 d1 82 d1 80 d0 be d0 ba d0 b0 29 20 7b .............) {
10f0: 0d 0a 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 .. logger
1100: 2e 65 72 72 6f 72 28 22 d0 9d d0 b5 20 d0 be d0 .error(".... ...
1110: bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0 ................
1120: bd d0 b0 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b0 ... ............
1130: d1 8f 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 20 .. ............
1140: d0 b4 d0 bb d1 8f 20 d0 b2 d1 8b d1 80 d0 b0 d0 ...... .........
1150: b6 d0 b5 d0 bd d0 b8 d1 8f 22 29 3b 0d 0a 20 20 .........");..
1160: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 return;..
1170: 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 }.. ..
1180: 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 77 events.connect(w
1190: 69 6e 64 6f 77 73 2c 20 22 6f 6e 44 6f 4d 6f 64 indows, "onDoMod
11a0: 61 6c 22 2c 20 53 65 6c 66 53 63 72 69 70 74 2e al", SelfScript.
11b0: 73 65 6c 66 2c 20 22 68 6f 6f 6b 42 72 6b 70 74 self, "hookBrkpt
11c0: 43 6f 6e 64 22 29 3b 0d 0a 20 20 20 20 76 61 72 Cond");.. var
11d0: 20 73 74 61 74 65 20 3d 20 73 74 64 63 6f 6d 6d state = stdcomm
11e0: 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 72 6b 70 ands.CDebug.Brkp
11f0: 74 43 6f 6e 64 2e 67 65 74 53 74 61 74 65 28 29 tCond.getState()
1200: 3b 0d 0a 20 20 20 20 76 61 72 20 63 75 72 52 6f ;.. var curRo
1210: 77 20 3d 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 w = form........
1220: bc d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 ................
1230: bc d1 8b 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 ................
1240: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 ................
1250: d0 b4 d0 ba d0 b8 2e d0 a2 d0 b5 d0 ba d1 83 d1 ................
1260: 89 d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 be d0 ba d0 ................
1270: b0 3b 0d 0a 20 20 20 20 76 61 72 20 63 75 72 56 .;.. var curV
1280: 61 6c 75 65 20 3d 20 27 27 2b 63 75 72 52 6f 77 alue = ''+curRow
1290: 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 ................
12a0: b5 3b 0d 0a 20 20 20 20 76 61 72 20 6e 61 6d 65 .;.. var name
12b0: 20 3d 20 66 75 6c 6c 4e 61 6d 65 28 63 75 72 52 = fullName(curR
12c0: 6f 77 29 3b 0d 0a 20 20 20 20 76 61 6c 75 65 42 ow);.. valueB
12d0: 72 6b 70 74 43 6f 6e 64 20 3d 20 22 22 2b 20 6e rkptCond = ""+ n
12e0: 61 6d 65 20 2b 20 22 20 3d 20 22 2b 63 75 72 56 ame + " = "+curV
12f0: 61 6c 75 65 3b 0d 0a 20 20 20 20 73 74 64 63 6f alue;.. stdco
1300: 6d 6d 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 72 mmands.CDebug.Br
1310: 6b 70 74 43 6f 6e 64 2e 73 65 6e 64 28 29 3b 0d kptCond.send();.
1320: 0a 20 20 20 20 65 76 65 6e 74 73 2e 64 69 73 63 . events.disc
1330: 6f 6e 6e 65 63 74 28 77 69 6e 64 6f 77 73 2c 20 onnect(windows,
1340: 22 6f 6e 44 6f 4d 6f 64 61 6c 22 2c 20 53 65 6c "onDoModal", Sel
1350: 66 53 63 72 69 70 74 2e 73 65 6c 66 2c 20 22 68 fScript.self, "h
1360: 6f 6f 6b 42 72 6b 70 74 43 6f 6e 64 22 29 3b 0d ookBrkptCond");.
1370: 0a 20 20 20 20 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 . ..}....Self
1380: 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 Script.self['mac
1390: 72 6f 73 d0 a3 d1 81 d1 82 d0 b0 d0 bd d0 be d0 ros.............
13a0: b2 d0 b8 d1 82 d1 8c 20 d1 82 d0 be d1 87 d0 ba ....... ........
13b0: d1 83 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 .. .............
13c0: b2 d0 b0 20 d0 bf d0 be 20 d1 83 d1 81 d0 bb d0 ... .... .......
13d0: be d0 b2 d0 b8 d1 8e 20 d0 b4 d0 bb d1 8f 20 d0 ....... ...... .
13e0: b2 d1 8b d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0 bd d1 ................
13f0: 8b d1 85 20 d1 81 d1 82 d1 80 d0 be d0 ba 27 5d ... ..........']
1400: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 7b 0d 0a = function(){..
1410: 20 20 20 20 69 66 20 28 21 66 6f 72 6d 2e d0 ad if (!form...
1420: d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d1 8b d0 a4 ................
1430: d0 be d1 80 d0 bc d1 8b 2e d0 9f d0 b5 d1 80 d0 ................
1440: b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1 ................
1450: 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a2 d0 b5 ................
1460: d0 ba d1 83 d1 89 d0 b0 d1 8f d0 a1 d1 82 d1 80 ................
1470: d0 be d0 ba d0 b0 29 20 7b 0d 0a 20 20 20 20 20 ......) {..
1480: 20 20 20 6c 6f 67 67 65 72 2e 65 72 72 6f 72 28 logger.error(
1490: 22 d0 9d d0 b5 20 d0 be d0 bf d1 80 d0 b5 d0 b4 ".... ..........
14a0: d0 b5 d0 bb d0 b5 d0 bd d0 bd d0 b0 20 d1 82 d0 ............ ...
14b0: b5 d0 ba d1 83 d1 89 d0 b0 d1 8f 20 d1 81 d1 82 ........... ....
14c0: d1 80 d0 be d0 ba d0 b0 20 d0 b4 d0 bb d1 8f 20 ........ ......
14d0: d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 ................
14e0: d1 8f 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 72 ..");.. r
14f0: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 7d 0d 0a 0d eturn;.. }...
1500: 0a 20 20 20 20 76 61 72 20 77 6e 64 20 3d 20 47 . var wnd = G
1510: 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d etTextWindow();.
1520: 0a 20 20 20 20 69 66 28 21 77 6e 64 29 0d 0a 20 . if(!wnd)..
1530: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a return;..
1540: 20 20 20 20 76 69 65 77 20 3d 20 77 6e 64 2e 47 view = wnd.G
1550: 65 74 56 69 65 77 28 29 3b 0d 0a 0d 0a 20 20 20 etView();....
1560: 20 76 61 72 20 63 75 72 52 6f 77 20 3d 20 66 6f var curRow = fo
1570: 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 rm..............
1580: 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f ................
1590: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b ................
15a0: d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 ................
15b0: 2e d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 8f d0 ................
15c0: a1 d1 82 d1 80 d0 be d0 ba d0 b0 3b 0d 0a 20 20 ...........;..
15d0: 20 20 76 61 72 20 63 75 72 56 61 6c 75 65 20 3d var curValue =
15e0: 20 27 27 2b 63 75 72 52 6f 77 2e d0 97 d0 bd d0 ''+curRow......
15f0: b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 3b 0d 0a 20 20 ...........;..
1600: 20 20 76 61 72 20 6e 61 6d 65 20 3d 20 66 75 6c var name = ful
1610: 6c 4e 61 6d 65 28 63 75 72 52 6f 77 29 3b 0d 0a lName(curRow);..
1620: 20 20 20 20 76 61 6c 75 65 42 72 6b 70 74 43 6f valueBrkptCo
1630: 6e 64 20 3d 20 22 22 2b 20 6e 61 6d 65 20 2b 20 nd = ""+ name +
1640: 22 20 3d 20 22 2b 63 75 72 56 61 6c 75 65 3b 0d " = "+curValue;.
1650: 0a 0d 0a 20 20 20 20 76 61 72 20 76 62 73 20 3d ... var vbs =
1660: 20 61 64 64 69 6e 73 2e 62 79 55 6e 69 71 75 65 addins.byUnique
1670: 4e 61 6d 65 28 22 76 62 73 22 29 2e 6f 62 6a 65 Name("vbs").obje
1680: 63 74 0d 0a 20 20 20 20 76 62 73 2e 76 61 72 30 ct.. vbs.var0
1690: 20 3d 20 76 61 6c 75 65 42 72 6b 70 74 43 6f 6e = valueBrkptCon
16a0: 64 3b 20 76 62 73 2e 76 61 72 31 20 3d 20 22 d0 d; vbs.var1 = ".
16b0: 92 d0 b2 d0 b5 d0 b4 d0 b8 d1 82 d0 b5 20 d0 b2 ............. ..
16c0: d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d0 b5 ................
16d0: 22 3b 20 76 62 73 2e 76 61 72 32 20 3d 20 30 2c "; vbs.var2 = 0,
16e0: 20 76 62 73 2e 76 61 72 33 20 3d 20 66 61 6c 73 vbs.var3 = fals
16f0: 65 3b 0d 0a 20 20 20 20 69 66 20 28 76 62 73 2e e;.. if (vbs.
1700: 44 6f 45 76 61 6c 28 22 49 6e 70 75 74 53 74 72 DoEval("InputStr
1710: 69 6e 67 28 76 61 72 30 2c 20 76 61 72 31 2c 20 ing(var0, var1,
1720: 76 61 72 32 2c 20 76 61 72 33 29 22 29 29 20 7b var2, var3)")) {
1730: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 .. va
1740: 6c 75 65 42 72 6b 70 74 43 6f 6e 64 20 20 3d 20 lueBrkptCond =
1750: 76 62 73 2e 76 61 72 30 3b 0d 0a 20 20 20 20 7d vbs.var0;.. }
1760: 0d 0a 20 20 20 20 69 66 20 28 76 61 6c 75 65 42 .. if (valueB
1770: 72 6b 70 74 43 6f 6e 64 2e 6c 65 6e 67 74 68 20 rkptCond.length
1780: 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 72 65 = 0).. re
1790: 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 65 76 65 turn;.... eve
17a0: 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 77 69 6e 64 nts.connect(wind
17b0: 6f 77 73 2c 20 22 6f 6e 44 6f 4d 6f 64 61 6c 22 ows, "onDoModal"
17c0: 2c 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c , SelfScript.sel
17d0: 66 2c 20 22 68 6f 6f 6b 42 72 6b 70 74 43 6f 6e f, "hookBrkptCon
17e0: 64 41 75 74 6f 22 29 3b 0d 0a 20 20 20 20 76 61 dAuto");.. va
17f0: 72 20 73 74 61 74 65 20 3d 20 73 74 64 63 6f 6d r state = stdcom
1800: 6d 61 6e 64 73 2e 43 44 65 62 75 67 2e 42 72 6b mands.CDebug.Brk
1810: 70 74 43 6f 6e 64 2e 67 65 74 53 74 61 74 65 28 ptCond.getState(
1820: 29 3b 0d 0a 0d 0a 20 20 20 20 73 65 6c 20 3d 20 );.... sel =
1830: 77 6e 64 2e 47 65 74 53 65 6c 65 63 74 69 6f 6e wnd.GetSelection
1840: 28 29 3b 0d 0a 20 20 20 20 66 6f 72 20 28 76 61 ();.. for (va
1850: 72 20 69 20 3d 20 73 65 6c 2e 62 65 67 69 6e 52 r i = sel.beginR
1860: 6f 77 3b 20 69 3c 73 65 6c 2e 65 6e 64 52 6f 77 ow; i<sel.endRow
1870: 3b 20 69 2b 2b 29 7b 0d 0a 20 20 20 20 20 20 20 ; i++){..
1880: 20 73 74 64 63 6f 6d 6d 61 6e 64 73 2e 43 44 65 stdcommands.CDe
1890: 62 75 67 2e 42 72 6b 70 74 43 6f 6e 64 2e 73 65 bug.BrkptCond.se
18a0: 6e 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 77 nd();.. w
18b0: 6e 64 2e 53 65 74 43 61 72 65 74 50 6f 73 28 69 nd.SetCaretPos(i
18c0: 2c 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c 29 3b , sel.beginCol);
18d0: 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 .. }.. ..
18e0: 20 20 20 65 76 65 6e 74 73 2e 64 69 73 63 6f 6e events.discon
18f0: 6e 65 63 74 28 77 69 6e 64 6f 77 73 2c 20 22 6f nect(windows, "o
1900: 6e 44 6f 4d 6f 64 61 6c 22 2c 20 53 65 6c 66 53 nDoModal", SelfS
1910: 63 72 69 70 74 2e 73 65 6c 66 2c 20 22 68 6f 6f cript.self, "hoo
1920: 6b 42 72 6b 70 74 43 6f 6e 64 41 75 74 6f 22 29 kBrkptCondAuto")
1930: 3b 0d 0a 20 20 20 20 76 61 6c 75 65 42 72 6b 70 ;.. valueBrkp
1940: 74 43 6f 6e 64 20 3d 20 22 22 3b 0d 0a 20 20 20 tCond = "";..
1950: 20 6c 6f 67 67 65 72 49 6e 66 6f 2e 69 6e 66 6f loggerInfo.info
1960: 28 22 d0 a2 d0 be d1 87 d0 ba d0 b8 20 d0 be d1 (".......... ...
1970: 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b0 20 d1 83 ............. ..
1980: d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 bb d0 b5 ................
1990: d0 bd d0 bd d1 8b 21 22 29 3b 0d 0a 20 20 20 20 ......!");..
19a0: 0d 0a 7d 0d 0a 0d 0a 0d 0a 53 65 6c 66 53 63 72 ..}......SelfScr
19b0: 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 ipt.self['macros
19c0: d0 a3 d0 b2 d0 b5 d0 bb d0 b8 d1 87 d0 b8 d1 82 ................
19d0: d1 8c 20 d0 bf d0 b5 d1 80 d0 b8 d0 be d0 b4 20 .. ............
19e0: d0 be d0 b1 d0 bd d0 be d0 b2 d0 bb d0 b5 d0 bd ................
19f0: d0 b8 d1 8f 20 d0 bd d0 b0 20 31 20 d1 81 d0 b5 .... .... 1 ....
1a00: d0 ba 2e 20 27 5d 20 3d 20 66 75 6e 63 74 69 6f ... '] = functio
1a10: 6e 28 29 20 7b 0d 0a 20 20 20 20 73 65 74 54 69 n() {.. setTi
1a20: 6d 65 46 6f 72 55 70 64 61 74 65 45 78 70 72 65 meForUpdateExpre
1a30: 73 73 69 6f 6e 28 31 30 30 30 29 3b 0d 0a 7d 0d ssion(1000);..}.
1a40: 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 ...SelfScript.se
1a50: 6c 66 5b 27 6d 61 63 72 6f 73 d0 a3 d0 bc d0 b5 lf['macros......
1a60: d0 bd d1 8c d1 88 d0 b8 d1 82 d1 8c 20 d0 bf d0 ............ ...
1a70: b5 d1 80 d0 b8 d0 be d0 b4 20 d0 be d0 b1 d0 bd ......... ......
1a80: d0 be d0 b2 d0 bb d0 b5 d0 bd d0 b8 d1 8f 20 d0 .............. .
1a90: bd d0 b0 20 31 20 d1 81 d0 b5 d0 ba 2e 20 27 5d ... 1 ....... ']
1aa0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d = function() {.
1ab0: 0a 20 20 20 20 73 65 74 54 69 6d 65 46 6f 72 55 . setTimeForU
1ac0: 70 64 61 74 65 45 78 70 72 65 73 73 69 6f 6e 28 pdateExpression(
1ad0: 2d 31 30 30 30 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f -1000);..}....//
1ae0: 54 4f 44 4f 3a 20 d0 94 d0 be d0 b1 d0 b0 d0 b2 TODO: ..........
1af0: d0 b8 d1 82 d1 8c 20 d0 b2 d1 8b d1 87 d0 b8 d1 ...... .........
1b00: 81 d0 bb d0 b5 d0 bd d0 b8 d0 b5 20 d0 b2 d1 8b ........... ....
1b10: d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f 2e 20 ...............
1b20: 0d 0a 66 75 6e 63 74 69 6f 6e 20 6f 6e 44 65 62 ..function onDeb
1b30: 75 67 45 76 65 6e 74 28 65 76 65 6e 74 49 44 2c ugEvent(eventID,
1b40: 20 65 76 65 6e 74 50 61 72 61 6d 29 0d 0a 7b 0d eventParam)..{.
1b50: 0a 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 . logger.debu
1b60: 67 28 74 68 69 73 2e 6e 61 6d 65 29 3b 0d 0a 20 g(this.name);..
1b70: 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 logger.debug(
1b80: 65 76 65 6e 74 49 44 29 3b 0d 0a 20 20 20 20 69 eventID);.. i
1b90: 66 20 28 21 74 69 6d 65 72 45 78 70 72 65 73 73 f (!timerExpress
1ba0: 69 6f 6e 55 70 64 61 74 65 72 29 7b 0d 0a 20 20 ionUpdater){..
1bb0: 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 logger.deb
1bc0: 75 67 28 22 74 69 6d 65 72 45 78 70 72 65 73 73 ug("timerExpress
1bd0: 69 6f 6e 55 70 64 61 74 65 72 20 d0 bd d0 b5 20 ionUpdater ....
1be0: d0 be d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5 ................
1bf0: d0 bd 20 22 2b 74 69 6d 65 72 45 78 70 72 65 73 .. "+timerExpres
1c00: 73 69 6f 6e 55 70 64 61 74 65 72 29 0d 0a 20 20 sionUpdater)..
1c10: 20 20 20 20 20 20 74 69 6d 65 72 45 78 70 72 65 timerExpre
1c20: 73 73 69 6f 6e 55 70 64 61 74 65 72 20 3d 20 47 ssionUpdater = G
1c30: 65 74 54 69 6d 65 72 45 78 70 72 65 73 73 69 6f etTimerExpressio
1c40: 6e 55 70 64 61 74 65 72 28 29 3b 0d 0a 20 20 20 nUpdater();..
1c50: 20 7d 0d 0a 20 20 20 20 2f 2f 4d 65 73 73 61 67 }.. //Messag
1c60: 65 28 22 53 43 52 49 50 54 20 22 20 2b 20 65 76 e("SCRIPT " + ev
1c70: 65 6e 74 49 44 20 2b 20 22 2c 20 22 20 2b 20 65 entID + ", " + e
1c80: 76 65 6e 74 50 61 72 61 6d 29 3b 0d 0a 20 20 20 ventParam);..
1c90: 20 69 66 28 65 76 65 6e 74 49 44 20 3d 3d 20 22 if(eventID == "
1ca0: 7b 46 45 37 43 36 44 44 44 2d 37 43 39 39 2d 34 {FE7C6DDD-7C99-4
1cb0: 32 46 38 2d 42 41 31 34 2d 43 44 44 33 30 45 44 2F8-BA14-CDD30ED
1cc0: 46 32 45 46 31 7d 22 29 0d 0a 20 20 20 20 7b 0d F2EF1}").. {.
1cd0: 0a 20 20 20 20 20 20 20 20 76 61 72 20 76 69 65 . var vie
1ce0: 77 20 3d 20 77 69 6e 64 6f 77 73 2e 67 65 74 41 w = windows.getA
1cf0: 63 74 69 76 65 56 69 65 77 28 29 0d 0a 20 20 20 ctiveView()..
1d00: 20 20 20 20 20 66 6f 72 6d 2e 4f 70 65 6e 28 29 form.Open()
1d10: 20 2f 2f 20 d0 9f d0 be d0 ba d0 b0 d0 b6 d0 b5 // ............
1d20: d0 bc 20 d0 be d0 ba d0 bd d0 be 0d 0a 20 20 20 .. ..........
1d30: 20 20 20 20 20 69 66 28 76 69 65 77 29 0d 0a 20 if(view)..
1d40: 20 20 20 20 20 20 20 20 20 20 20 76 69 65 77 2e view.
1d50: 61 63 74 69 76 61 74 65 28 29 0d 0a 20 20 20 20 activate()..
1d60: 7d 0d 0a 20 20 20 20 65 6c 73 65 20 69 66 28 65 }.. else if(e
1d70: 76 65 6e 74 49 44 20 3d 3d 20 22 7b 37 31 35 30 ventID == "{7150
1d80: 31 41 39 44 2d 43 44 33 34 2d 34 32 37 44 2d 38 1A9D-CD34-427D-8
1d90: 31 42 36 2d 35 36 32 34 39 31 42 45 46 39 34 35 1B6-562491BEF945
1da0: 7d 22 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 }").. {..
1db0: 20 20 20 20 63 6c 65 61 72 45 78 70 72 65 73 73 clearExpress
1dc0: 69 6f 6e 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 ions();..
1dd0: 20 74 69 6d 65 72 45 78 70 72 65 73 73 69 6f 6e timerExpression
1de0: 55 70 64 61 74 65 72 2e 73 74 6f 70 57 61 74 63 Updater.stopWatc
1df0: 68 28 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 h();.. }..
1e00: 20 69 66 28 65 76 65 6e 74 49 44 20 3d 3d 20 22 if(eventID == "
1e10: 7b 35 42 35 46 39 32 38 44 2d 44 46 32 44 2d 34 {5B5F928D-DF2D-4
1e20: 38 30 34 2d 42 32 44 30 2d 42 34 35 33 31 36 33 804-B2D0-B453163
1e30: 41 32 43 34 43 7d 22 29 0d 0a 20 20 20 20 7b 0d A2C4C}").. {.
1e40: 0a 20 20 20 20 20 20 20 20 2f 2f 4d 65 73 73 61 . //Messa
1e50: 67 65 28 22 65 76 65 6e 74 50 61 72 61 6d 20 22 ge("eventParam "
1e60: 20 2b 20 65 76 65 6e 74 50 61 72 61 6d 29 3b 0d + eventParam);.
1e70: 0a 20 20 20 20 20 20 20 20 69 66 28 65 76 65 6e . if(even
1e80: 74 50 61 72 61 6d 20 3d 3d 20 33 37 20 7c 7c 20 tParam == 37 ||
1e90: 65 76 65 6e 74 50 61 72 61 6d 20 3d 3d 20 32 34 eventParam == 24
1ea0: 20 7c 7c 20 65 76 65 6e 74 50 61 72 61 6d 20 3d || eventParam =
1eb0: 3d 20 33 30 20 29 20 20 20 20 2f 2f 20 d0 9e d1 = 30 ) // ...
1ec0: 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0 bb d0 ................
1ed0: b8 d1 81 d1 8c 20 d0 b2 20 d1 82 d0 be d1 87 d0 ..... .. .......
1ee0: ba d0 b5 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be ... ............
1ef0: d0 b2 d0 b0 0d 0a 20 20 20 20 20 20 20 20 7b 0d ...... {.
1f00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 4d . //M
1f10: 65 73 73 61 67 65 28 22 53 43 52 49 50 54 20 d0 essage("SCRIPT .
1f20: 9e d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0 ................
1f30: bb d0 b8 d1 81 d1 8c 20 d0 b2 20 d1 82 d0 be d1 ....... .. .....
1f40: 87 d0 ba d0 b5 20 d0 be d1 81 d1 82 d0 b0 d0 bd ..... ..........
1f50: d0 be d0 b2 d0 b0 22 29 0d 0a 20 20 20 20 20 20 ......")..
1f60: 20 20 20 20 20 20 6e 65 65 64 54 65 73 74 4d 6f needTestMo
1f70: 64 69 66 69 65 64 20 3d 20 74 72 75 65 0d 0a 20 dified = true..
1f80: 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 6c 4c fillL
1f90: 6f 63 61 6c 56 61 72 69 61 62 6c 65 73 28 29 20 ocalVariables()
1fa0: 20 20 20 2f 2f 20 d0 97 d0 b0 d0 bf d0 be d0 bb // ..........
1fb0: d0 bd d0 b8 d0 bc 20 d0 bb d0 be d0 ba d0 b0 d0 ...... .........
1fc0: bb d1 8c d0 bd d1 8b d0 b5 20 d0 bf d0 b5 d1 80 ......... ......
1fd0: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 0d 0a ................
1fe0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 65 76 //ev
1ff0: 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 44 65 73 ents.connect(Des
2000: 69 67 6e 65 72 2c 20 22 6f 6e 49 64 6c 65 22 2c igner, "onIdle",
2010: 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 SelfScript.self
2020: 29 20 2f 2f 20 d0 91 d1 83 d0 b4 d0 b5 d0 bc 20 ) // ..........
2030: d0 b8 d1 85 20 d0 be d0 b1 d0 bd d0 be d0 b2 d0 .... ...........
2040: bb d1 8f d1 82 d1 8c 0d 0a 20 20 20 20 20 20 20 .........
2050: 20 20 20 20 20 74 69 6d 65 72 45 78 70 72 65 73 timerExpres
2060: 73 69 6f 6e 55 70 64 61 74 65 72 2e 75 70 64 61 sionUpdater.upda
2070: 74 65 54 69 6d 65 72 28 29 3b 0d 0a 20 20 20 20 teTimer();..
2080: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d }.. }..}.
2090: 0a 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 69 73 .....function is
20a0: 44 65 62 75 67 45 76 61 6c 45 6e 61 62 6c 65 64 DebugEvalEnabled
20b0: 28 29 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 20 d0 9a ()..{.. // ..
20c0: d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 22 d0 a8 ............ "..
20d0: d0 b0 d0 b3 d0 bd d1 83 d1 82 d1 8c 20 d0 b2 22 ............ .."
20e0: 20 d0 bd d0 b5 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 ...............
20f0: bd d0 b0 20 2d 20 d0 b7 d0 bd d0 b0 d1 87 d0 b8 ... - ..........
2100: d1 82 2c 20 d0 bc d1 8b 20 d0 bd d0 b5 20 d0 b2 .., .... .... ..
2110: 20 d0 be d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 ...............
2120: b5 2e 20 d0 a1 d1 87 d0 b8 d1 82 d0 b0 d1 82 d1 .. .............
2130: 8c 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd . ..............
2140: d0 bd d1 8b d0 b5 20 d0 bd d0 b5 d0 bb d1 8c d0 ...... .........
2150: b7 d1 8f 2c 20 d0 b2 d0 be d0 b7 d0 bc d0 be d0 ..., ...........
2160: b6 d0 b5 d0 bd 20 d0 b2 d1 8b d0 bb d0 b5 d1 82 ..... ..........
2170: 0d 0a 20 20 20 20 76 61 72 20 73 74 61 74 65 20 .. var state
2180: 3d 20 73 74 64 63 6f 6d 6d 61 6e 64 73 2e 43 44 = stdcommands.CD
2190: 65 62 75 67 2e 53 74 65 70 49 6e 2e 67 65 74 53 ebug.StepIn.getS
21a0: 74 61 74 65 28 29 0d 0a 20 20 20 20 72 65 74 75 tate().. retu
21b0: 72 6e 20 73 74 61 74 65 20 26 26 20 73 74 61 74 rn state && stat
21c0: 65 2e 65 6e 61 62 6c 65 64 0d 0a 7d 0d 0a 0d 0a e.enabled..}....
21d0: 66 75 6e 63 74 69 6f 6e 20 6f 6e 53 74 6f 70 44 function onStopD
21e0: 65 62 75 67 28 29 0d 0a 7b 0d 0a 20 20 20 20 63 ebug()..{.. c
21f0: 6c 65 61 72 45 78 70 72 65 73 73 69 6f 6e 73 28 learExpressions(
2200: 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e )..}....function
2210: 20 6f 6e 49 64 6c 65 28 29 0d 0a 7b 0d 0a 20 20 onIdle()..{..
2220: 20 20 69 66 28 21 69 73 44 65 62 75 67 45 76 61 if(!isDebugEva
2230: 6c 45 6e 61 62 6c 65 64 28 29 29 0d 0a 20 20 20 lEnabled())..
2240: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 76 65 6e {.. even
2250: 74 73 2e 64 69 73 63 6f 6e 6e 65 63 74 28 44 65 ts.disconnect(De
2260: 73 69 67 6e 65 72 2c 20 22 6f 6e 49 64 6c 65 22 signer, "onIdle"
2270: 2c 20 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c , SelfScript.sel
2280: 66 29 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 f).. retu
2290: 72 6e 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 74 rn.. }.. t
22a0: 72 79 7b 0d 0a 20 20 20 20 20 20 20 20 75 70 64 ry{.. upd
22b0: 61 74 65 44 65 62 75 67 45 78 70 72 65 73 73 69 ateDebugExpressi
22c0: 6f 6e 73 28 29 0d 0a 20 20 20 20 7d 63 61 74 63 ons().. }catc
22d0: 68 28 65 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 h(e).. {..
22e0: 20 20 20 20 20 2f 2f 20 d0 92 d1 81 d0 b5 20 d0 // ...... .
22f0: be d1 88 d0 b8 d0 b1 d0 ba d0 b8 20 d0 b1 d1 83 ........... ....
2300: d0 b4 d0 b5 d0 bc 20 d0 b3 d0 b0 d1 81 d0 b8 d1 ...... .........
2310: 82 d1 8c 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 ..... }..
2320: 65 76 65 6e 74 73 2e 64 69 73 63 6f 6e 6e 65 63 events.disconnec
2330: 74 28 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e 49 t(Designer, "onI
2340: 64 6c 65 22 2c 20 53 65 6c 66 53 63 72 69 70 74 dle", SelfScript
2350: 2e 73 65 6c 66 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e .self)..}....fun
2360: 63 74 69 6f 6e 20 63 6c 65 61 72 45 78 70 72 65 ction clearExpre
2370: 73 73 69 6f 6e 73 28 29 0d 0a 7b 0d 0a 20 20 20 ssions()..{..
2380: 20 72 4d 6f 64 75 6c 65 2e d0 a1 d1 82 d1 80 d0 rModule........
2390: be d0 ba d0 b8 2e d0 9e d1 87 d0 b8 d1 81 d1 82 ................
23a0: d0 b8 d1 82 d1 8c 28 29 0d 0a 20 20 20 20 72 50 ......().. rP
23b0: 61 72 61 6d 73 2e d0 a1 d1 82 d1 80 d0 be d0 ba arams...........
23c0: d0 b8 2e d0 9e d1 87 d0 b8 d1 81 d1 82 d0 b8 d1 ................
23d0: 82 d1 8c 28 29 0d 0a 20 20 20 20 72 4c 6f 63 61 ...().. rLoca
23e0: 6c 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 l...............
23f0: 9e d1 87 d0 b8 d1 81 d1 82 d0 b8 d1 82 d1 8c 28 ...............(
2400: 29 0d 0a 20 20 20 20 69 66 28 66 6f 72 6d 2e d0 ).. if(form..
2410: 9e d1 82 d0 ba d1 80 d1 8b d1 82 d0 b0 28 29 29 .............())
2420: 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 6d 2e d0 .. form..
2430: 97 d0 b0 d0 ba d1 80 d1 8b d1 82 d1 8c 28 29 0d .............().
2440: 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 67 .}....function g
2450: 65 74 52 6f 77 28 70 61 72 65 6e 74 2c 20 6e 61 etRow(parent, na
2460: 6d 65 29 0d 0a 7b 0d 0a 20 20 20 20 76 61 72 20 me)..{.. var
2470: 72 20 3d 20 70 61 72 65 6e 74 2e d0 a1 d1 82 d1 r = parent......
2480: 80 d0 be d0 ba d0 b8 2e d0 9d d0 b0 d0 b9 d1 82 ................
2490: d0 b8 28 6e 61 6d 65 2c 20 22 d0 9d d0 b0 d0 b7 ..(name, "......
24a0: d0 b2 d0 b0 d0 bd d0 b8 d0 b5 22 29 0d 0a 20 20 ..........")..
24b0: 20 20 69 66 28 21 72 29 0d 0a 20 20 20 20 7b 0d if(!r).. {.
24c0: 0a 20 20 20 20 20 20 20 20 72 20 3d 20 70 61 72 . r = par
24d0: 65 6e 74 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 ent.............
24e0: 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 ................
24f0: 8c 28 29 0d 0a 20 20 20 20 20 20 20 20 72 2e d0 .().. r..
2500: 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 ...............
2510: 3d 20 6e 61 6d 65 0d 0a 20 20 20 20 20 20 20 20 = name..
2520: 72 2e 4d 6f 64 69 66 69 65 64 20 3d 20 30 0d 0a r.Modified = 0..
2530: 20 20 20 20 7d 0d 0a 20 20 20 20 72 65 74 75 72 }.. retur
2540: 6e 20 72 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 n r..}....functi
2550: 6f 6e 20 72 65 6d 6f 76 65 52 6f 77 73 28 70 61 on removeRows(pa
2560: 72 65 6e 74 2c 20 61 6c 6c 29 0d 0a 7b 0d 0a 20 rent, all)..{..
2570: 20 20 20 76 61 72 20 64 65 6c 20 3d 20 5b 5d 0d var del = [].
2580: 0a 20 20 20 20 66 6f 72 28 76 61 72 20 6b 20 3d . for(var k =
2590: 20 6e 65 77 20 45 6e 75 6d 65 72 61 74 6f 72 28 new Enumerator(
25a0: 70 61 72 65 6e 74 2e d0 a1 d1 82 d1 80 d0 be d0 parent..........
25b0: ba d0 b8 29 3b 20 21 6b 2e 61 74 45 6e 64 28 29 ...); !k.atEnd()
25c0: 3b 20 6b 2e 6d 6f 76 65 4e 65 78 74 28 29 29 0d ; k.moveNext()).
25d0: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 . {..
25e0: 76 61 72 20 72 20 3d 20 6b 2e 69 74 65 6d 28 29 var r = k.item()
25f0: 0d 0a 20 20 20 20 20 20 20 20 69 66 28 21 61 6c .. if(!al
2600: 6c 5b 72 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd l[r.............
2610: d0 b8 d0 b5 5d 29 0d 0a 20 20 20 20 20 20 20 20 ....])..
2620: 20 20 20 20 64 65 6c 2e 70 75 73 68 28 72 29 0d del.push(r).
2630: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 66 6f 72 28 . }.. for(
2640: 76 61 72 20 6b 20 69 6e 20 64 65 6c 29 0d 0a 20 var k in del)..
2650: 20 20 20 20 20 20 20 70 61 72 65 6e 74 2e d0 a1 parent...
2660: d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 a3 d0 b4 d0 ................
2670: b0 d0 bb d0 b8 d1 82 d1 8c 28 64 65 6c 5b 6b 5d .........(del[k]
2680: 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e )..}....function
2690: 20 66 69 6c 6c 4c 6f 63 61 6c 56 61 72 69 61 62 fillLocalVariab
26a0: 6c 65 73 28 29 0d 0a 7b 0d 0a 20 20 20 20 76 61 les()..{.. va
26b0: 72 20 77 6e 64 20 3d 20 47 65 74 54 65 78 74 57 r wnd = GetTextW
26c0: 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20 69 66 indow();.. if
26d0: 28 21 77 6e 64 29 0d 0a 20 20 20 20 20 20 20 20 (!wnd)..
26e0: 72 65 74 75 72 6e 0d 0a 20 20 20 20 76 69 65 77 return.. view
26f0: 20 3d 20 77 6e 64 2e 47 65 74 56 69 65 77 28 29 = wnd.GetView()
2700: 3b 0d 0a 20 20 20 20 74 69 74 6c 65 20 3d 20 22 ;.. title = "
2710: 22 3b 0d 0a 20 20 20 20 69 66 20 28 21 76 69 65 ";.. if (!vie
2720: 77 29 7b 0d 0a 20 20 20 20 7d 20 65 6c 73 65 20 w){.. } else
2730: 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 76 {.. if (v
2740: 69 65 77 2e 6d 64 4f 62 6a 20 26 26 20 76 69 65 iew.mdObj && vie
2750: 77 2e 6d 64 50 72 6f 70 29 20 7b 0d 0a 20 20 20 w.mdProp) {..
2760: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 ..
2770: 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 function
2780: 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29 getMdName(mdObj)
2790: 20 7b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 {
27a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d .
27b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
27c0: 20 69 66 20 28 6d 64 4f 62 6a 2e 70 61 72 65 6e if (mdObj.paren
27d0: 74 20 26 26 20 6d 64 4f 62 6a 2e 70 61 72 65 6e t && mdObj.paren
27e0: 74 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31 t.mdClass.name(1
27f0: 29 20 21 3d 20 27 d0 9a d0 be d0 bd d1 84 d0 b8 ) != '..........
2800: d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f 27 29 ..............')
2810: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
2820: 20 20 20 20 20 20 72 65 74 75 72 6e 20 67 65 74 return get
2830: 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 2e 70 61 72 MdName(mdObj.par
2840: 65 6e 74 29 20 2b 20 27 2e 27 20 2b 20 6d 64 4f ent) + '.' + mdO
2850: 62 6a 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 bj.mdClass.name(
2860: 31 29 20 2b 20 27 20 27 20 2b 20 6d 64 4f 62 6a 1) + ' ' + mdObj
2870: 2e 6e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 .name;..
2880: 20 20 20 20 20 20 20 20 76 61 72 20 63 6e 61 6d var cnam
2890: 65 20 3d 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73 e = mdObj.mdClas
28a0: 73 2e 6e 61 6d 65 28 31 29 3b 0d 0a 20 20 20 20 s.name(1);..
28b0: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 retu
28c0: 72 6e 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e 61 rn (cname ? cna
28d0: 6d 65 20 2b 20 27 20 27 20 3a 20 27 27 29 20 2b me + ' ' : '') +
28e0: 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20 20 mdObj.name;..
28f0: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 }..
2900: 20 20 20 20 20 20 20 20 20 74 69 74 6c 65 20 3d title =
2910: 20 67 65 74 4d 64 4e 61 6d 65 28 76 69 65 77 2e getMdName(view.
2920: 6d 64 4f 62 6a 29 20 2b 20 27 3a 20 27 20 2b 20 mdObj) + ': ' +
2930: 76 69 65 77 2e 6d 64 50 72 6f 70 2e 6e 61 6d 65 view.mdProp.name
2940: 28 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 (1);..
2950: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..
2960: 69 66 20 28 77 6e 64 2e 47 65 74 48 77 6e 64 28 if (wnd.GetHwnd(
2970: 29 20 21 3d 20 63 75 72 56 69 65 77 48 77 6e 64 ) != curViewHwnd
2980: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 )..
2990: 20 20 20 63 75 72 53 79 6e 74 61 78 41 6e 61 6c curSyntaxAnal
29a0: 79 73 69 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 ysis = null;..
29b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 cu
29c0: 72 4d 64 4f 62 6a 65 63 74 20 3d 20 77 6e 64 2e rMdObject = wnd.
29d0: 47 65 74 48 77 6e 64 28 29 3b 0d 0a 20 20 20 20 GetHwnd();..
29e0: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 }.. }..
29f0: 20 20 0d 0a 20 20 20 20 69 66 20 28 21 63 75 72 .. if (!cur
2a00: 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 20 7c SyntaxAnalysis |
2a10: 7c 20 21 76 69 65 77 29 7b 0d 0a 20 20 20 20 20 | !view){..
2a20: 20 20 20 76 61 72 20 6d 6f 64 20 3d 20 53 79 6e var mod = Syn
2a30: 74 61 78 41 6e 61 6c 79 73 69 73 2e 41 6e 61 6c taxAnalysis.Anal
2a40: 79 73 65 54 65 78 74 44 6f 63 75 6d 65 6e 74 28 yseTextDocument(
2a50: 77 6e 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 63 wnd);.. c
2a60: 75 72 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 urSyntaxAnalysis
2a70: 20 3d 20 6d 6f 64 3b 0d 0a 20 20 20 20 7d 20 65 = mod;.. } e
2a80: 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 lse {.. v
2a90: 61 72 20 6d 6f 64 20 3d 20 63 75 72 53 79 6e 74 ar mod = curSynt
2aa0: 61 78 41 6e 61 6c 79 73 69 73 3b 0d 0a 20 20 20 axAnalysis;..
2ab0: 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 }.. .. va
2ac0: 72 20 6d 65 74 68 20 3d 20 6d 6f 64 2e 67 65 74 r meth = mod.get
2ad0: 41 63 74 69 76 65 4c 69 6e 65 4d 65 74 68 6f 64 ActiveLineMethod
2ae0: 28 29 0d 0a 20 20 20 20 72 4d 6f 64 75 6c 65 2e ().. rModule.
2af0: d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 ................
2b00: 20 3d 20 74 69 74 6c 65 3b 0d 0a 20 20 20 20 2f = title;.. /
2b10: 2f 64 65 62 75 67 67 65 72 0d 0a 20 20 20 20 2f /debugger.. /
2b20: 2f 20 d0 97 d0 b0 d0 bf d0 be d0 bb d0 bd d0 b8 / ..............
2b30: d0 bc 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 .. .............
2b40: bd d0 bd d1 8b d0 b5 20 d0 bc d0 be d0 b4 d1 83 ....... ........
2b50: d0 bb d1 8f 0d 0a 20 20 20 20 76 61 72 20 61 6c ...... var al
2b60: 6c 20 3d 20 7b 7d 0d 0a 20 20 20 20 66 6f 72 28 l = {}.. for(
2b70: 76 61 72 20 6b 20 69 6e 20 6d 6f 64 2e 63 6f 6e var k in mod.con
2b80: 74 65 78 74 2e 4d 6f 64 75 6c 65 56 61 72 73 29 text.ModuleVars)
2b90: 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 .. {..
2ba0: 20 67 65 74 52 6f 77 28 72 4d 6f 64 75 6c 65 2c getRow(rModule,
2bb0: 20 6d 6f 64 2e 63 6f 6e 74 65 78 74 2e 4d 6f 64 mod.context.Mod
2bc0: 75 6c 65 56 61 72 73 5b 6b 5d 29 0d 0a 20 20 20 uleVars[k])..
2bd0: 20 20 20 20 20 61 6c 6c 5b 6d 6f 64 2e 63 6f 6e all[mod.con
2be0: 74 65 78 74 2e 4d 6f 64 75 6c 65 56 61 72 73 5b text.ModuleVars[
2bf0: 6b 5d 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 k]] = true..
2c00: 7d 0d 0a 20 20 20 20 72 65 6d 6f 76 65 52 6f 77 }.. removeRow
2c10: 73 28 72 4d 6f 64 75 6c 65 2c 20 61 6c 6c 29 0d s(rModule, all).
2c20: 0a 20 20 20 20 69 66 20 28 21 6d 65 74 68 29 7b . if (!meth){
2c30: 0d 0a 20 20 20 20 20 20 20 20 72 50 61 72 61 6d .. rParam
2c40: 73 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 s...............
2c50: d0 b5 20 3d 20 22 3c d0 92 d0 bd d0 b5 20 d0 bf .. = "<...... ..
2c60: d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b ................
2c70: 2f d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 3e /..............>
2c80: 22 0d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d ".. } else {.
2c90: 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 97 d0 b0 . // ....
2ca0: d0 bf d0 be d0 bb d0 bd d0 b8 d0 bc 20 d0 bf d0 ............ ...
2cb0: b0 d1 80 d0 b0 d0 bc d0 b5 d1 82 d1 80 d1 8b 0d ................
2cc0: 0a 20 20 20 20 20 20 20 20 72 50 61 72 61 6d 73 . rParams
2cd0: 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 ................
2ce0: b5 20 3d 20 6d 65 74 68 2e 4e 61 6d 65 3b 0d 0a . = meth.Name;..
2cf0: 20 20 20 20 20 20 20 20 69 66 28 21 6d 65 74 68 if(!meth
2d00: 2e 50 61 72 61 6d 73 29 7b 0d 0a 0d 0a 20 20 20 .Params){....
2d10: 20 20 20 20 20 7d 65 6c 73 65 7b 0d 0a 20 20 20 }else{..
2d20: 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6c 6c var all
2d30: 20 3d 20 7b 7d 0d 0a 20 20 20 20 20 20 20 20 20 = {}..
2d40: 20 20 20 66 6f 72 28 76 61 72 20 6b 20 69 6e 20 for(var k in
2d50: 6d 65 74 68 2e 50 61 72 61 6d 73 29 0d 0a 20 20 meth.Params)..
2d60: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 {..
2d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 get
2d80: 52 6f 77 28 72 50 61 72 61 6d 73 2c 20 6d 65 74 Row(rParams, met
2d90: 68 2e 50 61 72 61 6d 73 5b 6b 5d 29 0d 0a 20 20 h.Params[k])..
2da0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c al
2db0: 6c 5b 6d 65 74 68 2e 50 61 72 61 6d 73 5b 6b 5d l[meth.Params[k]
2dc0: 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 20 ] = true..
2dd0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 }..
2de0: 20 20 20 20 20 72 65 6d 6f 76 65 52 6f 77 73 28 removeRows(
2df0: 72 50 61 72 61 6d 73 2c 20 61 6c 6c 29 0d 0a 20 rParams, all)..
2e00: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }..
2e10: 20 20 2f 2f 20 d0 97 d0 b0 d0 bf d0 be d0 bb d0 // ...........
2e20: bd d0 b8 d0 bc 20 d0 bb d0 be d0 ba d0 b0 d0 bb ..... ..........
2e30: d1 8c d0 bd d1 8b d0 b5 20 d0 bf d0 b5 d1 80 d0 ........ .......
2e40: b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 0d 0a 20 ...............
2e50: 20 20 20 20 20 20 20 76 61 72 20 61 6c 6c 20 3d var all =
2e60: 20 7b 7d 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 {}.. for
2e70: 28 76 61 72 20 6b 20 69 6e 20 6d 65 74 68 2e 44 (var k in meth.D
2e80: 65 63 6c 61 72 65 64 56 61 72 73 29 0d 0a 20 20 eclaredVars)..
2e90: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 {..
2ea0: 20 20 20 20 20 67 65 74 52 6f 77 28 72 4c 6f 63 getRow(rLoc
2eb0: 61 6c 2c 20 6d 65 74 68 2e 44 65 63 6c 61 72 65 al, meth.Declare
2ec0: 64 56 61 72 73 5b 6b 5d 29 0d 0a 20 20 20 20 20 dVars[k])..
2ed0: 20 20 20 20 20 20 20 61 6c 6c 5b 6d 65 74 68 2e all[meth.
2ee0: 44 65 63 6c 61 72 65 64 56 61 72 73 5b 6b 5d 5d DeclaredVars[k]]
2ef0: 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 20 20 = true..
2f00: 20 7d 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 28 }.. for(
2f10: 76 61 72 20 6b 20 69 6e 20 6d 65 74 68 2e 41 75 var k in meth.Au
2f20: 74 6f 6d 61 74 69 63 56 61 72 73 29 0d 0a 20 20 tomaticVars)..
2f30: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 {..
2f40: 20 20 20 20 20 67 65 74 52 6f 77 28 72 4c 6f 63 getRow(rLoc
2f50: 61 6c 2c 20 6d 65 74 68 2e 41 75 74 6f 6d 61 74 al, meth.Automat
2f60: 69 63 56 61 72 73 5b 6b 5d 29 0d 0a 20 20 20 20 icVars[k])..
2f70: 20 20 20 20 20 20 20 20 61 6c 6c 5b 6d 65 74 68 all[meth
2f80: 2e 41 75 74 6f 6d 61 74 69 63 56 61 72 73 5b 6b .AutomaticVars[k
2f90: 5d 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 ]] = true..
2fa0: 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 }.. }..
2fb0: 20 0d 0a 20 20 20 20 72 65 6d 6f 76 65 52 6f 77 .. removeRow
2fc0: 73 28 72 4c 6f 63 61 6c 2c 20 61 6c 6c 29 0d 0a s(rLocal, all)..
2fd0: 20 20 20 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 form........
2fe0: bc d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 ................
2ff0: bc d1 8b 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 ................
3000: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 ................
3010: d0 b4 d0 ba d0 b8 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 ................
3020: b5 d1 80 d0 bd d1 83 d1 82 d1 8c 28 72 4d 6f 64 ...........(rMod
3030: 75 6c 65 2c 20 66 61 6c 73 65 29 0d 0a 20 20 20 ule, false)..
3040: 20 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 form...........
3050: d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b ................
3060: 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 ................
3070: bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ................
3080: ba d0 b8 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 b5 d1 80 ................
3090: d0 bd d1 83 d1 82 d1 8c 28 72 50 61 72 61 6d 73 ........(rParams
30a0: 2c 20 66 61 6c 73 65 29 0d 0a 20 20 20 20 66 6f , false).. fo
30b0: 72 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 rm..............
30c0: 82 d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f ................
30d0: d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b ................
30e0: d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 ................
30f0: 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 b5 d1 80 d0 bd d1 ................
3100: 83 d1 82 d1 8c 28 72 4c 6f 63 61 6c 2c 20 66 61 .....(rLocal, fa
3110: 6c 73 65 29 0d 0a 20 20 20 20 66 6f 72 6d 2e d0 lse).. form..
3120: ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d1 8b d0 ................
3130: a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f d0 b5 d1 80 ................
3140: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e ................
3150: d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e d0 a0 d0 ................
3160: b0 d0 b7 d0 b2 d0 b5 d1 80 d0 bd d1 83 d1 82 d1 ................
3170: 8c 28 72 48 61 6e 64 73 2c 20 66 61 6c 73 65 29 .(rHands, false)
3180: 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e ;..}....function
3190: 20 73 65 74 52 6f 77 56 61 6c 75 65 28 72 6f 77 setRowValue(row
31a0: 2c 20 76 61 6c 75 65 2c 20 74 79 70 65 29 0d 0a , value, type)..
31b0: 7b 0d 0a 20 20 20 20 69 66 28 6e 65 65 64 54 65 {.. if(needTe
31c0: 73 74 4d 6f 64 69 66 69 65 64 29 0d 0a 20 20 20 stModified)..
31d0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 28 72 {.. if(r
31e0: 6f 77 2e 4d 6f 64 69 66 69 65 64 20 3d 3d 20 30 ow.Modified == 0
31f0: 29 20 20 20 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0 ) // .........
3200: ba d0 b0 20 d1 82 d0 be d0 bb d1 8c d0 ba d0 be ... ............
3210: 20 d1 87 d1 82 d0 be 20 d0 b4 d0 be d0 b1 d0 b0 ...... ........
3220: d0 b2 d0 b8 d0 bb d0 b0 d1 81 d1 8c 0d 0a 20 20 ..............
3230: 20 20 20 20 20 20 20 20 20 20 72 6f 77 2e 4d 6f row.Mo
3240: 64 69 66 69 65 64 20 3d 20 31 20 20 20 20 2f 2f dified = 1 //
3250: 20 d0 92 20 d1 81 d0 bb d0 b5 d0 b4 d1 83 d1 8e .. ............
3260: d1 89 d0 b8 d0 b9 20 d1 80 d0 b0 d0 b7 20 d0 bf ...... ...... ..
3270: d1 80 d0 be d0 b2 d0 b5 d1 80 d1 8f d1 82 d1 8c ................
3280: 20 d1 81 d1 82 d1 80 d0 be d0 ba d1 83 20 d0 bd ............ ..
3290: d0 b0 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 .. .............
32a0: bd d0 b8 d0 b5 0d 0a 20 20 20 20 20 20 20 20 65 ....... e
32b0: 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 lse..
32c0: 20 72 6f 77 2e 4d 6f 64 69 66 69 65 64 20 3d 20 row.Modified =
32d0: 72 6f 77 2e d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd row.............
32e0: d0 b8 d0 b5 20 21 3d 3d 20 76 61 6c 75 65 20 3f .... !== value ?
32f0: 20 32 20 3a 20 31 0d 0a 20 20 20 20 7d 0d 0a 20 2 : 1.. }..
3300: 20 20 20 72 6f 77 2e d0 97 d0 bd d0 b0 d1 87 d0 row..........
3310: b5 d0 bd d0 b8 d0 b5 20 3d 20 76 61 6c 75 65 0d ....... = value.
3320: 0a 20 20 20 20 72 6f 77 2e d0 a2 d0 b8 d0 bf 20 . row.......
3330: 3d 20 74 79 70 65 0d 0a 7d 0d 0a 0d 0a 66 75 6e = type..}....fun
3340: 63 74 69 6f 6e 20 75 70 64 61 74 65 4f 6e 65 45 ction updateOneE
3350: 78 70 72 65 73 73 69 6f 6e 28 72 6f 77 2c 20 70 xpression(row, p
3360: 61 72 65 6e 74 4e 61 6d 65 29 0d 0a 7b 0d 0a 20 arentName)..{..
3370: 20 20 20 2f 2f 20 d0 a0 d0 b0 d1 81 d1 81 d1 87 // ..........
3380: d0 b8 d1 82 d0 b0 d0 b5 d0 bc 20 d0 be d1 82 d0 .......... .....
3390: bb d0 b0 d0 b4 d0 be d1 87 d0 bd d0 be d0 b5 20 ...............
33a0: d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 ................
33b0: 20 d0 b2 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b5 .. ............
33c0: 0d 0a 20 20 20 20 69 66 20 28 72 6f 77 2e d0 9d .. if (row...
33d0: d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 2e 6c ...............l
33e0: 65 6e 67 74 68 3c 31 29 7b 0d 0a 20 20 20 20 20 ength<1){..
33f0: 20 20 20 73 65 74 52 6f 77 56 61 6c 75 65 28 72 setRowValue(r
3400: 6f 77 2c 20 27 27 2c 20 27 27 29 3b 0d 0a 20 20 ow, '', '');..
3410: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 return;..
3420: 20 20 20 7d 0d 0a 20 20 20 20 76 61 72 20 65 78 }.. var ex
3430: 70 72 20 3d 20 76 38 64 65 62 75 67 2e 65 76 61 pr = v8debug.eva
3440: 6c 28 70 61 72 65 6e 74 4e 61 6d 65 20 2b 20 72 l(parentName + r
3450: 6f 77 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 ow..............
3460: b8 d0 b5 29 0d 0a 20 20 20 20 2f 2f 20 d0 a3 d1 ...).. // ...
3470: 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0 bc 20 ...............
3480: d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 ................
3490: 20 d0 b8 20 d0 bc d0 be d0 b4 d0 b8 d1 84 d0 b8 .. ............
34a0: d1 86 d0 b8 d1 80 d0 be d0 b2 d0 b0 d0 bd d0 bd ................
34b0: d0 be d1 81 d1 82 d1 8c 0d 0a 20 20 20 20 73 65 .......... se
34c0: 74 52 6f 77 56 61 6c 75 65 28 72 6f 77 2c 20 65 tRowValue(row, e
34d0: 78 70 72 2e 76 61 6c 75 65 2c 20 65 78 70 72 2e xpr.value, expr.
34e0: 74 79 70 65 29 0d 0a 20 20 20 20 2f 2f 20 d0 9f type).. // ..
34f0: d0 b5 d1 80 d0 b5 d0 b1 d0 b5 d1 80 d0 b5 d0 bc ................
3500: 20 d1 81 d0 b2 d0 be d0 b9 d1 81 d1 82 d0 b2 d0 ...............
3510: b0 20 d0 b2 d1 8b d1 87 d0 b8 d1 81 d0 bb d0 b5 . ..............
3520: d0 bd d0 bd d0 be d0 b3 d0 be 20 d0 b2 d1 8b d1 .......... .....
3530: 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f 0d 0a 20 ...............
3540: 20 20 20 76 61 72 20 61 6c 6c 20 3d 20 7b 7d 0d var all = {}.
3550: 0a 20 20 20 20 66 6f 72 28 76 61 72 20 6b 20 3d . for(var k =
3560: 20 30 3b 20 6b 20 3c 20 65 78 70 72 2e 70 72 6f 0; k < expr.pro
3570: 70 43 6f 75 6e 74 3b 20 6b 2b 2b 29 0d 0a 20 20 pCount; k++)..
3580: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 {.. var
3590: 20 70 72 6f 70 20 3d 20 65 78 70 72 2e 70 72 6f prop = expr.pro
35a0: 70 28 6b 29 0d 0a 20 20 20 20 20 20 20 20 76 61 p(k).. va
35b0: 72 20 72 20 3d 20 67 65 74 52 6f 77 28 72 6f 77 r r = getRow(row
35c0: 2c 20 70 72 6f 70 2e 6e 61 6d 65 29 0d 0a 20 20 , prop.name)..
35d0: 20 20 20 20 20 20 61 6c 6c 5b 70 72 6f 70 2e 6e all[prop.n
35e0: 61 6d 65 5d 20 3d 20 74 72 75 65 0d 0a 20 20 20 ame] = true..
35f0: 20 20 20 20 20 73 65 74 52 6f 77 56 61 6c 75 65 setRowValue
3600: 28 72 2c 20 70 72 6f 70 2e 76 61 6c 75 65 2c 20 (r, prop.value,
3610: 70 72 6f 70 2e 74 79 70 65 29 0d 0a 20 20 20 20 prop.type)..
3620: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 .. if
3630: 28 70 72 6f 70 2e 65 78 70 61 6e 64 61 62 6c 65 (prop.expandable
3640: 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 ).. {..
3650: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 a1 d0 // ...
3660: b2 d0 be d0 b9 d1 81 d1 82 d0 b2 d0 be 20 d0 b8 ............. ..
3670: d0 bc d0 b5 d0 b5 d1 82 20 d0 bf d0 be d0 b4 d1 ........ .......
3680: 81 d0 b2 d0 be d0 b9 d1 81 d1 82 d0 b2 d0 b0 2c ...............,
3690: 20 d0 bd d0 b0 d0 b4 d0 be 20 d0 bf d0 be d0 ba ........ ......
36a0: d0 b0 d0 b7 d1 8b d0 b2 d0 b0 d1 82 d1 8c 20 d0 .............. .
36b0: bf d0 bb d1 8e d1 81 d0 b8 d0 ba 0d 0a 20 20 20 .............
36c0: 20 20 20 20 20 20 20 20 20 69 66 28 21 72 2e d0 if(!r..
36d0: a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e d0 9a d0 be ................
36e0: d0 bb d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be ................
36f0: 28 29 29 20 2f 2f 20 d0 94 d0 bb d1 8f 20 d1 8d ()) // ...... ..
3700: d1 82 d0 be d0 b3 d0 be 20 d0 bf d1 80 d0 b8 20 ........ ......
3710: d0 bd d0 b5 d0 be d0 b1 d1 85 d0 be d0 b4 d0 b8 ................
3720: d0 bc d0 be d1 81 d1 82 d0 b8 20 d0 b4 d0 be d0 .......... .....
3730: b1 d0 b0 d0 b2 d0 b8 d0 bc 20 d0 bf d1 83 d1 81 ......... ......
3740: d1 82 d1 83 d1 8e 20 d1 81 d1 82 d1 80 d0 be d0 ...... .........
3750: ba d1 83 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .....
3760: 20 20 20 20 20 72 2e d0 a1 d1 82 d1 80 d0 be d0 r..........
3770: ba d0 b8 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 ................
3780: d1 82 d1 8c 28 29 2e d0 9d d0 b0 d0 b7 d0 b2 d0 ....()..........
3790: b0 d0 bd d0 b8 d0 b5 20 3d 20 22 2d 22 0d 0a 20 ....... = "-"..
37a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d .
37b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 . //
37c0: d0 95 d1 81 d0 bb d0 b8 20 d1 81 d0 b2 d0 be d0 ........ .......
37d0: b9 d1 81 d1 82 d0 b2 d0 be 20 d1 81 d0 b0 d0 bc ......... ......
37e0: d0 be 20 d1 80 d0 b0 d0 b7 d0 b2 d0 b5 d1 80 d0 .. .............
37f0: bd d1 83 d1 82 d0 be 2c 20 d0 b5 d0 b3 d0 be 20 ......., ......
3800: d0 bd d0 b0 d0 b4 d0 be 20 d1 82 d0 be d0 b6 d0 ........ .......
3810: b5 20 d0 be d0 b1 d0 bd d0 be d0 b2 d0 b8 d1 82 . ..............
3820: d1 8c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ....
3830: 69 66 28 66 6f 72 6d 2e d0 ad d0 bb d0 b5 d0 bc if(form.........
3840: d0 b5 d0 bd d1 82 d1 8b d0 a4 d0 be d1 80 d0 bc ................
3850: d1 8b 2e d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 ................
3860: bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 d0 ................
3870: b4 d0 ba d0 b8 2e d0 a0 d0 b0 d0 b7 d0 b2 d0 b5 ................
3880: d1 80 d0 bd d1 83 d1 82 28 72 29 29 0d 0a 20 20 ........(r))..
3890: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70 up
38a0: 64 61 74 65 4f 6e 65 45 78 70 72 65 73 73 69 6f dateOneExpressio
38b0: 6e 28 72 2c 20 70 61 72 65 6e 74 4e 61 6d 65 20 n(r, parentName
38c0: 2b 20 72 6f 77 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 + row...........
38d0: d0 bd d0 b8 d0 b5 20 2b 20 22 2e 22 29 0d 0a 20 ...... + ".")..
38e0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }..
38f0: 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 else..
3900: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f {.. /
3910: 2f 20 d0 9d d0 b5 20 d1 80 d0 b0 d0 b7 d0 b2 d0 / .... .........
3920: be d1 80 d0 b0 d1 87 d0 b8 d0 b2 d0 b0 d0 b5 d0 ................
3930: bc d0 be d0 b5 20 d1 81 d0 b2 d0 be d0 b9 d1 81 ..... ..........
3940: d1 82 d0 b2 d0 be 2c 20 d0 bd d0 b0 20 d0 b2 d1 ......, .... ...
3950: 81 d1 8f d0 ba d0 b8 d0 b9 20 d1 81 d0 bb d1 83 ......... ......
3960: d1 87 d0 b0 d0 b9 20 d1 83 d0 b4 d0 b0 d0 bb d0 ...... .........
3970: b8 d0 bc 20 d0 bf d0 be d0 b4 d1 87 d0 b8 d0 bd ... ............
3980: d0 b5 d0 bd d0 bd d1 8b d0 b5 20 d1 81 d1 82 d1 .......... .....
3990: 80 d0 be d0 ba d0 b8 0d 0a 20 20 20 20 20 20 20 .........
39a0: 20 20 20 20 20 72 2e d0 a1 d1 82 d1 80 d0 be d0 r..........
39b0: ba d0 b8 2e d0 9e d1 87 d0 b8 d1 81 d1 82 d0 b8 ................
39c0: d1 82 d1 8c 28 29 0d 0a 20 20 20 20 20 20 20 20 ....()..
39d0: 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 72 65 }.. }.. re
39e0: 6d 6f 76 65 52 6f 77 73 28 72 6f 77 2c 20 61 6c moveRows(row, al
39f0: 6c 29 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f l)..}....functio
3a00: 6e 20 75 70 64 61 74 65 52 6f 77 73 28 70 61 72 n updateRows(par
3a10: 65 6e 74 29 0d 0a 7b 0d 0a 20 20 20 20 66 6f 72 ent)..{.. for
3a20: 28 76 61 72 20 72 6f 77 73 20 3d 20 6e 65 77 20 (var rows = new
3a30: 45 6e 75 6d 65 72 61 74 6f 72 28 70 61 72 65 6e Enumerator(paren
3a40: 74 2e d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 29 3b t.............);
3a50: 20 21 72 6f 77 73 2e 61 74 45 6e 64 28 29 3b 20 !rows.atEnd();
3a60: 72 6f 77 73 2e 6d 6f 76 65 4e 65 78 74 28 29 29 rows.moveNext())
3a70: 0d 0a 20 20 20 20 20 20 20 20 75 70 64 61 74 65 .. update
3a80: 4f 6e 65 45 78 70 72 65 73 73 69 6f 6e 28 72 6f OneExpression(ro
3a90: 77 73 2e 69 74 65 6d 28 29 2c 20 22 22 29 0d 0a ws.item(), "")..
3aa0: 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 75 70 }....function up
3ab0: 64 61 74 65 44 65 62 75 67 45 78 70 72 65 73 73 dateDebugExpress
3ac0: 69 6f 6e 73 28 29 0d 0a 7b 0d 0a 20 20 20 20 69 ions()..{.. i
3ad0: 66 28 21 66 6f 72 6d 2e d0 9e d1 82 d0 ba d1 80 f(!form.........
3ae0: d1 8b d1 82 d0 b0 28 29 29 0d 0a 20 20 20 20 20 ......())..
3af0: 20 20 20 72 65 74 75 72 6e 0d 0a 20 20 20 20 2f return.. /
3b00: 2f 64 65 62 75 67 67 65 72 0d 0a 20 20 20 20 75 /debugger.. u
3b10: 70 64 61 74 65 52 6f 77 73 28 72 4d 6f 64 75 6c pdateRows(rModul
3b20: 65 29 0d 0a 20 20 20 20 75 70 64 61 74 65 52 6f e).. updateRo
3b30: 77 73 28 72 50 61 72 61 6d 73 29 0d 0a 20 20 20 ws(rParams)..
3b40: 20 75 70 64 61 74 65 52 6f 77 73 28 72 4c 6f 63 updateRows(rLoc
3b50: 61 6c 29 0d 0a 20 20 20 20 75 70 64 61 74 65 52 al).. updateR
3b60: 6f 77 73 28 72 48 61 6e 64 73 29 3b 0d 0a 20 20 ows(rHands);..
3b70: 20 20 6e 65 65 64 54 65 73 74 4d 6f 64 69 66 69 needTestModifi
3b80: 65 64 20 3d 20 66 61 6c 73 65 0d 0a 7d 0d 0a 0d ed = false..}...
3b90: 0a 66 75 6e 63 74 69 6f 6e 20 66 75 6c 6c 4e 61 .function fullNa
3ba0: 6d 65 28 72 6f 77 29 0d 0a 7b 0d 0a 20 20 20 20 me(row)..{..
3bb0: 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 68 69 logger.debug(thi
3bc0: 73 2e 6e 61 6d 65 20 2b 20 22 20 d1 83 d1 80 d0 s.name + " .....
3bd0: be d0 b2 d0 b5 d0 bd d1 8c 20 22 2b 72 6f 77 2e ......... "+row.
3be0: d0 a3 d1 80 d0 be d0 b2 d0 b5 d0 bd d1 8c 28 29 ..............()
3bf0: 29 3b 0d 0a 20 20 20 20 76 61 72 20 74 20 3d 20 );.. var t =
3c00: 72 6f 77 2e d0 9d d0 b0 d0 b7 d0 b2 d0 b0 d0 bd row.............
3c10: d0 b8 d0 b5 0d 0a 20 20 20 20 69 66 20 28 72 6f ...... if (ro
3c20: 77 2e d0 a3 d1 80 d0 be d0 b2 d0 b5 d0 bd d1 8c w...............
3c30: 28 29 20 3e 20 31 29 7b 0d 0a 20 20 20 20 20 20 () > 1){..
3c40: 20 20 74 20 3d 20 66 75 6c 6c 4e 61 6d 65 28 72 t = fullName(r
3c50: 6f 77 2e d0 a0 d0 be d0 b4 d0 b8 d1 82 d0 b5 d0 ow..............
3c60: bb d1 8c 29 20 2b 22 2e 22 2b 74 3b 0d 0a 20 20 ...) +"."+t;..
3c70: 20 20 7d 0d 0a 20 20 20 20 6c 6f 67 67 65 72 2e }.. logger.
3c80: 64 65 62 75 67 28 22 22 2b 74 29 3b 0d 0a 20 20 debug(""+t);..
3c90: 20 20 72 65 74 75 72 6e 20 74 0d 0a 7d 0d 0a 0d return t..}...
3ca0: 0a 66 75 6e 63 74 69 6f 6e 20 d0 9f d0 b5 d1 80 .function ......
3cb0: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e ................
3cc0: d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 d0 92 d1 8b ................
3cd0: d0 b1 d0 be d1 80 28 d0 ad d0 bb d0 b5 d0 bc d0 ......(.........
3ce0: b5 d0 bd d1 82 2c 20 d0 92 d1 8b d0 b1 d1 80 d0 ....., .........
3cf0: b0 d0 bd d0 bd d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 ................
3d00: be d0 ba d0 b0 2c 20 d0 9a d0 be d0 bb d0 be d0 ....., .........
3d10: bd d0 ba d0 b0 2c 20 d0 a1 d1 82 d0 b0 d0 bd d0 ....., .........
3d20: b4 d0 b0 d1 80 d1 82 d0 bd d0 b0 d1 8f d0 9e d0 ................
3d30: b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0 b0 29 ...............)
3d40: 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 4d 65 73 73 61 ..{.. //Messa
3d50: 67 65 28 27 d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 ge('............
3d60: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 ................
3d70: d0 b4 d0 ba d0 b8 d0 92 d1 8b d0 b1 d0 be d1 80 ................
3d80: 27 29 3b 0d 0a 20 20 20 20 76 61 72 20 76 61 6c ');.. var val
3d90: 75 65 20 3d 20 d0 92 d1 8b d0 b1 d1 80 d0 b0 d0 ue = ...........
3da0: bd d0 bd d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 be d0 ................
3db0: ba d0 b0 2e 76 61 6c 2e d0 97 d0 bd d0 b0 d1 87 ....val.........
3dc0: d0 b5 d0 bd d0 b8 d0 b5 0d 0a 20 20 20 20 69 66 .......... if
3dd0: 28 76 61 6c 75 65 2e 69 6e 64 65 78 4f 66 28 27 (value.indexOf('
3de0: 5c 6e 27 29 20 3e 3d 20 30 29 0d 0a 20 20 20 20 \n') >= 0)..
3df0: 7b 0d 0a 20 20 20 20 20 20 20 20 4d 65 73 73 61 {.. Messa
3e00: 67 65 28 22 d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd ge("............
3e10: d0 b8 d0 b5 20 27 22 20 2b 20 66 75 6c 6c 4e 61 .... '" + fullNa
3e20: 6d 65 28 d0 92 d1 8b d0 b1 d1 80 d0 b0 d0 bd d0 me(.............
3e30: bd d0 b0 d1 8f d0 a1 d1 82 d1 80 d0 be d0 ba d0 ................
3e40: b0 2e 76 61 6c 29 20 2b 20 22 27 3a 22 2c 20 6d ..val) + "':", m
3e50: 49 6e 66 6f 29 0d 0a 20 20 20 20 20 20 20 20 4d Info).. M
3e60: 65 73 73 61 67 65 28 76 61 6c 75 65 29 0d 0a 20 essage(value)..
3e70: 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 }..}....funct
3e80: 69 6f 6e 20 d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 b5 ion ............
3e90: d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 b0 ................
3ea0: d0 b4 d0 ba d0 b8 d0 9f d1 80 d0 b8 d0 92 d1 8b ................
3eb0: d0 b2 d0 be d0 b4 d0 b5 d0 a1 d1 82 d1 80 d0 be ................
3ec0: d0 ba d0 b8 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 ....(...........
3ed0: bd d1 82 2c 20 d0 9e d1 84 d0 be d1 80 d0 bc d0 ..., ...........
3ee0: bb d0 b5 d0 bd d0 b8 d0 b5 d0 a1 d1 82 d1 80 d0 ................
3ef0: be d0 ba d0 b8 2c 20 d0 94 d0 b0 d0 bd d0 bd d1 ....., .........
3f00: 8b d0 b5 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 29 ...............)
3f10: 0d 0a 7b 0d 0a 20 20 20 20 69 66 28 d0 94 d0 b0 ..{.. if(....
3f20: d0 bd d0 bd d1 8b d0 b5 d0 a1 d1 82 d1 80 d0 be ................
3f30: d0 ba d0 b8 2e 76 61 6c 2e d0 a3 d1 80 d0 be d0 .....val........
3f40: b2 d0 b5 d0 bd d1 8c 28 29 20 3d 3d 20 30 29 0d .......() == 0).
3f50: 0a 20 20 20 20 20 20 20 20 d0 9e d1 84 d0 be d1 . .......
3f60: 80 d0 bc d0 bb d0 b5 d0 bd d0 b8 d0 b5 d0 a1 d1 ................
3f70: 82 d1 80 d0 be d0 ba d0 b8 2e 76 61 6c 2e d0 a6 ..........val...
3f80: d0 b2 d0 b5 d1 82 d0 a4 d0 be d0 bd d0 b0 20 3d .............. =
3f90: 20 63 6f 6c 6f 72 47 72 61 79 0d 0a 20 20 20 20 colorGray..
3fa0: 65 6c 73 65 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 else.. {..
3fb0: 20 20 20 20 20 69 66 28 d0 94 d0 b0 d0 bd d0 bd if(........
3fc0: d1 8b d0 b5 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b8 ................
3fd0: 2e 76 61 6c 2e 4d 6f 64 69 66 69 65 64 20 3d 3d .val.Modified ==
3fe0: 20 32 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 2)..
3ff0: 20 d0 9e d1 84 d0 be d1 80 d0 bc d0 bb d0 b5 d0 ...............
4000: bd d0 b8 d0 b5 d0 a1 d1 82 d1 80 d0 be d0 ba d0 ................
4010: b8 2e 76 61 6c 2e d0 a6 d0 b2 d0 b5 d1 82 d0 a2 ..val...........
4020: d0 b5 d0 ba d1 81 d1 82 d0 b0 20 3d 20 63 6f 6c .......... = col
4030: 6f 72 52 65 64 0d 0a 20 20 20 20 20 20 20 20 2f orRed.. /
4040: 2f 20 d0 94 d0 bb d1 8f 20 d1 81 d1 82 d1 80 d0 / ...... .......
4050: be d0 ba 20 d1 81 20 d0 bf d0 b5 d1 80 d0 b5 d0 ... .. .........
4060: bd d0 be d1 81 d0 be d0 bc 20 d1 81 d1 82 d1 80 ......... ......
4070: d0 be d0 ba d0 b8 20 d0 bf d0 be d0 ba d0 b0 d0 ...... .........
4080: b6 d0 b5 d0 bc 20 d0 ba d0 b0 d1 80 d1 82 d0 b8 ..... ..........
4090: d0 bd d0 ba d1 83 2c 20 d1 87 d1 82 d0 be 20 d0 ......, ...... .
40a0: bd d0 b0 20 d0 bd d0 b5 d0 b5 20 d0 bc d0 be d0 ... ...... .....
40b0: b6 d0 bd d0 be 20 d1 89 d0 b5 d0 bb d0 ba d0 bd ..... ..........
40c0: d1 83 d1 82 d1 8c 0d 0a 20 20 20 20 20 20 20 20 ........
40d0: 69 66 28 d0 94 d0 b0 d0 bd d0 bd d1 8b d0 b5 d0 if(.............
40e0: a1 d1 82 d1 80 d0 be d0 ba d0 b8 2e 76 61 6c 2e ............val.
40f0: d0 97 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 ................
4100: 2e 69 6e 64 65 78 4f 66 28 27 5c 6e 27 29 20 3e .indexOf('\n') >
4110: 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d = 0).. {.
4120: 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 . var
4130: 20 63 65 6c 6c 20 3d 20 d0 9e d1 84 d0 be d1 80 cell = ........
4140: d0 bc d0 bb d0 b5 d0 bd d0 b8 d0 b5 d0 a1 d1 82 ................
4150: d1 80 d0 be d0 ba d0 b8 2e 76 61 6c 2e d0 af d1 .........val....
4160: 87 d0 b5 d0 b9 d0 ba d0 b8 2e d0 97 d0 bd d0 b0 ................
4170: d1 87 d0 b5 d0 bd d0 b8 d0 b5 0d 0a 20 20 20 20 ............
4180: 20 20 20 20 20 20 20 20 63 65 6c 6c 2e d0 9e d1 cell....
4190: 82 d0 be d0 b1 d1 80 d0 b0 d0 b6 d0 b0 d1 82 d1 ................
41a0: 8c d0 9a d0 b0 d1 80 d1 82 d0 b8 d0 bd d0 ba d1 ................
41b0: 83 20 3d 20 74 72 75 65 0d 0a 20 20 20 20 20 20 . = true..
41c0: 20 20 20 20 20 20 63 65 6c 6c 2e d0 98 d0 bd d0 cell......
41d0: b4 d0 b5 d0 ba d1 81 d0 9a d0 b0 d1 80 d1 82 d0 ................
41e0: b8 d0 bd d0 ba d0 b8 20 3d 20 30 0d 0a 20 20 20 ....... = 0..
41f0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d }.. }..}
4200: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 d0 9f d0 ....function ...
4210: b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 ................
4220: b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 d0 ................
4230: 9f d0 b5 d1 80 d0 b5 d0 b4 d0 a0 d0 b0 d0 b7 d0 ................
4240: b2 d0 be d1 80 d0 b0 d1 87 d0 b8 d0 b2 d0 b0 d0 ................
4250: bd d0 b8 d0 b5 d0 bc 28 d0 ad d0 bb d0 b5 d0 bc .......(........
4260: d0 b5 d0 bd d1 82 2c 20 d0 a1 d1 82 d1 80 d0 be ......, ........
4270: d0 ba d0 b0 2c 20 d0 9e d1 82 d0 ba d0 b0 d0 b7 ...., ..........
4280: 29 0d 0a 7b 0d 0a 20 20 20 20 69 66 28 69 73 44 )..{.. if(isD
4290: 65 62 75 67 45 76 61 6c 45 6e 61 62 6c 65 64 28 ebugEvalEnabled(
42a0: 29 29 20 20 20 20 2f 2f 20 d0 95 d1 81 d0 bb d0 )) // .......
42b0: b8 20 d0 b2 d0 be d0 b7 d0 bc d0 be d0 b6 d0 bd . ..............
42c0: d0 be 20 d0 b2 d1 8b d1 87 d0 b8 d1 81 d0 bb d0 .. .............
42d0: b5 d0 bd d0 b8 d0 b5 20 d0 be d1 82 d0 bb d0 b0 ....... ........
42e0: d0 b4 d0 be d1 87 d0 bd d1 8b d1 85 20 d0 b2 d1 ............ ...
42f0: 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d0 b9 0d ................
4300: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 . {..
4310: 76 61 72 20 72 6f 77 20 3d 20 d0 a1 d1 82 d1 80 var row = ......
4320: d0 be d0 ba d0 b0 2e 76 61 6c 0d 0a 20 20 20 20 .......val..
4330: 20 20 20 20 69 66 28 72 6f 77 2e d0 a3 d1 80 d0 if(row......
4340: be d0 b2 d0 b5 d0 bd d1 8c 28 29 20 3e 20 30 29 .........() > 0)
4350: 20 20 20 2f 2f 20 d0 ad d1 82 d0 be 20 d0 bd d0 // ...... ...
4360: b5 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 20 d1 . ............ .
4370: 81 20 d0 b8 d0 bc d0 b5 d0 bd d0 b5 d0 bc 20 d1 . ............ .
4380: 80 d0 b0 d0 b7 d0 b4 d0 b5 d0 bb d0 b0 0d 0a 20 ...............
4390: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 {..
43a0: 20 20 20 20 20 20 69 66 28 72 6f 77 2e d0 a1 d1 if(row....
43b0: 82 d1 80 d0 be d0 ba d0 b8 2e d0 9a d0 be d0 bb ................
43c0: d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be 28 29 ..............()
43d0: 20 3d 3d 20 31 20 26 26 20 72 6f 77 2e d0 a1 d1 == 1 && row....
43e0: 82 d1 80 d0 be d0 ba d0 b8 2e d0 9f d0 be d0 bb ................
43f0: d1 83 d1 87 d0 b8 d1 82 d1 8c 28 30 29 2e d0 9d ..........(0)...
4400: d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 3d .............. =
4410: 3d 20 22 2d 22 29 0d 0a 20 20 20 20 20 20 20 20 = "-")..
4420: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 {..
4430: 20 20 20 20 20 20 20 2f 2f 20 d0 a0 d0 b0 d0 b7 // ......
4440: d0 b2 d0 be d1 80 d0 b0 d1 87 d0 b8 d0 b2 d0 b0 ................
4450: d0 b5 d0 bc 20 d0 bf d0 b5 d1 80 d0 b2 d1 8b d0 .... ...........
4460: b9 20 d1 80 d0 b0 d0 b7 0d 0a 20 20 20 20 20 20 . ........
4470: 20 20 20 20 20 20 20 20 20 20 75 70 64 61 74 65 update
4480: 4f 6e 65 45 78 70 72 65 73 73 69 6f 6e 28 72 6f OneExpression(ro
4490: 77 2c 20 66 75 6c 6c 4e 61 6d 65 28 72 6f 77 2e w, fullName(row.
44a0: d0 a0 d0 be d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c ................
44b0: 29 20 2b 20 22 2e 22 29 0d 0a 20 20 20 20 20 20 ) + ".")..
44c0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 }..
44d0: 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a }.. }..}....
44e0: 66 75 6e 63 74 69 6f 6e 20 d0 9f d0 b5 d1 80 d0 function .......
44f0: b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1 ................
4500: 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 d0 9f d0 b5 d1 ................
4510: 80 d0 b5 d0 b4 d0 9d d0 b0 d1 87 d0 b0 d0 bb d0 ................
4520: be d0 bc d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 bb d0 ................
4530: b5 d0 bd d0 b8 d1 8f 28 d0 ad d0 bb d0 b5 d0 bc .......(........
4540: d0 b5 d0 bd d1 82 2c 20 d0 9e d1 82 d0 ba d0 b0 ......, ........
4550: d0 b7 2c 20 d0 9a d0 be d0 bf d0 b8 d1 80 d0 be .., ............
4560: d0 b2 d0 b0 d0 bd d0 b8 d0 b5 2c 20 d0 a0 d0 be .........., ....
4570: d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 29 7b 0d 0a ............){..
4580: 0d 0a 20 20 20 20 4d 65 73 73 61 67 65 28 d0 a0 .. Message(..
4590: d0 be d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 2e d0 ................
45a0: 9d d0 b0 d0 b8 d0 bc d0 b5 d0 bd d0 be d0 b2 d0 ................
45b0: b0 d0 bd d0 b8 d0 b5 29 3b 0d 0a 20 20 20 20 69 .......);.. i
45c0: 66 20 28 21 d0 a0 d0 be d0 b4 d0 b8 d1 82 d0 b5 f (!............
45d0: d0 bb d1 8c 29 7b 0d 0a 20 20 20 20 20 20 20 20 ....){..
45e0: d0 9e d1 82 d0 ba d0 b0 d0 b7 20 3d 20 74 72 75 .......... = tru
45f0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 e;.. retu
4600: 72 6e 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 rn;.. }..
4610: 0d 0a 20 20 20 20 2f 2f 69 66 20 28 d0 a0 d0 be .. //if (....
4620: d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 2e d0 a3 d1 ................
4630: 80 d0 be d0 b2 d0 b5 d0 bd d1 8c 28 29 20 3e 20 ...........() >
4640: 30 29 7b 0d 0a 20 20 20 20 2f 2f 20 20 20 20 d0 0){.. // .
4650: 9e d1 82 d0 ba d0 b0 d0 b7 20 3d 20 74 72 75 65 ......... = true
4660: 3b 0d 0a 20 20 20 20 2f 2f 20 20 20 20 72 65 74 ;.. // ret
4670: 75 72 6e 3b 0d 0a 20 20 20 20 2f 2f 7d 0d 0a 20 urn;.. //}..
4680: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 d0 a0 d0 .. if (...
4690: be d0 b4 d0 b8 d1 82 d0 b5 d0 bb d1 8c 2e d0 9d ................
46a0: d0 b0 d0 b8 d0 bc d0 b5 d0 bd d0 be d0 b2 d0 b0 ................
46b0: d0 bd d0 b8 d0 b5 20 21 3d 20 72 48 61 6e 64 73 ...... != rHands
46c0: 2e d0 9d d0 b0 d0 b8 d0 bc d0 b5 d0 bd d0 be d0 ................
46d0: b2 d0 b0 d0 bd d0 b8 d0 b5 29 7b 0d 0a 20 20 20 .........){..
46e0: 20 20 20 20 20 d0 9e d1 82 d0 ba d0 b0 d0 b7 20 ..........
46f0: 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 = true;..
4700: 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 7d 0d return;.. }.
4710: 0a 20 20 20 20 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 . ..}....func
4720: 74 69 6f 6e 20 d0 9f d0 b5 d1 80 d0 b5 d0 bc d0 tion ...........
4730: b5 d0 bd d0 bd d1 8b d0 b5 d0 9e d1 82 d0 bb d0 ................
4740: b0 d0 b4 d0 ba d0 b8 d0 9d d0 b0 d0 b7 d0 b2 d0 ................
4750: b0 d0 bd d0 b8 d0 b5 d0 9f d1 80 d0 b8 d0 98 d0 ................
4760: b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd d0 b8 d0 b8 28 ...............(
4770: d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 29 20 ..............)
4780: 7b 0d 0a 0d 0a 20 20 20 20 75 70 64 61 74 65 4f {.... updateO
4790: 6e 65 45 78 70 72 65 73 73 69 6f 6e 28 66 6f 72 neExpression(for
47a0: 6d 2e d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 m...............
47b0: d1 8b d0 a4 d0 be d1 80 d0 bc d1 8b 2e d0 9f d0 ................
47c0: b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d0 ................
47d0: b5 d0 9e d1 82 d0 bb d0 b0 d0 b4 d0 ba d0 b8 2e ................
47e0: d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 8f d0 a1 ................
47f0: d1 82 d1 80 d0 be d0 ba d0 b0 2c 20 22 22 29 3b .........., "");
4800: 0d 0a 20 20 20 20 0d 0a 7d 0d 0a 0d 0a 0d 0a 66 .. ..}......f
4810: 75 6e 63 74 69 6f 6e 20 47 65 74 54 69 6d 65 72 unction GetTimer
4820: 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 ExpressionUpdate
4830: 72 28 29 7b 0d 0a 20 20 20 20 2f 2f 2f 2f 2f 2f r(){.. //////
4840: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4850: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4860: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4870: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4880: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4890: 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 54 69 6d 65 72 45 //..////{ TimerE
48a0: 78 70 72 65 73 73 69 6f 6e 55 70 64 61 74 65 72 xpressionUpdater
48b0: 20 2d 20 d0 bf d0 b5 d1 80 d0 b5 d0 be d0 b4 d0 - .............
48c0: b8 d1 87 d0 b5 d1 81 d0 ba d0 b8 20 d0 be d0 b1 ........... ....
48d0: d0 bd d0 be d0 b2 d0 bb d1 8f d0 b5 d0 bc 20 d0 .............. .
48e0: b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d1 8f 20 ...............
48f0: d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd ................
4900: d1 8b d1 85 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a 54 69 ......////....Ti
4910: 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64 merExpressionUpd
4920: 61 74 65 72 20 3d 20 73 74 64 6c 69 62 2e 43 6c ater = stdlib.Cl
4930: 61 73 73 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a ass.extend({....
4940: 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a 20 construct :
4950: 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 function() {..
4960: 20 20 20 20 20 20 74 68 69 73 2e 74 69 6d 65 72 this.timer
4970: 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 Id = 0;..
4980: 20 74 68 69 73 2e 73 74 6f 70 20 3d 20 66 61 6c this.stop = fal
4990: 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 se;.. thi
49a0: 73 2e 74 69 6d 65 6f 75 74 20 3d 20 31 30 30 3b s.timeout = 100;
49b0: 0d 0a 20 20 20 20 20 20 20 20 2f 2f 74 68 69 73 .. //this
49c0: 2e 73 74 61 72 74 57 61 74 63 68 28 29 3b 0d 0a .startWatch();..
49d0: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 75 70 },.... up
49e0: 64 61 74 65 54 69 6d 65 72 3a 20 66 75 6e 63 74 dateTimer: funct
49f0: 69 6f 6e 28 29 7b 0d 0a 20 20 20 20 20 20 20 20 ion(){..
4a00: 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 68 69 logger.debug(thi
4a10: 73 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 s.name);..
4a20: 20 20 74 68 69 73 2e 73 74 6f 70 57 61 74 63 68 this.stopWatch
4a30: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 ();.. thi
4a40: 73 2e 73 74 61 72 74 57 61 74 63 68 28 29 0d 0a s.startWatch()..
4a50: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 73 74 },.... st
4a60: 61 72 74 57 61 74 63 68 20 3a 20 66 75 6e 63 74 artWatch : funct
4a70: 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20 20 ion () {..
4a80: 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 74 logger.debug(t
4a90: 68 69 73 2e 6e 61 6d 65 20 2b 20 22 20 22 2b 20 his.name + " "+
4aa0: 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 this.constructor
4ab0: 2e 6e 61 6d 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 .name);....
4ac0: 20 20 20 69 66 20 28 74 68 69 73 2e 74 69 6d 65 if (this.time
4ad0: 72 49 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 rId)..
4ae0: 20 20 74 68 69 73 2e 73 74 6f 70 57 61 74 63 68 this.stopWatch
4af0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 ();.. ..
4b00: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e if (this.
4b10: 73 74 6f 70 29 7b 0d 0a 20 20 20 20 20 20 20 20 stop){..
4b20: 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 logger.debug
4b30: 28 22 d0 a2 d0 b0 d0 b9 d0 bc d0 b5 d1 80 20 d0 ("............ .
4b40: be d1 82 d0 ba d0 bb d1 8e d1 87 d0 b5 d0 bd 20 ...............
4b50: 22 2b 74 68 69 73 2e 73 74 6f 70 29 3b 0d 0a 20 "+this.stop);..
4b60: 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 retur
4b70: 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d n;.. }...
4b80: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69 . this.ti
4b90: 6d 65 72 49 64 20 3d 20 63 72 65 61 74 65 54 69 merId = createTi
4ba0: 6d 65 72 28 74 68 69 73 2e 74 69 6d 65 6f 75 74 mer(this.timeout
4bb0: 2c 20 74 68 69 73 2c 20 27 6f 6e 54 69 6d 65 72 , this, 'onTimer
4bc0: 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 ');.. },....
4bd0: 20 20 20 73 74 6f 70 57 61 74 63 68 20 3a 20 66 stopWatch : f
4be0: 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 unction () {..
4bf0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e if (!this.
4c00: 74 69 6d 65 72 49 64 29 0d 0a 20 20 20 20 20 20 timerId)..
4c10: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 return;..
4c20: 20 20 20 20 20 20 20 6b 69 6c 6c 54 69 6d 65 72 killTimer
4c30: 28 74 68 69 73 2e 74 69 6d 65 72 49 64 29 3b 0d (this.timerId);.
4c40: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69 . this.ti
4c50: 6d 65 72 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 merId = 0;..
4c60: 7d 2c 0d 0a 0d 0a 20 20 20 20 6f 6e 54 69 6d 65 },.... onTime
4c70: 72 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 74 69 r : function (ti
4c80: 6d 65 72 49 64 29 20 7b 0d 0a 20 20 20 20 20 20 merId) {..
4c90: 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 .. this
4ca0: 2e 73 74 6f 70 57 61 74 63 68 28 29 3b 0d 0a 20 .stopWatch();..
4cb0: 20 20 20 20 20 20 20 69 66 28 21 69 73 44 65 62 if(!isDeb
4cc0: 75 67 45 76 61 6c 45 6e 61 62 6c 65 64 28 29 29 ugEvalEnabled())
4cd0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 {.. r
4ce0: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 eturn;..
4cf0: 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 66 28 }.... if(
4d00: 21 66 6f 72 6d 2e d0 9e d1 82 d0 ba d1 80 d1 8b !form...........
4d10: d1 82 d0 b0 28 29 29 7b 0d 0a 20 20 20 20 20 20 ....()){..
4d20: 20 20 20 20 20 20 74 68 69 73 2e 73 74 6f 70 57 this.stopW
4d30: 61 74 63 68 28 29 3b 0d 0a 20 20 20 20 20 20 20 atch();..
4d40: 20 20 20 20 20 72 65 74 75 72 6e 0d 0a 20 20 20 return..
4d50: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 }..
4d60: 74 72 79 20 7b 0d 0a 20 20 20 20 20 20 20 20 75 try {.. u
4d70: 70 64 61 74 65 52 6f 77 73 28 72 4d 6f 64 75 6c pdateRows(rModul
4d80: 65 29 0d 0a 20 20 20 20 20 20 20 20 75 70 64 61 e).. upda
4d90: 74 65 52 6f 77 73 28 72 50 61 72 61 6d 73 29 0d teRows(rParams).
4da0: 0a 20 20 20 20 20 20 20 20 75 70 64 61 74 65 52 . updateR
4db0: 6f 77 73 28 72 4c 6f 63 61 6c 29 0d 0a 20 20 20 ows(rLocal)..
4dc0: 20 20 20 20 20 75 70 64 61 74 65 52 6f 77 73 28 updateRows(
4dd0: 72 48 61 6e 64 73 29 3b 0d 0a 20 20 20 20 20 20 rHands);..
4de0: 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 20 63 61 .. } ca
4df0: 74 63 68 20 28 65 29 20 7b 0d 0a 20 20 20 20 20 tch (e) {..
4e00: 20 20 20 20 20 20 20 20 2f 2f 20 d0 92 d1 81 d0 // .....
4e10: b5 20 d0 be d1 88 d0 b8 d0 b1 d0 ba d0 b8 20 d0 . ............ .
4e20: b1 d1 83 d0 b4 d0 b5 d0 bc 20 d0 b3 d0 b0 d1 81 ......... ......
4e30: d0 b8 d1 82 d1 8c 0d 0a 20 20 20 20 20 20 20 20 ........
4e40: 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 0d 0a }.. }.. ..
4e50: 7d 29 3b 20 2f 2f 20 65 6e 64 20 6f 66 20 54 69 }); // end of Ti
4e60: 6d 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64 merExpressionUpd
4e70: 61 74 65 72 20 63 6c 61 73 73 0d 0a 0d 0a 20 20 ater class....
4e80: 20 20 72 65 74 75 72 6e 20 6e 65 77 20 54 69 6d return new Tim
4e90: 65 72 45 78 70 72 65 73 73 69 6f 6e 55 70 64 61 erExpressionUpda
4ea0: 74 65 72 28 29 3b 0d 0a 7d 0d 0a 0d 0a ter();..}....