Hex Artifact Content Вы: nobody
Вход

Artifact 2d06ac6e06c8428c0e067c934cc18e478a402368:


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 45 78 74 65 6e  pt..$uname Exten
0020: 64 65 64 53 65 61 72 63 68 0d 0a 24 64 6e 61 6d  dedSearch..$dnam
0030: 65 20 d0 a0 d0 b0 d1 81 d1 88 d0 b8 d1 80 d0 b5  e ..............
0040: d0 bd d0 bd d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1  ........ .......
0050: 81 d0 ba 0d 0a 24 61 64 64 69 6e 20 67 6c 6f 62  .....$addin glob
0060: 61 6c 0d 0a 24 61 64 64 69 6e 20 73 74 64 63 6f  al..$addin stdco
0070: 6d 6d 61 6e 64 73 0d 0a 24 61 64 64 69 6e 20 73  mmands..$addin s
0080: 74 64 6c 69 62 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f  tdlib....///////
0090: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00e0: 2f 0d 0a 2f 2f 2f 2f 7b 20 43 d0 ba d1 80 d0 b8  /..////{ C......
00f0: d0 bf d1 82 20 22 d0 a0 d0 b0 d1 81 d1 88 d0 b8  .... "..........
0100: d1 80 d0 b5 d0 bd d0 bd d1 8b d0 b9 20 d0 bf d0  ............ ...
0110: be d0 b8 d1 81 d0 ba 22 20 28 65 78 74 53 65 61  ......." (extSea
0120: 72 63 68 2e 6a 73 29 20 d0 b4 d0 bb d1 8f 20 d0  rch.js) ...... .
0130: bf d1 80 d0 be d0 b5 d0 ba d1 82 d0 b0 20 22 d0  ............. ".
0140: a1 d0 bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1 82 22  ..............."
0150: 0d 0a 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 20 d0 9e d0  ..////..//// ...
0160: bf d0 b8 d1 81 d0 b0 d0 bd d0 b8 d0 b5 3a 20 d0  .............: .
0170: a0 d0 b5 d0 b0 d0 bb d0 b8 d0 b7 d1 83 d0 b5 d1  ................
0180: 82 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20 d1 82 d0  . .......... ...
0190: b5 d0 ba d1 81 d1 82 d0 b0 20 d0 bf d1 80 d0 b8  ......... ......
01a0: 20 d0 bf d0 be d0 bc d0 be d1 89 d0 b8 20 d1 80   ............ ..
01b0: d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b  ................
01c0: d1 85 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0  .. .............
01d0: bd d0 b8 d0 b9 20 d0 b2 20 d0 b0 d0 ba d1 82 d0  ..... .. .......
01e0: b8 d0 b2 d0 bd d0 be d0 bc 20 d0 be d0 ba d0 bd  ......... ......
01f0: d0 b5 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 d0  .. .............
0200: be d1 80 d0 b0 2e 0d 0a 2f 2f 2f 2f 20 d0 90 d0  ........//// ...
0210: b2 d1 82 d0 be d1 80 3a 20 d0 90 d0 bb d0 b5 d0  .......: .......
0220: ba d1 81 d0 b0 d0 bd d0 b4 d1 80 20 d0 9a d1 83  ........... ....
0230: d0 bd d1 82 d0 b0 d1 88 d0 be d0 b2 20 3c 6b 75  ............ <ku
0240: 6e 74 61 73 68 6f 76 40 67 6d 61 69 6c 2e 63 6f  ntashov@gmail.co
0250: 6d 3e 2c 20 68 74 74 70 3a 2f 2f 63 6f 6d 70 61  m>, http://compa
0260: 75 64 2e 72 75 2f 62 6c 6f 67 0d 0a 2f 2f 2f 2f  ud.ru/blog..////
0270: 7d 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  }../////////////
0280: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0290: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
02a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
02b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
02c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 0d 0a 73  ///////////....s
02d0: 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28 27 54  tdlib.require('T
02e0: 65 78 74 57 69 6e 64 6f 77 2e 6a 73 27 2c 20 53  extWindow.js', S
02f0: 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 73 74 64  elfScript);..std
0300: 6c 69 62 2e 72 65 71 75 69 72 65 28 27 53 63 72  lib.require('Scr
0310: 69 70 74 46 6f 72 6d 2e 6a 73 27 2c 20 53 65 6c  iptForm.js', Sel
0320: 66 53 63 72 69 70 74 29 3b 0d 0a 67 6c 6f 62 61  fScript);..globa
0330: 6c 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62 61 6c 73  l.connectGlobals
0340: 28 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 0d  (SelfScript);...
0350: 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  .///////////////
0360: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0370: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0380: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0390: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
03a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b  /////////..////{
03b0: 20 d0 9c d0 b0 d0 ba d1 80 d0 be d1 81 d1 8b 0d   ...............
03c0: 0a 2f 2f 2f 2f 0d 0a 0d 0a 53 65 6c 66 53 63 72  .////....SelfScr
03d0: 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73  ipt.self['macros
03e0: d0 9d d0 b0 d0 b9 d1 82 d0 b8 20 d1 82 d0 b5 d0  .......... .....
03f0: ba d1 81 d1 82 27 5d 20 3d 20 66 75 6e 63 74 69  .....'] = functi
0400: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 0d 0a 20 20  on() {..    ..  
0410: 20 20 76 61 72 20 77 20 3d 20 47 65 74 54 65 78    var w = GetTex
0420: 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20  tWindow();..    
0430: 69 66 20 28 21 77 29 20 72 65 74 75 72 6e 20 66  if (!w) return f
0440: 61 6c 73 65 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  alse;..    ..   
0450: 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78 74   var es = GetExt
0460: 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 20  Search();..     
0470: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 73 65 6c     ..    var sel
0480: 54 65 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65  Text = w.GetSele
0490: 63 74 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20  ctedText();..   
04a0: 20 69 66 20 28 73 65 6c 54 65 78 74 20 3d 3d 20   if (selText == 
04b0: 27 27 29 0d 0a 20 20 20 20 20 20 20 20 73 65 6c  '')..        sel
04c0: 54 65 78 74 20 3d 20 77 2e 47 65 74 57 6f 72 64  Text = w.GetWord
04d0: 55 6e 64 65 72 43 75 72 73 6f 72 28 29 3b 0d 0a  UnderCursor();..
04e0: 20 20 20 20 0d 0a 20 20 20 20 65 73 2e 73 65 74      ..    es.set
04f0: 53 69 6d 70 6c 65 51 75 65 72 79 28 73 65 6c 54  SimpleQuery(selT
0500: 65 78 74 29 3b 20 20 20 20 0d 0a 20 20 20 20 65  ext);    ..    e
0510: 73 2e 73 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20  s.show();..     
0520: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 73 65 6c     ..    if (sel
0530: 54 65 78 74 20 3d 3d 20 27 27 29 0d 0a 20 20 20  Text == '')..   
0540: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 63   {..        es.c
0550: 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74  learSearchResult
0560: 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 65 73  s();..        es
0570: 2e 73 65 74 44 65 66 61 75 6c 74 53 65 61 72 63  .setDefaultSearc
0580: 68 51 75 65 72 79 28 29 3b 0d 0a 20 20 20 20 7d  hQuery();..    }
0590: 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20  ..    else..    
05a0: 20 20 20 20 65 73 2e 73 65 61 72 63 68 41 63 74      es.searchAct
05b0: 69 76 65 44 6f 63 28 74 72 75 65 29 3b 0d 0a 20  iveDoc(true);.. 
05c0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 72 65 74         ..    ret
05d0: 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d 0a  urn true;..}....
05e0: 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b  SelfScript.self[
05f0: 27 6d 61 63 72 6f 73 d0 9d d0 b0 d0 b9 d1 82 d0  'macros.........
0600: b8 20 d0 b2 d0 be 20 d0 b2 d1 81 d0 b5 d1 85 20  . .... ........ 
0610: d0 be d1 82 d0 ba d1 80 d1 8b d1 82 d1 8b d1 85  ................
0620: 20 d0 b4 d0 be d0 ba d1 83 d0 bc d0 b5 d0 bd d1   ...............
0630: 82 d0 b0 d1 85 27 5d 20 3d 20 66 75 6e 63 74 69  .....'] = functi
0640: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 0d 0a 20 20  on() {..    ..  
0650: 20 20 76 61 72 20 77 20 3d 20 47 65 74 54 65 78    var w = GetTex
0660: 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20  tWindow();..    
0670: 69 66 20 28 21 77 29 20 72 65 74 75 72 6e 20 66  if (!w) return f
0680: 61 6c 73 65 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  alse;..    ..   
0690: 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78 74   var es = GetExt
06a0: 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 20  Search();..     
06b0: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 73 65 6c     ..    var sel
06c0: 54 65 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65  Text = w.GetSele
06d0: 63 74 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20  ctedText();..   
06e0: 20 69 66 20 28 73 65 6c 54 65 78 74 20 3d 3d 20   if (selText == 
06f0: 27 27 29 0d 0a 20 20 20 20 20 20 20 20 73 65 6c  '')..        sel
0700: 54 65 78 74 20 3d 20 77 2e 47 65 74 57 6f 72 64  Text = w.GetWord
0710: 55 6e 64 65 72 43 75 72 73 6f 72 28 29 3b 0d 0a  UnderCursor();..
0720: 20 20 20 20 0d 0a 20 20 20 20 65 73 2e 73 65 74      ..    es.set
0730: 53 69 6d 70 6c 65 51 75 65 72 79 28 73 65 6c 54  SimpleQuery(selT
0740: 65 78 74 29 3b 20 20 20 20 0d 0a 20 20 20 20 65  ext);    ..    e
0750: 73 2e 73 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20  s.show();..     
0760: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 73 65 6c     ..    if (sel
0770: 54 65 78 74 20 3d 3d 20 27 27 29 0d 0a 20 20 20  Text == '')..   
0780: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 63   {..        es.c
0790: 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74  learSearchResult
07a0: 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 65 73  s();..        es
07b0: 2e 73 65 74 44 65 66 61 75 6c 74 53 65 61 72 63  .setDefaultSearc
07c0: 68 51 75 65 72 79 28 29 3b 0d 0a 20 20 20 20 7d  hQuery();..    }
07d0: 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20  ..    else..    
07e0: 20 20 20 20 65 73 2e 73 65 61 72 63 68 4f 70 65      es.searchOpe
07f0: 6e 65 64 57 69 6e 64 6f 77 73 28 74 72 75 65 29  nedWindows(true)
0800: 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ;..        ..   
0810: 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d   return true;..}
0820: 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73  ....SelfScript.s
0830: 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 93 d0 bb d0  elf['macros.....
0840: be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b9 20  ............... 
0850: d0 bf d0 be d0 b8 d1 81 d0 ba 27 5d 20 3d 20 66  ..........'] = f
0860: 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20  unction() {..   
0870: 20 0d 0a 20 20 20 20 76 61 72 20 77 20 3d 20 47   ..    var w = G
0880: 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d  etTextWindow();.
0890: 0a 20 20 20 20 69 66 20 28 21 77 29 20 72 65 74  .    if (!w) ret
08a0: 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20  urn false;..    
08b0: 0d 0a 20 20 20 20 76 61 72 20 65 73 20 3d 20 47  ..    var es = G
08c0: 65 74 45 78 74 53 65 61 72 63 68 47 6c 6f 62 61  etExtSearchGloba
08d0: 6c 28 29 3b 0d 0a 0d 0a 20 20 20 20 76 61 72 20  l();....    var 
08e0: 73 65 6c 54 65 78 74 20 3d 20 77 2e 47 65 74 53  selText = w.GetS
08f0: 65 6c 65 63 74 65 64 54 65 78 74 28 29 3b 0d 0a  electedText();..
0900: 20 20 20 20 69 66 20 28 73 65 6c 54 65 78 74 20      if (selText 
0910: 3d 3d 20 27 27 29 0d 0a 20 20 20 20 20 20 20 20  == '')..        
0920: 73 65 6c 54 65 78 74 20 3d 20 77 2e 47 65 74 57  selText = w.GetW
0930: 6f 72 64 55 6e 64 65 72 43 75 72 73 6f 72 28 29  ordUnderCursor()
0940: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 65 73 2e  ;..    ..    es.
0950: 69 73 47 6c 6f 62 61 6c 46 69 6e 64 20 3d 20 74  isGlobalFind = t
0960: 72 75 65 3b 0d 0a 20 20 20 20 65 73 2e 69 73 49  rue;..    es.isI
0970: 6e 43 75 72 72 65 6e 74 4d 64 43 6f 6e 74 65 69  nCurrentMdContei
0980: 6e 65 72 46 69 6e 64 20 3d 20 66 61 6c 73 65 3b  nerFind = false;
0990: 0d 0a 20 20 20 20 65 73 2e 73 65 74 53 69 6d 70  ..    es.setSimp
09a0: 6c 65 51 75 65 72 79 28 73 65 6c 54 65 78 74 29  leQuery(selText)
09b0: 3b 20 20 20 20 0d 0a 20 20 20 20 65 73 2e 73 68  ;    ..    es.sh
09c0: 6f 77 28 29 3b 0d 0a 0d 0a 20 20 20 20 69 66 20  ow();....    if 
09d0: 28 73 65 6c 54 65 78 74 20 3d 3d 20 27 27 29 0d  (selText == '').
09e0: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20  .    {..        
09f0: 65 73 2e 63 6c 65 61 72 53 65 61 72 63 68 52 65  es.clearSearchRe
0a00: 73 75 6c 74 73 28 29 3b 0d 0a 20 20 20 20 20 20  sults();..      
0a10: 20 20 65 73 2e 73 65 74 44 65 66 61 75 6c 74 53    es.setDefaultS
0a20: 65 61 72 63 68 51 75 65 72 79 28 29 3b 0d 0a 20  earchQuery();.. 
0a30: 20 20 20 7d 0d 0a 20 20 20 20 65 6c 73 65 0d 0a     }..    else..
0a40: 20 20 20 20 20 20 20 20 65 73 2e 73 65 61 72 63          es.searc
0a50: 68 49 6e 4d 65 74 61 64 61 74 61 28 74 72 75 65  hInMetadata(true
0a60: 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  );..        ..  
0a70: 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a    return true;..
0a80: 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e  }....SelfScript.
0a90: 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 93 d0 bb  self['macros....
0aa0: d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b9  ................
0ab0: 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20 d0 bf d0 be   .......... ....
0ac0: 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b5 d0 bc d1   ...............
0ad0: 83 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 b9 d0 bd  . ..............
0ae0: d0 b5 d1 80 d1 83 27 5d 20 3d 20 66 75 6e 63 74  ......'] = funct
0af0: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 2f 2f d0  ion() {..    //.
0b00: a2 d0 b5 d0 ba d1 83 d1 89 d0 b8 d0 b9 20 d0 ba  ............. ..
0b10: d0 be d0 bd d1 82 d0 b5 d0 b9 d0 bd d0 b5 d1 80  ................
0b20: 20 d0 bc d0 b5 d1 82 d0 b0 d0 b4 d0 b0 d0 bd d0   ...............
0b30: bd d1 8b d1 85 20 d0 be d0 bf d1 80 d0 b5 d0 b4  ..... ..........
0b40: d0 b5 d0 bb d1 8f d0 b5 d0 bc 20 d0 bf d0 be 20  .......... .... 
0b50: d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 bd d0 be d0 bc  ................
0b60: d1 83 20 d0 be d0 ba d0 bd d1 83 2e 20 0d 0a 20  .. ......... .. 
0b70: 20 20 20 2f 2f d0 b1 d1 83 d0 b4 d0 b5 d1 82 20     //.......... 
0b80: d0 be d1 82 d0 ba d1 80 d1 8b d1 82 d0 b0 20 d0  .............. .
0b90: b2 d0 bd d0 b5 d1 88 d0 bd d1 8f d1 8f 20 d0 be  ............. ..
0ba0: d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0 b0  ................
0bb0: 2c 20 d0 b7 d0 b0 d0 bd d1 87 d0 b8 d1 82 20 d0  , ............ .
0bc0: b8 d1 89 d0 b5 d0 bc 20 d0 b3 d0 bb d0 be d0 b1  ....... ........
0bd0: d0 b0 d0 bb d1 8c d0 bd d0 be 20 d1 82 d0 be d0  .......... .....
0be0: bb d1 8c d0 ba d0 be 20 d0 bf d0 be 20 d1 8d d1  ....... .... ...
0bf0: 82 d0 be d0 b9 20 d0 be d0 b1 d1 80 d0 b0 d0 b1  ..... ..........
0c00: d0 be d1 82 d0 ba d0 b5 2e 20 0d 0a 20 20 20 20  ......... ..    
0c10: 2f 2f d0 be d1 82 d0 ba d1 80 d1 8b d1 82 20 63  //............ c
0c20: 66 20 d1 84 d0 b0 d0 b9 d0 bb 20 d0 b8 d0 bb d0  f ........ .....
0c30: b8 20 d0 b6 d0 b5 20 63 66 20 d0 b1 d0 b0 d0 b7  . .... cf ......
0c40: d1 8b 20 d0 b4 d0 b0 d0 bd d0 bd d1 8b d1 85 20  .. ............ 
0c50: d0 b8 20 d0 bc d1 8b 20 d0 bd d0 b0 d1 85 d0 be  .. .... ........
0c60: d0 b4 d0 b8 d0 bc d1 81 d1 8f 20 d0 b2 20 d1 82  .......... .. ..
0c70: d0 b5 d0 ba d1 81 d1 82 d0 be d0 b2 d0 be d0 bc  ................
0c80: 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5 20 d0 be   ............ ..
0c90: d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5 d0 bd  ................
0ca0: d0 bd d0 be d0 b9 20 0d 0a 20 20 20 20 2f 2f d0  ...... ..    //.
0cb0: ba d0 be d0 bd d1 84 d0 b8 d0 b3 d1 83 d1 80 d0  ................
0cc0: b0 d1 86 d0 b8 d0 b8 2c 20 d0 b7 d0 bd d0 b0 d1  ......., .......
0cd0: 87 d0 b8 d1 82 20 d0 b8 d1 81 d0 ba d0 b0 d1 82  ..... ..........
0ce0: d1 8c 20 d0 b1 d1 83 d0 b4 d0 b5 d1 82 20 d0 bf  .. .......... ..
0cf0: d0 be 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b5 d0  .. .............
0d00: b9 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 b9 d0 bd  . ..............
0d10: d0 b5 d1 80 d1 83 2e 20 0d 0a 20 20 20 20 0d 0a  ....... ..    ..
0d20: 20 20 20 20 76 61 72 20 77 20 3d 20 47 65 74 54      var w = GetT
0d30: 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20  extWindow();..  
0d40: 20 20 69 66 20 28 21 77 29 20 72 65 74 75 72 6e    if (!w) return
0d50: 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 0d 0a 20   false;..    .. 
0d60: 20 20 20 76 61 72 20 65 73 20 3d 20 47 65 74 45     var es = GetE
0d70: 78 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29  xtSearchGlobal()
0d80: 3b 0d 0a 0d 0a 20 20 20 20 76 61 72 20 73 65 6c  ;....    var sel
0d90: 54 65 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65  Text = w.GetSele
0da0: 63 74 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20  ctedText();..   
0db0: 20 69 66 20 28 73 65 6c 54 65 78 74 20 3d 3d 20   if (selText == 
0dc0: 27 27 29 0d 0a 20 20 20 20 20 20 20 20 73 65 6c  '')..        sel
0dd0: 54 65 78 74 20 3d 20 77 2e 47 65 74 57 6f 72 64  Text = w.GetWord
0de0: 55 6e 64 65 72 43 75 72 73 6f 72 28 29 3b 0d 0a  UnderCursor();..
0df0: 20 20 20 20 0d 0a 20 20 20 20 65 73 2e 69 73 47      ..    es.isG
0e00: 6c 6f 62 61 6c 46 69 6e 64 20 3d 20 74 72 75 65  lobalFind = true
0e10: 3b 0d 0a 20 20 20 20 65 73 2e 69 73 49 6e 43 75  ;..    es.isInCu
0e20: 72 72 65 6e 74 4d 64 43 6f 6e 74 65 69 6e 65 72  rrentMdConteiner
0e30: 46 69 6e 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20  Find = true;..  
0e40: 20 20 65 73 2e 73 65 74 53 69 6d 70 6c 65 51 75    es.setSimpleQu
0e50: 65 72 79 28 73 65 6c 54 65 78 74 29 3b 20 20 20  ery(selText);   
0e60: 20 0d 0a 20 20 20 20 65 73 2e 73 68 6f 77 28 29   ..    es.show()
0e70: 3b 0d 0a 0d 0a 20 20 20 20 69 66 20 28 73 65 6c  ;....    if (sel
0e80: 54 65 78 74 20 3d 3d 20 27 27 29 0d 0a 20 20 20  Text == '')..   
0e90: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 63   {..        es.c
0ea0: 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74  learSearchResult
0eb0: 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 65 73  s();..        es
0ec0: 2e 73 65 74 44 65 66 61 75 6c 74 53 65 61 72 63  .setDefaultSearc
0ed0: 68 51 75 65 72 79 28 29 3b 0d 0a 20 20 20 20 7d  hQuery();..    }
0ee0: 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20  ..    else..    
0ef0: 20 20 20 20 65 73 2e 73 65 61 72 63 68 49 6e 4d      es.searchInM
0f00: 65 74 61 64 61 74 61 28 74 72 75 65 29 3b 0d 0a  etadata(true);..
0f10: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 72 65          ..    re
0f20: 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d  turn true;..}...
0f30: 0a 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e  .....SelfScript.
0f40: 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 9e d1 82  self['macros....
0f50: d0 bc d0 b5 d0 bd d0 b8 d1 82 d1 8c 20 d0 b3 d0  ............ ...
0f60: bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0  ................
0f70: b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 27 5d 20 3d  . ..........'] =
0f80: 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20   function() {.. 
0f90: 20 20 20 76 61 72 20 65 73 20 3d 20 47 65 74 45     var es = GetE
0fa0: 78 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29  xtSearchGlobal()
0fb0: 3b 0d 0a 20 20 20 20 69 66 20 28 65 73 2e 73 74  ;..    if (es.st
0fc0: 61 72 74 47 6c 6f 62 61 6c 53 65 61 72 63 68 29  artGlobalSearch)
0fd0: 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 73 74  {..        es.st
0fe0: 61 72 74 47 6c 6f 62 61 6c 53 65 61 72 63 68 20  artGlobalSearch 
0ff0: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 7d 20  = false;..    } 
1000: 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70  ..}....SelfScrip
1010: 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 9e  t.self['macros..
1020: d1 82 d0 ba d1 80 d1 8b d1 82 d1 8c 20 d0 be d0  ............ ...
1030: ba d0 bd d0 be 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
1040: d0 b0 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28  ..'] = function(
1050: 29 20 7b 0d 0a 20 20 20 20 47 65 74 45 78 74 53  ) {..    GetExtS
1060: 65 61 72 63 68 28 29 2e 73 68 6f 77 28 29 3b 0d  earch().show();.
1070: 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74  .}....SelfScript
1080: 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 97 d0  .self['macros...
1090: b0 d0 ba d1 80 d1 8b d1 82 d1 8c 20 d0 be d0 ba  ........... ....
10a0: d0 bd d0 be 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0  .... ...........
10b0: b0 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29  .'] = function()
10c0: 20 7b 0d 0a 20 20 20 20 76 61 72 20 65 73 20 3d   {..    var es =
10d0: 20 47 65 74 45 78 74 53 65 61 72 63 68 28 29 3b   GetExtSearch();
10e0: 0d 0a 20 20 20 20 69 66 20 28 65 73 2e 69 73 4f  ..    if (es.isO
10f0: 70 65 6e 28 29 29 20 7b 0d 0a 20 20 20 20 20 20  pen()) {..      
1100: 20 20 65 73 2e 63 6c 6f 73 65 28 29 3b 0d 0a 20    es.close();.. 
1110: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72         return tr
1120: 75 65 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20  ue;..    }..    
1130: 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 7d  return false;..}
1140: 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73  ....SelfScript.s
1150: 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 9f d0 b5 d1  elf['macros.....
1160: 80 d0 b5 d0 b9 d1 82 d0 b8 20 d0 ba 20 d1 81 d0  ......... .. ...
1170: bb d0 b5 d0 b4 d1 83 d1 8e d1 89 d0 b5 d0 bc d1  ................
1180: 83 20 d1 81 d0 be d0 b2 d0 bf d0 b0 d0 b4 d0 b5  . ..............
1190: d0 bd d0 b8 d1 8e 27 5d 20 3d 20 66 75 6e 63 74  ......'] = funct
11a0: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72  ion() {..    var
11b0: 20 65 73 20 3d 20 47 65 74 45 78 74 53 65 61 72   es = GetExtSear
11c0: 63 68 28 29 3b 0d 0a 20 20 20 20 65 73 2e 73 68  ch();..    es.sh
11d0: 6f 77 28 29 3b 0d 0a 20 20 20 20 65 73 2e 6d 6f  ow();..    es.mo
11e0: 76 65 52 6f 77 43 75 72 73 6f 72 28 74 72 75 65  veRowCursor(true
11f0: 29 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72  );..}....SelfScr
1200: 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73  ipt.self['macros
1210: d0 9f d0 b5 d1 80 d0 b5 d0 b9 d1 82 d0 b8 20 d0  .............. .
1220: ba 20 d0 bf d1 80 d0 b5 d0 b4 d1 8b d0 b4 d1 83  . ..............
1230: d1 89 d0 b5 d0 bc d1 83 20 d1 81 d0 be d0 b2 d0  ........ .......
1240: bf d0 b0 d0 b4 d0 b5 d0 bd d0 b8 d1 8e 27 5d 20  .............'] 
1250: 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a  = function() {..
1260: 20 20 20 20 76 61 72 20 65 73 20 3d 20 47 65 74      var es = Get
1270: 45 78 74 53 65 61 72 63 68 28 29 3b 0d 0a 20 20  ExtSearch();..  
1280: 20 20 65 73 2e 73 68 6f 77 28 29 3b 0d 0a 20 20    es.show();..  
1290: 20 20 65 73 2e 6d 6f 76 65 52 6f 77 43 75 72 73    es.moveRowCurs
12a0: 6f 72 28 66 61 6c 73 65 29 3b 0d 0a 7d 0d 0a 0d  or(false);..}...
12b0: 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66  .SelfScript.self
12c0: 5b 27 6d 61 63 72 6f 73 d0 a1 d0 b2 d0 b5 d1 80  ['macros........
12d0: d0 bd d1 83 d1 82 d1 8c 20 d0 b3 d1 80 d1 83 d0  ........ .......
12e0: bf d0 bf d0 b8 d1 80 d0 be d0 b2 d0 ba d0 b8 27  ...............'
12f0: 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b  ] = function() {
1300: 0d 0a 20 20 20 20 76 61 72 20 65 73 20 3d 20 47  ..    var es = G
1310: 65 74 45 78 74 53 65 61 72 63 68 28 29 3b 0d 0a  etExtSearch();..
1320: 20 20 20 20 65 73 2e 65 78 70 61 6e 64 54 72 65      es.expandTre
1330: 65 28 74 72 75 65 29 3b 0d 0a 7d 0d 0a 0d 0a 53  e(true);..}....S
1340: 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27  elfScript.self['
1350: 6d 61 63 72 6f 73 d0 a0 d0 b0 d0 b7 d0 b2 d0 b5  macros..........
1360: d1 80 d0 bd d1 83 d1 82 d1 8c 20 d0 b3 d1 80 d1  .......... .....
1370: 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0 b2 d0 ba d0  ................
1380: b8 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29  .'] = function()
1390: 20 7b 0d 0a 20 20 20 20 76 61 72 20 65 73 20 3d   {..    var es =
13a0: 20 47 65 74 45 78 74 53 65 61 72 63 68 28 29 3b   GetExtSearch();
13b0: 0d 0a 20 20 20 20 65 73 2e 65 78 70 61 6e 64 54  ..    es.expandT
13c0: 72 65 65 28 66 61 6c 73 65 29 3b 0d 0a 7d 0d 0a  ree(false);..}..
13d0: 0d 0a 0d 0a 2f 2a 20 d0 92 d0 be d0 b7 d0 b2 d1  ..../* .........
13e0: 80 d0 b0 d1 89 d0 b0 d0 b5 d1 82 20 d0 bd d0 b0  ........... ....
13f0: d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0 b5 20 d0 bc d0  ............ ...
1400: b0 d0 ba d1 80 d0 be d1 81 d0 b0 20 d0 bf d0 be  ........... ....
1410: 20 d1 83 d0 bc d0 be d0 bb d1 87 d0 b0 d0 bd d0   ...............
1420: b8 d1 8e 20 2d 20 d0 b2 d1 8b d0 b7 d1 8b d0 b2  ... - ..........
1430: d0 b0 d0 b5 d1 82 d1 81 d1 8f 2c 20 d0 ba d0 be  .........., ....
1440: d0 b3 d0 b4 d0 b0 20 d0 bf d0 be d0 bb d1 8c d0  ...... .........
1450: b7 d0 be d0 b2 d0 b0 d1 82 d0 b5 d0 bb d1 8c 20  ............... 
1460: 0d 0a d0 b4 d0 b2 d0 b0 d0 b6 d0 b4 d1 8b 20 d1  .............. .
1470: 89 d0 b5 d0 bb d0 ba d0 b0 d0 b5 d1 82 20 d0 bc  ............. ..
1480: d1 8b d1 88 d1 8c d1 8e 20 d0 bf d0 be 20 d0 bd  ........ .... ..
1490: d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d1 8e 20 d1  .............. .
14a0: 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 b0 20 d0 b2  ............. ..
14b0: 20 d0 be d0 ba d0 bd d0 b5 20 d0 a1 d0 bd d0 b5   ........ ......
14c0: d0 b3 d0 be d0 bf d0 b0 d1 82 d0 b0 2e 20 2a 2f  ............. */
14d0: 0d 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65  ..function getDe
14e0: 66 61 75 6c 74 4d 61 63 72 6f 73 28 29 20 7b 0d  faultMacros() {.
14f0: 0a 20 20 20 20 72 65 74 75 72 6e 20 27 d0 9e d1  .    return '...
1500: 82 d0 ba d1 80 d1 8b d1 82 d1 8c 20 d0 be d0 ba  ........... ....
1510: d0 bd d0 be 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0  .... ...........
1520: b0 27 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 7d 20  .';..}....////} 
1530: d0 9c d0 b0 d0 ba d1 80 d0 be d1 81 d1 8b 0d 0a  ................
1540: 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ..//////////////
1550: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1560: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1570: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1580: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1590: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f  //////////..////
15a0: 7b 20 45 78 74 53 65 61 72 63 68 20 2d 20 d0 a0  { ExtSearch - ..
15b0: d0 b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 bd  ................
15c0: d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20  .... .......... 
15d0: d0 b2 20 d1 82 d0 b5 d0 ba d1 81 d1 82 d0 b5 20  .. ............ 
15e0: d0 bc d0 be d0 b4 d1 83 d0 bb d1 8f 2e 0d 0a 2f  .............../
15f0: 2f 2f 2f 0d 0a 0d 0a 52 6f 77 54 79 70 65 73 20  ///....RowTypes 
1600: 3d 20 7b 0d 0a 20 20 20 20 27 53 65 61 72 63 68  = {..    'Search
1610: 52 65 73 75 6c 74 27 20 20 3a 20 30 2c 20 2f 2f  Result'  : 0, //
1620: 20 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b0 20 d1 80   ............ ..
1630: d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0 b0 d1 82  ................
1640: d0 b0 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2e  .. .............
1650: 0d 0a 20 20 20 20 27 50 72 6f 63 47 72 6f 75 70  ..    'ProcGroup
1660: 27 20 20 20 20 20 3a 20 31 2c 20 2f 2f 20 d0 a1  '     : 1, // ..
1670: d1 82 d1 80 d0 be d0 ba d0 b0 20 d0 b3 d1 80 d1  .......... .....
1680: 83 d0 bf d0 bf d1 8b 2d d0 bf d1 80 d0 be d1 86  .......-........
1690: d0 b5 d0 b4 d1 83 d1 80 d1 8b 20 28 d0 b2 20 d1  .......... (.. .
16a0: 80 d0 b5 d0 b6 d0 b8 d0 bc d0 b5 20 d0 b3 d1 80  ........... ....
16b0: d1 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0 b2 d0 ba  ................
16c0: d0 b8 20 d0 bf d0 be 20 d0 bf d1 80 d0 be d1 86  .. .... ........
16d0: d0 b5 d0 b4 d1 83 d1 80 d0 b0 d0 bc 20 d0 b8 20  ............ .. 
16e0: d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d1 8f d0 bc  ................
16f0: 29 2e 0d 0a 20 20 20 20 27 46 75 6e 63 47 72 6f  )...    'FuncGro
1700: 75 70 27 20 20 20 20 20 3a 20 32 2c 20 2f 2f 20  up'     : 2, // 
1710: d0 a1 d1 82 d1 80 d0 be d0 ba d0 b0 20 d0 b3 d1  ............ ...
1720: 80 d1 83 d0 bf d0 bf d1 8b 2d d1 84 d1 83 d0 bd  .........-......
1730: d0 ba d1 86 d0 b8 d0 b8 20 28 d0 b2 20 d1 80 d0  ........ (.. ...
1740: b5 d0 b6 d0 b8 d0 bc d0 b5 20 d0 b3 d1 80 d1 83  ......... ......
1750: d0 bf d0 bf d0 b8 d1 80 d0 be d0 b2 d0 ba d0 b8  ................
1760: 20 d0 bf d0 be 20 d0 bf d1 80 d0 be d1 86 d0 b5   .... ..........
1770: d0 b4 d1 83 d1 80 d0 b0 d0 bc 20 d0 b8 20 d1 84  .......... .. ..
1780: d1 83 d0 bd d0 ba d1 86 d0 b8 d1 8f d0 bc 29 2e  ..............).
1790: 0d 0a 20 20 20 20 27 53 65 61 72 63 68 44 6f 63  ..    'SearchDoc
17a0: 27 20 20 20 20 20 3a 20 33 20 20 2f 2f 20 d0 a1  '     : 3  // ..
17b0: d1 82 d1 80 d0 be d0 ba d0 b0 20 d0 b4 d0 be d0  .......... .....
17c0: ba d1 83 d0 bc d0 b5 d0 bd d1 82 d0 b0 2c 20 d0  ............., .
17d0: b2 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be d0 bc  . ..............
17e0: 20 d0 bf d1 80 d0 be d0 b8 d0 b7 d0 b2 d0 be d0   ...............
17f0: b4 d0 b8 d1 82 d1 81 d1 8f 20 d0 bf d0 be d0 b8  ......... ......
1800: d1 81 d0 ba 2e 0d 0a 7d 0d 0a 0d 0a 52 45 20 3d  .......}....RE =
1810: 20 7b 0d 0a 20 20 20 20 4d 45 54 48 4f 44 5f 53   {..    METHOD_S
1820: 54 41 52 54 20 3a 20 2f 5e 5c 73 2a 28 28 3f 3a  TART : /^\s*((?:
1830: 70 72 6f 63 65 64 75 72 65 29 7c 28 3f 3a 66 75  procedure)|(?:fu
1840: 6e 63 74 69 6f 6e 29 7c 28 3f 3a d0 bf d1 80 d0  nction)|(?:.....
1850: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 29 7c 28  .............)|(
1860: 3f 3a d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d1 8f  ?:..............
1870: 29 29 5c 73 2b 28 5b 5c 77 d0 90 2d d1 8f d1 91  ))\s+([\w..-....
1880: d0 81 5c 64 5d 2b 29 5c 73 2a 5c 28 2f 69 2c 0d  ..\d]+)\s*\(/i,.
1890: 0a 20 20 20 20 4d 45 54 48 4f 44 5f 45 4e 44 20  .    METHOD_END 
18a0: 3a 20 2f 28 28 3f 3a 45 6e 64 50 72 6f 63 65 64  : /((?:EndProced
18b0: 75 72 65 29 7c 28 3f 3a 45 6e 64 46 75 6e 63 74  ure)|(?:EndFunct
18c0: 69 6f 6e 29 7c 28 3f 3a d0 9a d0 be d0 bd d0 b5  ion)|(?:........
18d0: d1 86 d0 9f d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83  ................
18e0: d1 80 d1 8b 29 7c 28 3f 3a d0 9a d0 be d0 bd d0  ....)|(?:.......
18f0: b5 d1 86 d0 a4 d1 83 d0 bd d0 ba d1 86 d0 b8 d0  ................
1900: b8 29 29 2f 69 0d 0a 7d 0d 0a 0d 0a 45 78 74 53  .))/i..}....ExtS
1910: 65 61 72 63 68 20 3d 20 53 63 72 69 70 74 46 6f  earch = ScriptFo
1920: 72 6d 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a 20  rm.extend({.... 
1930: 20 20 20 73 65 74 74 69 6e 67 73 52 6f 6f 74 50     settingsRootP
1940: 61 74 68 20 3a 20 53 65 6c 66 53 63 72 69 70 74  ath : SelfScript
1950: 2e 75 6e 69 71 75 65 4e 61 6d 65 2c 0d 0a 20 20  .uniqueName,..  
1960: 20 20 0d 0a 20 20 20 20 73 65 74 74 69 6e 67 73    ..    settings
1970: 20 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20 70 66   : {..        pf
1980: 6c 53 6e 65 67 6f 70 61 74 20 3a 20 7b 0d 0a 20  lSnegopat : {.. 
1990: 20 20 20 20 20 20 20 20 20 20 20 27 49 73 52 65             'IsRe
19a0: 67 45 78 70 27 20 20 20 20 20 20 3a 20 66 61 6c  gExp'      : fal
19b0: 73 65 2c 20 2f 2f 20 d0 9f d0 be d0 b8 d1 81 d0  se, // .........
19c0: ba 20 d1 80 d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 80  . ..............
19d0: d0 bd d1 8b d0 bc d0 b8 20 d0 b2 d1 8b d1 80 d0  ........ .......
19e0: b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f d0 bc d0 b8 2e  ................
19f0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 43  ..            'C
1a00: 61 73 65 53 65 6e 73 65 74 69 76 65 27 20 3a 20  aseSensetive' : 
1a10: 66 61 6c 73 65 2c 20 2f 2f 20 d0 a3 d1 87 d0 b8  false, // ......
1a20: d1 82 d1 8b d0 b2 d0 b0 d1 82 d1 8c 20 d1 80 d0  ............ ...
1a30: b5 d0 b3 d0 b8 d1 81 d1 82 d1 80 20 d0 bf d1 80  ........... ....
1a40: d0 b8 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b5 2e  .. .............
1a50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 57  ..            'W
1a60: 68 6f 6c 65 57 6f 72 64 73 27 20 20 20 20 3a 20  holeWords'    : 
1a70: 66 61 6c 73 65 2c 20 2f 2f 20 d0 9f d0 be d0 b8  false, // ......
1a80: d1 81 d0 ba 20 d1 81 d0 bb d0 be d0 b2 d0 b0 20  .... .......... 
1a90: d1 86 d0 b5 d0 bb d0 b8 d0 ba d0 be d0 bc 2e 0d  ................
1aa0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 53 65  .            'Se
1ab0: 61 72 63 68 48 69 73 74 6f 72 79 27 20 3a 20 76  archHistory' : v
1ac0: 38 4e 65 77 28 27 56 61 6c 75 65 4c 69 73 74 27  8New('ValueList'
1ad0: 29 2c 20 2f 2f 20 d0 98 d1 81 d1 82 d0 be d1 80  ), // ..........
1ae0: d0 b8 d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0  .... ...........
1af0: b0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
1b00: 27 48 69 73 74 6f 72 79 44 65 70 74 68 27 20 20  'HistoryDepth'  
1b10: 3a 20 31 35 2c 20 2f 2f 20 d0 9a d0 be d0 bb d0  : 15, // .......
1b20: b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be 20 d1 8d  ............. ..
1b30: d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d0 be d0 b2  ................
1b40: 20 d0 b8 d1 81 d1 82 d0 be d1 80 d0 b8 d0 b8 20   .............. 
1b50: d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20  ............... 
1b60: 20 20 20 20 20 20 20 20 20 20 20 27 54 72 65 65             'Tree
1b70: 56 69 65 77 27 20 20 20 20 20 20 3a 20 66 61 6c  View'      : fal
1b80: 73 65 20 2f 2f 20 d0 93 d1 80 d1 83 d0 bf d0 bf  se // ..........
1b90: d0 b8 d1 80 d0 be d0 b2 d0 b0 d1 82 d1 8c 20 d1  .............. .
1ba0: 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0 b0 d1  ................
1bb0: 82 d1 8b 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0  ... ............
1bc0: 20 d0 bf d0 be 20 d0 bc d0 b5 d1 82 d0 be d0 b4   .... ..........
1bd0: d0 b0 d0 bc 2e 20 20 20 20 20 20 20 20 20 20 20  .....           
1be0: 20 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20   ..        }..  
1bf0: 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 63 6f 6e 73    },....    cons
1c00: 74 72 75 63 74 20 3a 20 66 75 6e 63 74 69 6f 6e  truct : function
1c10: 20 28 69 73 45 78 74 65 6e 64 29 20 7b 0d 0a 20   (isExtend) {.. 
1c20: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
1c30: 20 69 66 20 28 69 73 45 78 74 65 6e 64 20 3d 3d   if (isExtend ==
1c40: 20 75 6e 64 65 66 69 6e 65 64 29 20 69 73 45 78   undefined) isEx
1c50: 74 65 6e 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 20  tend = false;.. 
1c60: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 73 75 70         this._sup
1c70: 65 72 28 22 73 63 72 69 70 74 73 5c 5c 65 78 74  er("scripts\\ext
1c80: 53 65 61 72 63 68 2e 72 65 73 75 6c 74 73 2e 73  Search.results.s
1c90: 73 66 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  sf");..         
1ca0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
1cb0: 20 74 68 69 73 2e 66 6f 72 6d 2e d0 9a d0 bb d1   this.form......
1cc0: 8e d1 87 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0  ................
1cd0: b5 d0 bd d0 b8 d1 8f d0 9f d0 be d0 bb d0 be d0  ................
1ce0: b6 d0 b5 d0 bd d0 b8 d1 8f d0 9e d0 ba d0 bd d0  ................
1cf0: b0 20 3d 20 22 65 78 74 53 65 61 72 63 68 2e 6a  . = "extSearch.j
1d00: 73 22 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  s"..        this
1d10: 2e 72 65 73 75 6c 74 73 20 3d 20 74 68 69 73 2e  .results = this.
1d20: 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65  form.Controls.Se
1d30: 61 72 63 68 52 65 73 75 6c 74 73 2e 56 61 6c 75  archResults.Valu
1d40: 65 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  e;..        this
1d50: 2e 72 65 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73  .results.Columns
1d60: 2e 41 64 64 28 27 5f 6d 65 74 68 6f 64 27 29 3b  .Add('_method');
1d70: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 72  ..        this.r
1d80: 65 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73 2e 41  esults.Columns.A
1d90: 64 64 28 27 67 72 6f 75 70 73 43 61 63 68 65 27  dd('groupsCache'
1da0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  );..        this
1db0: 2e 72 65 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73  .results.Columns
1dc0: 2e 41 64 64 28 27 5f 6f 62 6a 65 63 74 27 29 3b  .Add('_object');
1dd0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
1de0: 20 20 20 20 74 68 69 73 2e 77 61 74 63 68 65 72      this.watcher
1df0: 20 3d 20 6e 65 77 20 54 65 78 74 57 69 6e 64 6f   = new TextWindo
1e00: 77 73 57 61 74 63 68 65 72 28 29 3b 0d 0a 20 20  wsWatcher();..  
1e10: 20 20 20 20 20 20 74 68 69 73 2e 77 61 74 63 68        this.watch
1e20: 65 72 2e 73 74 61 72 74 57 61 74 63 68 28 29 3b  er.startWatch();
1e30: 0d 0a 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20  ..          ..  
1e40: 20 20 20 20 20 20 74 68 69 73 2e 6c 6f 61 64 53        this.loadS
1e50: 65 74 74 69 6e 67 73 28 29 3b 0d 0a 20 20 20 20  ettings();..    
1e60: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68      ..        th
1e70: 69 73 2e 74 61 72 67 65 74 57 69 6e 64 6f 77 20  is.targetWindow 
1e80: 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20  = null;..       
1e90: 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e   ..        this.
1ea0: 49 63 6f 6e 73 20 3d 20 7b 0d 0a 20 20 20 20 20  Icons = {..     
1eb0: 20 20 20 20 20 20 20 27 46 75 6e 63 27 3a 20 74         'Func': t
1ec0: 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c  his.form.Control
1ed0: 73 2e 50 69 63 46 75 6e 63 2e 50 69 63 74 75 72  s.PicFunc.Pictur
1ee0: 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e,..            
1ef0: 27 50 72 6f 63 27 3a 20 74 68 69 73 2e 66 6f 72  'Proc': this.for
1f00: 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 50 69 63 50 72  m.Controls.PicPr
1f10: 6f 63 2e 50 69 63 74 75 72 65 0d 0a 20 20 20 20  oc.Picture..    
1f20: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d      }..        .
1f30: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 53 65  .        this.Se
1f40: 61 72 63 68 44 6f 63 52 6f 77 46 6f 6e 74 20 3d  archDocRowFont =
1f50: 20 76 38 4e 65 77 28 27 46 6f 6e 74 27 2c 20 75   v8New('Font', u
1f60: 6e 64 65 66 69 6e 65 64 2c 20 75 6e 64 65 66 69  ndefined, undefi
1f70: 6e 65 64 2c 20 74 72 75 65 29 3b 0d 0a 20 20 20  ned, true);..   
1f80: 20 20 20 20 20 74 68 69 73 2e 69 73 47 6c 6f 62       this.isGlob
1f90: 61 6c 46 69 6e 64 20 3d 20 66 61 6c 73 65 3b 0d  alFind = false;.
1fa0: 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  .        ..     
1fb0: 20 20 20 74 68 69 73 2e 53 65 74 43 6f 6e 74 72     this.SetContr
1fc0: 6f 6c 73 56 69 73 69 62 6c 65 28 29 3b 0d 0a 20  olsVisible();.. 
1fd0: 20 20 20 20 20 20 20 69 66 20 28 21 69 73 45 78         if (!isEx
1fe0: 74 65 6e 64 29 20 45 78 74 53 65 61 72 63 68 2e  tend) ExtSearch.
1ff0: 5f 69 6e 73 74 61 6e 63 65 20 3d 20 74 68 69 73  _instance = this
2000: 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 7d 2c 0d  ;..    ..    },.
2010: 0a 20 20 20 20 0d 0a 20 20 20 20 73 65 74 53 69  .    ..    setSi
2020: 6d 70 6c 65 51 75 65 72 79 20 3a 20 66 75 6e 63  mpleQuery : func
2030: 74 69 6f 6e 20 28 71 75 65 72 79 29 20 7b 0d 0a  tion (query) {..
2040: 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72          this.for
2050: 6d 2e 51 75 65 72 79 20 3d 20 71 75 65 72 79 3b  m.Query = query;
2060: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 66  ..        this.f
2070: 6f 72 6d 2e 49 73 52 65 67 45 78 70 20 3d 20 66  orm.IsRegExp = f
2080: 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 74  alse;..        t
2090: 68 69 73 2e 66 6f 72 6d 2e 43 61 73 65 53 65 6e  his.form.CaseSen
20a0: 73 65 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 0d  setive = false;.
20b0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 61 64  .        this.ad
20c0: 64 54 6f 48 69 73 74 6f 72 79 28 71 75 65 72 79  dToHistory(query
20d0: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20  );..    },..    
20e0: 0d 0a 20 20 20 20 65 78 70 61 6e 64 54 72 65 65  ..    expandTree
20f0: 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6c   : function (col
2100: 6c 61 70 73 65 29 20 7b 0d 0a 20 20 20 20 20 20  lapse) {..      
2110: 20 20 76 61 72 20 74 72 65 65 20 3d 20 74 68 69    var tree = thi
2120: 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e  s.form.Controls.
2130: 53 65 61 72 63 68 52 65 73 75 6c 74 73 3b 0d 0a  SearchResults;..
2140: 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72          for (var
2150: 20 69 3d 30 3b 20 69 20 3c 20 74 68 69 73 2e 72   i=0; i < this.r
2160: 65 73 75 6c 74 73 2e 52 6f 77 73 2e 43 6f 75 6e  esults.Rows.Coun
2170: 74 28 29 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20  t(); i++)..     
2180: 20 20 20 7b 20 20 20 20 20 20 20 20 0d 0a 20 20     {        ..  
2190: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 64 6f            var do
21a0: 63 52 6f 77 20 3d 20 74 68 69 73 2e 72 65 73 75  cRow = this.resu
21b0: 6c 74 73 2e 52 6f 77 73 2e 47 65 74 28 69 29 3b  lts.Rows.Get(i);
21c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
21d0: 20 28 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65   (this.form.Tree
21e0: 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20 20 20  View)..         
21f0: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
2200: 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 6a        for (var j
2210: 3d 30 3b 20 6a 20 3c 20 64 6f 63 52 6f 77 2e 52  =0; j < docRow.R
2220: 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20 6a 2b 2b  ows.Count(); j++
2230: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
2240: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
2250: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 6f            var ro
2260: 77 20 3d 20 64 6f 63 52 6f 77 2e 52 6f 77 73 2e  w = docRow.Rows.
2270: 47 65 74 28 6a 29 3b 0d 0a 20 20 20 20 20 20 20  Get(j);..       
2280: 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c               col
2290: 6c 61 70 73 65 20 3f 20 74 72 65 65 2e 43 6f 6c  lapse ? tree.Col
22a0: 6c 61 70 73 65 28 72 6f 77 29 20 3a 20 74 72 65  lapse(row) : tre
22b0: 65 2e 45 78 70 61 6e 64 28 72 6f 77 2c 20 74 72  e.Expand(row, tr
22c0: 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ue);..          
22d0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
22e0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
22f0: 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20      else..      
2300: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
2310: 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 61 70 73           collaps
2320: 65 20 3f 20 74 72 65 65 2e 43 6f 6c 6c 61 70 73  e ? tree.Collaps
2330: 65 28 64 6f 63 52 6f 77 29 20 3a 20 74 72 65 65  e(docRow) : tree
2340: 2e 45 78 70 61 6e 64 28 64 6f 63 52 6f 77 2c 20  .Expand(docRow, 
2350: 74 72 75 65 29 3b 20 20 20 20 20 20 20 20 20 20  true);          
2360: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
2370: 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20  }..        }..  
2380: 20 20 7d 2c 0d 0a 20 20 20 20 20 20 20 20 0d 0a    },..        ..
2390: 20 20 20 20 67 65 74 57 69 6e 64 6f 77 4f 62 6a      getWindowObj
23a0: 65 63 74 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  ect : function (
23b0: 76 69 65 77 29 20 7b 0d 0a 20 20 20 20 20 20 20  view) {..       
23c0: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 76 69  ..        if (vi
23d0: 65 77 2e 6d 64 4f 62 6a 20 26 26 20 76 69 65 77  ew.mdObj && view
23e0: 2e 6d 64 50 72 6f 70 29 20 0d 0a 20 20 20 20 20  .mdProp) ..     
23f0: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 65         return ne
2400: 77 20 4d 64 4f 62 6a 65 63 74 28 76 69 65 77 2e  w MdObject(view.
2410: 6d 64 4f 62 6a 2c 20 76 69 65 77 2e 6d 64 50 72  mdObj, view.mdPr
2420: 6f 70 2c 20 76 69 65 77 2e 74 69 74 6c 65 29 3b  op, view.title);
2430: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a  ..            ..
2440: 20 20 20 20 20 20 20 20 76 61 72 20 6f 62 6a 20          var obj 
2450: 3d 20 76 69 65 77 2e 67 65 74 4f 62 6a 65 63 74  = view.getObject
2460: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  ();..        if 
2470: 28 6f 62 6a 20 26 26 20 74 6f 56 38 56 61 6c 75  (obj && toV8Valu
2480: 65 28 6f 62 6a 29 2e 74 79 70 65 4e 61 6d 65 28  e(obj).typeName(
2490: 30 29 20 3d 3d 20 27 54 65 78 74 44 6f 63 75 6d  0) == 'TextDocum
24a0: 65 6e 74 27 29 0d 0a 20 20 20 20 20 20 20 20 20  ent')..         
24b0: 20 20 20 72 65 74 75 72 6e 20 6e 65 77 20 54 65     return new Te
24c0: 78 74 44 6f 63 4f 62 6a 65 63 74 28 6f 62 6a 2c  xtDocObject(obj,
24d0: 20 76 69 65 77 2e 74 69 74 6c 65 29 3b 20 20 20   view.title);   
24e0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
24f0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20     ..        if 
2500: 28 6f 62 6a 29 20 4d 65 73 73 61 67 65 28 27 d0  (obj) Message('.
2510: 9d d0 b5 d0 bf d0 be d0 b4 d0 b4 d0 b5 d1 80 d0  ................
2520: b6 d0 b8 d0 b2 d0 b0 d0 b5 d0 bc d1 8b d0 b9 20  ............... 
2530: d1 82 d0 b8 d0 bf 20 d0 be d0 b1 d1 8a d0 b5 d0  ...... .........
2540: ba d1 82 d0 b0 20 d0 b4 d0 bb d1 8f 20 d0 bf d0  ..... ...... ...
2550: be d0 b8 d1 81 d0 ba d0 b0 3a 20 27 20 2b 20 74  .........: ' + t
2560: 6f 56 38 56 61 6c 75 65 28 6f 62 6a 29 2e 74 79  oV8Value(obj).ty
2570: 70 65 4e 61 6d 65 28 30 29 29 3b 0d 0a 20 20 20  peName(0));..   
2580: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 72       ..        r
2590: 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 20 20 20  eturn null;..   
25a0: 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73   },..    ..    s
25b0: 65 61 72 63 68 4f 70 65 6e 65 64 57 69 6e 64 6f  earchOpenedWindo
25c0: 77 73 3a 20 66 75 6e 63 74 69 6f 6e 20 28 66 72  ws: function (fr
25d0: 6f 6d 48 6f 74 4b 65 79 29 20 7b 0d 0a 0d 0a 20  omHotKey) {.... 
25e0: 20 20 20 20 20 20 20 76 61 72 20 61 63 74 69 76         var activ
25f0: 65 57 69 6e 64 6f 77 20 3d 20 74 68 69 73 2e 77  eWindow = this.w
2600: 61 74 63 68 65 72 2e 67 65 74 41 63 74 69 76 65  atcher.getActive
2610: 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20  TextWindow();.. 
2620: 20 20 20 20 20 20 20 69 66 20 28 21 61 63 74 69         if (!acti
2630: 76 65 57 69 6e 64 6f 77 29 20 72 65 74 75 72 6e  veWindow) return
2640: 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ;..        ..   
2650: 20 20 20 20 20 76 61 72 20 61 63 74 69 76 65 56       var activeV
2660: 69 65 77 20 3d 20 61 63 74 69 76 65 57 69 6e 64  iew = activeWind
2670: 6f 77 2e 47 65 74 56 69 65 77 28 29 3b 0d 0a 20  ow.GetView();.. 
2680: 20 20 20 20 20 20 20 69 66 20 28 21 61 63 74 69         if (!acti
2690: 76 65 56 69 65 77 29 20 72 65 74 75 72 6e 3b 0d  veView) return;.
26a0: 0a 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ...        this.
26b0: 63 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c  clearSearchResul
26c0: 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  ts();..         
26d0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
26e0: 20 20 20 20 20 20 76 61 72 20 72 65 20 3d 20 74        var re = t
26f0: 68 69 73 2e 62 75 69 6c 64 53 65 61 72 63 68 52  his.buildSearchR
2700: 65 67 45 78 70 4f 62 6a 65 63 74 28 29 3b 0d 0a  egExpObject();..
2710: 20 20 20 20 20 20 20 20 69 66 20 28 21 72 65 29          if (!re)
2720: 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20   return;..      
2730: 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20    ..        var 
2740: 61 63 74 69 76 65 57 6e 64 52 65 73 52 6f 77 20  activeWndResRow 
2750: 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20  = null;..       
2760: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 65   ..        var e
2770: 73 20 3d 20 74 68 69 73 3b 0d 0a 20 20 20 20 20  s = this;..     
2780: 20 20 20 28 66 75 6e 63 74 69 6f 6e 20 28 76 69     (function (vi
2790: 65 77 73 29 20 7b 20 20 20 20 20 20 20 20 0d 0a  ews) {        ..
27a0: 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28              for(
27b0: 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 76  var i = 0; i < v
27c0: 69 65 77 73 2e 63 6f 75 6e 74 3b 20 69 2b 2b 29  iews.count; i++)
27d0: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b   ..            {
27e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
27f0: 20 20 76 61 72 20 76 20 3d 20 76 69 65 77 73 2e    var v = views.
2800: 69 74 65 6d 28 69 29 3b 0d 0a 20 20 20 20 20 20  item(i);..      
2810: 20 20 20 20 20 20 20 20 20 20 69 66 28 76 2e 69            if(v.i
2820: 73 43 6f 6e 74 61 69 6e 65 72 20 21 3d 20 76 63  sContainer != vc
2830: 74 4e 6f 29 0d 0a 20 20 20 20 20 20 20 20 20 20  tNo)..          
2840: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
2850: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
2860: d0 95 d1 81 d0 bb d0 b8 20 d0 be d0 ba d0 bd d0  ........ .......
2870: be 20 2d 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 b9  . - ............
2880: d0 bd d0 b5 d1 80 2c 20 d1 82 d0 be 20 d0 be d0  ......, .... ...
2890: b1 d1 85 d0 be d0 b4 d0 b8 d0 bc 20 d1 80 d0 b5  ........... ....
28a0: d0 ba d1 83 d1 80 d1 81 d0 b8 d0 b2 d0 bd d0 be  ................
28b0: 20 d0 b5 d0 b3 d0 be 20 d0 bf d0 be d1 82 d0 be   ...... ........
28c0: d0 bc d0 ba d0 be d0 b2 2e 0d 0a 20 20 20 20 20  ...........     
28d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61                 a
28e0: 72 67 75 6d 65 6e 74 73 2e 63 61 6c 6c 65 65 28  rguments.callee(
28f0: 76 2e 65 6e 75 6d 43 68 69 6c 64 73 28 29 29 3b  v.enumChilds());
2900: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2910: 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d        continue;.
2920: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2930: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
2940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2950: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
2960: 20 20 20 20 20 20 76 61 72 20 6f 62 6a 20 3d 20        var obj = 
2970: 65 73 2e 67 65 74 57 69 6e 64 6f 77 4f 62 6a 65  es.getWindowObje
2980: 63 74 28 76 29 3b 0d 0a 20 20 20 20 20 20 20 20  ct(v);..        
2990: 20 20 20 20 20 20 20 20 69 66 20 28 21 6f 62 6a          if (!obj
29a0: 29 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20  ) continue;..   
29b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20               .. 
29c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
29d0: 61 72 20 64 6f 63 52 6f 77 20 3d 20 65 73 2e 73  ar docRow = es.s
29e0: 65 61 72 63 68 28 6f 62 6a 2c 20 72 65 29 3b 0d  earch(obj, re);.
29f0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2a00: 20 69 66 20 28 76 20 3d 3d 20 61 63 74 69 76 65   if (v == active
2a10: 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20 20 20  View)..         
2a20: 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 76             activ
2a30: 65 57 6e 64 52 65 73 52 6f 77 20 3d 20 64 6f 63  eWndResRow = doc
2a40: 52 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  Row;..          
2a50: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 29 28    }..        })(
2a60: 77 69 6e 64 6f 77 73 2e 6d 64 69 56 69 65 77 2e  windows.mdiView.
2a70: 65 6e 75 6d 43 68 69 6c 64 73 28 29 29 3b 0d 0a  enumChilds());..
2a80: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
2a90: 20 20 74 68 69 73 2e 73 68 6f 77 53 65 61 72 63    this.showSearc
2aa0: 68 52 65 73 75 6c 74 28 61 63 74 69 76 65 57 6e  hResult(activeWn
2ab0: 64 52 65 73 52 6f 77 2c 20 66 72 6f 6d 48 6f 74  dResRow, fromHot
2ac0: 4b 65 79 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  Key);..    },...
2ad0: 0a 20 20 20 20 73 65 61 72 63 68 41 63 74 69 76  .    searchActiv
2ae0: 65 44 6f 63 20 3a 20 66 75 6e 63 74 69 6f 6e 20  eDoc : function 
2af0: 28 66 72 6f 6d 48 6f 74 4b 65 79 29 20 7b 0d 0a  (fromHotKey) {..
2b00: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
2b10: 20 20 74 68 69 73 2e 63 6c 65 61 72 53 65 61 72    this.clearSear
2b20: 63 68 52 65 73 75 6c 74 73 28 29 3b 0d 0a 20 20  chResults();..  
2b30: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
2b40: 76 61 72 20 61 63 74 69 76 65 57 69 6e 64 6f 77  var activeWindow
2b50: 20 3d 20 74 68 69 73 2e 77 61 74 63 68 65 72 2e   = this.watcher.
2b60: 67 65 74 41 63 74 69 76 65 54 65 78 74 57 69 6e  getActiveTextWin
2b70: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  dow();..        
2b80: 69 66 20 28 21 61 63 74 69 76 65 57 69 6e 64 6f  if (!activeWindo
2b90: 77 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20  w) return;..    
2ba0: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
2bb0: 20 20 20 76 61 72 20 72 65 20 3d 20 74 68 69 73     var re = this
2bc0: 2e 62 75 69 6c 64 53 65 61 72 63 68 52 65 67 45  .buildSearchRegE
2bd0: 78 70 4f 62 6a 65 63 74 28 29 3b 0d 0a 20 20 20  xpObject();..   
2be0: 20 20 20 20 20 69 66 20 28 21 72 65 29 20 72 65       if (!re) re
2bf0: 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20  turn;....       
2c00: 20 76 61 72 20 6f 62 6a 20 3d 20 74 68 69 73 2e   var obj = this.
2c10: 67 65 74 57 69 6e 64 6f 77 4f 62 6a 65 63 74 28  getWindowObject(
2c20: 61 63 74 69 76 65 57 69 6e 64 6f 77 2e 47 65 74  activeWindow.Get
2c30: 56 69 65 77 28 29 29 3b 0d 0a 20 20 20 20 20 20  View());..      
2c40: 20 20 69 66 20 28 21 6f 62 6a 29 20 72 65 74 75    if (!obj) retu
2c50: 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  rn;..        .. 
2c60: 20 20 20 20 20 20 20 76 61 72 20 64 6f 63 52 6f         var docRo
2c70: 77 20 3d 20 74 68 69 73 2e 73 65 61 72 63 68 28  w = this.search(
2c80: 6f 62 6a 2c 20 72 65 29 3b 0d 0a 20 20 20 20 20  obj, re);..     
2c90: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
2ca0: 73 2e 73 68 6f 77 53 65 61 72 63 68 52 65 73 75  s.showSearchResu
2cb0: 6c 74 28 64 6f 63 52 6f 77 2c 20 66 72 6f 6d 48  lt(docRow, fromH
2cc0: 6f 74 4b 65 79 29 3b 0d 0a 20 20 20 20 7d 2c 0d  otKey);..    },.
2cd0: 0a 0d 0a 20 20 20 20 62 75 69 6c 64 53 65 61 72  ...    buildSear
2ce0: 63 68 52 65 67 45 78 70 4f 62 6a 65 63 74 20 3a  chRegExpObject :
2cf0: 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a   function () {..
2d00: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61      ..        va
2d10: 72 20 70 61 74 74 65 72 6e 20 3d 20 74 68 69 73  r pattern = this
2d20: 2e 66 6f 72 6d 2e 51 75 65 72 79 3b 0d 0a 20 20  .form.Query;..  
2d30: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
2d40: 69 66 20 28 21 74 68 69 73 2e 66 6f 72 6d 2e 49  if (!this.form.I
2d50: 73 52 65 67 45 78 70 29 20 0d 0a 20 20 20 20 20  sRegExp) ..     
2d60: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
2d70: 20 20 70 61 74 74 65 72 6e 20 3d 20 53 74 72 69    pattern = Stri
2d80: 6e 67 55 74 69 6c 73 2e 61 64 64 53 6c 61 73 68  ngUtils.addSlash
2d90: 65 73 28 70 61 74 74 65 72 6e 29 3b 0d 0a 20 20  es(pattern);..  
2da0: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
2db0: 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73          if (this
2dc0: 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f 72 64 73  .form.WholeWords
2dd0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
2de0: 20 20 20 70 61 74 74 65 72 6e 20 3d 20 22 28 5b     pattern = "([
2df0: 5e 5c 5c 77 5c 5c 64 d0 90 2d d1 8f 5d 7c 5e 29  ^\\w\\d..-..]|^)
2e00: 22 20 2b 20 70 61 74 74 65 72 6e 20 2b 20 22 28  " + pattern + "(
2e10: 5b 5e 5c 5c 77 5c 5c 64 d0 90 2d d1 8f 5d 7c 24  [^\\w\\d..-..]|$
2e20: 29 22 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  )";..        }..
2e30: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
2e40: 20 20 76 61 72 20 69 46 6c 61 67 20 3d 20 21 74    var iFlag = !t
2e50: 68 69 73 2e 66 6f 72 6d 2e 43 61 73 65 53 65 6e  his.form.CaseSen
2e60: 73 65 74 69 76 65 3b 0d 0a 20 20 20 20 20 20 20  setive;..       
2e70: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 72   ..        var r
2e80: 65 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20  e = null;..     
2e90: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 72 79     ..        try
2ea0: 20 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20   ..        {..  
2eb0: 20 20 20 20 20 20 20 20 20 20 72 65 20 3d 20 6e            re = n
2ec0: 65 77 20 52 65 67 45 78 70 28 70 61 74 74 65 72  ew RegExp(patter
2ed0: 6e 2c 20 69 46 6c 61 67 20 3f 20 27 69 27 20 3a  n, iFlag ? 'i' :
2ee0: 20 27 27 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d   '');..        }
2ef0: 0d 0a 20 20 20 20 20 20 20 20 63 61 74 63 68 20  ..        catch 
2f00: 28 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  (e)..        {..
2f10: 20 20 20 20 20 20 20 20 20 20 20 20 44 6f 4d 65              DoMe
2f20: 73 73 61 67 65 42 6f 78 28 22 d0 92 20 d1 80 d0  ssageBox(".. ...
2f30: b5 d0 b3 d1 83 d0 bb d1 8f d1 80 d0 bd d0 be d0  ................
2f40: bc 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd  . ..............
2f50: d0 b8 d0 b8 20 d0 b4 d0 be d0 bf d1 83 d1 89 d0  .... ...........
2f60: b5 d0 bd d0 b0 20 d0 be d1 88 d0 b8 d0 b1 d0 ba  ..... ..........
2f70: d0 b0 3a 20 5c 6e 22 20 2b 20 65 2e 6d 65 73 73  ..: \n" + e.mess
2f80: 61 67 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  age);..         
2f90: 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d     return null;.
2fa0: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
2fb0: 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e  ..        return
2fc0: 20 72 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20   re;..    },..  
2fd0: 20 20 0d 0a 20 20 20 20 73 65 61 72 63 68 20 3a    ..    search :
2fe0: 20 66 75 6e 63 74 69 6f 6e 20 28 6f 62 6a 2c 20   function (obj, 
2ff0: 72 65 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  re) {..         
3000: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 64   ..        var d
3010: 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 72 65 73  ocRow = this.res
3020: 75 6c 74 73 2e 52 6f 77 73 2e 41 64 64 28 29 3b  ults.Rows.Add();
3030: 0d 0a 20 20 20 20 20 20 20 20 64 6f 63 52 6f 77  ..        docRow
3040: 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 20 6f 62 6a  .FoundLine = obj
3050: 2e 67 65 74 54 69 74 6c 65 28 29 3b 0d 0a 20 20  .getTitle();..  
3060: 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 5f 6f 62        docRow._ob
3070: 6a 65 63 74 20 3d 20 6f 62 6a 3b 0d 0a 20 20 20  ject = obj;..   
3080: 20 20 20 20 20 64 6f 63 52 6f 77 2e 52 6f 77 54       docRow.RowT
3090: 79 70 65 20 3d 20 52 6f 77 54 79 70 65 73 2e 53  ype = RowTypes.S
30a0: 65 61 72 63 68 44 6f 63 3b 0d 0a 20 20 20 20 20  earchDoc;..     
30b0: 20 20 20 64 6f 63 52 6f 77 2e 67 72 6f 75 70 73     docRow.groups
30c0: 43 61 63 68 65 20 3d 20 76 38 4e 65 77 28 27 4d  Cache = v8New('M
30d0: 61 70 27 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  ap');..         
30e0: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 63   ..        var c
30f0: 75 72 4d 65 74 68 6f 64 20 3d 20 7b 20 0d 0a 20  urMethod = { .. 
3100: 20 20 20 20 20 20 20 20 20 20 20 27 4e 61 6d 65             'Name
3110: 27 20 20 20 20 20 20 3a 20 27 d0 a0 d0 b0 d0 b7  '      : '......
3120: d0 b4 d0 b5 d0 bb 20 d0 be d0 bf d0 b8 d1 81 d0  ...... .........
3130: b0 d0 bd d0 b8 d1 8f 20 d0 bf d0 b5 d1 80 d0 b5  ....... ........
3140: d0 bc d0 b5 d0 bd d0 bd d1 8b d1 85 27 2c 0d 0a  ............',..
3150: 20 20 20 20 20 20 20 20 20 20 20 20 27 49 73 50              'IsP
3160: 72 6f 63 27 20 20 20 20 3a 20 75 6e 64 65 66 69  roc'    : undefi
3170: 6e 65 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  ned,..          
3180: 20 20 27 53 74 61 72 74 4c 69 6e 65 27 20 3a 20    'StartLine' : 
3190: 30 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20  0..        }..  
31a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
31b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
31c0: 20 20 20 20 20 20 20 20 76 61 72 20 6c 69 6e 65          var line
31d0: 73 20 3d 20 53 74 72 69 6e 67 55 74 69 6c 73 2e  s = StringUtils.
31e0: 74 6f 4c 69 6e 65 73 28 6f 62 6a 2e 67 65 74 54  toLines(obj.getT
31f0: 65 78 74 28 29 29 3b 0d 0a 20 20 20 20 20 20 20  ext());..       
3200: 20 66 6f 72 28 76 61 72 20 6c 69 6e 65 49 78 3d   for(var lineIx=
3210: 30 3b 20 6c 69 6e 65 49 78 20 3c 20 6c 69 6e 65  0; lineIx < line
3220: 73 2e 6c 65 6e 67 74 68 3b 20 6c 69 6e 65 49 78  s.length; lineIx
3230: 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  ++)..        {..
3240: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
3250: 6c 69 6e 65 20 3d 20 6c 69 6e 65 73 5b 6c 69 6e  line = lines[lin
3260: 65 49 78 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20  eIx];..         
3270: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
3280: 20 2f 2f 20 d0 9f d1 80 d0 be d0 b2 d0 b5 d1 80   // ............
3290: d0 b8 d0 bc 2c 20 d0 bd d0 b5 20 d0 b2 d1 81 d1  ...., .... .....
32a0: 82 d1 80 d0 b5 d1 82 d0 b8 d0 bb d0 be d1 81 d1  ................
32b0: 8c 20 d0 bb d0 b8 20 d0 bd d0 b0 d1 87 d0 b0 d0  . .... .........
32c0: bb d0 be 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0  ... ............
32d0: 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76  ...            v
32e0: 61 72 20 6d 61 74 63 68 65 73 20 3d 20 6c 69 6e  ar matches = lin
32f0: 65 2e 6d 61 74 63 68 28 52 45 2e 4d 45 54 48 4f  e.match(RE.METHO
3300: 44 5f 53 54 41 52 54 29 3b 0d 0a 20 20 20 20 20  D_START);..     
3310: 20 20 20 20 20 20 20 69 66 20 28 6d 61 74 63 68         if (match
3320: 65 73 20 26 26 20 6d 61 74 63 68 65 73 2e 6c 65  es && matches.le
3330: 6e 67 74 68 29 0d 0a 20 20 20 20 20 20 20 20 20  ngth)..         
3340: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
3350: 20 20 20 20 20 20 63 75 72 4d 65 74 68 6f 64 20        curMethod 
3360: 3d 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  = {..           
3370: 20 20 20 20 20 20 20 20 20 27 4e 61 6d 65 27 20           'Name' 
3380: 20 20 20 20 20 3a 20 6d 61 74 63 68 65 73 5b 32       : matches[2
3390: 5d 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ],..            
33a0: 20 20 20 20 20 20 20 20 27 49 73 50 72 6f 63 27          'IsProc'
33b0: 20 20 20 20 3a 20 6d 61 74 63 68 65 73 5b 31 5d      : matches[1]
33c0: 2e 74 6f 4c 6f 77 65 72 43 61 73 65 28 29 20 3d  .toLowerCase() =
33d0: 3d 20 27 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1  = '.............
33e0: 83 d1 80 d0 b0 27 20 7c 7c 20 6d 61 74 63 68 65  .....' || matche
33f0: 73 5b 31 5d 2e 74 6f 4c 6f 77 65 72 43 61 73 65  s[1].toLowerCase
3400: 28 29 20 3d 3d 20 27 70 72 6f 63 65 64 75 72 65  () == 'procedure
3410: 27 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ',..            
3420: 20 20 20 20 20 20 20 20 27 53 74 61 72 74 4c 69          'StartLi
3430: 6e 65 27 20 3a 20 6c 69 6e 65 49 78 0d 0a 20 20  ne' : lineIx..  
3440: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
3450: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a  .            }..
3460: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
3470: 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 65            matche
3480: 73 20 3d 20 6c 69 6e 65 2e 6d 61 74 63 68 28 72  s = line.match(r
3490: 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  e);..           
34a0: 20 69 66 20 28 6d 61 74 63 68 65 73 20 26 26 20   if (matches && 
34b0: 6d 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 29 0d  matches.length).
34c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
34d0: 20 74 68 69 73 2e 61 64 64 53 65 61 72 63 68 52   this.addSearchR
34e0: 65 73 75 6c 74 28 64 6f 63 52 6f 77 2c 20 6c 69  esult(docRow, li
34f0: 6e 65 2c 20 6c 69 6e 65 49 78 20 2b 20 31 2c 20  ne, lineIx + 1, 
3500: 6d 61 74 63 68 65 73 2c 20 63 75 72 4d 65 74 68  matches, curMeth
3510: 6f 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  od);..          
3520: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
3530: 20 20 20 2f 2f 20 d0 9f d1 80 d0 be d0 b2 d0 b5     // ..........
3540: d1 80 d0 b8 d0 bc 2c 20 d0 bd d0 b5 20 d0 b2 d1  ......, .... ...
3550: 81 d1 82 d1 80 d0 b5 d1 82 d0 b8 d0 bb d1 81 d1  ................
3560: 8f 20 d0 bb d0 b8 20 d0 ba d0 be d0 bd d0 b5 d1  . .... .........
3570: 86 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e 0d  . ..............
3580: 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74  .            mat
3590: 63 68 65 73 20 3d 20 6c 69 6e 65 2e 6d 61 74 63  ches = line.matc
35a0: 68 28 52 45 2e 4d 45 54 48 4f 44 5f 45 4e 44 29  h(RE.METHOD_END)
35b0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69  ;..            i
35c0: 66 20 28 6d 61 74 63 68 65 73 20 26 26 20 6d 61  f (matches && ma
35d0: 74 63 68 65 73 2e 6c 65 6e 67 74 68 29 0d 0a 20  tches.length).. 
35e0: 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20             {..  
35f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75                cu
3600: 72 4d 65 74 68 6f 64 20 3d 20 7b 0d 0a 20 20 20  rMethod = {..   
3610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3620: 20 27 4e 61 6d 65 27 20 20 20 20 20 20 3a 20 27   'Name'      : '
3630: 3c d0 a2 d0 b5 d0 ba d1 81 d1 82 20 d0 b2 d0 bd  <.......... ....
3640: d0 b5 20 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1  .. .............
3650: 83 d1 80 20 d0 b8 20 d1 84 d1 83 d0 bd d0 ba d1  ... .. .........
3660: 86 d0 b8 d0 b9 3e 27 2c 0d 0a 20 20 20 20 20 20  .....>',..      
3670: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 49                'I
3680: 73 50 72 6f 63 27 20 20 20 20 3a 20 75 6e 64 65  sProc'    : unde
3690: 66 69 6e 65 64 2c 0d 0a 20 20 20 20 20 20 20 20  fined,..        
36a0: 20 20 20 20 20 20 20 20 20 20 20 20 27 53 74 61              'Sta
36b0: 72 74 4c 69 6e 65 27 20 3a 20 6c 69 6e 65 49 78  rtLine' : lineIx
36c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
36d0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
36e0: 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 20 20 20   }..        }   
36f0: 20 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20   ..        ..   
3700: 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f       if (this.fo
3710: 72 6d 2e 54 72 65 65 56 69 65 77 20 26 26 20 64  rm.TreeView && d
3720: 6f 63 52 6f 77 2e 52 6f 77 73 2e 43 6f 75 6e 74  ocRow.Rows.Count
3730: 28 29 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20  () > 0)..       
3740: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
3750: 76 61 72 20 6c 61 73 74 47 72 6f 75 70 20 3d 20  var lastGroup = 
3760: 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77  this.results.Row
3770: 73 2e 47 65 74 28 74 68 69 73 2e 72 65 73 75 6c  s.Get(this.resul
3780: 74 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 20  ts.Rows.Count() 
3790: 2d 20 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  - 1);..         
37a0: 20 20 20 69 66 20 28 6c 61 73 74 47 72 6f 75 70     if (lastGroup
37b0: 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 3d 20 27 3c  .FoundLine == '<
37c0: d0 a2 d0 b5 d0 ba d1 81 d1 82 20 d0 b2 d0 bd d0  .......... .....
37d0: b5 20 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83  . ..............
37e0: d1 80 20 d0 b8 20 d1 84 d1 83 d0 bd d0 ba d1 86  .. .. ..........
37f0: d0 b8 d0 b9 3e 27 29 0d 0a 20 20 20 20 20 20 20  ....>')..       
3800: 20 20 20 20 20 20 20 20 20 6c 61 73 74 47 72 6f           lastGro
3810: 75 70 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 20 22  up.FoundLine = "
3820: d0 a0 d0 b0 d0 b7 d0 b4 d0 b5 d0 bb 20 d0 be d1  ............ ...
3830: 81 d0 bd d0 be d0 b2 d0 bd d0 be d0 b9 20 d0 bf  ............. ..
3840: d1 80 d0 be d0 b3 d1 80 d0 b0 d0 bc d0 bc d1 8b  ................
3850: 22 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20  ";..        }.. 
3860: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
3870: 20 69 66 20 28 21 64 6f 63 52 6f 77 2e 52 6f 77   if (!docRow.Row
3880: 73 2e 43 6f 75 6e 74 28 29 29 0d 0a 20 20 20 20  s.Count())..    
3890: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
38a0: 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e     this.results.
38b0: 52 6f 77 73 2e 44 65 6c 65 74 65 28 64 6f 63 52  Rows.Delete(docR
38c0: 6f 77 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ow);..          
38d0: 20 20 64 6f 63 52 6f 77 20 3d 20 6e 75 6c 6c 3b    docRow = null;
38e0: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
38f0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 72       ..        r
3900: 65 74 75 72 6e 20 64 6f 63 52 6f 77 3b 0d 0a 20  eturn docRow;.. 
3910: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 73 68 6f     },....    sho
3920: 77 52 65 73 75 6c 74 3a 20 66 75 6e 63 74 69 6f  wResult: functio
3930: 6e 28 64 6f 63 52 6f 77 2c 20 66 72 6f 6d 48 6f  n(docRow, fromHo
3940: 74 4b 65 79 29 7b 0d 0a 20 20 20 20 20 20 20 20  tKey){..        
3950: 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77  this.results.Row
3960: 73 2e 53 6f 72 74 28 27 46 6f 75 6e 64 4c 69 6e  s.Sort('FoundLin
3970: 65 27 2c 20 66 61 6c 73 65 29 3b 0d 0a 20 20 20  e', false);..   
3980: 20 20 20 20 20 2f 2f 20 d0 97 d0 b0 d0 bf d0 be       // ........
3990: d0 bc d0 bd d0 b8 d0 bc 20 d1 81 d1 82 d1 80 d0  ........ .......
39a0: be d0 ba d1 83 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
39b0: d0 b0 20 d0 b2 20 d0 b8 d1 81 d1 82 d0 be d1 80  .. .. ..........
39c0: d0 b8 d0 b8 2e 0d 0a 20 20 20 20 20 20 20 20 74  .......        t
39d0: 68 69 73 2e 61 64 64 54 6f 48 69 73 74 6f 72 79  his.addToHistory
39e0: 28 74 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79  (this.form.Query
39f0: 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 66  );....        if
3a00: 20 28 66 72 6f 6d 48 6f 74 4b 65 79 20 3d 3d 20   (fromHotKey == 
3a10: 74 72 75 65 29 0d 0a 20 20 20 20 20 20 20 20 7b  true)..        {
3a20: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f   ..            /
3a30: 2f 20 d0 94 d0 bb d1 8f 20 d1 82 d0 be d0 b3 d0  / ...... .......
3a40: be 20 d1 87 d1 82 d0 be d0 b1 d1 8b 20 d0 ba d1  . .......... ...
3a50: 83 d1 80 d1 81 d0 be d1 80 20 d0 bd d0 b5 20 d0  ......... .... .
3a60: bf d1 80 d1 8b d0 b3 d0 b0 d0 bb 20 d0 bf d1 80  ........... ....
3a70: d0 b8 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b5 20  .. ............ 
3a80: d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b5 d0 b3 d0 be  ................
3a90: 20 d1 81 d0 bb d0 be d0 b2 d0 b0 2c 20 0d 0a 20   .........., .. 
3aa0: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d1 82             // ..
3ab0: d1 83 d1 82 20 d0 b1 d1 8b 20 d0 b5 d1 89 d0 b5  .... .... ......
3ac0: 20 d0 b4 d0 be d0 b1 d0 b0 d0 b2 d0 b8 d1 82 d1   ...............
3ad0: 8c 20 d1 87 d1 82 d0 be d0 b1 d1 8b 20 d0 b0 d0  . .......... ...
3ae0: ba d1 82 d0 b8 d0 b2 d0 b8 d0 b7 d0 b8 d1 80 d0  ................
3af0: be d0 b2 d0 b0 d0 bb d0 b0 d1 81 d1 8c 20 d0 b8  ............. ..
3b00: d0 bc d0 b5 d0 bd d0 bd d0 be 20 d1 82 d0 b5 d0  .......... .....
3b10: ba d1 83 d1 89 d0 b0 d1 8f 20 d1 81 d1 82 d1 80  ......... ......
3b20: d0 be d0 ba d0 b0 0d 0a 20 20 20 20 20 20 20 20  ........        
3b30: 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 4f 70      this.form.Op
3b40: 65 6e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  en();..         
3b50: 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 75 72     this.form.Cur
3b60: 72 65 6e 74 43 6f 6e 74 72 6f 6c 3d 74 68 69 73  rentControl=this
3b70: 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53  .form.Controls.S
3b80: 65 61 72 63 68 52 65 73 75 6c 74 73 3b 0d 0a 20  earchResults;.. 
3b90: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64             if (d
3ba0: 6f 63 52 6f 77 29 20 0d 0a 20 20 20 20 20 20 20  ocRow) ..       
3bb0: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
3bc0: 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 4c          var curL
3bd0: 69 6e 65 52 6f 77 20 3d 20 74 68 69 73 2e 67 65  ineRow = this.ge
3be0: 74 52 6f 77 46 6f 72 54 68 65 43 75 72 72 65 6e  tRowForTheCurren
3bf0: 74 4c 69 6e 65 28 64 6f 63 52 6f 77 29 3b 20 20  tLine(docRow);  
3c00: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3c10: 20 20 69 66 20 28 63 75 72 4c 69 6e 65 52 6f 77    if (curLineRow
3c20: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
3c30: 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d         this.form
3c40: 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68  .Controls.Search
3c50: 52 65 73 75 6c 74 73 2e 43 75 72 72 65 6e 74 52  Results.CurrentR
3c60: 6f 77 20 3d 20 63 75 72 4c 69 6e 65 52 6f 77 3b  ow = curLineRow;
3c70: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
3c80: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
3c90: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
3ca0: 65 6c 73 65 20 69 66 20 28 64 6f 63 52 6f 77 29  else if (docRow)
3cb0: 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20  ..        {..   
3cc0: 20 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69           if (thi
3cd0: 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 29  s.form.TreeView)
3ce0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3cf0: 20 20 74 68 69 73 2e 67 6f 54 6f 4c 69 6e 65 28    this.goToLine(
3d00: 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 47 65 74 28  docRow.Rows.Get(
3d10: 30 29 2e 52 6f 77 73 2e 47 65 74 28 30 29 29 3b  0).Rows.Get(0));
3d20: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c  ..            el
3d30: 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  se..            
3d40: 20 20 20 20 74 68 69 73 2e 67 6f 54 6f 4c 69 6e      this.goToLin
3d50: 65 28 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 47 65  e(docRow.Rows.Ge
3d60: 74 28 30 29 29 3b 20 20 20 20 20 20 20 20 0d 0a  t(0));        ..
3d70: 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20          }....   
3d80: 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73   },..    ..    s
3d90: 68 6f 77 53 65 61 72 63 68 52 65 73 75 6c 74 3a  howSearchResult:
3da0: 20 66 75 6e 63 74 69 6f 6e 20 28 64 6f 63 52 6f   function (docRo
3db0: 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29 20 7b  w, fromHotKey) {
3dc0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
3dd0: 20 20 20 20 74 68 69 73 2e 73 68 6f 77 52 65 73      this.showRes
3de0: 75 6c 74 28 64 6f 63 52 6f 77 2c 20 66 72 6f 6d  ult(docRow, from
3df0: 48 6f 74 4b 65 79 29 3b 0d 0a 20 20 20 20 20 20  HotKey);..      
3e00: 20 20 74 68 69 73 2e 65 78 70 61 6e 64 54 72 65    this.expandTre
3e10: 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  e();..        ..
3e20: 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73          if (this
3e30: 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 43 6f  .results.Rows.Co
3e40: 75 6e 74 28 29 20 3d 3d 20 30 29 20 0d 0a 20 20  unt() == 0) ..  
3e50: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
3e60: 20 20 20 20 20 44 6f 4d 65 73 73 61 67 65 42 6f       DoMessageBo
3e70: 78 28 27 d0 a1 d0 be d0 b2 d0 bf d0 b0 d0 b4 d0  x('.............
3e80: b5 d0 bd d0 b8 d0 b9 20 d0 bd d0 b5 20 d0 bd d0  ....... .... ...
3e90: b0 d0 b9 d0 b4 d0 b5 d0 bd d0 be 21 27 29 3b 0d  ...........!');.
3ea0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74  .            ret
3eb0: 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d  urn;..        }.
3ec0: 0a 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ...        this.
3ed0: 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62  SetControlsVisib
3ee0: 6c 65 28 29 3b 20 20 20 20 0d 0a 20 20 20 20 7d  le();    ..    }
3ef0: 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 67 65 74  ,..    ..    get
3f00: 52 6f 77 46 6f 72 54 68 65 43 75 72 72 65 6e 74  RowForTheCurrent
3f10: 4c 69 6e 65 3a 20 66 75 6e 63 74 69 6f 6e 28 64  Line: function(d
3f20: 6f 63 52 6f 77 29 20 7b 0d 0a 20 20 20 20 20 20  ocRow) {..      
3f30: 20 20 76 61 72 20 74 77 6e 64 20 3d 20 64 6f 63    var twnd = doc
3f40: 52 6f 77 2e 5f 6f 62 6a 65 63 74 2e 61 63 74 69  Row._object.acti
3f50: 76 61 74 65 28 29 3b 0d 0a 20 20 20 20 20 20 20  vate();..       
3f60: 20 72 65 74 75 72 6e 20 64 6f 63 52 6f 77 2e 52   return docRow.R
3f70: 6f 77 73 2e 46 69 6e 64 28 74 77 6e 64 2e 47 65  ows.Find(twnd.Ge
3f80: 74 43 61 72 65 74 50 6f 73 28 29 2e 62 65 67 69  tCaretPos().begi
3f90: 6e 52 6f 77 2c 20 22 4c 69 6e 65 4e 6f 22 2c 20  nRow, "LineNo", 
3fa0: 74 72 75 65 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  true);..    },..
3fb0: 0d 0a 20 20 20 20 67 65 74 47 72 6f 75 70 52 6f  ..    getGroupRo
3fc0: 77 3a 20 66 75 6e 63 74 69 6f 6e 20 28 64 6f 63  w: function (doc
3fd0: 52 6f 77 2c 20 6d 65 74 68 6f 64 44 61 74 61 29  Row, methodData)
3fe0: 20 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 66   {....        if
3ff0: 20 28 21 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65   (!this.form.Tre
4000: 65 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20 20  eView)..        
4010: 20 20 20 20 72 65 74 75 72 6e 20 64 6f 63 52 6f      return docRo
4020: 77 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61  w;....        va
4030: 72 20 67 72 6f 75 70 52 6f 77 20 3d 20 64 6f 63  r groupRow = doc
4040: 52 6f 77 2e 67 72 6f 75 70 73 43 61 63 68 65 2e  Row.groupsCache.
4050: 47 65 74 28 6d 65 74 68 6f 64 44 61 74 61 29 3b  Get(methodData);
4060: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 67  ..        if (!g
4070: 72 6f 75 70 52 6f 77 29 20 0d 0a 20 20 20 20 20  roupRow) ..     
4080: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
4090: 20 20 67 72 6f 75 70 52 6f 77 20 3d 20 64 6f 63    groupRow = doc
40a0: 52 6f 77 2e 52 6f 77 73 2e 41 64 64 28 29 3b 0d  Row.Rows.Add();.
40b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 72 6f  .            gro
40c0: 75 70 52 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 20  upRow.FoundLine 
40d0: 3d 20 6d 65 74 68 6f 64 44 61 74 61 2e 4e 61 6d  = methodData.Nam
40e0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e;..            
40f0: 67 72 6f 75 70 52 6f 77 2e 4d 65 74 68 6f 64 20  groupRow.Method 
4100: 3d 20 6d 65 74 68 6f 64 44 61 74 61 2e 4e 61 6d  = methodData.Nam
4110: 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e;..            
4120: 67 72 6f 75 70 52 6f 77 2e 5f 6f 62 6a 65 63 74  groupRow._object
4130: 20 3d 20 64 6f 63 52 6f 77 2e 5f 6f 62 6a 65 63   = docRow._objec
4140: 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  t;..            
4150: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
4160: 20 28 6d 65 74 68 6f 64 44 61 74 61 2e 49 73 50   (methodData.IsP
4170: 72 6f 63 20 21 3d 3d 20 75 6e 64 65 66 69 6e 65  roc !== undefine
4180: 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  d)..            
4190: 20 20 20 20 67 72 6f 75 70 52 6f 77 2e 52 6f 77      groupRow.Row
41a0: 54 79 70 65 20 3d 20 6d 65 74 68 6f 64 44 61 74  Type = methodDat
41b0: 61 2e 49 73 50 72 6f 63 20 3f 20 52 6f 77 54 79  a.IsProc ? RowTy
41c0: 70 65 73 2e 50 72 6f 63 47 72 6f 75 70 20 3a 20  pes.ProcGroup : 
41d0: 52 6f 77 54 79 70 65 73 2e 46 75 6e 63 47 72 6f  RowTypes.FuncGro
41e0: 75 70 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  up;..           
41f0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
4200: 20 20 20 67 72 6f 75 70 52 6f 77 2e 6c 69 6e 65     groupRow.line
4210: 4e 6f 20 3d 20 6d 65 74 68 6f 64 44 61 74 61 2e  No = methodData.
4220: 53 74 61 72 74 4c 69 6e 65 20 2b 20 31 3b 0d 0a  StartLine + 1;..
4230: 20 20 20 20 20 20 20 20 20 20 20 20 67 72 6f 75              grou
4240: 70 52 6f 77 2e 5f 6d 65 74 68 6f 64 20 3d 20 6d  pRow._method = m
4250: 65 74 68 6f 64 44 61 74 61 3b 0d 0a 20 20 20 20  ethodData;..    
4260: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
4270: 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 67 72 6f        docRow.gro
4280: 75 70 73 43 61 63 68 65 2e 49 6e 73 65 72 74 28  upsCache.Insert(
4290: 6d 65 74 68 6f 64 44 61 74 61 2c 20 67 72 6f 75  methodData, grou
42a0: 70 52 6f 77 29 3b 20 0d 0a 20 20 20 20 20 20 20  pRow); ..       
42b0: 20 7d 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75   }..        retu
42c0: 72 6e 20 67 72 6f 75 70 52 6f 77 3b 0d 0a 20 20  rn groupRow;..  
42d0: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20    },..    ..    
42e0: 61 64 64 53 65 61 72 63 68 52 65 73 75 6c 74 20  addSearchResult 
42f0: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 64 6f 63 52  : function (docR
4300: 6f 77 2c 20 6c 69 6e 65 2c 20 6c 69 6e 65 4e 6f  ow, line, lineNo
4310: 2c 20 6d 61 74 63 68 65 73 2c 20 6d 65 74 68 6f  , matches, metho
4320: 64 44 61 74 61 29 20 7b 0d 0a 0d 0a 20 20 20 20  dData) {....    
4330: 20 20 20 20 76 61 72 20 67 72 6f 75 70 52 6f 77      var groupRow
4340: 20 3d 20 74 68 69 73 2e 67 65 74 47 72 6f 75 70   = this.getGroup
4350: 52 6f 77 28 64 6f 63 52 6f 77 2c 20 6d 65 74 68  Row(docRow, meth
4360: 6f 64 44 61 74 61 29 3b 0d 0a 0d 0a 20 20 20 20  odData);....    
4370: 20 20 20 20 76 61 72 20 72 65 73 52 6f 77 20 3d      var resRow =
4380: 20 67 72 6f 75 70 52 6f 77 2e 52 6f 77 73 2e 41   groupRow.Rows.A
4390: 64 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 72  dd();..        r
43a0: 65 73 52 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 20  esRow.FoundLine 
43b0: 3d 20 6c 69 6e 65 3b 0d 0a 20 20 20 20 20 20 20  = line;..       
43c0: 20 72 65 73 52 6f 77 2e 6c 69 6e 65 4e 6f 20 3d   resRow.lineNo =
43d0: 20 6c 69 6e 65 4e 6f 3b 0d 0a 20 20 20 20 20 20   lineNo;..      
43e0: 20 20 72 65 73 52 6f 77 2e 5f 6f 62 6a 65 63 74    resRow._object
43f0: 20 3d 20 64 6f 63 52 6f 77 2e 5f 6f 62 6a 65 63   = docRow._objec
4400: 74 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  t;..        ..  
4410: 20 20 20 20 20 20 69 66 28 75 6e 64 65 66 69 6e        if(undefin
4420: 65 64 20 21 3d 20 6d 65 74 68 6f 64 44 61 74 61  ed != methodData
4430: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72  )..            r
4440: 65 73 52 6f 77 2e 4d 65 74 68 6f 64 20 3d 20 6d  esRow.Method = m
4450: 65 74 68 6f 64 44 61 74 61 2e 4e 61 6d 65 3b 0d  ethodData.Name;.
4460: 0a 0d 0a 20 20 20 20 20 20 20 20 72 65 73 52 6f  ...        resRo
4470: 77 2e 5f 6d 65 74 68 6f 64 20 3d 20 6d 65 74 68  w._method = meth
4480: 6f 64 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20  odData;..       
4490: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69       ..        i
44a0: 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f  f (this.form.Who
44b0: 6c 65 57 6f 72 64 73 29 0d 0a 20 20 20 20 20 20  leWords)..      
44c0: 20 20 20 20 20 20 72 65 73 52 6f 77 2e 45 78 61        resRow.Exa
44d0: 63 74 4d 61 74 63 68 20 3d 20 6d 61 74 63 68 65  ctMatch = matche
44e0: 73 5b 30 5d 2e 72 65 70 6c 61 63 65 28 2f 5e 5b  s[0].replace(/^[
44f0: 5e 5c 77 5c 64 d0 90 2d d1 8f 5d 2f 2c 20 27 27  ^\w\d..-..]/, ''
4500: 29 2e 72 65 70 6c 61 63 65 28 2f 5b 5e 5c 77 5c  ).replace(/[^\w\
4510: 64 d0 90 2d d1 8f 5d 24 2f 2c 20 27 27 29 3b 0d  d..-..]$/, '');.
4520: 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20  .        else.. 
4530: 20 20 20 20 20 20 20 20 20 20 20 72 65 73 52 6f             resRo
4540: 77 2e 45 78 61 63 74 4d 61 74 63 68 20 3d 20 6d  w.ExactMatch = m
4550: 61 74 63 68 65 73 5b 30 5d 3b 0d 0a 20 20 20 20  atches[0];..    
4560: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 67 6f  },..    ..    go
4570: 54 6f 4c 69 6e 65 20 3a 20 66 75 6e 63 74 69 6f  ToLine : functio
4580: 6e 20 28 72 6f 77 29 20 7b 0d 0a 0d 0a 20 20 20  n (row) {....   
4590: 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43       this.form.C
45a0: 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65  ontrols.SearchRe
45b0: 73 75 6c 74 73 2e 43 75 72 72 65 6e 74 52 6f 77  sults.CurrentRow
45c0: 20 3d 20 72 6f 77 3b 20 20 20 20 0d 0a 0d 0a 20   = row;    .... 
45d0: 20 20 20 20 20 20 20 2f 2f 20 d0 9e d1 82 d0 ba         // ......
45e0: d1 80 d0 be d0 b5 d0 bc 20 d0 b8 2f d0 b8 d0 bb  ........ ../....
45f0: d0 b8 20 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 b8 d1  .. .............
4600: 80 d1 83 d0 b5 d0 bc 20 d0 be d0 ba d0 bd d0 be  ....... ........
4610: 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 b0 2c   ..............,
4620: 20 d0 b2 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be   .. ............
4630: d0 bc 20 d0 b2 d1 8b d0 bf d0 be d0 bb d0 bd d1  .. .............
4640: 8f d0 bb d1 81 d1 8f 20 d0 bf d0 be d0 b8 d1 81  ....... ........
4650: d0 ba 2e 0d 0a 20 20 20 20 20 20 20 20 76 61 72  .....        var
4660: 20 74 61 72 67 65 74 57 69 6e 64 6f 77 20 3d 20   targetWindow = 
4670: 72 6f 77 2e 5f 6f 62 6a 65 63 74 2e 61 63 74 69  row._object.acti
4680: 76 61 74 65 28 29 3b 0d 0a 20 20 20 20 20 0d 0a  vate();..     ..
4690: 20 20 20 20 20 20 20 20 69 66 20 28 21 74 61 72          if (!tar
46a0: 67 65 74 57 69 6e 64 6f 77 2e 49 73 41 63 74 69  getWindow.IsActi
46b0: 76 65 28 29 29 0d 0a 20 20 20 20 20 20 20 20 7b  ve())..        {
46c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 6f  ..            Do
46d0: 4d 65 73 73 61 67 65 42 6f 78 28 22 d0 9e d0 ba  MessageBox("....
46e0: d0 bd d0 be 2c 20 d0 b4 d0 bb d1 8f 20 d0 ba d0  ...., ...... ...
46f0: be d1 82 d0 be d1 80 d0 be d0 b3 d0 be 20 d0 b2  ............. ..
4700: d1 8b d0 bf d0 be d0 bb d0 bd d1 8f d0 bb d1 81  ................
4710: d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba 2c 20 d0  .. .........., .
4720: b1 d1 8b d0 bb d0 be 20 d0 b7 d0 b0 d0 ba d1 80  ....... ........
4730: d1 8b d1 82 d0 be 21 5c 6e d0 9e d0 ba d0 bd d0  ......!\n.......
4740: be 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d1  . ............ .
4750: 81 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82  . ..............
4760: d0 b0 d1 82 d0 b0 d0 bc d0 b8 20 d1 81 d1 82 d0  .......... .....
4770: b0 d0 bb d0 be 20 d0 bd d0 b5 20 d0 b0 d0 ba d1  ..... .... .....
4780: 82 d1 83 d0 b0 d0 bb d1 8c d0 bd d0 be 20 d0 b8  ............. ..
4790: 20 d0 b1 d1 83 d0 b4 d0 b5 d1 82 20 d0 b7 d0 b0   .......... ....
47a0: d0 ba d1 80 d1 8b d1 82 d0 be 2e 22 29 3b 0d 0a  ...........");..
47b0: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
47c0: 2e 63 6c 65 61 72 53 65 61 72 63 68 52 65 73 75  .clearSearchResu
47d0: 6c 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  lts();..        
47e0: 20 20 20 20 74 68 69 73 2e 43 6c 6f 73 65 28 29      this.Close()
47f0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72  ;..            r
4800: 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20  eturn;..        
4810: 7d 0d 0a 20 20 20 20 20 0d 0a 20 20 20 20 20 20  }..     ..      
4820: 20 20 2f 2f 20 d0 9d d0 b0 d0 b9 d0 b4 d0 b5 d0    // ...........
4830: bc 20 d0 bf d0 be d0 b7 d0 b8 d1 86 d0 b8 d1 8e  . ..............
4840: 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd d0 bd d0   ...............
4850: be d0 b3 d0 be 20 d1 81 d0 bb d0 be d0 b2 d0 b0  ..... ..........
4860: 20 d0 b2 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b5   .. ............
4870: 2e 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 73  ...        var s
4880: 65 61 72 63 68 50 61 74 74 65 72 6e 20 3d 20 74  earchPattern = t
4890: 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f  his.form.WholeWo
48a0: 72 64 73 20 3f 20 22 28 3f 3a 5b 5e 5c 5c 77 5c  rds ? "(?:[^\\w\
48b0: 5c 64 d0 90 2d d1 8f 5d 7c 5e 29 22 20 2b 20 72  \d..-..]|^)" + r
48c0: 6f 77 2e 45 78 61 63 74 4d 61 74 63 68 20 2b 20  ow.ExactMatch + 
48d0: 22 28 5b 5e 5c 5c 77 5c 5c 64 d0 90 2d d1 8f 5d  "([^\\w\\d..-..]
48e0: 7c 24 29 22 20 3a 20 53 74 72 69 6e 67 55 74 69  |$)" : StringUti
48f0: 6c 73 2e 61 64 64 53 6c 61 73 68 65 73 28 72 6f  ls.addSlashes(ro
4900: 77 2e 45 78 61 63 74 4d 61 74 63 68 29 3b 20 0d  w.ExactMatch); .
4910: 0a 20 20 20 20 20 20 20 20 76 61 72 20 72 65 20  .        var re 
4920: 3d 20 6e 65 77 20 52 65 67 45 78 70 28 73 65 61  = new RegExp(sea
4930: 72 63 68 50 61 74 74 65 72 6e 2c 20 27 67 27 29  rchPattern, 'g')
4940: 3b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 6d  ;..        var m
4950: 61 74 63 68 65 73 20 3d 20 72 65 2e 65 78 65 63  atches = re.exec
4960: 28 72 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 29 3b  (row.FoundLine);
4970: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
4980: 63 6f 6c 4e 6f 20 3d 20 31 3b 20 20 20 20 0d 0a  colNo = 1;    ..
4990: 20 20 20 20 20 20 20 20 69 66 20 28 6d 61 74 63          if (matc
49a0: 68 65 73 29 20 0d 0a 20 20 20 20 20 20 20 20 7b  hes) ..        {
49b0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
49c0: 20 20 20 20 20 20 63 6f 6c 4e 6f 20 3d 20 72 65        colNo = re
49d0: 2e 6c 61 73 74 49 6e 64 65 78 20 2d 20 72 6f 77  .lastIndex - row
49e0: 2e 45 78 61 63 74 4d 61 74 63 68 2e 6c 65 6e 67  .ExactMatch.leng
49f0: 74 68 20 2b 20 31 3b 0d 0a 20 20 20 20 20 20 20  th + 1;..       
4a00: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
4a10: 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f 72 6d     if (this.form
4a20: 2e 57 68 6f 6c 65 57 6f 72 64 73 20 26 26 20 6d  .WholeWords && m
4a30: 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 20 3e 20  atches.length > 
4a40: 31 29 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  1)        ..    
4a50: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 4e              colN
4a60: 6f 20 2d 3d 20 6d 61 74 63 68 65 73 5b 31 5d 2e  o -= matches[1].
4a70: 6c 65 6e 67 74 68 3b 20 0d 0a 20 20 20 20 20 20  length; ..      
4a80: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
4a90: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a     }..        ..
4aa0: 20 20 20 20 20 20 20 20 2f 2f 20 d0 a3 d1 81 d1          // .....
4ab0: 82 d0 b0 d0 bd d0 be d0 b2 d0 b8 d0 bc 20 d0 b2  ............. ..
4ac0: d1 8b d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0 b8 d0 b5  ................
4ad0: 20 d0 bd d0 b0 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5   .... ..........
4ae0: d0 bd d0 bd d0 be d0 b5 20 d1 81 d0 be d0 b2 d0  ........ .......
4af0: bf d0 b0 d0 b4 d0 b5 d0 bd d0 b8 d0 b5 20 d1 81  ............. ..
4b00: d0 be 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 be d0  .. .............
4b10: b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d  . ..............
4b20: 0a 20 20 20 20 20 20 20 20 74 61 72 67 65 74 57  .        targetW
4b30: 69 6e 64 6f 77 2e 53 65 74 43 61 72 65 74 50 6f  indow.SetCaretPo
4b40: 73 28 72 6f 77 2e 4c 69 6e 65 4e 6f 2c 20 63 6f  s(row.LineNo, co
4b50: 6c 4e 6f 29 3b 0d 0a 20 20 20 20 20 20 20 20 74  lNo);..        t
4b60: 61 72 67 65 74 57 69 6e 64 6f 77 2e 53 65 74 53  argetWindow.SetS
4b70: 65 6c 65 63 74 69 6f 6e 28 72 6f 77 2e 4c 69 6e  election(row.Lin
4b80: 65 4e 6f 2c 20 63 6f 6c 4e 6f 2c 20 72 6f 77 2e  eNo, colNo, row.
4b90: 4c 69 6e 65 4e 6f 2c 20 63 6f 6c 4e 6f 20 2b 20  LineNo, colNo + 
4ba0: 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68 2e 6c  row.ExactMatch.l
4bb0: 65 6e 67 74 68 29 3b 0d 0a 20 20 20 20 7d 2c 0d  ength);..    },.
4bc0: 0a 0d 0a 20 20 20 20 6d 6f 76 65 52 6f 77 43 75  ...    moveRowCu
4bd0: 72 73 6f 72 20 3a 20 66 75 6e 63 74 69 6f 6e 20  rsor : function 
4be0: 28 66 6f 72 77 61 72 64 29 20 7b 0d 0a 20 20 20  (forward) {..   
4bf0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69       ..        i
4c00: 66 20 28 21 74 68 69 73 2e 72 65 73 75 6c 74 73  f (!this.results
4c10: 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 29 0d 0a  .Rows.Count())..
4c20: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
4c30: 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  rn;..           
4c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
4c50: 0a 20 20 20 20 20 20 20 20 76 61 72 20 72 6f 77  .        var row
4c60: 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e   = this.form.Con
4c70: 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73 75  trols.SearchResu
4c80: 6c 74 73 2e 43 75 72 72 65 6e 74 52 6f 77 3b 0d  lts.CurrentRow;.
4c90: 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  .        ..     
4ca0: 20 20 20 69 66 20 28 21 72 6f 77 29 0d 0a 20 20     if (!row)..  
4cb0: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
4cc0: 20 20 20 20 20 72 6f 77 20 3d 20 74 68 69 73 2e       row = this.
4cd0: 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 47 65 74  results.Rows.Get
4ce0: 28 30 29 2e 47 65 74 28 30 29 3b 0d 0a 20 20 20  (0).Get(0);..   
4cf0: 20 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69           if (thi
4d00: 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 29  s.form.TreeView)
4d10: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
4d20: 20 20 72 6f 77 20 3d 20 72 6f 77 2e 52 6f 77 73    row = row.Rows
4d30: 2e 47 65 74 28 30 29 3b 0d 0a 20 20 20 20 20 20  .Get(0);..      
4d40: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
4d50: 20 20 20 20 20 20 20 20 74 68 69 73 2e 67 6f 54          this.goT
4d60: 6f 4c 69 6e 65 28 72 6f 77 29 3b 20 20 20 20 0d  oLine(row);    .
4d70: 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74  .            ret
4d80: 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d  urn;..        }.
4d90: 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  .        ..     
4da0: 20 20 20 69 66 20 28 66 6f 72 77 61 72 64 29 20     if (forward) 
4db0: 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20  ..        {..   
4dc0: 20 20 20 20 20 20 20 20 20 69 66 20 28 72 6f 77           if (row
4dd0: 2e 52 6f 77 54 79 70 65 20 3d 3d 20 52 6f 77 54  .RowType == RowT
4de0: 79 70 65 73 2e 53 65 61 72 63 68 52 65 73 75 6c  ypes.SearchResul
4df0: 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  t)..            
4e00: 7b 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20  {    ..         
4e10: 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 72 6f         while (ro
4e20: 77 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  w)..            
4e30: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
4e40: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72             var r
4e50: 6f 77 73 20 3d 20 72 6f 77 2e 50 61 72 65 6e 74  ows = row.Parent
4e60: 20 3f 20 72 6f 77 2e 50 61 72 65 6e 74 2e 52 6f   ? row.Parent.Ro
4e70: 77 73 20 3a 20 74 68 69 73 2e 72 65 73 75 6c 74  ws : this.result
4e80: 73 2e 52 6f 77 73 3b 0d 0a 20 20 20 20 20 20 20  s.Rows;..       
4e90: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
4ea0: 20 69 6e 64 65 78 20 3d 20 72 6f 77 73 2e 49 6e   index = rows.In
4eb0: 64 65 78 4f 66 28 72 6f 77 29 3b 0d 0a 20 20 20  dexOf(row);..   
4ec0: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
4ed0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69                 i
4ee0: 66 20 28 69 6e 64 65 78 20 3c 20 72 6f 77 73 2e  f (index < rows.
4ef0: 43 6f 75 6e 74 28 29 20 2d 20 31 29 0d 0a 20 20  Count() - 1)..  
4f00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f10: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
4f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 77               row
4f30: 20 3d 20 72 6f 77 73 2e 47 65 74 28 69 6e 64 65   = rows.Get(inde
4f40: 78 20 2b 20 31 29 3b 0d 0a 20 20 20 20 20 20 20  x + 1);..       
4f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f60: 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20   break;..       
4f70: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
4f80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f90: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
4fa0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 72            if (!r
4fb0: 6f 77 2e 50 61 72 65 6e 74 29 0d 0a 20 20 20 20  ow.Parent)..    
4fc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4fd0: 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20      break;..    
4fe0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
4ff0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
5000: 20 20 20 20 20 72 6f 77 20 3d 20 72 6f 77 2e 50       row = row.P
5010: 61 72 65 6e 74 3b 20 20 20 20 20 20 20 20 20 20  arent;          
5020: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
5030: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
5040: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
5050: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
5060: 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28           while (
5070: 72 6f 77 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29  row.Rows.Count()
5080: 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20   > 0)..         
5090: 20 20 20 20 20 20 20 72 6f 77 20 3d 20 72 6f 77         row = row
50a0: 2e 52 6f 77 73 2e 47 65 74 28 30 29 3b 20 20 20  .Rows.Get(0);   
50b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
50c0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d       ..        }
50d0: 0d 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a  ..        else..
50e0: 20 20 20 20 20 20 20 20 7b 20 20 20 0d 0a 20 20          {   ..  
50f0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 72 6f            if (ro
5100: 77 2e 52 6f 77 54 79 70 65 20 3d 3d 20 52 6f 77  w.RowType == Row
5110: 54 79 70 65 73 2e 53 65 61 72 63 68 52 65 73 75  Types.SearchResu
5120: 6c 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  lt)..           
5130: 20 7b 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20   {    ..        
5140: 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 72          while (r
5150: 6f 77 29 20 0d 0a 20 20 20 20 20 20 20 20 20 20  ow) ..          
5160: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
5170: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
5180: 20 72 6f 77 73 20 3d 20 72 6f 77 2e 50 61 72 65   rows = row.Pare
5190: 6e 74 20 3f 20 72 6f 77 2e 50 61 72 65 6e 74 2e  nt ? row.Parent.
51a0: 52 6f 77 73 20 3a 20 74 68 69 73 2e 72 65 73 75  Rows : this.resu
51b0: 6c 74 73 2e 52 6f 77 73 3b 0d 0a 20 20 20 20 20  lts.Rows;..     
51c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
51d0: 61 72 20 69 6e 64 65 78 20 3d 20 72 6f 77 73 2e  ar index = rows.
51e0: 49 6e 64 65 78 4f 66 28 72 6f 77 29 3b 0d 0a 20  IndexOf(row);.. 
51f0: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
5200: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5210: 20 69 66 20 28 69 6e 64 65 78 20 3e 20 30 29 0d   if (index > 0).
5220: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
5230: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
5240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5250: 72 6f 77 20 3d 20 72 6f 77 73 2e 47 65 74 28 69  row = rows.Get(i
5260: 6e 64 65 78 20 2d 20 31 29 3b 0d 0a 20 20 20 20  ndex - 1);..    
5270: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5280: 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20      break;..    
5290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
52a0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
52b0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
52c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20               if 
52d0: 28 21 72 6f 77 2e 50 61 72 65 6e 74 29 0d 0a 20  (!row.Parent).. 
52e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
52f0: 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20         break;.. 
5300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5310: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
5320: 20 20 20 20 20 20 20 20 20 72 6f 77 20 3d 20 72           row = r
5330: 6f 77 2e 50 61 72 65 6e 74 3b 20 20 20 20 20 20  ow.Parent;      
5340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
5350: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5360: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
5370: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  }..            .
5380: 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69  .            whi
5390: 6c 65 20 28 72 6f 77 2e 52 6f 77 73 2e 43 6f 75  le (row.Rows.Cou
53a0: 6e 74 28 29 20 3e 20 30 29 0d 0a 20 20 20 20 20  nt() > 0)..     
53b0: 20 20 20 20 20 20 20 20 20 20 20 72 6f 77 20 3d             row =
53c0: 20 72 6f 77 2e 52 6f 77 73 2e 47 65 74 28 72 6f   row.Rows.Get(ro
53d0: 77 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 20 2d  w.Rows.Count() -
53e0: 20 31 29 3b 20 20 20 20 20 20 20 20 20 20 20 20   1);            
53f0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
5400: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
5410: 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e   ..        this.
5420: 67 6f 54 6f 4c 69 6e 65 28 72 6f 77 29 3b 0d 0a  goToLine(row);..
5430: 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20      },..    ..  
5440: 20 20 63 6c 65 61 72 53 65 61 72 63 68 52 65 73    clearSearchRes
5450: 75 6c 74 73 20 3a 20 66 75 6e 63 74 69 6f 6e 20  ults : function 
5460: 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68  () {..        th
5470: 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e  is.results.Rows.
5480: 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 7d 2c  Clear();..    },
5490: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73 65 74 44  ..    ..    setD
54a0: 65 66 61 75 6c 74 53 65 61 72 63 68 51 75 65 72  efaultSearchQuer
54b0: 79 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20  y : function () 
54c0: 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  {..        this.
54d0: 66 6f 72 6d 2e 43 75 72 72 65 6e 74 43 6f 6e 74  form.CurrentCont
54e0: 72 6f 6c 3d 74 68 69 73 2e 66 6f 72 6d 2e 43 6f  rol=this.form.Co
54f0: 6e 74 72 6f 6c 73 2e 51 75 65 72 79 3b 0d 0a 20  ntrols.Query;.. 
5500: 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20     },..    ..   
5510: 20 61 64 64 54 6f 48 69 73 74 6f 72 79 20 3a 20   addToHistory : 
5520: 66 75 6e 63 74 69 6f 6e 20 28 71 75 65 72 79 29  function (query)
5530: 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20   {..        ..  
5540: 20 20 20 20 20 20 69 66 20 28 21 71 75 65 72 79        if (!query
5550: 29 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) ..            
5560: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20  return;..       
5570: 20 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 94   ..        // ..
5580: d0 be d0 b1 d0 b0 d0 b2 d0 bb d1 8f d0 b5 d0 bc  ................
5590: 20 d0 b2 20 d0 b8 d1 81 d1 82 d0 be d1 80 d0 b8   .. ............
55a0: d1 8e 20 d1 82 d0 be d0 bb d1 8c d0 ba d0 be 20  .. ............ 
55b0: d0 b5 d1 81 d0 bb d0 b8 20 d1 82 d0 b0 d0 ba d0  ........ .......
55c0: be d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 be  ... ............
55d0: d0 b2 d0 be d0 b9 20 d1 81 d1 82 d1 80 d0 be d0  ...... .........
55e0: ba d0 b8 20 d1 82 d0 b0 d0 bc 20 d0 bd d0 b5 d1  ... ...... .....
55f0: 82 2e 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
5600: 68 69 73 74 6f 72 79 20 3d 20 74 68 69 73 2e 66  history = this.f
5610: 6f 72 6d 2e 53 65 61 72 63 68 48 69 73 74 6f 72  orm.SearchHistor
5620: 79 3b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28  y;..        if (
5630: 68 69 73 74 6f 72 79 2e 46 69 6e 64 42 79 56 61  history.FindByVa
5640: 6c 75 65 28 71 75 65 72 79 29 29 0d 0a 20 20 20  lue(query))..   
5650: 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b           return;
5660: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a  ..            ..
5670: 20 20 20 20 20 20 20 20 69 66 20 28 68 69 73 74          if (hist
5680: 6f 72 79 2e 43 6f 75 6e 74 28 29 29 0d 0a 20 20  ory.Count())..  
5690: 20 20 20 20 20 20 20 20 20 20 68 69 73 74 6f 72            histor
56a0: 79 2e 49 6e 73 65 72 74 28 30 2c 20 71 75 65 72  y.Insert(0, quer
56b0: 79 29 3b 0d 0a 20 20 20 20 20 20 20 20 65 6c 73  y);..        els
56c0: 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 68  e..            h
56d0: 69 73 74 6f 72 79 2e 41 64 64 28 71 75 65 72 79  istory.Add(query
56e0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 0d  );..           .
56f0: 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 9d d0 b5  .        // ....
5700: 20 d0 bf d0 be d0 b7 d0 b2 d0 be d0 bb d1 8f d0   ...............
5710: b5 d0 bc 20 d0 b8 d1 81 d1 82 d0 be d1 80 d0 b8  ... ............
5720: d0 b8 20 d1 80 d0 b0 d1 81 d1 82 d0 b8 20 d0 b1  .. .......... ..
5730: d0 be d0 bb d0 b5 d0 b5 20 d0 b7 d0 b0 d0 b4 d0  ........ .......
5740: b0 d0 bd d0 bd d0 be d0 b9 20 d0 b3 d0 bb d1 83  ......... ......
5750: d0 b1 d0 b8 d0 bd d1 8b 2e 0d 0a 20 20 20 20 20  ...........     
5760: 20 20 20 77 68 69 6c 65 20 28 68 69 73 74 6f 72     while (histor
5770: 79 2e 43 6f 75 6e 74 28 29 20 3e 20 74 68 69 73  y.Count() > this
5780: 2e 66 6f 72 6d 2e 48 69 73 74 6f 72 79 44 65 70  .form.HistoryDep
5790: 74 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  th)..           
57a0: 20 68 69 73 74 6f 72 79 2e 44 65 6c 65 74 65 28   history.Delete(
57b0: 68 69 73 74 6f 72 79 2e 43 6f 75 6e 74 28 29 20  history.Count() 
57c0: 2d 20 31 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20  - 1);..    },.. 
57d0: 20 20 20 0d 0a 20 20 20 20 67 65 74 52 65 67 45     ..    getRegE
57e0: 78 70 45 64 69 74 6f 72 53 63 72 69 70 74 50 61  xpEditorScriptPa
57f0: 74 68 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29  th : function ()
5800: 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20   {..        var 
5810: 6d 61 69 6e 46 6f 6c 64 65 72 20 3d 20 70 72 6f  mainFolder = pro
5820: 66 69 6c 65 52 6f 6f 74 2e 67 65 74 56 61 6c 75  fileRoot.getValu
5830: 65 28 22 53 6e 65 67 6f 70 61 74 2f 4d 61 69 6e  e("Snegopat/Main
5840: 46 6f 6c 64 65 72 22 29 3b 0d 0a 20 20 20 20 20  Folder");..     
5850: 20 20 20 76 61 72 20 73 63 72 69 70 74 50 61 74     var scriptPat
5860: 68 20 3d 20 6d 61 69 6e 46 6f 6c 64 65 72 20 2b  h = mainFolder +
5870: 20 22 73 63 72 69 70 74 73 5c 5c 52 65 67 45 78   "scripts\\RegEx
5880: 70 45 64 69 74 6f 72 2e 6a 73 22 3b 0d 0a 20 20  pEditor.js";..  
5890: 20 20 20 20 20 20 76 61 72 20 66 20 3d 20 76 38        var f = v8
58a0: 4e 65 77 28 27 46 69 6c 65 27 2c 20 73 63 72 69  New('File', scri
58b0: 70 74 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20  ptPath);..      
58c0: 20 20 69 66 20 28 66 2e 45 78 69 73 74 28 29 29    if (f.Exist())
58d0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65  ..            re
58e0: 74 75 72 6e 20 73 63 72 69 70 74 50 61 74 68 3b  turn scriptPath;
58f0: 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e  ..        return
5900: 20 27 27 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20   '';..    },..  
5910: 20 20 0d 0a 20 20 20 20 46 6f 72 6d 5f 4f 6e 4f    ..    Form_OnO
5920: 70 65 6e 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  pen : function (
5930: 29 20 7b 20 20 20 0d 0a 20 20 20 20 20 20 20 20  ) {   ..        
5940: 69 66 20 28 21 74 68 69 73 2e 67 65 74 52 65 67  if (!this.getReg
5950: 45 78 70 45 64 69 74 6f 72 53 63 72 69 70 74 50  ExpEditorScriptP
5960: 61 74 68 28 29 29 0d 0a 20 20 20 20 20 20 20 20  ath())..        
5970: 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f      this.form.Co
5980: 6e 74 72 6f 6c 73 2e 51 75 65 72 79 2e 43 68 6f  ntrols.Query.Cho
5990: 69 63 65 42 75 74 74 6f 6e 20 3d 20 66 61 6c 73  iceButton = fals
59a0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  e;..        ..  
59b0: 20 20 20 20 20 20 74 68 69 73 2e 53 65 74 43 6f        this.SetCo
59c0: 6e 74 72 6f 6c 73 56 69 73 69 62 6c 65 28 29 3b  ntrolsVisible();
59d0: 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20  ..    },....    
59e0: 46 6f 72 6d 5f 4f 6e 43 6c 6f 73 65 20 3a 20 66  Form_OnClose : f
59f0: 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20  unction () {..  
5a00: 20 20 20 20 20 20 74 68 69 73 2e 73 61 76 65 53        this.saveS
5a10: 65 74 74 69 6e 67 73 28 29 3b 0d 0a 20 20 20 20  ettings();..    
5a20: 7d 2c 0d 0a 0d 0a 20 20 20 20 43 6d 64 42 61 72  },....    CmdBar
5a30: 5f 42 74 50 72 65 76 20 3a 20 66 75 6e 63 74 69  _BtPrev : functi
5a40: 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a  on (control) {..
5a50: 20 20 20 20 20 20 20 20 74 68 69 73 2e 6d 6f 76          this.mov
5a60: 65 52 6f 77 43 75 72 73 6f 72 28 66 61 6c 73 65  eRowCursor(false
5a70: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20  );..    },....  
5a80: 20 20 43 6d 64 42 61 72 5f 42 74 4e 65 78 74 20    CmdBar_BtNext 
5a90: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 74  : function (cont
5aa0: 72 6f 6c 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  rol) {..        
5ab0: 74 68 69 73 2e 6d 6f 76 65 52 6f 77 43 75 72 73  this.moveRowCurs
5ac0: 6f 72 28 74 72 75 65 29 3b 0d 0a 20 20 20 20 7d  or(true);..    }
5ad0: 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 51 75 65  ,..    ..    Que
5ae0: 72 79 5f 4f 6e 43 68 61 6e 67 65 20 3a 20 66 75  ry_OnChange : fu
5af0: 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29  nction (control)
5b00: 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28   {..        if (
5b10: 74 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79 20  this.form.Query 
5b20: 21 3d 20 27 27 29 0d 0a 20 20 20 20 20 20 20 20  != '')..        
5b30: 20 20 20 20 20 20 20 20 74 68 69 73 2e 73 65 61          this.sea
5b40: 72 63 68 41 63 74 69 76 65 44 6f 63 28 29 3b 0d  rchActiveDoc();.
5b50: 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 51  .    },....    Q
5b60: 75 65 72 79 5f 53 74 61 72 74 4c 69 73 74 43 68  uery_StartListCh
5b70: 6f 69 63 65 20 3a 20 66 75 6e 63 74 69 6f 6e 20  oice : function 
5b80: 28 63 6f 6e 74 72 6f 6c 2c 20 64 65 66 61 75 6c  (control, defaul
5b90: 74 48 61 6e 64 6c 65 72 29 20 7b 0d 0a 20 20 20  tHandler) {..   
5ba0: 20 20 20 20 20 63 6f 6e 74 72 6f 6c 2e 76 61 6c       control.val
5bb0: 2e 43 68 6f 69 63 65 4c 69 73 74 20 3d 20 74 68  .ChoiceList = th
5bc0: 69 73 2e 66 6f 72 6d 2e 53 65 61 72 63 68 48 69  is.form.SearchHi
5bd0: 73 74 6f 72 79 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  story;..    },..
5be0: 0d 0a 20 20 20 20 42 74 53 65 61 72 63 68 5f 43  ..    BtSearch_C
5bf0: 6c 69 63 6b 20 3a 20 66 75 6e 63 74 69 6f 6e 20  lick : function 
5c00: 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 0d 0a 20  (control) {.... 
5c10: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
5c20: 66 6f 72 6d 2e 51 75 65 72 79 20 3d 3d 20 27 27  form.Query == ''
5c30: 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  )..        {..  
5c40: 20 20 20 20 20 20 20 20 20 20 44 6f 4d 65 73 73            DoMess
5c50: 61 67 65 42 6f 78 28 27 d0 9d d0 b5 20 d0 b7 d0  ageBox('.... ...
5c60: b0 d0 b4 d0 b0 d0 bd d0 b0 20 d1 81 d1 82 d1 80  ......... ......
5c70: d0 be d0 ba d0 b0 20 d0 bf d0 be d0 b8 d1 81 d0  ...... .........
5c80: ba d0 b0 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  ...');..        
5c90: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
5ca0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
5cb0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 73  ..        this.s
5cc0: 65 61 72 63 68 41 63 74 69 76 65 44 6f 63 28 29  earchActiveDoc()
5cd0: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20  ;..    },....   
5ce0: 20 43 6d 64 42 61 72 4f 70 74 69 6f 6e 73 5f 42   CmdBarOptions_B
5cf0: 74 41 62 6f 75 74 20 3a 20 66 75 6e 63 74 69 6f  tAbout : functio
5d00: 6e 20 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 20  n (control) {.. 
5d10: 20 20 20 20 20 20 20 52 75 6e 41 70 70 28 27 68         RunApp('h
5d20: 74 74 70 3a 2f 2f 73 6e 65 67 6f 70 61 74 2e 72  ttp://snegopat.r
5d30: 75 2f 73 63 72 69 70 74 73 2f 77 69 6b 69 3f 6e  u/scripts/wiki?n
5d40: 61 6d 65 3d 65 78 74 53 65 61 72 63 68 2e 6a 73  ame=extSearch.js
5d50: 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20  ');..    },.... 
5d60: 20 20 20 53 65 61 72 63 68 52 65 73 75 6c 74 73     SearchResults
5d70: 5f 53 65 6c 65 63 74 69 6f 6e 20 3a 20 66 75 6e  _Selection : fun
5d80: 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 2c 20  ction (control, 
5d90: 73 65 6c 65 63 74 65 64 52 6f 77 2c 20 73 65 6c  selectedRow, sel
5da0: 65 63 74 65 64 43 6f 6c 2c 20 64 65 66 61 75 6c  ectedCol, defaul
5db0: 74 48 61 6e 64 6c 65 72 29 20 7b 0d 0a 20 20 20  tHandler) {..   
5dc0: 20 20 20 20 20 74 68 69 73 2e 67 6f 54 6f 4c 69       this.goToLi
5dd0: 6e 65 28 73 65 6c 65 63 74 65 64 52 6f 77 2e 76  ne(selectedRow.v
5de0: 61 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 64 65  al);..        de
5df0: 66 61 75 6c 74 48 61 6e 64 6c 65 72 2e 76 61 6c  faultHandler.val
5e00: 20 3d 20 66 61 6c 73 65 3b 20 2f 2f 20 d0 ad d1   = false; // ...
5e10: 82 d0 be 20 d0 b4 d0 bb d1 8f 20 d1 82 d0 be d0  ... ...... .....
5e20: b3 d0 be 20 d1 87 d1 82 d0 be d0 b1 d1 8b 20 d0  ... .......... .
5e30: bf d0 be d1 81 d0 bb d0 b5 20 d0 bd d0 b0 d0 b6  ......... ......
5e40: d0 b0 d1 82 d0 b8 d1 8f 20 d0 bd d0 b0 20 d1 81  ........ .... ..
5e50: d1 82 d1 80 d0 be d0 ba d1 83 20 d0 ba d1 83 d1  .......... .....
5e60: 80 d1 81 d0 be d1 80 20 d0 bd d0 b5 20 d1 83 d1  ....... .... ...
5e70: 85 d0 be d0 b4 d0 b8 d1 82 20 d1 81 20 d1 82 d0  ......... .. ...
5e80: b0 d0 b1 d0 bb d0 b8 d1 87 d0 bd d0 be d0 b3 d0  ................
5e90: be 20 d0 bf d0 be d0 bb d1 8f 2c 20 d0 b8 20 d0  . ........, .. .
5ea0: bf d1 80 d0 b8 20 d0 bd d0 be d0 b2 d0 be d0 b9  ..... ..........
5eb0: 20 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 b8 d0 b7 d0   ...............
5ec0: b0 d1 86 d0 b8 d0 b8 20 d1 84 d0 be d1 80 d0 bc  ....... ........
5ed0: d1 8b 20 d0 bc d0 be d0 b6 d0 bd d0 be 20 d0 b1  .. .......... ..
5ee0: d1 8b d0 bb d0 be 20 d0 ba d1 83 d1 80 d1 81 d0  ...... .........
5ef0: be d1 80 d0 be d0 bc 20 d0 bf d0 be d1 81 d0 bc  ....... ........
5f00: d0 be d1 82 d1 80 d0 b5 d1 82 d1 8c 20 d0 b4 d1  ............ ...
5f10: 80 d1 83 d0 b3 d0 b8 d0 b5 20 d0 b7 d0 bd d0 b0  ......... ......
5f20: d1 87 d0 b5 d0 bd d0 b8 d1 8f 0d 0a 20 20 20 20  ............    
5f30: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 62 65  },..    ..    be
5f40: 66 6f 72 65 45 78 69 74 41 70 70 20 3a 20 66 75  foreExitApp : fu
5f50: 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20  nction () {..   
5f60: 20 20 20 20 20 74 68 69 73 2e 77 61 74 63 68 65       this.watche
5f70: 72 2e 73 74 6f 70 57 61 74 63 68 28 29 3b 0d 0a  r.stopWatch();..
5f80: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 49 73      },....    Is
5f90: 52 65 67 45 78 70 5f 4f 6e 43 68 61 6e 67 65 20  RegExp_OnChange 
5fa0: 3a 20 66 75 6e 63 74 69 6f 6e 28 d0 ad d0 bb d0  : function(.....
5fb0: b5 d0 bc d0 b5 d0 bd d1 82 29 20 7b 0d 0a 20 20  .........) {..  
5fc0: 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 66        if (this.f
5fd0: 6f 72 6d 2e 49 73 52 65 67 45 78 70 29 0d 0a 20  orm.IsRegExp).. 
5fe0: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
5ff0: 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f 72 64 73 20  form.WholeWords 
6000: 3d 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20  = false;....    
6010: 20 20 20 20 74 68 69 73 2e 53 65 74 43 6f 6e 74      this.SetCont
6020: 72 6f 6c 73 56 69 73 69 62 6c 65 28 29 0d 0a 20  rolsVisible().. 
6030: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 57 68 6f     },....    Who
6040: 6c 65 57 6f 72 64 73 5f 4f 6e 43 68 61 6e 67 65  leWords_OnChange
6050: 20 3a 20 66 75 6e 63 74 69 6f 6e 28 d0 ad d0 bb   : function(....
6060: d0 b5 d0 bc d0 b5 d0 bd d1 82 29 20 7b 0d 0a 20  ..........) {.. 
6070: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
6080: 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f 72 64 73 29  form.WholeWords)
6090: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68  ..            th
60a0: 69 73 2e 66 6f 72 6d 2e 49 73 52 65 67 45 78 70  is.form.IsRegExp
60b0: 20 3d 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20   = false;....   
60c0: 20 20 20 20 20 74 68 69 73 2e 53 65 74 43 6f 6e       this.SetCon
60d0: 74 72 6f 6c 73 56 69 73 69 62 6c 65 28 29 3b 0d  trolsVisible();.
60e0: 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20  .    },..    .. 
60f0: 20 20 20 51 75 65 72 79 5f 53 74 61 72 74 43 68     Query_StartCh
6100: 6f 69 63 65 20 3a 20 66 75 6e 63 74 69 6f 6e 20  oice : function 
6110: 28 43 6f 6e 74 72 6f 6c 2c 20 44 65 66 61 75 6c  (Control, Defaul
6120: 74 48 61 6e 64 6c 65 72 29 20 7b 0d 0a 20 20 20  tHandler) {..   
6130: 20 20 20 20 20 76 61 72 20 72 65 45 64 69 74 6f       var reEdito
6140: 72 50 61 74 68 20 3d 20 74 68 69 73 2e 67 65 74  rPath = this.get
6150: 52 65 67 45 78 70 45 64 69 74 6f 72 53 63 72 69  RegExpEditorScri
6160: 70 74 50 61 74 68 28 29 3b 0d 0a 20 20 20 20 20  ptPath();..     
6170: 20 20 20 69 66 20 28 72 65 45 64 69 74 6f 72 50     if (reEditorP
6180: 61 74 68 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d  ath)..        {.
6190: 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 66  .            Def
61a0: 61 75 6c 74 48 61 6e 64 6c 65 72 2e 76 61 6c 20  aultHandler.val 
61b0: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20  = false;..      
61c0: 20 20 20 20 20 20 72 65 45 64 69 74 6f 72 41 64        reEditorAd
61d0: 64 69 6e 20 3d 20 73 74 64 6c 69 62 2e 72 65 71  din = stdlib.req
61e0: 75 69 72 65 28 72 65 45 64 69 74 6f 72 50 61 74  uire(reEditorPat
61f0: 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  h);..           
6200: 20 69 66 20 28 72 65 45 64 69 74 6f 72 41 64 64   if (reEditorAdd
6210: 69 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  in)..           
6220: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
6230: 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 49 73      this.form.Is
6240: 52 65 67 45 78 70 20 3d 20 74 72 75 65 3b 0d 0a  RegExp = true;..
6250: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6260: 76 61 72 20 72 65 45 64 69 74 6f 72 20 3d 20 72  var reEditor = r
6270: 65 45 64 69 74 6f 72 41 64 64 69 6e 2e 43 72 65  eEditorAddin.Cre
6280: 61 74 65 52 65 67 45 78 70 45 64 69 74 6f 72 28  ateRegExpEditor(
6290: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
62a0: 20 20 20 20 72 65 45 64 69 74 6f 72 2e 6f 70 65      reEditor.ope
62b0: 6e 28 43 6f 6e 74 72 6f 6c 2e 76 61 6c 29 3b 0d  n(Control.val);.
62c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 20  .            }  
62d0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
62e0: 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d  }..    },..    .
62f0: 0a 20 20 20 20 53 65 61 72 63 68 52 65 73 75 6c  .    SearchResul
6300: 74 73 5f 4f 6e 52 6f 77 4f 75 74 70 75 74 20 3a  ts_OnRowOutput :
6310: 20 66 75 6e 63 74 69 6f 6e 20 28 43 6f 6e 74 72   function (Contr
6320: 6f 6c 2c 20 52 6f 77 41 70 70 65 61 72 61 6e 63  ol, RowAppearanc
6330: 65 2c 20 52 6f 77 44 61 74 61 29 20 7b 0d 0a 20  e, RowData) {.. 
6340: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
6350: 20 76 61 72 20 63 65 6c 6c 20 3d 20 52 6f 77 41   var cell = RowA
6360: 70 70 65 61 72 61 6e 63 65 2e 76 61 6c 2e 43 65  ppearance.val.Ce
6370: 6c 6c 73 2e 46 6f 75 6e 64 4c 69 6e 65 3b 0d 0a  lls.FoundLine;..
6380: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
6390: 20 20 73 77 69 74 63 68 20 28 52 6f 77 44 61 74    switch (RowDat
63a0: 61 2e 76 61 6c 2e 52 6f 77 54 79 70 65 29 0d 0a  a.val.RowType)..
63b0: 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20          {..     
63c0: 20 20 20 63 61 73 65 20 52 6f 77 54 79 70 65 73     case RowTypes
63d0: 2e 46 75 6e 63 47 72 6f 75 70 3a 0d 0a 20 20 20  .FuncGroup:..   
63e0: 20 20 20 20 20 20 20 20 20 63 65 6c 6c 2e 53 65           cell.Se
63f0: 74 50 69 63 74 75 72 65 28 74 68 69 73 2e 49 63  tPicture(this.Ic
6400: 6f 6e 73 2e 46 75 6e 63 29 3b 0d 0a 20 20 20 20  ons.Func);..    
6410: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
6420: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
6430: 20 20 63 61 73 65 20 52 6f 77 54 79 70 65 73 2e    case RowTypes.
6440: 50 72 6f 63 47 72 6f 75 70 3a 0d 0a 20 20 20 20  ProcGroup:..    
6450: 20 20 20 20 20 20 20 20 63 65 6c 6c 2e 53 65 74          cell.Set
6460: 50 69 63 74 75 72 65 28 74 68 69 73 2e 49 63 6f  Picture(this.Ico
6470: 6e 73 2e 50 72 6f 63 29 3b 0d 0a 20 20 20 20 20  ns.Proc);..     
6480: 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d         break;...
6490: 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 52 6f  .        case Ro
64a0: 77 54 79 70 65 73 2e 53 65 61 72 63 68 44 6f 63  wTypes.SearchDoc
64b0: 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 52  :..            R
64c0: 6f 77 41 70 70 65 61 72 61 6e 63 65 2e 76 61 6c  owAppearance.val
64d0: 2e 43 65 6c 6c 73 2e 4c 69 6e 65 4e 6f 2e 53 65  .Cells.LineNo.Se
64e0: 74 54 65 78 74 28 27 27 29 3b 0d 0a 20 20 20 20  tText('');..    
64f0: 20 20 20 20 20 20 20 20 52 6f 77 41 70 70 65 61          RowAppea
6500: 72 61 6e 63 65 2e 76 61 6c 2e 46 6f 6e 74 20 3d  rance.val.Font =
6510: 20 74 68 69 73 2e 53 65 61 72 63 68 44 6f 63 52   this.SearchDocR
6520: 6f 77 46 6f 6e 74 3b 0d 0a 20 20 20 20 20 20 20  owFont;..       
6530: 20 20 20 20 20 52 6f 77 41 70 70 65 61 72 61 6e       RowAppearan
6540: 63 65 2e 76 61 6c 2e 54 65 78 74 43 6f 6c 6f 72  ce.val.TextColor
6550: 20 3d 20 57 65 62 43 6f 6c 6f 72 73 2e 44 61 72   = WebColors.Dar
6560: 6b 42 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20  kBlue;..        
6570: 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20      break;..    
6580: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
6590: 20 20 64 65 66 61 75 6c 74 3a 0d 0a 20 20 20 20    default:..    
65a0: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
65b0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
65c0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20     ..        if 
65d0: 28 52 6f 77 44 61 74 61 2e 76 61 6c 2e 5f 6d 65  (RowData.val._me
65e0: 74 68 6f 64 20 26 26 20 52 6f 77 44 61 74 61 2e  thod && RowData.
65f0: 76 61 6c 2e 5f 6d 65 74 68 6f 64 2e 49 73 50 72  val._method.IsPr
6600: 6f 63 20 21 3d 3d 20 75 6e 64 65 66 69 6e 65 64  oc !== undefined
6610: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 52  )..            R
6620: 6f 77 41 70 70 65 61 72 61 6e 63 65 2e 76 61 6c  owAppearance.val
6630: 2e 43 65 6c 6c 73 2e 4d 65 74 68 6f 64 2e 53 65  .Cells.Method.Se
6640: 74 50 69 63 74 75 72 65 28 52 6f 77 44 61 74 61  tPicture(RowData
6650: 2e 76 61 6c 2e 5f 6d 65 74 68 6f 64 2e 49 73 50  .val._method.IsP
6660: 72 6f 63 20 3f 20 74 68 69 73 2e 49 63 6f 6e 73  roc ? this.Icons
6670: 2e 50 72 6f 63 20 3a 20 74 68 69 73 2e 49 63 6f  .Proc : this.Ico
6680: 6e 73 2e 46 75 6e 63 29 3b 0d 0a 20 20 20 20 20  ns.Func);..     
6690: 20 20 20 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20     ..    },..   
66a0: 20 0d 0a 20 20 20 20 73 77 69 74 63 68 56 69 65   ..    switchVie
66b0: 77 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 73 65  w : function (se
66c0: 74 54 72 65 65 56 69 65 77 29 20 7b 0d 0a 20 20  tTreeView) {..  
66d0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
66e0: 76 61 72 20 72 65 73 75 6c 74 73 20 3d 20 74 68  var results = th
66f0: 69 73 2e 72 65 73 75 6c 74 73 2e 43 6f 70 79 28  is.results.Copy(
6700: 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  );..        ..  
6710: 20 20 20 20 20 20 74 68 69 73 2e 63 6c 65 61 72        this.clear
6720: 53 65 61 72 63 68 52 65 73 75 6c 74 73 28 29 3b  SearchResults();
6730: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
6740: 20 20 20 20 66 6f 72 20 28 76 61 72 20 64 6f 63      for (var doc
6750: 52 6f 77 49 78 20 3d 20 30 3b 20 64 6f 63 52 6f  RowIx = 0; docRo
6760: 77 49 78 20 3c 20 72 65 73 75 6c 74 73 2e 52 6f  wIx < results.Ro
6770: 77 73 2e 43 6f 75 6e 74 28 29 3b 20 64 6f 63 52  ws.Count(); docR
6780: 6f 77 49 78 2b 2b 29 0d 0a 20 20 20 20 20 20 20  owIx++)..       
6790: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
67a0: 76 61 72 20 6f 6c 64 44 6f 63 52 6f 77 20 3d 20  var oldDocRow = 
67b0: 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 47 65 74  results.Rows.Get
67c0: 28 64 6f 63 52 6f 77 49 78 29 3b 0d 0a 20 20 20  (docRowIx);..   
67d0: 20 20 20 20 20 20 20 20 20 76 61 72 20 64 6f 63           var doc
67e0: 52 6f 77 20 3d 20 74 68 69 73 2e 72 65 73 75 6c  Row = this.resul
67f0: 74 73 2e 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a  ts.Rows.Add();..
6800: 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 6c              Fill
6810: 50 72 6f 70 65 72 74 79 56 61 6c 75 65 73 28 64  PropertyValues(d
6820: 6f 63 52 6f 77 2c 20 6f 6c 64 44 6f 63 52 6f 77  ocRow, oldDocRow
6830: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
6840: 64 6f 63 52 6f 77 2e 67 72 6f 75 70 73 43 61 63  docRow.groupsCac
6850: 68 65 20 3d 20 76 38 4e 65 77 28 27 4d 61 70 27  he = v8New('Map'
6860: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
6870: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
6880: 20 28 73 65 74 54 72 65 65 56 69 65 77 29 0d 0a   (setTreeView)..
6890: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
68a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66                 f
68b0: 6f 72 20 28 76 61 72 20 69 3d 30 3b 20 69 3c 6f  or (var i=0; i<o
68c0: 6c 64 44 6f 63 52 6f 77 2e 52 6f 77 73 2e 43 6f  ldDocRow.Rows.Co
68d0: 75 6e 74 28 29 3b 20 69 2b 2b 29 0d 0a 20 20 20  unt(); i++)..   
68e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a               {..
68f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6900: 20 20 20 20 76 61 72 20 72 6f 77 20 3d 20 6f 6c      var row = ol
6910: 64 44 6f 63 52 6f 77 2e 52 6f 77 73 2e 47 65 74  dDocRow.Rows.Get
6920: 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  (i);..          
6930: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 67 72            var gr
6940: 6f 75 70 52 6f 77 20 3d 20 74 68 69 73 2e 67 65  oupRow = this.ge
6950: 74 47 72 6f 75 70 52 6f 77 28 64 6f 63 52 6f 77  tGroupRow(docRow
6960: 2c 20 72 6f 77 2e 5f 6d 65 74 68 6f 64 29 3b 0d  , row._method);.
6970: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
6980: 20 20 20 20 20 76 61 72 20 72 65 73 52 6f 77 20       var resRow 
6990: 3d 20 67 72 6f 75 70 52 6f 77 2e 52 6f 77 73 2e  = groupRow.Rows.
69a0: 41 64 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  Add();..        
69b0: 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 6c              Fill
69c0: 50 72 6f 70 65 72 74 79 56 61 6c 75 65 73 28 72  PropertyValues(r
69d0: 65 73 52 6f 77 2c 20 72 6f 77 29 3b 0d 0a 20 20  esRow, row);..  
69e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
69f0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a  .            }..
6a00: 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65              else
6a10: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d  ..            {.
6a20: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
6a30: 20 66 6f 72 20 28 76 61 72 20 69 3d 30 3b 20 69   for (var i=0; i
6a40: 3c 6f 6c 64 44 6f 63 52 6f 77 2e 52 6f 77 73 2e  <oldDocRow.Rows.
6a50: 43 6f 75 6e 74 28 29 3b 20 69 2b 2b 29 0d 0a 20  Count(); i++).. 
6a60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b                 {
6a70: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
6a80: 20 20 20 20 20 20 76 61 72 20 67 72 6f 75 70 52        var groupR
6a90: 6f 77 20 3d 20 6f 6c 64 44 6f 63 52 6f 77 2e 52  ow = oldDocRow.R
6aa0: 6f 77 73 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20  ows.Get(i);..   
6ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6ac0: 20 66 6f 72 20 28 76 61 72 20 6a 3d 30 3b 20 6a   for (var j=0; j
6ad0: 3c 67 72 6f 75 70 52 6f 77 2e 52 6f 77 73 2e 43  <groupRow.Rows.C
6ae0: 6f 75 6e 74 28 29 3b 20 6a 2b 2b 29 0d 0a 20 20  ount(); j++)..  
6af0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6b00: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
6b10: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
6b20: 20 72 6f 77 20 3d 20 67 72 6f 75 70 52 6f 77 2e   row = groupRow.
6b30: 52 6f 77 73 2e 47 65 74 28 6a 29 3b 0d 0a 20 20  Rows.Get(j);..  
6b40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6b50: 20 20 20 20 20 20 76 61 72 20 72 65 73 52 6f 77        var resRow
6b60: 20 3d 20 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 41   = docRow.Rows.A
6b70: 64 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  dd();..         
6b80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46                 F
6b90: 69 6c 6c 50 72 6f 70 65 72 74 79 56 61 6c 75 65  illPropertyValue
6ba0: 73 28 72 65 73 52 6f 77 2c 20 72 6f 77 29 3b 0d  s(resRow, row);.
6bb0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
6bc0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
6bd0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
6be0: 20 20 20 20 20 20 20 7d 20 20 20 20 0d 0a 20 20         }    ..  
6bf0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
6c00: 20 74 68 69 73 2e 65 78 70 61 6e 64 54 72 65 65   this.expandTree
6c10: 28 29 3b 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ();        ..   
6c20: 20 20 20 20 20 74 68 69 73 2e 53 65 74 43 6f 6e       this.SetCon
6c30: 74 72 6f 6c 73 56 69 73 69 62 6c 65 28 29 3b 0d  trolsVisible();.
6c40: 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20  .    },..    .. 
6c50: 20 20 20 43 6d 64 42 61 72 5f 54 72 65 65 56 69     CmdBar_TreeVi
6c60: 65 77 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 42  ew : function (B
6c70: 75 74 74 6f 6e 29 20 7b 0d 0a 20 20 20 20 20 20  utton) {..      
6c80: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65    this.form.Tree
6c90: 56 69 65 77 20 3d 20 21 74 68 69 73 2e 66 6f 72  View = !this.for
6ca0: 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20 20 20  m.TreeView;..   
6cb0: 20 20 20 20 20 42 75 74 74 6f 6e 2e 76 61 6c 2e       Button.val.
6cc0: 43 68 65 63 6b 20 3d 20 74 68 69 73 2e 66 6f 72  Check = this.for
6cd0: 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20 20 20  m.TreeView;..   
6ce0: 20 20 20 20 20 2f 2f 74 68 69 73 2e 66 6f 72 6d       //this.form
6cf0: 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68  .Controls.Search
6d00: 52 65 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73 2e  Results.Columns.
6d10: 46 6f 75 6e 64 4c 69 6e 65 2e 53 68 6f 77 48 69  FoundLine.ShowHi
6d20: 65 72 61 72 63 68 79 20 3d 20 74 68 69 73 2e 66  erarchy = this.f
6d30: 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20  orm.TreeView;.. 
6d40: 20 20 20 20 20 20 20 74 68 69 73 2e 73 77 69 74         this.swit
6d50: 63 68 56 69 65 77 28 74 68 69 73 2e 66 6f 72 6d  chView(this.form
6d60: 2e 54 72 65 65 56 69 65 77 29 3b 0d 0a 20 20 20  .TreeView);..   
6d70: 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 43   },..    ..    C
6d80: 6d 64 42 61 72 5f 45 78 70 61 6e 64 41 6c 6c 20  mdBar_ExpandAll 
6d90: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 42 75 74 74  : function (Butt
6da0: 6f 6e 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74  on) {..        t
6db0: 68 69 73 2e 65 78 70 61 6e 64 54 72 65 65 28 66  his.expandTree(f
6dc0: 61 6c 73 65 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  alse);..    },..
6dd0: 20 20 20 20 0d 0a 20 20 20 20 43 6d 64 42 61 72      ..    CmdBar
6de0: 5f 43 6f 6c 6c 61 70 73 65 41 6c 6c 20 3a 20 66  _CollapseAll : f
6df0: 75 6e 63 74 69 6f 6e 20 28 42 75 74 74 6f 6e 29  unction (Button)
6e00: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
6e10: 2e 65 78 70 61 6e 64 54 72 65 65 28 74 72 75 65  .expandTree(true
6e20: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20  );..    },....  
6e30: 20 20 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73    SetControlsVis
6e40: 69 62 6c 65 20 3a 20 66 75 6e 63 74 69 6f 6e 28  ible : function(
6e50: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ) {..        .. 
6e60: 20 20 20 20 20 20 20 76 61 72 20 63 74 72 20 3d         var ctr =
6e70: 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72   this.form.Contr
6e80: 6f 6c 73 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f  ols;..        //
6e90: 63 74 72 2e 53 65 61 72 63 68 52 65 73 75 6c 74  ctr.SearchResult
6ea0: 73 2e 43 6f 6c 75 6d 6e 73 2e 46 6f 75 6e 64 4c  s.Columns.FoundL
6eb0: 69 6e 65 2e 53 68 6f 77 48 69 65 72 61 72 63 68  ine.ShowHierarch
6ec0: 79 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 54 72  y = this.form.Tr
6ed0: 65 65 56 69 65 77 3b 20 20 20 20 0d 0a 20 20 20  eeView;    ..   
6ee0: 20 20 20 20 20 63 74 72 2e 43 6d 64 42 61 72 2e       ctr.CmdBar.
6ef0: 42 75 74 74 6f 6e 73 2e 54 72 65 65 56 69 65 77  Buttons.TreeView
6f00: 2e 43 68 65 63 6b 20 3d 20 74 68 69 73 2e 66 6f  .Check = this.fo
6f10: 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20 20  rm.TreeView;..  
6f20: 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e        this.form.
6f30: 43 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52  Controls.SearchR
6f40: 65 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73 2e 4d  esults.Columns.M
6f50: 65 74 68 6f 64 2e 56 69 73 69 62 6c 65 20 3d 20  ethod.Visible = 
6f60: 21 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56  !this.form.TreeV
6f70: 69 65 77 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  iew;..        th
6f80: 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73  is.form.Controls
6f90: 2e 53 65 61 72 63 68 52 65 73 75 6c 74 73 2e 43  .SearchResults.C
6fa0: 6f 6c 75 6d 6e 73 2e 45 78 61 63 74 4d 61 74 63  olumns.ExactMatc
6fb0: 68 2e 56 69 73 69 62 6c 65 20 3d 20 74 68 69 73  h.Visible = this
6fc0: 2e 66 6f 72 6d 2e 49 73 52 65 67 45 78 70 3b 0d  .form.IsRegExp;.
6fd0: 0a 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 62  ...        var b
6fe0: 75 74 74 6f 6e 73 20 3d 20 74 68 69 73 2e 66 6f  uttons = this.fo
6ff0: 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 43 6d 64 42  rm.Controls.CmdB
7000: 61 72 2e 42 75 74 74 6f 6e 73 3b 0d 0a 20 20 20  ar.Buttons;..   
7010: 20 20 20 20 20 62 75 74 74 6f 6e 73 2e 45 78 70       buttons.Exp
7020: 61 6e 64 41 6c 6c 2e 45 6e 61 62 6c 65 64 20 3d  andAll.Enabled =
7030: 20 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56   this.form.TreeV
7040: 69 65 77 3b 0d 0a 20 20 20 20 20 20 20 20 62 75  iew;..        bu
7050: 74 74 6f 6e 73 2e 41 63 74 69 6f 6e 73 2e 42 75  ttons.Actions.Bu
7060: 74 74 6f 6e 73 2e 45 78 70 61 6e 64 41 6c 6c 2e  ttons.ExpandAll.
7070: 45 6e 61 62 6c 65 64 20 3d 20 74 68 69 73 2e 66  Enabled = this.f
7080: 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20  orm.TreeView;.. 
7090: 20 20 20 20 20 20 20 62 75 74 74 6f 6e 73 2e 43         buttons.C
70a0: 6f 6c 6c 61 70 73 65 41 6c 6c 2e 45 6e 61 62 6c  ollapseAll.Enabl
70b0: 65 64 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 54  ed = this.form.T
70c0: 72 65 65 56 69 65 77 3b 0d 0a 20 20 20 20 20 20  reeView;..      
70d0: 20 20 62 75 74 74 6f 6e 73 2e 41 63 74 69 6f 6e    buttons.Action
70e0: 73 2e 42 75 74 74 6f 6e 73 2e 43 6f 6c 6c 61 70  s.Buttons.Collap
70f0: 73 65 41 6c 6c 2e 45 6e 61 62 6c 65 64 20 3d 20  seAll.Enabled = 
7100: 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69  this.form.TreeVi
7110: 65 77 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 74  ew;....        t
7120: 68 69 73 2e 66 6f 72 6d 2e 63 61 70 74 69 6f 6e  his.form.caption
7130: 20 3d 20 22 d0 a0 d0 b0 d1 81 d1 88 d0 b8 d1 80   = "............
7140: d0 b5 d0 bd d0 bd d1 8b d0 b9 20 d0 bf d0 be d0  .......... .....
7150: b8 d1 81 d0 ba 20 d0 b2 20 d0 bc d0 be d0 b4 d1  ..... .. .......
7160: 83 d0 bb d0 b5 22 3b 0d 0a 20 20 20 20 7d 0d 0a  .....";..    }..
7170: 20 20 0d 0a 7d 29 3b 20 2f 2f 20 65 6e 64 20 6f    ..}); // end o
7180: 66 20 45 78 74 53 65 61 72 63 68 20 63 6c 61 73  f ExtSearch clas
7190: 73 0d 0a 0d 0a 45 78 74 53 65 61 72 63 68 47 6c  s....ExtSearchGl
71a0: 6f 62 61 6c 20 3d 20 45 78 74 53 65 61 72 63 68  obal = ExtSearch
71b0: 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a 20 20 20  .extend({....   
71c0: 20 73 65 74 74 69 6e 67 73 52 6f 6f 74 50 61 74   settingsRootPat
71d0: 68 20 3a 20 53 65 6c 66 53 63 72 69 70 74 2e 75  h : SelfScript.u
71e0: 6e 69 71 75 65 4e 61 6d 65 2b 22 47 6c 6f 62 61  niqueName+"Globa
71f0: 6c 22 2c 20 2f 2f 20 d1 82 d0 b5 d1 81 d1 82 2c  l", // ........,
7200: 20 d0 bf d1 83 d1 81 d0 ba d0 b0 d0 b9 20 d1 83   ............ ..
7210: 20 d0 bd d0 b0 d1 81 20 d0 b8 20 d0 bd d0 b0 d1   ...... .. .....
7220: 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0 b8 20 d0 b1  ............. ..
7230: d1 83 d0 b4 d1 83 d1 82 20 d0 b3 d0 bb d0 be d0  ........ .......
7240: b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0 bc d0 b8 2e  ................
7250: 20 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73 65 74   ..    ..    set
7260: 74 69 6e 67 73 20 3a 20 7b 0d 0a 20 20 20 20 20  tings : {..     
7270: 20 20 20 70 66 6c 53 6e 65 67 6f 70 61 74 20 3a     pflSnegopat :
7280: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
7290: 27 49 73 52 65 67 45 78 70 27 20 20 20 20 20 20  'IsRegExp'      
72a0: 3a 20 66 61 6c 73 65 2c 20 2f 2f 20 d0 9f d0 be  : false, // ....
72b0: d0 b8 d1 81 d0 ba 20 d1 80 d0 b5 d0 b3 d1 83 d0  ...... .........
72c0: bb d1 8f d1 80 d0 bd d1 8b d0 bc d0 b8 20 d0 b2  ............. ..
72d0: d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f  ................
72e0: d0 bc d0 b8 2e 0d 0a 20 20 20 20 20 20 20 20 20  .......         
72f0: 20 20 20 27 43 61 73 65 53 65 6e 73 65 74 69 76     'CaseSensetiv
7300: 65 27 20 3a 20 66 61 6c 73 65 2c 20 2f 2f 20 d0  e' : false, // .
7310: a3 d1 87 d0 b8 d1 82 d1 8b d0 b2 d0 b0 d1 82 d1  ................
7320: 8c 20 d1 80 d0 b5 d0 b3 d0 b8 d1 81 d1 82 d1 80  . ..............
7330: 20 d0 bf d1 80 d0 b8 20 d0 bf d0 be d0 b8 d1 81   ...... ........
7340: d0 ba d0 b5 2e 0d 0a 20 20 20 20 20 20 20 20 20  .......         
7350: 20 20 20 27 57 68 6f 6c 65 57 6f 72 64 73 27 20     'WholeWords' 
7360: 20 20 20 3a 20 66 61 6c 73 65 2c 20 2f 2f 20 d0     : false, // .
7370: 9f d0 be d0 b8 d1 81 d0 ba 20 d1 81 d0 bb d0 be  ......... ......
7380: d0 b2 d0 b0 20 d1 86 d0 b5 d0 bb d0 b8 d0 ba d0  .... ...........
7390: be d0 bc 2e 0d 0a 20 20 20 20 20 20 20 20 20 20  ......          
73a0: 20 20 27 53 65 61 72 63 68 48 69 73 74 6f 72 79    'SearchHistory
73b0: 27 20 3a 20 76 38 4e 65 77 28 27 56 61 6c 75 65  ' : v8New('Value
73c0: 4c 69 73 74 27 29 2c 20 2f 2f 20 d0 98 d1 81 d1  List'), // .....
73d0: 82 d0 be d1 80 d0 b8 d1 8f 20 d0 bf d0 be d0 b8  ......... ......
73e0: d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20 20 20 20 20  .........       
73f0: 20 20 20 20 20 27 48 69 73 74 6f 72 79 44 65 70       'HistoryDep
7400: 74 68 27 20 20 3a 20 31 35 2c 20 2f 2f 20 d0 9a  th'  : 15, // ..
7410: d0 be d0 bb d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2  ................
7420: d0 be 20 d1 8d d0 bb d0 b5 d0 bc d0 b5 d0 bd d1  .. .............
7430: 82 d0 be d0 b2 20 d0 b8 d1 81 d1 82 d0 be d1 80  ..... ..........
7440: d0 b8 d0 b8 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0  .... ...........
7450: b0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
7460: 27 54 72 65 65 56 69 65 77 27 20 20 20 20 20 20  'TreeView'      
7470: 3a 20 66 61 6c 73 65 20 2f 2f 20 d0 93 d1 80 d1  : false // .....
7480: 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0 b2 d0 b0 d1  ................
7490: 82 d1 8c 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c  ... ............
74a0: d1 82 d0 b0 d1 82 d1 8b 20 d0 bf d0 be d0 b8 d1  ........ .......
74b0: 81 d0 ba d0 b0 20 d0 bf d0 be 20 d0 bc d0 b5 d1  ..... .... .....
74c0: 82 d0 be d0 b4 d0 b0 d0 bc 2e 20 20 20 20 20 20  ..........      
74d0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
74e0: 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20  }..    },....   
74f0: 20 63 6f 6e 73 74 72 75 63 74 20 3a 20 66 75 6e   construct : fun
7500: 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20  ction () {..    
7510: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f  ..        this._
7520: 73 75 70 65 72 28 74 72 75 65 29 3b 0d 0a 0d 0a  super(true);....
7530: 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 69 6e          this._in
7540: 73 74 61 6e 63 65 20 3d 20 6e 75 6c 6c 3b 0d 0a  stance = null;..
7550: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 66  ..        this.f
7560: 6f 72 6d 2e d0 9a d0 bb d1 8e d1 87 d0 a1 d0 be  orm.............
7570: d1 85 d1 80 d0 b0 d0 bd d0 b5 d0 bd d0 b8 d1 8f  ................
7580: d0 9f d0 be d0 bb d0 be d0 b6 d0 b5 d0 bd d0 b8  ................
7590: d1 8f d0 9e d0 ba d0 bd d0 b0 20 3d 20 22 65 78  .......... = "ex
75a0: 74 47 6c 6f 62 61 6c 53 65 61 72 63 68 2e 6a 73  tGlobalSearch.js
75b0: 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 74 68  ";....        th
75c0: 69 73 2e 69 73 47 6c 6f 62 61 6c 46 69 6e 64 20  is.isGlobalFind 
75d0: 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20  = true;..       
75e0: 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e   ..        this.
75f0: 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62  SetControlsVisib
7600: 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20  le();....       
7610: 20 45 78 74 53 65 61 72 63 68 47 6c 6f 62 61 6c   ExtSearchGlobal
7620: 2e 5f 69 6e 73 74 61 6e 63 65 20 3d 20 74 68 69  ._instance = thi
7630: 73 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20  s;..    },....  
7640: 20 20 73 65 61 72 63 68 42 79 55 75 69 64 3a 20    searchByUuid: 
7650: 66 75 6e 63 74 69 6f 6e 28 72 6f 77 29 20 7b 0d  function(row) {.
7660: 0a 20 20 20 20 20 20 20 20 6d 64 4f 62 6a 20 3d  .        mdObj =
7670: 20 66 69 6e 64 4d 64 4f 62 6a 28 74 68 69 73 2e   findMdObj(this.
7680: 63 75 72 72 65 6e 74 4d 64 43 6f 6e 74 61 69 6e  currentMdContain
7690: 65 72 2c 20 72 6f 77 2e 55 55 49 44 29 3b 0d 0a  er, row.UUID);..
76a0: 20 20 20 20 20 20 20 20 76 61 72 20 64 6f 63 52          var docR
76b0: 6f 77 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20  ow = null;..    
76c0: 20 20 20 20 69 66 20 28 6d 64 4f 62 6a 29 7b 0d      if (mdObj){.
76d0: 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  .        ..     
76e0: 20 20 20 20 20 20 20 76 61 72 20 6f 62 6a 20 3d         var obj =
76f0: 20 74 68 69 73 2e 67 65 74 57 69 6e 64 6f 77 4f   this.getWindowO
7700: 62 6a 65 63 74 28 7b 0d 0a 20 20 20 20 20 20 20  bject({..       
7710: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7720: 20 20 20 20 20 20 20 20 20 6d 64 4f 62 6a 3a 6d           mdObj:m
7730: 64 4f 62 6a 2c 0d 0a 20 20 20 20 20 20 20 20 20  dObj,..         
7740: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7750: 20 20 20 20 20 20 20 6d 64 50 72 6f 70 3a 72 6f         mdProp:ro
7760: 77 2e 6d 64 50 72 6f 70 2c 0d 0a 20 20 20 20 20  w.mdProp,..     
7770: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7780: 20 20 20 20 20 20 20 20 20 20 20 74 69 74 6c 65             title
7790: 3a 72 6f 77 2e 74 69 74 6c 65 7d 29 3b 0d 0a 20  :row.title});.. 
77a0: 20 20 20 20 20 20 20 20 20 20 20 64 6f 63 52 6f             docRo
77b0: 77 20 3d 20 74 68 69 73 2e 73 65 61 72 63 68 28  w = this.search(
77c0: 6f 62 6a 2c 20 74 68 69 73 2e 72 65 29 3b 0d 0a  obj, this.re);..
77d0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
77e0: 20 20 20 72 65 74 75 72 6e 20 64 6f 63 52 6f 77     return docRow
77f0: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d  ;..    },..    .
7800: 0a 20 20 20 20 73 65 61 72 63 68 49 6e 4d 65 74  .    searchInMet
7810: 61 64 61 74 61 20 3a 20 66 75 6e 63 74 69 6f 6e  adata : function
7820: 28 66 72 6f 6d 48 6f 74 4b 65 79 29 7b 0d 0a 0d  (fromHotKey){...
7830: 0a 20 20 20 20 20 20 20 20 76 61 72 20 6d 64 20  .        var md 
7840: 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20  = null;..       
7850: 20 69 66 20 28 74 68 69 73 2e 69 73 49 6e 43 75   if (this.isInCu
7860: 72 72 65 6e 74 4d 64 43 6f 6e 74 65 69 6e 65 72  rrentMdConteiner
7870: 46 69 6e 64 20 29 20 7b 0d 0a 20 20 20 20 20 20  Find ) {..      
7880: 20 20 20 20 20 20 76 61 72 20 61 63 74 69 76 65        var active
7890: 57 69 6e 64 6f 77 20 3d 20 74 68 69 73 2e 77 61  Window = this.wa
78a0: 74 63 68 65 72 2e 67 65 74 41 63 74 69 76 65 54  tcher.getActiveT
78b0: 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20  extWindow();..  
78c0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 61            if (!a
78d0: 63 74 69 76 65 57 69 6e 64 6f 77 29 20 7b 20 0d  ctiveWindow) { .
78e0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65  .            } e
78f0: 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  lse {..         
7900: 20 20 20 20 20 20 20 76 61 72 20 61 63 74 69 76         var activ
7910: 65 56 69 65 77 20 3d 20 61 63 74 69 76 65 57 69  eView = activeWi
7920: 6e 64 6f 77 2e 47 65 74 56 69 65 77 28 29 3b 0d  ndow.GetView();.
7930: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
7940: 20 69 66 20 28 21 61 63 74 69 76 65 56 69 65 77   if (!activeView
7950: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ) {..           
7960: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20       } else {.. 
7970: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7980: 20 20 20 69 66 20 28 61 63 74 69 76 65 56 69 65     if (activeVie
7990: 77 2e 6d 64 4f 62 6a 20 26 26 20 61 63 74 69 76  w.mdObj && activ
79a0: 65 56 69 65 77 2e 6d 64 50 72 6f 70 29 20 7b 0d  eView.mdProp) {.
79b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
79c0: 20 20 20 20 20 20 20 20 20 6d 64 20 3d 20 61 63           md = ac
79d0: 74 69 76 65 56 69 65 77 2e 6d 64 4f 62 6a 2e 63  tiveView.mdObj.c
79e0: 6f 6e 74 61 69 6e 65 72 3b 20 20 20 20 0d 0a 20  ontainer;    .. 
79f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7a00: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20     }..          
7a10: 20 20 20 20 20 20 7d 20 0d 0a 20 20 20 20 20 20        } ..      
7a20: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
7a30: 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20   }..        ..  
7a40: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
7a50: 69 66 20 28 21 6d 64 29 20 7b 0d 0a 20 20 20 20  if (!md) {..    
7a60: 20 20 20 20 20 20 20 20 6d 64 20 3d 20 6d 65 74          md = met
7a70: 61 64 61 74 61 2e 63 75 72 72 65 6e 74 3b 20 20  adata.current;  
7a80: 20 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20   ..        }..  
7a90: 20 20 20 20 20 20 69 66 20 28 21 6d 64 29 20 72        if (!md) r
7aa0: 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20  eturn;....      
7ab0: 20 20 74 68 69 73 2e 63 75 72 72 65 6e 74 4d 64    this.currentMd
7ac0: 43 6f 6e 74 61 69 6e 65 72 20 3d 20 6d 64 3b 0d  Container = md;.
7ad0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 6c  .        this.cl
7ae0: 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74 73  earSearchResults
7af0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ();..        thi
7b00: 73 2e 72 65 20 3d 20 74 68 69 73 2e 62 75 69 6c  s.re = this.buil
7b10: 64 53 65 61 72 63 68 52 65 67 45 78 70 4f 62 6a  dSearchRegExpObj
7b20: 65 63 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  ect();..        
7b30: 69 66 20 28 21 74 68 69 73 2e 72 65 29 20 72 65  if (!this.re) re
7b40: 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 0d  turn;..        .
7b50: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 75  .        this.cu
7b60: 72 43 61 70 74 69 6f 6e 20 3d 20 77 69 6e 64 6f  rCaption = windo
7b70: 77 73 2e 63 61 70 74 69 6f 6e 3b 20 2f 2f d0 b0  ws.caption; //..
7b80: 20 d0 b2 d0 b4 d1 80 d1 83 d0 b3 2c 20 d0 b5 d1   .........., ...
7b90: 89 d0 b5 20 d0 ba d1 82 d0 be 2d d1 82 d0 be 20  ... ......-.... 
7ba0: d0 bd d0 b5 20 d0 bf d0 be d0 bb d1 8c d0 b7 d1  .... ...........
7bb0: 83 d0 b5 d1 82 d1 81 d1 8f 20 63 6f 6e 66 69 67  ......... config
7bc0: 43 61 70 74 69 6f 6e 2e 2e 2e 20 0d 0a 20 20 20  Caption... ..   
7bd0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74       ..        t
7be0: 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53  his.startGlobalS
7bf0: 65 61 72 63 68 20 3d 20 74 72 75 65 3b 0d 0a 20  earch = true;.. 
7c00: 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73         if (!this
7c10: 2e 76 74 4d 44 29 7b 0d 0a 20 20 20 20 20 20 20  .vtMD){..       
7c20: 20 20 20 20 20 74 68 69 73 2e 76 74 4d 44 20 3d       this.vtMD =
7c30: 20 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d   {};..        }.
7c40: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 72 65  .        this.re
7c50: 61 64 4d 64 54 6f 56 74 28 74 68 69 73 2e 63 75  adMdToVt(this.cu
7c60: 72 72 65 6e 74 4d 64 43 6f 6e 74 61 69 6e 65 72  rrentMdContainer
7c70: 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  );..        ..  
7c80: 20 20 20 20 20 20 74 68 69 73 2e 63 75 72 49 64        this.curId
7c90: 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 0d   = 0;..        .
7ca0: 0a 20 20 20 20 20 20 20 20 65 76 65 6e 74 73 2e  .        events.
7cb0: 63 6f 6e 6e 65 63 74 28 44 65 73 69 67 6e 65 72  connect(Designer
7cc0: 2c 20 22 6f 6e 49 64 6c 65 22 2c 20 74 68 69 73  , "onIdle", this
7cd0: 29 3b 0d 0a 20 20 20 20 20 20 20 0d 0a 20 20 20  );..       ..   
7ce0: 20 20 20 20 20 2f 2f 74 68 69 73 2e 73 68 6f 77       //this.show
7cf0: 53 65 61 72 63 68 52 65 73 75 6c 74 28 64 6f 63  SearchResult(doc
7d00: 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29  Row, fromHotKey)
7d10: 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 77 69 6e  ;..        //win
7d20: 64 6f 77 73 2e 63 61 70 74 69 6f 6e 20 3d 20 63  dows.caption = c
7d30: 75 72 43 61 70 74 69 6f 6e 3b 0d 0a 20 20 20 20  urCaption;..    
7d40: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 6f 6e  },..    ..    on
7d50: 49 64 6c 65 3a 66 75 6e 63 74 69 6f 6e 28 29 7b  Idle:function(){
7d60: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 74  ..        if (!t
7d70: 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53  his.startGlobalS
7d80: 65 61 72 63 68 29 20 7b 0d 0a 20 20 20 20 20 20  earch) {..      
7d90: 20 20 20 20 20 20 77 69 6e 64 6f 77 73 2e 63 61        windows.ca
7da0: 70 74 69 6f 6e 20 3d 20 74 68 69 73 2e 63 75 72  ption = this.cur
7db0: 43 61 70 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20  Caption;..      
7dc0: 20 20 20 20 20 20 65 76 65 6e 74 73 2e 64 69 73        events.dis
7dd0: 63 6f 6e 6e 65 63 74 28 44 65 73 69 67 6e 65 72  connect(Designer
7de0: 2c 20 22 6f 6e 49 64 6c 65 22 2c 20 74 68 69 73  , "onIdle", this
7df0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
7e00: 74 68 69 73 2e 73 68 6f 77 53 65 61 72 63 68 52  this.showSearchR
7e10: 65 73 75 6c 74 28 64 6f 63 52 6f 77 2c 20 66 61  esult(docRow, fa
7e20: 6c 73 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  lse);..         
7e30: 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20     return;..    
7e40: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 76      }..        v
7e50: 61 72 20 63 75 72 72 65 6e 74 49 64 20 3d 20 74  ar currentId = t
7e60: 68 69 73 2e 63 75 72 72 65 6e 74 4d 64 43 6f 6e  his.currentMdCon
7e70: 74 61 69 6e 65 72 2e 72 6f 6f 74 4f 62 6a 65 63  tainer.rootObjec
7e80: 74 2e 69 64 3b 0d 0a 20 20 20 20 20 20 20 20 69  t.id;..        i
7e90: 66 20 28 74 68 69 73 2e 76 74 4d 44 5b 63 75 72  f (this.vtMD[cur
7ea0: 72 65 6e 74 49 64 5d 2e 6c 65 6e 67 74 68 3c 31  rentId].length<1
7eb0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ) {..           
7ec0: 20 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61   this.startGloba
7ed0: 6c 53 65 61 72 63 68 20 3d 20 66 61 6c 73 65 3b  lSearch = false;
7ee0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76  ..            ev
7ef0: 65 6e 74 73 2e 64 69 73 63 6f 6e 6e 65 63 74 28  ents.disconnect(
7f00: 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e 49 64 6c  Designer, "onIdl
7f10: 65 22 2c 20 74 68 69 73 29 3b 0d 0a 20 20 20 20  e", this);..    
7f20: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d          return;.
7f30: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
7f40: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61      ..        va
7f50: 72 20 63 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20 20  r count = 0;..  
7f60: 20 20 20 20 20 20 76 61 72 20 64 6f 63 52 6f 77        var docRow
7f70: 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20   = null;..      
7f80: 20 20 77 68 69 6c 65 20 28 63 6f 75 6e 74 20 3c    while (count <
7f90: 20 32 35 29 7b 0d 0a 20 20 20 20 20 20 20 20 20   25){..         
7fa0: 20 20 20 69 66 20 28 74 68 69 73 2e 63 75 72 49     if (this.curI
7fb0: 64 3c 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72  d<this.vtMD[curr
7fc0: 65 6e 74 49 64 5d 2e 6c 65 6e 67 74 68 29 7b 0d  entId].length){.
7fd0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
7fe0: 20 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 73   docRow = this.s
7ff0: 65 61 72 63 68 42 79 55 75 69 64 28 74 68 69 73  earchByUuid(this
8000: 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d  .vtMD[currentId]
8010: 5b 74 68 69 73 2e 63 75 72 49 64 5d 29 3b 0d 0a  [this.curId]);..
8020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8030: 77 69 6e 64 6f 77 73 2e 63 61 70 74 69 6f 6e 20  windows.caption 
8040: 3d 20 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72  = this.vtMD[curr
8050: 65 6e 74 49 64 5d 5b 74 68 69 73 2e 63 75 72 49  entId][this.curI
8060: 64 5d 2e 6d 64 4e 61 6d 65 3b 0d 0a 20 20 20 20  d].mdName;..    
8070: 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b          } else {
8080: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
8090: 20 20 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62    this.startGlob
80a0: 61 6c 53 65 61 72 63 68 20 3d 20 66 61 6c 73 65  alSearch = false
80b0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
80c0: 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20     break;..     
80d0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
80e0: 20 20 20 20 20 20 74 68 69 73 2e 63 75 72 49 64        this.curId
80f0: 20 2b 2b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20   ++;..          
8100: 20 20 63 6f 75 6e 74 2b 2b 3b 0d 0a 20 20 20 20    count++;..    
8110: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 74      }..        t
8120: 68 69 73 2e 73 68 6f 77 53 65 61 72 63 68 52 65  his.showSearchRe
8130: 73 75 6c 74 28 6e 75 6c 6c 2c 20 66 61 6c 73 65  sult(null, false
8140: 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  );..        ..  
8150: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20    },..    ..    
8160: 72 65 61 64 4d 64 54 6f 56 74 3a 66 75 6e 63 74  readMdToVt:funct
8170: 69 6f 6e 28 4d 64 43 6f 6e 74 61 69 6e 65 72 29  ion(MdContainer)
8180: 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 63  {..        var c
8190: 75 72 72 65 6e 74 49 64 20 3d 20 4d 64 43 6f 6e  urrentId = MdCon
81a0: 74 61 69 6e 65 72 2e 72 6f 6f 74 4f 62 6a 65 63  tainer.rootObjec
81b0: 74 2e 69 64 3b 20 0d 0a 20 20 20 20 20 20 20 20  t.id; ..        
81c0: 69 66 20 28 21 74 68 69 73 2e 76 74 4d 44 5b 63  if (!this.vtMD[c
81d0: 75 72 72 65 6e 74 49 64 5d 29 7b 0d 0a 20 20 20  urrentId]){..   
81e0: 20 20 20 20 20 20 20 20 20 76 61 72 20 64 6f 63           var doc
81f0: 52 6f 77 20 3d 20 6e 75 6c 6c 3b 20 0d 0a 20 20  Row = null; ..  
8200: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 76            this.v
8210: 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 20 3d  tMD[currentId] =
8220: 20 5b 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20   [];..          
8230: 20 20 76 61 72 20 65 73 20 3d 20 74 68 69 73 3b    var es = this;
8240: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f  ..            //
8250: d0 a0 d0 b5 d0 ba d0 b2 d0 b8 d0 b7 d0 b8 d1 82  ................
8260: d1 8b 20 d0 bf d1 80 d0 be d0 bf d1 83 d1 81 d1  .. .............
8270: 82 d0 b8 d0 bc 0d 0a 20 20 20 20 20 20 20 20 20  .......         
8280: 20 20 20 76 61 72 20 69 67 6e 6f 72 65 64 4d 64     var ignoredMd
8290: 43 6c 61 73 73 20 3d 20 7b 0d 0a 20 20 20 20 20  Class = {..     
82a0: 20 20 20 20 20 20 20 20 20 20 20 22 d0 a0 d0 b5             "....
82b0: d0 ba d0 b2 d0 b8 d0 b7 d0 b8 d1 82 d1 8b 22 3a  ..............":
82c0: 22 22 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20  "",..           
82d0: 20 20 20 20 20 22 d0 9c d0 b0 d0 ba d0 b5 d1 82       "..........
82e0: d1 8b 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20  .." : "" ,..    
82f0: 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 9e d0              "...
8300: b1 d1 89 d0 b8 d0 b5 d0 9a d0 b0 d1 80 d1 82 d0  ................
8310: b8 d0 bd d0 ba d0 b8 22 20 3a 20 22 22 20 2c 0d  ......." : "" ,.
8320: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
8330: 20 22 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82   "..............
8340: d1 8b 20 d1 81 d1 82 d0 b8 d0 bb d1 8f 22 20 3a  .. .........." :
8350: 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20   "" ,..         
8360: 20 20 20 20 20 20 20 22 d0 9f d0 be d0 b4 d1 81         "........
8370: d0 b8 d1 81 d1 82 d0 b5 d0 bc d1 8b 22 20 3a 20  ............" : 
8380: 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  "" ,..          
8390: 20 20 20 20 20 20 22 d0 af d0 b7 d1 8b d0 ba d0        ".........
83a0: b8 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20  ." : "" ,..     
83b0: 20 20 20 20 20 20 20 20 20 20 20 22 d0 a1 d1 82             "....
83c0: d0 b8 d0 bb d0 b8 22 20 3a 20 22 22 20 2c 0d 0a  ......" : "" ,..
83d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
83e0: 22 d0 98 d0 bd d1 82 d0 b5 d1 80 d1 84 d0 b5 d0  "...............
83f0: b9 d1 81 d1 8b 22 20 3a 20 22 22 20 2c 0d 0a 20  ....." : "" ,.. 
8400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22                 "
8410: d0 9f d0 b0 d1 80 d0 b0 d0 bc d0 b5 d1 82 d1 80  ................
8420: d1 8b d0 a1 d0 b5 d0 b0 d0 bd d1 81 d0 b0 22 20  .............." 
8430: 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20  : "" ,..        
8440: 20 20 20 20 20 20 20 20 22 d0 a0 d0 be d0 bb d0          ".......
8450: b8 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20  ." : "" ,..     
8460: 20 20 20 20 20 20 20 20 20 20 20 22 d0 9e d0 b1             "....
8470: d1 89 d0 b8 d0 b5 d0 9c d0 b0 d0 ba d0 b5 d1 82  ................
8480: d1 8b 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20  .." : "" ,..    
8490: 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 9a d1              "...
84a0: 80 d0 b8 d1 82 d0 b5 d1 80 d0 b8 d0 b8 d0 9e d1  ................
84b0: 82 d0 b1 d0 be d1 80 d0 b0 22 20 3a 20 22 22 20  ........." : "" 
84c0: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ,..             
84d0: 20 20 20 22 d0 9e d0 b1 d1 89 d0 b8 d0 b5 d0 a0     "............
84e0: d0 b5 d0 ba d0 b2 d0 b8 d0 b7 d0 b8 d1 82 d1 8b  ................
84f0: 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20  " : "" ,..      
8500: 20 20 20 20 20 20 20 20 20 20 22 d0 a2 d0 b0 d0            ".....
8510: b1 d0 bb d0 b8 d1 87 d0 bd d1 8b d0 b5 d0 a7 d0  ................
8520: b0 d1 81 d1 82 d0 b8 22 20 3a 20 22 22 20 2c 0d  ......." : "" ,.
8530: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
8540: 20 22 d0 9f d0 b0 d1 80 d0 b0 d0 bc d0 b5 d1 82   "..............
8550: d1 80 d1 8b 22 20 3a 20 22 22 20 0d 0a 20 20 20  ...." : "" ..   
8560: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0d               };.
8570: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
8580: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76   ..            v
8590: 61 72 20 73 6f 72 74 20 3d 20 30 3b 20 2f 2f d0  ar sort = 0; //.
85a0: 94 d0 bb d1 8f 20 d1 81 d0 be d1 80 d1 82 d0 b8  ..... ..........
85b0: d1 80 d0 be d0 b2 d0 ba d0 b8 20 d0 bc d0 be d0  .......... .....
85c0: b4 d1 83 d0 bb d0 b5 d0 b9 20 d1 84 d1 83 d0 bd  ......... ......
85d0: d0 ba d1 86 d0 b8 d0 b9 20 d0 bf d0 be 20 d0 bf  ........ .... ..
85e0: d0 be d1 80 d1 8f d0 b4 d0 ba d1 83 20 d0 be d0  ............ ...
85f0: b1 d1 85 d0 be d0 b4 d0 b0 2c 20 d0 b0 20 d0 bd  ........., .. ..
8600: d0 b5 20 d0 bf d0 be 20 d0 b0 d0 bb d1 84 d0 b0  .. .... ........
8610: d0 b2 d0 b8 d1 82 d1 83 2e 0d 0a 20 20 20 20 20  ...........     
8620: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
8630: 20 20 20 20 20 28 66 75 6e 63 74 69 6f 6e 20 28       (function (
8640: 6d 64 4f 62 6a 29 7b 0d 0a 20 20 20 20 20 20 20  mdObj){..       
8650: 20 20 20 20 20 20 20 20 20 69 66 20 28 21 65 73           if (!es
8660: 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53 65 61 72  .startGlobalSear
8670: 63 68 29 20 7b 72 65 74 75 72 6e 7d 20 0d 0a 20  ch) {return} .. 
8680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
8690: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
86a0: 20 76 61 72 20 6d 64 63 20 3d 20 6d 64 4f 62 6a   var mdc = mdObj
86b0: 2e 6d 64 63 6c 61 73 73 3b 0d 0a 20 20 20 20 20  .mdclass;..     
86c0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
86d0: 20 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f           functio
86e0: 6e 20 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62  n getMdName(mdOb
86f0: 6a 29 20 7b 20 20 20 20 20 20 20 20 20 20 20 20  j) {            
8700: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8710: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
8720: 20 20 20 20 20 20 20 69 66 20 28 6d 64 4f 62 6a         if (mdObj
8730: 2e 70 61 72 65 6e 74 20 26 26 20 6d 64 4f 62 6a  .parent && mdObj
8740: 2e 70 61 72 65 6e 74 2e 6d 64 43 6c 61 73 73 2e  .parent.mdClass.
8750: 6e 61 6d 65 28 31 29 20 21 3d 20 27 d0 9a d0 be  name(1) != '....
8760: d0 bd d1 84 d0 b8 d0 b3 d1 83 d1 80 d0 b0 d1 86  ................
8770: d0 b8 d1 8f 27 29 0d 0a 20 20 20 20 20 20 20 20  ....')..        
8780: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8790: 72 65 74 75 72 6e 20 67 65 74 4d 64 4e 61 6d 65  return getMdName
87a0: 28 6d 64 4f 62 6a 2e 70 61 72 65 6e 74 29 20 2b  (mdObj.parent) +
87b0: 20 27 2e 27 20 2b 20 6d 64 4f 62 6a 2e 6d 64 43   '.' + mdObj.mdC
87c0: 6c 61 73 73 2e 6e 61 6d 65 28 31 29 20 2b 20 27  lass.name(1) + '
87d0: 20 27 20 2b 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b   ' + mdObj.name;
87e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
87f0: 20 20 20 20 20 20 76 61 72 20 63 6e 61 6d 65 20        var cname 
8800: 3d 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73 73 2e  = mdObj.mdClass.
8810: 6e 61 6d 65 28 31 29 3b 0d 0a 20 20 20 20 20 20  name(1);..      
8820: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65                re
8830: 74 75 72 6e 20 20 28 63 6e 61 6d 65 20 3f 20 63  turn  (cname ? c
8840: 6e 61 6d 65 20 2b 20 27 20 27 20 3a 20 27 27 29  name + ' ' : '')
8850: 20 2b 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a   + mdObj.name;..
8860: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8870: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
8880: 20 20 20 76 61 72 20 6d 64 4e 61 6d 65 20 3d 20     var mdName = 
8890: 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29  getMdName(mdObj)
88a0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
88b0: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
88c0: 20 20 20 20 66 6f 72 28 76 61 72 20 69 20 3d 20      for(var i = 
88d0: 30 2c 20 63 20 3d 20 6d 64 63 2e 70 72 6f 70 65  0, c = mdc.prope
88e0: 72 74 69 65 73 43 6f 75 6e 74 3b 20 69 20 3c 20  rtiesCount; i < 
88f0: 63 3b 20 69 2b 2b 29 7b 0d 0a 20 20 20 20 20 20  c; i++){..      
8900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
8910: 72 20 6d 64 50 72 6f 70 20 3d 20 6d 64 63 2e 70  r mdProp = mdc.p
8920: 72 6f 70 65 72 74 79 41 74 28 69 29 3b 0d 0a 20  ropertyAt(i);.. 
8930: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8940: 20 20 20 76 61 72 20 6d 64 50 72 6f 70 4e 61 6d     var mdPropNam
8950: 65 20 3d 20 6d 64 63 2e 70 72 6f 70 65 72 74 79  e = mdc.property
8960: 41 74 28 69 29 2e 6e 61 6d 65 28 31 29 3b 0d 0a  At(i).name(1);..
8970: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
8980: 20 20 20 20 20 20 69 66 20 28 6d 64 4f 62 6a 2e        if (mdObj.
8990: 69 73 50 72 6f 70 4d 6f 64 75 6c 65 28 6d 64 50  isPropModule(mdP
89a0: 72 6f 70 2e 69 64 29 29 7b 0d 0a 20 20 20 20 20  rop.id)){..     
89b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
89c0: 20 20 20 76 61 72 20 72 6f 77 20 3d 20 7b 55 55     var row = {UU
89d0: 49 44 20 3a 20 6d 64 4f 62 6a 2e 69 64 7d 0d 0a  ID : mdObj.id}..
89e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
89f0: 20 20 20 20 20 20 20 20 72 6f 77 2e 6d 64 50 72          row.mdPr
8a00: 6f 70 20 3d 20 6d 64 50 72 6f 70 3b 0d 0a 20 20  op = mdProp;..  
8a10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8a20: 20 20 20 20 20 20 72 6f 77 2e 6d 64 4e 61 6d 65        row.mdName
8a30: 20 3d 20 6d 64 4e 61 6d 65 3b 0d 0a 20 20 20 20   = mdName;..    
8a40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8a50: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
8a60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6f                so
8a70: 72 74 2b 2b 3b 0d 0a 20 20 20 20 20 20 20 20 20  rt++;..         
8a80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73                 s
8a90: 74 72 53 6f 72 74 20 3d 20 22 30 30 30 30 30 30  trSort = "000000
8aa0: 22 2b 73 6f 72 74 3b 0d 0a 20 20 20 20 20 20 20  "+sort;..       
8ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8ac0: 20 73 74 72 53 6f 72 74 20 3d 20 73 74 72 53 6f   strSort = strSo
8ad0: 72 74 2e 73 75 62 73 74 72 28 73 74 72 53 6f 72  rt.substr(strSor
8ae0: 74 2e 6c 65 6e 67 74 68 2d 35 29 3b 0d 0a 20 20  t.length-5);..  
8af0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8b00: 20 20 20 20 20 20 74 69 74 6c 65 20 3d 20 27 27        title = ''
8b10: 2b 73 74 72 53 6f 72 74 2b 27 20 27 2b 6d 64 4e  +strSort+' '+mdN
8b20: 61 6d 65 20 2b 20 27 3a 20 27 20 2b 20 6d 64 50  ame + ': ' + mdP
8b30: 72 6f 70 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20  ropName;..      
8b40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8b50: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
8b60: 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 77 2e              row.
8b70: 74 69 74 6c 65 20 3d 20 74 69 74 6c 65 3b 0d 0a  title = title;..
8b80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8b90: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
8ba0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8bb0: 20 20 65 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e    es.vtMD[curren
8bc0: 74 49 64 5d 2e 70 75 73 68 28 72 6f 77 29 3b 0d  tId].push(row);.
8bd0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
8be0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
8bf0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
8c00: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 9f             // ..
8c10: d0 b5 d1 80 d0 b5 d0 b1 d0 b8 d1 80 d0 b0 d0 b5  ................
8c20: d0 bc 20 d0 ba d0 bb d0 b0 d1 81 d1 81 d1 8b 20  .. ............ 
8c30: d0 bf d0 be d1 82 d0 be d0 bc d0 ba d0 be d0 b2  ................
8c40: 20 28 d0 bd d0 b0 d0 bf d1 80 d0 b8 d0 bc d0 b5   (..............
8c50: d1 80 20 d1 83 20 d0 94 d0 be d0 ba d1 83 d0 bc  .. .. ..........
8c60: d0 b5 d0 bd d1 82 d0 b0 20 d1 8d d1 82 d0 be 20  ........ ...... 
8c70: d0 a0 d0 b5 d0 ba d0 b2 d0 b8 d0 b7 d0 b8 d1 82  ................
8c80: d1 8b 2c 20 d0 a2 d0 b0 d0 b1 d0 bb d0 b8 d1 87  .., ............
8c90: d0 bd d1 8b d0 b5 d0 a7 d0 b0 d1 81 d1 82 d0 b8  ................
8ca0: 2c 20 d0 a4 d0 be d1 80 d0 bc d1 8b 29 0d 0a 20  , ..........).. 
8cb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66                 f
8cc0: 6f 72 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20  or(var i = 0; i 
8cd0: 3c 20 6d 64 63 2e 63 68 69 6c 64 73 43 6c 61 73  < mdc.childsClas
8ce0: 73 65 73 43 6f 75 6e 74 3b 20 69 2b 2b 29 0d 0a  sesCount; i++)..
8cf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8d00: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
8d10: 20 20 20 20 20 20 20 76 61 72 20 63 68 69 6c 64         var child
8d20: 4d 64 43 6c 61 73 73 20 3d 20 6d 64 63 2e 63 68  MdClass = mdc.ch
8d30: 69 6c 64 43 6c 61 73 73 41 74 28 69 29 0d 0a 20  ildClassAt(i).. 
8d40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8d50: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
8d60: 20 20 20 20 20 20 20 20 20 69 66 20 28 21 28 69           if (!(i
8d70: 67 6e 6f 72 65 64 4d 64 43 6c 61 73 73 5b 63 68  gnoredMdClass[ch
8d80: 69 6c 64 4d 64 43 6c 61 73 73 2e 6e 61 6d 65 28  ildMdClass.name(
8d90: 31 2c 20 74 72 75 65 29 5d 3d 3d 75 6e 64 65 66  1, true)]==undef
8da0: 69 6e 65 64 29 29 7b 0d 0a 20 20 20 20 20 20 20  ined)){..       
8db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8dc0: 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20 20   continue;..    
8dd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8de0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
8df0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
8e00: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
8e10: d0 94 d0 bb d1 8f 20 d0 be d1 81 d1 82 d0 b0 d0  ...... .........
8e20: bb d1 8c d0 bd d0 be d0 b3 d0 be 20 d0 bf d0 b5  ........... ....
8e30: d1 80 d0 b5 d0 b1 d0 b5 d1 80 d0 b5 d0 bc 20 d0  .............. .
8e40: bf d0 be d1 82 d0 be d0 bc d0 ba d0 be d0 b2 20  ............... 
8e50: d1 8d d1 82 d0 be d0 b3 d0 be 20 d0 ba d0 bb d0  .......... .....
8e60: b0 d1 81 d1 81 d0 b0 2e 0d 0a 20 20 20 20 20 20  ..........      
8e70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f                fo
8e80: 72 28 76 61 72 20 63 68 6c 64 69 64 78 20 3d 20  r(var chldidx = 
8e90: 30 2c 20 63 20 3d 20 6d 64 4f 62 6a 2e 63 68 69  0, c = mdObj.chi
8ea0: 6c 64 4f 62 6a 65 63 74 73 43 6f 75 6e 74 28 69  ldObjectsCount(i
8eb0: 29 3b 20 63 68 6c 64 69 64 78 20 3c 20 63 3b 20  ); chldidx < c; 
8ec0: 63 68 6c 64 69 64 78 2b 2b 29 7b 0d 0a 20 20 20  chldidx++){..   
8ed0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8ee0: 20 20 20 20 20 76 61 72 20 63 68 69 6c 64 4f 62       var childOb
8ef0: 6a 65 63 74 20 3d 20 6d 64 4f 62 6a 2e 63 68 69  ject = mdObj.chi
8f00: 6c 64 4f 62 6a 65 63 74 28 69 2c 20 63 68 6c 64  ldObject(i, chld
8f10: 69 64 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  idx);..         
8f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61                 a
8f30: 72 67 75 6d 65 6e 74 73 2e 63 61 6c 6c 65 65 28  rguments.callee(
8f40: 63 68 69 6c 64 4f 62 6a 65 63 74 29 3b 0d 0a 20  childObject);.. 
8f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8f60: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20     }..          
8f70: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
8f80: 20 20 20 20 20 7d 29 28 4d 64 43 6f 6e 74 61 69       })(MdContai
8f90: 6e 65 72 2e 72 6f 6f 74 4f 62 6a 65 63 74 29 0d  ner.rootObject).
8fa0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20  .            .. 
8fb0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c         }..    },
8fc0: 0d 0a 20 20 20 20 0d 0a 0d 0a 20 20 20 20 51 75  ..    ....    Qu
8fd0: 65 72 79 5f 4f 6e 43 68 61 6e 67 65 20 3a 20 66  ery_OnChange : f
8fe0: 75 6e 63 74 69 6f 6e 28 43 6f 6e 74 72 6f 6c 29  unction(Control)
8ff0: 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 72 65 74  {....        ret
9000: 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 7d 2c 0d 0a  urn;....    },..
9010: 0d 0a 20 20 20 20 42 74 53 65 61 72 63 68 5f 43  ..    BtSearch_C
9020: 6c 69 63 6b 20 3a 20 66 75 6e 63 74 69 6f 6e 20  lick : function 
9030: 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 0d 0a 20  (control) {.... 
9040: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
9050: 66 6f 72 6d 2e 51 75 65 72 79 20 3d 3d 20 27 27  form.Query == ''
9060: 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  )..        {..  
9070: 20 20 20 20 20 20 20 20 20 20 44 6f 4d 65 73 73            DoMess
9080: 61 67 65 42 6f 78 28 27 d0 9d d0 b5 20 d0 b7 d0  ageBox('.... ...
9090: b0 d0 b4 d0 b0 d0 bd d0 b0 20 d1 81 d1 82 d1 80  ......... ......
90a0: d0 be d0 ba d0 b0 20 d0 bf d0 be d0 b8 d1 81 d0  ...... .........
90b0: ba d0 b0 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  ...');..        
90c0: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
90d0: 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20       }....      
90e0: 20 20 74 68 69 73 2e 73 65 61 72 63 68 49 6e 4d    this.searchInM
90f0: 65 74 61 64 61 74 61 28 74 72 75 65 29 3b 0d 0a  etadata(true);..
9100: 20 20 20 20 7d 2c 0d 0a 0d 0a 0d 0a 20 20 20 20      },......    
9110: 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62  SetControlsVisib
9120: 6c 65 20 3a 20 66 75 6e 63 74 69 6f 6e 28 29 7b  le : function(){
9130: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f  ..        this._
9140: 73 75 70 65 72 28 29 3b 0d 0a 20 20 20 20 20 20  super();..      
9150: 20 20 69 66 20 28 74 68 69 73 2e 69 73 47 6c 6f    if (this.isGlo
9160: 62 61 6c 46 69 6e 64 29 7b 0d 0a 20 20 20 20 20  balFind){..     
9170: 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d         this.form
9180: 2e 63 61 70 74 69 6f 6e 20 3d 20 22 d0 a0 d0 b0  .caption = "....
9190: d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 bd d1 8b  ................
91a0: d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20 d0 b2  .. .......... ..
91b0: 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5 20 28 d0   ............ (.
91c0: b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1  ................
91d0: 8b d0 b9 29 22 3b 0d 0a 20 20 20 20 20 20 20 20  ...)";..        
91e0: 7d 0d 0a 20 20 20 20 7d 2c 20 0d 0a 0d 0a 20 20  }..    }, ....  
91f0: 20 20 73 68 6f 77 53 65 61 72 63 68 52 65 73 75    showSearchResu
9200: 6c 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 64 6f  lt: function (do
9210: 63 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79  cRow, fromHotKey
9220: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ) {..        thi
9230: 73 2e 73 68 6f 77 52 65 73 75 6c 74 28 64 6f 63  s.showResult(doc
9240: 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29  Row, fromHotKey)
9250: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
9260: 65 78 70 61 6e 64 54 72 65 65 28 29 3b 0d 0a 20  expandTree();.. 
9270: 20 20 20 7d 0d 0a 0d 0a 0d 0a 7d 29 0d 0a 0d 0a     }......})....
9280: 2f 2f 2f 2f 7d 20 45 78 74 53 65 61 72 63 68 0d  ////} ExtSearch.
9290: 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  .../////////////
92a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
92b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
92c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
92d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
92e0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f  ///////////..///
92f0: 2f 7b 20 d0 92 d1 81 d0 bf d0 be d0 bc d0 be d0  /{ .............
9300: b3 d0 b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0  ................
9310: b5 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d1 8b  . ..............
9320: 2e 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a 4d 64 4f 62 6a  ...////....MdObj
9330: 65 63 74 20 3d 20 73 74 64 6c 69 62 2e 43 6c 61  ect = stdlib.Cla
9340: 73 73 2e 65 78 74 65 6e 64 28 7b 20 20 20 20 20  ss.extend({     
9350: 20 20 20 20 20 20 0d 0a 20 20 20 20 63 6f 6e 73        ..    cons
9360: 74 72 75 63 74 3a 20 66 75 6e 63 74 69 6f 6e 20  truct: function 
9370: 28 6f 62 6a 2c 20 70 72 6f 70 2c 20 74 69 74 6c  (obj, prop, titl
9380: 65 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68  e) {..        th
9390: 69 73 2e 6f 62 6a 20 3d 20 6f 62 6a 3b 0d 0a 20  is.obj = obj;.. 
93a0: 20 20 20 20 20 20 20 74 68 69 73 2e 70 72 6f 70         this.prop
93b0: 20 3d 20 70 72 6f 70 3b 0d 0a 20 20 20 20 20 20   = prop;..      
93c0: 20 20 74 68 69 73 2e 74 69 74 6c 65 20 3d 20 74    this.title = t
93d0: 69 74 6c 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20  itle;..    },.. 
93e0: 20 20 20 67 65 74 54 65 78 74 3a 20 66 75 6e 63     getText: func
93f0: 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20 20  tion() {..      
9400: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 6f 62    return this.ob
9410: 6a 2e 67 65 74 4d 6f 64 75 6c 65 54 65 78 74 28  j.getModuleText(
9420: 74 68 69 73 2e 70 72 6f 70 2e 69 64 29 3b 0d 0a  this.prop.id);..
9430: 20 20 20 20 7d 2c 0d 0a 20 20 20 20 61 63 74 69      },..    acti
9440: 76 61 74 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29  vate: function()
9450: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
9460: 2e 6f 62 6a 2e 6f 70 65 6e 4d 6f 64 75 6c 65 28  .obj.openModule(
9470: 74 68 69 73 2e 70 72 6f 70 2e 69 64 29 3b 0d 0a  this.prop.id);..
9480: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 47          return G
9490: 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d  etTextWindow();.
94a0: 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 67 65 74  .    },..    get
94b0: 54 69 74 6c 65 3a 20 66 75 6e 63 74 69 6f 6e 28  Title: function(
94c0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  ) {..        if 
94d0: 28 21 74 68 69 73 2e 74 69 74 6c 65 29 0d 0a 20  (!this.title).. 
94e0: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
94f0: 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 67        function g
9500: 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29 20  etMdName(mdObj) 
9510: 7b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  {               
9520: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
9530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9540: 69 66 20 28 6d 64 4f 62 6a 2e 70 61 72 65 6e 74  if (mdObj.parent
9550: 20 26 26 20 6d 64 4f 62 6a 2e 70 61 72 65 6e 74   && mdObj.parent
9560: 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31 29  .mdClass.name(1)
9570: 20 21 3d 20 27 d0 9a d0 be d0 bd d1 84 d0 b8 d0   != '...........
9580: b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f 27 29 0d  .............').
9590: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
95a0: 20 20 20 20 20 72 65 74 75 72 6e 20 67 65 74 4d       return getM
95b0: 64 4e 61 6d 65 28 6d 64 4f 62 6a 2e 70 61 72 65  dName(mdObj.pare
95c0: 6e 74 29 20 2b 20 27 2e 27 20 2b 20 6d 64 4f 62  nt) + '.' + mdOb
95d0: 6a 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31  j.mdClass.name(1
95e0: 29 20 2b 20 27 20 27 20 2b 20 6d 64 4f 62 6a 2e  ) + ' ' + mdObj.
95f0: 6e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20  name;..         
9600: 20 20 20 20 20 20 20 76 61 72 20 63 6e 61 6d 65         var cname
9610: 20 3d 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73 73   = mdObj.mdClass
9620: 2e 6e 61 6d 65 28 31 29 3b 0d 0a 20 20 20 20 20  .name(1);..     
9630: 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72             retur
9640: 6e 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e 61 6d  n  (cname ? cnam
9650: 65 20 2b 20 27 20 27 20 3a 20 27 27 29 20 2b 20  e + ' ' : '') + 
9660: 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20 20 20  mdObj.name;..   
9670: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
9680: 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69 74          this.tit
9690: 6c 65 20 3d 20 67 65 74 4d 64 4e 61 6d 65 28 74  le = getMdName(t
96a0: 68 69 73 2e 6f 62 6a 29 20 2b 20 27 3a 20 27 20  his.obj) + ': ' 
96b0: 2b 20 74 68 69 73 2e 70 72 6f 70 2e 6e 61 6d 65  + this.prop.name
96c0: 28 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d  (1);..        }.
96d0: 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20  .        return 
96e0: 74 68 69 73 2e 74 69 74 6c 65 3b 0d 0a 20 20 20  this.title;..   
96f0: 20 7d 0d 0a 7d 29 3b 0d 0a 0d 0a 54 65 78 74 44   }..});....TextD
9700: 6f 63 4f 62 6a 65 63 74 20 3d 20 73 74 64 6c 69  ocObject = stdli
9710: 62 2e 43 6c 61 73 73 2e 65 78 74 65 6e 64 28 7b  b.Class.extend({
9720: 0d 0a 20 20 20 20 63 6f 6e 73 74 72 75 63 74 3a  ..    construct:
9730: 20 66 75 6e 63 74 69 6f 6e 20 28 74 78 74 44 6f   function (txtDo
9740: 63 2c 20 74 69 74 6c 65 29 20 7b 0d 0a 20 20 20  c, title) {..   
9750: 20 20 20 20 20 74 68 69 73 2e 6f 62 6a 20 3d 20       this.obj = 
9760: 74 78 74 44 6f 63 3b 0d 0a 20 20 20 20 20 20 20  txtDoc;..       
9770: 20 74 68 69 73 2e 74 69 74 6c 65 20 3d 20 74 69   this.title = ti
9780: 74 6c 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20  tle;..    },..  
9790: 20 20 67 65 74 54 65 78 74 3a 20 66 75 6e 63 74    getText: funct
97a0: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20 20 20  ion() {..       
97b0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 6f 62 6a   return this.obj
97c0: 2e 47 65 74 54 65 78 74 28 29 3b 0d 0a 20 20 20  .GetText();..   
97d0: 20 7d 2c 0d 0a 20 20 20 20 61 63 74 69 76 61 74   },..    activat
97e0: 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d  e: function() {.
97f0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 6f 62  .        this.ob
9800: 6a 2e 53 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20  j.Show();..     
9810: 20 20 20 72 65 74 75 72 6e 20 47 65 74 54 65 78     return GetTex
9820: 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20  tWindow();..    
9830: 7d 2c 0d 0a 20 20 20 20 67 65 74 54 69 74 6c 65  },..    getTitle
9840: 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a  : function() {..
9850: 20 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69          if (!thi
9860: 73 2e 74 69 74 6c 65 29 0d 0a 20 20 20 20 20 20  s.title)..      
9870: 20 20 20 20 20 20 74 68 69 73 2e 74 69 74 6c 65        this.title
9880: 20 3d 20 74 68 69 73 2e 6f 62 6a 2e 55 73 65 64   = this.obj.Used
9890: 46 69 6c 65 4e 61 6d 65 3b 0d 0a 20 20 20 20 20  FileName;..     
98a0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 74     return this.t
98b0: 69 74 6c 65 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 29  itle;..    }..})
98c0: 3b 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 66 69  ;....function fi
98d0: 6e 64 4d 64 4f 62 6a 28 63 75 72 72 65 6e 74 6d  ndMdObj(currentm
98e0: 64 2c 20 75 75 69 64 29 0d 0a 7b 0d 0a 20 20 20  d, uuid)..{..   
98f0: 20 69 66 28 75 75 69 64 20 3d 3d 20 63 75 72 72   if(uuid == curr
9900: 65 6e 74 6d 64 2e 72 6f 6f 74 4f 62 6a 65 63 74  entmd.rootObject
9910: 2e 69 64 29 0d 0a 20 20 20 20 20 20 20 20 72 65  .id)..        re
9920: 74 75 72 6e 20 63 75 72 72 65 6e 74 6d 64 2e 72  turn currentmd.r
9930: 6f 6f 74 4f 62 6a 65 63 74 0d 0a 20 20 20 20 72  ootObject..    r
9940: 65 74 75 72 6e 20 63 75 72 72 65 6e 74 6d 64 2e  eturn currentmd.
9950: 66 69 6e 64 42 79 55 55 49 44 28 75 75 69 64 29  findByUUID(uuid)
9960: 3b 0d 0a 7d 0d 0a 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f  ;..}..////..////
9970: 7d 20 d0 92 d1 81 d0 bf d0 be d0 bc d0 be d0 b3  } ..............
9980: d0 b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0 b5  ................
9990: 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d1 8b 2e   ...............
99a0: 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ..//////////////
99b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
99c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
99d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
99e0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
99f0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 0d 0a 2f 2f  //////////....//
9a00: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9a10: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9a20: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9a30: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9a40: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9a50: 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 54 65  //////..////{ Te
9a60: 78 74 57 69 6e 64 6f 77 73 57 61 74 63 68 65 72  xtWindowsWatcher
9a70: 20 2d 20 d0 be d1 82 d1 81 d0 bb d0 b5 d0 b6 d0   - .............
9a80: b8 d0 b2 d0 b0 d0 b5 d1 82 20 d0 b0 d0 ba d1 82  ......... ......
9a90: d0 b8 d0 b2 d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d1 8e  ................
9aa0: 20 d1 82 d0 b5 d0 ba d1 81 d1 82 d0 be d0 b2 d1   ...............
9ab0: 8b d1 85 20 d0 be d0 ba d0 be d0 bd 20 d0 b8 20  ... ........ .. 
9ac0: d0 b7 d0 b0 d0 bf d0 be d0 bc d0 b8 d0 bd d0 b0  ................
9ad0: d0 b5 d1 82 20 d0 bf d0 be d1 81 d0 bb d0 b5 d0  .... ...........
9ae0: b4 d0 bd d0 b5 d0 b5 2e 0d 0a 2f 2f 2f 2f 0d 0a  ..........////..
9af0: 0d 0a 54 65 78 74 57 69 6e 64 6f 77 73 57 61 74  ..TextWindowsWat
9b00: 63 68 65 72 20 3d 20 73 74 64 6c 69 62 2e 43 6c  cher = stdlib.Cl
9b10: 61 73 73 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a  ass.extend({....
9b20: 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a 20      construct : 
9b30: 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20  function() {..  
9b40: 20 20 20 20 20 20 74 68 69 73 2e 74 69 6d 65 72        this.timer
9b50: 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20  Id = 0;..       
9b60: 20 74 68 69 73 2e 6c 61 73 74 41 63 74 69 76 65   this.lastActive
9b70: 54 65 78 74 57 69 6e 64 6f 77 20 3d 20 6e 75 6c  TextWindow = nul
9b80: 6c 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  l;..        this
9b90: 2e 73 74 61 72 74 57 61 74 63 68 28 29 3b 0d 0a  .startWatch();..
9ba0: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 67 65      },....    ge
9bb0: 74 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f  tActiveTextWindo
9bc0: 77 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20  w : function () 
9bd0: 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74  {..        if (t
9be0: 68 69 73 2e 6c 61 73 74 41 63 74 69 76 65 54 65  his.lastActiveTe
9bf0: 78 74 57 69 6e 64 6f 77 20 26 26 20 74 68 69 73  xtWindow && this
9c00: 2e 6c 61 73 74 41 63 74 69 76 65 54 65 78 74 57  .lastActiveTextW
9c10: 69 6e 64 6f 77 2e 49 73 41 63 74 69 76 65 28 29  indow.IsActive()
9c20: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72  )..            r
9c30: 65 74 75 72 6e 20 74 68 69 73 2e 6c 61 73 74 41  eturn this.lastA
9c40: 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77 3b  ctiveTextWindow;
9c50: 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e  ..        return
9c60: 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 7d 2c 0d 0a   null;..    },..
9c70: 0d 0a 20 20 20 20 73 74 61 72 74 57 61 74 63 68  ..    startWatch
9c80: 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b   : function () {
9c90: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68  ..        if (th
9ca0: 69 73 2e 74 69 6d 65 72 49 64 29 0d 0a 20 20 20  is.timerId)..   
9cb0: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 73 74           this.st
9cc0: 6f 70 57 61 74 63 68 28 29 3b 0d 0a 20 20 20 20  opWatch();..    
9cd0: 20 20 20 20 74 68 69 73 2e 74 69 6d 65 72 49 64      this.timerId
9ce0: 20 3d 20 63 72 65 61 74 65 54 69 6d 65 72 28 35   = createTimer(5
9cf0: 30 30 2c 20 74 68 69 73 2c 20 27 6f 6e 54 69 6d  00, this, 'onTim
9d00: 65 72 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  er');..    },...
9d10: 0a 20 20 20 20 73 74 6f 70 57 61 74 63 68 20 3a  .    stopWatch :
9d20: 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a   function () {..
9d30: 20 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69          if (!thi
9d40: 73 2e 74 69 6d 65 72 49 64 29 0d 0a 20 20 20 20  s.timerId)..    
9d50: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d          return;.
9d60: 0a 20 20 20 20 20 20 20 20 6b 69 6c 6c 54 69 6d  .        killTim
9d70: 65 72 28 74 68 69 73 2e 74 69 6d 65 72 49 64 29  er(this.timerId)
9d80: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
9d90: 74 69 6d 65 72 49 64 20 3d 20 30 3b 0d 0a 20 20  timerId = 0;..  
9da0: 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 6f 6e 54 69    },....    onTi
9db0: 6d 65 72 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  mer : function (
9dc0: 74 69 6d 65 72 49 64 29 20 7b 0d 0a 20 20 20 20  timerId) {..    
9dd0: 20 20 20 20 76 61 72 20 77 6e 64 20 3d 20 47 65      var wnd = Ge
9de0: 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 20 20  tTextWindow();  
9df0: 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28    ..        if (
9e00: 77 6e 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20  wnd)..          
9e10: 20 20 74 68 69 73 2e 6c 61 73 74 41 63 74 69 76    this.lastActiv
9e20: 65 54 65 78 74 57 69 6e 64 6f 77 20 3d 20 77 6e  eTextWindow = wn
9e30: 64 3b 0d 0a 20 20 20 20 20 20 20 20 65 6c 73 65  d;..        else
9e40: 20 69 66 20 28 74 68 69 73 2e 6c 61 73 74 41 63   if (this.lastAc
9e50: 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77 20 26  tiveTextWindow &
9e60: 26 20 21 74 68 69 73 2e 6c 61 73 74 41 63 74 69  & !this.lastActi
9e70: 76 65 54 65 78 74 57 69 6e 64 6f 77 2e 49 73 41  veTextWindow.IsA
9e80: 63 74 69 76 65 28 29 29 0d 0a 20 20 20 20 20 20  ctive())..      
9e90: 20 20 20 20 20 20 74 68 69 73 2e 6c 61 73 74 41        this.lastA
9ea0: 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77 20  ctiveTextWindow 
9eb0: 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 7d 0d 0a  = null;..    }..
9ec0: 20 20 20 20 0d 0a 7d 29 3b 20 2f 2f 20 65 6e 64      ..}); // end
9ed0: 20 6f 66 20 54 65 78 74 57 69 6e 64 6f 77 73 57   of TextWindowsW
9ee0: 61 74 63 68 65 72 20 63 6c 61 73 73 0d 0a 0d 0a  atcher class....
9ef0: 2f 2f 7d 20 54 65 78 74 57 69 6e 64 6f 77 73 57  //} TextWindowsW
9f00: 61 74 63 68 65 72 20 0d 0a 0d 0a 2f 2f 2f 2f 2f  atcher ..../////
9f10: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9f20: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9f30: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9f40: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9f50: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
9f60: 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 53 74 61 72 74  ///..////{ Start
9f70: 55 70 0d 0a 2f 2f 2f 2f 0d 0a 66 75 6e 63 74 69  Up..////..functi
9f80: 6f 6e 20 47 65 74 45 78 74 53 65 61 72 63 68 28  on GetExtSearch(
9f90: 29 20 7b 0d 0a 20 20 20 20 69 66 20 28 21 45 78  ) {..    if (!Ex
9fa0: 74 53 65 61 72 63 68 2e 5f 69 6e 73 74 61 6e 63  tSearch._instanc
9fb0: 65 29 0d 0a 20 20 20 20 20 20 20 20 6e 65 77 20  e)..        new 
9fc0: 45 78 74 53 65 61 72 63 68 28 29 3b 0d 0a 20 20  ExtSearch();..  
9fd0: 20 20 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 45    ..    return E
9fe0: 78 74 53 65 61 72 63 68 2e 5f 69 6e 73 74 61 6e  xtSearch._instan
9ff0: 63 65 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69  ce;..}....functi
a000: 6f 6e 20 47 65 74 45 78 74 53 65 61 72 63 68 47  on GetExtSearchG
a010: 6c 6f 62 61 6c 28 29 20 7b 0d 0a 20 20 20 20 69  lobal() {..    i
a020: 66 20 28 21 45 78 74 53 65 61 72 63 68 47 6c 6f  f (!ExtSearchGlo
a030: 62 61 6c 2e 5f 69 6e 73 74 61 6e 63 65 29 0d 0a  bal._instance)..
a040: 20 20 20 20 20 20 20 20 6e 65 77 20 45 78 74 53          new ExtS
a050: 65 61 72 63 68 47 6c 6f 62 61 6c 28 29 3b 0d 0a  earchGlobal();..
a060: 20 20 20 20 0d 0a 20 20 20 20 72 65 74 75 72 6e      ..    return
a070: 20 45 78 74 53 65 61 72 63 68 47 6c 6f 62 61 6c   ExtSearchGlobal
a080: 2e 5f 69 6e 73 74 61 6e 63 65 3b 0d 0a 7d 0d 0a  ._instance;..}..
a090: 0d 0a 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65  ....events.conne
a0a0: 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22 62 65  ct(Designer, "be
a0b0: 66 6f 72 65 45 78 69 74 41 70 70 22 2c 20 47 65  foreExitApp", Ge
a0c0: 74 45 78 74 53 65 61 72 63 68 28 29 29 3b 0d 0a  tExtSearch());..
a0d0: 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 44  events.connect(D
a0e0: 65 73 69 67 6e 65 72 2c 20 22 62 65 66 6f 72 65  esigner, "before
a0f0: 45 78 69 74 41 70 70 22 2c 20 47 65 74 45 78 74  ExitApp", GetExt
a100: 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29 29 3b  SearchGlobal());
a110: 0d 0a 2f 2f 2f 2f 7d                             ..////}