Hex Artifact Content Вы: nobody
Вход

Artifact 4df0a25e93fac2dfc2e4d0414d38a7c919298acb:


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 24 61 64 64 69 6e 20 68 6f  tdlib..$addin ho
0090: 74 6b 65 79 73 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f  tkeys....///////
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 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00f0: 2f 0d 0a 2f 2f 2f 2f 7b 20 43 d0 ba d1 80 d0 b8  /..////{ C......
0100: d0 bf d1 82 20 22 d0 a0 d0 b0 d1 81 d1 88 d0 b8  .... "..........
0110: d1 80 d0 b5 d0 bd d0 bd d1 8b d0 b9 20 d0 bf d0  ............ ...
0120: be d0 b8 d1 81 d0 ba 22 20 28 65 78 74 53 65 61  ......." (extSea
0130: 72 63 68 2e 6a 73 29 20 d0 b4 d0 bb d1 8f 20 d0  rch.js) ...... .
0140: bf d1 80 d0 be d0 b5 d0 ba d1 82 d0 b0 20 22 d0  ............. ".
0150: a1 d0 bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1 82 22  ..............."
0160: 0d 0a 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 20 d0 9e d0  ..////..//// ...
0170: bf d0 b8 d1 81 d0 b0 d0 bd d0 b8 d0 b5 3a 20 d0  .............: .
0180: a0 d0 b5 d0 b0 d0 bb d0 b8 d0 b7 d1 83 d0 b5 d1  ................
0190: 82 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20 d1 82 d0  . .......... ...
01a0: b5 d0 ba d1 81 d1 82 d0 b0 20 d0 bf d1 80 d0 b8  ......... ......
01b0: 20 d0 bf d0 be d0 bc d0 be d1 89 d0 b8 20 d1 80   ............ ..
01c0: d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b  ................
01d0: d1 85 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0  .. .............
01e0: bd d0 b8 d0 b9 20 d0 b2 20 d0 b0 d0 ba d1 82 d0  ..... .. .......
01f0: b8 d0 b2 d0 bd d0 be d0 bc 20 d0 be d0 ba d0 bd  ......... ......
0200: d0 b5 20 d1 80 d0 b5 d0 b4 d0 b0 d0 ba d1 82 d0  .. .............
0210: be d1 80 d0 b0 2e 0d 0a 2f 2f 2f 2f 20 d0 90 d0  ........//// ...
0220: b2 d1 82 d0 be d1 80 3a 20 d0 90 d0 bb d0 b5 d0  .......: .......
0230: ba d1 81 d0 b0 d0 bd d0 b4 d1 80 20 d0 9a d1 83  ........... ....
0240: d0 bd d1 82 d0 b0 d1 88 d0 be d0 b2 20 3c 6b 75  ............ <ku
0250: 6e 74 61 73 68 6f 76 40 67 6d 61 69 6c 2e 63 6f  ntashov@gmail.co
0260: 6d 3e 2c 20 68 74 74 70 3a 2f 2f 63 6f 6d 70 61  m>, http://compa
0270: 75 64 2e 72 75 2f 62 6c 6f 67 0d 0a 2f 2f 2f 2f  ud.ru/blog..////
0280: 7d 0d 0a 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 2f 2f 2f 2f 2f  ////////////////
02d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 0d 0a 73  ///////////....s
02e0: 74 64 6c 69 62 2e 72 65 71 75 69 72 65 28 27 54  tdlib.require('T
02f0: 65 78 74 57 69 6e 64 6f 77 2e 6a 73 27 2c 20 53  extWindow.js', S
0300: 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 73 74 64  elfScript);..std
0310: 6c 69 62 2e 72 65 71 75 69 72 65 28 27 53 63 72  lib.require('Scr
0320: 69 70 74 46 6f 72 6d 2e 6a 73 27 2c 20 53 65 6c  iptForm.js', Sel
0330: 66 53 63 72 69 70 74 29 3b 0d 0a 67 6c 6f 62 61  fScript);..globa
0340: 6c 2e 63 6f 6e 6e 65 63 74 47 6c 6f 62 61 6c 73  l.connectGlobals
0350: 28 53 65 6c 66 53 63 72 69 70 74 29 3b 0d 0a 0d  (SelfScript);...
0360: 0a 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 2f 2f 2f 2f 2f 2f 2f  ////////////////
03b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b  /////////..////{
03c0: 20 d0 9c d0 b0 d0 ba d1 80 d0 be d1 81 d1 8b 0d   ...............
03d0: 0a 2f 2f 2f 2f 0d 0a 0d 0a 53 65 6c 66 53 63 72  .////....SelfScr
03e0: 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73  ipt.self['macros
03f0: d0 9d d0 b0 d0 b9 d1 82 d0 b8 20 d1 82 d0 b5 d0  .......... .....
0400: ba d1 81 d1 82 27 5d 20 3d 20 66 75 6e 63 74 69  .....'] = functi
0410: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 0d 0a 20 20  on() {..    ..  
0420: 20 20 76 61 72 20 77 20 3d 20 47 65 74 54 65 78    var w = GetTex
0430: 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20  tWindow();..    
0440: 69 66 20 28 21 77 29 20 72 65 74 75 72 6e 20 66  if (!w) return f
0450: 61 6c 73 65 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  alse;..    ..   
0460: 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78 74   var es = GetExt
0470: 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 20  Search();..     
0480: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 73 65 6c     ..    var sel
0490: 54 65 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65  Text = w.GetSele
04a0: 63 74 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20  ctedText();..   
04b0: 20 69 66 20 28 73 65 6c 54 65 78 74 20 3d 3d 20   if (selText == 
04c0: 27 27 29 0d 0a 20 20 20 20 20 20 20 20 73 65 6c  '')..        sel
04d0: 54 65 78 74 20 3d 20 77 2e 47 65 74 57 6f 72 64  Text = w.GetWord
04e0: 55 6e 64 65 72 43 75 72 73 6f 72 28 29 3b 0d 0a  UnderCursor();..
04f0: 20 20 20 20 0d 0a 20 20 20 20 65 73 2e 73 65 74      ..    es.set
0500: 53 69 6d 70 6c 65 51 75 65 72 79 28 73 65 6c 54  SimpleQuery(selT
0510: 65 78 74 29 3b 20 20 20 20 0d 0a 20 20 20 20 65  ext);    ..    e
0520: 73 2e 73 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20  s.show();..     
0530: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 73 65 6c     ..    if (sel
0540: 54 65 78 74 20 3d 3d 20 27 27 29 0d 0a 20 20 20  Text == '')..   
0550: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 63   {..        es.c
0560: 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74  learSearchResult
0570: 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 65 73  s();..        es
0580: 2e 73 65 74 44 65 66 61 75 6c 74 53 65 61 72 63  .setDefaultSearc
0590: 68 51 75 65 72 79 28 29 3b 0d 0a 20 20 20 20 7d  hQuery();..    }
05a0: 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20  ..    else..    
05b0: 20 20 20 20 65 73 2e 73 65 61 72 63 68 41 63 74      es.searchAct
05c0: 69 76 65 44 6f 63 28 74 72 75 65 29 3b 0d 0a 20  iveDoc(true);.. 
05d0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 72 65 74         ..    ret
05e0: 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d 0a  urn true;..}....
05f0: 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b  SelfScript.self[
0600: 27 6d 61 63 72 6f 73 d0 9d d0 b0 d0 b9 d1 82 d0  'macros.........
0610: b8 20 d0 b2 d0 be 20 d0 b2 d1 81 d0 b5 d1 85 20  . .... ........ 
0620: d0 be d1 82 d0 ba d1 80 d1 8b d1 82 d1 8b d1 85  ................
0630: 20 d0 b4 d0 be d0 ba d1 83 d0 bc d0 b5 d0 bd d1   ...............
0640: 82 d0 b0 d1 85 27 5d 20 3d 20 66 75 6e 63 74 69  .....'] = functi
0650: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 0d 0a 20 20  on() {..    ..  
0660: 20 20 76 61 72 20 77 20 3d 20 47 65 74 54 65 78    var w = GetTex
0670: 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20  tWindow();..    
0680: 69 66 20 28 21 77 29 20 72 65 74 75 72 6e 20 66  if (!w) return f
0690: 61 6c 73 65 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  alse;..    ..   
06a0: 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78 74   var es = GetExt
06b0: 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 20  Search();..     
06c0: 20 20 20 0d 0a 20 20 20 20 76 61 72 20 73 65 6c     ..    var sel
06d0: 54 65 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65  Text = w.GetSele
06e0: 63 74 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20  ctedText();..   
06f0: 20 69 66 20 28 73 65 6c 54 65 78 74 20 3d 3d 20   if (selText == 
0700: 27 27 29 0d 0a 20 20 20 20 20 20 20 20 73 65 6c  '')..        sel
0710: 54 65 78 74 20 3d 20 77 2e 47 65 74 57 6f 72 64  Text = w.GetWord
0720: 55 6e 64 65 72 43 75 72 73 6f 72 28 29 3b 0d 0a  UnderCursor();..
0730: 20 20 20 20 0d 0a 20 20 20 20 65 73 2e 73 65 74      ..    es.set
0740: 53 69 6d 70 6c 65 51 75 65 72 79 28 73 65 6c 54  SimpleQuery(selT
0750: 65 78 74 29 3b 20 20 20 20 0d 0a 20 20 20 20 65  ext);    ..    e
0760: 73 2e 73 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20  s.show();..     
0770: 20 20 20 0d 0a 20 20 20 20 69 66 20 28 73 65 6c     ..    if (sel
0780: 54 65 78 74 20 3d 3d 20 27 27 29 0d 0a 20 20 20  Text == '')..   
0790: 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 63   {..        es.c
07a0: 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74  learSearchResult
07b0: 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 65 73  s();..        es
07c0: 2e 73 65 74 44 65 66 61 75 6c 74 53 65 61 72 63  .setDefaultSearc
07d0: 68 51 75 65 72 79 28 29 3b 0d 0a 20 20 20 20 7d  hQuery();..    }
07e0: 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20  ..    else..    
07f0: 20 20 20 20 65 73 2e 73 65 61 72 63 68 4f 70 65      es.searchOpe
0800: 6e 65 64 57 69 6e 64 6f 77 73 28 74 72 75 65 29  nedWindows(true)
0810: 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ;..        ..   
0820: 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d   return true;..}
0830: 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73  ....SelfScript.s
0840: 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 93 d0 bb d0  elf['macros.....
0850: be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b9 20  ............... 
0860: d0 bf d0 be d0 b8 d1 81 d0 ba 27 5d 20 3d 20 66  ..........'] = f
0870: 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20  unction() {..   
0880: 20 0d 0a 20 20 20 20 76 61 72 20 65 73 20 3d 20   ..    var es = 
0890: 47 65 74 45 78 74 53 65 61 72 63 68 47 6c 6f 62  GetExtSearchGlob
08a0: 61 6c 28 29 3b 0d 0a 0d 0a 20 20 20 20 76 61 72  al();....    var
08b0: 20 77 20 3d 20 47 65 74 54 65 78 74 57 69 6e 64   w = GetTextWind
08c0: 6f 77 28 29 3b 0d 0a 20 20 20 20 69 66 20 28 21  ow();..    if (!
08d0: 77 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61  w) {..        va
08e0: 72 20 73 65 6c 54 65 78 74 20 3d 20 27 27 3b 0d  r selText = '';.
08f0: 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20  .    } else {.. 
0900: 20 20 20 20 20 20 20 76 61 72 20 73 65 6c 54 65         var selTe
0910: 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65 63 74  xt = w.GetSelect
0920: 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20 20 20  edText();..     
0930: 20 20 20 69 66 20 28 73 65 6c 54 65 78 74 20 3d     if (selText =
0940: 3d 20 27 27 29 0d 0a 20 20 20 20 20 20 20 20 20  = '')..         
0950: 20 20 20 73 65 6c 54 65 78 74 20 3d 20 77 2e 47     selText = w.G
0960: 65 74 57 6f 72 64 55 6e 64 65 72 43 75 72 73 6f  etWordUnderCurso
0970: 72 28 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20  r();..    }..   
0980: 20 0d 0a 20 20 20 20 65 73 2e 69 73 47 6c 6f 62   ..    es.isGlob
0990: 61 6c 46 69 6e 64 20 3d 20 74 72 75 65 3b 0d 0a  alFind = true;..
09a0: 20 20 20 20 65 73 2e 61 63 74 69 76 65 56 69 65      es.activeVie
09b0: 77 20 3d 20 77 69 6e 64 6f 77 73 2e 67 65 74 41  w = windows.getA
09c0: 63 74 69 76 65 56 69 65 77 28 29 3b 0d 0a 20 20  ctiveView();..  
09d0: 20 20 65 73 2e 69 73 49 6e 43 75 72 72 65 6e 74    es.isInCurrent
09e0: 4d 64 43 6f 6e 74 65 69 6e 65 72 46 69 6e 64 20  MdConteinerFind 
09f0: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 65 73  = false;..    es
0a00: 2e 73 65 74 53 69 6d 70 6c 65 51 75 65 72 79 28  .setSimpleQuery(
0a10: 73 65 6c 54 65 78 74 29 3b 20 20 20 20 0d 0a 20  selText);    .. 
0a20: 20 20 20 65 73 2e 73 68 6f 77 28 29 3b 0d 0a 0d     es.show();...
0a30: 0a 20 20 20 20 69 66 20 28 73 65 6c 54 65 78 74  .    if (selText
0a40: 20 3d 3d 20 27 27 29 0d 0a 20 20 20 20 7b 0d 0a   == '')..    {..
0a50: 20 20 20 20 20 20 20 20 65 73 2e 63 6c 65 61 72          es.clear
0a60: 53 65 61 72 63 68 52 65 73 75 6c 74 73 28 29 3b  SearchResults();
0a70: 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 73 65 74  ..        es.set
0a80: 44 65 66 61 75 6c 74 53 65 61 72 63 68 51 75 65  DefaultSearchQue
0a90: 72 79 28 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20  ry();..    }..  
0aa0: 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20    else..        
0ab0: 65 73 2e 73 65 61 72 63 68 49 6e 4d 65 74 61 64  es.searchInMetad
0ac0: 61 74 61 28 74 72 75 65 29 3b 0d 0a 20 20 20 20  ata(true);..    
0ad0: 20 20 20 20 0d 0a 20 20 20 20 72 65 74 75 72 6e      ..    return
0ae0: 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c   true;..}....Sel
0af0: 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61  fScript.self['ma
0b00: 63 72 6f 73 d0 93 d0 bb d0 be d0 b1 d0 b0 d0 bb  cros............
0b10: d1 8c d0 bd d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1  ........ .......
0b20: 81 d0 ba 20 d0 bf d0 be 20 d1 82 d0 b5 d0 ba d1  ... .... .......
0b30: 83 d1 89 d0 b5 d0 bc d1 83 20 d0 ba d0 be d0 bd  ......... ......
0b40: d1 82 d0 b5 d0 b9 d0 bd d0 b5 d1 80 d1 83 27 5d  ..............']
0b50: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d   = function() {.
0b60: 0a 20 20 20 20 2f 2f d0 a2 d0 b5 d0 ba d1 83 d1  .    //.........
0b70: 89 d0 b8 d0 b9 20 d0 ba d0 be d0 bd d1 82 d0 b5  ..... ..........
0b80: d0 b9 d0 bd d0 b5 d1 80 20 d0 bc d0 b5 d1 82 d0  ........ .......
0b90: b0 d0 b4 d0 b0 d0 bd d0 bd d1 8b d1 85 20 d0 be  ............. ..
0ba0: d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d1 8f d0 b5  ................
0bb0: d0 bc 20 d0 bf d0 be 20 d0 b0 d0 ba d1 82 d0 b8  .. .... ........
0bc0: d0 b2 d0 bd d0 be d0 bc d1 83 20 d0 be d0 ba d0  .......... .....
0bd0: bd d1 83 2e 20 0d 0a 20 20 20 20 2f 2f d0 b1 d1  .... ..    //...
0be0: 83 d0 b4 d0 b5 d1 82 20 d0 be d1 82 d0 ba d1 80  ....... ........
0bf0: d1 8b d1 82 d0 b0 20 d0 b2 d0 bd d0 b5 d1 88 d0  ...... .........
0c00: bd d1 8f d1 8f 20 d0 be d0 b1 d1 80 d0 b0 d0 b1  ..... ..........
0c10: d0 be d1 82 d0 ba d0 b0 2c 20 d0 b7 d0 b0 d0 bd  ........, ......
0c20: d1 87 d0 b8 d1 82 20 d0 b8 d1 89 d0 b5 d0 bc 20  ...... ........ 
0c30: d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd  ................
0c40: d0 be 20 d1 82 d0 be d0 bb d1 8c d0 ba d0 be 20  .. ............ 
0c50: d0 bf d0 be 20 d1 8d d1 82 d0 be d0 b9 20 d0 be  .... ........ ..
0c60: d0 b1 d1 80 d0 b0 d0 b1 d0 be d1 82 d0 ba d0 b5  ................
0c70: 2e 20 0d 0a 20 20 20 20 2f 2f d0 be d1 82 d0 ba  . ..    //......
0c80: d1 80 d1 8b d1 82 20 63 66 20 d1 84 d0 b0 d0 b9  ...... cf ......
0c90: d0 bb 20 d0 b8 d0 bb d0 b8 20 d0 b6 d0 b5 20 63  .. ...... .... c
0ca0: 66 20 d0 b1 d0 b0 d0 b7 d1 8b 20 d0 b4 d0 b0 d0  f ........ .....
0cb0: bd d0 bd d1 8b d1 85 20 d0 b8 20 d0 bc d1 8b 20  ....... .. .... 
0cc0: d0 bd d0 b0 d1 85 d0 be d0 b4 d0 b8 d0 bc d1 81  ................
0cd0: d1 8f 20 d0 b2 20 d1 82 d0 b5 d0 ba d1 81 d1 82  .. .. ..........
0ce0: d0 be d0 b2 d0 be d0 bc 20 d0 bc d0 be d0 b4 d1  ........ .......
0cf0: 83 d0 bb d0 b5 20 d0 be d0 bf d1 80 d0 b5 d0 b4  ..... ..........
0d00: d0 b5 d0 bb d0 b5 d0 bd d0 bd d0 be d0 b9 20 0d  .............. .
0d10: 0a 20 20 20 20 2f 2f d0 ba d0 be d0 bd d1 84 d0  .    //.........
0d20: b8 d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d0 b8 2c  ...............,
0d30: 20 d0 b7 d0 bd d0 b0 d1 87 d0 b8 d1 82 20 d0 b8   ............ ..
0d40: d1 81 d0 ba d0 b0 d1 82 d1 8c 20 d0 b1 d1 83 d0  .......... .....
0d50: b4 d0 b5 d1 82 20 d0 bf d0 be 20 d1 82 d0 b5 d0  ..... .... .....
0d60: ba d1 83 d1 89 d0 b5 d0 b9 20 d0 ba d0 be d0 bd  ......... ......
0d70: d1 82 d0 b5 d0 b9 d0 bd d0 b5 d1 80 d1 83 2e 20  ............... 
0d80: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 0d 0a 20 20  ..    ..    ..  
0d90: 20 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78    var es = GetEx
0da0: 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29 3b  tSearchGlobal();
0db0: 0d 0a 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61  ....    ..    va
0dc0: 72 20 77 20 3d 20 47 65 74 54 65 78 74 57 69 6e  r w = GetTextWin
0dd0: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 69 66 20 28  dow();..    if (
0de0: 21 77 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 76  !w) {..        v
0df0: 61 72 20 73 65 6c 54 65 78 74 20 3d 20 27 27 3b  ar selText = '';
0e00: 0d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a  ..    } else {..
0e10: 20 20 20 20 20 20 20 20 76 61 72 20 73 65 6c 54          var selT
0e20: 65 78 74 20 3d 20 77 2e 47 65 74 53 65 6c 65 63  ext = w.GetSelec
0e30: 74 65 64 54 65 78 74 28 29 3b 0d 0a 20 20 20 20  tedText();..    
0e40: 20 20 20 20 69 66 20 28 73 65 6c 54 65 78 74 20      if (selText 
0e50: 3d 3d 20 27 27 29 0d 0a 20 20 20 20 20 20 20 20  == '')..        
0e60: 20 20 20 20 73 65 6c 54 65 78 74 20 3d 20 77 2e      selText = w.
0e70: 47 65 74 57 6f 72 64 55 6e 64 65 72 43 75 72 73  GetWordUnderCurs
0e80: 6f 72 28 29 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20  or();..    }..  
0e90: 20 20 0d 0a 20 20 20 20 0d 0a 20 20 20 20 65 73    ..    ..    es
0ea0: 2e 69 73 47 6c 6f 62 61 6c 46 69 6e 64 20 3d 20  .isGlobalFind = 
0eb0: 74 72 75 65 3b 0d 0a 20 20 20 20 65 73 2e 61 63  true;..    es.ac
0ec0: 74 69 76 65 56 69 65 77 20 3d 20 77 69 6e 64 6f  tiveView = windo
0ed0: 77 73 2e 67 65 74 41 63 74 69 76 65 56 69 65 77  ws.getActiveView
0ee0: 28 29 3b 0d 0a 20 20 20 20 65 73 2e 69 73 49 6e  ();..    es.isIn
0ef0: 43 75 72 72 65 6e 74 4d 64 43 6f 6e 74 65 69 6e  CurrentMdContein
0f00: 65 72 46 69 6e 64 20 3d 20 74 72 75 65 3b 0d 0a  erFind = true;..
0f10: 20 20 20 20 65 73 2e 73 65 74 53 69 6d 70 6c 65      es.setSimple
0f20: 51 75 65 72 79 28 73 65 6c 54 65 78 74 29 3b 20  Query(selText); 
0f30: 20 20 20 0d 0a 20 20 20 20 65 73 2e 73 68 6f 77     ..    es.show
0f40: 28 29 3b 0d 0a 0d 0a 20 20 20 20 69 66 20 28 73  ();....    if (s
0f50: 65 6c 54 65 78 74 20 3d 3d 20 27 27 29 0d 0a 20  elText == '').. 
0f60: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 65 73     {..        es
0f70: 2e 63 6c 65 61 72 53 65 61 72 63 68 52 65 73 75  .clearSearchResu
0f80: 6c 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  lts();..        
0f90: 65 73 2e 73 65 74 44 65 66 61 75 6c 74 53 65 61  es.setDefaultSea
0fa0: 72 63 68 51 75 65 72 79 28 29 3b 0d 0a 20 20 20  rchQuery();..   
0fb0: 20 7d 0d 0a 20 20 20 20 65 6c 73 65 0d 0a 20 20   }..    else..  
0fc0: 20 20 20 20 20 20 65 73 2e 73 65 61 72 63 68 49        es.searchI
0fd0: 6e 4d 65 74 61 64 61 74 61 28 74 72 75 65 29 3b  nMetadata(true);
0fe0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
0ff0: 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d  return true;..}.
1000: 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65  ...SelfScript.se
1010: 6c 66 5b 27 6d 61 63 72 6f 73 d0 93 d0 bb 20 d0  lf['macros.... .
1020: bf d0 be d0 b8 d1 81 d0 ba 20 d1 84 d0 b8 d0 bb  ......... ......
1030: d1 8c d1 82 d1 80 20 d0 bf d0 be 20 d0 bc d0 b5  ...... .... ....
1040: d1 82 d0 b0 d0 b4 d0 b0 d0 bd d0 bd d1 8b d0 bc  ................
1050: 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20  '] = function() 
1060: 7b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76 61 72  {..    ..    var
1070: 20 65 73 20 3d 20 47 65 74 45 78 74 53 65 61 72   es = GetExtSear
1080: 63 68 47 6c 6f 62 61 6c 28 29 3b 0d 0a 20 20 20  chGlobal();..   
1090: 20 69 66 20 28 65 73 2e 69 73 47 6c 6f 62 61 6c   if (es.isGlobal
10a0: 46 69 6e 64 29 7b 0d 0a 20 20 20 20 20 20 20 20  Find){..        
10b0: 6d 64 20 3d 20 73 74 64 6c 69 62 2e 72 65 71 75  md = stdlib.requ
10c0: 69 72 65 28 73 74 64 6c 69 62 2e 67 65 74 53 6e  ire(stdlib.getSn
10d0: 65 67 6f 70 61 74 4d 61 69 6e 46 6f 6c 64 65 72  egopatMainFolder
10e0: 28 29 20 2b 20 27 73 63 72 69 70 74 73 5c 5c 6d  () + 'scripts\\m
10f0: 64 4e 61 76 69 67 61 74 6f 72 2e 6a 73 27 29 3b  dNavigator.js');
1100: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 65 73  ..        if (es
1110: 2e 66 69 6c 74 65 72 42 79 55 55 49 44 29 7b 0d  .filterByUUID){.
1120: 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 73 2e  .            es.
1130: 76 74 4d 44 20 3d 20 7b 7d 3b 0d 0a 20 20 20 20  vtMD = {};..    
1140: 20 20 20 20 20 20 20 20 65 73 2e 66 69 6c 74 65          es.filte
1150: 72 42 79 55 55 49 44 20 3d 20 6e 75 6c 6c 3b 0d  rByUUID = null;.
1160: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
1170: 20 20 20 20 65 73 2e 66 69 6c 74 65 72 42 79 55      es.filterByU
1180: 55 49 44 20 3d 20 6d 64 2e 53 65 6c 65 63 74 4d  UID = md.SelectM
1190: 64 55 55 49 44 28 29 3b 0d 0a 20 20 20 20 7d 20  dUUID();..    } 
11a0: 0d 0a 20 20 20 20 65 73 2e 73 68 6f 77 28 29 3b  ..    es.show();
11b0: 0d 0a 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 74  ....    return t
11c0: 72 75 65 3b 0d 0a 7d 0d 0a 0d 0a 0d 0a 0d 0a 53  rue;..}........S
11d0: 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27  elfScript.self['
11e0: 6d 61 63 72 6f 73 d0 9e d1 82 d0 bc d0 b5 d0 bd  macros..........
11f0: d0 b8 d1 82 d1 8c 20 d0 b3 d0 bb d0 be d0 b1 d0  ...... .........
1200: b0 d0 bb d1 8c d0 bd d1 8b d0 b9 20 d0 bf d0 be  ........... ....
1210: d0 b8 d1 81 d0 ba 27 5d 20 3d 20 66 75 6e 63 74  ......'] = funct
1220: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72  ion() {..    var
1230: 20 65 73 20 3d 20 47 65 74 45 78 74 53 65 61 72   es = GetExtSear
1240: 63 68 47 6c 6f 62 61 6c 28 29 3b 0d 0a 20 20 20  chGlobal();..   
1250: 20 69 66 20 28 65 73 2e 73 74 61 72 74 47 6c 6f   if (es.startGlo
1260: 62 61 6c 53 65 61 72 63 68 29 7b 0d 0a 20 20 20  balSearch){..   
1270: 20 20 20 20 20 65 73 2e 73 74 61 72 74 47 6c 6f       es.startGlo
1280: 62 61 6c 53 65 61 72 63 68 20 3d 20 66 61 6c 73  balSearch = fals
1290: 65 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a  e;..    }..}....
12a0: 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b  SelfScript.self[
12b0: 27 6d 61 63 72 6f 73 d0 9e d1 82 d0 ba d1 80 d1  'macros.........
12c0: 8b d1 82 d1 8c 20 d0 be d0 ba d0 bd d0 be 20 d0  ..... ........ .
12d0: bf d0 be d0 b8 d1 81 d0 ba d0 b0 27 5d 20 3d 20  ...........'] = 
12e0: 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20  function() {..  
12f0: 20 20 47 65 74 45 78 74 53 65 61 72 63 68 28 29    GetExtSearch()
1300: 2e 73 68 6f 77 28 29 3b 0d 0a 7d 0d 0a 0d 0a 53  .show();..}....S
1310: 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27  elfScript.self['
1320: 6d 61 63 72 6f 73 d0 97 d0 b0 d0 ba d1 80 d1 8b  macros..........
1330: d1 82 d1 8c 20 d0 be d0 ba d0 bd d0 be 20 d0 bf  .... ........ ..
1340: d0 be d0 b8 d1 81 d0 ba d0 b0 27 5d 20 3d 20 66  ..........'] = f
1350: 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20  unction() {..   
1360: 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78 74   var es = GetExt
1370: 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 69  Search();..    i
1380: 66 20 28 65 73 2e 69 73 4f 70 65 6e 28 29 29 20  f (es.isOpen()) 
1390: 7b 0d 0a 20 20 20 20 20 20 20 20 65 73 2e 63 6c  {..        es.cl
13a0: 6f 73 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  ose();..        
13b0: 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 20 20  return true;..  
13c0: 20 20 7d 0d 0a 20 20 20 20 72 65 74 75 72 6e 20    }..    return 
13d0: 66 61 6c 73 65 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c  false;..}....Sel
13e0: 66 53 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61  fScript.self['ma
13f0: 63 72 6f 73 d0 9f d0 b5 d1 80 d0 b5 d0 b9 d1 82  cros............
1400: d0 b8 20 d0 ba 20 d1 81 d0 bb d0 b5 d0 b4 d1 83  .. .. ..........
1410: d1 8e d1 89 d0 b5 d0 bc d1 83 20 d1 81 d0 be d0  .......... .....
1420: b2 d0 bf d0 b0 d0 b4 d0 b5 d0 bd d0 b8 d1 8e 27  ...............'
1430: 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b  ] = function() {
1440: 0d 0a 20 20 20 20 76 61 72 20 65 73 20 3d 20 47  ..    var es = G
1450: 65 74 45 78 74 53 65 61 72 63 68 28 29 3b 0d 0a  etExtSearch();..
1460: 20 20 20 20 65 73 2e 73 68 6f 77 28 29 3b 0d 0a      es.show();..
1470: 20 20 20 20 65 73 2e 6d 6f 76 65 52 6f 77 43 75      es.moveRowCu
1480: 72 73 6f 72 28 74 72 75 65 29 3b 0d 0a 7d 0d 0a  rsor(true);..}..
1490: 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c  ..SelfScript.sel
14a0: 66 5b 27 6d 61 63 72 6f 73 d0 9f d0 b5 d1 80 d0  f['macros.......
14b0: b5 d0 b9 d1 82 d0 b8 20 d0 ba 20 d0 bf d1 80 d0  ....... .. .....
14c0: b5 d0 b4 d1 8b d0 b4 d1 83 d1 89 d0 b5 d0 bc d1  ................
14d0: 83 20 d1 81 d0 be d0 b2 d0 bf d0 b0 d0 b4 d0 b5  . ..............
14e0: d0 bd d0 b8 d1 8e 27 5d 20 3d 20 66 75 6e 63 74  ......'] = funct
14f0: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72  ion() {..    var
1500: 20 65 73 20 3d 20 47 65 74 45 78 74 53 65 61 72   es = GetExtSear
1510: 63 68 28 29 3b 0d 0a 20 20 20 20 65 73 2e 73 68  ch();..    es.sh
1520: 6f 77 28 29 3b 0d 0a 20 20 20 20 65 73 2e 6d 6f  ow();..    es.mo
1530: 76 65 52 6f 77 43 75 72 73 6f 72 28 66 61 6c 73  veRowCursor(fals
1540: 65 29 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63  e);..}....SelfSc
1550: 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f  ript.self['macro
1560: 73 d0 a1 d0 b2 d0 b5 d1 80 d0 bd d1 83 d1 82 d1  s...............
1570: 8c 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80  . ..............
1580: d0 be d0 b2 d0 ba d0 b8 27 5d 20 3d 20 66 75 6e  ........'] = fun
1590: 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 76  ction() {..    v
15a0: 61 72 20 65 73 20 3d 20 47 65 74 45 78 74 53 65  ar es = GetExtSe
15b0: 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 65 73 2e  arch();..    es.
15c0: 65 78 70 61 6e 64 54 72 65 65 28 74 72 75 65 29  expandTree(true)
15d0: 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69  ;..}....SelfScri
15e0: 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0  pt.self['macros.
15f0: a0 d0 b0 d0 b7 d0 b2 d0 b5 d1 80 d0 bd d1 83 d1  ................
1600: 82 d1 8c 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d0 b8  ... ............
1610: d1 80 d0 be d0 b2 d0 ba d0 b8 27 5d 20 3d 20 66  ..........'] = f
1620: 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20  unction() {..   
1630: 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78 74   var es = GetExt
1640: 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 65  Search();..    e
1650: 73 2e 65 78 70 61 6e 64 54 72 65 65 28 66 61 6c  s.expandTree(fal
1660: 73 65 29 3b 0d 0a 7d 0d 0a 0d 0a 0d 0a 2f 2a 20  se);..}....../* 
1670: d0 92 d0 be d0 b7 d0 b2 d1 80 d0 b0 d1 89 d0 b0  ................
1680: d0 b5 d1 82 20 d0 bd d0 b0 d0 b7 d0 b2 d0 b0 d0  .... ...........
1690: bd d0 b8 d0 b5 20 d0 bc d0 b0 d0 ba d1 80 d0 be  ..... ..........
16a0: d1 81 d0 b0 20 d0 bf d0 be 20 d1 83 d0 bc d0 be  .... .... ......
16b0: d0 bb d1 87 d0 b0 d0 bd d0 b8 d1 8e 20 2d 20 d0  ............ - .
16c0: b2 d1 8b d0 b7 d1 8b d0 b2 d0 b0 d0 b5 d1 82 d1  ................
16d0: 81 d1 8f 2c 20 d0 ba d0 be d0 b3 d0 b4 d0 b0 20  ..., .......... 
16e0: d0 bf d0 be d0 bb d1 8c d0 b7 d0 be d0 b2 d0 b0  ................
16f0: d1 82 d0 b5 d0 bb d1 8c 20 0d 0a d0 b4 d0 b2 d0  ........ .......
1700: b0 d0 b6 d0 b4 d1 8b 20 d1 89 d0 b5 d0 bb d0 ba  ....... ........
1710: d0 b0 d0 b5 d1 82 20 d0 bc d1 8b d1 88 d1 8c d1  ...... .........
1720: 8e 20 d0 bf d0 be 20 d0 bd d0 b0 d0 b7 d0 b2 d0  . .... .........
1730: b0 d0 bd d0 b8 d1 8e 20 d1 81 d0 ba d1 80 d0 b8  ....... ........
1740: d0 bf d1 82 d0 b0 20 d0 b2 20 d0 be d0 ba d0 bd  ...... .. ......
1750: d0 b5 20 d0 a1 d0 bd d0 b5 d0 b3 d0 be d0 bf d0  .. .............
1760: b0 d1 82 d0 b0 2e 20 2a 2f 0d 0a 66 75 6e 63 74  ...... */..funct
1770: 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 4d 61  ion getDefaultMa
1780: 63 72 6f 73 28 29 20 7b 0d 0a 20 20 20 20 72 65  cros() {..    re
1790: 74 75 72 6e 20 27 d0 9e d1 82 d0 ba d1 80 d1 8b  turn '..........
17a0: d1 82 d1 8c 20 d0 be d0 ba d0 bd d0 be 20 d0 bf  .... ........ ..
17b0: d0 be d0 b8 d1 81 d0 ba d0 b0 27 3b 0d 0a 7d 0d  ..........';..}.
17c0: 0a 0d 0a 2f 2f 2f 2f 7d 20 d0 9c d0 b0 d0 ba d1  ...////} .......
17d0: 80 d0 be d1 81 d1 8b 0d 0a 0d 0a 2f 2f 2f 2f 2f  .........../////
17e0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
17f0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1800: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1810: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1820: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1830: 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 45 78 74 53 65  ///..////{ ExtSe
1840: 61 72 63 68 20 2d 20 d0 a0 d0 b0 d1 81 d1 88 d0  arch - .........
1850: b8 d1 80 d0 b5 d0 bd d0 bd d1 8b d0 b9 20 d0 bf  ............. ..
1860: d0 be d0 b8 d1 81 d0 ba 20 d0 b2 20 d1 82 d0 b5  ........ .. ....
1870: d0 ba d1 81 d1 82 d0 b5 20 d0 bc d0 be d0 b4 d1  ........ .......
1880: 83 d0 bb d1 8f 2e 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a  ........////....
1890: 52 6f 77 54 79 70 65 73 20 3d 20 7b 0d 0a 20 20  RowTypes = {..  
18a0: 20 20 27 53 65 61 72 63 68 52 65 73 75 6c 74 27    'SearchResult'
18b0: 20 20 3a 20 30 2c 20 2f 2f 20 d0 a1 d1 82 d1 80    : 0, // ......
18c0: d0 be d0 ba d0 b0 20 d1 80 d0 b5 d0 b7 d1 83 d0  ...... .........
18d0: bb d1 8c d1 82 d0 b0 d1 82 d0 b0 20 d0 bf d0 be  ........... ....
18e0: d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20 20 27  ...........    '
18f0: 50 72 6f 63 47 72 6f 75 70 27 20 20 20 20 20 3a  ProcGroup'     :
1900: 20 31 2c 20 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0   1, // .........
1910: ba d0 b0 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d1 8b  ... ............
1920: 2d d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1  -...............
1930: 80 d1 8b 20 28 d0 b2 20 d1 80 d0 b5 d0 b6 d0 b8  ... (.. ........
1940: d0 bc d0 b5 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d0  .... ...........
1950: b8 d1 80 d0 be d0 b2 d0 ba d0 b8 20 d0 bf d0 be  ........... ....
1960: 20 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1   ...............
1970: 80 d0 b0 d0 bc 20 d0 b8 20 d1 84 d1 83 d0 bd d0  ..... .. .......
1980: ba d1 86 d0 b8 d1 8f d0 bc 29 2e 0d 0a 20 20 20  .........)...   
1990: 20 27 46 75 6e 63 47 72 6f 75 70 27 20 20 20 20   'FuncGroup'    
19a0: 20 3a 20 32 2c 20 2f 2f 20 d0 a1 d1 82 d1 80 d0   : 2, // .......
19b0: be d0 ba d0 b0 20 d0 b3 d1 80 d1 83 d0 bf d0 bf  ..... ..........
19c0: d1 8b 2d d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0  ..-.............
19d0: b8 20 28 d0 b2 20 d1 80 d0 b5 d0 b6 d0 b8 d0 bc  . (.. ..........
19e0: d0 b5 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d0 b8 d1  .. .............
19f0: 80 d0 be d0 b2 d0 ba d0 b8 20 d0 bf d0 be 20 d0  ......... .... .
1a00: bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0  ................
1a10: b0 d0 bc 20 d0 b8 20 d1 84 d1 83 d0 bd d0 ba d1  ... .. .........
1a20: 86 d0 b8 d1 8f d0 bc 29 2e 0d 0a 20 20 20 20 27  .......)...    '
1a30: 53 65 61 72 63 68 44 6f 63 27 20 20 20 20 20 3a  SearchDoc'     :
1a40: 20 33 20 20 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0   3  // .........
1a50: ba d0 b0 20 d0 b4 d0 be d0 ba d1 83 d0 bc d0 b5  ... ............
1a60: d0 bd d1 82 d0 b0 2c 20 d0 b2 20 d0 ba d0 be d1  ......, .. .....
1a70: 82 d0 be d1 80 d0 be d0 bc 20 d0 bf d1 80 d0 be  ......... ......
1a80: d0 b8 d0 b7 d0 b2 d0 be d0 b4 d0 b8 d1 82 d1 81  ................
1a90: d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba 2e 0d 0a  .. .............
1aa0: 7d 0d 0a 0d 0a 52 45 20 3d 20 7b 0d 0a 20 20 20  }....RE = {..   
1ab0: 20 4d 45 54 48 4f 44 5f 53 54 41 52 54 20 3a 20   METHOD_START : 
1ac0: 2f 5e 5c 73 2a 28 28 3f 3a 70 72 6f 63 65 64 75  /^\s*((?:procedu
1ad0: 72 65 29 7c 28 3f 3a 66 75 6e 63 74 69 6f 6e 29  re)|(?:function)
1ae0: 7c 28 3f 3a d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4  |(?:............
1af0: d1 83 d1 80 d0 b0 29 7c 28 3f 3a d1 84 d1 83 d0  ......)|(?:.....
1b00: bd d0 ba d1 86 d0 b8 d1 8f 29 29 5c 73 2b 28 5b  .........))\s+([
1b10: 5c 77 d0 90 2d d1 8f d1 91 d0 81 5c 64 5d 2b 29  \w..-......\d]+)
1b20: 5c 73 2a 5c 28 2f 69 2c 0d 0a 20 20 20 20 4d 45  \s*\(/i,..    ME
1b30: 54 48 4f 44 5f 45 4e 44 20 3a 20 2f 28 28 3f 3a  THOD_END : /((?:
1b40: 45 6e 64 50 72 6f 63 65 64 75 72 65 29 7c 28 3f  EndProcedure)|(?
1b50: 3a 45 6e 64 46 75 6e 63 74 69 6f 6e 29 7c 28 3f  :EndFunction)|(?
1b60: 3a d0 9a d0 be d0 bd d0 b5 d1 86 d0 9f d1 80 d0  :...............
1b70: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b 29 7c 28  .............)|(
1b80: 3f 3a d0 9a d0 be d0 bd d0 b5 d1 86 d0 a4 d1 83  ?:..............
1b90: d0 bd d0 ba d1 86 d0 b8 d0 b8 29 29 2f 69 0d 0a  ..........))/i..
1ba0: 7d 0d 0a 0d 0a 45 78 74 53 65 61 72 63 68 20 3d  }....ExtSearch =
1bb0: 20 53 63 72 69 70 74 46 6f 72 6d 2e 65 78 74 65   ScriptForm.exte
1bc0: 6e 64 28 7b 0d 0a 0d 0a 20 20 20 20 73 65 74 74  nd({....    sett
1bd0: 69 6e 67 73 52 6f 6f 74 50 61 74 68 20 3a 20 53  ingsRootPath : S
1be0: 65 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65  elfScript.unique
1bf0: 4e 61 6d 65 2c 0d 0a 20 20 20 20 0d 0a 20 20 20  Name,..    ..   
1c00: 20 73 65 74 74 69 6e 67 73 20 3a 20 7b 0d 0a 20   settings : {.. 
1c10: 20 20 20 20 20 20 20 70 66 6c 53 6e 65 67 6f 70         pflSnegop
1c20: 61 74 20 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20  at : {..        
1c30: 20 20 20 20 27 49 73 52 65 67 45 78 70 27 20 20      'IsRegExp'  
1c40: 20 20 20 20 3a 20 66 61 6c 73 65 2c 20 2f 2f 20      : false, // 
1c50: d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 80 d0 b5 d0  .......... .....
1c60: b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b d0 bc d0  ................
1c70: b8 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd  . ..............
1c80: d0 b8 d1 8f d0 bc d0 b8 2e 0d 0a 20 20 20 20 20  ...........     
1c90: 20 20 20 20 20 20 20 27 43 61 73 65 53 65 6e 73         'CaseSens
1ca0: 65 74 69 76 65 27 20 3a 20 66 61 6c 73 65 2c 20  etive' : false, 
1cb0: 2f 2f 20 d0 a3 d1 87 d0 b8 d1 82 d1 8b d0 b2 d0  // .............
1cc0: b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b3 d0 b8 d1 81  ..... ..........
1cd0: d1 82 d1 80 20 d0 bf d1 80 d0 b8 20 d0 bf d0 be  .... ...... ....
1ce0: d0 b8 d1 81 d0 ba d0 b5 2e 0d 0a 20 20 20 20 20  ...........     
1cf0: 20 20 20 20 20 20 20 27 57 68 6f 6c 65 57 6f 72         'WholeWor
1d00: 64 73 27 20 20 20 20 3a 20 66 61 6c 73 65 2c 20  ds'    : false, 
1d10: 2f 2f 20 d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 81  // .......... ..
1d20: d0 bb d0 be d0 b2 d0 b0 20 d1 86 d0 b5 d0 bb d0  ........ .......
1d30: b8 d0 ba d0 be d0 bc 2e 0d 0a 20 20 20 20 20 20  ..........      
1d40: 20 20 20 20 20 20 27 53 65 61 72 63 68 48 69 73        'SearchHis
1d50: 74 6f 72 79 27 20 3a 20 76 38 4e 65 77 28 27 56  tory' : v8New('V
1d60: 61 6c 75 65 4c 69 73 74 27 29 2c 20 2f 2f 20 d0  alueList'), // .
1d70: 98 d1 81 d1 82 d0 be d1 80 d0 b8 d1 8f 20 d0 bf  ............. ..
1d80: d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20  .............   
1d90: 20 20 20 20 20 20 20 20 20 27 48 69 73 74 6f 72           'Histor
1da0: 79 44 65 70 74 68 27 20 20 3a 20 31 35 2c 20 2f  yDepth'  : 15, /
1db0: 2f 20 d0 9a d0 be d0 bb d0 b8 d1 87 d0 b5 d1 81  / ..............
1dc0: d1 82 d0 b2 d0 be 20 d1 8d d0 bb d0 b5 d0 bc d0  ...... .........
1dd0: b5 d0 bd d1 82 d0 be d0 b2 20 d0 b8 d1 81 d1 82  ......... ......
1de0: d0 be d1 80 d0 b8 d0 b8 20 d0 bf d0 be d0 b8 d1  ........ .......
1df0: 81 d0 ba d0 b0 2e 0d 0a 20 20 20 20 20 20 20 20  ........        
1e00: 20 20 20 20 27 54 72 65 65 56 69 65 77 27 20 20      'TreeView'  
1e10: 20 20 20 20 3a 20 66 61 6c 73 65 20 2f 2f 20 d0      : false // .
1e20: 93 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0  ................
1e30: b2 d0 b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b7 d1 83  ....... ........
1e40: d0 bb d1 8c d1 82 d0 b0 d1 82 d1 8b 20 d0 bf d0  ............ ...
1e50: be d0 b8 d1 81 d0 ba d0 b0 20 d0 bf d0 be 20 d0  ......... .... .
1e60: bc d0 b5 d1 82 d0 be d0 b4 d0 b0 d0 bc 2e 20 20  ..............  
1e70: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
1e80: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 0d      }..    },...
1e90: 0a 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a  .    construct :
1ea0: 20 66 75 6e 63 74 69 6f 6e 20 28 69 73 45 78 74   function (isExt
1eb0: 65 6e 64 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  end) {..        
1ec0: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 69 73  ..        if (is
1ed0: 45 78 74 65 6e 64 20 3d 3d 20 75 6e 64 65 66 69  Extend == undefi
1ee0: 6e 65 64 29 20 69 73 45 78 74 65 6e 64 20 3d 20  ned) isExtend = 
1ef0: 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20  false;..        
1f00: 74 68 69 73 2e 5f 73 75 70 65 72 28 22 73 63 72  this._super("scr
1f10: 69 70 74 73 5c 5c 65 78 74 53 65 61 72 63 68 2e  ipts\\extSearch.
1f20: 72 65 73 75 6c 74 73 2e 73 73 66 22 29 3b 0d 0a  results.ssf");..
1f30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1f40: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 66  ..        this.f
1f50: 6f 72 6d 2e d0 9a d0 bb d1 8e d1 87 d0 a1 d0 be  orm.............
1f60: d1 85 d1 80 d0 b0 d0 bd d0 b5 d0 bd d0 b8 d1 8f  ................
1f70: d0 9f d0 be d0 bb d0 be d0 b6 d0 b5 d0 bd d0 b8  ................
1f80: d1 8f d0 9e d0 ba d0 bd d0 b0 20 3d 20 22 65 78  .......... = "ex
1f90: 74 53 65 61 72 63 68 2e 6a 73 22 0d 0a 20 20 20  tSearch.js"..   
1fa0: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
1fb0: 73 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f  s = this.form.Co
1fc0: 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73  ntrols.SearchRes
1fd0: 75 6c 74 73 2e 56 61 6c 75 65 3b 0d 0a 20 20 20  ults.Value;..   
1fe0: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
1ff0: 73 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 5f  s.Columns.Add('_
2000: 6d 65 74 68 6f 64 27 29 3b 0d 0a 20 20 20 20 20  method');..     
2010: 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e     this.results.
2020: 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 67 72 6f  Columns.Add('gro
2030: 75 70 73 43 61 63 68 65 27 29 3b 0d 0a 20 20 20  upsCache');..   
2040: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
2050: 73 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 5f  s.Columns.Add('_
2060: 6f 62 6a 65 63 74 27 29 3b 0d 0a 20 20 20 20 20  object');..     
2070: 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e     this.results.
2080: 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 5f 6d 61  Columns.Add('_ma
2090: 74 63 68 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  tch');..        
20a0: 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 43 6f 6c  this.results.Col
20b0: 75 6d 6e 73 2e 41 64 64 28 27 53 6f 72 74 4d 65  umns.Add('SortMe
20c0: 74 61 64 61 74 61 27 29 3b 0d 0a 20 20 20 20 20  tadata');..     
20d0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
20e0: 73 2e 77 61 74 63 68 65 72 20 3d 20 6e 65 77 20  s.watcher = new 
20f0: 54 65 78 74 57 69 6e 64 6f 77 73 57 61 74 63 68  TextWindowsWatch
2100: 65 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 74  er();..        t
2110: 68 69 73 2e 77 61 74 63 68 65 72 2e 73 74 61 72  his.watcher.star
2120: 74 57 61 74 63 68 28 29 3b 0d 0a 20 20 20 20 20  tWatch();..     
2130: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74       ..        t
2140: 68 69 73 2e 6c 6f 61 64 53 65 74 74 69 6e 67 73  his.loadSettings
2150: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ();..        .. 
2160: 20 20 20 20 20 20 20 74 68 69 73 2e 74 61 72 67         this.targ
2170: 65 74 57 69 6e 64 6f 77 20 3d 20 6e 75 6c 6c 3b  etWindow = null;
2180: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
2190: 20 20 20 20 74 68 69 73 2e 49 63 6f 6e 73 20 3d      this.Icons =
21a0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
21b0: 27 46 75 6e 63 27 3a 20 74 68 69 73 2e 66 6f 72  'Func': this.for
21c0: 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 50 69 63 46 75  m.Controls.PicFu
21d0: 6e 63 2e 50 69 63 74 75 72 65 2c 0d 0a 20 20 20  nc.Picture,..   
21e0: 20 20 20 20 20 20 20 20 20 27 50 72 6f 63 27 3a           'Proc':
21f0: 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72   this.form.Contr
2200: 6f 6c 73 2e 50 69 63 50 72 6f 63 2e 50 69 63 74  ols.PicProc.Pict
2210: 75 72 65 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  ure..        }..
2220: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
2230: 20 20 74 68 69 73 2e 53 65 61 72 63 68 44 6f 63    this.SearchDoc
2240: 52 6f 77 46 6f 6e 74 20 3d 20 76 38 4e 65 77 28  RowFont = v8New(
2250: 27 46 6f 6e 74 27 2c 20 75 6e 64 65 66 69 6e 65  'Font', undefine
2260: 64 2c 20 75 6e 64 65 66 69 6e 65 64 2c 20 74 72  d, undefined, tr
2270: 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  ue);..        th
2280: 69 73 2e 69 73 47 6c 6f 62 61 6c 46 69 6e 64 20  is.isGlobalFind 
2290: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20  = false;..      
22a0: 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73    ..        this
22b0: 2e 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69  .SetControlsVisi
22c0: 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  ble();..        
22d0: 69 66 20 28 21 69 73 45 78 74 65 6e 64 29 20 45  if (!isExtend) E
22e0: 78 74 53 65 61 72 63 68 2e 5f 69 6e 73 74 61 6e  xtSearch._instan
22f0: 63 65 20 3d 20 74 68 69 73 3b 0d 0a 20 20 20 20  ce = this;..    
2300: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a  ..    },..    ..
2310: 20 20 20 20 73 65 74 53 69 6d 70 6c 65 51 75 65      setSimpleQue
2320: 72 79 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 71  ry : function (q
2330: 75 65 72 79 29 20 7b 0d 0a 20 20 20 20 20 20 20  uery) {..       
2340: 20 74 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79   this.form.Query
2350: 20 3d 20 71 75 65 72 79 3b 0d 0a 20 20 20 20 20   = query;..     
2360: 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52     this.form.IsR
2370: 65 67 45 78 70 20 3d 20 66 61 6c 73 65 3b 0d 0a  egExp = false;..
2380: 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72          this.for
2390: 6d 2e 43 61 73 65 53 65 6e 73 65 74 69 76 65 20  m.CaseSensetive 
23a0: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20  = false;..      
23b0: 20 20 74 68 69 73 2e 61 64 64 54 6f 48 69 73 74    this.addToHist
23c0: 6f 72 79 28 71 75 65 72 79 29 3b 0d 0a 20 20 20  ory(query);..   
23d0: 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 65   },..    ..    e
23e0: 78 70 61 6e 64 54 72 65 65 20 3a 20 66 75 6e 63  xpandTree : func
23f0: 74 69 6f 6e 20 28 63 6f 6c 6c 61 70 73 65 29 20  tion (collapse) 
2400: 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 74  {..        var t
2410: 72 65 65 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e  ree = this.form.
2420: 43 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52  Controls.SearchR
2430: 65 73 75 6c 74 73 3b 0d 0a 20 20 20 20 20 20 20  esults;..       
2440: 20 66 6f 72 20 28 76 61 72 20 69 3d 30 3b 20 69   for (var i=0; i
2450: 20 3c 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e   < this.results.
2460: 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b  Rows.Count(); i+
2470: 2b 29 0d 0a 20 20 20 20 20 20 20 20 7b 20 20 20  +)..        {   
2480: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
2490: 20 20 20 76 61 72 20 64 6f 63 52 6f 77 20 3d 20     var docRow = 
24a0: 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77  this.results.Row
24b0: 73 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20 20 20  s.Get(i);..     
24c0: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
24d0: 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 29 0d 0a  form.TreeView)..
24e0: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
24f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66                 f
2500: 6f 72 20 28 76 61 72 20 6a 3d 30 3b 20 6a 20 3c  or (var j=0; j <
2510: 20 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 43 6f 75   docRow.Rows.Cou
2520: 6e 74 28 29 3b 20 6a 2b 2b 29 0d 0a 20 20 20 20  nt(); j++)..    
2530: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
2540: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2550: 20 20 20 76 61 72 20 72 6f 77 20 3d 20 64 6f 63     var row = doc
2560: 52 6f 77 2e 52 6f 77 73 2e 47 65 74 28 6a 29 3b  Row.Rows.Get(j);
2570: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2580: 20 20 20 20 20 20 63 6f 6c 6c 61 70 73 65 20 3f        collapse ?
2590: 20 74 72 65 65 2e 43 6f 6c 6c 61 70 73 65 28 72   tree.Collapse(r
25a0: 6f 77 29 20 3a 20 74 72 65 65 2e 45 78 70 61 6e  ow) : tree.Expan
25b0: 64 28 72 6f 77 2c 20 74 72 75 65 29 3b 0d 0a 20  d(row, true);.. 
25c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
25d0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
25e0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73  .            els
25f0: 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b  e..            {
2600: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2610: 20 20 63 6f 6c 6c 61 70 73 65 20 3f 20 74 72 65    collapse ? tre
2620: 65 2e 43 6f 6c 6c 61 70 73 65 28 64 6f 63 52 6f  e.Collapse(docRo
2630: 77 29 20 3a 20 74 72 65 65 2e 45 78 70 61 6e 64  w) : tree.Expand
2640: 28 64 6f 63 52 6f 77 2c 20 74 72 75 65 29 3b 20  (docRow, true); 
2650: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
2660: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
2670: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 20      }..    },.. 
2680: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 67 65 74         ..    get
2690: 57 69 6e 64 6f 77 4f 62 6a 65 63 74 20 3a 20 66  WindowObject : f
26a0: 75 6e 63 74 69 6f 6e 20 28 76 69 65 77 29 20 7b  unction (view) {
26b0: 0d 0a 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  ..       ..     
26c0: 20 20 20 69 66 20 28 76 69 65 77 2e 6d 64 4f 62     if (view.mdOb
26d0: 6a 20 26 26 20 76 69 65 77 2e 6d 64 50 72 6f 70  j && view.mdProp
26e0: 29 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) ..            
26f0: 72 65 74 75 72 6e 20 6e 65 77 20 4d 64 4f 62 6a  return new MdObj
2700: 65 63 74 28 76 69 65 77 2e 6d 64 4f 62 6a 2c 20  ect(view.mdObj, 
2710: 76 69 65 77 2e 6d 64 50 72 6f 70 2c 20 76 69 65  view.mdProp, vie
2720: 77 2e 74 69 74 6c 65 29 3b 0d 0a 20 20 20 20 20  w.title);..     
2730: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
2740: 20 76 61 72 20 6f 62 6a 20 3d 20 76 69 65 77 2e   var obj = view.
2750: 67 65 74 4f 62 6a 65 63 74 28 29 3b 0d 0a 20 20  getObject();..  
2760: 20 20 20 20 20 20 69 66 20 28 6f 62 6a 20 26 26        if (obj &&
2770: 20 74 6f 56 38 56 61 6c 75 65 28 6f 62 6a 29 2e   toV8Value(obj).
2780: 74 79 70 65 4e 61 6d 65 28 30 29 20 3d 3d 20 27  typeName(0) == '
2790: 54 65 78 74 44 6f 63 75 6d 65 6e 74 27 29 0d 0a  TextDocument')..
27a0: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
27b0: 72 6e 20 6e 65 77 20 54 65 78 74 44 6f 63 4f 62  rn new TextDocOb
27c0: 6a 65 63 74 28 6f 62 6a 2c 20 76 69 65 77 2e 74  ject(obj, view.t
27d0: 69 74 6c 65 29 3b 20 20 20 20 20 20 20 20 0d 0a  itle);        ..
27e0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
27f0: 20 20 20 20 20 20 69 66 20 28 6f 62 6a 29 20 4d        if (obj) M
2800: 65 73 73 61 67 65 28 27 d0 9d d0 b5 d0 bf d0 be  essage('........
2810: d0 b4 d0 b4 d0 b5 d1 80 d0 b6 d0 b8 d0 b2 d0 b0  ................
2820: d0 b5 d0 bc d1 8b d0 b9 20 d1 82 d0 b8 d0 bf 20  ........ ...... 
2830: d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 b0 20 d0  .............. .
2840: b4 d0 bb d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
2850: d0 b0 3a 20 27 20 2b 20 74 6f 56 38 56 61 6c 75  ..: ' + toV8Valu
2860: 65 28 6f 62 6a 29 2e 74 79 70 65 4e 61 6d 65 28  e(obj).typeName(
2870: 30 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  0));..        ..
2880: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e          return n
2890: 75 6c 6c 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20  ull;..    },..  
28a0: 20 20 0d 0a 20 20 20 20 73 65 61 72 63 68 4f 70    ..    searchOp
28b0: 65 6e 65 64 57 69 6e 64 6f 77 73 3a 20 66 75 6e  enedWindows: fun
28c0: 63 74 69 6f 6e 20 28 66 72 6f 6d 48 6f 74 4b 65  ction (fromHotKe
28d0: 79 29 20 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20  y) {....        
28e0: 76 61 72 20 61 63 74 69 76 65 57 69 6e 64 6f 77  var activeWindow
28f0: 20 3d 20 74 68 69 73 2e 77 61 74 63 68 65 72 2e   = this.watcher.
2900: 67 65 74 41 63 74 69 76 65 54 65 78 74 57 69 6e  getActiveTextWin
2910: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  dow();..        
2920: 69 66 20 28 21 61 63 74 69 76 65 57 69 6e 64 6f  if (!activeWindo
2930: 77 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20  w) return;..    
2940: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61      ..        va
2950: 72 20 61 63 74 69 76 65 56 69 65 77 20 3d 20 61  r activeView = a
2960: 63 74 69 76 65 57 69 6e 64 6f 77 2e 47 65 74 56  ctiveWindow.GetV
2970: 69 65 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  iew();..        
2980: 69 66 20 28 21 61 63 74 69 76 65 56 69 65 77 29  if (!activeView)
2990: 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20   return;....    
29a0: 20 20 20 20 74 68 69 73 2e 63 6c 65 61 72 53 65      this.clearSe
29b0: 61 72 63 68 52 65 73 75 6c 74 73 28 29 3b 0d 0a  archResults();..
29c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
29d0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74       ..        t
29e0: 68 69 73 2e 72 65 20 3d 20 74 68 69 73 2e 62 75  his.re = this.bu
29f0: 69 6c 64 53 65 61 72 63 68 52 65 67 45 78 70 4f  ildSearchRegExpO
2a00: 62 6a 65 63 74 28 29 3b 0d 0a 20 20 20 20 20 20  bject();..      
2a10: 20 20 69 66 20 28 21 74 68 69 73 2e 72 65 29 20    if (!this.re) 
2a20: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20  return;..       
2a30: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 61   ..        var a
2a40: 63 74 69 76 65 57 6e 64 52 65 73 52 6f 77 20 3d  ctiveWndResRow =
2a50: 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20   null;..        
2a60: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 65 73  ..        var es
2a70: 20 3d 20 74 68 69 73 3b 0d 0a 20 20 20 20 20 20   = this;..      
2a80: 20 20 28 66 75 6e 63 74 69 6f 6e 20 28 76 69 65    (function (vie
2a90: 77 73 29 20 7b 20 20 20 20 20 20 20 20 0d 0a 20  ws) {        .. 
2aa0: 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28 76             for(v
2ab0: 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 76 69  ar i = 0; i < vi
2ac0: 65 77 73 2e 63 6f 75 6e 74 3b 20 69 2b 2b 29 20  ews.count; i++) 
2ad0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d  ..            {.
2ae0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2af0: 20 76 61 72 20 76 20 3d 20 76 69 65 77 73 2e 69   var v = views.i
2b00: 74 65 6d 28 69 29 3b 0d 0a 20 20 20 20 20 20 20  tem(i);..       
2b10: 20 20 20 20 20 20 20 20 20 69 66 28 76 2e 69 73           if(v.is
2b20: 43 6f 6e 74 61 69 6e 65 72 20 21 3d 20 76 63 74  Container != vct
2b30: 4e 6f 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  No)..           
2b40: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
2b50: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0              // .
2b60: 95 d1 81 d0 bb d0 b8 20 d0 be d0 ba d0 bd d0 be  ....... ........
2b70: 20 2d 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 b9 d0   - .............
2b80: bd d0 b5 d1 80 2c 20 d1 82 d0 be 20 d0 be d0 b1  ....., .... ....
2b90: d1 85 d0 be d0 b4 d0 b8 d0 bc 20 d1 80 d0 b5 d0  .......... .....
2ba0: ba d1 83 d1 80 d1 81 d0 b8 d0 b2 d0 bd d0 be 20  ............... 
2bb0: d0 b5 d0 b3 d0 be 20 d0 bf d0 be d1 82 d0 be d0  ...... .........
2bc0: bc d0 ba d0 be d0 b2 2e 0d 0a 20 20 20 20 20 20  ..........      
2bd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72                ar
2be0: 67 75 6d 65 6e 74 73 2e 63 61 6c 6c 65 65 28 76  guments.callee(v
2bf0: 2e 65 6e 75 6d 43 68 69 6c 64 73 28 29 29 3b 0d  .enumChilds());.
2c00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2c10: 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a       continue;..
2c20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2c30: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
2c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2c50: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
2c60: 20 20 20 20 20 76 61 72 20 6f 62 6a 20 3d 20 65       var obj = e
2c70: 73 2e 67 65 74 57 69 6e 64 6f 77 4f 62 6a 65 63  s.getWindowObjec
2c80: 74 28 76 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  t(v);..         
2c90: 20 20 20 20 20 20 20 69 66 20 28 21 6f 62 6a 29         if (!obj)
2ca0: 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20 20   continue;..    
2cb0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
2cc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
2cd0: 72 20 64 6f 63 52 6f 77 20 3d 20 65 73 2e 73 65  r docRow = es.se
2ce0: 61 72 63 68 28 6f 62 6a 2c 20 65 73 2e 72 65 29  arch(obj, es.re)
2cf0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
2d00: 20 20 20 69 66 20 28 76 20 3d 3d 20 61 63 74 69     if (v == acti
2d10: 76 65 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20  veView)..       
2d20: 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74               act
2d30: 69 76 65 57 6e 64 52 65 73 52 6f 77 20 3d 20 64  iveWndResRow = d
2d40: 6f 63 52 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20  ocRow;..        
2d50: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d      }..        }
2d60: 29 28 77 69 6e 64 6f 77 73 2e 6d 64 69 56 69 65  )(windows.mdiVie
2d70: 77 2e 65 6e 75 6d 43 68 69 6c 64 73 28 29 29 3b  w.enumChilds());
2d80: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
2d90: 20 20 20 20 74 68 69 73 2e 73 68 6f 77 53 65 61      this.showSea
2da0: 72 63 68 52 65 73 75 6c 74 28 61 63 74 69 76 65  rchResult(active
2db0: 57 6e 64 52 65 73 52 6f 77 2c 20 66 72 6f 6d 48  WndResRow, fromH
2dc0: 6f 74 4b 65 79 29 3b 0d 0a 20 20 20 20 7d 2c 0d  otKey);..    },.
2dd0: 0a 0d 0a 20 20 20 20 73 65 61 72 63 68 41 63 74  ...    searchAct
2de0: 69 76 65 44 6f 63 20 3a 20 66 75 6e 63 74 69 6f  iveDoc : functio
2df0: 6e 20 28 66 72 6f 6d 48 6f 74 4b 65 79 29 20 7b  n (fromHotKey) {
2e00: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
2e10: 20 20 20 20 74 68 69 73 2e 63 6c 65 61 72 53 65      this.clearSe
2e20: 61 72 63 68 52 65 73 75 6c 74 73 28 29 3b 0d 0a  archResults();..
2e30: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
2e40: 20 20 76 61 72 20 61 63 74 69 76 65 57 69 6e 64    var activeWind
2e50: 6f 77 20 3d 20 74 68 69 73 2e 77 61 74 63 68 65  ow = this.watche
2e60: 72 2e 67 65 74 41 63 74 69 76 65 54 65 78 74 57  r.getActiveTextW
2e70: 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20  indow();..      
2e80: 20 20 69 66 20 28 21 61 63 74 69 76 65 57 69 6e    if (!activeWin
2e90: 64 6f 77 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20  dow) return;..  
2ea0: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
2eb0: 20 20 20 20 20 74 68 69 73 2e 72 65 20 3d 20 74       this.re = t
2ec0: 68 69 73 2e 62 75 69 6c 64 53 65 61 72 63 68 52  his.buildSearchR
2ed0: 65 67 45 78 70 4f 62 6a 65 63 74 28 29 3b 0d 0a  egExpObject();..
2ee0: 20 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69          if (!thi
2ef0: 73 2e 72 65 29 20 72 65 74 75 72 6e 3b 0d 0a 0d  s.re) return;...
2f00: 0a 20 20 20 20 20 20 20 20 76 61 72 20 6f 62 6a  .        var obj
2f10: 20 3d 20 74 68 69 73 2e 67 65 74 57 69 6e 64 6f   = this.getWindo
2f20: 77 4f 62 6a 65 63 74 28 61 63 74 69 76 65 57 69  wObject(activeWi
2f30: 6e 64 6f 77 2e 47 65 74 56 69 65 77 28 29 29 3b  ndow.GetView());
2f40: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 6f  ..        if (!o
2f50: 62 6a 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20  bj) return;..   
2f60: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76       ..        v
2f70: 61 72 20 64 6f 63 52 6f 77 20 3d 20 74 68 69 73  ar docRow = this
2f80: 2e 73 65 61 72 63 68 28 6f 62 6a 2c 20 74 68 69  .search(obj, thi
2f90: 73 2e 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20  s.re);..        
2fa0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 73  ..        this.s
2fb0: 68 6f 77 53 65 61 72 63 68 52 65 73 75 6c 74 28  howSearchResult(
2fc0: 64 6f 63 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b  docRow, fromHotK
2fd0: 65 79 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a  ey);..    },....
2fe0: 20 20 20 20 62 75 69 6c 64 53 65 61 72 63 68 52      buildSearchR
2ff0: 65 67 45 78 70 4f 62 6a 65 63 74 20 3a 20 66 75  egExpObject : fu
3000: 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20  nction () {..   
3010: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 70   ..        var p
3020: 61 74 74 65 72 6e 20 3d 20 74 68 69 73 2e 66 6f  attern = this.fo
3030: 72 6d 2e 51 75 65 72 79 3b 0d 0a 20 20 20 20 20  rm.Query;..     
3040: 20 20 20 76 61 72 20 72 65 46 6c 61 67 73 20 3d     var reFlags =
3050: 20 27 27 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a   '';..        ..
3060: 20 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69          if (!thi
3070: 73 2e 66 6f 72 6d 2e 49 73 52 65 67 45 78 70 29  s.form.IsRegExp)
3080: 20 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20   ..        {..  
3090: 20 20 20 20 20 20 20 20 20 20 70 61 74 74 65 72            patter
30a0: 6e 20 3d 20 53 74 72 69 6e 67 55 74 69 6c 73 2e  n = StringUtils.
30b0: 61 64 64 53 6c 61 73 68 65 73 28 70 61 74 74 65  addSlashes(patte
30c0: 72 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  rn);..          
30d0: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
30e0: 69 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e 57 68  if (this.form.Wh
30f0: 6f 6c 65 57 6f 72 64 73 29 0d 0a 20 20 20 20 20  oleWords)..     
3100: 20 20 20 20 20 20 20 20 20 20 20 70 61 74 74 65             patte
3110: 72 6e 20 3d 20 22 28 5b 5e 5c 5c 77 5c 5c 64 d0  rn = "([^\\w\\d.
3120: 90 2d d1 8f 5d 7c 5e 29 22 20 2b 20 70 61 74 74  .-..]|^)" + patt
3130: 65 72 6e 20 2b 20 22 28 5b 5e 5c 5c 77 5c 5c 64  ern + "([^\\w\\d
3140: d0 90 2d d1 8f 5d 7c 24 29 22 3b 0d 0a 20 20 20  ..-..]|$)";..   
3150: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
3160: 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d  else..        {.
3170: 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28  .            if(
3180: 70 61 74 74 65 72 6e 2e 72 65 70 6c 61 63 65 28  pattern.replace(
3190: 22 5c 5c 5c 5c 22 2c 20 22 22 29 2e 73 65 61 72  "\\\\", "").sear
31a0: 63 68 28 2f 5c 5c 72 7c 5c 5c 6e 2f 29 20 21 3d  ch(/\\r|\\n/) !=
31b0: 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20   -1)..          
31c0: 20 20 20 20 20 20 72 65 46 6c 61 67 73 20 3d 20        reFlags = 
31d0: 27 67 6d 27 3b 0d 0a 20 20 20 20 20 20 20 20 7d  'gm';..        }
31e0: 0d 0a 20 20 20 20 20 20 20 20 69 66 28 21 74 68  ..        if(!th
31f0: 69 73 2e 66 6f 72 6d 2e 43 61 73 65 53 65 6e 73  is.form.CaseSens
3200: 65 74 69 76 65 29 0d 0a 20 20 20 20 20 20 20 20  etive)..        
3210: 20 20 20 20 72 65 46 6c 61 67 73 20 2b 3d 20 27      reFlags += '
3220: 69 27 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  i';..        .. 
3230: 20 20 20 20 20 20 20 76 61 72 20 72 65 20 3d 20         var re = 
3240: 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 0d  null;..        .
3250: 0a 20 20 20 20 20 20 20 20 74 72 79 20 0d 0a 20  .        try .. 
3260: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
3270: 20 20 20 20 20 20 72 65 20 3d 20 6e 65 77 20 52        re = new R
3280: 65 67 45 78 70 28 70 61 74 74 65 72 6e 2c 20 72  egExp(pattern, r
3290: 65 46 6c 61 67 73 29 3b 0d 0a 20 20 20 20 20 20  eFlags);..      
32a0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 63 61 74    }..        cat
32b0: 63 68 20 28 65 29 0d 0a 20 20 20 20 20 20 20 20  ch (e)..        
32c0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44  {..            D
32d0: 6f 4d 65 73 73 61 67 65 42 6f 78 28 22 d0 92 20  oMessageBox(".. 
32e0: d1 80 d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 80 d0 bd  ................
32f0: d0 be d0 bc 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0  .... ...........
3300: b5 d0 bd d0 b8 d0 b8 20 d0 b4 d0 be d0 bf d1 83  ....... ........
3310: d1 89 d0 b5 d0 bd d0 b0 20 d0 be d1 88 d0 b8 d0  ........ .......
3320: b1 d0 ba d0 b0 3a 20 5c 6e 22 20 2b 20 65 2e 6d  .....: \n" + e.m
3330: 65 73 73 61 67 65 29 3b 0d 0a 20 20 20 20 20 20  essage);..      
3340: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c        return nul
3350: 6c 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20  l;..        }.. 
3360: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 72 65 74     ..        ret
3370: 75 72 6e 20 72 65 3b 0d 0a 20 20 20 20 7d 2c 0d  urn re;..    },.
3380: 0a 20 20 20 20 0d 0a 20 20 20 20 73 65 61 72 63  .    ..    searc
3390: 68 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 6f 62  h : function (ob
33a0: 6a 2c 20 72 65 29 20 7b 0d 0a 20 20 20 20 20 20  j, re) {..      
33b0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61      ..        va
33c0: 72 20 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e  r docRow = this.
33d0: 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 41 64 64  results.Rows.Add
33e0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 64 6f 63  ();..        doc
33f0: 52 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 20  Row.FoundLine = 
3400: 6f 62 6a 2e 67 65 74 54 69 74 6c 65 28 29 3b 0d  obj.getTitle();.
3410: 0a 20 20 20 20 20 20 20 20 64 6f 63 52 6f 77 2e  .        docRow.
3420: 5f 6f 62 6a 65 63 74 20 3d 20 6f 62 6a 3b 0d 0a  _object = obj;..
3430: 20 20 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 52          docRow.R
3440: 6f 77 54 79 70 65 20 3d 20 52 6f 77 54 79 70 65  owType = RowType
3450: 73 2e 53 65 61 72 63 68 44 6f 63 3b 0d 0a 20 20  s.SearchDoc;..  
3460: 20 20 20 20 20 20 69 66 20 28 21 6f 62 6a 2e 73        if (!obj.s
3470: 6f 72 74 29 20 6f 62 6a 2e 73 6f 72 74 20 3d 20  ort) obj.sort = 
3480: 39 39 39 3b 0d 0a 20 20 20 20 20 20 20 20 76 61  999;..        va
3490: 72 20 73 74 72 53 6f 72 74 20 3d 20 22 30 30 30  r strSort = "000
34a0: 30 30 30 30 30 30 30 22 2b 28 6f 62 6a 2e 73 6f  0000000"+(obj.so
34b0: 72 74 20 2b 20 74 68 69 73 2e 72 65 73 75 6c 74  rt + this.result
34c0: 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 29 3b  s.Rows.Count());
34d0: 0d 0a 20 20 20 20 20 20 20 20 73 74 72 53 6f 72  ..        strSor
34e0: 74 20 3d 20 73 74 72 53 6f 72 74 2e 73 75 62 73  t = strSort.subs
34f0: 74 72 28 73 74 72 53 6f 72 74 2e 6c 65 6e 67 74  tr(strSort.lengt
3500: 68 2d 31 30 29 3b 0d 0a 20 20 20 20 20 20 20 20  h-10);..        
3510: 64 6f 63 52 6f 77 2e 53 6f 72 74 4d 65 74 61 64  docRow.SortMetad
3520: 61 74 61 20 3d 20 73 74 72 53 6f 72 74 3b 0d 0a  ata = strSort;..
3530: 0d 0a 20 20 20 20 20 20 20 20 64 6f 63 52 6f 77  ..        docRow
3540: 2e 67 72 6f 75 70 73 43 61 63 68 65 20 3d 20 76  .groupsCache = v
3550: 38 4e 65 77 28 27 4d 61 70 27 29 3b 0d 0a 20 20  8New('Map');..  
3560: 20 20 20 20 20 20 69 66 28 21 72 65 2e 6d 75 6c        if(!re.mul
3570: 74 69 6c 69 6e 65 29 0d 0a 20 20 20 20 20 20 20  tiline)..       
3580: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
3590: 76 61 72 20 63 75 72 4d 65 74 68 6f 64 20 3d 20  var curMethod = 
35a0: 7b 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  { ..            
35b0: 20 20 20 20 27 4e 61 6d 65 27 20 20 20 20 20 20      'Name'      
35c0: 3a 20 27 d0 a0 d0 b0 d0 b7 d0 b4 d0 b5 d0 bb 20  : '............ 
35d0: d0 be d0 bf d0 b8 d1 81 d0 b0 d0 bd d0 b8 d1 8f  ................
35e0: 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0   ...............
35f0: bd d1 8b d1 85 27 2c 0d 0a 20 20 20 20 20 20 20  .....',..       
3600: 20 20 20 20 20 20 20 20 20 27 49 73 50 72 6f 63           'IsProc
3610: 27 20 20 20 20 3a 20 75 6e 64 65 66 69 6e 65 64  '    : undefined
3620: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ,..             
3630: 20 20 20 27 53 74 61 72 74 4c 69 6e 65 27 20 3a     'StartLine' :
3640: 20 30 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   0..            
3650: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
3660: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3670: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
3680: 20 20 20 20 20 76 61 72 20 6c 69 6e 65 73 20 3d       var lines =
3690: 20 53 74 72 69 6e 67 55 74 69 6c 73 2e 74 6f 4c   StringUtils.toL
36a0: 69 6e 65 73 28 6f 62 6a 2e 67 65 74 54 65 78 74  ines(obj.getText
36b0: 28 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ());..          
36c0: 20 20 66 6f 72 28 76 61 72 20 6c 69 6e 65 49 78    for(var lineIx
36d0: 3d 30 3b 20 6c 69 6e 65 49 78 20 3c 20 6c 69 6e  =0; lineIx < lin
36e0: 65 73 2e 6c 65 6e 67 74 68 3b 20 6c 69 6e 65 49  es.length; lineI
36f0: 78 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20  x++)..          
3700: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
3710: 20 20 20 20 20 76 61 72 20 6c 69 6e 65 20 3d 20       var line = 
3720: 6c 69 6e 65 73 5b 6c 69 6e 65 49 78 5d 3b 0d 0a  lines[lineIx];..
3730: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3740: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3750: 20 20 2f 2f 20 d0 9f d1 80 d0 be d0 b2 d0 b5 d1    // ...........
3760: 80 d0 b8 d0 bc 2c 20 d0 bd d0 b5 20 d0 b2 d1 81  ....., .... ....
3770: d1 82 d1 80 d0 b5 d1 82 d0 b8 d0 bb d0 be d1 81  ................
3780: d1 8c 20 d0 bb d0 b8 20 d0 bd d0 b0 d1 87 d0 b0  .. .... ........
3790: d0 bb d0 be 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0  .... ...........
37a0: b0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
37b0: 20 20 20 20 76 61 72 20 6d 61 74 63 68 65 73 20      var matches 
37c0: 3d 20 6c 69 6e 65 2e 6d 61 74 63 68 28 52 45 2e  = line.match(RE.
37d0: 4d 45 54 48 4f 44 5f 53 54 41 52 54 29 3b 0d 0a  METHOD_START);..
37e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
37f0: 69 66 20 28 6d 61 74 63 68 65 73 20 26 26 20 6d  if (matches && m
3800: 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 29 0d 0a  atches.length)..
3810: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3820: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
3830: 20 20 20 20 20 20 20 63 75 72 4d 65 74 68 6f 64         curMethod
3840: 20 3d 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20   = {..          
3850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 4e                'N
3860: 61 6d 65 27 20 20 20 20 20 20 3a 20 6d 61 74 63  ame'      : matc
3870: 68 65 73 5b 32 5d 2c 0d 0a 20 20 20 20 20 20 20  hes[2],..       
3880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3890: 20 27 49 73 50 72 6f 63 27 20 20 20 20 3a 20 6d   'IsProc'    : m
38a0: 61 74 63 68 65 73 5b 31 5d 2e 74 6f 4c 6f 77 65  atches[1].toLowe
38b0: 72 43 61 73 65 28 29 20 3d 3d 20 27 d0 bf d1 80  rCase() == '....
38c0: d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 27 20  ..............' 
38d0: 7c 7c 20 6d 61 74 63 68 65 73 5b 31 5d 2e 74 6f  || matches[1].to
38e0: 4c 6f 77 65 72 43 61 73 65 28 29 20 3d 3d 20 27  LowerCase() == '
38f0: 70 72 6f 63 65 64 75 72 65 27 2c 0d 0a 20 20 20  procedure',..   
3900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3910: 20 20 20 20 20 27 53 74 61 72 74 4c 69 6e 65 27       'StartLine'
3920: 20 3a 20 6c 69 6e 65 49 78 0d 0a 20 20 20 20 20   : lineIx..     
3930: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
3940: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3950: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
3960: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
3970: 20 20 20 20 20 20 20 6d 61 74 63 68 65 73 20 3d         matches =
3980: 20 6c 69 6e 65 2e 6d 61 74 63 68 28 72 65 29 3b   line.match(re);
3990: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
39a0: 20 20 69 66 20 28 6d 61 74 63 68 65 73 20 26 26    if (matches &&
39b0: 20 6d 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 29   matches.length)
39c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
39d0: 20 20 20 20 20 20 74 68 69 73 2e 61 64 64 53 65        this.addSe
39e0: 61 72 63 68 52 65 73 75 6c 74 28 64 6f 63 52 6f  archResult(docRo
39f0: 77 2c 20 6c 69 6e 65 2c 20 6c 69 6e 65 49 78 20  w, line, lineIx 
3a00: 2b 20 31 2c 20 6d 61 74 63 68 65 73 2c 20 63 75  + 1, matches, cu
3a10: 72 4d 65 74 68 6f 64 29 3b 0d 0a 20 20 20 20 20  rMethod);..     
3a20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
3a30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3a40: 2f 2f 20 d0 9f d1 80 d0 be d0 b2 d0 b5 d1 80 d0  // .............
3a50: b8 d0 bc 2c 20 d0 bd d0 b5 20 d0 b2 d1 81 d1 82  ..., .... ......
3a60: d1 80 d0 b5 d1 82 d0 b8 d0 bb d1 81 d1 8f 20 d0  .............. .
3a70: bb d0 b8 20 d0 ba d0 be d0 bd d0 b5 d1 86 20 d0  ... .......... .
3a80: bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e 0d 0a 20 20  ..............  
3a90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61                ma
3aa0: 74 63 68 65 73 20 3d 20 6c 69 6e 65 2e 6d 61 74  tches = line.mat
3ab0: 63 68 28 52 45 2e 4d 45 54 48 4f 44 5f 45 4e 44  ch(RE.METHOD_END
3ac0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
3ad0: 20 20 20 20 69 66 20 28 6d 61 74 63 68 65 73 20      if (matches 
3ae0: 26 26 20 6d 61 74 63 68 65 73 2e 6c 65 6e 67 74  && matches.lengt
3af0: 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  h)..            
3b00: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
3b10: 20 20 20 20 20 20 20 20 20 20 20 63 75 72 4d 65             curMe
3b20: 74 68 6f 64 20 3d 20 7b 0d 0a 20 20 20 20 20 20  thod = {..      
3b30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3b40: 20 20 27 4e 61 6d 65 27 20 20 20 20 20 20 3a 20    'Name'      : 
3b50: 27 3c d0 a2 d0 b5 d0 ba d1 81 d1 82 20 d0 b2 d0  '<.......... ...
3b60: bd d0 b5 20 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4  ... ............
3b70: d1 83 d1 80 20 d0 b8 20 d1 84 d1 83 d0 bd d0 ba  .... .. ........
3b80: d1 86 d0 b8 d0 b9 3e 27 2c 0d 0a 20 20 20 20 20  ......>',..     
3b90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3ba0: 20 20 20 27 49 73 50 72 6f 63 27 20 20 20 20 3a     'IsProc'    :
3bb0: 20 75 6e 64 65 66 69 6e 65 64 2c 0d 0a 20 20 20   undefined,..   
3bc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3bd0: 20 20 20 20 20 27 53 74 61 72 74 4c 69 6e 65 27       'StartLine'
3be0: 20 3a 20 6c 69 6e 65 49 78 0d 0a 20 20 20 20 20   : lineIx..     
3bf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
3c00: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3c10: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
3c20: 20 7d 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20   }    ..        
3c30: 7d 0d 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0d  }..        else.
3c40: 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20  .        {..    
3c50: 20 20 20 20 20 20 20 20 2f 2f 64 65 62 75 67 67          //debugg
3c60: 65 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  er..            
3c70: 2f 2f 20 d0 ad d1 82 d0 be 20 d0 bc d0 bd d0 be  // ...... ......
3c80: d0 b3 d0 be d1 81 d1 82 d1 80 d0 be d1 87 d0 bd  ................
3c90: d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 0d  .... ...........
3ca0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20  .            // 
3cb0: d0 94 d0 bb d1 8f 20 d0 bd d0 b0 d1 87 d0 b0 d0  ...... .........
3cc0: bb d0 b0 20 d0 bd d0 b0 d0 b4 d0 be 20 d0 b2 d0  ... ........ ...
3cd0: be d0 be d0 b1 d1 89 d0 b5 20 d0 bf d1 80 d0 be  ......... ......
3ce0: d0 b2 d0 b5 d1 80 d0 b8 d1 82 d1 8c 2c 20 d0 bd  ............, ..
3cf0: d0 b0 d1 85 d0 be d0 b4 d0 b8 d1 82 d1 81 d1 8f  ................
3d00: 20 d0 bb d0 b8 20 d1 87 d1 82 d0 be 2d d0 bd d0   .... ......-...
3d10: b8 d0 b1 d1 83 d0 b4 d1 8c 0d 0a 20 20 20 20 20  ...........     
3d20: 20 20 20 20 20 20 20 76 61 72 20 74 65 78 74 20         var text 
3d30: 3d 20 6f 62 6a 2e 67 65 74 54 65 78 74 28 29 0d  = obj.getText().
3d40: 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72  .            var
3d50: 20 72 65 73 75 6c 74 73 20 3d 20 5b 5d 2c 20 72   results = [], r
3d60: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68  ..            wh
3d70: 69 6c 65 28 72 20 3d 20 72 65 2e 65 78 65 63 28  ile(r = re.exec(
3d80: 74 65 78 74 29 29 0d 0a 20 20 20 20 20 20 20 20  text))..        
3d90: 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 73 2e          results.
3da0: 70 75 73 68 28 72 29 0d 0a 20 20 20 20 20 20 20  push(r)..       
3db0: 20 20 20 20 20 69 66 28 72 65 73 75 6c 74 73 2e       if(results.
3dc0: 6c 65 6e 67 74 68 29 20 20 2f 2f 20 d0 a7 d1 82  length)  // ....
3dd0: d0 be 2d d1 82 d0 be 20 d0 bd d0 b0 d1 88 d0 bb  ..-.... ........
3de0: d0 b8 2e 20 d0 a2 d0 b5 d0 bf d0 b5 d1 80 d1 8c  ... ............
3df0: 20 d0 bd d0 b0 d0 b4 d0 be 20 d0 bf d0 be d0 bb   ........ ......
3e00: d1 83 d1 87 d0 b8 d1 82 d1 8c 20 d0 bd d0 be d0  .......... .....
3e10: bc d0 b5 d1 80 d0 b0 20 d1 81 d1 82 d1 80 d0 be  ....... ........
3e20: d0 ba 20 d0 b4 d0 bb d1 8f 20 d0 ba d0 b0 d0 b6  .. ...... ......
3e30: d0 b4 d0 be d0 b3 d0 be 20 d0 b2 d1 85 d0 be d0  ........ .......
3e40: b6 d0 b4 d0 b5 d0 bd d0 b8 d1 8f 0d 0a 20 20 20  .............   
3e50: 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20           {..    
3e60: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
3e70: 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 20 3d  .form.TreeView =
3e80: 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20   false;..       
3e90: 20 20 20 20 20 20 20 20 20 76 61 72 20 69 64 78           var idx
3ea0: 20 3d 20 30 2c 20 6c 69 6e 65 4e 75 6d 20 3d 20   = 0, lineNum = 
3eb0: 30 2c 20 63 75 72 72 65 6e 74 52 65 73 20 3d 20  0, currentRes = 
3ec0: 72 65 73 75 6c 74 73 5b 69 64 78 5d 2c 20 62 65  results[idx], be
3ed0: 67 69 6e 49 64 78 20 3d 20 63 75 72 72 65 6e 74  ginIdx = current
3ee0: 52 65 73 2e 69 6e 64 65 78 0d 0a 20 20 20 20 20  Res.index..     
3ef0: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 94             // ..
3f00: d0 bb d1 8f 20 d0 b8 d1 81 d0 ba d0 bb d1 8e d1  .... ...........
3f10: 87 d0 b5 d0 bd d0 b8 d0 b5 20 d1 81 d0 b8 d1 82  ......... ......
3f20: d1 83 d0 b0 d1 86 d0 b8 d0 b8 2c 20 d0 ba d0 be  .........., ....
3f30: d0 b3 d0 b4 d0 b0 20 d1 82 d0 b5 d0 ba d1 81 d1  ...... .........
3f40: 82 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd 20 d0  . ............ .
3f50: b2 20 d0 bf d0 be d1 81 d0 bb d0 b5 d0 b4 d0 bd  . ..............
3f60: d0 b5 d0 b9 20 d1 81 d1 82 d1 80 d0 be d0 ba d0  .... ...........
3f70: b5 2c 20 d0 bd d0 b5 20 d0 b7 d0 b0 d0 ba d0 b0  ., .... ........
3f80: d0 bd d1 87 d0 b8 d0 b2 d0 b0 d1 8e d1 89 d0 b5  ................
3f90: d0 b9 d1 81 d1 8f 20 d0 bf d0 b5 d1 80 d0 b5 d0  ...... .........
3fa0: b2 d0 be d0 b4 d0 be d0 bc 20 d1 81 d1 82 d1 80  ......... ......
3fb0: d0 be d0 ba d0 b8 2c 0d 0a 20 20 20 20 20 20 20  ......,..       
3fc0: 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 b4 d0 be           // ....
3fd0: d0 b1 d0 b0 d0 b2 d0 b8 d0 bc 20 d0 ba 20 d1 82  .......... .. ..
3fe0: d0 b5 d0 ba d1 81 d1 82 d1 83 20 d0 bf d0 b5 d1  .......... .....
3ff0: 80 d0 b5 d0 b2 d0 be d0 b4 20 d1 81 d1 82 d1 80  ......... ......
4000: d0 be d0 ba d0 b8 0d 0a 20 20 20 20 20 20 20 20  ........        
4010: 20 20 20 20 20 20 20 20 74 65 78 74 20 2b 3d 20          text += 
4020: 27 5c 6e 27 3b 0d 0a 20 20 20 20 20 20 20 20 20  '\n';..         
4030: 20 20 20 20 20 20 20 72 65 20 3d 20 2f 2e 2a 5c         re = /.*\
4040: 6e 2f 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20  n/g..           
4050: 20 20 20 20 20 77 68 69 6c 65 28 72 20 3d 20 72       while(r = r
4060: 65 2e 65 78 65 63 28 74 65 78 74 29 29 0d 0a 20  e.exec(text)).. 
4070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b                 {
4080: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
4090: 20 20 20 20 20 20 6c 69 6e 65 4e 75 6d 2b 2b 0d        lineNum++.
40a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
40b0: 20 20 20 20 20 69 66 28 72 2e 69 6e 64 65 78 20       if(r.index 
40c0: 3c 3d 20 62 65 67 69 6e 49 64 78 20 26 26 20 72  <= beginIdx && r
40d0: 2e 6c 61 73 74 49 6e 64 65 78 20 3e 20 62 65 67  .lastIndex > beg
40e0: 69 6e 49 64 78 29 0d 0a 20 20 20 20 20 20 20 20  inIdx)..        
40f0: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
4100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4110: 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 52 65         currentRe
4120: 73 2e 69 6e 64 65 78 20 2d 3d 20 72 2e 69 6e 64  s.index -= r.ind
4130: 65 78 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ex..            
4140: 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 72              curr
4150: 65 6e 74 52 65 73 2e 6c 61 73 74 49 6e 64 65 78  entRes.lastIndex
4160: 20 2d 3d 20 72 2e 69 6e 64 65 78 0d 0a 20 20 20   -= r.index..   
4170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4180: 20 20 20 20 20 2f 2f 20 d0 94 d0 bb d1 8f 20 d0       // ...... .
4190: be d1 82 d0 be d0 b1 d1 80 d0 b0 d0 b6 d0 b5 d0  ................
41a0: bd d0 b8 d1 8f 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb  ..... ..........
41b0: d1 8c d1 82 d0 b0 d1 82 d0 b0 20 d0 bc d0 bd d0  .......... .....
41c0: be d0 b3 d0 be d1 81 d1 82 d1 80 d0 be d1 87 d0  ................
41d0: bd d0 be d0 b3 d0 be 20 d0 bf d0 be d0 b8 d1 81  ....... ........
41e0: d0 ba d0 b0 20 d0 bf d1 80 d0 b5 d0 be d0 b1 d1  .... ...........
41f0: 80 d0 b0 d0 b7 d1 83 d0 b5 d0 bc 20 d1 81 d1 82  ........... ....
4200: d1 80 d0 be d0 ba d1 83 0d 0a 20 20 20 20 20 20  ..........      
4210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4220: 20 20 63 75 72 72 65 6e 74 52 65 73 2e 72 65 61    currentRes.rea
4230: 6c 52 65 73 75 6c 74 20 3d 20 63 75 72 72 65 6e  lResult = curren
4240: 74 52 65 73 5b 30 5d 0d 0a 20 20 20 20 20 20 20  tRes[0]..       
4250: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4260: 20 63 75 72 72 65 6e 74 52 65 73 5b 30 5d 20 3d   currentRes[0] =
4270: 20 63 75 72 72 65 6e 74 52 65 73 5b 30 5d 2e 72   currentRes[0].r
4280: 65 70 6c 61 63 65 28 2f 5e 5c 73 2b 2f 2c 20 27  eplace(/^\s+/, '
4290: 27 29 2e 72 65 70 6c 61 63 65 28 2f 5c 6e 5c 73  ').replace(/\n\s
42a0: 2a 2f 67 2c 20 27 20 5c 75 30 30 42 42 20 27 29  */g, ' \u00BB ')
42b0: 2e 73 75 62 73 74 72 28 30 2c 20 35 30 29 20 2b  .substr(0, 50) +
42c0: 20 27 5c 6e 27 0d 0a 20 20 20 20 20 20 20 20 20   '\n'..         
42d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74                 t
42e0: 68 69 73 2e 61 64 64 53 65 61 72 63 68 52 65 73  his.addSearchRes
42f0: 75 6c 74 28 64 6f 63 52 6f 77 2c 20 72 5b 30 5d  ult(docRow, r[0]
4300: 2c 20 6c 69 6e 65 4e 75 6d 2c 20 72 65 73 75 6c  , lineNum, resul
4310: 74 73 5b 69 64 78 5d 29 3b 0d 0a 20 20 20 20 20  ts[idx]);..     
4320: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4330: 20 20 20 69 64 78 2b 2b 3b 0d 0a 20 20 20 20 20     idx++;..     
4340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4350: 20 20 20 69 66 28 69 64 78 20 3d 3d 20 72 65 73     if(idx == res
4360: 75 6c 74 73 2e 6c 65 6e 67 74 68 29 0d 0a 20 20  ults.length)..  
4370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4380: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b            break;
4390: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
43a0: 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e            curren
43b0: 74 52 65 73 20 3d 20 72 65 73 75 6c 74 73 5b 69  tRes = results[i
43c0: 64 78 5d 0d 0a 20 20 20 20 20 20 20 20 20 20 20  dx]..           
43d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 67               beg
43e0: 69 6e 49 64 78 20 3d 20 63 75 72 72 65 6e 74 52  inIdx = currentR
43f0: 65 73 2e 69 6e 64 65 78 0d 0a 20 20 20 20 20 20  es.index..      
4400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
4410: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4420: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
4430: 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20  }..        }..  
4440: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
4450: 69 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e 54 72  if (this.form.Tr
4460: 65 65 56 69 65 77 20 26 26 20 64 6f 63 52 6f 77  eeView && docRow
4470: 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 20 3e 20  .Rows.Count() > 
4480: 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20  0)..        {.. 
4490: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c             var l
44a0: 61 73 74 47 72 6f 75 70 20 3d 20 74 68 69 73 2e  astGroup = this.
44b0: 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 47 65 74  results.Rows.Get
44c0: 28 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f  (this.results.Ro
44d0: 77 73 2e 43 6f 75 6e 74 28 29 20 2d 20 31 29 3b  ws.Count() - 1);
44e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
44f0: 20 28 6c 61 73 74 47 72 6f 75 70 2e 46 6f 75 6e   (lastGroup.Foun
4500: 64 4c 69 6e 65 20 3d 3d 20 27 3c d0 a2 d0 b5 d0  dLine == '<.....
4510: ba d1 81 d1 82 20 d0 b2 d0 bd d0 b5 20 d0 bf d1  ..... ...... ...
4520: 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 20 d0 b8  ............. ..
4530: 20 d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b9 3e   ..............>
4540: 27 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ')..            
4550: 20 20 20 20 6c 61 73 74 47 72 6f 75 70 2e 46 6f      lastGroup.Fo
4560: 75 6e 64 4c 69 6e 65 20 3d 20 22 d0 a0 d0 b0 d0  undLine = ".....
4570: b7 d0 b4 d0 b5 d0 bb 20 d0 be d1 81 d0 bd d0 be  ....... ........
4580: d0 b2 d0 bd d0 be d0 b9 20 d0 bf d1 80 d0 be d0  ........ .......
4590: b3 d1 80 d0 b0 d0 bc d0 bc d1 8b 22 3b 0d 0a 20  ...........";.. 
45a0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
45b0: 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28    ..        if (
45c0: 21 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 43 6f 75  !docRow.Rows.Cou
45d0: 6e 74 28 29 29 0d 0a 20 20 20 20 20 20 20 20 7b  nt())..        {
45e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68  ..            th
45f0: 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e  is.results.Rows.
4600: 44 65 6c 65 74 65 28 64 6f 63 52 6f 77 29 3b 0d  Delete(docRow);.
4610: 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 63  .            doc
4620: 52 6f 77 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20  Row = null;..   
4630: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
4640: 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e  ..        return
4650: 20 64 6f 63 52 6f 77 3b 0d 0a 20 20 20 20 7d 2c   docRow;..    },
4660: 0d 0a 0d 0a 20 20 20 20 73 68 6f 77 52 65 73 75  ....    showResu
4670: 6c 74 3a 20 66 75 6e 63 74 69 6f 6e 28 64 6f 63  lt: function(doc
4680: 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29  Row, fromHotKey)
4690: 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  {..        this.
46a0: 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 53 6f 72  results.Rows.Sor
46b0: 74 28 27 53 6f 72 74 4d 65 74 61 64 61 74 61 2c  t('SortMetadata,
46c0: 20 46 6f 75 6e 64 4c 69 6e 65 27 2c 20 66 61 6c   FoundLine', fal
46d0: 73 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f  se);..        //
46e0: 20 d0 97 d0 b0 d0 bf d0 be d0 bc d0 bd d0 b8 d0   ...............
46f0: bc 20 d1 81 d1 82 d1 80 d0 be d0 ba d1 83 20 d0  . ............ .
4700: bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d0 b2 20 d0  ........... .. .
4710: b8 d1 81 d1 82 d0 be d1 80 d0 b8 d0 b8 2e 0d 0a  ................
4720: 20 20 20 20 20 20 20 20 74 68 69 73 2e 61 64 64          this.add
4730: 54 6f 48 69 73 74 6f 72 79 28 74 68 69 73 2e 66  ToHistory(this.f
4740: 6f 72 6d 2e 51 75 65 72 79 29 3b 0d 0a 0d 0a 20  orm.Query);.... 
4750: 20 20 20 20 20 20 20 69 66 20 28 66 72 6f 6d 48         if (fromH
4760: 6f 74 4b 65 79 20 3d 3d 20 74 72 75 65 29 0d 0a  otKey == true)..
4770: 20 20 20 20 20 20 20 20 7b 20 0d 0a 20 20 20 20          { ..    
4780: 20 20 20 20 20 20 20 20 2f 2f 20 d0 94 d0 bb d1          // .....
4790: 8f 20 d1 82 d0 be d0 b3 d0 be 20 d1 87 d1 82 d0  . ........ .....
47a0: be d0 b1 d1 8b 20 d0 ba d1 83 d1 80 d1 81 d0 be  ..... ..........
47b0: d1 80 20 d0 bd d0 b5 20 d0 bf d1 80 d1 8b d0 b3  .. .... ........
47c0: d0 b0 d0 bb 20 d0 bf d1 80 d0 b8 20 d0 bf d0 be  .... ...... ....
47d0: d0 b8 d1 81 d0 ba d0 b5 20 d1 82 d0 b5 d0 ba d1  ........ .......
47e0: 83 d1 89 d0 b5 d0 b3 d0 be 20 d1 81 d0 bb d0 be  ......... ......
47f0: d0 b2 d0 b0 2c 20 0d 0a 20 20 20 20 20 20 20 20  ...., ..        
4800: 20 20 20 20 2f 2f 20 d1 82 d1 83 d1 82 20 d0 b1      // ...... ..
4810: d1 8b 20 d0 b5 d1 89 d0 b5 20 d0 b4 d0 be d0 b1  .. ...... ......
4820: d0 b0 d0 b2 d0 b8 d1 82 d1 8c 20 d1 87 d1 82 d0  .......... .....
4830: be d0 b1 d1 8b 20 d0 b0 d0 ba d1 82 d0 b8 d0 b2  ..... ..........
4840: d0 b8 d0 b7 d0 b8 d1 80 d0 be d0 b2 d0 b0 d0 bb  ................
4850: d0 b0 d1 81 d1 8c 20 d0 b8 d0 bc d0 b5 d0 bd d0  ...... .........
4860: bd d0 be 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b0  ... ............
4870: d1 8f 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 0d  .. .............
4880: 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69  .            thi
4890: 73 2e 66 6f 72 6d 2e 4f 70 65 6e 28 29 3b 0d 0a  s.form.Open();..
48a0: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
48b0: 2e 66 6f 72 6d 2e 43 75 72 72 65 6e 74 43 6f 6e  .form.CurrentCon
48c0: 74 72 6f 6c 3d 74 68 69 73 2e 66 6f 72 6d 2e 43  trol=this.form.C
48d0: 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65  ontrols.SearchRe
48e0: 73 75 6c 74 73 3b 0d 0a 20 20 20 20 20 20 20 20  sults;..        
48f0: 20 20 20 20 69 66 20 28 64 6f 63 52 6f 77 29 20      if (docRow) 
4900: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d  ..            {.
4910: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4920: 20 76 61 72 20 63 75 72 4c 69 6e 65 52 6f 77 20   var curLineRow 
4930: 3d 20 74 68 69 73 2e 67 65 74 52 6f 77 46 6f 72  = this.getRowFor
4940: 54 68 65 43 75 72 72 65 6e 74 4c 69 6e 65 28 64  TheCurrentLine(d
4950: 6f 63 52 6f 77 29 3b 20 20 0d 0a 20 20 20 20 20  ocRow);  ..     
4960: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63             if (c
4970: 75 72 4c 69 6e 65 52 6f 77 29 0d 0a 20 20 20 20  urLineRow)..    
4980: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4990: 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f  this.form.Contro
49a0: 6c 73 2e 53 65 61 72 63 68 52 65 73 75 6c 74 73  ls.SearchResults
49b0: 2e 43 75 72 72 65 6e 74 52 6f 77 20 3d 20 63 75  .CurrentRow = cu
49c0: 72 4c 69 6e 65 52 6f 77 3b 20 20 20 20 20 20 20  rLineRow;       
49d0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
49e0: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d     }..        }.
49f0: 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66  .        else if
4a00: 20 28 64 6f 63 52 6f 77 29 0d 0a 20 20 20 20 20   (docRow)..     
4a10: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
4a20: 20 20 69 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e    if (this.form.
4a30: 54 72 65 65 56 69 65 77 29 0d 0a 20 20 20 20 20  TreeView)..     
4a40: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
4a50: 67 6f 54 6f 4c 69 6e 65 28 64 6f 63 52 6f 77 2e  goToLine(docRow.
4a60: 52 6f 77 73 2e 47 65 74 28 30 29 2e 52 6f 77 73  Rows.Get(0).Rows
4a70: 2e 47 65 74 28 30 29 29 3b 0d 0a 20 20 20 20 20  .Get(0));..     
4a80: 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20         else..   
4a90: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69               thi
4aa0: 73 2e 67 6f 54 6f 4c 69 6e 65 28 64 6f 63 52 6f  s.goToLine(docRo
4ab0: 77 2e 52 6f 77 73 2e 47 65 74 28 30 29 29 3b 20  w.Rows.Get(0)); 
4ac0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
4ad0: 20 7d 0d 0a 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20   }....    },..  
4ae0: 20 20 0d 0a 20 20 20 20 73 68 6f 77 53 65 61 72    ..    showSear
4af0: 63 68 52 65 73 75 6c 74 3a 20 66 75 6e 63 74 69  chResult: functi
4b00: 6f 6e 20 28 64 6f 63 52 6f 77 2c 20 66 72 6f 6d  on (docRow, from
4b10: 48 6f 74 4b 65 79 29 20 7b 0d 0a 20 20 20 20 20  HotKey) {..     
4b20: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
4b30: 73 2e 73 68 6f 77 52 65 73 75 6c 74 28 64 6f 63  s.showResult(doc
4b40: 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29  Row, fromHotKey)
4b50: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
4b60: 65 78 70 61 6e 64 54 72 65 65 28 29 3b 0d 0a 20  expandTree();.. 
4b70: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
4b80: 20 69 66 20 28 74 68 69 73 2e 72 65 73 75 6c 74   if (this.result
4b90: 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 20 3d  s.Rows.Count() =
4ba0: 3d 20 30 29 20 0d 0a 20 20 20 20 20 20 20 20 7b  = 0) ..        {
4bb0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 6f  ..            Do
4bc0: 4d 65 73 73 61 67 65 42 6f 78 28 27 d0 a1 d0 be  MessageBox('....
4bd0: d0 b2 d0 bf d0 b0 d0 b4 d0 b5 d0 bd d0 b8 d0 b9  ................
4be0: 20 d0 bd d0 b5 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5   .... ..........
4bf0: d0 bd d0 be 21 27 29 3b 0d 0a 20 20 20 20 20 20  ....!');..      
4c00: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
4c10: 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20         }....    
4c20: 20 20 20 20 74 68 69 73 2e 53 65 74 43 6f 6e 74      this.SetCont
4c30: 72 6f 6c 73 56 69 73 69 62 6c 65 28 29 3b 20 20  rolsVisible();  
4c40: 20 20 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20    ..    },..    
4c50: 0d 0a 20 20 20 20 67 65 74 52 6f 77 46 6f 72 54  ..    getRowForT
4c60: 68 65 43 75 72 72 65 6e 74 4c 69 6e 65 3a 20 66  heCurrentLine: f
4c70: 75 6e 63 74 69 6f 6e 28 64 6f 63 52 6f 77 29 20  unction(docRow) 
4c80: 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 74  {..        var t
4c90: 77 6e 64 20 3d 20 64 6f 63 52 6f 77 2e 5f 6f 62  wnd = docRow._ob
4ca0: 6a 65 63 74 2e 61 63 74 69 76 61 74 65 28 29 3b  ject.activate();
4cb0: 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e  ..        return
4cc0: 20 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 46 69 6e   docRow.Rows.Fin
4cd0: 64 28 74 77 6e 64 2e 47 65 74 43 61 72 65 74 50  d(twnd.GetCaretP
4ce0: 6f 73 28 29 2e 62 65 67 69 6e 52 6f 77 2c 20 22  os().beginRow, "
4cf0: 4c 69 6e 65 4e 6f 22 2c 20 74 72 75 65 29 3b 0d  LineNo", true);.
4d00: 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 67  .    },....    g
4d10: 65 74 47 72 6f 75 70 52 6f 77 3a 20 66 75 6e 63  etGroupRow: func
4d20: 74 69 6f 6e 20 28 64 6f 63 52 6f 77 2c 20 6d 65  tion (docRow, me
4d30: 74 68 6f 64 44 61 74 61 29 20 7b 0d 0a 0d 0a 20  thodData) {.... 
4d40: 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73         if (!this
4d50: 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 20 7c  .form.TreeView |
4d60: 7c 20 74 68 69 73 2e 72 65 2e 6d 75 6c 74 69 6c  | this.re.multil
4d70: 69 6e 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20  ine)..          
4d80: 20 20 72 65 74 75 72 6e 20 64 6f 63 52 6f 77 3b    return docRow;
4d90: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
4da0: 67 72 6f 75 70 52 6f 77 20 3d 20 64 6f 63 52 6f  groupRow = docRo
4db0: 77 2e 67 72 6f 75 70 73 43 61 63 68 65 2e 47 65  w.groupsCache.Ge
4dc0: 74 28 6d 65 74 68 6f 64 44 61 74 61 29 3b 0d 0a  t(methodData);..
4dd0: 20 20 20 20 20 20 20 20 69 66 20 28 21 67 72 6f          if (!gro
4de0: 75 70 52 6f 77 29 20 0d 0a 20 20 20 20 20 20 20  upRow) ..       
4df0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
4e00: 67 72 6f 75 70 52 6f 77 20 3d 20 64 6f 63 52 6f  groupRow = docRo
4e10: 77 2e 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20  w.Rows.Add();.. 
4e20: 20 20 20 20 20 20 20 20 20 20 20 67 72 6f 75 70             group
4e30: 52 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 20  Row.FoundLine = 
4e40: 28 21 6d 65 74 68 6f 64 44 61 74 61 2e 4e 61 6d  (!methodData.Nam
4e50: 65 29 3f 22 22 3a 6d 65 74 68 6f 64 44 61 74 61  e)?"":methodData
4e60: 2e 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20  .Name;..        
4e70: 20 20 20 20 67 72 6f 75 70 52 6f 77 2e 4d 65 74      groupRow.Met
4e80: 68 6f 64 20 3d 20 28 21 6d 65 74 68 6f 64 44 61  hod = (!methodDa
4e90: 74 61 2e 4e 61 6d 65 29 3f 22 22 3a 6d 65 74 68  ta.Name)?"":meth
4ea0: 6f 64 44 61 74 61 2e 4e 61 6d 65 3b 0d 0a 20 20  odData.Name;..  
4eb0: 20 20 20 20 20 20 20 20 20 20 67 72 6f 75 70 52            groupR
4ec0: 6f 77 2e 5f 6f 62 6a 65 63 74 20 3d 20 64 6f 63  ow._object = doc
4ed0: 52 6f 77 2e 5f 6f 62 6a 65 63 74 3b 0d 0a 20 20  Row._object;..  
4ee0: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
4ef0: 20 20 20 20 20 20 20 20 69 66 20 28 6d 65 74 68          if (meth
4f00: 6f 64 44 61 74 61 2e 49 73 50 72 6f 63 20 21 3d  odData.IsProc !=
4f10: 3d 20 75 6e 64 65 66 69 6e 65 64 29 0d 0a 20 20  = undefined)..  
4f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 67 72                gr
4f30: 6f 75 70 52 6f 77 2e 52 6f 77 54 79 70 65 20 3d  oupRow.RowType =
4f40: 20 6d 65 74 68 6f 64 44 61 74 61 2e 49 73 50 72   methodData.IsPr
4f50: 6f 63 20 3f 20 52 6f 77 54 79 70 65 73 2e 50 72  oc ? RowTypes.Pr
4f60: 6f 63 47 72 6f 75 70 20 3a 20 52 6f 77 54 79 70  ocGroup : RowTyp
4f70: 65 73 2e 46 75 6e 63 47 72 6f 75 70 3b 0d 0a 20  es.FuncGroup;.. 
4f80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
4f90: 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 72 6f  .            gro
4fa0: 75 70 52 6f 77 2e 6c 69 6e 65 4e 6f 20 3d 20 6d  upRow.lineNo = m
4fb0: 65 74 68 6f 64 44 61 74 61 2e 53 74 61 72 74 4c  ethodData.StartL
4fc0: 69 6e 65 20 2b 20 31 3b 0d 0a 20 20 20 20 20 20  ine + 1;..      
4fd0: 20 20 20 20 20 20 67 72 6f 75 70 52 6f 77 2e 5f        groupRow._
4fe0: 6d 65 74 68 6f 64 20 3d 20 6d 65 74 68 6f 64 44  method = methodD
4ff0: 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ata;..          
5000: 20 20 67 72 6f 75 70 52 6f 77 2e 53 6f 72 74 4d    groupRow.SortM
5010: 65 74 61 64 61 74 61 20 3d 20 6d 65 74 68 6f 64  etadata = method
5020: 44 61 74 61 2e 53 6f 72 74 4d 65 74 61 64 61 74  Data.SortMetadat
5030: 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  a;..            
5040: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 6f  ..            do
5050: 63 52 6f 77 2e 67 72 6f 75 70 73 43 61 63 68 65  cRow.groupsCache
5060: 2e 49 6e 73 65 72 74 28 6d 65 74 68 6f 64 44 61  .Insert(methodDa
5070: 74 61 2c 20 67 72 6f 75 70 52 6f 77 29 3b 20 0d  ta, groupRow); .
5080: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
5090: 20 20 20 20 72 65 74 75 72 6e 20 67 72 6f 75 70      return group
50a0: 52 6f 77 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20  Row;..    },..  
50b0: 20 20 0d 0a 20 20 20 20 61 64 64 53 65 61 72 63    ..    addSearc
50c0: 68 52 65 73 75 6c 74 20 3a 20 66 75 6e 63 74 69  hResult : functi
50d0: 6f 6e 20 28 64 6f 63 52 6f 77 2c 20 6c 69 6e 65  on (docRow, line
50e0: 2c 20 6c 69 6e 65 4e 6f 2c 20 6d 61 74 63 68 65  , lineNo, matche
50f0: 73 2c 20 6d 65 74 68 6f 64 44 61 74 61 29 20 7b  s, methodData) {
5100: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
5110: 67 72 6f 75 70 52 6f 77 20 3d 20 74 68 69 73 2e  groupRow = this.
5120: 67 65 74 47 72 6f 75 70 52 6f 77 28 64 6f 63 52  getGroupRow(docR
5130: 6f 77 2c 20 6d 65 74 68 6f 64 44 61 74 61 29 3b  ow, methodData);
5140: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
5150: 72 65 73 52 6f 77 20 3d 20 67 72 6f 75 70 52 6f  resRow = groupRo
5160: 77 2e 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20  w.Rows.Add();.. 
5170: 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e 46 6f         resRow.Fo
5180: 75 6e 64 4c 69 6e 65 20 3d 20 6c 69 6e 65 3b 0d  undLine = line;.
5190: 0a 20 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e  .        resRow.
51a0: 6c 69 6e 65 4e 6f 20 3d 20 6c 69 6e 65 4e 6f 3b  lineNo = lineNo;
51b0: 0d 0a 20 20 20 20 20 20 20 20 72 65 73 52 6f 77  ..        resRow
51c0: 2e 5f 6f 62 6a 65 63 74 20 3d 20 64 6f 63 52 6f  ._object = docRo
51d0: 77 2e 5f 6f 62 6a 65 63 74 3b 0d 0a 20 20 20 20  w._object;..    
51e0: 20 20 20 20 69 66 28 75 6e 64 65 66 69 6e 65 64      if(undefined
51f0: 20 21 3d 20 6d 65 74 68 6f 64 44 61 74 61 29 0d   != methodData).
5200: 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73  .            res
5210: 52 6f 77 2e 4d 65 74 68 6f 64 20 3d 20 6d 65 74  Row.Method = met
5220: 68 6f 64 44 61 74 61 2e 4e 61 6d 65 3b 0d 0a 0d  hodData.Name;...
5230: 0a 20 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e  .        resRow.
5240: 5f 6d 65 74 68 6f 64 20 3d 20 6d 65 74 68 6f 64  _method = method
5250: 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 72  Data;..        r
5260: 65 73 52 6f 77 2e 5f 6d 61 74 63 68 20 3d 20 6d  esRow._match = m
5270: 61 74 63 68 65 73 0d 0a 20 20 20 20 20 20 20 20  atches..        
5280: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66      ..        if
5290: 20 28 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c   (this.form.Whol
52a0: 65 57 6f 72 64 73 29 0d 0a 20 20 20 20 20 20 20  eWords)..       
52b0: 20 20 20 20 20 72 65 73 52 6f 77 2e 45 78 61 63       resRow.Exac
52c0: 74 4d 61 74 63 68 20 3d 20 6d 61 74 63 68 65 73  tMatch = matches
52d0: 5b 30 5d 2e 72 65 70 6c 61 63 65 28 2f 5e 5b 5e  [0].replace(/^[^
52e0: 5c 77 5c 64 d0 90 2d d1 8f 5d 2f 2c 20 27 27 29  \w\d..-..]/, '')
52f0: 2e 72 65 70 6c 61 63 65 28 2f 5b 5e 5c 77 5c 64  .replace(/[^\w\d
5300: d0 90 2d d1 8f 5d 24 2f 2c 20 27 27 29 3b 0d 0a  ..-..]$/, '');..
5310: 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20          else..  
5320: 20 20 20 20 20 20 20 20 20 20 72 65 73 52 6f 77            resRow
5330: 2e 45 78 61 63 74 4d 61 74 63 68 20 3d 20 6d 61  .ExactMatch = ma
5340: 74 63 68 65 73 5b 30 5d 3b 0d 0a 20 20 20 20 7d  tches[0];..    }
5350: 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 67 6f 54  ,..    ..    goT
5360: 6f 4c 69 6e 65 20 3a 20 66 75 6e 63 74 69 6f 6e  oLine : function
5370: 20 28 72 6f 77 29 20 7b 0d 0a 0d 0a 20 20 20 20   (row) {....    
5380: 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f      this.form.Co
5390: 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73  ntrols.SearchRes
53a0: 75 6c 74 73 2e 43 75 72 72 65 6e 74 52 6f 77 20  ults.CurrentRow 
53b0: 3d 20 72 6f 77 3b 20 20 20 20 0d 0a 0d 0a 20 20  = row;    ....  
53c0: 20 20 20 20 20 20 2f 2f 20 d0 9e d1 82 d0 ba d1        // .......
53d0: 80 d0 be d0 b5 d0 bc 20 d0 b8 2f d0 b8 d0 bb d0  ....... ../.....
53e0: b8 20 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 b8 d1 80  . ..............
53f0: d1 83 d0 b5 d0 bc 20 d0 be d0 ba d0 bd d0 be 20  ...... ........ 
5400: d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 b0 2c 20  .............., 
5410: d0 b2 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be d0  .. .............
5420: bc 20 d0 b2 d1 8b d0 bf d0 be d0 bb d0 bd d1 8f  . ..............
5430: d0 bb d1 81 d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0  ...... .........
5440: ba 2e 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
5450: 74 61 72 67 65 74 57 69 6e 64 6f 77 20 3d 20 72  targetWindow = r
5460: 6f 77 2e 5f 6f 62 6a 65 63 74 2e 61 63 74 69 76  ow._object.activ
5470: 61 74 65 28 29 3b 0d 0a 20 20 20 20 20 0d 0a 20  ate();..     .. 
5480: 20 20 20 20 20 20 20 69 66 20 28 21 74 61 72 67         if (!targ
5490: 65 74 57 69 6e 64 6f 77 2e 49 73 41 63 74 69 76  etWindow.IsActiv
54a0: 65 28 29 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d  e())..        {.
54b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 6f 4d  .            DoM
54c0: 65 73 73 61 67 65 42 6f 78 28 22 d0 9e d0 ba d0  essageBox(".....
54d0: bd d0 be 2c 20 d0 b4 d0 bb d1 8f 20 d0 ba d0 be  ..., ...... ....
54e0: d1 82 d0 be d1 80 d0 be d0 b3 d0 be 20 d0 b2 d1  ............ ...
54f0: 8b d0 bf d0 be d0 bb d0 bd d1 8f d0 bb d1 81 d1  ................
5500: 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba 2c 20 d0 b1  . .........., ..
5510: d1 8b d0 bb d0 be 20 d0 b7 d0 b0 d0 ba d1 80 d1  ...... .........
5520: 8b d1 82 d0 be 21 5c 6e d0 9e d0 ba d0 bd d0 be  .....!\n........
5530: 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d1 81   ............ ..
5540: 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0   ...............
5550: b0 d1 82 d0 b0 d0 bc d0 b8 20 d1 81 d1 82 d0 b0  ......... ......
5560: d0 bb d0 be 20 d0 bd d0 b5 20 d0 b0 d0 ba d1 82  .... .... ......
5570: d1 83 d0 b0 d0 bb d1 8c d0 bd d0 be 20 d0 b8 20  ............ .. 
5580: d0 b1 d1 83 d0 b4 d0 b5 d1 82 20 d0 b7 d0 b0 d0  .......... .....
5590: ba d1 80 d1 8b d1 82 d0 be 2e 22 29 3b 0d 0a 20  ..........");.. 
55a0: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
55b0: 63 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c  clearSearchResul
55c0: 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  ts();..         
55d0: 20 20 20 74 68 69 73 2e 43 6c 6f 73 65 28 29 3b     this.Close();
55e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65  ..            re
55f0: 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d  turn;..        }
5600: 0d 0a 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20  ..     ..       
5610: 20 2f 2f 20 d0 9d d0 b0 d0 b9 d0 b4 d0 b5 d0 bc   // ............
5620: 20 d0 bf d0 be d0 b7 d0 b8 d1 86 d0 b8 d1 8e 20   .............. 
5630: d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd d0 bd d0 be  ................
5640: d0 b3 d0 be 20 d1 81 d0 bb d0 be d0 b2 d0 b0 20  .... .......... 
5650: d0 b2 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b5 2e  .. .............
5660: 0d 0a 20 20 20 20 20 20 20 20 2f 2f 64 65 62 75  ..        //debu
5670: 67 67 65 72 0d 0a 20 20 20 20 20 20 20 20 76 61  gger..        va
5680: 72 20 6c 69 6e 65 53 74 61 72 74 20 3d 20 72 6f  r lineStart = ro
5690: 77 2e 4c 69 6e 65 4e 6f 2c 20 63 6f 6c 53 74 61  w.LineNo, colSta
56a0: 72 74 2c 20 6c 69 6e 65 45 6e 64 20 3d 20 6c 69  rt, lineEnd = li
56b0: 6e 65 53 74 61 72 74 2c 20 63 6f 6c 45 6e 64 0d  neStart, colEnd.
56c0: 0a 20 20 20 20 20 20 20 20 69 66 28 72 6f 77 2e  .        if(row.
56d0: 45 78 61 63 74 4d 61 74 63 68 2e 73 75 62 73 74  ExactMatch.subst
56e0: 72 28 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68  r(row.ExactMatch
56f0: 2e 6c 65 6e 67 74 68 20 2d 20 31 29 20 3d 3d 20  .length - 1) == 
5700: 27 5c 6e 27 29 0d 0a 20 20 20 20 20 20 20 20 7b  '\n')..        {
5710: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f  ..            //
5720: 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0   ...............
5730: b0 d1 82 20 d0 bc d0 bd d0 be d0 b3 d0 be d1 81  ... ............
5740: d1 82 d1 80 d0 be d1 87 d0 bd d0 be d0 b3 d0 be  ................
5750: 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 0d 0a 20   .............. 
5760: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74             var t
5770: 65 78 74 20 3d 20 72 6f 77 2e 5f 6d 61 74 63 68  ext = row._match
5780: 2e 72 65 61 6c 52 65 73 75 6c 74 0d 0a 20 20 20  .realResult..   
5790: 20 20 20 20 20 20 20 20 20 63 6f 6c 53 74 61 72           colStar
57a0: 74 20 3d 20 72 6f 77 2e 5f 6d 61 74 63 68 2e 69  t = row._match.i
57b0: 6e 64 65 78 20 2b 20 31 0d 0a 20 20 20 20 20 20  ndex + 1..      
57c0: 20 20 20 20 20 20 63 6f 6c 45 6e 64 20 3d 20 63        colEnd = c
57d0: 6f 6c 53 74 61 72 74 0d 0a 20 20 20 20 20 20 20  olStart..       
57e0: 20 20 20 20 20 66 6f 72 28 76 61 72 20 6b 20 3d       for(var k =
57f0: 20 30 3b 20 6b 20 3c 20 74 65 78 74 2e 6c 65 6e   0; k < text.len
5800: 67 74 68 3b 20 6b 2b 2b 29 0d 0a 20 20 20 20 20  gth; k++)..     
5810: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
5820: 20 20 20 20 20 20 20 20 20 20 69 66 28 74 65 78            if(tex
5830: 74 2e 63 68 61 72 41 74 28 6b 29 20 3d 3d 20 27  t.charAt(k) == '
5840: 5c 6e 27 29 0d 0a 20 20 20 20 20 20 20 20 20 20  \n')..          
5850: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
5860: 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 6e               lin
5870: 65 45 6e 64 2b 2b 0d 0a 20 20 20 20 20 20 20 20  eEnd++..        
5880: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 45              colE
5890: 6e 64 20 3d 20 31 3b 0d 0a 20 20 20 20 20 20 20  nd = 1;..       
58a0: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
58b0: 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65              else
58c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
58d0: 20 20 20 20 20 20 63 6f 6c 45 6e 64 2b 2b 0d 0a        colEnd++..
58e0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
58f0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
5900: 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20    else..        
5910: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76  {..            v
5920: 61 72 20 73 65 61 72 63 68 50 61 74 74 65 72 6e  ar searchPattern
5930: 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f   = this.form.Who
5940: 6c 65 57 6f 72 64 73 20 3f 20 22 28 3f 3a 5b 5e  leWords ? "(?:[^
5950: 5c 5c 77 5c 5c 64 d0 90 2d d1 8f 5d 7c 5e 29 22  \\w\\d..-..]|^)"
5960: 20 2b 20 72 6f 77 2e 45 78 61 63 74 4d 61 74 63   + row.ExactMatc
5970: 68 20 2b 20 22 28 5b 5e 5c 5c 77 5c 5c 64 d0 90  h + "([^\\w\\d..
5980: 2d d1 8f 5d 7c 24 29 22 20 3a 20 53 74 72 69 6e  -..]|$)" : Strin
5990: 67 55 74 69 6c 73 2e 61 64 64 53 6c 61 73 68 65  gUtils.addSlashe
59a0: 73 28 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68  s(row.ExactMatch
59b0: 29 3b 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ); ..           
59c0: 20 76 61 72 20 72 65 20 3d 20 6e 65 77 20 52 65   var re = new Re
59d0: 67 45 78 70 28 73 65 61 72 63 68 50 61 74 74 65  gExp(searchPatte
59e0: 72 6e 2c 20 27 67 27 29 3b 0d 0a 20 20 20 20 20  rn, 'g');..     
59f0: 20 20 20 20 20 20 20 76 61 72 20 6d 61 74 63 68         var match
5a00: 65 73 20 3d 20 72 65 2e 65 78 65 63 28 72 6f 77  es = re.exec(row
5a10: 2e 46 6f 75 6e 64 4c 69 6e 65 29 3b 0d 0a 0d 0a  .FoundLine);....
5a20: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 53              colS
5a30: 74 61 72 74 20 3d 20 31 3b 0d 0a 20 20 20 20 20  tart = 1;..     
5a40: 20 20 20 20 20 20 20 69 66 20 28 6d 61 74 63 68         if (match
5a50: 65 73 29 20 0d 0a 20 20 20 20 20 20 20 20 20 20  es) ..          
5a60: 20 20 7b 20 20 20 20 20 20 20 20 0d 0a 20 20 20    {        ..   
5a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c               col
5a80: 53 74 61 72 74 20 3d 20 72 65 2e 6c 61 73 74 49  Start = re.lastI
5a90: 6e 64 65 78 20 2d 20 72 6f 77 2e 45 78 61 63 74  ndex - row.Exact
5aa0: 4d 61 74 63 68 2e 6c 65 6e 67 74 68 20 2b 20 31  Match.length + 1
5ab0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
5ac0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
5ad0: 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f       if (this.fo
5ae0: 72 6d 2e 57 68 6f 6c 65 57 6f 72 64 73 20 26 26  rm.WholeWords &&
5af0: 20 6d 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 20   matches.length 
5b00: 3e 20 31 29 20 20 20 20 20 20 20 20 0d 0a 20 20  > 1)        ..  
5b10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5b20: 20 20 63 6f 6c 53 74 61 72 74 20 2d 3d 20 6d 61    colStart -= ma
5b30: 74 63 68 65 73 5b 31 5d 2e 6c 65 6e 67 74 68 3b  tches[1].length;
5b40: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d   ..            }
5b50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f  ..            co
5b60: 6c 45 6e 64 20 3d 20 63 6f 6c 53 74 61 72 74 20  lEnd = colStart 
5b70: 2b 20 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68  + row.ExactMatch
5b80: 2e 6c 65 6e 67 74 68 0d 0a 20 20 20 20 20 20 20  .length..       
5b90: 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20   }..        ..  
5ba0: 20 20 20 20 20 20 2f 2f 20 d0 a3 d1 81 d1 82 d0        // .......
5bb0: b0 d0 bd d0 be d0 b2 d0 b8 d0 bc 20 d0 b2 d1 8b  ........... ....
5bc0: d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0 b8 d0 b5 20 d0  .............. .
5bd0: bd d0 b0 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd  ... ............
5be0: d0 bd d0 be d0 b5 20 d1 81 d0 be d0 b2 d0 bf d0  ...... .........
5bf0: b0 d0 b4 d0 b5 d0 bd d0 b8 d0 b5 20 d1 81 d0 be  ........... ....
5c00: 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 be d0 b9 20   .............. 
5c10: d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20  ............... 
5c20: 20 20 20 20 20 20 20 74 61 72 67 65 74 57 69 6e         targetWin
5c30: 64 6f 77 2e 53 65 74 43 61 72 65 74 50 6f 73 28  dow.SetCaretPos(
5c40: 6c 69 6e 65 53 74 61 72 74 2c 20 6c 69 6e 65 45  lineStart, lineE
5c50: 6e 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 61  nd);..        ta
5c60: 72 67 65 74 57 69 6e 64 6f 77 2e 53 65 74 53 65  rgetWindow.SetSe
5c70: 6c 65 63 74 69 6f 6e 28 6c 69 6e 65 53 74 61 72  lection(lineStar
5c80: 74 2c 20 63 6f 6c 53 74 61 72 74 2c 20 6c 69 6e  t, colStart, lin
5c90: 65 45 6e 64 2c 20 63 6f 6c 45 6e 64 29 3b 0d 0a  eEnd, colEnd);..
5ca0: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 6d 6f      },....    mo
5cb0: 76 65 52 6f 77 43 75 72 73 6f 72 20 3a 20 66 75  veRowCursor : fu
5cc0: 6e 63 74 69 6f 6e 20 28 66 6f 72 77 61 72 64 29  nction (forward)
5cd0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20   {..        ..  
5ce0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e        if (!this.
5cf0: 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 43 6f 75  results.Rows.Cou
5d00: 6e 74 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20  nt())..         
5d10: 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20     return;..    
5d20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5d30: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
5d40: 76 61 72 20 72 6f 77 20 3d 20 74 68 69 73 2e 66  var row = this.f
5d50: 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65 61  orm.Controls.Sea
5d60: 72 63 68 52 65 73 75 6c 74 73 2e 43 75 72 72 65  rchResults.Curre
5d70: 6e 74 52 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20  ntRow;..        
5d80: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 72  ..        if (!r
5d90: 6f 77 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  ow)..        {..
5da0: 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 77 20              row 
5db0: 3d 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52  = this.results.R
5dc0: 6f 77 73 2e 47 65 74 28 30 29 2e 47 65 74 28 30  ows.Get(0).Get(0
5dd0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
5de0: 69 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e 54 72  if (this.form.Tr
5df0: 65 65 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20  eeView)..       
5e00: 20 20 20 20 20 20 20 20 20 72 6f 77 20 3d 20 72           row = r
5e10: 6f 77 2e 52 6f 77 73 2e 47 65 74 28 30 29 3b 0d  ow.Rows.Get(0);.
5e20: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
5e30: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74   ..            t
5e40: 68 69 73 2e 67 6f 54 6f 4c 69 6e 65 28 72 6f 77  his.goToLine(row
5e50: 29 3b 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20  );    ..        
5e60: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
5e70: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
5e80: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 66 6f  ..        if (fo
5e90: 72 77 61 72 64 29 20 0d 0a 20 20 20 20 20 20 20  rward) ..       
5ea0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
5eb0: 69 66 20 28 72 6f 77 2e 52 6f 77 54 79 70 65 20  if (row.RowType 
5ec0: 3d 3d 20 52 6f 77 54 79 70 65 73 2e 53 65 61 72  == RowTypes.Sear
5ed0: 63 68 52 65 73 75 6c 74 29 0d 0a 20 20 20 20 20  chResult)..     
5ee0: 20 20 20 20 20 20 20 7b 20 20 20 20 0d 0a 20 20         {    ..  
5ef0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68                wh
5f00: 69 6c 65 20 28 72 6f 77 29 0d 0a 20 20 20 20 20  ile (row)..     
5f10: 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20             {..  
5f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5f30: 20 20 76 61 72 20 72 6f 77 73 20 3d 20 72 6f 77    var rows = row
5f40: 2e 50 61 72 65 6e 74 20 3f 20 72 6f 77 2e 50 61  .Parent ? row.Pa
5f50: 72 65 6e 74 2e 52 6f 77 73 20 3a 20 74 68 69 73  rent.Rows : this
5f60: 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 3b 0d 0a  .results.Rows;..
5f70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5f80: 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20      var index = 
5f90: 72 6f 77 73 2e 49 6e 64 65 78 4f 66 28 72 6f 77  rows.IndexOf(row
5fa0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
5fb0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5fc0: 20 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20        if (index 
5fd0: 3c 20 72 6f 77 73 2e 43 6f 75 6e 74 28 29 20 2d  < rows.Count() -
5fe0: 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20   1)..           
5ff0: 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20           {..    
6000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6010: 20 20 20 20 72 6f 77 20 3d 20 72 6f 77 73 2e 47      row = rows.G
6020: 65 74 28 69 6e 64 65 78 20 2b 20 31 29 3b 0d 0a  et(index + 1);..
6030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6040: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
6050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6060: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
6070: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
6080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6090: 20 69 66 20 28 21 72 6f 77 2e 50 61 72 65 6e 74   if (!row.Parent
60a0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
60b0: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b             break
60c0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
60d0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
60e0: 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 77 20              row 
60f0: 3d 20 72 6f 77 2e 50 61 72 65 6e 74 3b 20 20 20  = row.Parent;   
6100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6110: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
6120: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
6130: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20     }..          
6140: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
6150: 77 68 69 6c 65 20 28 72 6f 77 2e 52 6f 77 73 2e  while (row.Rows.
6160: 43 6f 75 6e 74 28 29 20 3e 20 30 29 0d 0a 20 20  Count() > 0)..  
6170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f                ro
6180: 77 20 3d 20 72 6f 77 2e 52 6f 77 73 2e 47 65 74  w = row.Rows.Get
6190: 28 30 29 3b 20 20 20 20 20 20 20 20 20 20 20 20  (0);            
61a0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
61b0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
61c0: 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 7b   else..        {
61d0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
61e0: 20 69 66 20 28 72 6f 77 2e 52 6f 77 54 79 70 65   if (row.RowType
61f0: 20 3d 3d 20 52 6f 77 54 79 70 65 73 2e 53 65 61   == RowTypes.Sea
6200: 72 63 68 52 65 73 75 6c 74 29 0d 0a 20 20 20 20  rchResult)..    
6210: 20 20 20 20 20 20 20 20 7b 20 20 20 20 0d 0a 20          {    .. 
6220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77                 w
6230: 68 69 6c 65 20 28 72 6f 77 29 20 0d 0a 20 20 20  hile (row) ..   
6240: 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a               {..
6250: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6260: 20 20 20 20 76 61 72 20 72 6f 77 73 20 3d 20 72      var rows = r
6270: 6f 77 2e 50 61 72 65 6e 74 20 3f 20 72 6f 77 2e  ow.Parent ? row.
6280: 50 61 72 65 6e 74 2e 52 6f 77 73 20 3a 20 74 68  Parent.Rows : th
6290: 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 3b  is.results.Rows;
62a0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
62b0: 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20        var index 
62c0: 3d 20 72 6f 77 73 2e 49 6e 64 65 78 4f 66 28 72  = rows.IndexOf(r
62d0: 6f 77 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ow);..          
62e0: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
62f0: 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 64 65          if (inde
6300: 78 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20  x > 0)..        
6310: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
6320: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6330: 20 20 20 20 20 20 20 72 6f 77 20 3d 20 72 6f 77         row = row
6340: 73 2e 47 65 74 28 69 6e 64 65 78 20 2d 20 31 29  s.Get(index - 1)
6350: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
6360: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b             break
6370: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
6380: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
6390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
63a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
63b0: 20 20 20 20 69 66 20 28 21 72 6f 77 2e 50 61 72      if (!row.Par
63c0: 65 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20  ent)..          
63d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72                br
63e0: 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  eak;..          
63f0: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
6400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6410: 72 6f 77 20 3d 20 72 6f 77 2e 50 61 72 65 6e 74  row = row.Parent
6420: 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ;               
6430: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
6440: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
6450: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
6460: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
6470: 20 20 20 20 77 68 69 6c 65 20 28 72 6f 77 2e 52      while (row.R
6480: 6f 77 73 2e 43 6f 75 6e 74 28 29 20 3e 20 30 29  ows.Count() > 0)
6490: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
64a0: 20 20 72 6f 77 20 3d 20 72 6f 77 2e 52 6f 77 73    row = row.Rows
64b0: 2e 47 65 74 28 72 6f 77 2e 52 6f 77 73 2e 43 6f  .Get(row.Rows.Co
64c0: 75 6e 74 28 29 20 2d 20 31 29 3b 20 20 20 20 20  unt() - 1);     
64d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
64e0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a     ..        }..
64f0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
6500: 20 20 74 68 69 73 2e 67 6f 54 6f 4c 69 6e 65 28    this.goToLine(
6510: 72 6f 77 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20  row);..    },.. 
6520: 20 20 20 0d 0a 20 20 20 20 63 6c 65 61 72 53 65     ..    clearSe
6530: 61 72 63 68 52 65 73 75 6c 74 73 20 3a 20 66 75  archResults : fu
6540: 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20  nction () {..   
6550: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
6560: 73 2e 52 6f 77 73 2e 43 6c 65 61 72 28 29 3b 0d  s.Rows.Clear();.
6570: 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20  .    },..    .. 
6580: 20 20 20 73 65 74 44 65 66 61 75 6c 74 53 65 61     setDefaultSea
6590: 72 63 68 51 75 65 72 79 20 3a 20 66 75 6e 63 74  rchQuery : funct
65a0: 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20 20  ion () {..      
65b0: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 75 72 72    this.form.Curr
65c0: 65 6e 74 43 6f 6e 74 72 6f 6c 3d 74 68 69 73 2e  entControl=this.
65d0: 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 51 75  form.Controls.Qu
65e0: 65 72 79 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20  ery;..    },..  
65f0: 20 20 0d 0a 20 20 20 20 61 64 64 54 6f 48 69 73    ..    addToHis
6600: 74 6f 72 79 20 3a 20 66 75 6e 63 74 69 6f 6e 20  tory : function 
6610: 28 71 75 65 72 79 29 20 7b 0d 0a 20 20 20 20 20  (query) {..     
6620: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20     ..        if 
6630: 28 21 71 75 65 72 79 29 20 0d 0a 20 20 20 20 20  (!query) ..     
6640: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a         return;..
6650: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
6660: 20 20 2f 2f 20 d0 94 d0 be d0 b1 d0 b0 d0 b2 d0    // ...........
6670: bb d1 8f d0 b5 d0 bc 20 d0 b2 20 d0 b8 d1 81 d1  ....... .. .....
6680: 82 d0 be d1 80 d0 b8 d1 8e 20 d1 82 d0 be d0 bb  ......... ......
6690: d1 8c d0 ba d0 be 20 d0 b5 d1 81 d0 bb d0 b8 20  ...... ........ 
66a0: d1 82 d0 b0 d0 ba d0 be d0 b9 20 d0 bf d0 be d0  .......... .....
66b0: b8 d1 81 d0 ba d0 be d0 b2 d0 be d0 b9 20 d1 81  ............. ..
66c0: d1 82 d1 80 d0 be d0 ba d0 b8 20 d1 82 d0 b0 d0  .......... .....
66d0: bc 20 d0 bd d0 b5 d1 82 2e 0d 0a 20 20 20 20 20  . .........     
66e0: 20 20 20 76 61 72 20 68 69 73 74 6f 72 79 20 3d     var history =
66f0: 20 74 68 69 73 2e 66 6f 72 6d 2e 53 65 61 72 63   this.form.Searc
6700: 68 48 69 73 74 6f 72 79 3b 0d 0a 20 20 20 20 20  hHistory;..     
6710: 20 20 20 69 66 20 28 68 69 73 74 6f 72 79 2e 46     if (history.F
6720: 69 6e 64 42 79 56 61 6c 75 65 28 71 75 65 72 79  indByValue(query
6730: 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))..            
6740: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20  return;..       
6750: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69       ..        i
6760: 66 20 28 68 69 73 74 6f 72 79 2e 43 6f 75 6e 74  f (history.Count
6770: 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ())..           
6780: 20 68 69 73 74 6f 72 79 2e 49 6e 73 65 72 74 28   history.Insert(
6790: 30 2c 20 71 75 65 72 79 29 3b 0d 0a 20 20 20 20  0, query);..    
67a0: 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20      else..      
67b0: 20 20 20 20 20 20 68 69 73 74 6f 72 79 2e 41 64        history.Ad
67c0: 64 28 71 75 65 72 79 29 3b 0d 0a 20 20 20 20 20  d(query);..     
67d0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
67e0: 2f 2f 20 d0 9d d0 b5 20 d0 bf d0 be d0 b7 d0 b2  // .... ........
67f0: d0 be d0 bb d1 8f d0 b5 d0 bc 20 d0 b8 d1 81 d1  .......... .....
6800: 82 d0 be d1 80 d0 b8 d0 b8 20 d1 80 d0 b0 d1 81  ......... ......
6810: d1 82 d0 b8 20 d0 b1 d0 be d0 bb d0 b5 d0 b5 20  .... .......... 
6820: d0 b7 d0 b0 d0 b4 d0 b0 d0 bd d0 bd d0 be d0 b9  ................
6830: 20 d0 b3 d0 bb d1 83 d0 b1 d0 b8 d0 bd d1 8b 2e   ...............
6840: 0d 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 20  ..        while 
6850: 28 68 69 73 74 6f 72 79 2e 43 6f 75 6e 74 28 29  (history.Count()
6860: 20 3e 20 74 68 69 73 2e 66 6f 72 6d 2e 48 69 73   > this.form.His
6870: 74 6f 72 79 44 65 70 74 68 29 0d 0a 20 20 20 20  toryDepth)..    
6880: 20 20 20 20 20 20 20 20 68 69 73 74 6f 72 79 2e          history.
6890: 44 65 6c 65 74 65 28 68 69 73 74 6f 72 79 2e 43  Delete(history.C
68a0: 6f 75 6e 74 28 29 20 2d 20 31 29 3b 0d 0a 20 20  ount() - 1);..  
68b0: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20    },..    ..    
68c0: 67 65 74 52 65 67 45 78 70 45 64 69 74 6f 72 53  getRegExpEditorS
68d0: 63 72 69 70 74 50 61 74 68 20 3a 20 66 75 6e 63  criptPath : func
68e0: 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20  tion () {..     
68f0: 20 20 20 76 61 72 20 6d 61 69 6e 46 6f 6c 64 65     var mainFolde
6900: 72 20 3d 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e  r = profileRoot.
6910: 67 65 74 56 61 6c 75 65 28 22 53 6e 65 67 6f 70  getValue("Snegop
6920: 61 74 2f 4d 61 69 6e 46 6f 6c 64 65 72 22 29 3b  at/MainFolder");
6930: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 73 63  ..        var sc
6940: 72 69 70 74 50 61 74 68 20 3d 20 6d 61 69 6e 46  riptPath = mainF
6950: 6f 6c 64 65 72 20 2b 20 22 73 63 72 69 70 74 73  older + "scripts
6960: 5c 5c 52 65 67 45 78 70 45 64 69 74 6f 72 2e 6a  \\RegExpEditor.j
6970: 73 22 3b 0d 0a 20 20 20 20 20 20 20 20 76 61 72  s";..        var
6980: 20 66 20 3d 20 76 38 4e 65 77 28 27 46 69 6c 65   f = v8New('File
6990: 27 2c 20 73 63 72 69 70 74 50 61 74 68 29 3b 0d  ', scriptPath);.
69a0: 0a 20 20 20 20 20 20 20 20 69 66 20 28 66 2e 45  .        if (f.E
69b0: 78 69 73 74 28 29 29 0d 0a 20 20 20 20 20 20 20  xist())..       
69c0: 20 20 20 20 20 72 65 74 75 72 6e 20 73 63 72 69       return scri
69d0: 70 74 50 61 74 68 3b 0d 0a 20 20 20 20 20 20 20  ptPath;..       
69e0: 20 72 65 74 75 72 6e 20 27 27 3b 0d 0a 20 20 20   return '';..   
69f0: 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 46   },..    ..    F
6a00: 6f 72 6d 5f 4f 6e 4f 70 65 6e 20 3a 20 66 75 6e  orm_OnOpen : fun
6a10: 63 74 69 6f 6e 20 28 29 20 7b 20 20 20 0d 0a 20  ction () {   .. 
6a20: 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73         if (!this
6a30: 2e 67 65 74 52 65 67 45 78 70 45 64 69 74 6f 72  .getRegExpEditor
6a40: 53 63 72 69 70 74 50 61 74 68 28 29 29 0d 0a 20  ScriptPath()).. 
6a50: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
6a60: 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 51 75  form.Controls.Qu
6a70: 65 72 79 2e 43 68 6f 69 63 65 42 75 74 74 6f 6e  ery.ChoiceButton
6a80: 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20   = false;..     
6a90: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
6aa0: 73 2e 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73  s.SetControlsVis
6ab0: 69 62 6c 65 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d  ible();..    },.
6ac0: 0a 0d 0a 20 20 20 20 46 6f 72 6d 5f 4f 6e 43 6c  ...    Form_OnCl
6ad0: 6f 73 65 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  ose : function (
6ae0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ) {..        thi
6af0: 73 2e 73 61 76 65 53 65 74 74 69 6e 67 73 28 29  s.saveSettings()
6b00: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20  ;..    },....   
6b10: 20 43 6d 64 42 61 72 5f 42 74 50 72 65 76 20 3a   CmdBar_BtPrev :
6b20: 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72   function (contr
6b30: 6f 6c 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74  ol) {..        t
6b40: 68 69 73 2e 6d 6f 76 65 52 6f 77 43 75 72 73 6f  his.moveRowCurso
6b50: 72 28 66 61 6c 73 65 29 3b 0d 0a 20 20 20 20 7d  r(false);..    }
6b60: 2c 0d 0a 0d 0a 20 20 20 20 43 6d 64 42 61 72 5f  ,....    CmdBar_
6b70: 42 74 4e 65 78 74 20 3a 20 66 75 6e 63 74 69 6f  BtNext : functio
6b80: 6e 20 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 20  n (control) {.. 
6b90: 20 20 20 20 20 20 20 74 68 69 73 2e 6d 6f 76 65         this.move
6ba0: 52 6f 77 43 75 72 73 6f 72 28 74 72 75 65 29 3b  RowCursor(true);
6bb0: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a  ..    },..    ..
6bc0: 20 20 20 20 51 75 65 72 79 5f 4f 6e 43 68 61 6e      Query_OnChan
6bd0: 67 65 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 63  ge : function (c
6be0: 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 20 20 20 20 20  ontrol) {..     
6bf0: 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f 72 6d     if (this.form
6c00: 2e 51 75 65 72 79 20 21 3d 20 27 27 29 0d 0a 20  .Query != '').. 
6c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74                 t
6c20: 68 69 73 2e 73 65 61 72 63 68 41 63 74 69 76 65  his.searchActive
6c30: 44 6f 63 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  Doc();..    },..
6c40: 0d 0a 20 20 20 20 51 75 65 72 79 5f 53 74 61 72  ..    Query_Star
6c50: 74 4c 69 73 74 43 68 6f 69 63 65 20 3a 20 66 75  tListChoice : fu
6c60: 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 2c  nction (control,
6c70: 20 64 65 66 61 75 6c 74 48 61 6e 64 6c 65 72 29   defaultHandler)
6c80: 20 7b 0d 0a 20 20 20 20 20 20 20 20 63 6f 6e 74   {..        cont
6c90: 72 6f 6c 2e 76 61 6c 2e 43 68 6f 69 63 65 4c 69  rol.val.ChoiceLi
6ca0: 73 74 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 53  st = this.form.S
6cb0: 65 61 72 63 68 48 69 73 74 6f 72 79 3b 0d 0a 20  earchHistory;.. 
6cc0: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 42 74 53     },....    BtS
6cd0: 65 61 72 63 68 5f 43 6c 69 63 6b 20 3a 20 66 75  earch_Click : fu
6ce0: 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29  nction (control)
6cf0: 20 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 66   {....        if
6d00: 20 28 74 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72   (this.form.Quer
6d10: 79 20 3d 3d 20 27 27 29 0d 0a 20 20 20 20 20 20  y == '')..      
6d20: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
6d30: 20 44 6f 4d 65 73 73 61 67 65 42 6f 78 28 27 d0   DoMessageBox('.
6d40: 9d d0 b5 20 d0 b7 d0 b0 d0 b4 d0 b0 d0 bd d0 b0  ... ............
6d50: 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 20 d0 bf   ............ ..
6d60: d0 be d0 b8 d1 81 d0 ba d0 b0 27 29 3b 0d 0a 20  ..........');.. 
6d70: 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72             retur
6d80: 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20  n;..        }.. 
6d90: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
6da0: 20 74 68 69 73 2e 73 65 61 72 63 68 41 63 74 69   this.searchActi
6db0: 76 65 44 6f 63 28 29 3b 0d 0a 20 20 20 20 7d 2c  veDoc();..    },
6dc0: 0d 0a 0d 0a 20 20 20 20 43 6d 64 42 61 72 4f 70  ....    CmdBarOp
6dd0: 74 69 6f 6e 73 5f 42 74 41 62 6f 75 74 20 3a 20  tions_BtAbout : 
6de0: 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f  function (contro
6df0: 6c 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 52 75  l) {..        Ru
6e00: 6e 41 70 70 28 27 68 74 74 70 3a 2f 2f 73 6e 65  nApp('http://sne
6e10: 67 6f 70 61 74 2e 72 75 2f 73 63 72 69 70 74 73  gopat.ru/scripts
6e20: 2f 77 69 6b 69 3f 6e 61 6d 65 3d 65 78 74 53 65  /wiki?name=extSe
6e30: 61 72 63 68 2e 6a 73 27 29 3b 0d 0a 20 20 20 20  arch.js');..    
6e40: 7d 2c 0d 0a 0d 0a 20 20 20 20 53 65 61 72 63 68  },....    Search
6e50: 52 65 73 75 6c 74 73 5f 53 65 6c 65 63 74 69 6f  Results_Selectio
6e60: 6e 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f  n : function (co
6e70: 6e 74 72 6f 6c 2c 20 73 65 6c 65 63 74 65 64 52  ntrol, selectedR
6e80: 6f 77 2c 20 73 65 6c 65 63 74 65 64 43 6f 6c 2c  ow, selectedCol,
6e90: 20 64 65 66 61 75 6c 74 48 61 6e 64 6c 65 72 29   defaultHandler)
6ea0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
6eb0: 2e 67 6f 54 6f 4c 69 6e 65 28 73 65 6c 65 63 74  .goToLine(select
6ec0: 65 64 52 6f 77 2e 76 61 6c 29 3b 0d 0a 20 20 20  edRow.val);..   
6ed0: 20 20 20 20 20 64 65 66 61 75 6c 74 48 61 6e 64       defaultHand
6ee0: 6c 65 72 2e 76 61 6c 20 3d 20 66 61 6c 73 65 3b  ler.val = false;
6ef0: 20 2f 2f 20 d0 ad d1 82 d0 be 20 d0 b4 d0 bb d1   // ...... .....
6f00: 8f 20 d1 82 d0 be d0 b3 d0 be 20 d1 87 d1 82 d0  . ........ .....
6f10: be d0 b1 d1 8b 20 d0 bf d0 be d1 81 d0 bb d0 b5  ..... ..........
6f20: 20 d0 bd d0 b0 d0 b6 d0 b0 d1 82 d0 b8 d1 8f 20   .............. 
6f30: d0 bd d0 b0 20 d1 81 d1 82 d1 80 d0 be d0 ba d1  .... ...........
6f40: 83 20 d0 ba d1 83 d1 80 d1 81 d0 be d1 80 20 d0  . ............ .
6f50: bd d0 b5 20 d1 83 d1 85 d0 be d0 b4 d0 b8 d1 82  ... ............
6f60: 20 d1 81 20 d1 82 d0 b0 d0 b1 d0 bb d0 b8 d1 87   .. ............
6f70: d0 bd d0 be d0 b3 d0 be 20 d0 bf d0 be d0 bb d1  ........ .......
6f80: 8f 2c 20 d0 b8 20 d0 bf d1 80 d0 b8 20 d0 bd d0  ., .. ...... ...
6f90: be d0 b2 d0 be d0 b9 20 d0 b0 d0 ba d1 82 d0 b8  ....... ........
6fa0: d0 b2 d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d0 b8 20 d1  .............. .
6fb0: 84 d0 be d1 80 d0 bc d1 8b 20 d0 bc d0 be d0 b6  ......... ......
6fc0: d0 bd d0 be 20 d0 b1 d1 8b d0 bb d0 be 20 d0 ba  .... ........ ..
6fd0: d1 83 d1 80 d1 81 d0 be d1 80 d0 be d0 bc 20 d0  .............. .
6fe0: bf d0 be d1 81 d0 bc d0 be d1 82 d1 80 d0 b5 d1  ................
6ff0: 82 d1 8c 20 d0 b4 d1 80 d1 83 d0 b3 d0 b8 d0 b5  ... ............
7000: 20 d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d1   ...............
7010: 8f 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d  ...    },..    .
7020: 0a 20 20 20 20 62 65 66 6f 72 65 45 78 69 74 41  .    beforeExitA
7030: 70 70 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29  pp : function ()
7040: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
7050: 2e 77 61 74 63 68 65 72 2e 73 74 6f 70 57 61 74  .watcher.stopWat
7060: 63 68 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  ch();..    },...
7070: 0a 20 20 20 20 49 73 52 65 67 45 78 70 5f 4f 6e  .    IsRegExp_On
7080: 43 68 61 6e 67 65 20 3a 20 66 75 6e 63 74 69 6f  Change : functio
7090: 6e 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82  n(..............
70a0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  ) {..        if 
70b0: 28 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52 65 67  (this.form.IsReg
70c0: 45 78 70 29 0d 0a 20 20 20 20 20 20 20 20 20 20  Exp)..          
70d0: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c    this.form.Whol
70e0: 65 57 6f 72 64 73 20 3d 20 66 61 6c 73 65 3b 0d  eWords = false;.
70f0: 0a 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ...        this.
7100: 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62  SetControlsVisib
7110: 6c 65 28 29 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a  le()..    },....
7120: 20 20 20 20 57 68 6f 6c 65 57 6f 72 64 73 5f 4f      WholeWords_O
7130: 6e 43 68 61 6e 67 65 20 3a 20 66 75 6e 63 74 69  nChange : functi
7140: 6f 6e 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1  on(.............
7150: 82 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66  .) {..        if
7160: 20 28 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c   (this.form.Whol
7170: 65 57 6f 72 64 73 29 0d 0a 20 20 20 20 20 20 20  eWords)..       
7180: 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 49       this.form.I
7190: 73 52 65 67 45 78 70 20 3d 20 66 61 6c 73 65 3b  sRegExp = false;
71a0: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  ....        this
71b0: 2e 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69  .SetControlsVisi
71c0: 62 6c 65 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  ble();..    },..
71d0: 20 20 20 20 0d 0a 20 20 20 20 51 75 65 72 79 5f      ..    Query_
71e0: 53 74 61 72 74 43 68 6f 69 63 65 20 3a 20 66 75  StartChoice : fu
71f0: 6e 63 74 69 6f 6e 20 28 43 6f 6e 74 72 6f 6c 2c  nction (Control,
7200: 20 44 65 66 61 75 6c 74 48 61 6e 64 6c 65 72 29   DefaultHandler)
7210: 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20   {..        var 
7220: 72 65 45 64 69 74 6f 72 50 61 74 68 20 3d 20 74  reEditorPath = t
7230: 68 69 73 2e 67 65 74 52 65 67 45 78 70 45 64 69  his.getRegExpEdi
7240: 74 6f 72 53 63 72 69 70 74 50 61 74 68 28 29 3b  torScriptPath();
7250: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 72 65  ..        if (re
7260: 45 64 69 74 6f 72 50 61 74 68 29 0d 0a 20 20 20  EditorPath)..   
7270: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
7280: 20 20 20 20 44 65 66 61 75 6c 74 48 61 6e 64 6c      DefaultHandl
7290: 65 72 2e 76 61 6c 20 3d 20 66 61 6c 73 65 3b 0d  er.val = false;.
72a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 45  .            reE
72b0: 64 69 74 6f 72 41 64 64 69 6e 20 3d 20 73 74 64  ditorAddin = std
72c0: 6c 69 62 2e 72 65 71 75 69 72 65 28 72 65 45 64  lib.require(reEd
72d0: 69 74 6f 72 50 61 74 68 29 3b 0d 0a 20 20 20 20  itorPath);..    
72e0: 20 20 20 20 20 20 20 20 69 66 20 28 72 65 45 64          if (reEd
72f0: 69 74 6f 72 41 64 64 69 6e 29 0d 0a 20 20 20 20  itorAddin)..    
7300: 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20          {..     
7310: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
7320: 66 6f 72 6d 2e 49 73 52 65 67 45 78 70 20 3d 20  form.IsRegExp = 
7330: 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20  true;..         
7340: 20 20 20 20 20 20 20 76 61 72 20 72 65 45 64 69         var reEdi
7350: 74 6f 72 20 3d 20 72 65 45 64 69 74 6f 72 41 64  tor = reEditorAd
7360: 64 69 6e 2e 43 72 65 61 74 65 52 65 67 45 78 70  din.CreateRegExp
7370: 45 64 69 74 6f 72 28 29 3b 0d 0a 20 20 20 20 20  Editor();..     
7380: 20 20 20 20 20 20 20 20 20 20 20 72 65 45 64 69             reEdi
7390: 74 6f 72 2e 6f 70 65 6e 28 43 6f 6e 74 72 6f 6c  tor.open(Control
73a0: 2e 76 61 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20  .val);..        
73b0: 20 20 20 20 7d 20 20 20 20 20 20 20 20 0d 0a 20      }        .. 
73c0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c         }..    },
73d0: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 53 65 61 72  ..    ..    Sear
73e0: 63 68 52 65 73 75 6c 74 73 5f 4f 6e 52 6f 77 4f  chResults_OnRowO
73f0: 75 74 70 75 74 20 3a 20 66 75 6e 63 74 69 6f 6e  utput : function
7400: 20 28 43 6f 6e 74 72 6f 6c 2c 20 52 6f 77 41 70   (Control, RowAp
7410: 70 65 61 72 61 6e 63 65 2c 20 52 6f 77 44 61 74  pearance, RowDat
7420: 61 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  a) {..        ..
7430: 20 20 20 20 20 20 20 20 76 61 72 20 63 65 6c 6c          var cell
7440: 20 3d 20 52 6f 77 41 70 70 65 61 72 61 6e 63 65   = RowAppearance
7450: 2e 76 61 6c 2e 43 65 6c 6c 73 2e 46 6f 75 6e 64  .val.Cells.Found
7460: 4c 69 6e 65 3b 0d 0a 20 20 20 20 20 20 20 20 0d  Line;..        .
7470: 0a 20 20 20 20 20 20 20 20 73 77 69 74 63 68 20  .        switch 
7480: 28 52 6f 77 44 61 74 61 2e 76 61 6c 2e 52 6f 77  (RowData.val.Row
7490: 54 79 70 65 29 0d 0a 20 20 20 20 20 20 20 20 7b  Type)..        {
74a0: 0d 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 52  ..        case R
74b0: 6f 77 54 79 70 65 73 2e 46 75 6e 63 47 72 6f 75  owTypes.FuncGrou
74c0: 70 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  p:..            
74d0: 63 65 6c 6c 2e 53 65 74 50 69 63 74 75 72 65 28  cell.SetPicture(
74e0: 74 68 69 73 2e 49 63 6f 6e 73 2e 46 75 6e 63 29  this.Icons.Func)
74f0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62  ;..            b
7500: 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 0d  reak;..        .
7510: 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 52 6f  .        case Ro
7520: 77 54 79 70 65 73 2e 50 72 6f 63 47 72 6f 75 70  wTypes.ProcGroup
7530: 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63  :..            c
7540: 65 6c 6c 2e 53 65 74 50 69 63 74 75 72 65 28 74  ell.SetPicture(t
7550: 68 69 73 2e 49 63 6f 6e 73 2e 50 72 6f 63 29 3b  his.Icons.Proc);
7560: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 72  ..            br
7570: 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20  eak;....        
7580: 63 61 73 65 20 52 6f 77 54 79 70 65 73 2e 53 65  case RowTypes.Se
7590: 61 72 63 68 44 6f 63 3a 0d 0a 20 20 20 20 20 20  archDoc:..      
75a0: 20 20 20 20 20 20 52 6f 77 41 70 70 65 61 72 61        RowAppeara
75b0: 6e 63 65 2e 76 61 6c 2e 43 65 6c 6c 73 2e 4c 69  nce.val.Cells.Li
75c0: 6e 65 4e 6f 2e 53 65 74 54 65 78 74 28 27 27 29  neNo.SetText('')
75d0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 52  ;..            R
75e0: 6f 77 41 70 70 65 61 72 61 6e 63 65 2e 76 61 6c  owAppearance.val
75f0: 2e 46 6f 6e 74 20 3d 20 74 68 69 73 2e 53 65 61  .Font = this.Sea
7600: 72 63 68 44 6f 63 52 6f 77 46 6f 6e 74 3b 0d 0a  rchDocRowFont;..
7610: 20 20 20 20 20 20 20 20 20 20 20 20 52 6f 77 41              RowA
7620: 70 70 65 61 72 61 6e 63 65 2e 76 61 6c 2e 54 65  ppearance.val.Te
7630: 78 74 43 6f 6c 6f 72 20 3d 20 57 65 62 43 6f 6c  xtColor = WebCol
7640: 6f 72 73 2e 44 61 72 6b 42 6c 75 65 3b 0d 0a 20  ors.DarkBlue;.. 
7650: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b             break
7660: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  ;..            .
7670: 0a 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74  .        default
7680: 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62  :..            b
7690: 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 7d  reak;..        }
76a0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
76b0: 20 20 20 20 69 66 20 28 52 6f 77 44 61 74 61 2e      if (RowData.
76c0: 76 61 6c 2e 5f 6d 65 74 68 6f 64 20 26 26 20 52  val._method && R
76d0: 6f 77 44 61 74 61 2e 76 61 6c 2e 5f 6d 65 74 68  owData.val._meth
76e0: 6f 64 2e 49 73 50 72 6f 63 20 21 3d 3d 20 75 6e  od.IsProc !== un
76f0: 64 65 66 69 6e 65 64 29 0d 0a 20 20 20 20 20 20  defined)..      
7700: 20 20 20 20 20 20 52 6f 77 41 70 70 65 61 72 61        RowAppeara
7710: 6e 63 65 2e 76 61 6c 2e 43 65 6c 6c 73 2e 4d 65  nce.val.Cells.Me
7720: 74 68 6f 64 2e 53 65 74 50 69 63 74 75 72 65 28  thod.SetPicture(
7730: 52 6f 77 44 61 74 61 2e 76 61 6c 2e 5f 6d 65 74  RowData.val._met
7740: 68 6f 64 2e 49 73 50 72 6f 63 20 3f 20 74 68 69  hod.IsProc ? thi
7750: 73 2e 49 63 6f 6e 73 2e 50 72 6f 63 20 3a 20 74  s.Icons.Proc : t
7760: 68 69 73 2e 49 63 6f 6e 73 2e 46 75 6e 63 29 3b  his.Icons.Func);
7770: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
7780: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73 77  },..    ..    sw
7790: 69 74 63 68 56 69 65 77 20 3a 20 66 75 6e 63 74  itchView : funct
77a0: 69 6f 6e 20 28 73 65 74 54 72 65 65 56 69 65 77  ion (setTreeView
77b0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ) {..        .. 
77c0: 20 20 20 20 20 20 20 76 61 72 20 72 65 73 75 6c         var resul
77d0: 74 73 20 3d 20 74 68 69 73 2e 72 65 73 75 6c 74  ts = this.result
77e0: 73 2e 43 6f 70 79 28 29 3b 0d 0a 20 20 20 20 20  s.Copy();..     
77f0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
7800: 73 2e 63 6c 65 61 72 53 65 61 72 63 68 52 65 73  s.clearSearchRes
7810: 75 6c 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20  ults();..       
7820: 20 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 20 28   ..        for (
7830: 76 61 72 20 64 6f 63 52 6f 77 49 78 20 3d 20 30  var docRowIx = 0
7840: 3b 20 64 6f 63 52 6f 77 49 78 20 3c 20 72 65 73  ; docRowIx < res
7850: 75 6c 74 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28  ults.Rows.Count(
7860: 29 3b 20 64 6f 63 52 6f 77 49 78 2b 2b 29 0d 0a  ); docRowIx++)..
7870: 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20          {..     
7880: 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 44 6f         var oldDo
7890: 63 52 6f 77 20 3d 20 72 65 73 75 6c 74 73 2e 52  cRow = results.R
78a0: 6f 77 73 2e 47 65 74 28 64 6f 63 52 6f 77 49 78  ows.Get(docRowIx
78b0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
78c0: 76 61 72 20 64 6f 63 52 6f 77 20 3d 20 74 68 69  var docRow = thi
78d0: 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 41  s.results.Rows.A
78e0: 64 64 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  dd();..         
78f0: 20 20 20 46 69 6c 6c 50 72 6f 70 65 72 74 79 56     FillPropertyV
7900: 61 6c 75 65 73 28 64 6f 63 52 6f 77 2c 20 6f 6c  alues(docRow, ol
7910: 64 44 6f 63 52 6f 77 29 3b 0d 0a 20 20 20 20 20  dDocRow);..     
7920: 20 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 67 72         docRow.gr
7930: 6f 75 70 73 43 61 63 68 65 20 3d 20 76 38 4e 65  oupsCache = v8Ne
7940: 77 28 27 4d 61 70 27 29 3b 0d 0a 20 20 20 20 20  w('Map');..     
7950: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
7960: 20 20 20 20 20 69 66 20 28 73 65 74 54 72 65 65       if (setTree
7970: 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20 20 20  View)..         
7980: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
7990: 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69        for (var i
79a0: 3d 30 3b 20 69 3c 6f 6c 64 44 6f 63 52 6f 77 2e  =0; i<oldDocRow.
79b0: 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b  Rows.Count(); i+
79c0: 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  +)..            
79d0: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
79e0: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72             var r
79f0: 6f 77 20 3d 20 6f 6c 64 44 6f 63 52 6f 77 2e 52  ow = oldDocRow.R
7a00: 6f 77 73 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20  ows.Get(i);..   
7a10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7a20: 20 76 61 72 20 67 72 6f 75 70 52 6f 77 20 3d 20   var groupRow = 
7a30: 74 68 69 73 2e 67 65 74 47 72 6f 75 70 52 6f 77  this.getGroupRow
7a40: 28 64 6f 63 52 6f 77 2c 20 72 6f 77 2e 5f 6d 65  (docRow, row._me
7a50: 74 68 6f 64 29 3b 0d 0a 20 20 20 20 20 20 20 20  thod);..        
7a60: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
7a70: 72 65 73 52 6f 77 20 3d 20 67 72 6f 75 70 52 6f  resRow = groupRo
7a80: 77 2e 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20  w.Rows.Add();.. 
7a90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7aa0: 20 20 20 46 69 6c 6c 50 72 6f 70 65 72 74 79 56     FillPropertyV
7ab0: 61 6c 75 65 73 28 72 65 73 52 6f 77 2c 20 72 6f  alues(resRow, ro
7ac0: 77 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  w);..           
7ad0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
7ae0: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
7af0: 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20     else..       
7b00: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
7b10: 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72          for (var
7b20: 20 69 3d 30 3b 20 69 3c 6f 6c 64 44 6f 63 52 6f   i=0; i<oldDocRo
7b30: 77 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20  w.Rows.Count(); 
7b40: 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20  i++)..          
7b50: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
7b60: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
7b70: 20 67 72 6f 75 70 52 6f 77 20 3d 20 6f 6c 64 44   groupRow = oldD
7b80: 6f 63 52 6f 77 2e 52 6f 77 73 2e 47 65 74 28 69  ocRow.Rows.Get(i
7b90: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
7ba0: 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72          for (var
7bb0: 20 6a 3d 30 3b 20 6a 3c 67 72 6f 75 70 52 6f 77   j=0; j<groupRow
7bc0: 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20 6a  .Rows.Count(); j
7bd0: 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ++)..           
7be0: 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20           {..    
7bf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7c00: 20 20 20 20 76 61 72 20 72 6f 77 20 3d 20 67 72      var row = gr
7c10: 6f 75 70 52 6f 77 2e 52 6f 77 73 2e 47 65 74 28  oupRow.Rows.Get(
7c20: 6a 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  j);..           
7c30: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
7c40: 20 72 65 73 52 6f 77 20 3d 20 64 6f 63 52 6f 77   resRow = docRow
7c50: 2e 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20 20  .Rows.Add();..  
7c60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7c70: 20 20 20 20 20 20 46 69 6c 6c 50 72 6f 70 65 72        FillProper
7c80: 74 79 56 61 6c 75 65 73 28 72 65 73 52 6f 77 2c  tyValues(resRow,
7c90: 20 72 6f 77 29 3b 0d 0a 20 20 20 20 20 20 20 20   row);..        
7ca0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
7cb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
7cc0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20  ..            } 
7cd0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a     ..        }..
7ce0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 65 78 70          this.exp
7cf0: 61 6e 64 54 72 65 65 28 29 3b 20 20 20 20 20 20  andTree();      
7d00: 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73    ..        this
7d10: 2e 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69  .SetControlsVisi
7d20: 62 6c 65 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  ble();..    },..
7d30: 20 20 20 20 0d 0a 20 20 20 20 43 6d 64 42 61 72      ..    CmdBar
7d40: 5f 54 72 65 65 56 69 65 77 20 3a 20 66 75 6e 63  _TreeView : func
7d50: 74 69 6f 6e 20 28 42 75 74 74 6f 6e 29 20 7b 0d  tion (Button) {.
7d60: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f  .        this.fo
7d70: 72 6d 2e 54 72 65 65 56 69 65 77 20 3d 20 21 74  rm.TreeView = !t
7d80: 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65  his.form.TreeVie
7d90: 77 3b 0d 0a 20 20 20 20 20 20 20 20 42 75 74 74  w;..        Butt
7da0: 6f 6e 2e 76 61 6c 2e 43 68 65 63 6b 20 3d 20 74  on.val.Check = t
7db0: 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65  his.form.TreeVie
7dc0: 77 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 74 68  w;..        //th
7dd0: 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73  is.form.Controls
7de0: 2e 53 65 61 72 63 68 52 65 73 75 6c 74 73 2e 43  .SearchResults.C
7df0: 6f 6c 75 6d 6e 73 2e 46 6f 75 6e 64 4c 69 6e 65  olumns.FoundLine
7e00: 2e 53 68 6f 77 48 69 65 72 61 72 63 68 79 20 3d  .ShowHierarchy =
7e10: 20 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56   this.form.TreeV
7e20: 69 65 77 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  iew;..        th
7e30: 69 73 2e 73 77 69 74 63 68 56 69 65 77 28 74 68  is.switchView(th
7e40: 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77  is.form.TreeView
7e50: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20  );..    },..    
7e60: 0d 0a 20 20 20 20 43 6d 64 42 61 72 5f 45 78 70  ..    CmdBar_Exp
7e70: 61 6e 64 41 6c 6c 20 3a 20 66 75 6e 63 74 69 6f  andAll : functio
7e80: 6e 20 28 42 75 74 74 6f 6e 29 20 7b 0d 0a 20 20  n (Button) {..  
7e90: 20 20 20 20 20 20 74 68 69 73 2e 65 78 70 61 6e        this.expan
7ea0: 64 54 72 65 65 28 66 61 6c 73 65 29 3b 0d 0a 20  dTree(false);.. 
7eb0: 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20     },..    ..   
7ec0: 20 43 6d 64 42 61 72 5f 43 6f 6c 6c 61 70 73 65   CmdBar_Collapse
7ed0: 41 6c 6c 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  All : function (
7ee0: 42 75 74 74 6f 6e 29 20 7b 0d 0a 20 20 20 20 20  Button) {..     
7ef0: 20 20 20 74 68 69 73 2e 65 78 70 61 6e 64 54 72     this.expandTr
7f00: 65 65 28 74 72 75 65 29 3b 0d 0a 20 20 20 20 7d  ee(true);..    }
7f10: 2c 0d 0a 0d 0a 20 20 20 20 53 65 74 43 6f 6e 74  ,....    SetCont
7f20: 72 6f 6c 73 56 69 73 69 62 6c 65 20 3a 20 66 75  rolsVisible : fu
7f30: 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20  nction() {..    
7f40: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61      ..        va
7f50: 72 20 63 74 72 20 3d 20 74 68 69 73 2e 66 6f 72  r ctr = this.for
7f60: 6d 2e 43 6f 6e 74 72 6f 6c 73 3b 0d 0a 20 20 20  m.Controls;..   
7f70: 20 20 20 20 20 2f 2f 63 74 72 2e 53 65 61 72 63       //ctr.Searc
7f80: 68 52 65 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73  hResults.Columns
7f90: 2e 46 6f 75 6e 64 4c 69 6e 65 2e 53 68 6f 77 48  .FoundLine.ShowH
7fa0: 69 65 72 61 72 63 68 79 20 3d 20 74 68 69 73 2e  ierarchy = this.
7fb0: 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b 20 20  form.TreeView;  
7fc0: 20 20 0d 0a 20 20 20 20 20 20 20 20 63 74 72 2e    ..        ctr.
7fd0: 43 6d 64 42 61 72 2e 42 75 74 74 6f 6e 73 2e 54  CmdBar.Buttons.T
7fe0: 72 65 65 56 69 65 77 2e 43 68 65 63 6b 20 3d 20  reeView.Check = 
7ff0: 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69  this.form.TreeVi
8000: 65 77 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ew;..        thi
8010: 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e  s.form.Controls.
8020: 53 65 61 72 63 68 52 65 73 75 6c 74 73 2e 43 6f  SearchResults.Co
8030: 6c 75 6d 6e 73 2e 4d 65 74 68 6f 64 2e 56 69 73  lumns.Method.Vis
8040: 69 62 6c 65 20 3d 20 21 74 68 69 73 2e 66 6f 72  ible = !this.for
8050: 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20 20 20  m.TreeView;..   
8060: 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43       this.form.C
8070: 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65  ontrols.SearchRe
8080: 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73 2e 45 78  sults.Columns.Ex
8090: 61 63 74 4d 61 74 63 68 2e 56 69 73 69 62 6c 65  actMatch.Visible
80a0: 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52   = this.form.IsR
80b0: 65 67 45 78 70 3b 0d 0a 0d 0a 20 20 20 20 20 20  egExp;....      
80c0: 20 20 76 61 72 20 62 75 74 74 6f 6e 73 20 3d 20    var buttons = 
80d0: 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f  this.form.Contro
80e0: 6c 73 2e 43 6d 64 42 61 72 2e 42 75 74 74 6f 6e  ls.CmdBar.Button
80f0: 73 3b 0d 0a 20 20 20 20 20 20 20 20 62 75 74 74  s;..        butt
8100: 6f 6e 73 2e 45 78 70 61 6e 64 41 6c 6c 2e 45 6e  ons.ExpandAll.En
8110: 61 62 6c 65 64 20 3d 20 74 68 69 73 2e 66 6f 72  abled = this.for
8120: 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20 20 20  m.TreeView;..   
8130: 20 20 20 20 20 62 75 74 74 6f 6e 73 2e 41 63 74       buttons.Act
8140: 69 6f 6e 73 2e 42 75 74 74 6f 6e 73 2e 45 78 70  ions.Buttons.Exp
8150: 61 6e 64 41 6c 6c 2e 45 6e 61 62 6c 65 64 20 3d  andAll.Enabled =
8160: 20 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56   this.form.TreeV
8170: 69 65 77 3b 0d 0a 20 20 20 20 20 20 20 20 62 75  iew;..        bu
8180: 74 74 6f 6e 73 2e 43 6f 6c 6c 61 70 73 65 41 6c  ttons.CollapseAl
8190: 6c 2e 45 6e 61 62 6c 65 64 20 3d 20 74 68 69 73  l.Enabled = this
81a0: 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d  .form.TreeView;.
81b0: 0a 20 20 20 20 20 20 20 20 62 75 74 74 6f 6e 73  .        buttons
81c0: 2e 41 63 74 69 6f 6e 73 2e 42 75 74 74 6f 6e 73  .Actions.Buttons
81d0: 2e 43 6f 6c 6c 61 70 73 65 41 6c 6c 2e 45 6e 61  .CollapseAll.Ena
81e0: 62 6c 65 64 20 3d 20 74 68 69 73 2e 66 6f 72 6d  bled = this.form
81f0: 2e 54 72 65 65 56 69 65 77 3b 0d 0a 0d 0a 20 20  .TreeView;....  
8200: 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e        this.form.
8210: 63 61 70 74 69 6f 6e 20 3d 20 22 d0 a0 d0 b0 d1  caption = ".....
8220: 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 bd d1 8b d0  ................
8230: b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20 d0 b2 20  . .......... .. 
8240: d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5 22 3b 0d 0a  ............";..
8250: 20 20 20 20 7d 0d 0a 20 20 0d 0a 7d 29 3b 20 2f      }..  ..}); /
8260: 2f 20 65 6e 64 20 6f 66 20 45 78 74 53 65 61 72  / end of ExtSear
8270: 63 68 20 63 6c 61 73 73 0d 0a 0d 0a 45 78 74 53  ch class....ExtS
8280: 65 61 72 63 68 47 6c 6f 62 61 6c 20 3d 20 45 78  earchGlobal = Ex
8290: 74 53 65 61 72 63 68 2e 65 78 74 65 6e 64 28 7b  tSearch.extend({
82a0: 0d 0a 0d 0a 20 20 20 20 73 65 74 74 69 6e 67 73  ....    settings
82b0: 52 6f 6f 74 50 61 74 68 20 3a 20 53 65 6c 66 53  RootPath : SelfS
82c0: 63 72 69 70 74 2e 75 6e 69 71 75 65 4e 61 6d 65  cript.uniqueName
82d0: 2b 22 47 6c 6f 62 61 6c 22 2c 20 2f 2f 20 d1 82  +"Global", // ..
82e0: d0 b5 d1 81 d1 82 2c 20 d0 bf d1 83 d1 81 d0 ba  ......, ........
82f0: d0 b0 d0 b9 20 d1 83 20 d0 bd d0 b0 d1 81 20 d0  .... .. ...... .
8300: b8 20 d0 bd d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9  . ..............
8310: d0 ba d0 b8 20 d0 b1 d1 83 d0 b4 d1 83 d1 82 20  .... .......... 
8320: d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd  ................
8330: d1 8b d0 bc d0 b8 2e 20 0d 0a 20 20 20 20 0d 0a  ....... ..    ..
8340: 20 20 20 20 73 65 74 74 69 6e 67 73 20 3a 20 7b      settings : {
8350: 0d 0a 20 20 20 20 20 20 20 20 70 66 6c 53 6e 65  ..        pflSne
8360: 67 6f 70 61 74 20 3a 20 7b 0d 0a 20 20 20 20 20  gopat : {..     
8370: 20 20 20 20 20 20 20 27 49 73 52 65 67 45 78 70         'IsRegExp
8380: 27 20 20 20 20 20 20 3a 20 66 61 6c 73 65 2c 20  '      : false, 
8390: 2f 2f 20 d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 80  // .......... ..
83a0: d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b  ................
83b0: d0 bc d0 b8 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0  .... ...........
83c0: b5 d0 bd d0 b8 d1 8f d0 bc d0 b8 2e 0d 0a 20 20  ..............  
83d0: 20 20 20 20 20 20 20 20 20 20 27 43 61 73 65 53            'CaseS
83e0: 65 6e 73 65 74 69 76 65 27 20 3a 20 66 61 6c 73  ensetive' : fals
83f0: 65 2c 20 2f 2f 20 d0 a3 d1 87 d0 b8 d1 82 d1 8b  e, // ..........
8400: d0 b2 d0 b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b3 d0  ........ .......
8410: b8 d1 81 d1 82 d1 80 20 d0 bf d1 80 d0 b8 20 d0  ....... ...... .
8420: bf d0 be d0 b8 d1 81 d0 ba d0 b5 2e 0d 0a 20 20  ..............  
8430: 20 20 20 20 20 20 20 20 20 20 27 57 68 6f 6c 65            'Whole
8440: 57 6f 72 64 73 27 20 20 20 20 3a 20 66 61 6c 73  Words'    : fals
8450: 65 2c 20 2f 2f 20 d0 9f d0 be d0 b8 d1 81 d0 ba  e, // ..........
8460: 20 d1 81 d0 bb d0 be d0 b2 d0 b0 20 d1 86 d0 b5   .......... ....
8470: d0 bb d0 b8 d0 ba d0 be d0 bc 2e 0d 0a 20 20 20  .............   
8480: 20 20 20 20 20 20 20 20 20 27 53 65 61 72 63 68           'Search
8490: 48 69 73 74 6f 72 79 27 20 3a 20 76 38 4e 65 77  History' : v8New
84a0: 28 27 56 61 6c 75 65 4c 69 73 74 27 29 2c 20 2f  ('ValueList'), /
84b0: 2f 20 d0 98 d1 81 d1 82 d0 be d1 80 d0 b8 d1 8f  / ..............
84c0: 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a   ...............
84d0: 20 20 20 20 20 20 20 20 20 20 20 20 27 48 69 73              'His
84e0: 74 6f 72 79 44 65 70 74 68 27 20 20 3a 20 31 35  toryDepth'  : 15
84f0: 2c 20 2f 2f 20 d0 9a d0 be d0 bb d0 b8 d1 87 d0  , // ...........
8500: b5 d1 81 d1 82 d0 b2 d0 be 20 d1 8d d0 bb d0 b5  ......... ......
8510: d0 bc d0 b5 d0 bd d1 82 d0 be d0 b2 20 d0 b8 d1  ............ ...
8520: 81 d1 82 d0 be d1 80 d0 b8 d0 b8 20 d0 bf d0 be  ........... ....
8530: d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20 20 20  ...........     
8540: 20 20 20 20 20 20 20 27 54 72 65 65 56 69 65 77         'TreeView
8550: 27 20 20 20 20 20 20 3a 20 66 61 6c 73 65 20 2f  '      : false /
8560: 2f 20 d0 93 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80  / ..............
8570: d0 be d0 b2 d0 b0 d1 82 d1 8c 20 d1 80 d0 b5 d0  .......... .....
8580: b7 d1 83 d0 bb d1 8c d1 82 d0 b0 d1 82 d1 8b 20  ............... 
8590: d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d0 bf d0  ............ ...
85a0: be 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 d0 bc  . ..............
85b0: 2e 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20  .            .. 
85c0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c         }..    },
85d0: 0d 0a 0d 0a 20 20 20 20 63 6f 6e 73 74 72 75 63  ....    construc
85e0: 74 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20  t : function () 
85f0: 7b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 20 20 20  {..    ..       
8600: 20 74 68 69 73 2e 5f 73 75 70 65 72 28 74 72 75   this._super(tru
8610: 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 74  e);....        t
8620: 68 69 73 2e 5f 69 6e 73 74 61 6e 63 65 20 3d 20  his._instance = 
8630: 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20  null;....       
8640: 20 74 68 69 73 2e 66 6f 72 6d 2e d0 9a d0 bb d1   this.form......
8650: 8e d1 87 d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0  ................
8660: b5 d0 bd d0 b8 d1 8f d0 9f d0 be d0 bb d0 be d0  ................
8670: b6 d0 b5 d0 bd d0 b8 d1 8f d0 9e d0 ba d0 bd d0  ................
8680: b0 20 3d 20 22 65 78 74 47 6c 6f 62 61 6c 53 65  . = "extGlobalSe
8690: 61 72 63 68 2e 6a 73 22 3b 0d 0a 0d 0a 20 20 20  arch.js";....   
86a0: 20 20 20 20 20 74 68 69 73 2e 69 73 47 6c 6f 62       this.isGlob
86b0: 61 6c 46 69 6e 64 20 3d 20 74 72 75 65 3b 0d 0a  alFind = true;..
86c0: 20 20 20 20 20 20 20 20 2f 2f 54 4f 44 4f 3a 20          //TODO: 
86d0: d0 bf d1 80 d0 b8 d0 b7 d0 bd d0 b0 d0 ba 20 d0  .............. .
86e0: b0 d0 b2 d1 82 d0 be d0 bc d1 82 d0 b8 d1 87 d0  ................
86f0: b5 d1 81 d0 ba d0 b8 20 d0 bd d0 b0 d0 b7 d0 bd  ....... ........
8700: d0 b0 d1 87 d0 b0 d0 b5 d0 bc d0 be d0 b3 d0 be  ................
8710: 20 d1 85 d0 be d1 82 d0 ba d0 b5 d0 b9 2c 20 d0   ............, .
8720: b5 d1 81 d0 bb d0 b8 20 d1 83 d0 b6 d0 b5 20 d0  ....... ...... .
8730: bd d0 b0 d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd 20  ............... 
8740: d0 bd d0 b0 20 d0 be d1 82 d0 bc d0 b5 d0 bd d1  .... ...........
8750: 83 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2c 20  . ............, 
8760: d0 b0 d0 b2 d1 82 d0 be d0 bc d0 b0 d1 82 d0 be  ................
8770: d0 bc 20 d0 bd d0 b5 20 d0 b1 d1 83 d0 b4 d0 b5  .. .... ........
8780: d1 82 20 d0 bd d0 b0 d0 b7 d0 bd d0 b0 d1 87 d0  .. .............
8790: b0 d1 82 d1 8c d1 81 d1 8f 2e 20 0d 0a 20 20 20  .......... ..   
87a0: 20 20 20 20 20 74 68 69 73 2e 64 79 6e 61 6d 69       this.dynami
87b0: 63 48 6f 74 4b 65 79 20 3d 20 74 72 75 65 3b 20  cHotKey = true; 
87c0: 0d 0a 20 20 20 20 20 20 20 20 66 6f 72 28 76 61  ..        for(va
87d0: 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 48 6f 74  r i = 0; i < Hot
87e0: 4b 65 79 73 2e 63 6f 75 6e 74 3b 20 69 2b 2b 29  Keys.count; i++)
87f0: 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20  ..        {..   
8800: 20 20 20 20 20 20 20 20 20 76 61 72 20 68 6b 20           var hk 
8810: 3d 20 48 6f 74 4b 65 79 73 2e 69 74 65 6d 28 69  = HotKeys.item(i
8820: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
8830: d0 9a d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 3d  .............. =
8840: 20 68 6b 2e 61 64 64 69 6e 20 2b 20 22 3a 3a 22   hk.addin + "::"
8850: 20 2b 20 68 6b 2e 6d 61 63 72 6f 73 0d 0a 20 20   + hk.macros..  
8860: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 d0 9a            if (..
8870: d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 2e 69 6e 64  .............ind
8880: 65 78 4f 66 28 22 45 78 74 65 6e 64 65 64 53 65  exOf("ExtendedSe
8890: 61 72 63 68 3a 3a d0 9e d1 82 d0 bc d0 b5 d0 bd  arch::..........
88a0: d0 b8 d1 82 d1 8c 20 d0 b3 d0 bb d0 be d0 b1 d0  ...... .........
88b0: b0 d0 bb d1 8c d0 bd d1 8b d0 b9 20 d0 bf d0 be  ........... ....
88c0: d0 b8 d1 81 d0 ba 22 29 21 3d 2d 31 29 7b 0d 0a  ......")!=-1){..
88d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
88e0: 74 68 69 73 2e 64 79 6e 61 6d 69 63 48 6f 74 4b  this.dynamicHotK
88f0: 65 79 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20  ey = false;..   
8900: 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65               bre
8910: 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ak;..           
8920: 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20   }..        }.. 
8930: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
8940: 20 74 68 69 73 2e 65 78 70 61 6e 64 65 74 52 6f   this.expandetRo
8950: 77 73 20 3d 20 7b 7d 3b 0d 0a 20 20 20 20 20 20  ws = {};..      
8960: 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73    ..        this
8970: 2e 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69  .SetControlsVisi
8980: 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  ble();..        
8990: 2f 2f 46 49 58 4d 45 3a 20 d0 b2 d1 8b d0 bd d0  //FIXME: .......
89a0: b5 d1 81 d1 82 d0 b8 20 d0 b2 20 d0 bd d0 b0 d1  ....... .. .....
89b0: 81 d1 82 d1 80 d0 be d0 b9 d0 ba d1 83 2e 20 0d  .............. .
89c0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 6f  .        this.co
89d0: 75 6e 74 52 6f 77 73 49 6e 49 64 6c 65 53 65 61  untRowsInIdleSea
89e0: 72 63 68 20 3d 20 32 35 3b 20 2f 2f d0 9a d0 be  rch = 25; //....
89f0: d0 bb d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be  ................
8a00: 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 be d0   ...............
8a10: b2 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d0  . ............ .
8a20: b2 20 d1 84 d0 be d0 bd d0 b5 28 d0 b4 d0 bb d1  . ........(.....
8a30: 8f 20 d1 81 d0 bb d0 b0 d0 b1 d0 b5 d0 bd d1 8c  . ..............
8a40: d0 ba d0 b8 d1 85 20 d0 bc d0 b0 d1 88 d0 b8 d0  ...... .........
8a50: bd 20 d1 81 d1 82 d0 b0 d0 b2 d0 b8 d0 bc 20 d0  . ............ .
8a60: bc d0 b5 d0 bd d1 8c d1 88 d0 b5 2c 20 d0 b4 d0  ..........., ...
8a70: bb d1 8f 20 d1 84 d0 be d1 80 d0 bc d1 83 d0 bb  ... ............
8a80: d0 b0 31 20 2d 20 d0 ba d0 b0 d0 ba 20 d1 83 d0  ..1 - ...... ...
8a90: b4 d0 be d0 b1 d0 bd d0 b5 d0 b9 29 0d 0a 20 20  ...........)..  
8aa0: 20 20 20 20 20 20 74 68 69 73 2e 72 65 20 3d 20        this.re = 
8ab0: 6e 65 77 20 52 65 67 45 78 70 28 2f 28 28 5b d0  new RegExp(/(([.
8ac0: b0 2d d1 8f 61 2d 7a 30 2d 39 5d 7b 31 2c 7d 29  .-..a-z0-9]{1,})
8ad0: 5c 73 5b d0 b0 2d d1 8f 61 2d 7a 30 2d 39 5d 7b  \s[..-..a-z0-9]{
8ae0: 31 2c 7d 29 28 5c 2e 7c 5c 3a 29 2f 69 29 3b 0d  1,})(\.|\:)/i);.
8af0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20  .            .. 
8b00: 20 20 20 20 20 20 20 74 68 69 73 2e 66 69 6c 74         this.filt
8b10: 65 72 42 79 55 55 49 44 20 3d 20 6e 75 6c 6c 3b  erByUUID = null;
8b20: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 45 78 74 53  ....        ExtS
8b30: 65 61 72 63 68 47 6c 6f 62 61 6c 2e 5f 69 6e 73  earchGlobal._ins
8b40: 74 61 6e 63 65 20 3d 20 74 68 69 73 3b 0d 0a 20  tance = this;.. 
8b50: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 73 65 61     },....    sea
8b60: 72 63 68 42 79 55 75 69 64 3a 20 66 75 6e 63 74  rchByUuid: funct
8b70: 69 6f 6e 28 72 6f 77 2c 20 73 6f 72 74 29 20 7b  ion(row, sort) {
8b80: 0d 0a 20 20 20 20 20 20 20 20 6d 64 4f 62 6a 20  ..        mdObj 
8b90: 3d 20 66 69 6e 64 4d 64 4f 62 6a 28 74 68 69 73  = findMdObj(this
8ba0: 2e 63 75 72 72 65 6e 74 4d 64 43 6f 6e 74 61 69  .currentMdContai
8bb0: 6e 65 72 2c 20 72 6f 77 2e 55 55 49 44 29 3b 0d  ner, row.UUID);.
8bc0: 0a 20 20 20 20 20 20 20 20 69 66 20 28 73 6f 72  .        if (sor
8bd0: 74 20 3d 3d 20 75 6e 64 65 66 69 6e 65 64 29 20  t == undefined) 
8be0: 73 6f 72 74 20 3d 20 39 39 39 3b 0d 0a 20 20 20  sort = 999;..   
8bf0: 20 20 20 20 20 76 61 72 20 64 6f 63 52 6f 77 20       var docRow 
8c00: 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20  = null;..       
8c10: 20 69 66 20 28 6d 64 4f 62 6a 29 7b 0d 0a 20 20   if (mdObj){..  
8c20: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 62            var ob
8c30: 6a 20 3d 20 74 68 69 73 2e 67 65 74 57 69 6e 64  j = this.getWind
8c40: 6f 77 4f 62 6a 65 63 74 28 7b 0d 0a 20 20 20 20  owObject({..    
8c50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8c60: 20 20 20 20 20 20 20 20 20 20 20 20 6d 64 4f 62              mdOb
8c70: 6a 3a 6d 64 4f 62 6a 2c 0d 0a 20 20 20 20 20 20  j:mdObj,..      
8c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8c90: 20 20 20 20 20 20 20 20 20 20 6d 64 50 72 6f 70            mdProp
8ca0: 3a 72 6f 77 2e 6d 64 50 72 6f 70 2c 0d 0a 20 20  :row.mdProp,..  
8cb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8cc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 69                ti
8cd0: 74 6c 65 3a 72 6f 77 2e 74 69 74 6c 65 7d 29 3b  tle:row.title});
8ce0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6f 62  ..            ob
8cf0: 6a 2e 73 6f 72 74 20 3d 20 73 6f 72 74 2b 31 3b  j.sort = sort+1;
8d00: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 6f  ..            do
8d10: 63 52 6f 77 20 3d 20 74 68 69 73 2e 73 65 61 72  cRow = this.sear
8d20: 63 68 28 6f 62 6a 2c 20 74 68 69 73 2e 72 65 29  ch(obj, this.re)
8d30: 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20  ;..        }..  
8d40: 20 20 20 20 20 20 72 65 74 75 72 6e 20 64 6f 63        return doc
8d50: 52 6f 77 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20  Row;..    },..  
8d60: 20 20 0d 0a 20 20 20 20 73 65 61 72 63 68 49 6e    ..    searchIn
8d70: 4d 65 74 61 64 61 74 61 20 3a 20 66 75 6e 63 74  Metadata : funct
8d80: 69 6f 6e 28 66 72 6f 6d 48 6f 74 4b 65 79 29 7b  ion(fromHotKey){
8d90: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  ....        var 
8da0: 6d 64 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20  md = null;..    
8db0: 20 20 20 20 76 61 72 20 6f 62 6a 54 69 74 6c 65      var objTitle
8dc0: 20 3d 20 22 22 3b 0d 0a 20 20 20 20 20 20 20 20   = "";..        
8dd0: 76 61 72 20 61 63 74 69 76 65 57 69 6e 64 6f 77  var activeWindow
8de0: 20 3d 20 74 68 69 73 2e 77 61 74 63 68 65 72 2e   = this.watcher.
8df0: 67 65 74 41 63 74 69 76 65 54 65 78 74 57 69 6e  getActiveTextWin
8e00: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  dow();..        
8e10: 69 66 20 28 21 61 63 74 69 76 65 57 69 6e 64 6f  if (!activeWindo
8e20: 77 29 20 7b 20 0d 0a 20 20 20 20 20 20 20 20 7d  w) { ..        }
8e30: 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20   else {..       
8e40: 20 20 20 20 20 76 61 72 20 61 63 74 69 76 65 56       var activeV
8e50: 69 65 77 20 3d 20 61 63 74 69 76 65 57 69 6e 64  iew = activeWind
8e60: 6f 77 2e 47 65 74 56 69 65 77 28 29 3b 0d 0a 20  ow.GetView();.. 
8e70: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f             var o
8e80: 62 6a 20 3d 20 74 68 69 73 2e 67 65 74 57 69 6e  bj = this.getWin
8e90: 64 6f 77 4f 62 6a 65 63 74 28 61 63 74 69 76 65  dowObject(active
8ea0: 56 69 65 77 29 3b 0d 0a 20 20 20 20 20 20 20 20  View);..        
8eb0: 20 20 20 20 69 66 20 28 6f 62 6a 21 3d 6e 75 6c      if (obj!=nul
8ec0: 6c 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  l){..           
8ed0: 20 20 20 20 20 6f 62 6a 54 69 74 6c 65 20 3d 20       objTitle = 
8ee0: 6f 62 6a 2e 67 65 74 54 69 74 6c 65 28 29 3b 0d  obj.getTitle();.
8ef0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
8f00: 20 76 61 72 20 6d 61 74 63 68 65 73 20 3d 20 74   var matches = t
8f10: 68 69 73 2e 72 65 2e 65 78 65 63 28 6f 62 6a 54  his.re.exec(objT
8f20: 69 74 6c 65 29 3b 0d 0a 20 20 20 20 20 20 20 20  itle);..        
8f30: 20 20 20 20 20 20 20 20 69 66 20 28 6d 61 74 63          if (matc
8f40: 68 65 73 21 3d 6e 75 6c 6c 29 7b 0d 0a 20 20 20  hes!=null){..   
8f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8f60: 20 6f 62 6a 54 69 74 6c 65 20 3d 20 6d 61 74 63   objTitle = matc
8f70: 68 65 73 5b 31 5d 3b 0d 0a 20 20 20 20 20 20 20  hes[1];..       
8f80: 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20           } else 
8f90: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
8fa0: 20 20 20 20 20 20 20 69 66 20 28 6f 62 6a 54 69         if (objTi
8fb0: 74 6c 65 2e 69 6e 64 65 78 4f 66 28 22 3a 22 29  tle.indexOf(":")
8fc0: 21 3d 2d 31 29 7b 0d 0a 20 20 20 20 20 20 20 20  !=-1){..        
8fd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8fe0: 6f 62 6a 54 69 74 6c 65 20 3d 20 6f 62 6a 54 69  objTitle = objTi
8ff0: 74 6c 65 2e 73 75 62 73 74 72 28 30 2c 20 6f 62  tle.substr(0, ob
9000: 6a 54 69 74 6c 65 2e 69 6e 64 65 78 4f 66 28 22  jTitle.indexOf("
9010: 3a 22 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  :"));..         
9020: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
9030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
9040: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a  .            }..
9050: 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20          }....   
9060: 20 20 20 20 20 6d 64 20 3d 20 74 68 69 73 2e 67       md = this.g
9070: 65 74 43 75 72 72 65 6e 74 4d 64 28 29 3b 0d 0a  etCurrentMd();..
9080: 20 20 20 20 20 20 20 20 69 66 20 28 21 6d 64 29          if (!md)
9090: 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20   return;....    
90a0: 20 20 20 20 74 68 69 73 2e 63 75 72 72 65 6e 74      this.current
90b0: 4d 64 43 6f 6e 74 61 69 6e 65 72 20 3d 20 6d 64  MdContainer = md
90c0: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
90d0: 63 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c  clearSearchResul
90e0: 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 74  ts();..        t
90f0: 68 69 73 2e 72 65 20 3d 20 74 68 69 73 2e 62 75  his.re = this.bu
9100: 69 6c 64 53 65 61 72 63 68 52 65 67 45 78 70 4f  ildSearchRegExpO
9110: 62 6a 65 63 74 28 29 3b 0d 0a 20 20 20 20 20 20  bject();..      
9120: 20 20 69 66 20 28 21 74 68 69 73 2e 72 65 29 20    if (!this.re) 
9130: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20  return;..       
9140: 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e   ..        this.
9150: 63 75 72 43 61 70 74 69 6f 6e 20 3d 20 77 69 6e  curCaption = win
9160: 64 6f 77 73 2e 63 61 70 74 69 6f 6e 3b 20 2f 2f  dows.caption; //
9170: d0 b0 20 d0 b2 d0 b4 d1 80 d1 83 d0 b3 2c 20 d0  .. .........., .
9180: b5 d1 89 d0 b5 20 d0 ba d1 82 d0 be 2d d1 82 d0  ..... ......-...
9190: be 20 d0 bd d0 b5 20 d0 bf d0 be d0 bb d1 8c d0  . .... .........
91a0: b7 d1 83 d0 b5 d1 82 d1 81 d1 8f 20 63 6f 6e 66  ........... conf
91b0: 69 67 43 61 70 74 69 6f 6e 2e 2e 2e 20 0d 0a 20  igCaption... .. 
91c0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
91d0: 20 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61   this.startGloba
91e0: 6c 53 65 61 72 63 68 20 3d 20 74 72 75 65 3b 0d  lSearch = true;.
91f0: 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 74 68  .        if (!th
9200: 69 73 2e 76 74 4d 44 29 7b 0d 0a 20 20 20 20 20  is.vtMD){..     
9210: 20 20 20 20 20 20 20 74 68 69 73 2e 76 74 4d 44         this.vtMD
9220: 20 3d 20 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 20   = {};..        
9230: 7d 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  }..        this.
9240: 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73  reatingMdObjects
9250: 20 3d 20 7b 22 d0 9e d0 b1 d1 89 d0 b8 d0 b9 d0   = {"...........
9260: 9c d0 be d0 b4 d1 83 d0 bb d1 8c 22 3a 32 2c 20  ...........":2, 
9270: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
9280: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9290: 20 20 22 d0 9a d0 be d0 bd d1 84 d0 b8 d0 b3 d1    ".............
92a0: 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f 22 3a 33 2c 0d  ...........":3,.
92b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
92c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
92d0: 20 22 d0 9f d0 bb d0 b0 d0 bd d0 9e d0 b1 d0 bc   "..............
92e0: d0 b5 d0 bd d0 b0 22 3a 34 2c 0d 0a 20 20 20 20  ......":4,..    
92f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9300: 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 9e d0              "...
9310: b1 d1 89 d0 b0 d1 8f d0 a4 d0 be d1 80 d0 bc d0  ................
9320: b0 22 3a 35 0d 0a 20 20 20 20 20 20 20 20 20 20  .":5..          
9330: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9340: 20 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 69 66    };..        if
9350: 20 28 6f 62 6a 54 69 74 6c 65 2e 6c 65 6e 67 74   (objTitle.lengt
9360: 68 3e 30 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  h>0){..         
9370: 20 20 20 74 68 69 73 2e 72 65 61 74 69 6e 67 4d     this.reatingM
9380: 64 4f 62 6a 65 63 74 73 5b 6f 62 6a 54 69 74 6c  dObjects[objTitl
9390: 65 5d 3d 31 3b 20 2f 2f d0 a1 d0 b0 d0 bc d1 8b  e]=1; //........
93a0: d0 b9 20 d0 b2 d1 8b d1 81 d0 be d0 ba d0 b8 d0  .. .............
93b0: b9 20 d1 80 d0 b5 d0 b9 d1 82 d0 b8 d0 bd d0 b3  . ..............
93c0: 2e 2e 2e 20 20 20 20 20 0d 0a 20 20 20 20 20 20  ...     ..      
93d0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a 0d    }..        ...
93e0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 72 65  .        this.re
93f0: 61 64 4d 64 54 6f 56 74 28 74 68 69 73 2e 63 75  adMdToVt(this.cu
9400: 72 72 65 6e 74 4d 64 43 6f 6e 74 61 69 6e 65 72  rrentMdContainer
9410: 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  );..        this
9420: 2e 65 78 70 61 6e 64 65 74 52 6f 77 73 20 3d 20  .expandetRows = 
9430: 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  {};..        thi
9440: 73 2e 63 75 72 49 64 20 3d 20 30 3b 0d 0a 20 20  s.curId = 0;..  
9450: 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 64        if (this.d
9460: 79 6e 61 6d 69 63 48 6f 74 4b 65 79 29 20 0d 0a  ynamicHotKey) ..
9470: 20 20 20 20 20 20 20 20 20 20 20 20 68 6f 74 6b              hotk
9480: 65 79 73 2e 41 64 64 48 6f 74 4b 65 79 28 22 43  eys.AddHotKey("C
9490: 74 72 6c 2b 53 68 69 66 74 2b 42 6b 53 70 61 63  trl+Shift+BkSpac
94a0: 65 22 2c 20 22 45 78 74 65 6e 64 65 64 53 65 61  e", "ExtendedSea
94b0: 72 63 68 22 2c 20 22 d0 9e d1 82 d0 bc d0 b5 d0  rch", ".........
94c0: bd d0 b8 d1 82 d1 8c 20 d0 b3 d0 bb d0 be d0 b1  ....... ........
94d0: d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b9 20 d0 bf d0  ............ ...
94e0: be d0 b8 d1 81 d0 ba 22 29 3b 0d 0a 20 20 20 20  .......");..    
94f0: 20 20 20 20 65 76 65 6e 74 73 2e 63 6f 6e 6e 65      events.conne
9500: 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e  ct(Designer, "on
9510: 49 64 6c 65 22 2c 20 74 68 69 73 29 3b 0d 0a 20  Idle", this);.. 
9520: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
9530: 2f 2f 74 68 69 73 2e 73 68 6f 77 53 65 61 72 63  //this.showSearc
9540: 68 52 65 73 75 6c 74 28 64 6f 63 52 6f 77 2c 20  hResult(docRow, 
9550: 66 72 6f 6d 48 6f 74 4b 65 79 29 3b 0d 0a 20 20  fromHotKey);..  
9560: 20 20 20 20 20 20 2f 2f 77 69 6e 64 6f 77 73 2e        //windows.
9570: 63 61 70 74 69 6f 6e 20 3d 20 63 75 72 43 61 70  caption = curCap
9580: 74 69 6f 6e 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  tion;..    },...
9590: 0a 20 20 20 20 67 65 74 43 75 72 72 65 6e 74 4d  .    getCurrentM
95a0: 64 3a 66 75 6e 63 74 69 6f 6e 28 29 7b 0d 0a 20  d:function(){.. 
95b0: 20 20 20 20 20 20 20 76 61 72 20 6d 64 20 3b 0d         var md ;.
95c0: 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69  .        if (thi
95d0: 73 2e 69 73 49 6e 43 75 72 72 65 6e 74 4d 64 43  s.isInCurrentMdC
95e0: 6f 6e 74 65 69 6e 65 72 46 69 6e 64 20 29 20 7b  onteinerFind ) {
95f0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
9600: 20 28 21 74 68 69 73 2e 61 63 74 69 76 65 56 69   (!this.activeVi
9610: 65 77 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  ew){..          
9620: 20 20 20 20 20 20 76 61 72 20 61 63 74 69 76 65        var active
9630: 57 69 6e 64 6f 77 20 3d 20 74 68 69 73 2e 77 61  Window = this.wa
9640: 74 63 68 65 72 2e 67 65 74 41 63 74 69 76 65 54  tcher.getActiveT
9650: 65 78 74 57 69 6e 64 6f 77 28 29 3b 20 20 20 20  extWindow();    
9660: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
9670: 20 20 69 66 20 28 21 61 63 74 69 76 65 57 69 6e    if (!activeWin
9680: 64 6f 77 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  dow){..         
9690: 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d         } else {.
96a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
96b0: 20 20 20 20 20 76 61 72 20 61 63 74 69 76 65 56       var activeV
96c0: 69 65 77 20 3d 20 61 63 74 69 76 65 57 69 6e 64  iew = activeWind
96d0: 6f 77 2e 47 65 74 56 69 65 77 28 29 3b 20 20 20  ow.GetView();   
96e0: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
96f0: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20     }..          
9700: 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 0d 0a 20 20    } else {....  
9710: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
9720: 72 20 61 63 74 69 76 65 56 69 65 77 20 3d 20 74  r activeView = t
9730: 68 69 73 2e 61 63 74 69 76 65 56 69 65 77 3b 20  his.activeView; 
9740: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
9750: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
9760: 2f 2f d0 9e d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb  //..............
9770: d0 b8 d0 bc 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1  .... ...........
9780: 82 20 d0 ba d0 be d0 bd d1 84 d0 b8 d0 b3 d1 83  . ..............
9790: d1 80 d0 b0 d1 86 d0 b8 d0 b8 20 d0 bf d0 be 20  .......... .... 
97a0: d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b5 d0 bc d1 83  ................
97b0: 20 d0 be d0 ba d0 bd d1 83 2e 20 0d 0a 20 20 20   ......... ..   
97c0: 20 20 20 20 20 20 20 20 20 69 66 20 28 21 61 63           if (!ac
97d0: 74 69 76 65 56 69 65 77 29 20 7b 0d 0a 20 20 20  tiveView) {..   
97e0: 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20           } else 
97f0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
9800: 20 20 20 69 66 20 28 61 63 74 69 76 65 56 69 65     if (activeVie
9810: 77 2e 6d 64 4f 62 6a 20 26 26 20 61 63 74 69 76  w.mdObj && activ
9820: 65 56 69 65 77 2e 6d 64 50 72 6f 70 29 20 7b 0d  eView.mdProp) {.
9830: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
9840: 20 20 20 20 20 6d 64 20 3d 20 61 63 74 69 76 65       md = active
9850: 56 69 65 77 2e 6d 64 4f 62 6a 2e 63 6f 6e 74 61  View.mdObj.conta
9860: 69 6e 65 72 3b 0d 0a 20 20 20 20 20 20 20 20 20  iner;..         
9870: 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 66         } else if
9880: 20 28 61 63 74 69 76 65 56 69 65 77 2e 6d 64 4f   (activeView.mdO
9890: 62 6a 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  bj) {..         
98a0: 20 20 20 20 20 20 20 20 20 20 20 6d 64 20 3d 20             md = 
98b0: 61 63 74 69 76 65 56 69 65 77 2e 6d 64 4f 62 6a  activeView.mdObj
98c0: 2e 63 6f 6e 74 61 69 6e 65 72 3b 0d 0a 20 20 20  .container;..   
98d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
98e0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 0d 0a              } ..
98f0: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
9900: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
9910: 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21   ..        if (!
9920: 6d 64 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  md) {..         
9930: 20 20 20 6d 64 20 3d 20 6d 65 74 61 64 61 74 61     md = metadata
9940: 2e 63 75 72 72 65 6e 74 3b 20 20 20 0d 0a 20 20  .current;   ..  
9950: 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20        }....     
9960: 20 20 20 72 65 74 75 72 6e 20 6d 64 3b 0d 0a 20     return md;.. 
9970: 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20     },..    ..   
9980: 20 6f 6e 49 64 6c 65 3a 66 75 6e 63 74 69 6f 6e   onIdle:function
9990: 28 29 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  (){..        if 
99a0: 28 21 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62  (!this.startGlob
99b0: 61 6c 53 65 61 72 63 68 29 20 7b 0d 0a 20 20 20  alSearch) {..   
99c0: 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 73           windows
99d0: 2e 63 61 70 74 69 6f 6e 20 3d 20 74 68 69 73 2e  .caption = this.
99e0: 63 75 72 43 61 70 74 69 6f 6e 3b 0d 0a 20 20 20  curCaption;..   
99f0: 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 73 2e           events.
9a00: 64 69 73 63 6f 6e 6e 65 63 74 28 44 65 73 69 67  disconnect(Desig
9a10: 6e 65 72 2c 20 22 6f 6e 49 64 6c 65 22 2c 20 74  ner, "onIdle", t
9a20: 68 69 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  his);..         
9a30: 20 20 20 74 68 69 73 2e 73 68 6f 77 53 65 61 72     this.showSear
9a40: 63 68 52 65 73 75 6c 74 28 64 6f 63 52 6f 77 2c  chResult(docRow,
9a50: 20 66 61 6c 73 65 29 3b 0d 0a 20 20 20 20 20 20   false);..      
9a60: 20 20 20 20 20 20 74 68 69 73 2e 65 78 70 61 6e        this.expan
9a70: 64 65 74 52 6f 77 73 20 3d 20 7b 7d 3b 0d 0a 20  detRows = {};.. 
9a80: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
9a90: 20 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69           if (thi
9aa0: 73 2e 64 79 6e 61 6d 69 63 48 6f 74 4b 65 79 29  s.dynamicHotKey)
9ab0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
9ac0: 20 20 20 20 66 6f 72 28 76 61 72 20 69 20 3d 20      for(var i = 
9ad0: 30 3b 20 69 20 3c 20 48 6f 74 4b 65 79 73 2e 63  0; i < HotKeys.c
9ae0: 6f 75 6e 74 3b 20 69 2b 2b 29 0d 0a 20 20 20 20  ount; i++)..    
9af0: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
9b00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9b10: 20 20 20 76 61 72 20 68 6b 20 3d 20 48 6f 74 4b     var hk = HotK
9b20: 65 79 73 2e 69 74 65 6d 28 69 29 3b 0d 0a 20 20  eys.item(i);..  
9b30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9b40: 20 20 d0 9a d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0    ..............
9b50: 20 3d 20 68 6b 2e 61 64 64 69 6e 20 2b 20 22 3a   = hk.addin + ":
9b60: 3a 22 20 2b 20 68 6b 2e 6d 61 63 72 6f 73 0d 0a  :" + hk.macros..
9b70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9b80: 20 20 20 20 69 66 20 28 d0 9a d0 be d0 bc d0 b0      if (........
9b90: d0 bd d0 b4 d0 b0 2e 69 6e 64 65 78 4f 66 28 22  .......indexOf("
9ba0: 45 78 74 65 6e 64 65 64 53 65 61 72 63 68 3a 3a  ExtendedSearch::
9bb0: d0 9e d1 82 d0 bc d0 b5 d0 bd d0 b8 d1 82 d1 8c  ................
9bc0: 20 d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0   ...............
9bd0: bd d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
9be0: 22 29 21 3d 2d 31 29 7b 0d 0a 20 20 20 20 20 20  ")!=-1){..      
9bf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9c00: 20 20 74 72 79 20 7b 0d 0a 20 20 20 20 20 20 20    try {..       
9c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9c20: 20 20 20 20 20 48 6f 74 4b 65 79 73 2e 72 65 6d       HotKeys.rem
9c30: 6f 76 65 28 69 29 3b 0d 0a 20 20 20 20 20 20 20  ove(i);..       
9c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9c50: 20 7d 20 63 61 74 63 68 20 28 65 29 20 7b 7d 0d   } catch (e) {}.
9c60: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
9c70: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
9c80: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
9c90: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
9ca0: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20        return;.. 
9cb0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
9cc0: 20 20 76 61 72 20 63 75 72 72 65 6e 74 49 64 20    var currentId 
9cd0: 3d 20 74 68 69 73 2e 63 75 72 72 65 6e 74 4d 64  = this.currentMd
9ce0: 43 6f 6e 74 61 69 6e 65 72 2e 72 6f 6f 74 4f 62  Container.rootOb
9cf0: 6a 65 63 74 2e 69 64 3b 0d 0a 20 20 20 20 20 20  ject.id;..      
9d00: 20 20 69 66 20 28 74 68 69 73 2e 76 74 4d 44 5b    if (this.vtMD[
9d10: 63 75 72 72 65 6e 74 49 64 5d 2e 43 6f 75 6e 74  currentId].Count
9d20: 28 29 3c 31 29 20 7b 0d 0a 20 20 20 20 20 20 20  ()<1) {..       
9d30: 20 20 20 20 20 74 68 69 73 2e 73 74 61 72 74 47       this.startG
9d40: 6c 6f 62 61 6c 53 65 61 72 63 68 20 3d 20 66 61  lobalSearch = fa
9d50: 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  lse;..          
9d60: 20 20 65 76 65 6e 74 73 2e 64 69 73 63 6f 6e 6e    events.disconn
9d70: 65 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22 6f  ect(Designer, "o
9d80: 6e 49 64 6c 65 22 2c 20 74 68 69 73 29 3b 0d 0a  nIdle", this);..
9d90: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
9da0: 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  rn;..        }..
9db0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
9dc0: 20 20 76 61 72 20 63 6f 75 6e 74 20 3d 20 30 3b    var count = 0;
9dd0: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 64 6f  ..        var do
9de0: 63 52 6f 77 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20  cRow = null;..  
9df0: 20 20 20 20 20 20 77 68 69 6c 65 20 28 63 6f 75        while (cou
9e00: 6e 74 20 3c 20 74 68 69 73 2e 63 6f 75 6e 74 52  nt < this.countR
9e10: 6f 77 73 49 6e 49 64 6c 65 53 65 61 72 63 68 29  owsInIdleSearch)
9e20: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69  {..            i
9e30: 66 20 28 74 68 69 73 2e 63 75 72 49 64 3c 74 68  f (this.curId<th
9e40: 69 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49  is.vtMD[currentI
9e50: 64 5d 2e 43 6f 75 6e 74 28 29 29 7b 0d 0a 20 20  d].Count()){..  
9e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f                //
9e70: 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 73 65  docRow = this.se
9e80: 61 72 63 68 42 79 55 75 69 64 28 74 68 69 73 2e  archByUuid(this.
9e90: 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 5b  vtMD[currentId][
9ea0: 74 68 69 73 2e 63 75 72 49 64 5d 29 3b 0d 0a 20  this.curId]);.. 
9eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
9ec0: 61 72 20 63 75 72 72 52 6f 77 20 3d 20 74 68 69  ar currRow = thi
9ed0: 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64  s.vtMD[currentId
9ee0: 5d 2e 47 65 74 28 74 68 69 73 2e 63 75 72 49 64  ].Get(this.curId
9ef0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
9f00: 20 20 20 20 64 6f 63 52 6f 77 20 3d 20 74 68 69      docRow = thi
9f10: 73 2e 73 65 61 72 63 68 42 79 55 75 69 64 28 63  s.searchByUuid(c
9f20: 75 72 72 52 6f 77 2c 20 74 68 69 73 2e 63 75 72  urrRow, this.cur
9f30: 49 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  Id);..          
9f40: 20 20 20 20 20 20 77 69 6e 64 6f 77 73 2e 63 61        windows.ca
9f50: 70 74 69 6f 6e 20 3d 20 63 75 72 72 52 6f 77 2e  ption = currRow.
9f60: 6d 64 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20  mdName;..       
9f70: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20       } else {.. 
9f80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74                 t
9f90: 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53  his.startGlobalS
9fa0: 65 61 72 63 68 20 3d 20 66 61 6c 73 65 3b 0d 0a  earch = false;..
9fb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9fc0: 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20  break;..        
9fd0: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
9fe0: 20 20 20 74 68 69 73 2e 63 75 72 49 64 20 2b 2b     this.curId ++
9ff0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63  ;..            c
a000: 6f 75 6e 74 2b 2b 3b 0d 0a 20 20 20 20 20 20 20  ount++;..       
a010: 20 7d 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   }..        this
a020: 2e 73 68 6f 77 53 65 61 72 63 68 52 65 73 75 6c  .showSearchResul
a030: 74 28 6e 75 6c 6c 2c 20 66 61 6c 73 65 29 3b 0d  t(null, false);.
a040: 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 7d  .        ..    }
a050: 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 65 61  ,..    ..    rea
a060: 64 4d 64 54 6f 56 74 3a 66 75 6e 63 74 69 6f 6e  dMdToVt:function
a070: 28 4d 64 43 6f 6e 74 61 69 6e 65 72 29 7b 0d 0a  (MdContainer){..
a080: 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72          var curr
a090: 65 6e 74 49 64 20 3d 20 4d 64 43 6f 6e 74 61 69  entId = MdContai
a0a0: 6e 65 72 2e 72 6f 6f 74 4f 62 6a 65 63 74 2e 69  ner.rootObject.i
a0b0: 64 3b 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20  d; ..        if 
a0c0: 28 21 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72  (!this.vtMD[curr
a0d0: 65 6e 74 49 64 5d 29 7b 0d 0a 20 20 20 20 20 20  entId]){..      
a0e0: 20 20 20 20 20 20 76 61 72 20 64 6f 63 52 6f 77        var docRow
a0f0: 20 3d 20 6e 75 6c 6c 3b 20 0d 0a 20 20 20 20 20   = null; ..     
a100: 20 20 20 20 20 20 20 2f 2f 74 68 69 73 2e 76 74         //this.vt
a110: 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 20 3d 20  MD[currentId] = 
a120: 5b 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  [];..           
a130: 20 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72 65   this.vtMD[curre
a140: 6e 74 49 64 5d 3d 76 38 4e 65 77 28 22 56 61 6c  ntId]=v8New("Val
a150: 75 65 54 61 62 6c 65 22 29 3b 0d 0a 20 20 20 20  ueTable");..    
a160: 20 20 20 20 20 20 20 20 74 68 69 73 2e 76 74 4d          this.vtM
a170: 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 43 6f 6c  D[currentId].Col
a180: 75 6d 6e 73 2e 41 64 64 28 22 55 55 49 44 22 29  umns.Add("UUID")
a190: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74  ;..            t
a1a0: 68 69 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74  his.vtMD[current
a1b0: 49 64 5d 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28  Id].Columns.Add(
a1c0: 22 6d 64 50 72 6f 70 22 29 3b 0d 0a 20 20 20 20  "mdProp");..    
a1d0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 76 74 4d          this.vtM
a1e0: 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 43 6f 6c  D[currentId].Col
a1f0: 75 6d 6e 73 2e 41 64 64 28 22 6d 64 4e 61 6d 65  umns.Add("mdName
a200: 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ");..           
a210: 20 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72 65   this.vtMD[curre
a220: 6e 74 49 64 5d 2e 43 6f 6c 75 6d 6e 73 2e 41 64  ntId].Columns.Ad
a230: 64 28 22 74 69 74 6c 65 22 29 3b 0d 0a 20 20 20  d("title");..   
a240: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 76 74           this.vt
a250: 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 43 6f  MD[currentId].Co
a260: 6c 75 6d 6e 73 2e 41 64 64 28 22 73 6f 72 74 54  lumns.Add("sortT
a270: 69 74 6c 65 22 29 3b 0d 0a 20 20 20 20 20 20 20  itle");..       
a280: 20 20 20 20 20 74 68 69 73 2e 76 74 4d 44 5b 63       this.vtMD[c
a290: 75 72 72 65 6e 74 49 64 5d 2e 43 6f 6c 75 6d 6e  urrentId].Column
a2a0: 73 2e 41 64 64 28 22 73 6f 72 74 22 29 3b 0d 0a  s.Add("sort");..
a2b0: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
a2c0: 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d  .vtMD[currentId]
a2d0: 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 22 4c 69  .Columns.Add("Li
a2e0: 6e 65 4e 75 6d 62 65 72 22 29 3b 0d 0a 0d 0a 20  neNumber");.... 
a2f0: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65             var e
a300: 73 20 3d 20 74 68 69 73 3b 0d 0a 20 20 20 20 20  s = this;..     
a310: 20 20 20 20 20 20 20 2f 2f d0 a0 d0 b5 d0 ba d0         //.......
a320: b2 d0 b8 d0 b7 d0 b8 d1 82 d1 8b 20 d0 bf d1 80  ........... ....
a330: d0 be d0 bf d1 83 d1 81 d1 82 d0 b8 d0 bc 0d 0a  ................
a340: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
a350: 69 67 6e 6f 72 65 64 4d 64 43 6c 61 73 73 20 3d  ignoredMdClass =
a360: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
a370: 20 20 20 20 22 d0 a0 d0 b5 d0 ba d0 b2 d0 b8 d0      "...........
a380: b7 d0 b8 d1 82 d1 8b 22 3a 22 22 2c 0d 0a 20 20  .......":"",..  
a390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 d0                ".
a3a0: 9c d0 b0 d0 ba d0 b5 d1 82 d1 8b 22 20 3a 20 22  ..........." : "
a3b0: 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20  " ,..           
a3c0: 20 20 20 20 20 22 d0 9e d0 b1 d1 89 d0 b8 d0 b5       "..........
a3d0: d0 9a d0 b0 d1 80 d1 82 d0 b8 d0 bd d0 ba d0 b8  ................
a3e0: 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20  " : "" ,..      
a3f0: 20 20 20 20 20 20 20 20 20 20 22 d0 ad d0 bb d0            ".....
a400: b5 d0 bc d0 b5 d0 bd d1 82 d1 8b 20 d1 81 d1 82  ........... ....
a410: d0 b8 d0 bb d1 8f 22 20 3a 20 22 22 20 2c 0d 0a  ......" : "" ,..
a420: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a430: 22 d0 9f d0 be d0 b4 d1 81 d0 b8 d1 81 d1 82 d0  "...............
a440: b5 d0 bc d1 8b 22 20 3a 20 22 22 20 2c 0d 0a 20  ....." : "" ,.. 
a450: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22                 "
a460: d0 af d0 b7 d1 8b d0 ba d0 b8 22 20 3a 20 22 22  .........." : ""
a470: 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   ,..            
a480: 20 20 20 20 22 d0 a1 d1 82 d0 b8 d0 bb d0 b8 22      ".........."
a490: 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20   : "" ,..       
a4a0: 20 20 20 20 20 20 20 20 20 22 d0 98 d0 bd d1 82           "......
a4b0: d0 b5 d1 80 d1 84 d0 b5 d0 b9 d1 81 d1 8b 22 20  .............." 
a4c0: 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20  : "" ,..        
a4d0: 20 20 20 20 20 20 20 20 22 d0 9f d0 b0 d1 80 d0          ".......
a4e0: b0 d0 bc d0 b5 d1 82 d1 80 d1 8b d0 a1 d0 b5 d0  ................
a4f0: b0 d0 bd d1 81 d0 b0 22 20 3a 20 22 22 20 2c 0d  ......." : "" ,.
a500: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
a510: 20 22 d0 a0 d0 be d0 bb d0 b8 22 20 3a 20 22 22   "........" : ""
a520: 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   ,..            
a530: 20 20 20 20 22 d0 9e d0 b1 d1 89 d0 b8 d0 b5 d0      "...........
a540: 9c d0 b0 d0 ba d0 b5 d1 82 d1 8b 22 20 3a 20 22  ..........." : "
a550: 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20  " ,..           
a560: 20 20 20 20 20 22 d0 9a d1 80 d0 b8 d1 82 d0 b5       "..........
a570: d1 80 d0 b8 d0 b8 d0 9e d1 82 d0 b1 d0 be d1 80  ................
a580: d0 b0 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20  .." : "" ,..    
a590: 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 9e d0              "...
a5a0: b1 d1 89 d0 b8 d0 b5 d0 a0 d0 b5 d0 ba d0 b2 d0  ................
a5b0: b8 d0 b7 d0 b8 d1 82 d1 8b 22 20 3a 20 22 22 20  ........." : "" 
a5c0: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ,..             
a5d0: 20 20 20 22 d0 a2 d0 b0 d0 b1 d0 bb d0 b8 d1 87     "............
a5e0: d0 bd d1 8b d0 b5 d0 a7 d0 b0 d1 81 d1 82 d0 b8  ................
a5f0: 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20  " : "" ,..      
a600: 20 20 20 20 20 20 20 20 20 20 22 d0 9f d0 b0 d1            ".....
a610: 80 d0 b0 d0 bc d0 b5 d1 82 d1 80 d1 8b 22 20 3a  ............." :
a620: 20 22 22 20 0d 0a 20 20 20 20 20 20 20 20 20 20   "" ..          
a630: 20 20 20 20 20 20 7d 3b 0d 0a 20 20 20 20 20 20        };..      
a640: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
a650: 20 20 20 20 20 20 20 20 76 61 72 20 4c 69 6e 65          var Line
a660: 4e 75 6d 62 65 72 20 3d 20 30 3b 20 2f 2f d0 94  Number = 0; //..
a670: d0 bb d1 8f 20 d1 81 d0 be d1 80 d1 82 d0 b8 d1  .... ...........
a680: 80 d0 be d0 b2 d0 ba d0 b8 20 d0 bc d0 be d0 b4  ......... ......
a690: d1 83 d0 bb d0 b5 d0 b9 20 d1 84 d1 83 d0 bd d0  ........ .......
a6a0: ba d1 86 d0 b8 d0 b9 20 d0 bf d0 be 20 d0 bf d0  ....... .... ...
a6b0: be d1 80 d1 8f d0 b4 d0 ba d1 83 20 d0 be d0 b1  ........... ....
a6c0: d1 85 d0 be d0 b4 d0 b0 2c 20 d0 b0 20 d0 bd d0  ........, .. ...
a6d0: b5 20 d0 bf d0 be 20 d0 b0 d0 bb d1 84 d0 b0 d0  . .... .........
a6e0: b2 d0 b8 d1 82 d1 83 2e 0d 0a 20 20 20 20 20 20  ..........      
a6f0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
a700: 20 20 20 20 28 66 75 6e 63 74 69 6f 6e 20 28 6d      (function (m
a710: 64 4f 62 6a 29 7b 0d 0a 20 20 20 20 20 20 20 20  dObj){..        
a720: 20 20 20 20 20 20 20 20 69 66 20 28 21 65 73 2e          if (!es.
a730: 73 74 61 72 74 47 6c 6f 62 61 6c 53 65 61 72 63  startGlobalSearc
a740: 68 29 20 7b 72 65 74 75 72 6e 7d 20 0d 0a 20 20  h) {return} ..  
a750: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
a760: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a770: 76 61 72 20 6d 64 63 20 3d 20 6d 64 4f 62 6a 2e  var mdc = mdObj.
a780: 6d 64 63 6c 61 73 73 3b 0d 0a 20 20 20 20 20 20  mdclass;..      
a790: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
a7a0: 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e          function
a7b0: 20 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a   getMdName(mdObj
a7c0: 29 20 7b 20 20 20 20 20 20 20 20 20 20 20 20 20  ) {             
a7d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a7e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
a7f0: 20 20 20 20 20 20 69 66 20 28 6d 64 4f 62 6a 2e        if (mdObj.
a800: 70 61 72 65 6e 74 20 26 26 20 6d 64 4f 62 6a 2e  parent && mdObj.
a810: 70 61 72 65 6e 74 2e 6d 64 43 6c 61 73 73 2e 6e  parent.mdClass.n
a820: 61 6d 65 28 31 29 20 21 3d 20 27 d0 9a d0 be d0  ame(1) != '.....
a830: bd d1 84 d0 b8 d0 b3 d1 83 d1 80 d0 b0 d1 86 d0  ................
a840: b8 d1 8f 27 29 0d 0a 20 20 20 20 20 20 20 20 20  ...')..         
a850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72                 r
a860: 65 74 75 72 6e 20 67 65 74 4d 64 4e 61 6d 65 28  eturn getMdName(
a870: 6d 64 4f 62 6a 2e 70 61 72 65 6e 74 29 20 2b 20  mdObj.parent) + 
a880: 27 2e 27 20 2b 20 6d 64 4f 62 6a 2e 6d 64 43 6c  '.' + mdObj.mdCl
a890: 61 73 73 2e 6e 61 6d 65 28 31 29 20 2b 20 27 20  ass.name(1) + ' 
a8a0: 27 20 2b 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d  ' + mdObj.name;.
a8b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
a8c0: 20 20 20 20 20 76 61 72 20 63 6e 61 6d 65 20 3d       var cname =
a8d0: 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73 73 2e 6e   mdObj.mdClass.n
a8e0: 61 6d 65 28 31 29 3b 0d 0a 20 20 20 20 20 20 20  ame(1);..       
a8f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74               ret
a900: 75 72 6e 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e  urn  (cname ? cn
a910: 61 6d 65 20 2b 20 27 20 27 20 3a 20 27 27 29 20  ame + ' ' : '') 
a920: 2b 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20  + mdObj.name;.. 
a930: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
a940: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
a950: 20 20 76 61 72 20 6d 64 4e 61 6d 65 20 3d 20 67    var mdName = g
a960: 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29 0d  etMdName(mdObj).
a970: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
a980: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
a990: 20 20 20 66 6f 72 28 76 61 72 20 69 20 3d 20 30     for(var i = 0
a9a0: 2c 20 63 20 3d 20 6d 64 63 2e 70 72 6f 70 65 72  , c = mdc.proper
a9b0: 74 69 65 73 43 6f 75 6e 74 3b 20 69 20 3c 20 63  tiesCount; i < c
a9c0: 3b 20 69 2b 2b 29 7b 0d 0a 20 20 20 20 20 20 20  ; i++){..       
a9d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
a9e0: 20 6d 64 50 72 6f 70 20 3d 20 6d 64 63 2e 70 72   mdProp = mdc.pr
a9f0: 6f 70 65 72 74 79 41 74 28 69 29 3b 0d 0a 20 20  opertyAt(i);..  
aa00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
aa10: 20 20 76 61 72 20 6d 64 50 72 6f 70 4e 61 6d 65    var mdPropName
aa20: 20 3d 20 6d 64 63 2e 70 72 6f 70 65 72 74 79 41   = mdc.propertyA
aa30: 74 28 69 29 2e 6e 61 6d 65 28 31 29 3b 0d 0a 0d  t(i).name(1);...
aa40: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
aa50: 20 20 20 20 20 69 66 20 28 6d 64 4f 62 6a 2e 69       if (mdObj.i
aa60: 73 50 72 6f 70 4d 6f 64 75 6c 65 28 6d 64 50 72  sPropModule(mdPr
aa70: 6f 70 2e 69 64 29 29 7b 0d 0a 20 20 20 20 20 20  op.id)){..      
aa80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
aa90: 20 20 2f 2f 76 61 72 20 72 6f 77 20 3d 20 7b 55    //var row = {U
aaa0: 55 49 44 20 3a 20 6d 64 4f 62 6a 2e 69 64 7d 0d  UID : mdObj.id}.
aab0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
aac0: 20 20 20 20 20 20 20 20 20 76 61 72 20 72 6f 77           var row
aad0: 20 3d 20 65 73 2e 76 74 4d 44 5b 63 75 72 72 65   = es.vtMD[curre
aae0: 6e 74 49 64 5d 2e 41 64 64 28 29 3b 0d 0a 20 20  ntId].Add();..  
aaf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ab00: 20 20 20 20 20 20 72 6f 77 2e 55 55 49 44 20 3d        row.UUID =
ab10: 20 6d 64 4f 62 6a 2e 69 64 3b 0d 0a 20 20 20 20   mdObj.id;..    
ab20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ab30: 20 20 20 20 72 6f 77 2e 6d 64 50 72 6f 70 20 3d      row.mdProp =
ab40: 20 6d 64 50 72 6f 70 3b 0d 0a 20 20 20 20 20 20   mdProp;..      
ab50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ab60: 20 20 72 6f 77 2e 6d 64 4e 61 6d 65 20 3d 20 6d    row.mdName = m
ab70: 64 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20  dName;..        
ab80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ab90: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
aba0: 20 20 20 20 20 20 20 20 20 20 4c 69 6e 65 4e 75            LineNu
abb0: 6d 62 65 72 2b 2b 3b 0d 0a 20 20 20 20 20 20 20  mber++;..       
abc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
abd0: 20 76 61 72 20 74 69 74 6c 65 20 3d 20 6d 64 4e   var title = mdN
abe0: 61 6d 65 20 2b 20 27 3a 20 27 20 2b 20 6d 64 50  ame + ': ' + mdP
abf0: 72 6f 70 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20  ropName;..      
ac00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ac10: 20 20 72 6f 77 2e 74 69 74 6c 65 20 3d 20 74 69    row.title = ti
ac20: 74 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20  tle;....        
ac30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ac40: 72 6f 77 2e 73 6f 72 74 20 3d 20 39 3b 0d 0a 20  row.sort = 9;.. 
ac50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ac60: 20 20 20 20 20 20 20 72 6f 77 2e 4c 69 6e 65 4e         row.LineN
ac70: 75 6d 62 65 72 20 3d 20 4c 69 6e 65 4e 75 6d 62  umber = LineNumb
ac80: 65 72 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  er;..           
ac90: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
aca0: 20 6d 61 74 63 68 65 73 3b 0d 0a 0d 0a 20 20 20   matches;....   
acb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
acc0: 20 20 20 20 20 76 61 72 20 72 65 20 3d 20 6e 65       var re = ne
acd0: 77 20 52 65 67 45 78 70 28 2f 28 28 5b d0 b0 2d  w RegExp(/(([..-
ace0: d1 8f 61 2d 7a 30 2d 39 5d 7b 31 2c 7d 29 5c 73  ..a-z0-9]{1,})\s
acf0: 5b d0 b0 2d d1 8f 61 2d 7a 30 2d 39 5d 7b 31 2c  [..-..a-z0-9]{1,
ad00: 7d 29 28 5c 2e 7c 3a 29 2f 69 29 3b 0d 0a 20 20  })(\.|:)/i);..  
ad10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ad20: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
ad30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ad40: 6d 61 74 63 68 65 73 20 3d 20 72 65 2e 65 78 65  matches = re.exe
ad50: 63 28 6d 64 4e 61 6d 65 29 3b 0d 0a 20 20 20 20  c(mdName);..    
ad60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ad70: 20 20 20 20 69 66 20 28 6d 61 74 63 68 65 73 21      if (matches!
ad80: 3d 6e 75 6c 6c 29 7b 0d 0a 20 20 20 20 20 20 20  =null){..       
ad90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ada0: 20 20 20 20 20 72 6f 77 2e 73 6f 72 74 54 69 74       row.sortTit
adb0: 6c 65 20 3d 20 6d 61 74 63 68 65 73 5b 31 5d 3b  le = matches[1];
adc0: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
add0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ade0: 69 66 20 28 21 65 73 2e 72 65 61 74 69 6e 67 4d  if (!es.reatingM
adf0: 64 4f 62 6a 65 63 74 73 5b 6d 61 74 63 68 65 73  dObjects[matches
ae00: 5b 31 5d 5d 29 7b 0d 0a 20 20 20 20 20 20 20 20  [1]]){..        
ae10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ae20: 20 20 20 20 20 20 20 20 69 66 20 28 21 65 73 2e          if (!es.
ae30: 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73  reatingMdObjects
ae40: 5b 6d 61 74 63 68 65 73 5b 32 5d 5d 29 20 7b 0d  [matches[2]]) {.
ae50: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
ae60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ae70: 20 20 20 20 20 72 6f 77 2e 73 6f 72 74 20 3d 20       row.sort = 
ae80: 39 3b 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20  9; ..           
ae90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
aea0: 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20      } else {..  
aeb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
aec0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
aed0: 20 20 72 6f 77 2e 73 6f 72 74 20 3d 20 65 73 2e    row.sort = es.
aee0: 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73  reatingMdObjects
aef0: 5b 6d 61 74 63 68 65 73 5b 32 5d 5d 3b 0d 0a 20  [matches[2]];.. 
af00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
af10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
af20: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
af30: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65               } e
af40: 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  lse {..         
af50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
af60: 20 20 20 20 20 20 20 72 6f 77 2e 73 6f 72 74 20         row.sort 
af70: 3d 20 65 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62  = es.reatingMdOb
af80: 6a 65 63 74 73 5b 6d 61 74 63 68 65 73 5b 31 5d  jects[matches[1]
af90: 5d 3b 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20  ];   ..         
afa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
afb0: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20     }..          
afc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
afd0: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
afe0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
aff0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
b000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20                } 
b010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b020: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
b030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b040: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
b050: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
b060: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
b070: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
b080: d0 9f d0 b5 d1 80 d0 b5 d0 b1 d0 b8 d1 80 d0 b0  ................
b090: d0 b5 d0 bc 20 d0 ba d0 bb d0 b0 d1 81 d1 81 d1  .... ...........
b0a0: 8b 20 d0 bf d0 be d1 82 d0 be d0 bc d0 ba d0 be  . ..............
b0b0: d0 b2 20 28 d0 bd d0 b0 d0 bf d1 80 d0 b8 d0 bc  .. (............
b0c0: d0 b5 d1 80 20 d1 83 20 d0 94 d0 be d0 ba d1 83  .... .. ........
b0d0: d0 bc d0 b5 d0 bd d1 82 d0 b0 20 d1 8d d1 82 d0  .......... .....
b0e0: be 20 d0 a0 d0 b5 d0 ba d0 b2 d0 b8 d0 b7 d0 b8  . ..............
b0f0: d1 82 d1 8b 2c 20 d0 a2 d0 b0 d0 b1 d0 bb d0 b8  ...., ..........
b100: d1 87 d0 bd d1 8b d0 b5 d0 a7 d0 b0 d1 81 d1 82  ................
b110: d0 b8 2c 20 d0 a4 d0 be d1 80 d0 bc d1 8b 29 0d  .., ..........).
b120: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b130: 20 66 6f 72 28 76 61 72 20 69 20 3d 20 30 3b 20   for(var i = 0; 
b140: 69 20 3c 20 6d 64 63 2e 63 68 69 6c 64 73 43 6c  i < mdc.childsCl
b150: 61 73 73 65 73 43 6f 75 6e 74 3b 20 69 2b 2b 29  assesCount; i++)
b160: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
b170: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
b180: 20 20 20 20 20 20 20 20 20 76 61 72 20 63 68 69           var chi
b190: 6c 64 4d 64 43 6c 61 73 73 20 3d 20 6d 64 63 2e  ldMdClass = mdc.
b1a0: 63 68 69 6c 64 43 6c 61 73 73 41 74 28 69 29 0d  childClassAt(i).
b1b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b1c0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
b1d0: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21             if (!
b1e0: 28 69 67 6e 6f 72 65 64 4d 64 43 6c 61 73 73 5b  (ignoredMdClass[
b1f0: 63 68 69 6c 64 4d 64 43 6c 61 73 73 2e 6e 61 6d  childMdClass.nam
b200: 65 28 31 2c 20 74 72 75 65 29 5d 3d 3d 75 6e 64  e(1, true)]==und
b210: 65 66 69 6e 65 64 29 29 7b 0d 0a 20 20 20 20 20  efined)){..     
b220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b230: 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20     continue;..  
b240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b250: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
b260: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
b270: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f                 /
b280: 2f 20 d0 94 d0 bb d1 8f 20 d0 be d1 81 d1 82 d0  / ...... .......
b290: b0 d0 bb d1 8c d0 bd d0 be d0 b3 d0 be 20 d0 bf  ............. ..
b2a0: d0 b5 d1 80 d0 b5 d0 b1 d0 b5 d1 80 d0 b5 d0 bc  ................
b2b0: 20 d0 bf d0 be d1 82 d0 be d0 bc d0 ba d0 be d0   ...............
b2c0: b2 20 d1 8d d1 82 d0 be d0 b3 d0 be 20 d0 ba d0  . .......... ...
b2d0: bb d0 b0 d1 81 d1 81 d0 b0 2e 0d 0a 20 20 20 20  ............    
b2e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b2f0: 66 6f 72 28 76 61 72 20 63 68 6c 64 69 64 78 20  for(var chldidx 
b300: 3d 20 30 2c 20 63 20 3d 20 6d 64 4f 62 6a 2e 63  = 0, c = mdObj.c
b310: 68 69 6c 64 4f 62 6a 65 63 74 73 43 6f 75 6e 74  hildObjectsCount
b320: 28 69 29 3b 20 63 68 6c 64 69 64 78 20 3c 20 63  (i); chldidx < c
b330: 3b 20 63 68 6c 64 69 64 78 2b 2b 29 7b 0d 0a 20  ; chldidx++){.. 
b340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b350: 20 20 20 20 20 20 20 76 61 72 20 63 68 69 6c 64         var child
b360: 4f 62 6a 65 63 74 20 3d 20 6d 64 4f 62 6a 2e 63  Object = mdObj.c
b370: 68 69 6c 64 4f 62 6a 65 63 74 28 69 2c 20 63 68  hildObject(i, ch
b380: 6c 64 69 64 78 29 3b 0d 0a 20 20 20 20 20 20 20  ldidx);..       
b390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b3a0: 20 61 72 67 75 6d 65 6e 74 73 2e 63 61 6c 6c 65   arguments.calle
b3b0: 65 28 63 68 69 6c 64 4f 62 6a 65 63 74 29 3b 0d  e(childObject);.
b3c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b3d0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
b3e0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
b3f0: 20 20 20 20 20 20 20 20 20 20 20 7d 29 28 4d 64             })(Md
b400: 43 6f 6e 74 61 69 6e 65 72 2e 72 6f 6f 74 4f 62  Container.rootOb
b410: 6a 65 63 74 29 0d 0a 20 20 20 20 20 20 20 20 20  ject)..         
b420: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 20 65     ..        } e
b430: 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 20  lse {..         
b440: 20 20 20 66 6f 72 20 28 76 61 72 20 6b 65 79 20     for (var key 
b450: 69 6e 20 74 68 69 73 2e 72 65 61 74 69 6e 67 4d  in this.reatingM
b460: 64 4f 62 6a 65 63 74 73 29 7b 0d 0a 20 20 20 20  dObjects){..    
b470: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28              if (
b480: 74 68 69 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62  this.reatingMdOb
b490: 6a 65 63 74 73 5b 6b 65 79 5d 3c 32 29 20 7b 0d  jects[key]<2) {.
b4a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b4b0: 20 20 20 20 20 76 61 72 20 66 69 6c 74 65 72 20       var filter 
b4c0: 3d 20 76 38 4e 65 77 28 22 53 74 72 75 63 74 75  = v8New("Structu
b4d0: 72 65 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  re");..         
b4e0: 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 74 65             filte
b4f0: 72 2e 49 6e 73 65 72 74 28 22 73 6f 72 74 22 2c  r.Insert("sort",
b500: 20 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20   1);..          
b510: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
b520: 20 20 20 20 20 20 20 20 76 61 72 20 66 69 6e 64          var find
b530: 52 6f 77 73 20 3d 20 74 68 69 73 2e 76 74 4d 44  Rows = this.vtMD
b540: 5b 63 75 72 72 65 6e 74 49 64 5d 2e 46 69 6e 64  [currentId].Find
b550: 52 6f 77 73 28 66 69 6c 74 65 72 29 3b 0d 0a 20  Rows(filter);.. 
b560: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b570: 20 20 20 69 66 20 28 66 69 6e 64 52 6f 77 73 2e     if (findRows.
b580: 43 6f 75 6e 74 28 29 3e 30 29 7b 0d 0a 20 20 20  Count()>0){..   
b590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b5a0: 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 3d       for (var i=
b5b0: 30 3b 20 69 3c 66 69 6e 64 52 6f 77 73 2e 43 6f  0; i<findRows.Co
b5c0: 75 6e 74 28 29 3b 20 69 2b 2b 29 7b 0d 0a 20 20  unt(); i++){..  
b5d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b5e0: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75            var cu
b5f0: 72 72 52 6f 77 20 3d 20 66 69 6e 64 52 6f 77 73  rrRow = findRows
b600: 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20 20 20 20  .Get(i);..      
b610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b620: 20 20 20 20 20 20 69 66 20 28 63 75 72 72 52 6f        if (currRo
b630: 77 2e 73 6f 72 74 54 69 74 6c 65 20 21 3d 20 6b  w.sortTitle != k
b640: 65 79 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  ey){..          
b650: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b660: 20 20 20 20 20 20 63 75 72 72 52 6f 77 2e 73 6f        currRow.so
b670: 72 74 20 3d 20 39 3b 0d 0a 20 20 20 20 20 20 20  rt = 9;..       
b680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b690: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
b6a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b6b0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
b6c0: 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20         }....    
b6d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b6e0: 76 61 72 20 66 69 6c 74 65 72 20 3d 20 76 38 4e  var filter = v8N
b6f0: 65 77 28 22 53 74 72 75 63 74 75 72 65 22 29 3b  ew("Structure");
b700: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
b710: 20 20 20 20 20 20 66 69 6c 74 65 72 2e 49 6e 73        filter.Ins
b720: 65 72 74 28 22 73 6f 72 74 54 69 74 6c 65 22 2c  ert("sortTitle",
b730: 20 6b 65 79 29 3b 0d 0a 20 20 20 20 20 20 20 20   key);..        
b740: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
b750: 66 69 6e 64 52 6f 77 73 20 3d 20 74 68 69 73 2e  findRows = this.
b760: 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e  vtMD[currentId].
b770: 46 69 6e 64 52 6f 77 73 28 66 69 6c 74 65 72 29  FindRows(filter)
b780: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
b790: 20 20 20 20 20 20 20 69 66 20 28 66 69 6e 64 52         if (findR
b7a0: 6f 77 73 2e 43 6f 75 6e 74 28 29 3e 30 29 7b 0d  ows.Count()>0){.
b7b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b7c0: 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61           for (va
b7d0: 72 20 69 3d 30 3b 20 69 3c 66 69 6e 64 52 6f 77  r i=0; i<findRow
b7e0: 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b 2b 29 7b  s.Count(); i++){
b7f0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
b800: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
b810: 72 20 63 75 72 72 52 6f 77 20 3d 20 66 69 6e 64  r currRow = find
b820: 52 6f 77 73 2e 47 65 74 28 69 29 3b 0d 0a 20 20  Rows.Get(i);..  
b830: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b840: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 75            if (cu
b850: 72 72 52 6f 77 2e 73 6f 72 74 54 69 74 6c 65 20  rrRow.sortTitle 
b860: 21 3d 20 6b 65 79 29 7b 0d 0a 20 20 20 20 20 20  != key){..      
b870: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b880: 20 20 20 20 20 20 20 20 20 20 63 75 72 72 52 6f            currRo
b890: 77 2e 73 6f 72 74 20 3d 20 28 21 74 68 69 73 2e  w.sort = (!this.
b8a0: 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73  reatingMdObjects
b8b0: 5b 6b 65 79 5d 29 20 3f 20 39 3a 20 74 68 69 73  [key]) ? 9: this
b8c0: 2e 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63 74  .reatingMdObject
b8d0: 73 5b 6b 65 79 5d 3b 0d 0a 20 20 20 20 20 20 20  s[key];..       
b8e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b8f0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
b900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b910: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
b920: 20 20 20 20 20 20 20 7d 20 20 20 20 20 20 20 20         }        
b930: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
b940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
b950: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b960: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
b970: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
b980: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
b990: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20  ..        }.... 
b9a0: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
b9b0: 66 69 6c 74 65 72 42 79 55 55 49 44 29 7b 0d 0a  filterByUUID){..
b9c0: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
b9d0: 61 72 72 61 79 54 6f 46 69 6c 74 65 72 20 3d 20  arrayToFilter = 
b9e0: 76 38 4e 65 77 28 27 41 72 72 61 79 27 29 3b 0d  v8New('Array');.
b9f0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72  .            var
ba00: 20 66 69 72 73 74 45 6c 65 6d 65 6e 74 20 3d 20   firstElement = 
ba10: 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20  false;..        
ba20: 20 20 20 20 66 6f 72 20 28 76 61 72 20 6b 20 69      for (var k i
ba30: 6e 20 74 68 69 73 2e 66 69 6c 74 65 72 42 79 55  n this.filterByU
ba40: 55 49 44 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  UID){..         
ba50: 20 20 20 20 20 20 20 66 69 72 73 74 45 6c 65 6d         firstElem
ba60: 65 6e 74 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20  ent = true;..   
ba70: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
ba80: 20 66 69 6c 74 65 72 20 3d 20 76 38 4e 65 77 28   filter = v8New(
ba90: 22 53 74 72 75 63 74 75 72 65 22 29 3b 0d 0a 20  "Structure");.. 
baa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66                 f
bab0: 69 6c 74 65 72 2e 49 6e 73 65 72 74 28 22 55 55  ilter.Insert("UU
bac0: 49 44 22 2c 20 6b 29 3b 0d 0a 20 20 20 20 20 20  ID", k);..      
bad0: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69            var fi
bae0: 6e 64 52 6f 77 73 20 3d 20 74 68 69 73 2e 76 74  ndRows = this.vt
baf0: 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 46 69  MD[currentId].Fi
bb00: 6e 64 52 6f 77 73 28 66 69 6c 74 65 72 29 3b 0d  ndRows(filter);.
bb10: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
bb20: 20 69 66 20 28 66 69 6e 64 52 6f 77 73 2e 43 6f   if (findRows.Co
bb30: 75 6e 74 28 29 3e 30 29 7b 0d 0a 20 20 20 20 20  unt()>0){..     
bb40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66                 f
bb50: 6f 72 20 28 76 61 72 20 69 3d 30 3b 20 69 3c 66  or (var i=0; i<f
bb60: 69 6e 64 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b  indRows.Count();
bb70: 20 69 2b 2b 29 7b 0d 0a 20 20 20 20 20 20 20 20   i++){..        
bb80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
bb90: 61 72 72 61 79 54 6f 46 69 6c 74 65 72 2e 41 64  arrayToFilter.Ad
bba0: 64 28 66 69 6e 64 52 6f 77 73 2e 47 65 74 28 69  d(findRows.Get(i
bbb0: 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ));..           
bbc0: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
bbd0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
bbe0: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
bbf0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69            if (fi
bc00: 72 73 74 45 6c 65 6d 65 6e 74 29 0d 0a 20 20 20  rstElement)..   
bc10: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69               thi
bc20: 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64  s.vtMD[currentId
bc30: 5d 20 3d 20 74 68 69 73 2e 76 74 4d 44 5b 63 75  ] = this.vtMD[cu
bc40: 72 72 65 6e 74 49 64 5d 2e 43 6f 70 79 28 61 72  rrentId].Copy(ar
bc50: 72 61 79 54 6f 46 69 6c 74 65 72 29 3b 0d 0a 0d  rayToFilter);...
bc60: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
bc70: 20 20 20 20 74 68 69 73 2e 76 74 4d 44 5b 63 75      this.vtMD[cu
bc80: 72 72 65 6e 74 49 64 5d 2e 53 6f 72 74 28 22 73  rrentId].Sort("s
bc90: 6f 72 74 2c 20 4c 69 6e 65 4e 75 6d 62 65 72 2c  ort, LineNumber,
bca0: 20 74 69 74 6c 65 22 29 3b 0d 0a 0d 0a 20 20 20   title");....   
bcb0: 20 7d 2c 0d 0a 20 20 20 20 0d 0a 0d 0a 20 20 20   },..    ....   
bcc0: 20 51 75 65 72 79 5f 4f 6e 43 68 61 6e 67 65 20   Query_OnChange 
bcd0: 3a 20 66 75 6e 63 74 69 6f 6e 28 43 6f 6e 74 72  : function(Contr
bce0: 6f 6c 29 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20  ol){....        
bcf0: 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 7d  return;....    }
bd00: 2c 0d 0a 0d 0a 20 20 20 20 42 74 53 65 61 72 63  ,....    BtSearc
bd10: 68 5f 43 6c 69 63 6b 20 3a 20 66 75 6e 63 74 69  h_Click : functi
bd20: 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a  on (control) {..
bd30: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68  ..        if (th
bd40: 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79 20 3d 3d  is.form.Query ==
bd50: 20 27 27 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d   '')..        {.
bd60: 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 6f 4d  .            DoM
bd70: 65 73 73 61 67 65 42 6f 78 28 27 d0 9d d0 b5 20  essageBox('.... 
bd80: d0 b7 d0 b0 d0 b4 d0 b0 d0 bd d0 b0 20 d1 81 d1  ............ ...
bd90: 82 d1 80 d0 be d0 ba d0 b0 20 d0 bf d0 be d0 b8  ......... ......
bda0: d1 81 d0 ba d0 b0 27 29 3b 0d 0a 20 20 20 20 20  ......');..     
bdb0: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a         return;..
bdc0: 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20          }....   
bdd0: 20 20 20 20 20 74 68 69 73 2e 73 65 61 72 63 68       this.search
bde0: 49 6e 4d 65 74 61 64 61 74 61 28 74 72 75 65 29  InMetadata(true)
bdf0: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 0d 0a 20  ;..    },...... 
be00: 20 20 20 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69     SetControlsVi
be10: 73 69 62 6c 65 20 3a 20 66 75 6e 63 74 69 6f 6e  sible : function
be20: 28 29 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  (){..        thi
be30: 73 2e 5f 73 75 70 65 72 28 29 3b 0d 0a 20 20 20  s._super();..   
be40: 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 69 73       if (this.is
be50: 47 6c 6f 62 61 6c 46 69 6e 64 29 7b 0d 0a 20 20  GlobalFind){..  
be60: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 66            this.f
be70: 6f 72 6d 2e 63 61 70 74 69 6f 6e 20 3d 20 22 d0  orm.caption = ".
be80: a0 d0 b0 d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0  ................
be90: bd d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
bea0: 20 d0 b2 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5   .. ............
beb0: 20 28 d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c   (..............
bec0: d0 bd d1 8b d0 b9 29 22 3b 0d 0a 20 20 20 20 20  ......)";..     
bed0: 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 20 0d 0a 0d     }..    }, ...
bee0: 0a 20 20 20 20 73 68 6f 77 53 65 61 72 63 68 52  .    showSearchR
bef0: 65 73 75 6c 74 3a 20 66 75 6e 63 74 69 6f 6e 20  esult: function 
bf00: 28 64 6f 63 52 6f 77 2c 20 66 72 6f 6d 48 6f 74  (docRow, fromHot
bf10: 4b 65 79 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  Key) {..        
bf20: 74 68 69 73 2e 73 68 6f 77 52 65 73 75 6c 74 28  this.showResult(
bf30: 64 6f 63 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b  docRow, fromHotK
bf40: 65 79 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  ey);..        th
bf50: 69 73 2e 65 78 70 61 6e 64 54 72 65 65 28 29 3b  is.expandTree();
bf60: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a  ..    },..    ..
bf70: 20 20 20 20 65 78 70 61 6e 64 54 72 65 65 20 3a      expandTree :
bf80: 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6c 6c 61   function (colla
bf90: 70 73 65 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  pse) {..        
bfa0: 76 61 72 20 74 72 65 65 20 3d 20 74 68 69 73 2e  var tree = this.
bfb0: 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65  form.Controls.Se
bfc0: 61 72 63 68 52 65 73 75 6c 74 73 3b 0d 0a 20 20  archResults;..  
bfd0: 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69        for (var i
bfe0: 3d 30 3b 20 69 20 3c 20 74 68 69 73 2e 72 65 73  =0; i < this.res
bff0: 75 6c 74 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28  ults.Rows.Count(
c000: 29 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20  ); i++)..       
c010: 20 7b 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20   {        ..    
c020: 20 20 20 20 20 20 20 20 76 61 72 20 64 6f 63 52          var docR
c030: 6f 77 20 3d 20 74 68 69 73 2e 72 65 73 75 6c 74  ow = this.result
c040: 73 2e 52 6f 77 73 2e 47 65 74 28 69 29 3b 0d 0a  s.Rows.Get(i);..
c050: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28              if (
c060: 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69  this.form.TreeVi
c070: 65 77 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ew)..           
c080: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
c090: 20 20 20 20 66 6f 72 20 28 76 61 72 20 6a 3d 30      for (var j=0
c0a0: 3b 20 6a 20 3c 20 64 6f 63 52 6f 77 2e 52 6f 77  ; j < docRow.Row
c0b0: 73 2e 43 6f 75 6e 74 28 29 3b 20 6a 2b 2b 29 0d  s.Count(); j++).
c0c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
c0d0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
c0e0: 20 20 20 20 20 20 20 20 76 61 72 20 72 6f 77 20          var row 
c0f0: 3d 20 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 47 65  = docRow.Rows.Ge
c100: 74 28 6a 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  t(j);..         
c110: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74             if (t
c120: 68 69 73 2e 65 78 70 61 6e 64 65 74 52 6f 77 73  his.expandetRows
c130: 5b 22 22 2b 72 6f 77 2e 4c 69 6e 65 4e 6f 2b 72  [""+row.LineNo+r
c140: 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 5d 29 7b 0d  ow.FoundLine]){.
c150: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
c160: 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75           continu
c170: 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e;..            
c180: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
c190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63                 c
c1a0: 6f 6c 6c 61 70 73 65 20 3f 20 74 72 65 65 2e 43  ollapse ? tree.C
c1b0: 6f 6c 6c 61 70 73 65 28 72 6f 77 29 20 3a 20 74  ollapse(row) : t
c1c0: 72 65 65 2e 45 78 70 61 6e 64 28 72 6f 77 2c 20  ree.Expand(row, 
c1d0: 74 72 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20  true);..        
c1e0: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28              if (
c1f0: 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c  this.startGlobal
c200: 53 65 61 72 63 68 29 7b 0d 0a 20 20 20 20 20 20  Search){..      
c210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c220: 20 20 74 68 69 73 2e 65 78 70 61 6e 64 65 74 52    this.expandetR
c230: 6f 77 73 5b 22 22 2b 72 6f 77 2e 4c 69 6e 65 4e  ows[""+row.LineN
c240: 6f 2b 72 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 5d  o+row.FoundLine]
c250: 20 3d 20 22 31 22 3b 0d 0a 20 20 20 20 20 20 20   = "1";..       
c260: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
c270: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c280: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d  }..            }
c290: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c  ..            el
c2a0: 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  se..            
c2b0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
c2c0: 20 20 20 69 66 20 28 74 68 69 73 2e 65 78 70 61     if (this.expa
c2d0: 6e 64 65 74 52 6f 77 73 5b 22 22 2b 64 6f 63 52  ndetRows[""+docR
c2e0: 6f 77 2e 4c 69 6e 65 4e 6f 2b 64 6f 63 52 6f 77  ow.LineNo+docRow
c2f0: 2e 46 6f 75 6e 64 4c 69 6e 65 5d 29 7b 0d 0a 20  .FoundLine]){.. 
c300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c310: 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20     continue;..  
c320: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
c330: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
c340: 20 63 6f 6c 6c 61 70 73 65 20 3f 20 74 72 65 65   collapse ? tree
c350: 2e 43 6f 6c 6c 61 70 73 65 28 64 6f 63 52 6f 77  .Collapse(docRow
c360: 29 20 3a 20 74 72 65 65 2e 45 78 70 61 6e 64 28  ) : tree.Expand(
c370: 64 6f 63 52 6f 77 2c 20 74 72 75 65 29 3b 20 20  docRow, true);  
c380: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
c390: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
c3a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66                if
c3b0: 20 28 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62   (this.startGlob
c3c0: 61 6c 53 65 61 72 63 68 29 7b 0d 0a 20 20 20 20  alSearch){..    
c3d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c3e0: 74 68 69 73 2e 65 78 70 61 6e 64 65 74 52 6f 77  this.expandetRow
c3f0: 73 5b 22 22 2b 64 6f 63 52 6f 77 2e 4c 69 6e 65  s[""+docRow.Line
c400: 4e 6f 2b 64 6f 63 52 6f 77 2e 46 6f 75 6e 64 4c  No+docRow.FoundL
c410: 69 6e 65 5d 20 3d 20 22 31 22 3b 0d 0a 20 20 20  ine] = "1";..   
c420: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
c430: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
c440: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d         }..    }.
c450: 0a 20 20 20 20 20 0d 0a 0d 0a 0d 0a 7d 29 0d 0a  .     ......})..
c460: 0d 0a 2f 2f 2f 2f 7d 20 45 78 74 53 65 61 72 63  ..////} ExtSearc
c470: 68 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  h....///////////
c480: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
c490: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
c4a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
c4b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
c4c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f  /////////////../
c4d0: 2f 2f 2f 7b 20 d0 92 d1 81 d0 bf d0 be d0 bc d0  ///{ ...........
c4e0: be d0 b3 d0 b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1  ................
c4f0: 8b d0 b5 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82  ... ............
c500: d1 8b 2e 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a 4d 64 4f  .....////....MdO
c510: 62 6a 65 63 74 20 3d 20 73 74 64 6c 69 62 2e 43  bject = stdlib.C
c520: 6c 61 73 73 2e 65 78 74 65 6e 64 28 7b 20 20 20  lass.extend({   
c530: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 63 6f          ..    co
c540: 6e 73 74 72 75 63 74 3a 20 66 75 6e 63 74 69 6f  nstruct: functio
c550: 6e 20 28 6f 62 6a 2c 20 70 72 6f 70 2c 20 74 69  n (obj, prop, ti
c560: 74 6c 65 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  tle) {..        
c570: 74 68 69 73 2e 6f 62 6a 20 3d 20 6f 62 6a 3b 0d  this.obj = obj;.
c580: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 70 72  .        this.pr
c590: 6f 70 20 3d 20 70 72 6f 70 3b 0d 0a 20 20 20 20  op = prop;..    
c5a0: 20 20 20 20 74 68 69 73 2e 74 69 74 6c 65 20 3d      this.title =
c5b0: 20 74 69 74 6c 65 3b 0d 0a 20 20 20 20 7d 2c 0d   title;..    },.
c5c0: 0a 20 20 20 20 67 65 74 54 65 78 74 3a 20 66 75  .    getText: fu
c5d0: 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20  nction() {..    
c5e0: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e      return this.
c5f0: 6f 62 6a 2e 67 65 74 4d 6f 64 75 6c 65 54 65 78  obj.getModuleTex
c600: 74 28 74 68 69 73 2e 70 72 6f 70 2e 69 64 29 3b  t(this.prop.id);
c610: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 61 63  ..    },..    ac
c620: 74 69 76 61 74 65 3a 20 66 75 6e 63 74 69 6f 6e  tivate: function
c630: 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68  () {..        th
c640: 69 73 2e 6f 62 6a 2e 6f 70 65 6e 4d 6f 64 75 6c  is.obj.openModul
c650: 65 28 74 68 69 73 2e 70 72 6f 70 2e 69 64 29 3b  e(this.prop.id);
c660: 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e  ..        return
c670: 20 47 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29   GetTextWindow()
c680: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 67  ;..    },..    g
c690: 65 74 54 69 74 6c 65 3a 20 66 75 6e 63 74 69 6f  etTitle: functio
c6a0: 6e 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69  n() {..        i
c6b0: 66 20 28 21 74 68 69 73 2e 74 69 74 6c 65 29 0d  f (!this.title).
c6c0: 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20  .        {..    
c6d0: 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e          function
c6e0: 20 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a   getMdName(mdObj
c6f0: 29 20 7b 20 20 20 20 20 20 20 20 20 20 20 20 20  ) {             
c700: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c710: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
c720: 20 20 69 66 20 28 6d 64 4f 62 6a 2e 70 61 72 65    if (mdObj.pare
c730: 6e 74 20 26 26 20 6d 64 4f 62 6a 2e 70 61 72 65  nt && mdObj.pare
c740: 6e 74 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28  nt.mdClass.name(
c750: 31 29 20 21 3d 20 27 d0 9a d0 be d0 bd d1 84 d0  1) != '.........
c760: b8 d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f 27  ...............'
c770: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
c780: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 67 65         return ge
c790: 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 2e 70 61  tMdName(mdObj.pa
c7a0: 72 65 6e 74 29 20 2b 20 27 2e 27 20 2b 20 6d 64  rent) + '.' + md
c7b0: 4f 62 6a 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65  Obj.mdClass.name
c7c0: 28 31 29 20 2b 20 27 20 27 20 2b 20 6d 64 4f 62  (1) + ' ' + mdOb
c7d0: 6a 2e 6e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20  j.name;..       
c7e0: 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6e 61           var cna
c7f0: 6d 65 20 3d 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61  me = mdObj.mdCla
c800: 73 73 2e 6e 61 6d 65 28 31 29 3b 0d 0a 20 20 20  ss.name(1);..   
c810: 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74               ret
c820: 75 72 6e 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e  urn  (cname ? cn
c830: 61 6d 65 20 2b 20 27 20 27 20 3a 20 27 27 29 20  ame + ' ' : '') 
c840: 2b 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20  + mdObj.name;.. 
c850: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
c860: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 74            this.t
c870: 69 74 6c 65 20 3d 20 67 65 74 4d 64 4e 61 6d 65  itle = getMdName
c880: 28 74 68 69 73 2e 6f 62 6a 29 20 2b 20 27 3a 20  (this.obj) + ': 
c890: 27 20 2b 20 74 68 69 73 2e 70 72 6f 70 2e 6e 61  ' + this.prop.na
c8a0: 6d 65 28 31 29 3b 0d 0a 20 20 20 20 20 20 20 20  me(1);..        
c8b0: 7d 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72  }..        retur
c8c0: 6e 20 74 68 69 73 2e 74 69 74 6c 65 3b 0d 0a 20  n this.title;.. 
c8d0: 20 20 20 7d 0d 0a 7d 29 3b 0d 0a 0d 0a 54 65 78     }..});....Tex
c8e0: 74 44 6f 63 4f 62 6a 65 63 74 20 3d 20 73 74 64  tDocObject = std
c8f0: 6c 69 62 2e 43 6c 61 73 73 2e 65 78 74 65 6e 64  lib.Class.extend
c900: 28 7b 0d 0a 20 20 20 20 63 6f 6e 73 74 72 75 63  ({..    construc
c910: 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 74 78 74  t: function (txt
c920: 44 6f 63 2c 20 74 69 74 6c 65 29 20 7b 0d 0a 20  Doc, title) {.. 
c930: 20 20 20 20 20 20 20 74 68 69 73 2e 6f 62 6a 20         this.obj 
c940: 3d 20 74 78 74 44 6f 63 3b 0d 0a 20 20 20 20 20  = txtDoc;..     
c950: 20 20 20 74 68 69 73 2e 74 69 74 6c 65 20 3d 20     this.title = 
c960: 74 69 74 6c 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  title;..    },..
c970: 20 20 20 20 67 65 74 54 65 78 74 3a 20 66 75 6e      getText: fun
c980: 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20  ction() {..     
c990: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 6f     return this.o
c9a0: 62 6a 2e 47 65 74 54 65 78 74 28 29 3b 0d 0a 20  bj.GetText();.. 
c9b0: 20 20 20 7d 2c 0d 0a 20 20 20 20 61 63 74 69 76     },..    activ
c9c0: 61 74 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20  ate: function() 
c9d0: 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  {..        this.
c9e0: 6f 62 6a 2e 53 68 6f 77 28 29 3b 0d 0a 20 20 20  obj.Show();..   
c9f0: 20 20 20 20 20 72 65 74 75 72 6e 20 47 65 74 54       return GetT
ca00: 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20  extWindow();..  
ca10: 20 20 7d 2c 0d 0a 20 20 20 20 67 65 74 54 69 74    },..    getTit
ca20: 6c 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b  le: function() {
ca30: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 74  ..        if (!t
ca40: 68 69 73 2e 74 69 74 6c 65 29 0d 0a 20 20 20 20  his.title)..    
ca50: 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69 74          this.tit
ca60: 6c 65 20 3d 20 74 68 69 73 2e 6f 62 6a 2e 55 73  le = this.obj.Us
ca70: 65 64 46 69 6c 65 4e 61 6d 65 3b 0d 0a 20 20 20  edFileName;..   
ca80: 20 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73       return this
ca90: 2e 74 69 74 6c 65 3b 0d 0a 20 20 20 20 7d 0d 0a  .title;..    }..
caa0: 7d 29 3b 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20  });....function 
cab0: 66 69 6e 64 4d 64 4f 62 6a 28 63 75 72 72 65 6e  findMdObj(curren
cac0: 74 6d 64 2c 20 75 75 69 64 29 0d 0a 7b 0d 0a 20  tmd, uuid)..{.. 
cad0: 20 20 20 69 66 28 75 75 69 64 20 3d 3d 20 63 75     if(uuid == cu
cae0: 72 72 65 6e 74 6d 64 2e 72 6f 6f 74 4f 62 6a 65  rrentmd.rootObje
caf0: 63 74 2e 69 64 29 0d 0a 20 20 20 20 20 20 20 20  ct.id)..        
cb00: 72 65 74 75 72 6e 20 63 75 72 72 65 6e 74 6d 64  return currentmd
cb10: 2e 72 6f 6f 74 4f 62 6a 65 63 74 0d 0a 20 20 20  .rootObject..   
cb20: 20 72 65 74 75 72 6e 20 63 75 72 72 65 6e 74 6d   return currentm
cb30: 64 2e 66 69 6e 64 42 79 55 55 49 44 28 75 75 69  d.findByUUID(uui
cb40: 64 29 3b 0d 0a 7d 0d 0a 2f 2f 2f 2f 0d 0a 2f 2f  d);..}..////..//
cb50: 2f 2f 7d 20 d0 92 d1 81 d0 bf d0 be d0 bc d0 be  //} ............
cb60: d0 b3 d0 b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b  ................
cb70: d0 b5 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d1  .. .............
cb80: 8b 2e 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ....////////////
cb90: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cba0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cbb0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cbc0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cbd0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 0d 0a  ////////////....
cbe0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cbf0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cc00: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cc10: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cc20: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
cc30: 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20  ////////..////{ 
cc40: 54 65 78 74 57 69 6e 64 6f 77 73 57 61 74 63 68  TextWindowsWatch
cc50: 65 72 20 2d 20 d0 be d1 82 d1 81 d0 bb d0 b5 d0  er - ...........
cc60: b6 d0 b8 d0 b2 d0 b0 d0 b5 d1 82 20 d0 b0 d0 ba  ........... ....
cc70: d1 82 d0 b8 d0 b2 d0 b8 d0 b7 d0 b0 d1 86 d0 b8  ................
cc80: d1 8e 20 d1 82 d0 b5 d0 ba d1 81 d1 82 d0 be d0  .. .............
cc90: b2 d1 8b d1 85 20 d0 be d0 ba d0 be d0 bd 20 d0  ..... ........ .
cca0: b8 20 d0 b7 d0 b0 d0 bf d0 be d0 bc d0 b8 d0 bd  . ..............
ccb0: d0 b0 d0 b5 d1 82 20 d0 bf d0 be d1 81 d0 bb d0  ...... .........
ccc0: b5 d0 b4 d0 bd d0 b5 d0 b5 2e 0d 0a 2f 2f 2f 2f  ............////
ccd0: 0d 0a 0d 0a 54 65 78 74 57 69 6e 64 6f 77 73 57  ....TextWindowsW
cce0: 61 74 63 68 65 72 20 3d 20 73 74 64 6c 69 62 2e  atcher = stdlib.
ccf0: 43 6c 61 73 73 2e 65 78 74 65 6e 64 28 7b 0d 0a  Class.extend({..
cd00: 0d 0a 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20  ..    construct 
cd10: 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a  : function() {..
cd20: 20 20 20 20 20 20 20 20 74 68 69 73 2e 74 69 6d          this.tim
cd30: 65 72 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20  erId = 0;..     
cd40: 20 20 20 74 68 69 73 2e 6c 61 73 74 41 63 74 69     this.lastActi
cd50: 76 65 54 65 78 74 57 69 6e 64 6f 77 20 3d 20 6e  veTextWindow = n
cd60: 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  ull;..        th
cd70: 69 73 2e 73 74 61 72 74 57 61 74 63 68 28 29 3b  is.startWatch();
cd80: 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20  ..    },....    
cd90: 67 65 74 41 63 74 69 76 65 54 65 78 74 57 69 6e  getActiveTextWin
cda0: 64 6f 77 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  dow : function (
cdb0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  ) {..        if 
cdc0: 28 74 68 69 73 2e 6c 61 73 74 41 63 74 69 76 65  (this.lastActive
cdd0: 54 65 78 74 57 69 6e 64 6f 77 20 26 26 20 74 68  TextWindow && th
cde0: 69 73 2e 6c 61 73 74 41 63 74 69 76 65 54 65 78  is.lastActiveTex
cdf0: 74 57 69 6e 64 6f 77 2e 49 73 41 63 74 69 76 65  tWindow.IsActive
ce00: 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ())..           
ce10: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 6c 61 73   return this.las
ce20: 74 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f  tActiveTextWindo
ce30: 77 3b 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75  w;..        retu
ce40: 72 6e 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 7d 2c  rn null;..    },
ce50: 0d 0a 0d 0a 20 20 20 20 73 74 61 72 74 57 61 74  ....    startWat
ce60: 63 68 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29  ch : function ()
ce70: 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28   {..        if (
ce80: 74 68 69 73 2e 74 69 6d 65 72 49 64 29 0d 0a 20  this.timerId).. 
ce90: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
cea0: 73 74 6f 70 57 61 74 63 68 28 29 3b 0d 0a 20 20  stopWatch();..  
ceb0: 20 20 20 20 20 20 74 68 69 73 2e 74 69 6d 65 72        this.timer
cec0: 49 64 20 3d 20 63 72 65 61 74 65 54 69 6d 65 72  Id = createTimer
ced0: 28 35 30 30 2c 20 74 68 69 73 2c 20 27 6f 6e 54  (500, this, 'onT
cee0: 69 6d 65 72 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d  imer');..    },.
cef0: 0a 0d 0a 20 20 20 20 73 74 6f 70 57 61 74 63 68  ...    stopWatch
cf00: 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b   : function () {
cf10: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 74  ..        if (!t
cf20: 68 69 73 2e 74 69 6d 65 72 49 64 29 0d 0a 20 20  his.timerId)..  
cf30: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e            return
cf40: 3b 0d 0a 20 20 20 20 20 20 20 20 6b 69 6c 6c 54  ;..        killT
cf50: 69 6d 65 72 28 74 68 69 73 2e 74 69 6d 65 72 49  imer(this.timerI
cf60: 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  d);..        thi
cf70: 73 2e 74 69 6d 65 72 49 64 20 3d 20 30 3b 0d 0a  s.timerId = 0;..
cf80: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 6f 6e      },....    on
cf90: 54 69 6d 65 72 20 3a 20 66 75 6e 63 74 69 6f 6e  Timer : function
cfa0: 20 28 74 69 6d 65 72 49 64 29 20 7b 0d 0a 20 20   (timerId) {..  
cfb0: 20 20 20 20 20 20 76 61 72 20 77 6e 64 20 3d 20        var wnd = 
cfc0: 47 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b  GetTextWindow();
cfd0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66      ..        if
cfe0: 20 28 77 6e 64 29 0d 0a 20 20 20 20 20 20 20 20   (wnd)..        
cff0: 20 20 20 20 74 68 69 73 2e 6c 61 73 74 41 63 74      this.lastAct
d000: 69 76 65 54 65 78 74 57 69 6e 64 6f 77 20 3d 20  iveTextWindow = 
d010: 77 6e 64 3b 0d 0a 20 20 20 20 20 20 20 20 65 6c  wnd;..        el
d020: 73 65 20 69 66 20 28 74 68 69 73 2e 6c 61 73 74  se if (this.last
d030: 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77  ActiveTextWindow
d040: 20 26 26 20 21 74 68 69 73 2e 6c 61 73 74 41 63   && !this.lastAc
d050: 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77 2e 49  tiveTextWindow.I
d060: 73 41 63 74 69 76 65 28 29 29 0d 0a 20 20 20 20  sActive())..    
d070: 20 20 20 20 20 20 20 20 74 68 69 73 2e 6c 61 73          this.las
d080: 74 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f  tActiveTextWindo
d090: 77 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 7d  w = null;..    }
d0a0: 0d 0a 20 20 20 20 0d 0a 7d 29 3b 20 2f 2f 20 65  ..    ..}); // e
d0b0: 6e 64 20 6f 66 20 54 65 78 74 57 69 6e 64 6f 77  nd of TextWindow
d0c0: 73 57 61 74 63 68 65 72 20 63 6c 61 73 73 0d 0a  sWatcher class..
d0d0: 0d 0a 2f 2f 7d 20 54 65 78 74 57 69 6e 64 6f 77  ..//} TextWindow
d0e0: 73 57 61 74 63 68 65 72 20 0d 0a 0d 0a 2f 2f 2f  sWatcher ....///
d0f0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
d100: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
d110: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
d120: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
d130: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
d140: 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 53 74 61  /////..////{ Sta
d150: 72 74 55 70 0d 0a 2f 2f 2f 2f 0d 0a 66 75 6e 63  rtUp..////..func
d160: 74 69 6f 6e 20 47 65 74 45 78 74 53 65 61 72 63  tion GetExtSearc
d170: 68 28 29 20 7b 0d 0a 20 20 20 20 69 66 20 28 21  h() {..    if (!
d180: 45 78 74 53 65 61 72 63 68 2e 5f 69 6e 73 74 61  ExtSearch._insta
d190: 6e 63 65 29 0d 0a 20 20 20 20 20 20 20 20 6e 65  nce)..        ne
d1a0: 77 20 45 78 74 53 65 61 72 63 68 28 29 3b 0d 0a  w ExtSearch();..
d1b0: 20 20 20 20 0d 0a 20 20 20 20 72 65 74 75 72 6e      ..    return
d1c0: 20 45 78 74 53 65 61 72 63 68 2e 5f 69 6e 73 74   ExtSearch._inst
d1d0: 61 6e 63 65 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63  ance;..}....func
d1e0: 74 69 6f 6e 20 47 65 74 45 78 74 53 65 61 72 63  tion GetExtSearc
d1f0: 68 47 6c 6f 62 61 6c 28 29 20 7b 0d 0a 20 20 20  hGlobal() {..   
d200: 20 69 66 20 28 21 45 78 74 53 65 61 72 63 68 47   if (!ExtSearchG
d210: 6c 6f 62 61 6c 2e 5f 69 6e 73 74 61 6e 63 65 29  lobal._instance)
d220: 0d 0a 20 20 20 20 20 20 20 20 6e 65 77 20 45 78  ..        new Ex
d230: 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29 3b  tSearchGlobal();
d240: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 65 74 75  ..    ..    retu
d250: 72 6e 20 45 78 74 53 65 61 72 63 68 47 6c 6f 62  rn ExtSearchGlob
d260: 61 6c 2e 5f 69 6e 73 74 61 6e 63 65 3b 0d 0a 7d  al._instance;..}
d270: 0d 0a 0d 0a 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e  ......events.con
d280: 6e 65 63 74 28 44 65 73 69 67 6e 65 72 2c 20 22  nect(Designer, "
d290: 62 65 66 6f 72 65 45 78 69 74 41 70 70 22 2c 20  beforeExitApp", 
d2a0: 47 65 74 45 78 74 53 65 61 72 63 68 28 29 29 3b  GetExtSearch());
d2b0: 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74  ..events.connect
d2c0: 28 44 65 73 69 67 6e 65 72 2c 20 22 62 65 66 6f  (Designer, "befo
d2d0: 72 65 45 78 69 74 41 70 70 22 2c 20 47 65 74 45  reExitApp", GetE
d2e0: 78 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29  xtSearchGlobal()
d2f0: 29 3b 0d 0a 2f 2f 2f 2f 7d 0d 0a                 );..////}..