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 0d 0a 20 20 20 20 }....
0780: 20 20 20 20 20 20 20 20 63 75 72 4d 6f 64 4c 69 curModLi
0790: 6e 65 20 3d 20 6e 65 78 74 4d 6f 64 4c 69 6e 65 ne = nextModLine
07a0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e ;.. n
07b0: 65 78 74 4d 6f 64 4c 69 6e 65 20 3d 20 73 63 69 extModLine = sci
07c0: 4d 67 72 2e 53 65 6e 64 53 63 69 4d 65 73 73 61 Mgr.SendSciMessa
07d0: 67 65 28 68 77 6e 64 2c 73 63 69 4d 67 72 2e 53 ge(hwnd,sciMgr.S
07e0: 43 49 5f 47 45 54 4e 45 58 54 4d 4f 44 4c 49 4e CI_GETNEXTMODLIN
07f0: 45 2c 30 2c 63 75 72 4d 6f 64 4c 69 6e 65 29 3b E,0,curModLine);
0800: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 .. }..
0810: 20 20 20 20 20 74 72 79 7b 0d 0a 20 20 20 20 20 try{..
0820: 20 20 20 20 20 20 20 73 70 65 6c 6c 43 68 65 63 spellChec
0830: 6b 65 72 2e 70 72 6f 76 69 64 65 72 2e 44 69 73 ker.provider.Dis
0840: 63 6f 6e 6e 65 63 74 28 29 3b 0d 0a 20 20 20 20 connect();..
0850: 20 20 20 20 7d 20 63 61 74 63 68 28 65 29 7b 7d } catch(e){}
0860: 0d 0a 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 45 78 74 .. }..}....Ext
0870: 53 79 6e 74 61 78 43 68 65 63 6b 20 3d 20 53 63 SyntaxCheck = Sc
0880: 72 69 70 74 46 6f 72 6d 2e 65 78 74 65 6e 64 28 riptForm.extend(
0890: 7b 0d 0a 0d 0a 20 20 20 20 73 65 74 74 69 6e 67 {.... setting
08a0: 73 52 6f 6f 74 50 61 74 68 20 3a 20 53 65 6c 66 sRootPath : Self
08b0: 53 63 72 69 70 74 2e 75 6e 69 71 75 65 4e 61 6d Script.uniqueNam
08c0: 65 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73 65 e,.. .. se
08d0: 74 74 69 6e 67 73 20 3a 20 7b 0d 0a 20 20 20 20 ttings : {..
08e0: 20 20 20 20 70 66 6c 53 6e 65 67 6f 70 61 74 20 pflSnegopat
08f0: 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 : {..
0900: 20 27 63 61 74 68 53 79 6e 74 61 78 43 68 65 63 'cathSyntaxChec
0910: 6b 27 3a 20 66 61 6c 73 65 2c 0d 0a 20 20 20 20 k': false,..
0920: 20 20 20 20 20 20 20 20 27 6d 61 78 4c 65 6e 67 'maxLeng
0930: 74 68 27 20 3a 20 34 35 2c 0d 0a 20 20 20 20 20 th' : 45,..
0940: 20 20 20 20 20 20 20 27 63 68 65 63 6b 4c 65 6e 'checkLen
0950: 67 74 68 46 75 6e 63 74 69 6f 6e 27 3a 20 66 61 gthFunction': fa
0960: 6c 73 65 20 2f 2f 20 d0 9f d0 b5 d1 80 d0 b5 d1 lse // .........
0970: 85 d0 b2 d0 b0 d1 82 d1 8b d0 b2 d0 b0 d1 82 d1 ................
0980: 8c 20 d0 ba d0 be d0 bc d0 bc d0 b0 d0 bd d0 b4 . ..............
0990: d1 83 20 d1 81 d0 b8 d0 bd d1 82 d0 b0 d0 ba d1 .. .............
09a0: 81 d0 b8 d1 87 d0 b5 d1 81 d0 ba d0 be d0 b9 20 ...............
09b0: d0 bf d1 80 d0 be d0 b2 d0 b5 d1 80 d0 ba d0 b8 ................
09c0: 2e 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 ... }..
09d0: 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 63 6f 6e 73 },.... cons
09e0: 74 72 75 63 74 20 3a 20 66 75 6e 63 74 69 6f 6e truct : function
09f0: 20 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d () {.. .
0a00: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 73 . this._s
0a10: 75 70 65 72 28 53 65 6c 66 53 63 72 69 70 74 2e uper(SelfScript.
0a20: 66 75 6c 6c 50 61 74 68 2e 72 65 70 6c 61 63 65 fullPath.replace
0a30: 28 2f 2e 6a 73 24 2f 2c 20 27 2e 73 73 66 27 29 (/.js$/, '.ssf')
0a40: 29 3b 20 2f 2f d0 97 d0 b0 d0 b3 d1 80 d1 83 d0 ); //...........
0a50: b7 d0 b8 d0 bc 20 d1 84 d0 be d1 80 d0 bc d1 83 ..... ..........
0a60: 20 d1 81 20 d0 bd d0 b0 d1 81 d1 82 d1 80 d0 be .. ............
0a70: d0 b9 d0 ba d0 b0 d0 bc d0 b8 2c 20 d1 84 d0 be .........., ....
0a80: d1 80 d0 bc d0 b0 20 d0 b4 d0 be d0 bb d0 b6 d0 ...... .........
0a90: bd d0 b0 20 d0 bd d0 b0 d0 b7 d1 8b d0 b2 d0 b0 ... ............
0aa0: d1 82 d1 8c d1 81 d1 8f 20 d1 82 d0 b0 d0 ba 20 ........ ......
0ab0: d0 b6 d0 b5 20 d0 ba d0 b0 d0 ba 20 d0 b8 20 d1 .... ...... .. .
0ac0: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 2c 20 d1 82 d0 ..........., ...
0ad0: be d0 bb d1 8c d0 ba d0 be 20 d1 81 20 d1 80 d0 ......... .. ...
0ae0: b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 b8 d0 ................
0af0: b5 d0 bc 20 73 73 66 0d 0a 20 20 20 20 20 20 20 ... ssf..
0b00: 20 74 68 69 73 2e 52 45 20 3d 20 6e 65 77 20 52 this.RE = new R
0b10: 65 67 45 78 70 28 22 5e 28 5c 5c 7b 2e 7b 31 2c egExp("^(\\{.{1,
0b20: 7d 5c 5c 7d 5c 3a 2e 7b 31 2c 7d 5c 29 24 22 2c }\\}\:.{1,}\)$",
0b30: 20 22 6d 69 67 22 29 3b 20 0d 0a 20 20 20 20 20 "mig"); ..
0b40: 20 20 20 74 68 69 73 2e 72 65 5f 63 6f 6c 75 6d this.re_colum
0b50: 6e 20 3d 20 6e 65 77 20 52 65 67 45 78 70 28 22 n = new RegExp("
0b60: 5c 5c 28 5c 28 5c 5c 64 7b 31 2c 7d 29 5c 2c 28 \\(\(\\d{1,})\,(
0b70: 5c 5c 64 7b 31 2c 7d 29 5c 5c 29 5c 5c 7d 5c 3a \\d{1,})\\)\\}\:
0b80: 22 2c 20 22 69 22 29 3b 0d 0a 20 20 20 20 20 20 ", "i");..
0b90: 20 20 74 68 69 73 2e 52 45 5f 45 52 52 4f 52 5f this.RE_ERROR_
0ba0: 54 45 58 54 20 3d 20 6e 65 77 20 52 65 67 45 78 TEXT = new RegEx
0bb0: 70 28 22 5c 5c 73 5c 5c 28 28 d0 9f d1 80 d0 be p("\\s\\((......
0bc0: d0 b2 d0 b5 d1 80 d0 ba d0 b0 5c 5c 3a 5c 5c 73 ..........\\:\\s
0bd0: 2e 7b 31 2c 7d 29 5c 5c 29 24 22 2c 20 22 67 69 .{1,})\\)$", "gi
0be0: 6d 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 m");.. th
0bf0: 69 73 2e 65 72 72 6f 72 73 20 3d 20 7b 7d 3b 0d is.errors = {};.
0c00: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 6c 6f . this.lo
0c10: 61 64 53 65 74 74 69 6e 67 73 28 29 3b 20 2f 2f adSettings(); //
0c20: d0 97 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 b8 d0 bc ................
0c30: 20 d1 81 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b5 d0 ...............
0c40: bd d0 bd d1 8b d0 b5 20 d0 bd d0 b0 d1 81 d1 82 ....... ........
0c50: d1 80 d0 be d0 b9 d0 ba d0 b8 2e 20 0d 0a 20 20 ........... ..
0c60: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 ..
0c70: 45 78 74 53 79 6e 74 61 78 43 68 65 63 6b 2e 5f ExtSyntaxCheck._
0c80: 69 6e 73 74 61 6e 63 65 20 3d 20 74 68 69 73 3b instance = this;
0c90: 0d 0a 20 20 20 20 7d 2c 20 0d 0a 20 20 20 20 0d .. }, .. .
0ca0: 0a 20 20 20 20 6c 6f 61 64 53 65 74 74 69 6e 67 . loadSetting
0cb0: 73 3a 20 66 75 6e 63 74 69 6f 6e 28 29 7b 0d 0a s: function(){..
0cc0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 73 75 this._su
0cd0: 70 65 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 per();..
0ce0: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68 .. if (th
0cf0: 69 73 2e 66 6f 72 6d 2e 63 61 74 68 53 79 6e 74 is.form.cathSynt
0d00: 61 78 43 68 65 63 6b 29 20 7b 20 0d 0a 20 20 20 axCheck) { ..
0d10: 20 20 20 20 20 20 20 20 20 2f 2f d0 9f d0 be d0 //.....
0d20: b4 d0 ba d0 bb d1 8e d1 87 d0 b0 d0 b5 d0 bc d1 ................
0d30: 81 d1 8f 20 d0 ba 20 d0 ba d0 be d0 bc d0 b0 d0 ... .. .........
0d40: bd d0 b4 d0 b5 20 d0 bf d1 80 d0 be d0 b2 d0 b5 ..... ..........
0d50: d1 80 d0 ba d0 b8 20 d1 82 d0 b5 d0 ba d1 81 d1 ...... .........
0d60: 82 d0 b0 20 0d 0a 20 20 20 20 20 20 20 20 20 20 ... ..
0d70: 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 27 logger.debug('
0d80: 6c 6f 61 64 53 65 74 74 69 6e 67 73 20 61 64 64 loadSettings add
0d90: 48 61 6e 64 6c 65 72 27 29 0d 0a 20 20 20 20 20 Handler')..
0da0: 20 20 20 20 20 20 20 20 73 74 64 63 6f 6d 6d 61 stdcomma
0db0: 6e 64 73 2e 46 72 6e 74 65 6e 64 2e 53 79 6e 74 nds.Frntend.Synt
0dc0: 61 78 43 68 65 63 6b 2e 61 64 64 48 61 6e 64 6c axCheck.addHandl
0dd0: 65 72 28 74 68 69 73 2c 20 22 6f 6e 53 79 6e 74 er(this, "onSynt
0de0: 61 78 43 68 65 63 6b 22 29 3b 0d 0a 20 20 20 20 axCheck");..
0df0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 ..
0e00: 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20 } else {..
0e10: 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 logger.d
0e20: 65 62 75 67 28 27 6c 6f 61 64 53 65 74 74 69 6e ebug('loadSettin
0e30: 67 73 20 64 65 6c 48 61 6e 64 6c 65 72 27 29 0d gs delHandler').
0e40: 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 72 79 . try
0e50: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 {..
0e60: 20 20 20 20 73 74 64 63 6f 6d 6d 61 6e 64 73 2e stdcommands.
0e70: 46 72 6e 74 65 6e 64 2e 53 79 6e 74 61 78 43 68 Frntend.SyntaxCh
0e80: 65 63 6b 2e 64 65 6c 48 61 6e 64 6c 65 72 28 74 eck.delHandler(t
0e90: 68 69 73 2c 20 22 6f 6e 53 79 6e 74 61 78 43 68 his, "onSyntaxCh
0ea0: 65 63 6b 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 eck");..
0eb0: 20 20 20 20 7d 20 63 61 74 63 68 28 65 29 20 7b } catch(e) {
0ec0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0ed0: 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 65 logger.debug(e
0ee0: 2e 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0d 0a .description);..
0ef0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 }..
0f00: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 ..
0f10: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 }..
0f20: 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 .. },....
0f30: 61 6e 61 6c 69 7a 65 4d 6f 64 75 6c 65 3a 20 66 analizeModule: f
0f40: 75 6e 63 74 69 6f 6e 28 29 7b 0d 0a 20 20 20 20 unction(){..
0f50: 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 logger.debug
0f60: 28 22 61 6e 61 6c 69 7a 65 4d 6f 64 75 6c 65 22 ("analizeModule"
0f70: 29 3b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 );.. var
0f80: 70 61 72 73 65 72 20 3d 20 73 6e 65 67 6f 70 61 parser = snegopa
0f90: 74 2e 70 61 72 73 65 53 6f 75 72 63 65 73 28 74 t.parseSources(t
0fa0: 68 69 73 2e 77 6e 64 2e 47 65 74 54 65 78 74 28 his.wnd.GetText(
0fb0: 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 66 ));.... f
0fc0: 6f 72 28 76 61 72 20 69 20 3d 20 30 2c 20 63 20 or(var i = 0, c
0fd0: 3d 20 70 61 72 73 65 72 2e 6c 65 78 65 6d 43 6f = parser.lexemCo
0fe0: 75 6e 74 3b 20 69 20 3c 20 63 3b 20 69 2b 2b 29 unt; i < c; i++)
0ff0: 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 .. {..
1000: 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 65 78 var lex
1010: 20 3d 20 70 61 72 73 65 72 2e 6c 65 78 65 6d 28 = parser.lexem(
1020: 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 i)..
1030: 69 66 28 6c 65 78 2e 74 79 70 65 3d 3d 34 30 20 if(lex.type==40
1040: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 ).. i
1050: 2b 3d 20 74 68 69 73 2e 61 6e 61 6c 69 7a 65 46 += this.analizeF
1060: 75 6e 63 74 69 6f 6e 28 70 61 72 73 65 72 2c 69 unction(parser,i
1070: 2c 6c 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 ,lex);..
1080: 20 20 20 7d 20 0d 0a 20 20 20 20 7d 2c 0d 0a 20 } .. },..
1090: 20 20 20 0d 0a 20 20 20 20 61 6e 61 6c 69 7a 65 .. analize
10a0: 46 75 6e 63 74 69 6f 6e 3a 20 66 75 6e 63 74 69 Function: functi
10b0: 6f 6e 28 70 61 72 73 65 72 2c 73 74 61 72 74 2c on(parser,start,
10c0: 73 74 61 72 74 6c 65 78 29 7b 0d 0a 0d 0a 20 20 startlex){....
10d0: 20 20 20 20 20 20 6c 69 6e 65 20 3d 20 30 3b 0d line = 0;.
10e0: 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 . name =
10f0: 70 61 72 73 65 72 2e 6c 65 78 65 6d 28 73 74 61 parser.lexem(sta
1100: 72 74 2b 31 29 2e 74 65 78 74 3b 0d 0a 20 20 20 rt+1).text;..
1110: 20 20 20 20 20 6c 61 73 74 6c 69 6e 65 20 3d 20 lastline =
1120: 73 74 61 72 74 6c 65 78 2e 6c 69 6e 65 3b 0d 0a startlex.line;..
1130: 20 20 20 20 20 20 20 20 76 61 72 20 69 2c 63 2c var i,c,
1140: 20 77 6e 64 20 3d 20 47 65 74 54 65 78 74 57 69 wnd = GetTextWi
1150: 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 ndow();..
1160: 20 66 6f 72 28 69 20 3d 20 73 74 61 72 74 2c 20 for(i = start,
1170: 63 20 3d 20 70 61 72 73 65 72 2e 6c 65 78 65 6d c = parser.lexem
1180: 43 6f 75 6e 74 3b 20 69 3c 20 63 3b 20 69 2b 2b Count; i< c; i++
1190: 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ){..
11a0: 76 61 72 20 6c 65 78 20 3d 20 70 61 72 73 65 72 var lex = parser
11b0: 2e 6c 65 78 65 6d 28 69 29 3b 0d 0a 20 20 20 20 .lexem(i);..
11c0: 20 20 20 20 20 20 20 20 76 61 72 20 6d 61 78 4c var maxL
11d0: 69 6e 65 73 20 3d 20 74 68 69 73 2e 66 6f 72 6d ines = this.form
11e0: 2e 6d 61 78 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 .maxLength;..
11f0: 20 20 20 20 20 20 20 20 20 69 66 28 6c 65 78 2e if(lex.
1200: 74 79 70 65 3d 3d 34 32 29 7b 0d 0a 20 20 20 20 type==42){..
1210: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 6c if(l
1220: 69 6e 65 20 3e 20 6d 61 78 4c 69 6e 65 73 29 20 ine > maxLines)
1230: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 {..
1240: 20 20 20 76 61 72 20 70 61 72 61 6d 20 3d 20 7b var param = {
1250: 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 };..
1260: 20 20 20 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d param['wnd']
1270: 20 3d 20 77 6e 64 3b 0d 0a 20 20 20 20 20 20 20 = wnd;..
1280: 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 5b 27 param['
1290: 6c 69 6e 65 27 5d 20 3d 20 73 74 61 72 74 6c 65 line'] = startle
12a0: 78 2e 6c 69 6e 65 3b 0d 0a 20 20 20 20 20 20 20 x.line;..
12b0: 20 20 20 20 20 20 20 20 20 6d 65 73 73 61 67 65 message
12c0: 28 22 d0 a4 d1 83 d0 bd d0 ba d1 86 d0 b8 d1 8f ("..............
12d0: 20 22 2b 6e 61 6d 65 2b 22 20 d0 b1 d0 be d0 bb "+name+" ......
12e0: d1 8c d1 88 d0 b0 d1 8f 2e 20 d0 9b d0 b8 d1 88 ......... ......
12f0: d0 bd d0 b8 d1 85 20 22 2b 28 6c 69 6e 65 20 2d ...... "+(line -
1300: 20 6d 61 78 4c 69 6e 65 73 29 2b 22 20 d1 81 d1 maxLines)+" ...
1310: 82 d1 80 d0 be d0 ba 20 22 2c 6d 45 78 63 31 2c ....... ",mExc1,
1320: 20 74 68 69 73 2e 6f 6e 43 6c 69 63 6b 5f 4d 65 this.onClick_Me
1330: 73 73 61 67 65 2c 20 70 61 72 61 6d 29 3b 0d 0a ssage, param);..
1340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1350: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 }.. b
1360: 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 reak;..
1370: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 }..
1380: 20 20 69 66 20 28 6c 65 78 2e 74 79 70 65 20 3d if (lex.type =
1390: 3d 20 31 29 20 2f 2f 20 d0 ba d0 be d0 bc d0 b5 = 1) // ........
13a0: d0 bd d1 82 d1 8b 20 d0 bd d0 b5 20 d1 81 d1 87 ...... .... ....
13b0: d0 b8 d1 82 d0 b0 d1 8e d1 82 d1 81 d1 8f 20 d0 .............. .
13c0: ba d0 be d0 b4 d0 be d0 bc 2e 0d 0a 20 20 20 20 ............
13d0: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 cont
13e0: 69 6e 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 inue;..
13f0: 20 20 20 6c 69 6e 65 2b 3d 20 28 6c 61 73 74 6c line+= (lastl
1400: 69 6e 65 3d 3d 6c 65 78 2e 6c 69 6e 65 29 20 3f ine==lex.line) ?
1410: 20 30 3a 31 3b 20 2f 2f 20 d1 81 d0 bc d0 b5 d0 0:1; // .......
1420: bd d0 b8 d1 82 d1 8c d1 81 d1 8f 20 d0 bf d0 be ........... ....
1430: d1 81 d0 bb d0 b5 20 d0 bf d1 80 d0 be d1 87 d1 ...... .........
1440: 82 d0 b5 d0 bd d0 b8 d1 8f 20 d0 bf d0 b5 d1 80 ......... ......
1450: d0 b5 d0 b2 d0 be d0 b4 d0 b0 20 d1 81 d1 82 d1 .......... .....
1460: 80 d0 be d0 ba d0 b8 2e 20 d0 b0 20 d1 8d d1 82 ........ .. ....
1470: d0 be 20 d0 bc d0 be d0 b6 d0 b5 d1 82 20 d1 82 .. .......... ..
1480: d0 be d0 bb d1 8c d0 ba d0 be 20 d0 bf d1 80 d0 .......... .....
1490: b8 20 d1 87 d0 b5 d1 81 d1 82 d0 bd d0 be d0 bc . ..............
14a0: 20 d0 bf d0 b5 d1 80 d0 b5 d0 b2 d0 be d0 b4 d0 ...............
14b0: b5 20 d0 b8 d0 bb d0 b8 20 d0 b5 d1 81 d0 bb d0 . ...... .......
14c0: b8 20 d0 bf d1 80 d0 be d1 87 d0 bb d0 b8 20 d0 . ............ .
14d0: bc d0 bd d0 be d0 b3 d0 be d1 81 d1 82 d1 80 d0 ................
14e0: be d1 87 d0 bd d1 83 d1 8e 20 d1 81 d1 82 d1 80 ......... ......
14f0: d0 be d0 ba d1 83 0d 0a 20 20 20 20 20 20 20 20 ........
1500: 20 20 20 20 6c 61 73 74 6c 69 6e 65 20 3d 6c 65 lastline =le
1510: 78 2e 6c 69 6e 65 3b 0d 0a 20 20 20 20 20 20 20 x.line;..
1520: 20 7d 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 }.. retu
1530: 72 6e 20 28 69 20 2d 20 73 74 61 72 74 29 3b 0d rn (i - start);.
1540: 0a 20 20 20 20 7d 2c 20 0d 0a 0d 0a 20 20 20 20 . }, ....
1550: 6f 6e 43 6c 69 63 6b 5f 4d 65 73 73 61 67 65 3a onClick_Message:
1560: 20 66 75 6e 63 74 69 6f 6e 28 70 61 72 61 6d 29 function(param)
1570: 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 66 20 {.... if
1580: 28 21 70 61 72 61 6d 5b 27 77 6e 64 27 5d 29 20 (!param['wnd'])
1590: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 {.. r
15a0: 65 74 75 72 6e 20 0d 0a 20 20 20 20 20 20 20 20 eturn ..
15b0: 7d 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 }.. if (!
15c0: 70 61 72 61 6d 5b 27 77 6e 64 27 5d 2e 49 73 41 param['wnd'].IsA
15d0: 63 74 69 76 65 28 29 29 20 7b 0d 0a 20 20 20 20 ctive()) {..
15e0: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 0d return .
15f0: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 . }..
1600: 20 20 20 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d param['wnd']
1610: 2e 53 65 74 43 61 72 65 74 50 6f 73 28 70 61 72 .SetCaretPos(par
1620: 61 6d 5b 27 6c 69 6e 65 27 5d 2b 31 2c 20 31 29 am['line']+1, 1)
1630: 3b 0d 0a 20 20 20 20 20 20 20 20 76 69 65 77 20 ;.. view
1640: 3d 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d 2e 47 = param['wnd'].G
1650: 65 74 56 69 65 77 28 29 3b 0d 0a 20 20 20 20 20 etView();..
1660: 20 20 20 69 66 20 28 21 76 69 65 77 29 7b 0d 0a if (!view){..
1670: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 ..
1680: 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a } else {..
1690: 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f 67 67 logg
16a0: 65 72 2e 64 65 62 75 67 28 27 76 69 65 77 20 61 er.debug('view a
16b0: 63 74 69 76 61 74 65 20 27 29 3b 0d 0a 20 20 20 ctivate ');..
16c0: 20 20 20 20 20 20 20 20 20 76 69 65 77 2e 61 63 view.ac
16d0: 74 69 76 61 74 65 28 29 3b 0d 0a 20 20 20 20 20 tivate();..
16e0: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a }.. ..
16f0: 20 20 20 20 20 20 20 20 70 61 72 61 6d 20 3d 20 param =
1700: 6e 75 6c 6c 0d 0a 0d 0a 20 20 20 20 7d 2c 0d 0a null.... },..
1710: 0d 0a 20 20 20 20 6f 6e 53 79 6e 74 61 78 43 68 .. onSyntaxCh
1720: 65 63 6b 3a 20 66 75 6e 63 74 69 6f 6e 20 28 63 eck: function (c
1730: 6d 64 29 7b 0d 0a 20 20 20 20 20 20 20 20 6c 6f md){.. lo
1740: 67 67 65 72 2e 64 65 62 75 67 28 27 6f 6e 53 79 gger.debug('onSy
1750: 6e 74 61 78 43 68 65 63 6b 20 27 29 0d 0a 20 20 ntaxCheck ')..
1760: 20 20 20 20 20 20 69 66 20 28 63 6d 64 2e 69 73 if (cmd.is
1770: 42 65 66 6f 72 65 29 7b 0d 0a 20 20 20 20 20 20 Before){..
1780: 20 20 20 20 20 20 74 68 69 73 2e 77 6e 64 20 3d this.wnd =
1790: 20 6e 65 77 20 54 65 78 74 57 69 6e 64 6f 77 28 new TextWindow(
17a0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 );.. }..
17b0: 20 20 20 20 20 20 20 69 66 28 21 63 6d 64 2e 69 if(!cmd.i
17c0: 73 42 65 66 6f 72 65 29 0d 0a 20 20 20 20 20 20 sBefore)..
17d0: 20 20 7b 20 0d 0a 20 20 20 20 20 20 20 20 20 20 { ..
17e0: 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 27 logger.debug('
17f0: 6f 6e 53 79 6e 74 61 78 43 68 65 63 6b 20 64 69 onSyntaxCheck di
1800: 73 63 6f 6e 6e 65 63 74 27 29 0d 0a 20 20 20 20 sconnect')..
1810: 20 20 20 20 20 20 20 20 74 72 79 20 7b 0d 0a 20 try {..
1820: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1830: 20 20 20 65 76 65 6e 74 73 2e 64 69 73 63 6f 6e events.discon
1840: 6e 65 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22 nect(Designer, "
1850: 6f 6e 4d 65 73 73 61 67 65 22 2c 20 74 68 69 73 onMessage", this
1860: 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 );....
1870: 20 20 20 20 20 20 20 7d 20 63 61 74 63 68 20 28 } catch (
1880: 65 29 20 7b 20 7d 0d 0a 20 20 20 20 20 20 20 20 e) { }..
1890: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 ..
18a0: 20 20 20 20 20 20 20 68 61 73 45 72 72 6f 72 73 hasErrors
18b0: 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 = false;..
18c0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 ..
18d0: 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 6b 20 for (var k
18e0: 69 6e 20 74 68 69 73 2e 65 72 72 6f 72 73 29 7b in this.errors){
18f0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
1900: 20 20 68 61 73 45 72 72 6f 72 73 20 3d 20 74 72 hasErrors = tr
1910: 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ue;..
1920: 20 20 20 20 20 74 65 78 74 20 3d 20 74 68 69 73 text = this
1930: 2e 65 72 72 6f 72 73 5b 6b 5d 3b 0d 0a 20 20 20 .errors[k];..
1940: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 var
1950: 20 4d 61 74 63 68 65 73 20 3d 20 74 68 69 73 2e Matches = this.
1960: 72 65 5f 63 6f 6c 75 6d 6e 2e 65 78 65 63 28 74 re_column.exec(t
1970: 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 ext);..
1980: 20 20 20 20 20 20 20 69 66 20 28 4d 61 74 63 68 if (Match
1990: 65 73 20 21 3d 20 6e 75 6c 6c 29 7b 0d 0a 20 20 es != null){..
19a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
19b0: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..
19c0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 ..
19d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 va
19e0: 72 20 70 61 72 61 6d 20 3d 20 7b 7d 0d 0a 20 20 r param = {}..
19f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a00: 20 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d 20 3d param['wnd'] =
1a10: 20 74 68 69 73 2e 77 6e 64 3b 0d 0a 20 20 20 20 this.wnd;..
1a20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a30: 70 61 72 61 6d 5b 27 6c 69 6e 65 27 5d 20 3d 20 param['line'] =
1a40: 4d 61 74 63 68 65 73 5b 31 5d 3b 0d 0a 20 20 20 Matches[1];..
1a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a60: 20 70 61 72 61 6d 5b 27 63 6f 6c 75 6d 6e 27 5d param['column']
1a70: 20 3d 20 4d 61 74 63 68 65 73 5b 32 5d 3b 0d 0a = Matches[2];..
1a80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1a90: 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 logger.debug
1aa0: 28 27 6f 6e 53 79 6e 74 61 78 43 68 65 63 6b 20 ('onSyntaxCheck
1ab0: d0 b2 d1 8b d0 b2 d0 be d0 b4 20 d1 81 d0 be d0 .......... .....
1ac0: be d0 b1 d1 89 d0 b5 d0 bd d0 b8 d1 8f 20 d0 bf ............. ..
1ad0: d0 be 20 d1 80 d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 .. .............
1ae0: 80 d0 bd d0 be d0 bc d1 83 20 d0 b2 d1 8b d1 80 ......... ......
1af0: d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8e 2e 27 29 3b .............');
1b00: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
1b10: 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 74 65 Message(te
1b20: 78 74 2c 20 6d 45 78 63 33 2c 20 28 66 75 6e 63 xt, mExc3, (func
1b30: 74 69 6f 6e 28 70 61 72 61 6d 29 7b 0d 0a 20 20 tion(param){..
1b40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1b50: 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 65 62 logger.deb
1b60: 75 67 28 27 6f 6e 20 4d 65 73 73 61 67 65 20 d0 ug('on Message .
1b70: 9e d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d1 87 d0 ................
1b80: b8 d0 ba 20 d1 81 d0 be d0 b1 d1 8b d1 82 d0 b8 ... ............
1b90: d0 b9 2e 27 29 3b 0d 0a 20 20 20 20 20 20 20 20 ...');..
1ba0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1bb0: 69 66 20 28 21 70 61 72 61 6d 5b 27 77 6e 64 27 if (!param['wnd'
1bc0: 5d 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 ]) {..
1bd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1be0: 20 20 72 65 74 75 72 6e 20 0d 0a 20 20 20 20 20 return ..
1bf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c00: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 }..
1c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 if
1c20: 20 28 21 70 61 72 61 6d 5b 27 77 6e 64 27 5d 2e (!param['wnd'].
1c30: 49 73 41 63 74 69 76 65 28 29 29 20 7b 0d 0a 20 IsActive()) {..
1c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c50: 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 retur
1c60: 6e 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 n ..
1c70: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 }..
1c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1c90: 20 20 20 20 20 20 20 70 61 72 61 6d 5b 27 77 6e param['wn
1ca0: 64 27 5d 2e 53 65 74 43 61 72 65 74 50 6f 73 28 d'].SetCaretPos(
1cb0: 70 61 72 61 6d 5b 27 6c 69 6e 65 27 5d 2c 20 70 param['line'], p
1cc0: 61 72 61 6d 5b 27 63 6f 6c 75 6d 6e 27 5d 29 3b aram['column']);
1cd0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
1ce0: 20 20 20 20 20 20 20 20 20 20 76 69 65 77 20 3d view =
1cf0: 20 70 61 72 61 6d 5b 27 77 6e 64 27 5d 2e 47 65 param['wnd'].Ge
1d00: 74 56 69 65 77 28 29 3b 0d 0a 20 20 20 20 20 20 tView();..
1d10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d20: 20 20 69 66 20 28 21 76 69 65 77 29 7b 0d 0a 20 if (!view){..
1d30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d40: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 ..
1d50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d60: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 } else {..
1d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1d80: 20 20 20 20 20 20 20 20 20 20 20 6c 6f 67 67 65 logge
1d90: 72 2e 64 65 62 75 67 28 27 76 69 65 77 20 61 63 r.debug('view ac
1da0: 74 69 76 61 74 65 20 27 29 3b 0d 0a 20 20 20 20 tivate ');..
1db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1dc0: 20 20 20 20 20 20 20 20 76 69 65 77 2e 61 63 74 view.act
1dd0: 69 76 61 74 65 28 29 3b 0d 0a 20 20 20 20 20 20 ivate();..
1de0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1df0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 }..
1e00: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 ..
1e10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e20: 20 20 20 20 20 20 20 70 61 72 61 6d 20 3d 20 6e param = n
1e30: 75 6c 6c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ull..
1e40: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 ..
1e50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1e60: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 29 2c .. }),
1e70: 20 70 61 72 61 6d 29 3b 0d 0a 20 20 20 20 20 20 param);..
1e80: 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 } else
1e90: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 {..
1ea0: 20 20 20 20 20 20 20 20 6c 6f 67 67 65 72 2e 64 logger.d
1eb0: 65 62 75 67 28 27 6f 6e 53 79 6e 74 61 78 43 68 ebug('onSyntaxCh
1ec0: 65 63 6b 20 d0 b2 d1 8b d0 b2 d0 be d0 b4 20 d1 eck .......... .
1ed0: 81 d0 be d0 be d0 b1 d1 89 d0 b5 d0 bd d0 b8 d1 ................
1ee0: 8f 20 2d 20 d0 bd d0 b5 20 d1 81 d0 bc d0 be d0 . - .... .......
1ef0: b3 d0 bb d0 b8 20 d0 be d0 bf d1 80 d0 b5 d0 b4 ..... ..........
1f00: d0 b5 d0 bb d0 b8 d1 82 d1 8c 2e 27 29 3b 0d 0a ...........');..
1f10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1f20: 20 20 20 20 4d 65 73 73 61 67 65 28 27 27 2b 74 Message(''+t
1f30: 65 78 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 ext);..
1f40: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }..
1f50: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 }..
1f60: 20 20 20 20 20 74 68 69 73 2e 65 72 72 6f 72 73 this.errors
1f70: 20 3d 20 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 20 = {};..
1f80: 20 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f 72 if (this.for
1f90: 6d 2e 63 68 65 63 6b 4c 65 6e 67 74 68 46 75 6e m.checkLengthFun
1fa0: 63 74 69 6f 6e 29 7b 0d 0a 20 20 20 20 20 20 20 ction){..
1fb0: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 61 6e this.an
1fc0: 61 6c 69 7a 65 4d 6f 64 75 6c 65 28 29 3b 0d 0a alizeModule();..
1fd0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 }..
1fe0: 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d } else {.
1ff0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f 67 . log
2000: 67 65 72 2e 64 65 62 75 67 28 27 6f 6e 53 79 6e ger.debug('onSyn
2010: 74 61 78 43 68 65 63 6b 20 63 6f 6e 6e 65 63 74 taxCheck connect
2020: 27 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ')..
2030: 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 44 events.connect(D
2040: 65 73 69 67 6e 65 72 2c 20 22 6f 6e 4d 65 73 73 esigner, "onMess
2050: 61 67 65 22 2c 20 74 68 69 73 29 3b 0d 0a 20 20 age", this);..
2060: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 }..
2070: 20 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 27 6f logger.debug('o
2080: 6e 53 79 6e 74 61 78 43 68 65 63 6b 20 65 6e 64 nSyntaxCheck end
2090: 27 29 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 ').. },..
20a0: 0d 0a 20 20 20 20 6f 6e 4d 65 73 73 61 67 65 3a .. onMessage:
20b0: 66 75 6e 63 74 69 6f 6e 28 70 61 72 61 6d 29 7b function(param){
20c0: 0d 0a 20 20 20 20 20 20 20 20 74 65 78 74 20 3d .. text =
20d0: 20 70 61 72 61 6d 2e 74 65 78 74 3b 0d 0a 20 20 param.text;..
20e0: 20 20 20 20 20 20 69 66 20 28 21 74 65 78 74 2e if (!text.
20f0: 6c 65 6e 67 74 68 29 0d 0a 20 20 20 20 20 20 20 length)..
2100: 20 20 20 20 20 72 65 74 75 72 6e 0d 0a 20 20 20 return..
2110: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 .. t
2120: 68 69 73 2e 52 45 20 3d 20 6e 65 77 20 52 65 67 his.RE = new Reg
2130: 45 78 70 28 22 5e 28 5c 5c 7b 2e 7b 31 2c 7d 5c Exp("^(\\{.{1,}\
2140: 5c 7d 5c 3a 2e 7b 31 2c 7d 5c 29 24 22 2c 20 22 \}\:.{1,}\)$", "
2150: 6d 69 67 22 29 3b 20 0d 0a 20 20 20 20 20 20 20 mig"); ..
2160: 20 69 66 20 28 28 4d 61 74 63 68 65 73 20 3d 20 if ((Matches =
2170: 74 68 69 73 2e 52 45 2e 65 78 65 63 28 74 65 78 this.RE.exec(tex
2180: 74 29 29 20 21 3d 20 6e 75 6c 6c 29 7b 0d 0a 20 t)) != null){..
2190: 20 20 20 20 20 20 20 20 20 20 20 70 61 72 61 6d param
21a0: 2e 63 61 6e 63 65 6c 20 3d 20 74 72 75 65 3b 0d .cancel = true;.
21b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 . str
21c0: 20 3d 20 4d 61 74 63 68 65 73 5b 31 5d 3b 0d 0a = Matches[1];..
21d0: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 if (
21e0: 21 74 68 69 73 2e 65 72 72 6f 72 73 5b 73 74 72 !this.errors[str
21f0: 5d 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ]){..
2200: 20 20 20 20 20 74 68 69 73 2e 65 72 72 6f 72 73 this.errors
2210: 5b 73 74 72 5d 20 3d 20 74 65 78 74 3b 0d 0a 20 [str] = text;..
2220: 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 } els
2230: 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 e {..
2240: 20 20 20 20 20 74 68 69 73 2e 52 45 5f 45 52 52 this.RE_ERR
2250: 4f 52 5f 54 45 58 54 20 3d 20 6e 65 77 20 52 65 OR_TEXT = new Re
2260: 67 45 78 70 28 22 5c 5c 73 5c 5c 28 28 d0 9f d1 gExp("\\s\\((...
2270: 80 d0 be d0 b2 d0 b5 d1 80 d0 ba d0 b0 5c 5c 3a .............\\:
2280: 5c 5c 73 2e 7b 31 2c 7d 29 5c 5c 29 24 22 2c 20 \\s.{1,})\\)$",
2290: 22 67 69 6d 22 29 3b 0d 0a 20 20 20 20 20 20 20 "gim");..
22a0: 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 2e 63 param.c
22b0: 61 6e 63 65 6c 20 3d 20 74 72 75 65 3b 0d 0a 20 ancel = true;..
22c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 i
22d0: 66 20 28 28 4d 61 74 63 68 65 73 5f 65 72 72 6f f ((Matches_erro
22e0: 72 20 3d 20 74 68 69 73 2e 52 45 5f 45 52 52 4f r = this.RE_ERRO
22f0: 52 5f 54 45 58 54 2e 65 78 65 63 28 74 65 78 74 R_TEXT.exec(text
2300: 29 29 20 21 3d 20 6e 75 6c 6c 29 7b 0d 0a 20 20 )) != null){..
2310: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
2320: 20 20 73 74 72 5f 65 72 72 6f 72 20 3d 20 4d 61 str_error = Ma
2330: 74 63 68 65 73 5f 65 72 72 6f 72 5b 30 5d 3b 0d tches_error[0];.
2340: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
2350: 20 20 20 20 20 74 68 69 73 2e 65 72 72 6f 72 73 this.errors
2360: 5b 73 74 72 5d 20 3d 20 74 68 69 73 2e 65 72 72 [str] = this.err
2370: 6f 72 73 5b 73 74 72 5d 2b 27 20 27 2b 73 74 72 ors[str]+' '+str
2380: 5f 65 72 72 6f 72 3b 0d 0a 20 20 20 20 20 20 20 _error;..
2390: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 }..
23a0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 }..
23b0: 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 }.. },..
23c0: 20 20 0d 0a 20 20 20 20 4f 6b 5f 43 6c 69 63 6b .. Ok_Click
23d0: 3a 66 75 6e 63 74 69 6f 6e 28 42 75 74 74 6f 6e :function(Button
23e0: 29 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 ){.. this
23f0: 2e 73 61 76 65 53 65 74 74 69 6e 67 73 28 29 3b .saveSettings();
2400: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 6c .. this.l
2410: 6f 61 64 53 65 74 74 69 6e 67 73 28 29 3b 0d 0a oadSettings();..
2420: 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 this.for
2430: 6d 2e 43 6c 6f 73 65 28 29 3b 0d 0a 20 20 20 20 m.Close();..
2440: 7d 2c 20 0d 0a 0d 0a 20 20 20 20 43 6c 6f 73 65 }, .... Close
2450: 5f 43 6c 69 63 6b 3a 66 75 6e 63 74 69 6f 6e 28 _Click:function(
2460: 42 75 74 74 6f 6e 29 7b 0d 0a 20 20 20 20 20 20 Button){..
2470: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6c 6f 73 this.form.Clos
2480: 65 28 29 3b 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 7d e();.. }....}
2490: 29 0d 0a 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 )......function
24a0: 47 65 74 45 78 74 53 79 6e 74 61 78 43 68 65 63 GetExtSyntaxChec
24b0: 6b 28 29 20 7b 0d 0a 20 20 20 20 69 66 20 28 21 k() {.. if (!
24c0: 45 78 74 53 79 6e 74 61 78 43 68 65 63 6b 2e 5f ExtSyntaxCheck._
24d0: 69 6e 73 74 61 6e 63 65 29 0d 0a 20 20 20 20 20 instance)..
24e0: 20 20 20 6e 65 77 20 45 78 74 53 79 6e 74 61 78 new ExtSyntax
24f0: 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 0d 0a Check();.. ..
2500: 20 20 20 20 72 65 74 75 72 6e 20 45 78 74 53 79 return ExtSy
2510: 6e 74 61 78 43 68 65 63 6b 2e 5f 69 6e 73 74 61 ntaxCheck._insta
2520: 6e 63 65 3b 0d 0a 7d 0d 0a 0d 0a 47 65 74 45 78 nce;..}....GetEx
2530: 74 53 79 6e 74 61 78 43 68 65 63 6b 28 29 3b tSyntaxCheck();