Hex Artifact Content Вы: nobody
Вход

Artifact c4f2387e90657d3b035ed838c22bdc2a04cd6623:


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();