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 73 63 72 69 70 pt..$uname scrip
0020: 74 64 65 76 0d 0a 24 64 6e 61 6d 65 20 d0 a0 d0 tdev..$dname ...
0030: b0 d0 b7 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0 ................
0040: b0 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 be . ..............
0050: d0 b2 0d 0a 24 61 64 64 69 6e 20 67 6c 6f 62 61 ....$addin globa
0060: 6c 0d 0a 24 61 64 64 69 6e 20 73 74 64 6c 69 62 l..$addin stdlib
0070: 0d 0a 24 61 64 64 69 6e 20 73 74 64 63 6f 6d 6d ..$addin stdcomm
0080: 61 6e 64 73 0d 0a 24 61 64 64 69 6e 20 73 6e 65 ands..$addin sne
0090: 67 6f 70 61 74 77 6e 64 0d 0a 0d 0a 2f 2a 20 d0 gopatwnd..../* .
00a0: a1 d0 ba d1 80 d0 b8 d0 bf d1 82 2d d0 bf d0 be ...........-....
00b0: d0 bc d0 be d1 89 d0 bd d0 b8 d0 ba 20 d0 b4 d0 ............ ...
00c0: bb d1 8f 20 d1 80 d0 b0 d0 b7 d1 80 d0 b0 d0 b1 ... ............
00d0: d0 be d1 82 d1 87 d0 b8 d0 ba d0 be d0 b2 20 d1 .............. .
00e0: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 be d0 b2 20 ...............
00f0: d0 b4 d0 bb d1 8f 20 d0 a1 d0 bd d0 b5 d0 b3 d0 ...... .........
0100: be d0 bf d0 b0 d1 82 d0 b0 2e 0d 0a 20 2a 20 d0 ............ * .
0110: 90 d0 b2 d1 82 d0 be d1 80 20 20 20 20 20 20 20 .........
0120: 20 3a 20 d0 90 d0 bb d0 b5 d0 ba d1 81 d0 b0 d0 : .............
0130: bd d0 b4 d1 80 20 d0 9a d1 83 d0 bd d1 82 d0 b0 ..... ..........
0140: d1 88 d0 be d0 b2 2c 20 6b 75 6e 74 61 73 68 6f ......, kuntasho
0150: 76 40 63 6f 6d 70 61 75 64 2e 72 75 0d 0a 20 2a v@compaud.ru.. *
0160: 20 d0 94 d0 b0 d1 82 d0 b0 20 d1 81 d0 be d0 b7 ........ ......
0170: d0 b4 d0 b0 d0 bd d0 b8 d1 8f 3a 20 31 38 2e 30 ..........: 18.0
0180: 38 2e 32 30 31 31 0d 0a 20 2a 20 d0 9e d0 bf d0 8.2011.. * .....
0190: b8 d1 81 d0 b0 d0 bd d0 b8 d0 b5 3a 20 0d 0a 20 ...........: ..
01a0: 2a 20 20 20 20 20 20 2d 20 d0 94 d0 be d0 b1 d0 * - .......
01b0: b0 d0 b2 d0 bb d1 8f d0 b5 d1 82 20 d0 b2 20 d0 ........... .. .
01c0: ba d0 be d0 bd d1 82 d0 b5 d0 ba d1 81 d1 82 d0 ................
01d0: bd d0 be d0 b5 20 d0 bc d0 b5 d0 bd d1 8e 20 d0 ..... ........ .
01e0: be d0 ba d0 bd d0 b0 20 d0 a1 d0 bd d0 b5 d0 b3 ....... ........
01f0: d0 be d0 bf d0 b0 d1 82 d0 b0 20 d0 bf d1 83 d0 .......... .....
0200: bd d0 ba d1 82 20 22 d0 a0 d0 b5 d0 b4 d0 b0 d0 ..... ".........
0210: ba d1 82 d0 b8 d1 80 d0 be d0 b2 d0 b0 d1 82 d1 ................
0220: 8c 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 22 2c . ............",
0230: 0d 0a 20 2a 20 20 20 20 20 20 d0 bf d1 80 d0 b8 .. * ......
0240: 20 d0 b2 d1 8b d0 b1 d0 be d1 80 d0 b5 20 d0 ba ............ ..
0250: d0 be d1 82 d0 be d1 80 d0 be d0 b3 d0 be 20 d0 .............. .
0260: b8 d1 81 d1 85 d0 be d0 b4 d0 bd d1 8b d0 b9 20 ...............
0270: d0 ba d0 be d0 b4 20 d1 81 d0 ba d1 80 d0 b8 d0 ...... .........
0280: bf d1 82 d0 b0 20 d0 be d1 82 d0 ba d1 80 d1 8b ..... ..........
0290: d0 b2 d0 b0 d0 b5 d1 82 d1 81 d1 8f 20 d0 b2 20 ............ ..
02a0: d1 83 d1 81 d1 82 d0 b0 d0 bd d0 be d0 b2 d0 bb ................
02b0: d0 b5 d0 bd d0 bd d0 be d0 bc 20 d0 b2 20 d0 bd .......... .. ..
02c0: d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0 ................
02d0: d1 85 0d 0a 20 2a 20 20 20 20 20 20 d1 82 d0 b5 .... * ....
02e0: d0 ba d1 81 d1 82 d0 be d0 b2 d0 be d0 bc 20 d1 .............. .
02f0: 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 d0 be d1 80 d0 ................
0300: b5 2e 0d 0a 20 2a 0d 0a 20 2a 20 20 20 20 20 20 .... *.. *
0310: 2d 20 d0 9e d1 82 d1 81 d0 bb d0 b5 d0 b6 d0 b8 - ..............
0320: d0 b2 d0 b0 d0 b5 d1 82 20 d0 b8 d0 b7 d0 bc d0 ........ .......
0330: b5 d0 bd d0 b5 d0 bd d0 b8 d1 8f 20 d0 b2 20 d0 ........... .. .
0340: be d1 82 d0 ba d1 80 d1 8b d1 82 d0 be d0 bc 20 ...............
0350: d0 bd d0 b0 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ba d1 .... ...........
0360: 82 d0 b8 d1 80 d0 be d0 b2 d0 b0 d0 bd d0 b8 d0 ................
0370: b5 20 d1 84 d0 b0 d0 b9 d0 bb d0 b5 20 d1 81 d0 . .......... ...
0380: ba d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b8 20 d0 ........... .. .
0390: b0 d0 b2 d1 82 d0 be d0 bc d0 b0 d1 82 d0 b8 d1 ................
03a0: 87 d0 b5 d1 81 d0 ba d0 b8 20 0d 0a 20 2a 20 20 ......... .. *
03b0: 20 20 20 20 d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 ............
03c0: d0 b3 d1 80 d1 83 d0 b6 d0 b0 d0 b5 d1 82 20 d0 .............. .
03d0: b5 d0 b3 d0 be 2c 20 d1 82 d0 b0 d0 ba d0 b8 d0 ....., .........
03e0: bc 20 d0 be d0 b1 d1 80 d0 b0 d0 b7 d0 be d0 bc . ..............
03f0: 2c 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd , ..............
0400: d0 b8 d1 8f 2c 20 d0 b2 d0 bd d0 b5 d1 81 d0 b5 ...., ..........
0410: d0 bd d0 bd d1 8b d0 b5 20 d0 b2 20 d1 81 d0 ba ........ .. ....
0420: d1 80 d0 b8 d0 bf d1 82 20 d0 b2 d1 81 d1 82 d1 ........ .......
0430: 83 d0 bf d0 b0 d1 8e d1 82 20 d1 81 d1 80 d0 b0 ......... ......
0440: d0 b7 d1 83 20 d0 b1 d0 b5 d0 b7 0d 0a 20 2a 20 .... ........ *
0450: 20 20 20 20 20 d0 bd d0 b5 d0 be d0 b1 d1 85 d0 ...........
0460: be d0 b4 d0 b8 d0 bc d0 be d1 81 d1 82 d0 b8 20 ...............
0470: d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 ................
0480: d1 83 d0 b7 d0 ba d0 b8 20 d1 81 d0 ba d1 80 d0 ........ .......
0490: b8 d0 bf d1 82 d0 b0 2e 0d 0a 20 2a 2f 0d 0a 0d .......... */...
04a0: 0a 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28 .stdlib.require(
04b0: 22 6a 73 68 69 6e 74 2e 6a 73 22 2c 20 53 65 6c "jshint.js", Sel
04c0: 66 53 63 72 69 70 74 29 3b 0d 0a 73 74 64 6c 69 fScript);..stdli
04d0: 62 2e 72 65 71 75 69 72 65 28 22 54 65 78 74 57 b.require("TextW
04e0: 69 6e 64 6f 77 2e 6a 73 22 2c 20 53 65 6c 66 53 indow.js", SelfS
04f0: 63 72 69 70 74 29 3b 0d 0a 73 74 64 6c 69 62 2e cript);..stdlib.
0500: 72 65 71 75 69 72 65 28 22 53 65 6c 65 63 74 56 require("SelectV
0510: 61 6c 75 65 44 69 61 6c 6f 67 2e 6a 73 22 2c 20 alueDialog.js",
0520: 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 0d 0a SelfScript);....
0530: 2f 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /* *************
0540: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0550: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0560: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 *************..
0570: 2a 20 20 d0 9d d0 b0 d1 81 d1 82 d1 80 d0 be d0 * .............
0580: b9 d0 ba d0 b8 20 d1 81 d0 ba d1 80 d0 b8 d0 bf ..... ..........
0590: d1 82 d0 b0 20 d0 bf d0 be 20 d1 83 d0 bc d0 be .... .... ......
05a0: d0 bb d1 87 d0 b0 d0 bd d0 b8 d1 8e 2e 0d 0a 20 ...............
05b0: 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a * **************
05c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
05d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
05e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 2a 2f 0d 0a *********** */..
05f0: 20 0d 0a 2f 2f 20 d0 98 d0 bd d1 82 d0 b5 d1 80 ..// ..........
0600: d0 b2 d0 b0 d0 bb 20 d0 bf d1 80 d0 be d0 b2 d0 ...... .........
0610: b5 d1 80 d0 ba d0 b8 20 d1 80 d0 b5 d0 b4 d0 b0 ....... ........
0620: d0 ba d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc d1 8b ................
0630: d1 85 20 d1 84 d0 b0 d0 b9 d0 bb d0 be d0 b2 2e .. .............
0640: 0d 0a 76 61 72 20 63 68 65 63 6b 49 6e 74 65 72 ..var checkInter
0650: 76 61 6c 20 3d 20 32 3b 20 0d 0a 0d 0a 2f 2f 20 val = 2; ....//
0660: d0 a1 d0 bf d1 80 d0 b0 d1 88 d0 b8 d0 b2 d0 b0 ................
0670: d1 82 d1 8c 20 d0 bf d0 b5 d1 80 d0 b5 d0 b4 20 .... ..........
0680: d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 ................
0690: d1 83 d0 b7 d0 ba d0 be d0 b9 2e 0d 0a 76 61 72 .............var
06a0: 20 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 askBeforeReload
06b0: 20 3d 20 74 72 75 65 3b 0d 0a 0d 0a 2f 2f 20 d0 = true;....// .
06c0: 9a d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 d0 b4 ............. ..
06d0: d0 bb d1 8f 20 d0 b7 d0 b0 d0 bf d1 83 d1 81 d0 .... ...........
06e0: ba d0 b0 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 ... ............
06f0: d0 be d1 80 d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0 ...... .........
0700: bf d1 82 d0 b0 2e 0d 0a 76 61 72 20 72 75 6e 45 ........var runE
0710: 64 69 74 6f 72 43 6d 64 20 3d 20 22 6e 6f 74 65 ditorCmd = "note
0720: 70 61 64 2e 65 78 65 20 5c 22 25 31 5c 22 22 3b pad.exe \"%1\"";
0730: 0d 0a 0d 0a 2f 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a ..../* *********
0740: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0750: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0760: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0770: 2a 0d 0a 20 2a 20 20 d0 9c d0 b0 d0 ba d1 80 d0 *.. * .........
0780: be d1 81 d1 8b 2e 0d 0a 20 2a 20 2a 2a 2a 2a 2a ........ * *****
0790: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
07a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
07b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
07c0: 2a 2a 2a 2a 20 2a 2f 0d 0a 0d 0a 66 75 6e 63 74 **** */....funct
07d0: 69 6f 6e 20 6d 61 63 72 6f 73 d0 9d d0 b0 d1 81 ion macros......
07e0: d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0 28 29 0d 0a ............()..
07f0: 7b 0d 0a 20 20 20 20 76 61 72 20 70 61 74 68 54 {.. var pathT
0800: 6f 46 6f 72 6d 20 3d 20 53 65 6c 66 53 63 72 69 oForm = SelfScri
0810: 70 74 2e 66 75 6c 6c 50 61 74 68 2e 72 65 70 6c pt.fullPath.repl
0820: 61 63 65 28 2f 6a 73 24 2f 2c 20 27 73 73 66 27 ace(/js$/, 'ssf'
0830: 29 0d 0a 20 20 20 20 2f 2f 20 d0 9e d0 b1 d1 80 ).. // ......
0840: d0 b0 d0 b1 d0 be d1 82 d0 ba d1 83 20 d1 81 d0 ............ ...
0850: be d0 b1 d1 8b d1 82 d0 b8 d0 b9 20 d1 84 d0 be ........... ....
0860: d1 80 d0 bc d1 8b 20 d0 bf d1 80 d0 b8 d0 b2 d1 ...... .........
0870: 8f d0 b6 d0 b5 d0 bc 20 d0 ba 20 d1 81 d0 b0 d0 ....... .. .....
0880: bc d0 be d0 bc d1 83 20 d1 81 d0 ba d1 80 d0 b8 ....... ........
0890: d0 bf d1 82 d1 83 0d 0a 20 20 20 20 66 6f 72 6d ........ form
08a0: 20 3d 20 6c 6f 61 64 53 63 72 69 70 74 46 6f 72 = loadScriptFor
08b0: 6d 28 70 61 74 68 54 6f 46 6f 72 6d 2c 20 53 65 m(pathToForm, Se
08c0: 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 29 3b 0d lfScript.self);.
08d0: 0a 20 20 20 20 66 6f 72 6d 2e 63 68 65 63 6b 49 . form.checkI
08e0: 6e 74 65 72 76 61 6c 20 3d 20 63 68 65 63 6b 49 nterval = checkI
08f0: 6e 74 65 72 76 61 6c 3b 0d 0a 20 20 20 20 66 6f nterval;.. fo
0900: 72 6d 2e 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f rm.askBeforeRelo
0910: 61 64 20 3d 20 61 73 6b 42 65 66 6f 72 65 52 65 ad = askBeforeRe
0920: 6c 6f 61 64 3b 0d 0a 20 20 20 20 66 6f 72 6d 2e load;.. form.
0930: 72 75 6e 45 64 69 74 6f 72 43 6d 64 20 3d 20 72 runEditorCmd = r
0940: 75 6e 45 64 69 74 6f 72 43 6d 64 3b 0d 0a 20 20 unEditorCmd;..
0950: 20 20 66 6f 72 6d 2e d0 9e d1 82 d0 ba d1 80 d1 form..........
0960: 8b d1 82 d1 8c d0 9c d0 be d0 b4 d0 b0 d0 bb d1 ................
0970: 8c d0 bd d0 be 28 29 3b 0d 0a 20 20 20 20 66 6f .....();.. fo
0980: 72 6d 20 3d 20 6e 75 6c 6c 3b 0d 0a 7d 0d 0a 0d rm = null;..}...
0990: 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f 73 .function macros
09a0: d0 a1 d1 84 d0 be d1 80 d0 bc d0 b8 d1 80 d0 be ................
09b0: d0 b2 d0 b0 d1 82 d1 8c d0 9a d0 be d0 b4 d0 9e ................
09c0: d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d1 87 d0 b8 ................
09d0: d0 ba d0 be d0 b2 d0 a4 d0 be d1 80 d0 bc d1 8b ................
09e0: d0 9d d0 b0 4a 61 76 61 53 63 72 69 70 74 28 29 ....JavaScript()
09f0: 20 7b 0d 0a 0d 0a 20 20 20 20 76 61 72 20 77 20 {.... var w
0a00: 3d 20 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65 = stdlib.require
0a10: 28 27 54 65 78 74 57 69 6e 64 6f 77 2e 6a 73 27 ('TextWindow.js'
0a20: 29 2e 47 65 74 54 65 78 74 57 69 6e 64 6f 77 28 ).GetTextWindow(
0a30: 29 3b 0d 0a 20 20 20 20 69 66 20 28 21 77 29 20 );.. if (!w)
0a40: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 0d 0a 20 return;.. ..
0a50: 20 20 20 2f 2f 20 d0 95 d1 81 d0 bb d0 b8 20 d0 // ........ .
0a60: b5 d1 81 d1 82 d1 8c 20 d0 b2 d1 8b d0 b4 d0 b5 ....... ........
0a70: d0 bb d0 b5 d0 bd d0 b8 d0 b5 20 2d 20 d0 b8 d1 .......... - ...
0a80: 81 d0 bf d0 be d0 bb d1 8c d0 b7 d1 83 d0 b5 d0 ................
0a90: bc 20 d0 b5 d0 b3 d0 be 2c 20 d0 b8 d0 bd d0 b0 . ......, ......
0aa0: d1 87 d0 b5 20 d0 ba d0 be d0 bd d0 b2 d0 b5 d1 .... ...........
0ab0: 80 d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc 20 d0 b2 ............. ..
0ac0: d0 b5 d1 81 d1 8c 20 d0 bc d0 be d0 b4 d1 83 d0 ...... .........
0ad0: bb d1 8c 2e 0d 0a 20 20 20 20 76 61 72 20 63 6f ...... var co
0ae0: 64 65 54 6f 43 6f 6e 76 65 72 74 20 3d 20 77 2e deToConvert = w.
0af0: 47 65 74 53 65 6c 65 63 74 65 64 54 65 78 74 28 GetSelectedText(
0b00: 29 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66 );.. .. if
0b10: 20 28 63 6f 64 65 54 6f 43 6f 6e 76 65 72 74 20 (codeToConvert
0b20: 3d 3d 20 22 22 29 0d 0a 20 20 20 20 20 20 20 20 == "")..
0b30: 63 6f 64 65 54 6f 43 6f 6e 76 65 72 74 20 3d 20 codeToConvert =
0b40: 77 2e 47 65 74 54 65 78 74 28 29 3b 0d 0a 20 20 w.GetText();..
0b50: 20 20 20 20 20 20 0d 0a 20 20 20 20 76 61 72 20 .. var
0b60: 63 6c 61 73 73 4e 61 6d 65 20 3d 20 73 6e 65 67 className = sneg
0b70: 6f 70 61 74 2e 70 61 72 73 65 54 65 6d 70 6c 61 opat.parseTempla
0b80: 74 65 53 74 72 69 6e 67 28 27 3c 3f 22 d0 a3 d0 teString('<?"...
0b90: ba d0 b0 d0 b6 d0 b8 d1 82 d0 b5 20 d0 b8 d0 bc ........... ....
0ba0: d1 8f 20 d0 ba d0 bb d0 b0 d1 81 d1 81 d0 b0 20 .. ............
0bb0: 28 d0 b5 d1 81 d0 bb d0 b8 20 d0 bd d0 b5 20 d0 (........ .... .
0bc0: b7 d0 b0 d0 b4 d0 b0 d0 bd d0 be 20 2d 20 d1 81 ........... - ..
0bd0: d0 be d0 b7 d0 b4 d0 b0 d1 8e d1 82 d1 81 d1 8f ................
0be0: 20 d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 20 ..............
0bf0: d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 29 22 ..............)"
0c00: 3e 27 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a >');.. ..
0c10: 20 20 20 20 76 61 72 20 6a 73 43 6f 64 65 20 3d var jsCode =
0c20: 20 63 6f 64 65 54 6f 43 6f 6e 76 65 72 74 3b 0d codeToConvert;.
0c30: 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72 20 72 . .. var r
0c40: 65 70 20 3d 20 63 6c 61 73 73 4e 61 6d 65 20 3f ep = className ?
0c50: 20 63 6c 61 73 73 4e 61 6d 65 20 2b 20 22 2e 70 className + ".p
0c60: 72 6f 74 6f 74 79 70 65 2e 24 31 20 3d 20 66 75 rototype.$1 = fu
0c70: 6e 63 74 69 6f 6e 20 28 24 32 29 20 7b 22 20 3a nction ($2) {" :
0c80: 20 22 66 75 6e 63 74 69 6f 6e 20 24 31 20 28 24 "function $1 ($
0c90: 32 29 20 7b 22 3b 0d 0a 20 20 20 20 0d 0a 20 20 2) {";.. ..
0ca0: 20 20 6a 73 43 6f 64 65 20 3d 20 6a 73 43 6f 64 jsCode = jsCod
0cb0: 65 2e 72 65 70 6c 61 63 65 28 2f d0 9f d1 80 d0 e.replace(/.....
0cc0: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 5c 73 2b .............\s+
0cd0: 28 5b 5c 77 d0 90 2d d1 8f 5c 64 5f 5d 2b 29 5c ([\w..-..\d_]+)\
0ce0: 73 2a 5c 28 28 2e 2a 3f 29 5c 29 2f 69 67 2c 20 s*\((.*?)\)/ig,
0cf0: 72 65 70 29 3b 0d 0a 20 20 20 20 6a 73 43 6f 64 rep);.. jsCod
0d00: 65 20 3d 20 6a 73 43 6f 64 65 2e 72 65 70 6c 61 e = jsCode.repla
0d10: 63 65 28 2f d0 9a d0 be d0 bd d0 b5 d1 86 d0 9f ce(/............
0d20: d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b ................
0d30: 2f 69 67 2c 20 22 7d 22 29 3b 0d 0a 20 20 20 20 /ig, "}");..
0d40: 0d 0a 20 20 20 20 73 74 64 63 6f 6d 6d 61 6e 64 .. stdcommand
0d50: 73 2e 46 72 6e 74 65 6e 64 2e 43 6c 65 61 72 4d s.Frntend.ClearM
0d60: 65 73 73 61 67 65 57 69 6e 64 6f 77 2e 73 65 6e essageWindow.sen
0d70: 64 28 29 3b 20 2f 2f 20 d0 9e d1 87 d0 b8 d1 81 d(); // ........
0d80: d1 82 d0 b8 d1 82 d1 8c 20 d0 be d0 ba d0 bd d0 ........ .......
0d90: be 20 d1 81 d0 be d0 be d0 b1 d1 89 d0 b5 d0 bd . ..............
0da0: d0 b8 d0 b9 2e 0d 0a 20 20 20 20 4d 65 73 73 61 ....... Messa
0db0: 67 65 28 6a 73 43 6f 64 65 29 3b 0d 0a 20 20 20 ge(jsCode);..
0dc0: 20 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 74 72 .. return tr
0dd0: 75 65 3b 0d 0a 7d 0d 0a 20 0d 0a 66 75 6e 63 74 ue;..}.. ..funct
0de0: 69 6f 6e 20 6d 61 63 72 6f 73 d0 9f d0 b5 d1 80 ion macros......
0df0: d0 b5 d0 b7 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 b8 ................
0e00: d1 82 d1 8c d0 a2 d0 b5 d0 ba d1 83 d1 89 d0 b8 ................
0e10: d0 b9 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 28 29 ..............()
0e20: 20 7b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 {.. .. va
0e30: 72 20 77 20 3d 20 73 74 64 6c 69 62 2e 72 65 71 r w = stdlib.req
0e40: 75 69 72 65 28 27 54 65 78 74 57 69 6e 64 6f 77 uire('TextWindow
0e50: 2e 6a 73 27 29 2e 47 65 74 54 65 78 74 57 69 6e .js').GetTextWin
0e60: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 69 66 20 28 dow();.. if (
0e70: 21 77 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 !w) return;..
0e80: 20 0d 0a 20 20 20 20 76 61 72 20 76 69 65 77 20 .. var view
0e90: 3d 20 77 2e 47 65 74 56 69 65 77 28 29 3b 0d 0a = w.GetView();..
0ea0: 20 20 20 20 69 66 20 28 21 76 69 65 77 29 20 72 if (!view) r
0eb0: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 0d 0a 20 20 eturn;.. ..
0ec0: 20 20 76 61 72 20 64 6f 63 20 3d 20 76 69 65 77 var doc = view
0ed0: 2e 67 65 74 44 6f 63 75 6d 65 6e 74 28 29 3b 0d .getDocument();.
0ee0: 0a 20 20 20 20 69 66 20 28 64 6f 63 2e 69 73 4d . if (doc.isM
0ef0: 6f 64 69 66 69 65 64 20 7c 7c 20 64 6f 63 2e 70 odified || doc.p
0f00: 61 74 68 2e 6d 61 74 63 68 28 2f 5e 5c 73 2a 24 ath.match(/^\s*$
0f10: 2f 29 29 20 7b 0d 0a 20 20 20 20 09 76 61 72 20 /)) {.. .var
0f20: 61 6e 73 77 65 72 20 3d 20 28 6e 65 77 20 51 75 answer = (new Qu
0f30: 65 72 79 44 69 61 6c 6f 67 45 78 28 22 d0 a1 d0 eryDialogEx("...
0f40: ba d1 80 d0 b8 d0 bf d1 82 20 d0 b1 d1 8b d0 bb ......... ......
0f50: 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd 20 ..............
0f60: d0 b8 20 d0 bf d0 b5 d1 80 d0 b5 d0 b4 20 5b d0 .. .......... [.
0f70: bf d0 b5 d1 80 d0 b5 5d d0 b7 d0 b0 d0 b3 d1 80 .......]........
0f80: d1 83 d0 b7 d0 ba d0 be d0 b9 20 d0 b1 d1 83 d0 .......... .....
0f90: b4 d0 b5 d1 82 20 d0 b7 d0 b0 d0 bf d0 b8 d1 81 ..... ..........
0fa0: d0 b0 d0 bd 2e 20 d0 9f d1 80 d0 be d0 b4 d0 be ..... ..........
0fb0: d0 bb d0 b6 d0 b8 d1 82 d1 8c 3f 22 29 29 2e 53 ..........?")).S
0fc0: 68 6f 77 28 29 3b 0d 0a 20 20 20 20 09 69 66 20 how();.. .if
0fd0: 28 61 6e 73 77 65 72 20 3d 3d 20 51 75 65 72 79 (answer == Query
0fe0: 44 69 61 6c 6f 67 45 78 2e 52 65 74 75 72 6e 43 DialogEx.ReturnC
0ff0: 6f 64 65 73 2e 4e 6f 29 20 7b 0d 0a 20 20 20 20 odes.No) {..
1000: 09 09 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 09 ..return;.. .
1010: 7d 0d 0a 20 20 20 20 09 73 74 64 63 6f 6d 6d 61 }.. .stdcomma
1020: 6e 64 73 2e 46 72 61 6d 65 2e 46 69 6c 65 53 61 nds.Frame.FileSa
1030: 76 65 2e 73 65 6e 64 28 29 3b 0d 0a 20 20 20 20 ve.send();..
1040: 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72 }.. .. var
1050: 20 66 75 6c 6c 70 61 74 68 20 3d 20 27 73 63 72 fullpath = 'scr
1060: 69 70 74 3a 27 20 2b 20 64 6f 63 2e 70 61 74 68 ipt:' + doc.path
1070: 2e 72 65 70 6c 61 63 65 28 2f 5e 66 69 6c 65 3a .replace(/^file:
1080: 5c 2f 5c 2f 2f 69 2c 20 27 27 29 2e 72 65 70 6c \/\//i, '').repl
1090: 61 63 65 28 2f 5c 2f 2f 67 2c 20 27 5c 5c 27 29 ace(/\//g, '\\')
10a0: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72 ;.. .. var
10b0: 20 61 64 64 69 6e 47 72 6f 75 70 20 3d 20 61 64 addinGroup = ad
10c0: 64 69 6e 73 2e 62 79 55 6e 69 71 75 65 4e 61 6d dins.byUniqueNam
10d0: 65 28 27 53 6e 65 67 6f 70 61 74 4d 61 69 6e 53 e('SnegopatMainS
10e0: 63 72 69 70 74 27 29 2e 6f 62 6a 65 63 74 2e 41 cript').object.A
10f0: 64 64 69 6e 73 54 72 65 65 47 72 6f 75 70 73 2e ddinsTreeGroups.
1100: 55 73 65 72 41 64 64 69 6e 73 3b 0d 0a 20 20 20 UserAddins;..
1110: 20 0d 0a 20 20 20 20 76 61 72 20 73 63 72 69 70 .. var scrip
1120: 74 41 64 64 69 6e 09 3d 20 61 64 64 69 6e 73 2e tAddin.= addins.
1130: 62 79 46 75 6c 6c 50 61 74 68 28 66 75 6c 6c 70 byFullPath(fullp
1140: 61 74 68 29 3b 0d 0a 20 20 20 20 69 66 20 28 73 ath);.. if (s
1150: 63 72 69 70 74 41 64 64 69 6e 29 20 7b 20 20 20 criptAddin) {
1160: 20 09 0d 0a 20 20 20 20 09 61 64 64 69 6e 47 72 ... .addinGr
1170: 6f 75 70 20 3d 20 73 63 72 69 70 74 41 64 64 69 oup = scriptAddi
1180: 6e 2e 67 72 6f 75 70 3b 0d 0a 20 20 20 20 09 61 n.group;.. .a
1190: 64 64 69 6e 73 2e 75 6e 6c 6f 61 64 41 64 64 69 ddins.unloadAddi
11a0: 6e 28 73 63 72 69 70 74 41 64 64 69 6e 29 3b 0d n(scriptAddin);.
11b0: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 61 64 64 69 . }.. addi
11c0: 6e 73 2e 6c 6f 61 64 41 64 64 69 6e 28 66 75 6c ns.loadAddin(ful
11d0: 6c 70 61 74 68 2c 20 61 64 64 69 6e 47 72 6f 75 lpath, addinGrou
11e0: 70 29 3b 0d 0a 20 20 20 20 4d 65 73 73 61 67 65 p);.. Message
11f0: 28 22 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 20 22 ("............ "
1200: 20 2b 20 66 75 6c 6c 70 61 74 68 20 2b 20 22 20 + fullpath + "
1210: d0 bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 ................
1220: d1 83 d0 b6 d0 b5 d0 bd 21 22 29 3b 0d 0a 7d 0d ........!");..}.
1230: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 6d 61 63 72 ...function macr
1240: 6f 73 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b8 os..............
1250: d1 82 d1 8c d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 ................
1260: d0 97 d0 b0 d0 bc d0 b5 d0 bd d0 b8 d0 b2 d0 9f ................
1270: d1 80 d0 be d0 b1 d0 b5 d0 bb d1 8b d0 9d d0 b0 ................
1280: d0 a2 d0 b0 d0 b1 d1 83 d0 bb d1 8f d1 86 d0 b8 ................
1290: d1 8e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72 20 ..() {.. var
12a0: 77 20 3d 20 73 74 64 6c 69 62 2e 72 65 71 75 69 w = stdlib.requi
12b0: 72 65 28 27 54 65 78 74 57 69 6e 64 6f 77 2e 6a re('TextWindow.j
12c0: 73 27 29 2e 47 65 74 54 65 78 74 57 69 6e 64 6f s').GetTextWindo
12d0: 77 28 29 3b 0d 0a 20 20 20 20 69 66 20 28 21 77 w();.. if (!w
12e0: 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 76 ) return;.. v
12f0: 61 72 20 73 65 6c 20 3d 20 77 2e 47 65 74 43 61 ar sel = w.GetCa
1300: 72 65 74 50 6f 73 28 29 3b 0d 0a 20 20 20 20 76 retPos();.. v
1310: 61 72 20 74 65 45 78 74 20 3d 20 73 74 64 6c 69 ar teExt = stdli
1320: 62 2e 72 65 71 75 69 72 65 28 73 74 64 6c 69 62 b.require(stdlib
1330: 2e 67 65 74 53 6e 65 67 6f 70 61 74 4d 61 69 6e .getSnegopatMain
1340: 46 6f 6c 64 65 72 28 29 20 2b 20 27 73 63 72 69 Folder() + 'scri
1350: 70 74 73 5c 5c 74 65 78 74 45 64 69 74 6f 72 45 pts\\textEditorE
1360: 78 74 2e 6a 73 27 29 3b 0d 0a 20 20 20 20 73 74 xt.js');.. st
1370: 64 63 6f 6d 6d 61 6e 64 73 2e 46 72 61 6d 65 2e dcommands.Frame.
1380: 53 65 6c 65 63 74 41 6c 6c 2e 73 65 6e 64 28 29 SelectAll.send()
1390: 3b 0d 0a 20 20 20 20 74 65 45 78 74 2e 72 65 70 ;.. teExt.rep
13a0: 6c 61 63 65 54 61 62 73 54 6f 53 70 61 63 65 73 laceTabsToSpaces
13b0: 49 6e 53 65 6c 65 63 74 65 64 54 65 78 74 28 74 InSelectedText(t
13c0: 72 75 65 29 3b 0d 0a 20 20 20 20 73 74 64 63 6f rue);.. stdco
13d0: 6d 6d 61 6e 64 73 2e 46 72 61 6d 65 2e 46 69 6c mmands.Frame.Fil
13e0: 65 53 61 76 65 2e 73 65 6e 64 28 29 3b 0d 0a 20 eSave.send();..
13f0: 20 20 20 77 2e 53 65 74 43 61 72 65 74 50 6f 73 w.SetCaretPos
1400: 28 73 65 6c 2e 62 65 67 69 6e 52 6f 77 20 2d 20 (sel.beginRow -
1410: 31 35 2c 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c 15, sel.beginCol
1420: 29 3b 0d 0a 20 20 20 20 77 2e 53 65 74 43 61 72 );.. w.SetCar
1430: 65 74 50 6f 73 28 73 65 6c 2e 62 65 67 69 6e 52 etPos(sel.beginR
1440: 6f 77 2c 20 73 65 6c 2e 62 65 67 69 6e 43 6f 6c ow, sel.beginCol
1450: 29 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f );..}....functio
1460: 6e 20 6d 61 63 72 6f 73 d0 a1 d0 be d1 85 d1 80 n macros........
1470: d0 b0 d0 bd d0 b8 d1 82 d1 8c d0 a1 d0 ba d1 80 ................
1480: d0 b8 d0 bf d1 82 d0 97 d0 b0 d0 bc d0 b5 d0 bd ................
1490: d0 b8 d1 82 d1 8c d0 a2 d0 b0 d0 b1 d1 83 d0 bb ................
14a0: d1 8f d1 86 d0 b8 d1 8e d0 9f d0 b5 d1 80 d0 b5 ................
14b0: d0 b7 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 b8 d1 82 ................
14c0: d1 8c 28 29 20 7b 0d 0a 20 20 20 20 6d 61 63 72 ..() {.. macr
14d0: 6f 73 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b8 os..............
14e0: d1 82 d1 8c d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 ................
14f0: d0 97 d0 b0 d0 bc d0 b5 d0 bd d0 b8 d0 b2 d0 9f ................
1500: d1 80 d0 be d0 b1 d0 b5 d0 bb d1 8b d0 9d d0 b0 ................
1510: d0 a2 d0 b0 d0 b1 d1 83 d0 bb d1 8f d1 86 d0 b8 ................
1520: d1 8e 28 29 3b 0d 0a 20 20 20 20 6d 61 63 72 6f ..();.. macro
1530: 73 d0 9f d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 s...............
1540: 80 d1 83 d0 b7 d0 b8 d1 82 d1 8c d0 a2 d0 b5 d0 ................
1550: ba d1 83 d1 89 d0 b8 d0 b9 d0 a1 d0 ba d1 80 d0 ................
1560: b8 d0 bf d1 82 28 29 3b 0d 0a 7d 0d 0a 0d 0a 66 .....();..}....f
1570: 75 6e 63 74 69 6f 6e 20 6d 61 63 72 6f 73 d0 92 unction macros..
1580: d1 81 d1 82 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 52 65 ..............Re
1590: 71 75 69 72 65 28 29 20 7b 0d 0a 0d 0a 09 76 61 quire() {.....va
15a0: 72 20 74 77 20 3d 20 6e 65 77 20 54 65 78 74 57 r tw = new TextW
15b0: 69 6e 64 6f 77 28 29 3b 0d 0a 09 69 66 20 28 21 indow();...if (!
15c0: 74 77 2e 49 73 41 63 74 69 76 65 28 29 29 20 7b tw.IsActive()) {
15d0: 0d 0a 09 09 72 65 74 75 72 6e 3b 0d 0a 09 7d 0d ....return;...}.
15e0: 0a 0d 0a 09 76 61 72 20 72 65 71 75 69 72 65 73 ....var requires
15f0: 20 3d 20 7b 7d 3b 0d 0a 09 0d 0a 09 2f 2f 20 d0 = {};......// .
1600: a1 d1 84 d0 be d1 80 d0 bc d0 b8 d1 80 d1 83 d0 ................
1610: b5 d0 bc 20 d1 81 d0 bf d0 b8 d1 81 d0 be d0 ba ... ............
1620: 20 d1 84 d0 b0 d0 b9 d0 bb d0 be d0 b2 2d d0 b1 ............-..
1630: d0 b8 d0 b1 d0 bb d0 b8 d0 be d1 82 d0 b5 d0 ba ................
1640: 20 d0 b8 d0 b7 20 d0 ba d0 b0 d1 82 d0 b0 d0 bb .... ..........
1650: d0 be d0 b3 d0 b0 20 4c 69 62 73 2e 0d 0a 09 76 ...... Libs....v
1660: 61 72 20 72 65 5f 6a 73 20 3d 20 2f 5c 2e 6a 73 ar re_js = /\.js
1670: 24 2f 69 3b 0d 0a 09 0d 0a 09 76 61 72 20 66 73 $/i;......var fs
1680: 6f 20 3d 20 6e 65 77 20 41 63 74 69 76 65 58 4f o = new ActiveXO
1690: 62 6a 65 63 74 28 22 53 63 72 69 70 74 69 6e 67 bject("Scripting
16a0: 2e 46 69 6c 65 53 79 73 74 65 6d 4f 62 6a 65 63 .FileSystemObjec
16b0: 74 22 29 3b 0d 0a 09 76 61 72 20 6c 69 62 73 46 t");...var libsF
16c0: 6f 6c 64 65 72 20 3d 20 66 73 6f 2e 47 65 74 46 older = fso.GetF
16d0: 6f 6c 64 65 72 28 73 74 64 6c 69 62 2e 67 65 74 older(stdlib.get
16e0: 53 6e 65 67 6f 70 61 74 4d 61 69 6e 46 6f 6c 64 SnegopatMainFold
16f0: 65 72 28 29 20 2b 20 27 73 63 72 69 70 74 73 5c er() + 'scripts\
1700: 5c 4c 69 62 73 27 29 3b 0d 0a 09 76 61 72 20 66 \Libs');...var f
1710: 69 6c 65 73 20 3d 20 6e 65 77 20 45 6e 75 6d 65 iles = new Enume
1720: 72 61 74 6f 72 28 6c 69 62 73 46 6f 6c 64 65 72 rator(libsFolder
1730: 2e 46 69 6c 65 73 29 3b 0d 0a 09 66 6f 72 20 28 .Files);...for (
1740: 3b 20 21 66 69 6c 65 73 2e 61 74 45 6e 64 28 29 ; !files.atEnd()
1750: 3b 20 66 69 6c 65 73 2e 6d 6f 76 65 4e 65 78 74 ; files.moveNext
1760: 28 29 29 20 7b 0d 0a 09 09 69 66 20 28 72 65 5f ()) {....if (re_
1770: 6a 73 2e 74 65 73 74 28 66 69 6c 65 73 2e 69 74 js.test(files.it
1780: 65 6d 28 29 2e 4e 61 6d 65 29 29 20 7b 0d 0a 09 em().Name)) {...
1790: 09 09 72 65 71 75 69 72 65 73 5b 66 69 6c 65 73 ..requires[files
17a0: 2e 69 74 65 6d 28 29 2e 4e 61 6d 65 5d 20 3d 20 .item().Name] =
17b0: 27 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28 'stdlib.require(
17c0: 22 27 20 2b 20 66 69 6c 65 73 2e 69 74 65 6d 28 "' + files.item(
17d0: 29 2e 4e 61 6d 65 20 2b 20 27 22 2c 20 53 65 6c ).Name + '", Sel
17e0: 66 53 63 72 69 70 74 29 3b 27 3b 0d 0a 09 09 7d fScript);';....}
17f0: 0d 0a 09 7d 0d 0a 0d 0a 09 2f 2f 20 d0 9f d1 80 ...}.....// ....
1800: d0 b5 d0 b4 d0 bb d0 be d0 b6 d0 b8 d0 bc 20 d0 .............. .
1810: bf d0 be d0 bb d1 8c d0 b7 d0 be d0 b2 d0 b0 d1 ................
1820: 82 d0 b5 d0 bb d1 8e 20 d0 b2 d1 8b d0 b1 d1 80 ....... ........
1830: d0 b0 d1 82 d1 8c 20 d0 b1 d0 b8 d0 b1 d0 bb d0 ...... .........
1840: b8 d0 be d1 82 d0 b5 d0 ba d1 83 20 d0 b8 d0 b7 ........... ....
1850: 20 d1 81 d0 bf d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a ...............
1860: 09 76 61 72 20 64 6c 67 20 3d 20 6e 65 77 20 53 .var dlg = new S
1870: 65 6c 65 63 74 56 61 6c 75 65 44 69 61 6c 6f 67 electValueDialog
1880: 28 22 d0 92 d1 8b d0 b1 d0 b5 d1 80 d0 b8 d1 82 ("..............
1890: d0 b5 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 2d .. ............-
18a0: d0 b1 d0 b8 d0 b1 d0 bb d0 b8 d0 be d1 82 d0 b5 ................
18b0: d0 ba d1 83 22 29 3b 0d 0a 09 69 66 20 28 64 6c ....");...if (dl
18c0: 67 2e 73 65 6c 65 63 74 56 61 6c 75 65 28 72 65 g.selectValue(re
18d0: 71 75 69 72 65 73 29 29 20 7b 0d 0a 09 09 74 77 quires)) {....tw
18e0: 2e 49 6e 73 65 72 74 4c 69 6e 65 28 74 77 2e 47 .InsertLine(tw.G
18f0: 65 74 43 61 72 65 74 50 6f 73 28 29 2e 62 65 67 etCaretPos().beg
1900: 69 6e 52 6f 77 2c 20 64 6c 67 2e 73 65 6c 65 63 inRow, dlg.selec
1910: 74 65 64 56 61 6c 75 65 29 3b 0d 0a 09 09 74 77 tedValue);....tw
1920: 2e 53 65 74 43 61 72 65 74 50 6f 73 28 74 77 2e .SetCaretPos(tw.
1930: 47 65 74 43 61 72 65 74 50 6f 73 28 29 2e 62 65 GetCaretPos().be
1940: 67 69 6e 52 6f 77 2c 20 64 6c 67 2e 73 65 6c 65 ginRow, dlg.sele
1950: 63 74 65 64 56 61 6c 75 65 2e 6c 65 6e 67 74 68 ctedValue.length
1960: 20 2b 20 31 29 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 0d + 1);...}..}...
1970: 0a 2f 2a 20 d0 92 d0 be d0 b7 d0 b2 d1 80 d0 b0 ./* ............
1980: d1 89 d0 b0 d0 b5 d1 82 20 d0 bd d0 b0 d0 b7 d0 ........ .......
1990: b2 d0 b0 d0 bd d0 b8 d0 b5 20 d0 bc d0 b0 d0 ba ......... ......
19a0: d1 80 d0 be d1 81 d0 b0 20 d0 bf d0 be 20 d1 83 ........ .... ..
19b0: d0 bc d0 be d0 bb d1 87 d0 b0 d0 bd d0 b8 d1 8e ................
19c0: 20 2d 20 d0 b2 d1 8b d0 b7 d1 8b d0 b2 d0 b0 d0 - .............
19d0: b5 d1 82 d1 81 d1 8f 2c 20 d0 ba d0 be d0 b3 d0 ......., .......
19e0: b4 d0 b0 20 d0 bf d0 be d0 bb d1 8c d0 b7 d0 be ... ............
19f0: d0 b2 d0 b0 d1 82 d0 b5 d0 bb d1 8c 20 0d 0a d0 ............ ...
1a00: b4 d0 b2 d0 b0 d0 b6 d0 b4 d1 8b 20 d1 89 d0 b5 ........... ....
1a10: d0 bb d0 ba d0 b0 d0 b5 d1 82 20 d0 bc d1 8b d1 .......... .....
1a20: 88 d1 8c d1 8e 20 d0 bf d0 be 20 d0 bd d0 b0 d0 ..... .... .....
1a30: b7 d0 b2 d0 b0 d0 bd d0 b8 d1 8e 20 d1 81 d0 ba ........... ....
1a40: d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b2 20 d0 be .......... .. ..
1a50: d0 ba d0 bd d0 b5 20 d0 a1 d0 bd d0 b5 d0 b3 d0 ...... .........
1a60: be d0 bf d0 b0 d1 82 d0 b0 2e 20 2a 2f 0d 0a 66 .......... */..f
1a70: 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 unction getDefau
1a80: 6c 74 4d 61 63 72 6f 73 28 29 20 7b 0d 0a 20 20 ltMacros() {..
1a90: 20 20 72 65 74 75 72 6e 20 27 d0 9d d0 b0 d1 81 return '......
1aa0: d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0 27 3b 0d 0a ............';..
1ab0: 7d 0d 0a 0d 0a 20 0d 0a 2f 2a 20 2a 2a 2a 2a 2a }.... ../* *****
1ac0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
1ad0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
1ae0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
1af0: 2a 2a 2a 2a 2a 0d 0a 20 2a 20 20 d0 a0 d0 b5 d0 *****.. * .....
1b00: b0 d0 bb d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d1 8f 20 ...............
1b10: d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 be d0 bd ................
1b20: d0 b0 d0 bb d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0 ...... .........
1b30: bf d1 82 d0 b0 2e 0d 0a 20 2a 20 2a 2a 2a 2a 2a ........ * *****
1b40: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
1b50: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
1b60: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
1b70: 2a 2a 2a 2a 20 2a 2f 0d 0a 0d 0a 2f 2f 20 d0 9f **** */....// ..
1b80: d1 83 d1 82 d0 b8 20 d1 85 d1 80 d0 b0 d0 bd d0 ...... .........
1b90: b5 d0 bd d0 b8 d1 8f 20 d0 bd d0 b0 d1 81 d1 82 ....... ........
1ba0: d1 80 d0 be d0 b5 d0 ba 20 d1 81 d0 ba d1 80 d0 ........ .......
1bb0: b8 d0 bf d1 82 d0 b0 20 d0 b2 20 d0 bf d1 80 d0 ....... .. .....
1bc0: be d1 84 d0 b0 d0 b9 d0 bb d0 b5 2e 0d 0a 76 61 ..............va
1bd0: 72 20 70 66 6c 50 61 74 68 73 20 3d 20 7b 0d 0a r pflPaths = {..
1be0: 20 20 20 20 63 68 65 63 6b 49 6e 74 65 72 76 61 checkInterva
1bf0: 6c 20 3a 20 27 73 63 72 69 70 74 64 65 76 2f 63 l : 'scriptdev/c
1c00: 68 65 63 6b 49 6e 74 65 72 76 61 6c 27 2c 0d 0a heckInterval',..
1c10: 20 20 20 20 72 75 6e 45 64 69 74 6f 72 43 6d 64 runEditorCmd
1c20: 3a 20 27 73 63 72 69 70 74 64 65 76 2f 72 75 6e : 'scriptdev/run
1c30: 43 6d 64 45 64 69 74 6f 72 27 2c 0d 0a 20 20 20 CmdEditor',..
1c40: 20 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 askBeforeReload
1c50: 3a 20 27 73 63 72 69 70 74 64 65 76 2f 61 73 6b : 'scriptdev/ask
1c60: 42 65 66 6f 72 65 52 65 6c 6f 61 64 27 0d 0a 7d BeforeReload'..}
1c70: 3b 0d 0a 20 20 0d 0a 2f 2f 20 d0 a1 d0 bf d0 b8 ;.. ..// ......
1c80: d1 81 d0 be d0 ba 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ...... .........
1c90: ba d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc d1 8b d1 ................
1ca0: 85 20 d1 84 d0 b0 d0 b9 d0 bb d0 be d0 b2 20 d1 . ............ .
1cb0: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 be d0 b2 2e ................
1cc0: 0d 0a 76 61 72 20 64 65 76 46 69 6c 65 73 20 3d ..var devFiles =
1cd0: 20 76 38 4e 65 77 28 22 d0 a1 d1 82 d1 80 d1 83 v8New("........
1ce0: d0 ba d1 82 d1 83 d1 80 d0 b0 22 29 3b 0d 0a 0d ..........");...
1cf0: 0a 2f 2f 20 d0 92 d1 80 d0 b5 d0 bc d1 8f 20 d0 .// .......... .
1d00: bf d0 be d1 81 d0 bb d0 b5 d0 b4 d0 bd d0 b5 d0 ................
1d10: b9 20 d0 bf d1 80 d0 be d0 b2 d0 b5 d1 80 d0 ba . ..............
1d20: d0 b8 0d 0a 76 61 72 20 6c 61 73 74 43 68 65 63 ....var lastChec
1d30: 6b 54 69 6d 65 20 3d 20 6e 65 77 20 44 61 74 65 kTime = new Date
1d40: 28 29 2e 67 65 74 54 69 6d 65 28 29 20 2f 20 31 ().getTime() / 1
1d50: 30 30 30 3b 0d 0a 0d 0a 2f 2f 20 d0 9f d0 be d0 000;....// .....
1d60: b4 d0 ba d0 bb d1 8e d1 87 d0 b0 d0 b5 d0 bc 20 ...............
1d70: d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd ................
1d80: d1 8b d0 b5 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 .... ...........
1d90: ba d1 81 d1 82 d1 8b 2e 0d 0a 2f 2f 67 6c 6f 62 ..........//glob
1da0: 61 6c 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62 61 6c al.connectGlobal
1db0: 73 28 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a s(SelfScript);..
1dc0: 61 64 64 69 6e 73 2e 62 79 55 6e 69 71 75 65 4e addins.byUniqueN
1dd0: 61 6d 65 28 22 67 6c 6f 62 61 6c 22 29 2e 6f 62 ame("global").ob
1de0: 6a 65 63 74 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62 ject.connectGlob
1df0: 61 6c 73 28 53 65 6c 66 53 63 72 69 70 74 29 3b als(SelfScript);
1e00: 0d 0a 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 ....events.conne
1e10: 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e ct(Designer, "on
1e20: 49 64 6c 65 22 2c 20 53 65 6c 66 53 63 72 69 70 Idle", SelfScrip
1e30: 74 2e 73 65 6c 66 29 0d 0a 66 75 6e 63 74 69 6f t.self)..functio
1e40: 6e 20 6f 6e 49 64 6c 65 28 29 0d 0a 7b 0d 0a 20 n onIdle()..{..
1e50: 20 20 20 76 61 72 20 63 75 72 54 69 6d 65 20 3d var curTime =
1e60: 20 6e 65 77 20 44 61 74 65 28 29 2e 67 65 74 54 new Date().getT
1e70: 69 6d 65 28 29 20 2f 20 31 30 30 30 3b 0d 0a 20 ime() / 1000;..
1e80: 20 20 20 69 66 20 28 63 75 72 54 69 6d 65 20 2d if (curTime -
1e90: 20 6c 61 73 74 43 68 65 63 6b 54 69 6d 65 20 3e lastCheckTime >
1ea0: 20 63 68 65 63 6b 49 6e 74 65 72 76 61 6c 29 20 checkInterval)
1eb0: 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 .. {..
1ec0: 20 43 68 65 63 6b 46 69 6c 65 73 28 29 3b 0d 0a CheckFiles();..
1ed0: 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 }..}....func
1ee0: 74 69 6f 6e 20 51 75 65 72 79 44 69 61 6c 6f 67 tion QueryDialog
1ef0: 45 78 28 71 75 65 73 74 69 6f 6e 2c 20 6e 65 65 Ex(question, nee
1f00: 64 59 65 73 4e 6f 54 6f 41 6c 6c 29 20 0d 0a 7b dYesNoToAll) ..{
1f10: 20 0d 0a 20 20 20 20 74 68 69 73 2e 71 75 65 73 .. this.ques
1f20: 74 69 6f 6e 20 3d 20 71 75 65 73 74 69 6f 6e 3b tion = question;
1f30: 0d 0a 20 20 20 20 74 68 69 73 2e 6e 65 65 64 59 .. this.needY
1f40: 65 73 4e 6f 54 6f 41 6c 6c 20 3d 20 6e 65 65 64 esNoToAll = need
1f50: 59 65 73 4e 6f 54 6f 41 6c 6c 3b 0d 0a 7d 0d 0a YesNoToAll;..}..
1f60: 20 20 0d 0a 51 75 65 72 79 44 69 61 6c 6f 67 45 ..QueryDialogE
1f70: 78 2e 52 65 74 75 72 6e 43 6f 64 65 73 20 3d 20 x.ReturnCodes =
1f80: 7b 0d 0a 20 20 20 20 27 59 65 73 27 20 20 20 20 {.. 'Yes'
1f90: 20 20 20 3a 20 27 d0 94 d0 b0 27 2c 0d 0a 20 20 : '....',..
1fa0: 20 20 27 59 65 73 54 6f 41 6c 6c 27 20 20 3a 20 'YesToAll' :
1fb0: 27 d0 94 d0 b0 20 d0 b4 d0 bb d1 8f 20 d0 b2 d1 '.... ...... ...
1fc0: 81 d0 b5 d1 85 27 2c 0d 0a 20 20 20 20 27 4e 6f .....',.. 'No
1fd0: 27 20 20 20 20 20 20 20 20 3a 20 27 d0 9d d0 b5 ' : '....
1fe0: d1 82 27 2c 0d 0a 20 20 20 20 27 4e 6f 54 6f 41 ..',.. 'NoToA
1ff0: 6c 6c 27 20 20 20 3a 20 27 d0 9d d0 b5 d1 82 20 ll' : '......
2000: d0 b4 d0 bb d1 8f 20 d0 b2 d1 81 d0 b5 d1 85 27 ...... ........'
2010: 0d 0a 7d 0d 0a 0d 0a 51 75 65 72 79 44 69 61 6c ..}....QueryDial
2020: 6f 67 45 78 2e 70 72 6f 74 6f 74 79 70 65 2e 53 ogEx.prototype.S
2030: 68 6f 77 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 how = function()
2040: 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 20 d0 9a d0 bd ..{.. // ....
2050: d0 be d0 bf d0 ba d0 b8 20 d0 b4 d0 b8 d0 b0 d0 ........ .......
2060: bb d0 be d0 b3 d0 b0 20 d0 92 d0 be d0 bf d1 80 ....... ........
2070: d0 be d1 81 2e 0d 0a 20 20 20 20 76 61 72 20 62 ....... var b
2080: 75 74 74 6f 6e 73 20 3d 20 76 38 4e 65 77 28 22 uttons = v8New("
2090: d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba d0 97 d0 bd ................
20a0: d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b9 22 29 3b 0d ............");.
20b0: 0a 20 20 20 20 0d 0a 20 20 20 20 62 75 74 74 6f . .. butto
20c0: 6e 73 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 ns..............
20d0: 82 d1 8c 28 51 75 65 72 79 44 69 61 6c 6f 67 45 ...(QueryDialogE
20e0: 78 2e 52 65 74 75 72 6e 43 6f 64 65 73 2e 59 65 x.ReturnCodes.Ye
20f0: 73 29 3b 0d 0a 20 20 20 20 62 75 74 74 6f 6e 73 s);.. buttons
2100: 2e d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1 ................
2110: 8c 28 51 75 65 72 79 44 69 61 6c 6f 67 45 78 2e .(QueryDialogEx.
2120: 52 65 74 75 72 6e 43 6f 64 65 73 2e 4e 6f 29 3b ReturnCodes.No);
2130: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66 20 28 .. .. if (
2140: 74 68 69 73 2e 6e 65 65 64 59 65 73 4e 6f 54 6f this.needYesNoTo
2150: 41 6c 6c 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 All).. {..
2160: 20 20 20 20 20 62 75 74 74 6f 6e 73 2e d0 92 d1 buttons....
2170: 81 d1 82 d0 b0 d0 b2 d0 b8 d1 82 d1 8c 28 32 2c .............(2,
2180: 20 51 75 65 72 79 44 69 61 6c 6f 67 45 78 2e 52 QueryDialogEx.R
2190: 65 74 75 72 6e 43 6f 64 65 73 2e 59 65 73 54 6f eturnCodes.YesTo
21a0: 41 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 62 All);.. b
21b0: 75 74 74 6f 6e 73 2e d0 94 d0 be d0 b1 d0 b0 d0 uttons..........
21c0: b2 d0 b8 d1 82 d1 8c 28 51 75 65 72 79 44 69 61 .......(QueryDia
21d0: 6c 6f 67 45 78 2e 52 65 74 75 72 6e 43 6f 64 65 logEx.ReturnCode
21e0: 73 2e 4e 6f 54 6f 41 6c 6c 29 3b 20 20 20 20 20 s.NoToAll);
21f0: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 ..
2200: 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 65 }.. .. re
2210: 74 75 72 6e 20 d0 92 d0 be d0 bf d1 80 d0 be d1 turn ...........
2220: 81 28 74 68 69 73 2e 71 75 65 73 74 69 6f 6e 2c .(this.question,
2230: 20 62 75 74 74 6f 6e 73 29 3b 20 20 20 20 20 20 buttons);
2240: 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 ..}....function
2250: 43 68 65 63 6b 46 69 6c 65 73 28 29 20 0d 0a 7b CheckFiles() ..{
2260: 0d 0a 20 20 20 20 76 61 72 20 73 63 72 69 70 74 .. var script
2270: 73 54 6f 52 65 6c 6f 61 64 20 3d 20 6e 65 77 20 sToReload = new
2280: 41 72 72 61 79 28 29 3b 0d 0a 20 20 20 20 0d 0a Array();.. ..
2290: 20 20 20 20 66 6f 72 28 76 61 72 20 61 64 64 69 for(var addi
22a0: 6e 73 3d 6e 65 77 20 45 6e 75 6d 65 72 61 74 6f ns=new Enumerato
22b0: 72 28 64 65 76 46 69 6c 65 73 29 3b 20 21 61 64 r(devFiles); !ad
22c0: 64 69 6e 73 2e 61 74 45 6e 64 28 29 3b 20 61 64 dins.atEnd(); ad
22d0: 64 69 6e 73 2e 6d 6f 76 65 4e 65 78 74 28 29 29 dins.moveNext())
22e0: 20 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 .. {..
22f0: 20 20 76 61 72 20 61 49 6e 66 6f 20 3d 20 61 64 var aInfo = ad
2300: 64 69 6e 73 2e 69 74 65 6d 28 29 2e d0 97 d0 bd dins.item().....
2310: d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b5 3b 0d 0a 20 ............;..
2320: 20 20 20 20 20 20 20 69 66 20 28 61 49 6e 66 6f if (aInfo
2330: 2e 43 68 65 63 6b 49 66 4d 6f 64 69 66 69 65 64 .CheckIfModified
2340: 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ())..
2350: 20 73 63 72 69 70 74 73 54 6f 52 65 6c 6f 61 64 scriptsToReload
2360: 2e 70 75 73 68 28 61 49 6e 66 6f 29 3b 0d 0a 20 .push(aInfo);..
2370: 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 }.. ..
2380: 76 61 72 20 6e 65 65 64 54 6f 41 73 6b 20 3d 20 var needToAsk =
2390: 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 3b askBeforeReload;
23a0: 0d 0a 20 20 20 20 76 61 72 20 64 6f 52 65 6c 6f .. var doRelo
23b0: 61 64 20 3d 20 21 61 73 6b 42 65 66 6f 72 65 52 ad = !askBeforeR
23c0: 65 6c 6f 61 64 3b 0d 0a 20 20 20 20 76 61 72 20 eload;.. var
23d0: 6e 65 65 64 59 65 73 4e 6f 54 6f 41 6c 6c 20 3d needYesNoToAll =
23e0: 20 28 73 63 72 69 70 74 73 54 6f 52 65 6c 6f 61 (scriptsToReloa
23f0: 64 2e 6c 65 6e 67 74 68 20 3e 20 31 29 3b 0d 0a d.length > 1);..
2400: 20 20 20 20 0d 0a 20 20 20 20 66 6f 72 28 76 61 .. for(va
2410: 72 20 69 3d 30 3b 20 69 3c 73 63 72 69 70 74 73 r i=0; i<scripts
2420: 54 6f 52 65 6c 6f 61 64 2e 6c 65 6e 67 74 68 3b ToReload.length;
2430: 20 69 2b 2b 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 i++).. {..
2440: 20 20 20 20 20 20 76 61 72 20 73 20 3d 20 73 63 var s = sc
2450: 72 69 70 74 73 54 6f 52 65 6c 6f 61 64 5b 69 5d riptsToReload[i]
2460: 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 ;.. ..
2470: 20 20 20 20 20 69 66 20 28 6e 65 65 64 54 6f 41 if (needToA
2480: 73 6b 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a sk).. {..
2490: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 var
24a0: 6d 73 67 20 3d 20 22 d0 a1 d0 ba d1 80 d0 b8 d0 msg = ".........
24b0: bf d1 82 20 5c 22 22 20 2b 20 73 2e 6f 62 6a 65 ... \"" + s.obje
24c0: 63 74 2e 64 69 73 70 6c 61 79 4e 61 6d 65 20 0d ct.displayName .
24d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
24e0: 20 20 20 20 20 2b 20 22 5c 22 20 28 22 20 2b 20 + "\" (" +
24f0: 73 2e 6f 62 6a 65 63 74 2e 75 6e 69 71 75 65 4e s.object.uniqueN
2500: 61 6d 65 20 2b 20 22 29 20 d0 b1 d1 8b d0 bb 20 ame + ") ......
2510: d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd 2e 5c ...............\
2520: 6e 22 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 n"..
2530: 20 20 20 20 20 20 20 20 2b 20 22 d0 9f d0 b5 d1 + ".....
2540: 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 ................
2550: b8 d1 82 d1 8c 20 d1 81 d0 ba d1 80 d0 b8 d0 bf ..... ..........
2560: d1 82 3f 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 ..?";..
2570: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 ..
2580: 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6e 73 var ans
2590: 77 65 72 20 3d 20 28 6e 65 77 20 51 75 65 72 79 wer = (new Query
25a0: 44 69 61 6c 6f 67 45 78 28 6d 73 67 2c 20 6e 65 DialogEx(msg, ne
25b0: 65 64 59 65 73 4e 6f 54 6f 41 6c 6c 29 29 2e 53 edYesNoToAll)).S
25c0: 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 how();..
25d0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 ..
25e0: 20 20 64 6f 52 65 6c 6f 61 64 20 3d 20 28 61 6e doReload = (an
25f0: 73 77 65 72 20 3d 3d 20 51 75 65 72 79 44 69 61 swer == QueryDia
2600: 6c 6f 67 45 78 2e 52 65 74 75 72 6e 43 6f 64 65 logEx.ReturnCode
2610: 73 2e 59 65 73 20 7c 7c 20 61 6e 73 77 65 72 20 s.Yes || answer
2620: 3d 3d 20 51 75 65 72 79 44 69 61 6c 6f 67 45 78 == QueryDialogEx
2630: 2e 52 65 74 75 72 6e 43 6f 64 65 73 2e 59 65 73 .ReturnCodes.Yes
2640: 54 6f 41 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 ToAll);..
2650: 20 20 20 20 20 6e 65 65 64 54 6f 41 73 6b 20 3d needToAsk =
2660: 20 28 61 6e 73 77 65 72 20 3d 3d 20 51 75 65 72 (answer == Quer
2670: 79 44 69 61 6c 6f 67 45 78 2e 52 65 74 75 72 6e yDialogEx.Return
2680: 43 6f 64 65 73 2e 59 65 73 20 7c 7c 20 61 6e 73 Codes.Yes || ans
2690: 77 65 72 20 3d 3d 20 51 75 65 72 79 44 69 61 6c wer == QueryDial
26a0: 6f 67 45 78 2e 52 65 74 75 72 6e 43 6f 64 65 73 ogEx.ReturnCodes
26b0: 2e 4e 6f 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d .No);.. }
26c0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 .. ..
26d0: 20 20 20 20 69 66 20 28 64 6f 52 65 6c 6f 61 64 if (doReload
26e0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 ).. s
26f0: 2e 52 65 6c 6f 61 64 28 29 3b 0d 0a 20 20 20 20 .Reload();..
2700: 7d 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e }..}....function
2710: 20 67 65 74 4d 6f 64 69 66 69 63 61 74 69 6f 6e getModification
2720: 53 74 61 6d 70 28 66 29 20 0d 0a 7b 0d 0a 20 20 Stamp(f) ..{..
2730: 20 20 69 66 20 28 66 2e d0 a1 d1 83 d1 89 d0 b5 if (f.........
2740: d1 81 d1 82 d0 b2 d1 83 d0 b5 d1 82 28 29 29 0d ............()).
2750: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 . {..
2760: 72 65 74 75 72 6e 20 6e 65 77 20 44 61 74 65 28 return new Date(
2770: 66 2e d0 9f d0 be d0 bb d1 83 d1 87 d0 b8 d1 82 f...............
2780: d1 8c d0 92 d1 80 d0 b5 d0 bc d1 8f d0 98 d0 b7 ................
2790: d0 bc d0 b5 d0 bd d0 b5 d0 bd d0 b8 d1 8f 28 29 ..............()
27a0: 29 2e 67 65 74 54 69 6d 65 28 29 3b 20 0d 0a 20 ).getTime(); ..
27b0: 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 72 65 74 75 }.... retu
27c0: 72 6e 20 6e 75 6c 6c 3b 0d 0a 7d 0d 0a 0d 0a 66 rn null;..}....f
27d0: 75 6e 63 74 69 6f 6e 20 4f 6e 53 6e 65 67 6f 70 unction OnSnegop
27e0: 61 74 57 6e 64 45 64 69 74 53 63 72 69 70 74 4d atWndEditScriptM
27f0: 65 6e 75 49 74 65 6d 28 63 75 72 72 65 6e 74 52 enuItem(currentR
2800: 6f 77 29 0d 0a 7b 0d 0a 20 20 20 20 76 61 72 20 ow)..{.. var
2810: 69 73 41 64 64 69 6e 20 3d 20 63 75 72 72 65 6e isAddin = curren
2820: 74 52 6f 77 2e 50 69 63 74 75 72 65 20 21 3d 20 tRow.Picture !=
2830: 30 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66 0;.. .. if
2840: 20 28 21 69 73 41 64 64 69 6e 29 20 0d 0a 20 20 (!isAddin) ..
2850: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 return;..
2860: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 61 64 64 .. var add
2870: 69 6e 4f 62 6a 65 63 74 20 3d 20 63 75 72 72 65 inObject = curre
2880: 6e 74 52 6f 77 2e 6f 62 6a 65 63 74 3b 0d 0a 20 ntRow.object;..
2890: 20 20 20 69 66 20 28 30 20 21 3d 20 61 64 64 69 if (0 != addi
28a0: 6e 4f 62 6a 65 63 74 2e 66 75 6c 6c 50 61 74 68 nObject.fullPath
28b0: 2e 69 6e 64 65 78 4f 66 28 22 73 63 72 69 70 74 .indexOf("script
28c0: 3a 22 29 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 :")).. {..
28d0: 20 20 20 20 20 4d 65 73 73 61 67 65 42 6f 78 28 MessageBox(
28e0: 22 d0 ad d1 82 d0 be 20 d0 bd d0 b5 20 d1 81 d0 "...... .... ...
28f0: ba d1 80 d0 b8 d0 bf d1 82 22 29 3b 0d 0a 20 20 .........");..
2900: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 return;..
2910: 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 }.. ..
2920: 69 66 20 28 61 64 64 69 6e 4f 62 6a 65 63 74 2e if (addinObject.
2930: 75 6e 69 71 75 65 4e 61 6d 65 20 3d 3d 20 53 65 uniqueName == Se
2940: 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65 4e lfScript.uniqueN
2950: 61 6d 65 29 20 0d 0a 20 20 20 20 7b 0d 0a 20 20 ame) .. {..
2960: 20 20 20 20 20 20 4d 65 73 73 61 67 65 42 6f 78 MessageBox
2970: 28 22 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 20 5c ("............ \
2980: 22 d0 a0 d0 b0 d0 b7 d1 80 d0 b0 d0 b1 d0 be d1 "...............
2990: 82 d0 ba d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0 bf ..... ..........
29a0: d1 82 d0 be d0 b2 5c 22 20 d0 bd d0 b5 d0 bb d1 ......\" .......
29b0: 8c d0 b7 d1 8f 20 d0 b8 d1 81 d0 bf d0 be d0 bb ..... ..........
29c0: d1 8c d0 b7 d0 be d0 b2 d0 b0 d1 82 d1 8c 20 d0 .............. .
29d0: b4 d0 bb d1 8f 20 d0 be d1 82 d0 bb d0 b0 d0 b4 ..... ..........
29e0: d0 ba d0 b8 20 d1 81 d0 b0 d0 bc d0 be d0 b3 d0 .... ...........
29f0: be 20 d1 81 d0 b5 d0 b1 d1 8f 21 22 29 3b 0d 0a . ........!");..
2a00: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d return;.
2a10: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 . }.. ..
2a20: 20 20 76 61 72 20 66 75 6c 6c 50 61 74 68 20 3d var fullPath =
2a30: 20 47 65 74 41 64 64 69 6e 46 69 6c 65 50 61 74 GetAddinFilePat
2a40: 68 28 61 64 64 69 6e 4f 62 6a 65 63 74 29 3b 0d h(addinObject);.
2a50: 0a 20 20 20 20 76 61 72 20 63 6f 6d 6d 61 6e 64 . var command
2a60: 20 3d 20 72 75 6e 45 64 69 74 6f 72 43 6d 64 2e = runEditorCmd.
2a70: 72 65 70 6c 61 63 65 28 2f 25 31 2f 2c 20 66 75 replace(/%1/, fu
2a80: 6c 6c 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 llPath);..
2a90: 20 20 0d 0a 20 20 20 20 69 66 20 28 21 64 65 76 .. if (!dev
2aa0: 46 69 6c 65 73 2e d0 a1 d0 b2 d0 be d0 b9 d1 81 Files...........
2ab0: d1 82 d0 b2 d0 be 28 61 64 64 69 6e 4f 62 6a 65 ......(addinObje
2ac0: 63 74 2e 75 6e 69 71 75 65 4e 61 6d 65 29 29 0d ct.uniqueName)).
2ad0: 0a 20 20 20 20 20 20 20 20 64 65 76 46 69 6c 65 . devFile
2ae0: 73 2e d0 92 d1 81 d1 82 d0 b0 d0 b2 d0 b8 d1 82 s...............
2af0: d1 8c 28 61 64 64 69 6e 4f 62 6a 65 63 74 2e 75 ..(addinObject.u
2b00: 6e 69 71 75 65 4e 61 6d 65 2c 20 6e 65 77 20 41 niqueName, new A
2b10: 64 64 69 6e 49 6e 66 6f 28 61 64 64 69 6e 4f 62 ddinInfo(addinOb
2b20: 6a 65 63 74 29 29 3b 0d 0a 20 20 20 20 0d 0a 20 ject));.. ..
2b30: 20 20 20 d0 97 d0 b0 d0 bf d1 83 d1 81 d1 82 d0 .............
2b40: b8 d1 82 d1 8c d0 9f d1 80 d0 b8 d0 bb d0 be d0 ................
2b50: b6 d0 b5 d0 bd d0 b8 d0 b5 28 63 6f 6d 6d 61 6e .........(comman
2b60: 64 29 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 d);..}....functi
2b70: 6f 6e 20 49 6e 69 74 53 63 72 69 70 74 41 6e 64 on InitScriptAnd
2b80: 52 75 6e 28 29 0d 0a 7b 20 20 20 20 0d 0a 20 20 Run()..{ ..
2b90: 20 20 2f 2f 20 d0 9f d1 80 d0 be d0 b8 d0 bd d0 // ...........
2ba0: b8 d1 86 d0 b8 d0 b0 d0 bb d0 b8 d0 b7 d0 b8 d1 ................
2bb0: 80 d1 83 d0 b5 d0 bc 20 d0 bd d0 b0 d1 81 d1 82 ....... ........
2bc0: d1 80 d0 be d0 b9 d0 ba d0 b8 20 d1 81 d0 ba d1 .......... .....
2bd0: 80 d0 b8 d0 bf d1 82 d0 b0 2e 2e 2e 0d 0a 20 20 ..............
2be0: 20 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 63 72 profileRoot.cr
2bf0: 65 61 74 65 56 61 6c 75 65 28 70 66 6c 50 61 74 eateValue(pflPat
2c00: 68 73 2e 63 68 65 63 6b 49 6e 74 65 72 76 61 6c hs.checkInterval
2c10: 2c 20 63 68 65 63 6b 49 6e 74 65 72 76 61 6c 2c , checkInterval,
2c20: 20 70 66 6c 53 6e 65 67 6f 70 61 74 29 0d 0a 20 pflSnegopat)..
2c30: 20 20 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 63 profileRoot.c
2c40: 72 65 61 74 65 56 61 6c 75 65 28 70 66 6c 50 61 reateValue(pflPa
2c50: 74 68 73 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64 ths.runEditorCmd
2c60: 2c 20 72 75 6e 45 64 69 74 6f 72 43 6d 64 2c 20 , runEditorCmd,
2c70: 70 66 6c 53 6e 65 67 6f 70 61 74 29 20 20 20 20 pflSnegopat)
2c80: 0d 0a 20 20 20 20 70 72 6f 66 69 6c 65 52 6f 6f .. profileRoo
2c90: 74 2e 63 72 65 61 74 65 56 61 6c 75 65 28 70 66 t.createValue(pf
2ca0: 6c 50 61 74 68 73 2e 61 73 6b 42 65 66 6f 72 65 lPaths.askBefore
2cb0: 52 65 6c 6f 61 64 2c 20 61 73 6b 42 65 66 6f 72 Reload, askBefor
2cc0: 65 52 65 6c 6f 61 64 2c 20 70 66 6c 53 6e 65 67 eReload, pflSneg
2cd0: 6f 70 61 74 29 20 20 20 20 0d 0a 20 20 20 20 0d opat) .. .
2ce0: 0a 20 20 20 20 2f 2f 20 2e 2e 2e d0 b8 20 d0 bf . // ..... ..
2cf0: d1 80 d0 be d1 87 d0 b8 d1 82 d0 b0 d0 b5 d0 bc ................
2d00: 20 d0 b8 d1 85 3a 0d 0a 20 20 20 20 63 68 65 63 ....:.. chec
2d10: 6b 49 6e 74 65 72 76 61 6c 20 3d 20 70 72 6f 66 kInterval = prof
2d20: 69 6c 65 52 6f 6f 74 2e 67 65 74 56 61 6c 75 65 ileRoot.getValue
2d30: 28 70 66 6c 50 61 74 68 73 2e 63 68 65 63 6b 49 (pflPaths.checkI
2d40: 6e 74 65 72 76 61 6c 29 3b 0d 0a 20 20 20 20 72 nterval);.. r
2d50: 75 6e 45 64 69 74 6f 72 43 6d 64 20 3d 20 70 72 unEditorCmd = pr
2d60: 6f 66 69 6c 65 52 6f 6f 74 2e 67 65 74 56 61 6c ofileRoot.getVal
2d70: 75 65 28 70 66 6c 50 61 74 68 73 2e 72 75 6e 45 ue(pflPaths.runE
2d80: 64 69 74 6f 72 43 6d 64 29 3b 0d 0a 20 20 20 20 ditorCmd);..
2d90: 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 20 askBeforeReload
2da0: 3d 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 67 65 = profileRoot.ge
2db0: 74 56 61 6c 75 65 28 70 66 6c 50 61 74 68 73 2e tValue(pflPaths.
2dc0: 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f 61 64 29 askBeforeReload)
2dd0: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 2f 2f 20 ;.. .. //
2de0: d0 92 d0 bd d0 b5 d0 b4 d1 80 d1 8f d0 b5 d0 bc ................
2df0: d1 81 d1 8f 20 d0 b2 20 d0 ba d0 be d0 bd d1 82 .... .. ........
2e00: d0 b5 d0 ba d1 81 d1 82 d0 bd d0 be d0 b5 20 d0 .............. .
2e10: bc d0 b5 d0 bd d1 8e 20 d0 be d0 ba d0 bd d0 b0 ....... ........
2e20: 20 d0 a1 d0 bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1 ...............
2e30: 82 d0 b0 2e 0d 0a 20 20 20 20 77 69 74 68 20 28 ...... with (
2e40: 73 6e 65 67 6f 70 61 74 77 6e 64 2e 67 65 74 53 snegopatwnd.getS
2e50: 6e 65 67 6f 70 61 74 57 6e 64 28 29 29 0d 0a 20 negopatWnd())..
2e60: 20 20 20 20 20 20 20 41 64 64 43 6f 6e 74 65 78 AddContex
2e70: 74 4d 65 6e 75 49 74 65 6d 28 22 d0 a0 d0 b5 d0 tMenuItem(".....
2e80: b4 d0 b0 d0 ba d1 82 d0 b8 d1 80 d0 be d0 b2 d0 ................
2e90: b0 d1 82 d1 8c 20 d1 81 d0 ba d1 80 d0 b8 d0 bf ..... ..........
2ea0: d1 82 2e 2e 2e 22 2c 20 4f 6e 53 6e 65 67 6f 70 .....", OnSnegop
2eb0: 61 74 57 6e 64 45 64 69 74 53 63 72 69 70 74 4d atWndEditScriptM
2ec0: 65 6e 75 49 74 65 6d 2c 20 0d 0a 20 20 20 20 20 enuItem, ..
2ed0: 20 20 20 20 20 20 20 22 d0 a0 d0 b5 d0 b4 d0 b0 "........
2ee0: d0 ba d1 82 d0 b8 d1 80 d0 be d0 b2 d0 b0 d1 82 ................
2ef0: d1 8c 20 d1 84 d0 b0 d0 b9 d0 bb 20 d1 81 d0 ba .. ........ ....
2f00: d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b2 20 d0 b7 .......... .. ..
2f10: d0 b0 d0 b4 d0 b0 d0 bd d0 bd d0 be d0 bc 20 d1 .............. .
2f20: 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 d0 be d1 80 d0 ................
2f30: b5 2c 20 d1 81 20 d0 b0 d0 b2 d1 82 d0 be 2d d0 ., .. ........-.
2f40: bf d0 b5 d1 80 d0 b5 d0 b7 d0 b0 d0 b3 d1 80 d1 ................
2f50: 83 d0 b7 d0 ba d0 be d0 b9 22 29 3b 0d 0a 7d 0d .........");..}.
2f60: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 47 65 74 41 ...function GetA
2f70: 64 64 69 6e 46 69 6c 65 50 61 74 68 28 61 64 64 ddinFilePath(add
2f80: 69 6e 4f 62 6a 65 63 74 29 0d 0a 7b 0d 0a 20 20 inObject)..{..
2f90: 20 20 72 65 74 75 72 6e 20 61 64 64 69 6e 4f 62 return addinOb
2fa0: 6a 65 63 74 2e 66 75 6c 6c 50 61 74 68 2e 72 65 ject.fullPath.re
2fb0: 70 6c 61 63 65 28 2f 5e 5c 77 2b 3a 2f 2c 27 27 place(/^\w+:/,''
2fc0: 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 2a 2a 2a 2a );..}..../* ****
2fd0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
2fe0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
2ff0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
3000: 2a 2a 2a 2a 2a 2a 0d 0a 20 2a 20 20 d0 9a d0 bb ******.. * ....
3010: d0 b0 d1 81 d1 81 20 41 64 64 69 6e 49 6e 66 6f ...... AddinInfo
3020: 2e 20 d0 a5 d1 80 d0 b0 d0 bd d0 b8 d1 82 20 d0 . ............ .
3030: b8 d0 bd d1 84 d0 be d1 80 d0 bc d0 b0 d1 86 d0 ................
3040: b8 d1 8e 20 d0 be 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ... .. .........
3050: ba d1 82 d0 b8 d1 80 d1 83 d0 b5 d0 bc d0 be d0 ................
3060: bc 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 bd d0 b5 2e 0d . ..............
3070: 0a 20 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a . * ************
3080: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
3090: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
30a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 2a 2f ************* */
30b0: 0d 0a 66 75 6e 63 74 69 6f 6e 20 41 64 64 69 6e ..function Addin
30c0: 49 6e 66 6f 28 61 64 64 69 6e 4f 62 6a 65 63 74 Info(addinObject
30d0: 29 20 0d 0a 7b 0d 0a 20 20 20 20 74 68 69 73 2e ) ..{.. this.
30e0: 6f 62 6a 65 63 74 20 3d 20 61 64 64 69 6e 4f 62 object = addinOb
30f0: 6a 65 63 74 3b 0d 0a 20 20 20 20 74 68 69 73 2e ject;.. this.
3100: 66 69 6c 65 20 3d 20 76 38 4e 65 77 28 22 d0 a4 file = v8New("..
3110: d0 b0 d0 b9 d0 bb 22 2c 20 47 65 74 41 64 64 69 ......", GetAddi
3120: 6e 46 69 6c 65 50 61 74 68 28 61 64 64 69 6e 4f nFilePath(addinO
3130: 62 6a 65 63 74 29 29 3b 0d 0a 20 20 20 20 0d 0a bject));.. ..
3140: 20 20 20 20 74 68 69 73 2e 6c 61 73 74 4d 6f 64 this.lastMod
3150: 69 66 69 65 64 20 3d 20 67 65 74 4d 6f 64 69 66 ified = getModif
3160: 69 63 61 74 69 6f 6e 53 74 61 6d 70 28 74 68 69 icationStamp(thi
3170: 73 2e 66 69 6c 65 29 3b 0d 0a 7d 0d 0a 0d 0a 41 s.file);..}....A
3180: 64 64 69 6e 49 6e 66 6f 2e 70 72 6f 74 6f 74 79 ddinInfo.prototy
3190: 70 65 2e 52 65 6c 6f 61 64 20 3d 20 66 75 6e 63 pe.Reload = func
31a0: 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 20 20 20 20 76 tion()..{.. v
31b0: 61 72 20 6f 6c 64 49 6e 73 74 61 6e 63 65 20 3d ar oldInstance =
31c0: 20 74 68 69 73 2e 6f 62 6a 65 63 74 3b 0d 0a 20 this.object;..
31d0: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 75 6e 69 .. var uni
31e0: 71 75 65 4e 61 6d 65 20 3d 20 6f 6c 64 49 6e 73 queName = oldIns
31f0: 74 61 6e 63 65 2e 75 6e 69 71 75 65 4e 61 6d 65 tance.uniqueName
3200: 3b 0d 0a 20 20 20 20 76 61 72 20 64 69 73 70 6c ;.. var displ
3210: 61 79 4e 61 6d 65 20 3d 20 6f 6c 64 49 6e 73 74 ayName = oldInst
3220: 61 6e 63 65 2e 64 69 73 70 6c 61 79 4e 61 6d 65 ance.displayName
3230: 3b 0d 0a 20 20 20 20 76 61 72 20 6c 6f 61 64 53 ;.. var loadS
3240: 74 72 69 6e 67 20 3d 20 6f 6c 64 49 6e 73 74 61 tring = oldInsta
3250: 6e 63 65 2e 66 75 6c 6c 50 61 74 68 3b 0d 0a 20 nce.fullPath;..
3260: 20 20 20 76 61 72 20 61 64 64 69 6e 47 72 6f 75 var addinGrou
3270: 70 20 3d 20 6f 6c 64 49 6e 73 74 61 6e 63 65 2e p = oldInstance.
3280: 67 72 6f 75 70 3b 0d 0a 0d 0a 20 20 20 20 74 72 group;.... tr
3290: 79 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 y.. {..
32a0: 20 20 61 64 64 69 6e 73 2e 75 6e 6c 6f 61 64 41 addins.unloadA
32b0: 64 64 69 6e 28 6f 6c 64 49 6e 73 74 61 6e 63 65 ddin(oldInstance
32c0: 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 63 );.. }.. c
32d0: 61 74 63 68 28 65 29 0d 0a 20 20 20 20 7b 0d 0a atch(e).. {..
32e0: 20 20 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 Message(
32f0: 22 d0 9e d1 88 d0 b8 d0 b1 d0 ba d0 b0 20 d0 bf "............ ..
3300: d1 80 d0 b8 20 d0 b2 d1 8b d0 b3 d1 80 d1 83 d0 .... ...........
3310: b7 d0 ba d0 b5 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 bd ..... ..........
3320: d0 b0 20 22 20 2b 20 64 69 73 70 6c 61 79 4e 61 .. " + displayNa
3330: 6d 65 20 2b 20 22 3a 20 22 20 2b 20 65 2e 64 65 me + ": " + e.de
3340: 73 63 72 69 70 74 69 6f 6e 29 3b 0d 0a 20 20 20 scription);..
3350: 20 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66 }.. .. if
3360: 28 21 6f 6c 64 49 6e 73 74 61 6e 63 65 2e 75 6e (!oldInstance.un
3370: 69 71 75 65 4e 61 6d 65 2e 6c 65 6e 67 74 68 29 iqueName.length)
3380: 20 20 2f 2f 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 bd 20 // ..........
3390: d1 80 d0 b5 d0 b0 d0 bb d1 8c d0 bd d0 be 20 d0 .............. .
33a0: b2 d1 8b d0 b3 d1 80 d1 83 d0 b7 d0 b8 d0 bb d1 ................
33b0: 81 d1 8f 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 ..... {..
33c0: 20 20 20 20 74 72 79 0d 0a 20 20 20 20 20 20 20 try..
33d0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 {..
33e0: 74 68 69 73 2e 6f 62 6a 65 63 74 20 3d 20 61 64 this.object = ad
33f0: 64 69 6e 73 2e 6c 6f 61 64 41 64 64 69 6e 28 6c dins.loadAddin(l
3400: 6f 61 64 53 74 72 69 6e 67 2c 20 61 64 64 69 6e oadString, addin
3410: 47 72 6f 75 70 29 3b 0d 0a 20 20 20 20 20 20 20 Group);..
3420: 20 7d 0d 0a 20 20 20 20 20 20 20 20 63 61 74 63 }.. catc
3430: 68 28 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d h(e).. {.
3440: 0a 20 20 20 20 20 20 20 20 20 20 20 20 4d 65 73 . Mes
3450: 73 61 67 65 28 22 d0 9e d1 88 d0 b8 d0 b1 d0 ba sage("..........
3460: d0 b0 20 d0 bf d1 80 d0 b8 20 d0 b7 d0 b0 d0 b3 .. ...... ......
3470: d1 80 d1 83 d0 b7 d0 ba d0 b5 3a 20 22 20 2b 20 ..........: " +
3480: 65 2e 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0d e.description);.
3490: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 . }..
34a0: 7d 0d 0a 20 20 20 20 0d 0a 20 20 20 20 64 65 6c }.. .. del
34b0: 65 74 65 20 6f 6c 64 49 6e 73 74 61 6e 63 65 3b ete oldInstance;
34c0: 0d 0a 0d 0a 20 20 20 20 2f 2f 20 d0 9d d0 b0 d0 .... // .....
34d0: b4 d0 be 20 d0 bd d0 b0 d0 b9 d1 82 d0 b8 20 d0 ... .......... .
34e0: bd d0 be d0 b2 d1 8b d0 b9 20 d0 be d0 b1 d1 8a ......... ......
34f0: d0 b5 d0 ba d1 82 20 d0 b0 d0 b4 d0 b4 d0 b8 d0 ...... .........
3500: bd d0 b0 20 d0 bf d0 be 20 d0 b5 d0 b3 d0 be 20 ... .... ......
3510: d0 b8 d0 bc d0 b5 d0 bd d0 b8 20 d0 b8 20 d0 b7 .......... .. ..
3520: d0 b0 d0 bf d0 be d0 bc d0 bd d0 b8 d1 82 d1 8c ................
3530: 3a 0d 0a 20 20 20 20 2f 2f 74 68 69 73 2e 6f 62 :.. //this.ob
3540: 6a 65 63 74 20 3d 20 61 64 64 69 6e 73 2e 62 79 ject = addins.by
3550: 55 6e 69 71 75 65 4e 61 6d 65 28 75 6e 69 71 75 UniqueName(uniqu
3560: 65 4e 61 6d 65 29 3b 0d 0a 7d 0d 0a 0d 0a 41 64 eName);..}....Ad
3570: 64 69 6e 49 6e 66 6f 2e 70 72 6f 74 6f 74 79 70 dinInfo.prototyp
3580: 65 2e 43 68 65 63 6b 49 66 4d 6f 64 69 66 69 65 e.CheckIfModifie
3590: 64 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 0d 0a d = function()..
35a0: 7b 0d 0a 20 20 20 20 76 61 72 20 63 75 72 53 74 {.. var curSt
35b0: 61 6d 70 20 3d 20 67 65 74 4d 6f 64 69 66 69 63 amp = getModific
35c0: 61 74 69 6f 6e 53 74 61 6d 70 28 74 68 69 73 2e ationStamp(this.
35d0: 66 69 6c 65 29 3b 0d 0a 20 20 20 20 69 66 20 28 file);.. if (
35e0: 63 75 72 53 74 61 6d 70 20 21 3d 20 74 68 69 73 curStamp != this
35f0: 2e 6c 61 73 74 4d 6f 64 69 66 69 65 64 29 20 0d .lastModified) .
3600: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 . {..
3610: 74 68 69 73 2e 6c 61 73 74 4d 6f 64 69 66 69 65 this.lastModifie
3620: 64 20 3d 20 63 75 72 53 74 61 6d 70 3b 0d 0a 20 d = curStamp;..
3630: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 return tr
3640: 75 65 3b 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20 ue;.. }....
3650: 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d return false;.
3660: 0a 7d 0d 0a 0d 0a 2f 2a 20 2a 2a 2a 2a 2a 2a 2a .}..../* *******
3670: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
3680: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
3690: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
36a0: 2a 2a 2a 0d 0a 20 2a 20 20 d0 9e d0 b1 d1 80 d0 ***.. * .......
36b0: b0 d0 b1 d0 be d1 82 d1 87 d0 b8 d0 ba d0 b8 20 ...............
36c0: d1 81 d0 be d0 b1 d1 8b d1 82 d0 b8 d0 b9 20 d0 .............. .
36d0: ad d0 a3 20 d1 84 d0 be d1 80 d0 bc d1 8b 20 d0 ... .......... .
36e0: bd d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0 ................
36f0: b8 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 . ..............
3700: 2e 0d 0a 20 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ... * **********
3710: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
3720: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
3730: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 ***************
3740: 2a 2f 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 d0 */....function .
3750: 9e d0 9a d0 9d d0 b0 d0 b6 d0 b0 d1 82 d0 b8 d0 ................
3760: b5 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 .(..............
3770: 29 0d 0a 20 7b 0d 0a 20 20 20 20 69 66 20 28 63 ).. {.. if (c
3780: 68 65 63 6b 49 6e 74 65 72 76 61 6c 20 21 3d 20 heckInterval !=
3790: 66 6f 72 6d 2e 63 68 65 63 6b 49 6e 74 65 72 76 form.checkInterv
37a0: 61 6c 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 al).. {..
37b0: 20 20 20 20 63 68 65 63 6b 49 6e 74 65 72 76 61 checkInterva
37c0: 6c 20 3d 20 66 6f 72 6d 2e 63 68 65 63 6b 49 74 l = form.checkIt
37d0: 65 72 76 61 6c 3b 0d 0a 20 20 20 20 20 20 20 20 erval;..
37e0: 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 73 65 74 56 profileRoot.setV
37f0: 61 6c 75 65 28 70 66 6c 50 61 74 68 73 2e 63 68 alue(pflPaths.ch
3800: 65 63 6b 49 74 65 72 76 61 6c 2c 20 63 68 65 63 eckIterval, chec
3810: 6b 49 6e 74 65 72 76 61 6c 29 3b 20 20 20 20 20 kInterval);
3820: 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 0d 0a 20 .. }..
3830: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 72 75 6e .. if (run
3840: 45 64 69 74 6f 72 43 6d 64 20 21 3d 20 66 6f 72 EditorCmd != for
3850: 6d 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64 29 0d m.runEditorCmd).
3860: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 . {..
3870: 72 75 6e 45 64 69 74 6f 72 43 6d 64 20 3d 20 66 runEditorCmd = f
3880: 6f 72 6d 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64 orm.runEditorCmd
3890: 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 66 69 ;.. profi
38a0: 6c 65 52 6f 6f 74 2e 73 65 74 56 61 6c 75 65 28 leRoot.setValue(
38b0: 70 66 6c 50 61 74 68 73 2e 72 75 6e 45 64 69 74 pflPaths.runEdit
38c0: 6f 72 43 6d 64 2c 20 72 75 6e 45 64 69 74 6f 72 orCmd, runEditor
38d0: 43 6d 64 29 3b 20 20 20 20 20 20 20 20 20 20 20 Cmd);
38e0: 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 69 .. }.... i
38f0: 66 20 28 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f f (askBeforeRelo
3900: 61 64 20 21 3d 20 66 6f 72 6d 2e 61 73 6b 42 65 ad != form.askBe
3910: 66 6f 72 65 52 65 6c 6f 61 64 29 0d 0a 20 20 20 foreReload)..
3920: 20 7b 0d 0a 20 20 20 20 20 20 20 20 61 73 6b 42 {.. askB
3930: 65 66 6f 72 65 52 65 6c 6f 61 64 20 3d 20 66 6f eforeReload = fo
3940: 72 6d 2e 61 73 6b 42 65 66 6f 72 65 52 65 6c 6f rm.askBeforeRelo
3950: 61 64 3b 0d 0a 20 20 20 20 20 20 20 20 70 72 6f ad;.. pro
3960: 66 69 6c 65 52 6f 6f 74 2e 73 65 74 56 61 6c 75 fileRoot.setValu
3970: 65 28 70 66 6c 50 61 74 68 73 2e 61 73 6b 42 65 e(pflPaths.askBe
3980: 66 6f 72 65 52 65 6c 6f 61 64 2c 20 61 73 6b 42 foreReload, askB
3990: 65 66 6f 72 65 52 65 6c 6f 61 64 29 3b 20 20 20 eforeReload);
39a0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 0d .. }.
39b0: 0a 20 20 20 20 0d 0a 0d 0a 20 20 20 20 66 6f 72 . .... for
39c0: 6d 2e d0 97 d0 b0 d0 ba d1 80 d1 8b d1 82 d1 8c m...............
39d0: 28 29 3b 0d 0a 20 7d 0d 0a 20 0d 0a 66 75 6e 63 ();.. }.. ..func
39e0: 74 69 6f 6e 20 72 75 6e 45 64 69 74 6f 72 43 6d tion runEditorCm
39f0: 64 d0 9d d0 b0 d1 87 d0 b0 d0 bb d0 be d0 92 d1 d...............
3a00: 8b d0 b1 d0 be d1 80 d0 b0 28 d0 ad d0 bb d0 b5 .........(......
3a10: d0 bc d0 b5 d0 bd d1 82 2c 20 d0 a1 d1 82 d0 b0 ........, ......
3a20: d0 bd d0 b4 d0 b0 d1 80 d1 82 d0 bd d0 b0 d1 8f ................
3a30: d0 9e d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba ................
3a40: d0 b0 29 0d 0a 7b 0d 0a 20 20 20 20 d0 a1 d1 82 ..)..{.. ....
3a50: d0 b0 d0 bd d0 b4 d0 b0 d1 80 d1 82 d0 bd d0 b0 ................
3a60: d1 8f d0 9e d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 ................
3a70: d0 ba d0 b0 2e 76 61 6c 20 3d 20 66 61 6c 73 65 .....val = false
3a80: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72 ;.. .. var
3a90: 20 73 65 6c 44 6c 67 20 3d 20 76 38 4e 65 77 28 selDlg = v8New(
3aa0: 22 d0 94 d0 b8 d0 b0 d0 bb d0 be d0 b3 d0 92 d1 "...............
3ab0: 8b d0 b1 d0 be d1 80 d0 b0 d0 a4 d0 b0 d0 b9 d0 ................
3ac0: bb d0 b0 22 2c 20 76 38 4e 65 77 28 22 d0 9f d0 ...", v8New("...
3ad0: b5 d1 80 d0 b5 d1 87 d0 b8 d1 81 d0 bb d0 b5 d0 ................
3ae0: bd d0 b8 d0 b5 d0 a0 d0 b5 d0 b6 d0 b8 d0 bc d0 ................
3af0: 94 d0 b8 d0 b0 d0 bb d0 be d0 b3 d0 b0 d0 92 d1 ................
3b00: 8b d0 b1 d0 be d1 80 d0 b0 d0 a4 d0 b0 d0 b9 d0 ................
3b10: bb d0 b0 22 29 2e d0 9e d1 82 d0 ba d1 80 d1 8b ...")...........
3b20: d1 82 d0 b8 d0 b5 29 3b 0d 0a 20 20 20 20 73 65 ......);.. se
3b30: 6c 44 6c 67 2e d0 97 d0 b0 d0 b3 d0 be d0 bb d0 lDlg............
3b40: be d0 b2 d0 be d0 ba 20 3d 20 22 d0 92 d1 8b d0 ....... = ".....
3b50: b1 d0 b5 d1 80 d0 b8 d1 82 d0 b5 20 d0 b8 d1 81 ........... ....
3b60: d0 bf d0 be d0 bb d0 bd d1 8f d0 b5 d0 bc d1 8b ................
3b70: d0 b9 20 d1 84 d0 b0 d0 b9 d0 bb 20 d1 80 d0 b5 .. ........ ....
3b80: d0 b4 d0 b0 d0 ba d1 82 d0 be d1 80 d0 b0 2f 49 ............../I
3b90: 44 45 22 3b 0d 0a 20 20 20 20 73 65 6c 44 6c 67 DE";.. selDlg
3ba0: 2e d0 9f d0 be d0 bb d0 bd d0 be d0 b5 d0 98 d0 ................
3bb0: bc d1 8f d0 a4 d0 b0 d0 b9 d0 bb d0 b0 20 3d 20 ............. =
3bc0: 22 22 3b 0d 0a 20 20 20 20 73 65 6c 44 6c 67 2e "";.. selDlg.
3bd0: d0 9f d1 80 d0 b5 d0 b4 d0 b2 d0 b0 d1 80 d0 b8 ................
3be0: d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0 b9 d0 9f ................
3bf0: d1 80 d0 be d1 81 d0 bc d0 be d1 82 d1 80 20 3d .............. =
3c00: 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 73 65 6c false;.. sel
3c10: 44 6c 67 2e d0 a4 d0 b8 d0 bb d1 8c d1 82 d1 80 Dlg.............
3c20: 20 3d 20 22 d0 98 d1 81 d0 bf d0 be d0 bb d0 bd = "............
3c30: d1 8f d0 b5 d0 bc d1 8b d0 b5 20 d1 84 d0 b0 d0 .......... .....
3c40: b9 d0 bb d1 8b 20 28 2a 2e 65 78 65 29 7c 2a 2e ..... (*.exe)|*.
3c50: 65 78 65 7c d0 92 d1 81 d0 b5 20 d1 84 d0 b0 d0 exe|...... .....
3c60: b9 d0 bb d1 8b 7c 2a 22 3b 0d 0a 0d 0a 20 20 20 .....|*";....
3c70: 20 69 66 20 28 73 65 6c 44 6c 67 2e d0 92 d1 8b if (selDlg.....
3c80: d0 b1 d1 80 d0 b0 d1 82 d1 8c 28 29 29 0d 0a 20 ..........())..
3c90: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 66 6f {.. fo
3ca0: 72 6d 2e 72 75 6e 45 64 69 74 6f 72 43 6d 64 20 rm.runEditorCmd
3cb0: 3d 20 73 65 6c 44 6c 67 2e d0 9f d0 be d0 bb d0 = selDlg........
3cc0: bd d0 be d0 b5 d0 98 d0 bc d1 8f d0 a4 d0 b0 d0 ................
3cd0: b9 d0 bb d0 b0 3b 0d 0a 20 20 20 20 20 20 20 20 .....;..
3ce0: 69 66 20 28 66 6f 72 6d 2e 72 75 6e 45 64 69 74 if (form.runEdit
3cf0: 6f 72 43 6d 64 2e 6d 61 74 63 68 28 2f 65 78 65 orCmd.match(/exe
3d00: 24 2f 29 29 20 0d 0a 20 20 20 20 20 20 20 20 20 $/)) ..
3d10: 20 20 20 66 6f 72 6d 2e 72 75 6e 45 64 69 74 6f form.runEdito
3d20: 72 43 6d 64 20 2b 3d 20 27 20 22 25 31 22 27 3b rCmd += ' "%1"';
3d30: 0d 0a 20 20 20 20 7d 20 20 20 20 0d 0a 7d 0d 0a .. } ..}..
3d40: 0d 0a 66 75 6e 63 74 69 6f 6e 20 6c 62 53 63 72 ..function lbScr
3d50: 69 70 74 41 62 6f 75 74 d0 9d d0 b0 d0 b6 d0 b0 iptAbout........
3d60: d1 82 d0 b8 d0 b5 28 29 0d 0a 7b 0d 0a 20 20 20 ......()..{..
3d70: 20 d0 97 d0 b0 d0 bf d1 83 d1 81 d1 82 d0 b8 d1 ...............
3d80: 82 d1 8c d0 9f d1 80 d0 b8 d0 bb d0 be d0 b6 d0 ................
3d90: b5 d0 bd d0 b8 d0 b5 28 22 68 74 74 70 3a 2f 2f .......("http://
3da0: 73 6e 65 67 6f 70 61 74 2e 72 75 2f 73 63 72 69 snegopat.ru/scri
3db0: 70 74 73 2f 77 69 6b 69 3f 6e 61 6d 65 3d 44 65 pts/wiki?name=De
3dc0: 76 54 6f 6f 6c 73 2f 73 63 72 69 70 74 64 65 76 vTools/scriptdev
3dd0: 2e 6a 73 22 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f 2f .js");..}....///
3de0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
3df0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
3e00: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
3e10: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
3e20: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
3e30: 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 20 d0 9f d0 be /////..//// ....
3e40: d0 b4 d0 b4 d0 b5 d1 80 d0 b6 d0 ba d0 b0 20 d0 .............. .
3e50: bf d1 80 d0 be d0 b2 d0 b5 d1 80 d0 ba d0 b8 20 ...............
3e60: d1 81 d0 b8 d0 bd d1 82 d0 b0 d0 ba d1 81 d0 b8 ................
3e70: d1 81 d0 b0 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 .... ...........
3e80: 82 d0 be d0 b2 20 28 4a 53 48 69 6e 74 29 0d 0a ..... (JSHint)..
3e90: 2f 2f 2f 2f 20 0d 0a 0d 0a 66 75 6e 63 74 69 6f //// ....functio
3ea0: 6e 20 6d 61 63 72 6f 73 d0 9f d1 80 d0 be d0 b2 n macros........
3eb0: d0 b5 d1 80 d0 b8 d1 82 d1 8c d0 a1 d0 ba d1 80 ................
3ec0: d0 b8 d0 bf d1 82 28 29 20 7b 0d 0a 0d 0a 20 20 ......() {....
3ed0: 20 20 76 61 72 20 65 72 72 43 6f 75 6e 74 20 3d var errCount =
3ee0: 20 30 2c 0d 0a 20 20 20 20 20 20 20 20 73 63 72 0,.. scr
3ef0: 20 3d 20 6e 65 77 20 53 63 72 69 70 74 57 69 6e = new ScriptWin
3f00: 64 6f 77 28 29 3b 0d 0a 0d 0a 20 20 20 20 69 66 dow();.... if
3f10: 20 28 21 73 63 72 2e 49 73 53 63 72 69 70 74 28 (!scr.IsScript(
3f20: 29 29 20 7b 0d 0a 20 20 20 20 09 73 74 64 63 6f )) {.. .stdco
3f30: 6d 6d 61 6e 64 73 2e 46 72 6e 74 65 6e 64 2e 53 mmands.Frntend.S
3f40: 79 6e 74 61 78 43 68 65 63 6b 2e 73 65 6e 64 28 yntaxCheck.send(
3f50: 29 3b 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 );.. retu
3f60: 72 6e 3b 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20 rn;.. }....
3f70: 20 20 69 66 20 28 21 4a 53 48 49 4e 54 28 73 63 if (!JSHINT(sc
3f80: 72 2e 47 65 74 43 6f 64 65 4c 69 6e 65 73 28 29 r.GetCodeLines()
3f90: 29 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 )) {.. if
3fa0: 20 28 4a 53 48 49 4e 54 2e 65 72 72 6f 72 73 2e (JSHINT.errors.
3fb0: 6c 65 6e 67 74 68 29 20 7b 0d 0a 20 20 20 20 20 length) {..
3fc0: 20 20 20 20 20 20 20 76 61 72 20 6f 66 66 73 65 var offse
3fd0: 74 20 3d 20 73 63 72 2e 47 65 74 43 6f 64 65 53 t = scr.GetCodeS
3fe0: 74 61 72 74 4c 69 6e 65 28 29 3b 0d 0a 20 20 20 tartLine();..
3ff0: 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 for (va
4000: 72 20 69 3d 30 3b 20 69 3c 4a 53 48 49 4e 54 2e r i=0; i<JSHINT.
4010: 65 72 72 6f 72 73 2e 6c 65 6e 67 74 68 3b 20 69 errors.length; i
4020: 2b 2b 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 ++) {..
4030: 20 20 20 20 20 20 20 69 66 20 28 4a 53 48 49 4e if (JSHIN
4040: 54 2e 65 72 72 6f 72 73 5b 69 5d 29 20 7b 0d 0a T.errors[i]) {..
4050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
4060: 20 20 20 20 65 72 72 43 6f 75 6e 74 2b 2b 3b 0d errCount++;.
4070: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
4080: 20 20 20 20 20 73 68 6f 77 45 72 72 6f 72 28 73 showError(s
4090: 63 72 2c 20 4a 53 48 49 4e 54 2e 65 72 72 6f 72 cr, JSHINT.error
40a0: 73 5b 69 5d 2c 20 6f 66 66 73 65 74 29 3b 0d 0a s[i], offset);..
40b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
40c0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d }.. }
40d0: 0d 0a 20 20 20 20 20 20 20 20 7d 20 20 20 20 20 .. }
40e0: 20 20 20 0d 0a 20 20 20 20 7d 09 0d 0a 20 20 20 .. }...
40f0: 20 0d 0a 20 20 20 20 69 66 20 28 65 72 72 43 6f .. if (errCo
4100: 75 6e 74 20 3d 3d 3d 20 30 29 20 7b 0d 0a 20 20 unt === 0) {..
4110: 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 22 d0 Message(".
4120: a1 d0 b8 d0 bd d1 82 d0 b0 d0 ba d1 81 d0 b8 d1 ................
4130: 87 d0 b5 d1 81 d0 ba d0 b8 d1 85 20 d0 be d1 88 ........... ....
4140: d0 b8 d0 b1 d0 be d0 ba 20 d0 bd d0 b5 20 d0 be ........ .... ..
4150: d0 b1 d0 bd d0 b0 d1 80 d1 83 d0 b6 d0 b5 d0 bd ................
4160: d0 be 21 22 29 3b 0d 0a 20 20 20 20 7d 20 20 20 ..!");.. }
4170: 20 20 20 20 20 20 0d 0a 20 20 20 20 0d 0a 20 20 .. ..
4180: 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 20 20 return true;
4190: 20 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e ..}....function
41a0: 20 6d 61 63 72 6f 73 d0 9f d0 be d0 ba d0 b0 d0 macros.........
41b0: b7 d0 b0 d1 82 d1 8c d0 a1 d0 bf d0 b8 d1 81 d0 ................
41c0: be d0 ba d0 9c d0 b5 d1 82 d0 be d0 b4 d0 be d0 ................
41d0: b2 d0 a1 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 28 ...............(
41e0: 29 20 7b 0d 0a 0d 0a 20 20 20 76 61 72 20 65 72 ) {.... var er
41f0: 72 43 6f 75 6e 74 20 3d 20 30 2c 0d 0a 20 20 20 rCount = 0,..
4200: 20 20 20 20 20 73 63 72 20 3d 20 6e 65 77 20 53 scr = new S
4210: 63 72 69 70 74 57 69 6e 64 6f 77 28 29 2c 0d 0a criptWindow(),..
4220: 20 20 20 20 20 20 20 20 64 61 74 61 20 3d 20 6e data = n
4230: 75 6c 6c 2c 0d 0a 20 20 20 20 20 20 20 20 76 6c ull,.. vl
4240: 46 75 6e 63 73 20 3d 20 76 38 4e 65 77 28 27 56 Funcs = v8New('V
4250: 61 6c 75 65 4c 69 73 74 27 29 3b 0d 0a 0d 0a 20 alueList');....
4260: 20 20 20 69 66 20 28 21 73 63 72 2e 49 73 53 63 if (!scr.IsSc
4270: 72 69 70 74 28 29 29 20 7b 0d 0a 20 20 20 20 09 ript()) {.. .
4280: 73 6e 65 67 6f 70 61 74 2e 73 68 6f 77 4d 65 74 snegopat.showMet
4290: 68 6f 64 73 4c 69 73 74 28 29 3b 0d 0a 20 20 20 hodsList();..
42a0: 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 return;..
42b0: 20 20 7d 0d 0a 0d 0a 20 20 20 20 4a 53 48 49 4e }.... JSHIN
42c0: 54 28 73 63 72 2e 47 65 74 43 6f 64 65 4c 69 6e T(scr.GetCodeLin
42d0: 65 73 28 29 29 3b 0d 0a 20 20 20 20 0d 0a 09 4a es());.. ...J
42e0: 53 48 49 4e 54 2e 64 61 74 61 28 29 2e 66 75 6e SHINT.data().fun
42f0: 63 74 69 6f 6e 73 2e 66 6f 72 45 61 63 68 28 66 ctions.forEach(f
4300: 75 6e 63 74 69 6f 6e 28 66 75 6e 63 29 20 7b 0d unction(func) {.
4310: 0a 09 09 76 6c 46 75 6e 63 73 2e 41 64 64 28 66 ...vlFuncs.Add(f
4320: 75 6e 63 2c 20 66 75 6e 63 2e 6e 61 6d 65 2e 72 unc, func.name.r
4330: 65 70 6c 61 63 65 28 2f 5e 5c 22 28 2e 2b 3f 29 eplace(/^\"(.+?)
4340: 5c 22 24 2f 2c 20 22 24 31 22 29 29 3b 0d 0a 09 \"$/, "$1"));...
4350: 7d 29 3b 0d 0a 09 0d 0a 09 76 61 72 20 64 6c 67 });......var dlg
4360: 20 3d 20 6e 65 77 20 53 65 6c 65 63 74 56 61 6c = new SelectVal
4370: 75 65 44 69 61 6c 6f 67 28 22 d0 92 d1 8b d0 b1 ueDialog("......
4380: d0 b5 d1 80 d0 b8 d1 82 d0 b5 20 d0 bc d0 b5 d1 .......... .....
4390: 82 d0 be d0 b4 22 2c 20 76 6c 46 75 6e 63 73 29 .....", vlFuncs)
43a0: 3b 0d 0a 09 69 66 20 28 64 6c 67 2e 73 65 6c 65 ;...if (dlg.sele
43b0: 63 74 56 61 6c 75 65 28 29 29 20 7b 0d 0a 09 09 ctValue()) {....
43c0: 73 63 72 2e 53 65 74 43 61 72 65 74 50 6f 73 28 scr.SetCaretPos(
43d0: 64 6c 67 2e 73 65 6c 65 63 74 65 64 56 61 6c 75 dlg.selectedValu
43e0: 65 2e 6c 69 6e 65 20 2b 20 73 63 72 2e 47 65 74 e.line + scr.Get
43f0: 43 6f 64 65 53 74 61 72 74 4c 69 6e 65 28 29 2c CodeStartLine(),
4400: 20 31 29 3b 0d 0a 09 7d 0d 0a 09 0d 0a 09 72 65 1);...}......re
4410: 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d turn true;..}...
4420: 0a 53 63 72 69 70 74 57 69 6e 64 6f 77 20 3d 20 .ScriptWindow =
4430: 54 65 78 74 57 69 6e 64 6f 77 2e 65 78 74 65 6e TextWindow.exten
4440: 64 28 7b 0d 0a 0d 0a 20 20 20 20 63 6f 6e 73 74 d({.... const
4450: 72 75 63 74 3a 20 66 75 6e 63 74 69 6f 6e 28 29 ruct: function()
4460: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 {.. this
4470: 2e 5f 73 75 70 65 72 28 29 3b 09 09 0d 0a 20 20 ._super();....
4480: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 },.. ..
4490: 49 73 53 63 72 69 70 74 3a 20 66 75 6e 63 74 69 IsScript: functi
44a0: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 09 69 66 20 on() {.. .if
44b0: 28 74 68 69 73 2e 49 73 41 63 74 69 76 65 28 29 (this.IsActive()
44c0: 29 20 7b 0d 0a 20 20 20 20 09 09 76 61 72 20 76 ) {.. ..var v
44d0: 69 65 77 20 3d 20 74 68 69 73 2e 47 65 74 56 69 iew = this.GetVi
44e0: 65 77 28 29 3b 0d 0a 20 09 09 09 69 66 20 28 76 ew();.. ...if (v
44f0: 69 65 77 29 20 7b 0d 0a 20 09 09 09 09 76 61 72 iew) {.. ....var
4500: 20 64 6f 63 20 3d 20 76 69 65 77 2e 67 65 74 44 doc = view.getD
4510: 6f 63 75 6d 65 6e 74 28 29 3b 0d 0a 20 09 09 09 ocument();.. ...
4520: 09 69 66 20 28 64 6f 63 29 20 7b 0d 0a 20 09 09 .if (doc) {.. ..
4530: 09 09 09 69 66 20 28 64 6f 63 2e 70 61 74 68 2e ...if (doc.path.
4540: 6d 61 74 63 68 28 2f 5c 2e 28 6a 73 7c 76 62 73 match(/\.(js|vbs
4550: 29 24 2f 69 29 29 20 7b 0d 0a 20 09 09 09 09 09 )$/i)) {.. .....
4560: 09 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 20 .return true;..
4570: 09 09 09 09 09 7d 0d 0a 20 09 09 09 09 7d 0d 0a .....}.. ....}..
4580: 20 09 09 09 7d 0d 0a 09 20 20 20 20 20 20 20 20 ...}...
4590: 76 61 72 20 6c 69 6e 65 73 20 3d 20 74 68 69 73 var lines = this
45a0: 2e 47 65 74 4c 69 6e 65 73 28 29 3b 0d 0a 09 20 .GetLines();...
45b0: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 69 return li
45c0: 6e 65 73 2e 6c 65 6e 67 74 68 20 26 26 20 6c 69 nes.length && li
45d0: 6e 65 73 5b 30 5d 2e 6d 61 74 63 68 28 2f 5e 5c nes[0].match(/^\
45e0: 24 2f 29 3b 0d 0a 20 20 20 20 09 7d 0d 0a 20 20 $/);.. .}..
45f0: 20 20 09 72 65 74 75 72 6e 20 66 61 6c 73 65 3b .return false;
4600: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a .. },.. ..
4610: 20 20 20 20 47 65 74 43 6f 64 65 53 74 61 72 74 GetCodeStart
4620: 4c 69 6e 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29 Line: function()
4630: 20 7b 09 0d 0a 20 20 20 20 20 20 20 20 76 61 72 {... var
4640: 20 73 74 61 72 74 20 3d 20 30 2c 0d 0a 20 20 20 start = 0,..
4650: 20 20 20 20 20 20 20 20 20 6c 69 6e 65 73 20 3d lines =
4660: 20 74 68 69 73 2e 47 65 74 4c 69 6e 65 73 28 29 this.GetLines()
4670: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d ;.. .
4680: 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 . while (
4690: 73 74 61 72 74 20 3c 20 6c 69 6e 65 73 2e 6c 65 start < lines.le
46a0: 6e 67 74 68 29 20 7b 0d 0a 20 20 20 20 20 20 20 ngth) {..
46b0: 20 20 20 20 20 69 66 20 28 21 6c 69 6e 65 73 5b if (!lines[
46c0: 73 74 61 72 74 5d 2e 6d 61 74 63 68 28 2f 5e 5c start].match(/^\
46d0: 24 2f 29 20 26 26 20 0d 0a 20 20 20 20 20 20 20 $/) && ..
46e0: 20 20 20 20 20 20 20 20 20 21 6c 69 6e 65 73 5b !lines[
46f0: 73 74 61 72 74 5d 2e 6d 61 74 63 68 28 2f 5e 5c start].match(/^\
4700: 73 2a 24 2f 29 29 20 7b 0d 0a 20 20 20 20 20 20 s*$/)) {..
4710: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b break;
4720: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d .. }.
4730: 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 . sta
4740: 72 74 2b 2b 3b 0d 0a 20 20 20 20 20 20 20 20 7d rt++;.. }
4750: 09 09 09 0d 0a 20 20 20 20 20 20 20 20 72 65 74 ..... ret
4760: 75 72 6e 20 73 74 61 72 74 3b 0d 0a 20 20 20 20 urn start;..
4770: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 47 65 },.. .. Ge
4780: 74 43 6f 64 65 4c 69 6e 65 73 20 3a 20 66 75 6e tCodeLines : fun
4790: 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20 ction() {..
47a0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 47 return this.G
47b0: 65 74 4c 69 6e 65 73 28 29 2e 73 6c 69 63 65 28 etLines().slice(
47c0: 74 68 69 73 2e 47 65 74 43 6f 64 65 53 74 61 72 this.GetCodeStar
47d0: 74 4c 69 6e 65 28 29 29 3b 0d 0a 20 20 20 20 7d tLine());.. }
47e0: 0d 0a 20 20 20 20 0d 0a 7d 29 3b 0d 0a 0d 0a 66 .. ..});....f
47f0: 75 6e 63 74 69 6f 6e 20 73 68 6f 77 45 72 72 6f unction showErro
4800: 72 28 74 77 2c 20 65 2c 20 6f 66 66 73 65 74 29 r(tw, e, offset)
4810: 20 7b 09 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 {... .. v
4820: 61 72 20 65 76 69 64 65 6e 63 65 20 3d 20 27 27 ar evidence = ''
4830: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 2f 2a 20 ;.. .. /*
4840: d0 a4 d0 be d1 80 d0 bc d0 b0 d1 82 20 d0 b2 d1 ............ ...
4850: 8b d0 b2 d0 be d0 b4 d0 b0 20 d0 be d1 88 d0 b8 ......... ......
4860: d0 b1 d0 ba d0 b8 20 d0 ba d0 b0 d0 ba 20 d0 b2 ...... ...... ..
4870: 20 31 d0 a1 3a 0d 0a 20 20 20 20 20 20 20 20 20 1..:..
4880: 20 20 20 7b d0 93 d0 b4 d0 b5 7d 3a 20 d0 a7 d1 {......}: ...
4890: 82 d0 be 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .....
48a0: 20 d1 87 d0 b0 d1 81 d1 82 d1 8c 20 d1 81 d1 82 .......... ....
48b0: d1 80 d0 be d0 ba d0 b8 20 d1 81 20 d0 be d1 88 ........ .. ....
48c0: d0 b8 d0 b1 d0 ba d0 be d0 b9 3c 3c 3f 3e 3e 09 ..........<<?>>.
48d0: 0d 0a 20 20 20 20 20 20 20 20 3c 3c 3f 3e 3e 20 .. <<?>>
48e0: 2d 20 d0 bc d0 b0 d1 80 d0 ba d0 b5 d1 80 20 d0 - ............ .
48f0: bf d0 be d0 b7 d0 b8 d1 86 d0 b8 d0 b8 2c 20 d0 ............., .
4900: b2 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be d0 bc . ..............
4910: 20 d0 bf d1 80 d0 be d0 b8 d0 b7 d0 be d1 88 d0 ...............
4920: bb d0 b0 20 d0 be d1 88 d0 b8 d0 b1 d0 ba d0 b0 ... ............
4930: 2e 09 0d 0a 20 20 20 20 2a 2f 0d 0a 20 20 20 20 .... */..
4940: 0d 0a 20 20 20 20 69 66 20 28 65 2e 65 76 69 64 .. if (e.evid
4950: 65 6e 63 65 29 20 7b 20 0d 0a 20 20 20 20 20 20 ence) { ..
4960: 20 20 65 76 69 64 65 6e 63 65 20 3d 20 22 5c 6e evidence = "\n
4970: 22 20 2b 20 65 2e 65 76 69 64 65 6e 63 65 3b 0d " + e.evidence;.
4980: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 4d 65 73 73 . }.. Mess
4990: 61 67 65 28 22 7b 22 20 2b 20 65 2e 6c 69 6e 65 age("{" + e.line
49a0: 20 2b 20 22 7d 20 22 20 2b 20 65 2e 72 65 61 73 + "} " + e.reas
49b0: 6f 6e 20 2b 20 65 76 69 64 65 6e 63 65 2c 20 6d on + evidence, m
49c0: 45 78 63 32 2c 20 0d 0a 20 20 20 20 09 66 75 6e Exc2, .. .fun
49d0: 63 74 69 6f 6e 20 28 6f 29 20 7b 6f 2e 77 2e 53 ction (o) {o.w.S
49e0: 65 74 43 61 72 65 74 50 6f 73 28 6f 2e 72 2c 20 etCaretPos(o.r,
49f0: 6f 2e 63 29 3b 7d 2c 20 0d 0a 20 20 20 20 09 7b o.c);}, .. .{
4a00: 77 3a 74 77 2c 20 72 3a 65 2e 6c 69 6e 65 20 2b w:tw, r:e.line +
4a10: 20 6f 66 66 73 65 74 2c 20 63 3a 65 2e 63 68 61 offset, c:e.cha
4a20: 72 61 63 74 65 72 7d 0d 0a 20 20 20 20 29 3b 0d racter}.. );.
4a30: 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 20 0d 0a 2f 2f 2f .}....//// ..///
4a40: 2f 20 d0 9f d0 be d0 b4 d0 b4 d0 b5 d1 80 d0 b6 / ..............
4a50: d0 ba d0 b0 20 d0 bf d1 80 d0 be d0 b2 d0 b5 d1 .... ...........
4a60: 80 d0 ba d0 b8 20 d1 81 d0 b8 d0 bd d1 82 d0 b0 ..... ..........
4a70: d0 ba d1 81 d0 b8 d1 81 d0 b0 20 d1 81 d0 ba d1 .......... .....
4a80: 80 d0 b8 d0 bf d1 82 d0 be d0 b2 20 28 4a 53 48 ........... (JSH
4a90: 69 6e 74 29 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f int)..//////////
4aa0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4ab0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4ac0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4ad0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
4ae0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a //////////////..
4af0: 0d 0a 2f 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ../* ***********
4b00: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
4b10: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
4b20: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d ***************.
4b30: 0a 20 2a 20 20 d0 98 d0 bd d0 b8 d1 86 d0 b8 d0 . * ...........
4b40: b0 d0 bb d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d1 8f 20 ...............
4b50: d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 2e 0d ................
4b60: 0a 20 2a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a . * ************
4b70: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
4b80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
4b90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 2a 2f ************* */
4ba0: 0d 0a 0d 0a 20 49 6e 69 74 53 63 72 69 70 74 41 .... InitScriptA
4bb0: 6e 64 52 75 6e 28 29 3b 0d 0a 0d 0a 66 75 6e 63 ndRun();....func
4bc0: 74 69 6f 6e 20 6d 61 63 72 6f 73 74 65 73 74 54 tion macrostestT
4bd0: 68 72 6f 77 28 29 0d 0a 7b 0d 0a 20 20 20 20 74 hrow()..{.. t
4be0: 68 72 6f 77 20 22 65 78 63 65 70 74 69 6f 6e 22 hrow "exception"
4bf0: 0d 0a 7d 0d 0a ..}..