Artifact
c4f2387e90657d3b035ed838c22bdc2a04cd6623:
- File
extSyntaxCheck.js
— part of check-in
[25ea6fd464]
at
2013-04-29 19:57:13
on branch trunk
— Добавлена новый скрипт перехватывающий проверку синтаксиса и объединящего ошибки Сервера, Внешнего соединя в одну строку
(user:
sosnae
size: 7257)
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 65 78 74 53 79 pt..$uname extSy
0020: 6e 74 61 78 43 68 65 63 6b 0d 0a 24 64 6e 61 6d ntaxCheck..$dnam
0030: 65 20 d0 a0 d0 b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 e ..............
0040: d0 bd d0 bd d0 b8 d0 b5 20 d1 81 d0 be d0 be d0 ........ .......
0050: b1 d1 89 d0 b5 d0 bd d0 b8 d0 b9 20 d0 be d0 b1 ........... ....
0060: 20 d0 be d1 88 d0 b8 d0 b1 d0 ba d0 b0 d1 85 20 ..............
0070: 2e 0d 0a 24 61 64 64 69 6e 20 73 74 64 6c 69 62 ...$addin stdlib
0080: 0d 0a 24 61 64 64 69 6e 20 73 74 64 63 6f 6d 6d ..$addin stdcomm
0090: 61 6e 64 73 0d 0a 0d 0a 2f 2f 20 28 63 29 20 d0 ands....// (c) .
00a0: a1 d0 be d1 81 d0 bd d0 b0 20 d0 95 d0 b2 d0 b3 ......... ......
00b0: d0 b5 d0 bd d0 b8 d0 b9 20 3c 73 68 65 6e 6a 61 ........ <shenja
00c0: 40 73 6f 73 6e 61 2e 7a 70 2e 75 61 3e 0d 0a 0d @sosna.zp.ua>...
00d0: 0a 73 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28 .stdlib.require(
00e0: 27 54 65 78 74 57 69 6e 64 6f 77 2e 6a 73 27 2c 'TextWindow.js',
00f0: 20 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 73 SelfScript);..s
0100: 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28 27 53 tdlib.require('S
0110: 63 72 69 70 74 46 6f 72 6d 2e 6a 73 27 2c 20 53 criptForm.js', S
0120: 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 73 74 64 elfScript);..std
0130: 6c 69 62 2e 72 65 71 75 69 72 65 28 27 6c 6f 67 lib.require('log
0140: 34 6a 73 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 4js.js', SelfScr
0150: 69 70 74 29 3b 0d 0a 0d 0a 76 61 72 20 73 70 65 ipt);....var spe
0160: 6c 6c 20 3d 20 73 74 64 6c 69 62 2e 72 65 71 75 ll = stdlib.requ
0170: 69 72 65 28 73 74 64 6c 69 62 2e 67 65 74 53 6e ire(stdlib.getSn
0180: 65 67 6f 70 61 74 4d 61 69 6e 46 6f 6c 64 65 72 egopatMainFolder
0190: 28 29 20 2b 20 27 73 63 72 69 70 74 73 5c 5c 53 () + 'scripts\\S
01a0: 70 65 6c 6c 43 68 65 63 6b 65 72 2e 6a 73 27 29 pellChecker.js')
01b0: 3b 0d 0a 0d 0a 76 61 72 20 6c 6f 67 67 65 72 20 ;....var logger
01c0: 3d 20 4c 6f 67 34 6a 73 2e 67 65 74 4c 6f 67 67 = Log4js.getLogg
01d0: 65 72 28 53 65 6c 66 53 63 72 69 70 74 2e 75 6e er(SelfScript.un
01e0: 69 71 75 65 4e 61 6d 65 29 3b 0d 0a 76 61 72 20 iqueName);..var
01f0: 61 70 70 65 6e 64 65 72 20 3d 20 6e 65 77 20 4c appender = new L
0200: 6f 67 34 6a 73 2e 42 72 6f 77 73 65 72 43 6f 6e og4js.BrowserCon
0210: 73 6f 6c 65 41 70 70 65 6e 64 65 72 28 29 3b 0d soleAppender();.
0220: 0a 61 70 70 65 6e 64 65 72 2e 73 65 74 4c 61 79 .appender.setLay
0230: 6f 75 74 28 6e 65 77 20 4c 6f 67 34 6a 73 2e 50 out(new Log4js.P
0240: 61 74 74 65 72 6e 4c 61 79 6f 75 74 28 4c 6f 67 atternLayout(Log
0250: 34 6a 73 2e 50 61 74 74 65 72 6e 4c 61 79 6f 75 4js.PatternLayou
0260: 74 2e 54 54 43 43 5f 43 4f 4e 56 45 52 53 49 4f t.TTCC_CONVERSIO
0270: 4e 5f 50 41 54 54 45 52 4e 29 29 3b 0d 0a 6c 6f N_PATTERN));..lo
0280: 67 67 65 72 2e 61 64 64 41 70 70 65 6e 64 65 72 gger.addAppender
0290: 28 61 70 70 65 6e 64 65 72 29 3b 0d 0a 6c 6f 67 (appender);..log
02a0: 67 65 72 2e 73 65 74 4c 65 76 65 6c 28 4c 6f 67 ger.setLevel(Log
02b0: 34 6a 73 2e 4c 65 76 65 6c 2e 45 52 52 4f 52 29 4js.Level.ERROR)
02c0: 3b 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e ;....SelfScript.
02d0: 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 9d d0 b0 self['macros....
02e0: d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0 b0 27 5d ..............']
02f0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d = function() {.
0300: 0a 20 20 20 20 65 78 74 53 79 6e 74 61 78 43 68 . extSyntaxCh
0310: 65 63 6b 20 3d 20 47 65 74 45 78 74 53 79 6e 74 eck = GetExtSynt
0320: 61 78 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 axCheck();..
0330: 65 78 74 53 79 6e 74 61 78 43 68 65 63 6b 2e 73 extSyntaxCheck.s
0340: 68 6f 77 28 29 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c how();..}....Sel
0350: 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 fScript.self['ma
0360: 63 72 6f 73 d0 9f d1 80 d0 be d0 b2 d0 b5 d1 80 cros............
0370: d0 ba d0 b0 20 d1 81 d0 b8 d0 bd d1 82 d0 b0 d0 .... ...........
0380: ba d1 81 d0 b8 d1 81 d0 b0 20 d0 b8 20 d0 be d1 ......... .. ...
0390: 80 d1 84 d0 be d0 b3 d1 80 d0 b0 d1 84 d0 b8 d0 ................
03a0: b8 20 d0 b4 d0 bb d1 8f 20 d0 b8 d0 b7 d0 bc d0 . ...... .......
03b0: b5 d0 bd d0 bd d0 b5 d0 bd d1 8b d1 85 20 d1 81 ............. ..
03c0: d1 82 d1 80 d0 be d0 ba 27 5d 20 3d 20 66 75 6e ........'] = fun
03d0: 63 74 69 6f 6e 28 29 7b 0d 0a 20 20 20 20 73 79 ction(){.. sy
03e0: 6e 74 61 78 41 6e 64 53 70 65 6c 6c 43 68 65 63 ntaxAndSpellChec
03f0: 6b 28 29 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 k();..}....funct
0400: 69 6f 6e 20 73 79 6e 74 61 78 41 6e 64 53 70 65 ion syntaxAndSpe
0410: 6c 6c 43 68 65 63 6b 28 29 20 7b 0d 0a 20 20 20 llCheck() {..
0420: 20 69 66 28 73 74 64 63 6f 6d 6d 61 6e 64 73 2e if(stdcommands.
0430: 46 72 6e 74 65 6e 64 2e 53 79 6e 74 61 78 43 68 Frntend.SyntaxCh
0440: 65 63 6b 2e 67 65 74 53 74 61 74 65 28 29 2e 65 eck.getState().e
0450: 6e 61 62 6c 65 64 29 0d 0a 20 20 20 20 20 20 20 nabled)..
0460: 20 73 74 64 63 6f 6d 6d 61 6e 64 73 2e 46 72 6e stdcommands.Frn
0470: 74 65 6e 64 2e 53 79 6e 74 61 78 43 68 65 63 6b tend.SyntaxCheck
0480: 2e 73 65 6e 64 28 29 3b 0d 0a 20 20 20 20 0d 0a .send();.. ..
0490: 20 20 20 20 76 61 72 20 77 6e 64 20 3d 20 47 65 var wnd = Ge
04a0: 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d 0a tTextWindow();..
04b0: 20 20 20 20 0d 0a 20 20 20 20 76 61 72 20 74 65 .. var te
04c0: 78 74 20 3d 20 22 22 3b 0d 0a 20 20 20 20 69 66 xt = "";.. if
04d0: 20 28 77 6e 64 29 7b 0d 0a 20 20 20 20 20 20 20 (wnd){..
04e0: 20 74 65 78 74 20 3d 20 77 6e 64 2e 47 65 74 54 text = wnd.GetT
04f0: 65 78 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 ext();..
0500: 74 65 78 74 20 3d 20 74 65 78 74 2e 73 70 6c 69 text = text.spli
0510: 74 28 27 5c 6e 27 29 3b 0d 0a 20 20 20 20 20 20 t('\n');..
0520: 20 20 73 70 65 6c 6c 43 68 65 63 6b 65 72 20 3d spellChecker =
0530: 20 73 70 65 6c 6c 2e 47 65 74 53 70 65 6c 6c 43 spell.GetSpellC
0540: 68 65 63 6b 65 72 28 29 3b 0d 0a 20 20 20 20 7d hecker();.. }
0550: 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 else {..
0560: 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 7d 0d return;.. }.
0570: 0a 0d 0a 20 20 20 20 76 61 72 20 73 63 69 4d 67 ... var sciMg
0580: 72 20 3d 20 61 64 64 69 6e 73 2e 62 79 55 6e 69 r = addins.byUni
0590: 71 75 65 4e 61 6d 65 28 22 53 63 69 43 6f 6c 6f queName("SciColo
05a0: 72 65 72 56 38 4d 61 6e 61 67 65 72 22 29 2e 6f rerV8Manager").o
05b0: 62 6a 65 63 74 3b 0d 0a 20 20 20 20 76 61 72 20 bject;.. var
05c0: 68 77 6e 64 20 3d 20 73 63 69 4d 67 72 2e 67 65 hwnd = sciMgr.ge
05d0: 74 41 63 74 69 76 65 53 63 69 6e 74 69 6c 6c 61 tActiveScintilla
05e0: 48 61 6e 64 6c 65 28 29 3b 0d 0a 20 20 20 20 69 Handle();.. i
05f0: 66 20 28 68 77 6e 64 29 7b 0d 0a 20 20 20 20 20 f (hwnd){..
0600: 20 20 20 76 61 72 20 6e 65 78 74 4d 6f 64 4c 69 var nextModLi
0610: 6e 65 20 3d 20 73 63 69 4d 67 72 2e 53 65 6e 64 ne = sciMgr.Send
0620: 53 63 69 4d 65 73 73 61 67 65 28 68 77 6e 64 2c SciMessage(hwnd,
0630: 73 63 69 4d 67 72 2e 53 43 49 5f 47 45 54 4e 45 sciMgr.SCI_GETNE
0640: 58 54 4d 4f 44 4c 49 4e 45 2c 30 2c 2d 31 29 3b XTMODLINE,0,-1);
0650: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 63 75 .. var cu
0660: 72 4d 6f 64 4c 69 6e 65 20 3d 20 2d 31 3b 0d 0a rModLine = -1;..
0670: 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 6e while (n
0680: 65 78 74 4d 6f 64 4c 69 6e 65 20 3e 20 63 75 72 extModLine > cur
0690: 4d 6f 64 4c 69 6e 65 29 7b 0d 0a 20 20 20 20 20 ModLine){..
06a0: 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 73 while (s
06b0: 63 69 4d 67 72 2e 53 65 6e 64 53 63 69 4d 65 73 ciMgr.SendSciMes
06c0: 73 61 67 65 28 68 77 6e 64 2c 73 63 69 4d 67 72 sage(hwnd,sciMgr
06d0: 2e 53 43 49 5f 47 45 54 4d 4f 44 4c 49 4e 45 53 .SCI_GETMODLINES
06e0: 54 41 54 45 2c 6e 65 78 74 4d 6f 64 4c 69 6e 65 TATE,nextModLine
06f0: 29 20 3e 20 30 29 7b 0d 0a 20 20 20 20 20 20 20 ) > 0){..
0700: 20 20 20 20 20 20 20 20 20 73 70 65 6c 6c 43 68 spellCh
0710: 65 63 6b 65 72 2e 53 70 65 6c 6c 4c 69 6e 65 28 ecker.SpellLine(
0720: 74 65 78 74 5b 6e 65 78 74 4d 6f 64 4c 69 6e 65 text[nextModLine
0730: 2d 31 5d 2c 20 77 6e 64 2c 20 6e 65 78 74 4d 6f -1], wnd, nextMo
0740: 64 4c 69 6e 65 2d 31 29 3b 0d 0a 20 20 20 20 20 dLine-1);..
0750: 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 4d nextM
0760: 6f 64 4c 69 6e 65 2b 2b 3b 0d 0a 20 20 20 20 20 odLine++;..
0770: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }..
0780: 20 20 20 20 20 20 63 75 72 4d 6f 64 4c 69 6e 65 curModLine
0790: 20 3d 20 6e 65 78 74 4d 6f 64 4c 69 6e 65 3b 0d = nextModLine;.
07a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 . nex
07b0: 74 4d 6f 64 4c 69 6e 65 20 3d 20 73 63 69 4d 67 tModLine = sciMg
07c0: 72 2e 53 65 6e 64 53 63 69 4d 65 73 73 61 67 65 r.SendSciMessage
07d0: 28 68 77 6e 64 2c 73 63 69 4d 67 72 2e 53 43 49 (hwnd,sciMgr.SCI
07e0: 5f 47 45 54 4e 45 58 54 4d 4f 44 4c 49 4e 45 2c _GETNEXTMODLINE,
07f0: 30 2c 63 75 72 4d 6f 64 4c 69 6e 65 29 3b 0d 0a 0,curModLine);..
0800: 20 20 20 20 20 20 20 20 7d 20 20 20 0d 0a 20 20 } ..
0810: 20 7d 0d 0a 7d 0d 0a 0d 0a 45 78 74 53 79 6e 74 }..}....ExtSynt
0820: 61 78 43 68 65 63 6b 20 3d 20 53 63 72 69 70 74 axCheck = Script
0830: 46 6f 72 6d 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d Form.extend({...
0840: 0a 20 20 20 20 73 65 74 74 69 6e 67 73 52 6f 6f . settingsRoo
0850: 74 50 61 74 68 20 3a 20 53 65 6c 66 53 63 72 69 tPath : SelfScri
0860: 70 74 2e 75 6e 69 71 75 65 4e 61 6d 65 2c 0d 0a pt.uniqueName,..
0870: 20 20 20 20 0d 0a 20 20 20 20 73 65 74 74 69 6e .. settin
0880: 67 73 20 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20 gs : {..
0890: 70 66 6c 53 6e 65 67 6f 70 61 74 20 3a 20 7b 0d pflSnegopat : {.
08a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 63 61 . 'ca
08b0: 74 68 53 79 6e 74 61 78 43 68 65 63 6b 27 3a 20 thSyntaxCheck':
08c0: 66 61 6c 73 65 20 2f 2f 20 d0 9f d0 b5 d1 80 d0 false // .......
08d0: b5 d1 85 d0 b2 d0 b0 d1 82 d1 8b d0 b2 d0 b0 d1 ................
08e0: 82 d1 8c 20 d0 ba d0 be d0 bc d0 bc d0 b0 d0 bd ... ............
08f0: d0 b4 d1 83 20 d1 81 d0 b8 d0 bd d1 82 d0 b0 d0 .... ...........
0900: ba d1 81 d0 b8 d1 87 d0 b5 d1 81 d0 ba d0 be d0 ................
0910: b9 20 d0 bf d1 80 d0 be d0 b2 d0 b5 d1 80 d0 ba . ..............
0920: d0 b8 2e 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a ..... }..
0930: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 63 6f },.... co
0940: 6e 73 74 72 75 63 74 20 3a 20 66 75 6e 63 74 69 nstruct : functi
0950: 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 on () {..
0960: 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e .. this.
0970: 5f 73 75 70 65 72 28 53 65 6c 66 53 63 72 69 70 _super(SelfScrip
0980: 74 2e 66 75 6c 6c 50 61 74 68 2e 72 65 70 6c 61 t.fullPath.repla
0990: 63 65 28 2f 2e 6a 73 24 2f 2c 20 27 2e 73 73 66 ce(/.js$/, '.ssf
09a0: 27 29 29 3b 20 2f 2f d0 97 d0 b0 d0 b3 d1 80 d1 ')); //.........
09b0: 83 d0 b7 d0 b8 d0 bc 20 d1 84 d0 be d1 80 d0 bc ....... ........
09c0: d1 83 20 d1 81 20 d0 bd d0 b0 d1 81 d1 82 d1 80 .. .. ..........
09d0: d0 be d0 b9 d0 ba d0 b0 d0 bc d0 b8 2c 20 d1 84 ............, ..
09e0: d0 be d1 80 d0 bc d0 b0 20 d0 b4 d0 be d0 bb d0 ........ .......
09f0: b6 d0 bd d0 b0 20 d0 bd d0 b0 d0 b7 d1 8b d0 b2 ..... ..........
0a00: d0 b0 d1 82 d1 8c d1 81 d1 8f 20 d1 82 d0 b0 d0 .......... .....
0a10: ba 20 d0 b6 d0 b5 20 d0 ba d0 b0 d0 ba 20 d0 b8 . .... ...... ..
0a20: 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 2c 20 d1 ............, .
0a30: 82 d0 be d0 bb d1 8c d0 ba d0 be 20 d1 81 20 d1 ........... .. .
0a40: 80 d0 b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 ................
0a50: b8 d0 b5 d0 bc 20 73 73 66 0d 0a 20 20 20 20 20 ..... ssf..
0a60: 20 20 20 74 68 69 73 2e 52 45 20 3d 20 6e 65 77 this.RE = new
0a70: 20 52 65 67 45 78 70 28 22 5e 28 5c 5c 7b 2e 7b RegExp("^(\\{.{
0a80: 31 2c 7d 5c 5c 7d 5c 3a 2e 7b 31 2c 7d 5c 29 24 1,}\\}\:.{1,}\)$
0a90: 22 2c 20 22 6d 69 67 22 29 3b 20 0d 0a 20 20 20 ", "mig"); ..
0aa0: 20 20 20 20 20 74 68 69 73 2e 72 65 5f 63 6f 6c this.re_col
0ab0: 75 6d 6e 20 3d 20 6e 65 77 20 52 65 67 45 78 70 umn = new RegExp
0ac0: 28 22 5c 5c 28 5c 28 5c 5c 64 7b 31 2c 7d 29 5c ("\\(\(\\d{1,})\
0ad0: 2c 28 5c 5c 64 7b 31 2c 7d 29 5c 5c 29 5c 5c 7d ,(\\d{1,})\\)\\}
0ae0: 5c 3a 22 2c 20 22 69 22 29 3b 0d 0a 20 20 20 20 \:", "i");..
0af0: 20 20 20 20 74 68 69 73 2e 52 45 5f 45 52 52 4f this.RE_ERRO
0b00: 52 5f 54 45 58 54 20 3d 20 6e 65 77 20 52 65 67 R_TEXT = new Reg
0b10: 45 78 70 28 22 5c 5c 73 5c 5c 28 28 d0 9f d1 80 Exp("\\s\\((....
0b20: d0 be d0 b2 d0 b5 d1 80 d0 ba d0 b0 5c 5c 3a 5c ............\\:\
0b30: 5c 73 2e 7b 31 2c 7d 29 5c 5c 29 24 22 2c 20 22 \s.{1,})\\)$", "
0b40: 67 69 6d 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 gim");..
0b50: 74 68 69 73 2e 65 72 72 6f 72 73 20 3d 20 7b 7d this.errors = {}
0b60: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e ;.. this.
0b70: 6c 6f 61 64 53 65 74 74 69 6e 67 73 28 29 3b 20 loadSettings();
0b80: 2f 2f d0 97 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 b8 //..............
0b90: d0 bc 20 d1 81 d0 be d1 85 d1 80 d0 b0 d0 bd d0 .. .............
0ba0: b5 d0 bd d0 bd d1 8b d0 b5 20 d0 bd d0 b0 d1 81 ......... ......
0bb0: d1 82 d1 80 d0 be d0 b9 d0 ba d0 b8 2e 20 0d 0a ............. ..
0bc0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 ..
0bd0: 20 20 45 78 74 53 79 6e 74 61 78 43 68 65 63 6b ExtSyntaxCheck
0be0: 2e 5f 69 6e 73 74 61 6e 63 65 20 3d 20 74 68 69 ._instance = thi
0bf0: 73 3b 0d 0a 20 20 20 20 7d 2c 20 0d 0a 20 20 20 s;.. }, ..
0c00: 20 0d 0a 20 20 20 20 6c 6f 61 64 53 65 74 74 69 .. loadSetti
0c10: 6e 67 73 3a 20 66 75 6e 63 74 69 6f 6e 28 29 7b ngs: function(){
0c20: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f .. this._
0c30: 73 75 70 65 72 28 29 3b 0d 0a 20 20 20 20 20 20 super();..
0c40: 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 .. if (
0c50: 74 68 69 73 2e 66 6f 72 6d 2e 63 61 74 68 53 79 this.form.cathSy
0c60: 6e 74 61 78 43 68 65 63 6b 29 20 7b 20 0d 0a 20 ntaxCheck) { ..
0c70: 20 20 20 20 20 20 20 20 20 20 20 2f 2f d0 9f d0 //...
0c80: be d0 b4 d0 ba d0 bb d1 8e d1 87 d0 b0 d0 b5 d0 ................
0c90: bc d1 81 d1 8f 20 d0 ba 20 d0 ba d0 be d0 bc d0 ..... .. .......
0ca0: b0 d0 bd d0 b4 d0 b5 20 d0 bf d1 80 d0 be d0 b2 ....... ........
0cb0: d0 b5 d1 80 d0 ba d0 b8 20 d1 82 d0 b5 d0 ba d1 ........ .......
0cc0: 81 d1 82 d0 b0 20 0d 0a 20 20 20 20 20 20 20 20 ..... ..
0cd0: 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 logger.debug
0ce0: 28 27 6c 6f 61 64 53 65 74 74 69 6e 67 73 20 61 ('loadSettings a
0cf0: 64 64 48 61 6e 64 6c 65 72 27 29 0d 0a 20 20 20 ddHandler')..
0d00: 20 20 20 20 20 20 20 20 20 20 73 74 64 63 6f 6d stdcom
0d10: 6d 61 6e 64 73 2e 46 72 6e 74 65 6e 64 2e 53 79 mands.Frntend.Sy
0d20: 6e 74 61 78 43 68 65 63 6b 2e 61 64 64 48 61 6e ntaxCheck.addHan
0d30: 64 6c 65 72 28 74 68 69 73 2c 20 22 6f 6e 53 79 dler(this, "onSy
0d40: 6e 74 61 78 43 68 65 63 6b 22 29 3b 0d 0a 20 20 ntaxCheck");..
0d50: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 ..
0d60: 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 } else {..
0d70: 20 20 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 logger
0d80: 2e 64 65 62 75 67 28 27 6c 6f 61 64 53 65 74 74 .debug('loadSett
0d90: 69 6e 67 73 20 64 65 6c 48 61 6e 64 6c 65 72 27 ings delHandler'
0da0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 ).. t
0db0: 72 79 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 ry {..
0dc0: 20 20 20 20 20 20 73 74 64 63 6f 6d 6d 61 6e 64 stdcommand
0dd0: 73 2e 46 72 6e 74 65 6e 64 2e 53 79 6e 74 61 78 s.Frntend.Syntax
0de0: 43 68 65 63 6b 2e 64 65 6c 48 61 6e 64 6c 65 72 Check.delHandler
0df0: 28 74 68 69 73 2c 20 22 6f 6e 53 79 6e 74 61 78 (this, "onSyntax
0e00: 43 68 65 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 Check");..
0e10: 20 20 20 20 20 20 7d 20 63 61 74 63 68 28 65 29 } catch(e)
0e20: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 {..
0e30: 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 logger.debug
0e40: 28 65 2e 64 65 73 63 72 69 70 74 69 6f 6e 29 3b (e.description);
0e50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d .. }.
0e60: 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 . ..
0e70: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }..
0e80: 20 20 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 .. },..
0e90: 0d 0a 20 20 20 20 6f 6e 53 79 6e 74 61 78 43 68 .. onSyntaxCh
0ea0: 65 63 6b 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 eck : function (
0eb0: 63 6d 64 29 7b 0d 0a 20 20 20 20 20 20 20 20 6c cmd){.. l
0ec0: 6f 67 67 65 72 2e 64 65 62 75 67 28 27 6f 6e 53 ogger.debug('onS
0ed0: 79 6e 74 61 78 43 68 65 63 6b 20 27 29 0d 0a 20 yntaxCheck ')..
0ee0: 20 20 20 20 20 20 20 69 66 20 28 63 6d 64 2e 69 if (cmd.i
0ef0: 73 42 65 66 6f 72 65 29 7b 0d 0a 20 20 20 20 20 sBefore){..
0f00: 20 20 20 20 20 20 20 74 68 69 73 2e 77 6e 64 20 this.wnd
0f10: 3d 20 6e 65 77 20 54 65 78 74 57 69 6e 64 6f 77 = new TextWindow
0f20: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a ();.. }..
0f30: 20 20 20 20 20 20 20 20 69 66 28 21 63 6d 64 2e if(!cmd.
0f40: 69 73 42 65 66 6f 72 65 29 0d 0a 20 20 20 20 20 isBefore)..
0f50: 20 20 20 7b 20 0d 0a 20 20 20 20 20 20 20 20 20 { ..
0f60: 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 logger.debug(
0f70: 27 6f 6e 53 79 6e 74 61 78 43 68 65 63 6b 20 64 'onSyntaxCheck d
0f80: 69 73 63 6f 6e 6e 65 63 74 27 29 0d 0a 20 20 20 isconnect')..
0f90: 20 20 20 20 20 20 20 20 20 74 72 79 20 7b 0d 0a try {..
0fa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0fb0: 20 20 20 20 65 76 65 6e 74 73 2e 64 69 73 63 6f events.disco
0fc0: 6e 6e 65 63 74 28 44 65 73 69 67 6e 65 72 2c 20 nnect(Designer,
0fd0: 22 6f 6e 4d 65 73 73 61 67 65 22 2c 20 74 68 69 "onMessage", thi
0fe0: 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 s);....
0ff0: 20 20 20 20 20 20 20 20 7d 20 63 61 74 63 68 20 } catch
1000: 28 65 29 20 7b 20 7d 0d 0a 20 20 20 20 20 20 20 (e) { }..
1010: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 ..
1020: 20 20 20 20 20 20 20 20 68 61 73 45 72 72 6f 72 hasError
1030: 73 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 s = false;..
1040: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 ..
1050: 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 6b for (var k
1060: 20 69 6e 20 74 68 69 73 2e 65 72 72 6f 72 73 29 in this.errors)
1070: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 {..
1080: 20 20 20 68 61 73 45 72 72 6f 72 73 20 3d 20 74 hasErrors = t
1090: 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 rue;..
10a0: 20 20 20 20 20 20 74 65 78 74 20 3d 20 74 68 69 text = thi
10b0: 73 2e 65 72 72 6f 72 73 5b 6b 5d 3b 0d 0a 20 20 s.errors[k];..
10c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 va
10d0: 72 20 4d 61 74 63 68 65 73 20 3d 20 74 68 69 73 r Matches = this
10e0: 2e 72 65 5f 63 6f 6c 75 6d 6e 2e 65 78 65 63 28 .re_column.exec(
10f0: 74 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 text);..
1100: 20 20 20 20 20 20 20 20 69 66 20 28 4d 61 74 63 if (Matc
1110: 68 65 73 20 21 3d 20 6e 75 6c 6c 29 7b 0d 0a 20 hes != null){..
1120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1130: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ..
1140: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 ..
1150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 v
1160: 61 72 20 70 61 72 61 6d 20 3d 20 7b 7d 0d 0a 20 ar param = {}..
1170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1180: 20 20 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d 20 param['wnd']
1190: 3d 20 74 68 69 73 2e 77 6e 64 3b 0d 0a 20 20 20 = this.wnd;..
11a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
11b0: 20 70 61 72 61 6d 5b 27 6c 69 6e 65 27 5d 20 3d param['line'] =
11c0: 20 4d 61 74 63 68 65 73 5b 31 5d 3b 0d 0a 20 20 Matches[1];..
11d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
11e0: 20 20 70 61 72 61 6d 5b 27 63 6f 6c 75 6d 6e 27 param['column'
11f0: 5d 20 3d 20 4d 61 74 63 68 65 73 5b 32 5d 3b 0d ] = Matches[2];.
1200: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
1210: 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 logger.debu
1220: 67 28 27 6f 6e 53 79 6e 74 61 78 43 68 65 63 6b g('onSyntaxCheck
1230: 20 d0 b2 d1 8b d0 b2 d0 be d0 b4 20 d1 81 d0 be .......... ....
1240: d0 be d0 b1 d1 89 d0 b5 d0 bd d0 b8 d1 8f 20 d0 .............. .
1250: bf d0 be 20 d1 80 d0 b5 d0 b3 d1 83 d0 bb d1 8f ... ............
1260: d1 80 d0 bd d0 be d0 bc d1 83 20 d0 b2 d1 8b d1 .......... .....
1270: 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8e 2e 27 29 ..............')
1280: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ;..
1290: 20 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 74 Message(t
12a0: 65 78 74 2c 20 6d 45 78 63 33 2c 20 28 66 75 6e ext, mExc3, (fun
12b0: 63 74 69 6f 6e 28 70 61 72 61 6d 29 7b 0d 0a 20 ction(param){..
12c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
12d0: 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 logger.de
12e0: 62 75 67 28 27 6f 6e 20 4d 65 73 73 61 67 65 20 bug('on Message
12f0: d0 9e d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d1 87 ................
1300: d0 b8 d0 ba 20 d1 81 d0 be d0 b1 d1 8b d1 82 d0 .... ...........
1310: b8 d0 b9 2e 27 29 3b 0d 0a 20 20 20 20 20 20 20 ....');..
1320: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1330: 20 69 66 20 28 21 70 61 72 61 6d 5b 27 77 6e 64 if (!param['wnd
1340: 27 5d 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 ']) {..
1350: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1360: 20 20 20 72 65 74 75 72 6e 20 0d 0a 20 20 20 20 return ..
1370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1380: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 }..
1390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 i
13a0: 66 20 28 21 70 61 72 61 6d 5b 27 77 6e 64 27 5d f (!param['wnd']
13b0: 2e 49 73 41 63 74 69 76 65 28 29 29 20 7b 0d 0a .IsActive()) {..
13c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
13d0: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 retu
13e0: 72 6e 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 rn ..
13f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a }..
1400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1410: 20 20 20 20 20 20 20 20 70 61 72 61 6d 5b 27 77 param['w
1420: 6e 64 27 5d 2e 53 65 74 43 61 72 65 74 50 6f 73 nd'].SetCaretPos
1430: 28 70 61 72 61 6d 5b 27 6c 69 6e 65 27 5d 2c 20 (param['line'],
1440: 70 61 72 61 6d 5b 27 63 6f 6c 75 6d 6e 27 5d 29 param['column'])
1450: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ;..
1460: 20 20 20 20 20 20 20 20 20 20 20 76 69 65 77 20 view
1470: 3d 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d 2e 47 = param['wnd'].G
1480: 65 74 56 69 65 77 28 29 3b 0d 0a 20 20 20 20 20 etView();..
1490: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
14a0: 20 20 20 69 66 20 28 21 76 69 65 77 29 7b 0d 0a if (!view){..
14b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
14c0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 ..
14d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
14e0: 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a } else {..
14f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1500: 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f 67 67 logg
1510: 65 72 2e 64 65 62 75 67 28 27 76 69 65 77 20 61 er.debug('view a
1520: 63 74 69 76 61 74 65 20 27 29 3b 0d 0a 20 20 20 ctivate ');..
1530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1540: 20 20 20 20 20 20 20 20 20 76 69 65 77 2e 61 63 view.ac
1550: 74 69 76 61 74 65 28 29 3b 0d 0a 20 20 20 20 20 tivate();..
1560: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1570: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 }..
1580: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a ..
1590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
15a0: 20 20 20 20 20 20 20 20 70 61 72 61 6d 20 3d 20 param =
15b0: 6e 75 6c 6c 0d 0a 20 20 20 20 20 20 20 20 20 20 null..
15c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a ..
15d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
15e0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 29 .. })
15f0: 2c 20 70 61 72 61 6d 29 3b 0d 0a 20 20 20 20 20 , param);..
1600: 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 } els
1610: 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 e {..
1620: 20 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e logger.
1630: 64 65 62 75 67 28 27 6f 6e 53 79 6e 74 61 78 43 debug('onSyntaxC
1640: 68 65 63 6b 20 d0 b2 d1 8b d0 b2 d0 be d0 b4 20 heck ..........
1650: d1 81 d0 be d0 be d0 b1 d1 89 d0 b5 d0 bd d0 b8 ................
1660: d1 8f 20 2d 20 d0 bd d0 b5 20 d1 81 d0 bc d0 be .. - .... ......
1670: d0 b3 d0 bb d0 b8 20 d0 be d0 bf d1 80 d0 b5 d0 ...... .........
1680: b4 d0 b5 d0 bb d0 b8 d1 82 d1 8c 2e 27 29 3b 0d ............');.
1690: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
16a0: 20 20 20 20 20 4d 65 73 73 61 67 65 28 27 27 2b Message(''+
16b0: 74 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 text);..
16c0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 }..
16d0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }..
16e0: 20 20 20 20 20 20 74 68 69 73 2e 65 72 72 6f 72 this.error
16f0: 73 20 3d 20 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 s = {};..
1700: 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20 20 } else {..
1710: 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 logger.de
1720: 62 75 67 28 27 6f 6e 53 79 6e 74 61 78 43 68 65 bug('onSyntaxChe
1730: 63 6b 20 63 6f 6e 6e 65 63 74 27 29 0d 0a 20 20 ck connect')..
1740: 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 73 events
1750: 2e 63 6f 6e 6e 65 63 74 28 44 65 73 69 67 6e 65 .connect(Designe
1760: 72 2c 20 22 6f 6e 4d 65 73 73 61 67 65 22 2c 20 r, "onMessage",
1770: 74 68 69 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 this);..
1780: 7d 0d 0a 20 20 20 20 20 20 20 20 6c 6f 67 67 65 }.. logge
1790: 72 2e 64 65 62 75 67 28 27 6f 6e 53 79 6e 74 61 r.debug('onSynta
17a0: 78 43 68 65 63 6b 20 65 6e 64 27 29 0d 0a 20 20 xCheck end')..
17b0: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 },.. ..
17c0: 6f 6e 4d 65 73 73 61 67 65 3a 66 75 6e 63 74 69 onMessage:functi
17d0: 6f 6e 28 70 61 72 61 6d 29 7b 0d 0a 20 20 20 20 on(param){..
17e0: 20 20 20 20 74 65 78 74 20 3d 20 70 61 72 61 6d text = param
17f0: 2e 74 65 78 74 3b 0d 0a 20 20 20 20 20 20 20 20 .text;..
1800: 69 66 20 28 21 74 65 78 74 2e 6c 65 6e 67 74 68 if (!text.length
1810: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 ).. r
1820: 65 74 75 72 6e 0d 0a 20 20 20 20 20 20 20 20 0d eturn.. .
1830: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 52 45 . this.RE
1840: 20 3d 20 6e 65 77 20 52 65 67 45 78 70 28 22 5e = new RegExp("^
1850: 28 5c 5c 7b 2e 7b 31 2c 7d 5c 5c 7d 5c 3a 2e 7b (\\{.{1,}\\}\:.{
1860: 31 2c 7d 5c 29 24 22 2c 20 22 6d 69 67 22 29 3b 1,}\)$", "mig");
1870: 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 28 .. if ((
1880: 4d 61 74 63 68 65 73 20 3d 20 74 68 69 73 2e 52 Matches = this.R
1890: 45 2e 65 78 65 63 28 74 65 78 74 29 29 20 21 3d E.exec(text)) !=
18a0: 20 6e 75 6c 6c 29 7b 0d 0a 20 20 20 20 20 20 20 null){..
18b0: 20 20 20 20 20 70 61 72 61 6d 2e 63 61 6e 63 65 param.cance
18c0: 6c 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 l = true;..
18d0: 20 20 20 20 20 20 20 73 74 72 20 3d 20 4d 61 74 str = Mat
18e0: 63 68 65 73 5b 31 5d 3b 0d 0a 20 20 20 20 20 20 ches[1];..
18f0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e if (!this.
1900: 65 72 72 6f 72 73 5b 73 74 72 5d 29 7b 0d 0a 20 errors[str]){..
1910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 t
1920: 68 69 73 2e 65 72 72 6f 72 73 5b 73 74 72 5d 20 his.errors[str]
1930: 3d 20 74 65 78 74 3b 0d 0a 20 20 20 20 20 20 20 = text;..
1940: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 } else {..
1950: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 t
1960: 68 69 73 2e 52 45 5f 45 52 52 4f 52 5f 54 45 58 his.RE_ERROR_TEX
1970: 54 20 3d 20 6e 65 77 20 52 65 67 45 78 70 28 22 T = new RegExp("
1980: 5c 5c 73 5c 5c 28 28 d0 9f d1 80 d0 be d0 b2 d0 \\s\\((.........
1990: b5 d1 80 d0 ba d0 b0 5c 5c 3a 5c 5c 73 2e 7b 31 .......\\:\\s.{1
19a0: 2c 7d 29 5c 5c 29 24 22 2c 20 22 67 69 6d 22 29 ,})\\)$", "gim")
19b0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ;..
19c0: 20 20 20 70 61 72 61 6d 2e 63 61 6e 63 65 6c 20 param.cancel
19d0: 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 = true;..
19e0: 20 20 20 20 20 20 20 20 20 69 66 20 28 28 4d 61 if ((Ma
19f0: 74 63 68 65 73 5f 65 72 72 6f 72 20 3d 20 74 68 tches_error = th
1a00: 69 73 2e 52 45 5f 45 52 52 4f 52 5f 54 45 58 54 is.RE_ERROR_TEXT
1a10: 2e 65 78 65 63 28 74 65 78 74 29 29 20 21 3d 20 .exec(text)) !=
1a20: 6e 75 6c 6c 29 7b 0d 0a 20 20 20 20 20 20 20 20 null){..
1a30: 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 5f str_
1a40: 65 72 72 6f 72 20 3d 20 4d 61 74 63 68 65 73 5f error = Matches_
1a50: 65 72 72 6f 72 5b 30 5d 3b 0d 0a 20 20 20 20 20 error[0];..
1a60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 t
1a70: 68 69 73 2e 65 72 72 6f 72 73 5b 73 74 72 5d 20 his.errors[str]
1a80: 3d 20 74 68 69 73 2e 65 72 72 6f 72 73 5b 73 74 = this.errors[st
1a90: 72 5d 2b 27 20 27 2b 73 74 72 5f 65 72 72 6f 72 r]+' '+str_error
1aa0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ;..
1ab0: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 }..
1ac0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a }.. }..
1ad0: 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 },.. ..
1ae0: 20 20 4f 6b 5f 43 6c 69 63 6b 3a 66 75 6e 63 74 Ok_Click:funct
1af0: 69 6f 6e 28 42 75 74 74 6f 6e 29 7b 0d 0a 20 20 ion(Button){..
1b00: 20 20 20 20 20 20 74 68 69 73 2e 73 61 76 65 53 this.saveS
1b10: 65 74 74 69 6e 67 73 28 29 3b 0d 0a 20 20 20 20 ettings();..
1b20: 20 20 20 20 74 68 69 73 2e 6c 6f 61 64 53 65 74 this.loadSet
1b30: 74 69 6e 67 73 28 29 3b 0d 0a 20 20 20 20 20 20 tings();..
1b40: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6c 6f 73 this.form.Clos
1b50: 65 28 29 3b 0d 0a 20 20 20 20 7d 2c 20 0d 0a 0d e();.. }, ...
1b60: 0a 20 20 20 20 43 6c 6f 73 65 5f 43 6c 69 63 6b . Close_Click
1b70: 3a 66 75 6e 63 74 69 6f 6e 28 42 75 74 74 6f 6e :function(Button
1b80: 29 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 ){.. this
1b90: 2e 66 6f 72 6d 2e 43 6c 6f 73 65 28 29 3b 0d 0a .form.Close();..
1ba0: 20 20 20 20 7d 0d 0a 0d 0a 7d 29 0d 0a 0d 0a 0d }....}).....
1bb0: 0a 66 75 6e 63 74 69 6f 6e 20 47 65 74 45 78 74 .function GetExt
1bc0: 53 79 6e 74 61 78 43 68 65 63 6b 28 29 20 7b 0d SyntaxCheck() {.
1bd0: 0a 20 20 20 20 69 66 20 28 21 45 78 74 53 79 6e . if (!ExtSyn
1be0: 74 61 78 43 68 65 63 6b 2e 5f 69 6e 73 74 61 6e taxCheck._instan
1bf0: 63 65 29 0d 0a 20 20 20 20 20 20 20 20 6e 65 77 ce).. new
1c00: 20 45 78 74 53 79 6e 74 61 78 43 68 65 63 6b 28 ExtSyntaxCheck(
1c10: 29 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 65 );.. .. re
1c20: 74 75 72 6e 20 45 78 74 53 79 6e 74 61 78 43 68 turn ExtSyntaxCh
1c30: 65 63 6b 2e 5f 69 6e 73 74 61 6e 63 65 3b 0d 0a eck._instance;..
1c40: 7d 0d 0a 0d 0a 47 65 74 45 78 74 53 79 6e 74 61 }....GetExtSynta
1c50: 78 43 68 65 63 6b 28 29 3b xCheck();