Hex Artifact Content Вы: nobody
Вход

Artifact 23d082bf643cf09ba7b3e98a8a6e657577bb488e:


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 53 65 6c 66 53  rue;..}....SelfS
11d0: 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72  cript.self['macr
11e0: 6f 73 d0 9e d1 82 d0 bc d0 b5 d0 bd d0 b8 d1 82  os..............
11f0: d1 8c 20 d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1  .. .............
1200: 8c d0 bd d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1 81  ....... ........
1210: d0 ba 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28  ..'] = function(
1220: 29 20 7b 0d 0a 20 20 20 20 76 61 72 20 65 73 20  ) {..    var es 
1230: 3d 20 47 65 74 45 78 74 53 65 61 72 63 68 47 6c  = GetExtSearchGl
1240: 6f 62 61 6c 28 29 3b 0d 0a 20 20 20 20 69 66 20  obal();..    if 
1250: 28 65 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53  (es.startGlobalS
1260: 65 61 72 63 68 29 7b 0d 0a 20 20 20 20 20 20 20  earch){..       
1270: 20 65 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53   es.startGlobalS
1280: 65 61 72 63 68 20 3d 20 66 61 6c 73 65 3b 0d 0a  earch = false;..
1290: 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f      }..}....////
12a0: 20 d0 9c d0 90 d0 9a d0 a0 d0 9e d0 a1 d0 ab 20   .............. 
12b0: d0 a1 20 d0 9f d0 a0 d0 95 d0 94 d0 92 d0 90 d0  .. .............
12c0: a0 d0 98 d0 a2 d0 95 d0 9b d0 ac d0 9d d0 ab d0  ................
12d0: 9c 20 d0 9e d0 a2 d0 9a d0 a0 d0 ab d0 a2 d0 98  . ..............
12e0: d0 95 d0 9c 20 d0 94 d0 98 d0 90 d0 9b d0 9e d0  .... ...........
12f0: 93 d0 90 20 d0 94 d0 9b d0 af 20 d0 9d d0 90 d0  ... ...... .....
1300: a1 d0 a2 d0 a0 d0 9e d0 99 d0 9a d0 98 20 d0 9f  ............. ..
1310: d0 90 d0 a0 d0 90 d0 9c d0 95 d0 a2 d0 a0 d0 9e  ................
1320: d0 92 20 d0 9f d0 9e d0 98 d0 a1 d0 9a d0 90 0d  .. .............
1330: 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65  ...SelfScript.se
1340: 6c 66 5b 27 6d 61 63 72 6f 73 d0 9d d0 b0 d0 b9  lf['macros......
1350: d1 82 d0 b8 20 d1 82 d0 b5 d0 ba d1 81 d1 82 20  .... .......... 
1360: d0 b2 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b5 d0  .. .............
1370: bc 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5 20 28  . ............ (
1380: d1 81 20 d0 b4 d0 b8 d0 b0 d0 bb d0 be d0 b3 d0  .. .............
1390: be d0 bc 29 27 5d 20 3d 20 66 75 6e 63 74 69 6f  ...)'] = functio
13a0: 6e 28 29 20 7b 20 20 20 20 0d 0a 09 6f 70 65 6e  n() {    ...open
13b0: 53 65 61 72 63 68 44 69 61 6c 6f 67 28 53 65 61  SearchDialog(Sea
13c0: 72 63 68 41 72 65 61 73 2e 41 63 74 69 76 65 57  rchAreas.ActiveW
13d0: 69 6e 64 6f 77 29 3b 09 0d 0a 20 20 20 20 72 65  indow);...    re
13e0: 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d 0a 0d  turn true;..}...
13f0: 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66  .SelfScript.self
1400: 5b 27 6d 61 63 72 6f 73 d0 9d d0 b0 d0 b9 d1 82  ['macros........
1410: d0 b8 20 d1 82 d0 b5 d0 ba d1 81 d1 82 20 d0 b2  .. .......... ..
1420: 20 d0 be d1 82 d0 ba d1 80 d1 8b d1 82 d1 8b d1   ...............
1430: 85 20 d0 be d0 ba d0 bd d0 b0 d1 85 20 28 d1 81  . .......... (..
1440: 20 d0 b4 d0 b8 d0 b0 d0 bb d0 be d0 b3 d0 be d0   ...............
1450: bc 29 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28  .)'] = function(
1460: 29 20 7b 20 20 20 20 0d 0a 09 6f 70 65 6e 53 65  ) {    ...openSe
1470: 61 72 63 68 44 69 61 6c 6f 67 28 53 65 61 72 63  archDialog(Searc
1480: 68 41 72 65 61 73 2e 41 6c 6c 4f 70 65 6e 65 64  hAreas.AllOpened
1490: 57 69 6e 64 6f 77 73 29 3b 09 0d 0a 20 20 20 20  Windows);...    
14a0: 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 7d 0d  return true;..}.
14b0: 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65  ...SelfScript.se
14c0: 6c 66 5b 27 6d 61 63 72 6f 73 d0 93 d0 bb d0 be  lf['macros......
14d0: d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0 b9 20 d0  .............. .
14e0: bf d0 be d0 b8 d1 81 d0 ba 20 28 d1 81 20 d0 b4  ......... (.. ..
14f0: d0 b8 d0 b0 d0 bb d0 be d0 b3 d0 be d0 bc 29 27  ..............)'
1500: 5d 20 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b  ] = function() {
1510: 20 20 20 20 0d 0a 09 6f 70 65 6e 53 65 61 72 63      ...openSearc
1520: 68 44 69 61 6c 6f 67 28 53 65 61 72 63 68 41 72  hDialog(SearchAr
1530: 65 61 73 2e 47 6c 6f 62 61 6c 29 3b 09 0d 0a 20  eas.Global);... 
1540: 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0d     return true;.
1550: 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 20 d0 9c d0 90 d0  .}....//// .....
1560: 9a d0 a0 d0 9e d0 a1 d0 ab 20 d0 94 d0 9b d0 af  ......... ......
1570: 20 d0 a3 d0 9f d0 a0 d0 90 d0 92 d0 9b d0 95 d0   ...............
1580: 9d d0 98 d0 af 20 d0 9e d0 9a d0 9d d0 9e d0 9c  ..... ..........
1590: 20 d0 a0 d0 95 d0 97 d0 a3 d0 9b d0 ac d0 a2 d0   ...............
15a0: 90 d0 a2 d0 9e d0 92 20 d0 9f d0 9e d0 98 d0 a1  ....... ........
15b0: d0 9a d0 90 20 0d 0a 0d 0a 53 65 6c 66 53 63 72  .... ....SelfScr
15c0: 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73  ipt.self['macros
15d0: d0 9e d1 82 d0 ba d1 80 d1 8b d1 82 d1 8c 20 d0  .............. .
15e0: be d0 ba d0 bd d0 be 20 d0 bf d0 be d0 b8 d1 81  ....... ........
15f0: d0 ba d0 b0 27 5d 20 3d 20 66 75 6e 63 74 69 6f  ....'] = functio
1600: 6e 28 29 20 7b 0d 0a 20 20 20 20 47 65 74 45 78  n() {..    GetEx
1610: 74 53 65 61 72 63 68 28 29 2e 73 68 6f 77 28 29  tSearch().show()
1620: 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69  ;..}....SelfScri
1630: 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0  pt.self['macros.
1640: 97 d0 b0 d0 ba d1 80 d1 8b d1 82 d1 8c 20 d0 be  ............. ..
1650: d0 ba d0 bd d0 be 20 d0 bf d0 be d0 b8 d1 81 d0  ...... .........
1660: ba d0 b0 27 5d 20 3d 20 66 75 6e 63 74 69 6f 6e  ...'] = function
1670: 28 29 20 7b 0d 0a 20 20 20 20 76 61 72 20 65 73  () {..    var es
1680: 20 3d 20 47 65 74 45 78 74 53 65 61 72 63 68 28   = GetExtSearch(
1690: 29 3b 0d 0a 20 20 20 20 69 66 20 28 65 73 2e 69  );..    if (es.i
16a0: 73 4f 70 65 6e 28 29 29 20 7b 0d 0a 20 20 20 20  sOpen()) {..    
16b0: 20 20 20 20 65 73 2e 63 6c 6f 73 65 28 29 3b 0d      es.close();.
16c0: 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20  .        return 
16d0: 74 72 75 65 3b 0d 0a 20 20 20 20 7d 0d 0a 09 65  true;..    }...e
16e0: 73 20 3d 20 47 65 74 45 78 74 53 65 61 72 63 68  s = GetExtSearch
16f0: 47 6c 6f 62 61 6c 28 29 3b 0d 0a 09 69 66 20 28  Global();...if (
1700: 65 73 2e 69 73 4f 70 65 6e 28 29 29 20 7b 0d 0a  es.isOpen()) {..
1710: 09 09 65 73 2e 63 6c 6f 73 65 28 29 3b 0d 0a 09  ..es.close();...
1720: 09 72 65 74 75 72 6e 20 74 72 75 65 3b 0d 0a 09  .return true;...
1730: 7d 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 66 61  }..    return fa
1740: 6c 73 65 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53  lse;..}....SelfS
1750: 63 72 69 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72  cript.self['macr
1760: 6f 73 d0 9f d0 b5 d1 80 d0 b5 d0 b9 d1 82 d0 b8  os..............
1770: 20 d0 ba 20 d1 81 d0 bb d0 b5 d0 b4 d1 83 d1 8e   .. ............
1780: d1 89 d0 b5 d0 bc d1 83 20 d1 81 d0 be d0 b2 d0  ........ .......
1790: bf d0 b0 d0 b4 d0 b5 d0 bd d0 b8 d1 8e 27 5d 20  .............'] 
17a0: 3d 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a  = function() {..
17b0: 20 20 20 20 76 61 72 20 65 73 20 3d 20 47 65 74      var es = Get
17c0: 45 78 74 53 65 61 72 63 68 28 29 3b 0d 0a 20 20  ExtSearch();..  
17d0: 20 20 65 73 2e 73 68 6f 77 28 29 3b 0d 0a 20 20    es.show();..  
17e0: 20 20 65 73 2e 6d 6f 76 65 52 6f 77 43 75 72 73    es.moveRowCurs
17f0: 6f 72 28 74 72 75 65 29 3b 0d 0a 7d 0d 0a 0d 0a  or(true);..}....
1800: 53 65 6c 66 53 63 72 69 70 74 2e 73 65 6c 66 5b  SelfScript.self[
1810: 27 6d 61 63 72 6f 73 d0 9f d0 b5 d1 80 d0 b5 d0  'macros.........
1820: b9 d1 82 d0 b8 20 d0 ba 20 d0 bf d1 80 d0 b5 d0  ..... .. .......
1830: b4 d1 8b d0 b4 d1 83 d1 89 d0 b5 d0 bc d1 83 20  ............... 
1840: d1 81 d0 be d0 b2 d0 bf d0 b0 d0 b4 d0 b5 d0 bd  ................
1850: d0 b8 d1 8e 27 5d 20 3d 20 66 75 6e 63 74 69 6f  ....'] = functio
1860: 6e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72 20 65  n() {..    var e
1870: 73 20 3d 20 47 65 74 45 78 74 53 65 61 72 63 68  s = GetExtSearch
1880: 28 29 3b 0d 0a 20 20 20 20 65 73 2e 73 68 6f 77  ();..    es.show
1890: 28 29 3b 0d 0a 20 20 20 20 65 73 2e 6d 6f 76 65  ();..    es.move
18a0: 52 6f 77 43 75 72 73 6f 72 28 66 61 6c 73 65 29  RowCursor(false)
18b0: 3b 0d 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69  ;..}....SelfScri
18c0: 70 74 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0  pt.self['macros.
18d0: a1 d0 b2 d0 b5 d1 80 d0 bd d1 83 d1 82 d1 8c 20  ............... 
18e0: d0 b3 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80 d0 be  ................
18f0: d0 b2 d0 ba d0 b8 27 5d 20 3d 20 66 75 6e 63 74  ......'] = funct
1900: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 76 61 72  ion() {..    var
1910: 20 65 73 20 3d 20 47 65 74 45 78 74 53 65 61 72   es = GetExtSear
1920: 63 68 28 29 3b 0d 0a 20 20 20 20 65 73 2e 65 78  ch();..    es.ex
1930: 70 61 6e 64 54 72 65 65 28 74 72 75 65 29 3b 0d  pandTree(true);.
1940: 0a 7d 0d 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74  .}....SelfScript
1950: 2e 73 65 6c 66 5b 27 6d 61 63 72 6f 73 d0 a0 d0  .self['macros...
1960: b0 d0 b7 d0 b2 d0 b5 d1 80 d0 bd d1 83 d1 82 d1  ................
1970: 8c 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80  . ..............
1980: d0 be d0 b2 d0 ba d0 b8 27 5d 20 3d 20 66 75 6e  ........'] = fun
1990: 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 76  ction() {..    v
19a0: 61 72 20 65 73 20 3d 20 47 65 74 45 78 74 53 65  ar es = GetExtSe
19b0: 61 72 63 68 28 29 3b 0d 0a 20 20 20 20 65 73 2e  arch();..    es.
19c0: 65 78 70 61 6e 64 54 72 65 65 28 66 61 6c 73 65  expandTree(false
19d0: 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 d0 92 d0 be  );..}..../* ....
19e0: d0 b7 d0 b2 d1 80 d0 b0 d1 89 d0 b0 d0 b5 d1 82  ................
19f0: 20 d0 bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d0   ...............
1a00: b5 20 d0 bc d0 b0 d0 ba d1 80 d0 be d1 81 d0 b0  . ..............
1a10: 20 d0 bf d0 be 20 d1 83 d0 bc d0 be d0 bb d1 87   .... ..........
1a20: d0 b0 d0 bd d0 b8 d1 8e 20 2d 20 d0 b2 d1 8b d0  ........ - .....
1a30: b7 d1 8b d0 b2 d0 b0 d0 b5 d1 82 d1 81 d1 8f 2c  ...............,
1a40: 20 d0 ba d0 be d0 b3 d0 b4 d0 b0 20 d0 bf d0 be   .......... ....
1a50: d0 bb d1 8c d0 b7 d0 be d0 b2 d0 b0 d1 82 d0 b5  ................
1a60: d0 bb d1 8c 20 0d 0a d0 b4 d0 b2 d0 b0 d0 b6 d0  .... ...........
1a70: b4 d1 8b 20 d1 89 d0 b5 d0 bb d0 ba d0 b0 d0 b5  ... ............
1a80: d1 82 20 d0 bc d1 8b d1 88 d1 8c d1 8e 20 d0 bf  .. .......... ..
1a90: d0 be 20 d0 bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0  .. .............
1aa0: b8 d1 8e 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82  ... ............
1ab0: d0 b0 20 d0 b2 20 d0 be d0 ba d0 bd d0 b5 20 d0  .. .. ........ .
1ac0: a1 d0 bd d0 b5 d0 b3 d0 be d0 bf d0 b0 d1 82 d0  ................
1ad0: b0 2e 20 2a 2f 0d 0a 66 75 6e 63 74 69 6f 6e 20  .. */..function 
1ae0: 67 65 74 44 65 66 61 75 6c 74 4d 61 63 72 6f 73  getDefaultMacros
1af0: 28 29 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e  () {..    return
1b00: 20 27 d0 9e d1 82 d0 ba d1 80 d1 8b d1 82 d1 8c   '..............
1b10: 20 d0 be d0 ba d0 bd d0 be 20 d0 bf d0 be d0 b8   ........ ......
1b20: d1 81 d0 ba d0 b0 27 3b 0d 0a 7d 0d 0a 0d 0a 2f  ......';..}..../
1b30: 2f 2f 2f 7d 20 d0 9c d0 b0 d0 ba d1 80 d0 be d1  ///} ...........
1b40: 81 d1 8b 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f  ......./////////
1b50: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1b60: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1b70: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1b80: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
1b90: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d  ///////////////.
1ba0: 0a 2f 2f 2f 2f 7b 20 45 78 74 53 65 61 72 63 68  .////{ ExtSearch
1bb0: 20 2d 20 d0 a0 d0 b0 d1 81 d1 88 d0 b8 d1 80 d0   - .............
1bc0: b5 d0 bd d0 bd d1 8b d0 b9 20 d0 bf d0 be d0 b8  ......... ......
1bd0: d1 81 d0 ba 20 d0 b2 20 d1 82 d0 b5 d0 ba d1 81  .... .. ........
1be0: d1 82 d0 b5 20 d0 bc d0 be d0 b4 d1 83 d0 bb d1  .... ...........
1bf0: 8f 2e 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a 52 6f 77 54  ....////....RowT
1c00: 79 70 65 73 20 3d 20 7b 0d 0a 20 20 20 20 27 53  ypes = {..    'S
1c10: 65 61 72 63 68 52 65 73 75 6c 74 27 20 20 3a 20  earchResult'  : 
1c20: 30 2c 20 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0 ba  0, // ..........
1c30: d0 b0 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1  .. .............
1c40: 82 d0 b0 d1 82 d0 b0 20 d0 bf d0 be d0 b8 d1 81  ....... ........
1c50: d0 ba d0 b0 2e 0d 0a 20 20 20 20 27 50 72 6f 63  .......    'Proc
1c60: 47 72 6f 75 70 27 20 20 20 20 20 3a 20 31 2c 20  Group'     : 1, 
1c70: 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b0 20  // ............ 
1c80: d0 b3 d1 80 d1 83 d0 bf d0 bf d1 8b 2d d0 bf d1  ............-...
1c90: 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b 20  ............... 
1ca0: 28 d0 b2 20 d1 80 d0 b5 d0 b6 d0 b8 d0 bc d0 b5  (.. ............
1cb0: 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80 d0   ...............
1cc0: be d0 b2 d0 ba d0 b8 20 d0 bf d0 be 20 d0 bf d1  ....... .... ...
1cd0: 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 d0  ................
1ce0: bc 20 d0 b8 20 d1 84 d1 83 d0 bd d0 ba d1 86 d0  . .. ...........
1cf0: b8 d1 8f d0 bc 29 2e 0d 0a 20 20 20 20 27 46 75  .....)...    'Fu
1d00: 6e 63 47 72 6f 75 70 27 20 20 20 20 20 3a 20 32  ncGroup'     : 2
1d10: 2c 20 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0 ba d0  , // ...........
1d20: b0 20 d0 b3 d1 80 d1 83 d0 bf d0 bf d1 8b 2d d1  . ............-.
1d30: 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 20 28 d0  ............. (.
1d40: b2 20 d1 80 d0 b5 d0 b6 d0 b8 d0 bc d0 b5 20 d0  . ............ .
1d50: b3 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0  ................
1d60: b2 d0 ba d0 b8 20 d0 bf d0 be 20 d0 bf d1 80 d0  ..... .... .....
1d70: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 d0 bc 20  ............... 
1d80: d0 b8 20 d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d1  .. .............
1d90: 8f d0 bc 29 2e 0d 0a 20 20 20 20 27 53 65 61 72  ...)...    'Sear
1da0: 63 68 44 6f 63 27 20 20 20 20 20 3a 20 33 20 20  chDoc'     : 3  
1db0: 2f 2f 20 d0 a1 d1 82 d1 80 d0 be d0 ba d0 b0 20  // ............ 
1dc0: d0 b4 d0 be d0 ba d1 83 d0 bc d0 b5 d0 bd d1 82  ................
1dd0: d0 b0 2c 20 d0 b2 20 d0 ba d0 be d1 82 d0 be d1  .., .. .........
1de0: 80 d0 be d0 bc 20 d0 bf d1 80 d0 be d0 b8 d0 b7  ..... ..........
1df0: d0 b2 d0 be d0 b4 d0 b8 d1 82 d1 81 d1 8f 20 d0  .............. .
1e00: bf d0 be d0 b8 d1 81 d0 ba 2e 0d 0a 7d 0d 0a 0d  ............}...
1e10: 0a 52 45 20 3d 20 7b 0d 0a 20 20 20 20 4d 45 54  .RE = {..    MET
1e20: 48 4f 44 5f 53 54 41 52 54 20 3a 20 2f 5e 5c 73  HOD_START : /^\s
1e30: 2a 28 28 3f 3a 70 72 6f 63 65 64 75 72 65 29 7c  *((?:procedure)|
1e40: 28 3f 3a 66 75 6e 63 74 69 6f 6e 29 7c 28 3f 3a  (?:function)|(?:
1e50: d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83 d1 80  ................
1e60: d0 b0 29 7c 28 3f 3a d1 84 d1 83 d0 bd d0 ba d1  ..)|(?:.........
1e70: 86 d0 b8 d1 8f 29 29 5c 73 2b 28 5b 5c 77 d0 90  .....))\s+([\w..
1e80: 2d d1 8f d1 91 d0 81 5c 64 5d 2b 29 5c 73 2a 5c  -......\d]+)\s*\
1e90: 28 2f 69 2c 0d 0a 20 20 20 20 4d 45 54 48 4f 44  (/i,..    METHOD
1ea0: 5f 45 4e 44 20 3a 20 2f 28 28 3f 3a 45 6e 64 50  _END : /((?:EndP
1eb0: 72 6f 63 65 64 75 72 65 29 7c 28 3f 3a 45 6e 64  rocedure)|(?:End
1ec0: 46 75 6e 63 74 69 6f 6e 29 7c 28 3f 3a d0 9a d0  Function)|(?:...
1ed0: be d0 bd d0 b5 d1 86 d0 9f d1 80 d0 be d1 86 d0  ................
1ee0: b5 d0 b4 d1 83 d1 80 d1 8b 29 7c 28 3f 3a d0 9a  .........)|(?:..
1ef0: d0 be d0 bd d0 b5 d1 86 d0 a4 d1 83 d0 bd d0 ba  ................
1f00: d1 86 d0 b8 d0 b8 29 29 2f 69 0d 0a 7d 0d 0a 0d  ......))/i..}...
1f10: 0a 53 65 61 72 63 68 41 72 65 61 73 20 3d 20 7b  .SearchAreas = {
1f20: 0d 0a 09 27 41 63 74 69 76 65 57 69 6e 64 6f 77  ...'ActiveWindow
1f30: 27 20 09 09 3a 20 30 2c 20 2f 2f 20 d0 92 20 d1  ' ..: 0, // .. .
1f40: 82 d0 b5 d0 ba d1 83 d1 89 d0 b5 d0 bc 20 d0 bc  ............. ..
1f50: d0 be d0 b4 d1 83 d0 bb d0 b5 0d 0a 09 27 41 6c  .............'Al
1f60: 6c 4f 70 65 6e 65 64 57 69 6e 64 6f 77 73 27 20  lOpenedWindows' 
1f70: 09 3a 20 31 2c 20 2f 2f 20 d0 92 d0 be 20 d0 b2  .: 1, // .... ..
1f80: d1 81 d0 b5 d1 85 20 d0 be d1 82 d0 ba d1 80 d1  ...... .........
1f90: 8b d1 82 d1 8b d1 85 20 d0 be d0 ba d0 bd d0 b0  ....... ........
1fa0: d1 85 0d 0a 09 27 47 6c 6f 62 61 6c 27 09 09 09  .....'Global'...
1fb0: 3a 20 32 2c 20 2f 2f 20 d0 93 d0 bb d0 be d0 b1  : 2, // ........
1fc0: d0 b0 d0 bb d1 8c d0 bd d0 be 20 28 d0 b2 d0 be  .......... (....
1fd0: 20 d0 b2 d1 81 d0 b5 d1 85 20 d0 bc d0 be d0 b4   ........ ......
1fe0: d1 83 d0 bb d1 8f d1 85 20 d0 be d1 81 d0 bd d0  ........ .......
1ff0: be d0 b2 d0 bd d0 be d0 b9 20 d0 ba d0 be d0 bd  ......... ......
2000: d1 84 d0 b8 d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8  ................
2010: d0 b8 29 0d 0a 09 27 43 75 72 72 65 6e 74 43 6f  ..)...'CurrentCo
2020: 6e 74 61 69 6e 65 72 27 09 3a 20 33 20 20 2f 2f  ntainer'.: 3  //
2030: 20 d0 92 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b5   .. ............
2040: d0 bc 20 d0 be d1 82 d0 ba d1 80 d1 8b d1 82 d0  .. .............
2050: be d0 bc 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 b9  ... ............
2060: d0 bd d0 b5 d1 80 d0 b5 20 28 d0 b2 d0 bd d0 b5  ........ (......
2070: d1 88 d0 bd d0 b5 d0 b9 20 d0 be d0 b1 d1 80 d0  ........ .......
2080: b0 d0 b1 d0 be d1 82 d0 ba d0 b5 2c 20 d0 ba d0  ..........., ...
2090: be d0 bd d1 84 d0 b8 d0 b3 d1 83 d1 80 d0 b0 d1  ................
20a0: 86 d0 b8 d0 b8 20 d0 98 d0 91 20 d0 b8 20 d1 82  ..... .... .. ..
20b0: 2e d0 bf 2e 29 0d 0a 7d 3b 0d 0a 0d 0a 2f 2a 20  ....)..};..../* 
20c0: d0 9e d1 81 d1 83 d1 89 d0 b5 d1 81 d1 82 d0 b2  ................
20d0: d0 bb d1 8f d0 b5 d1 82 20 d0 bf d0 be d0 b8 d1  ........ .......
20e0: 81 d0 ba 20 d1 81 20 d0 bf d1 80 d0 b5 d0 b4 d0  ... .. .........
20f0: b2 d0 b0 d1 80 d0 b8 d1 82 d0 b5 d0 bb d1 8c d0  ................
2100: bd d1 8b d0 bc 20 d0 be d1 82 d0 ba d1 80 d1 8b  ..... ..........
2110: d1 82 d0 b8 d0 b5 d0 bc 20 d0 b4 d0 b8 d0 b0 d0  ........ .......
2120: bb d0 be d0 b3 d0 be d0 b2 d0 be d0 b3 d0 be 20  ............... 
2130: d0 be d0 ba d0 bd d0 b0 2e 20 2a 2f 0d 0a 66 75  ......... */..fu
2140: 6e 63 74 69 6f 6e 20 6f 70 65 6e 53 65 61 72 63  nction openSearc
2150: 68 44 69 61 6c 6f 67 28 69 6e 69 74 53 65 61 72  hDialog(initSear
2160: 63 68 41 72 65 61 29 20 7b 0d 0a 09 0d 0a 09 69  chArea) {......i
2170: 66 20 28 21 69 6e 69 74 53 65 61 72 63 68 41 72  f (!initSearchAr
2180: 65 61 29 0d 0a 09 09 69 6e 69 74 53 65 61 72 63  ea)....initSearc
2190: 68 41 72 65 61 20 3d 20 53 65 61 72 63 68 41 72  hArea = SearchAr
21a0: 65 61 73 2e 41 63 74 69 76 65 57 69 6e 64 6f 77  eas.ActiveWindow
21b0: 3b 0d 0a 09 0d 0a 09 76 61 72 20 77 20 3d 20 47  ;......var w = G
21c0: 65 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d  etTextWindow();.
21d0: 0a 20 20 20 20 69 66 20 28 21 77 29 20 72 65 74  .    if (!w) ret
21e0: 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20  urn false;..    
21f0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 76 61          ..    va
2200: 72 20 73 65 6c 54 65 78 74 20 3d 20 77 2e 47 65  r selText = w.Ge
2210: 74 53 65 6c 65 63 74 65 64 54 65 78 74 28 29 3b  tSelectedText();
2220: 0d 0a 20 20 20 20 69 66 20 28 73 65 6c 54 65 78  ..    if (selTex
2230: 74 20 3d 3d 20 27 27 29 0d 0a 20 20 20 20 20 20  t == '')..      
2240: 20 20 73 65 6c 54 65 78 74 20 3d 20 77 2e 47 65    selText = w.Ge
2250: 74 57 6f 72 64 55 6e 64 65 72 43 75 72 73 6f 72  tWordUnderCursor
2260: 28 29 3b 0d 0a 09 09 0d 0a 20 20 20 20 76 61 72  ();......    var
2270: 20 73 44 6c 67 20 3d 20 6e 65 77 20 45 78 74 53   sDlg = new ExtS
2280: 65 61 72 63 68 44 69 61 6c 6f 67 28 73 65 6c 54  earchDialog(selT
2290: 65 78 74 2c 20 69 6e 69 74 53 65 61 72 63 68 41  ext, initSearchA
22a0: 72 65 61 29 3b 0d 0a 09 09 0d 0a 09 69 66 20 28  rea);.......if (
22b0: 73 44 6c 67 2e 73 68 6f 77 28 74 72 75 65 29 20  sDlg.show(true) 
22c0: 3d 3d 20 74 72 75 65 29 20 0d 0a 09 7b 0d 0a 09  == true) ...{...
22d0: 09 76 61 72 20 73 65 61 72 63 68 51 75 65 72 79  .var searchQuery
22e0: 20 3d 20 73 44 6c 67 2e 67 65 74 53 65 61 72 63   = sDlg.getSearc
22f0: 68 51 75 65 72 79 50 61 72 61 6d 73 28 29 3b 0d  hQueryParams();.
2300: 0a 09 09 0d 0a 09 20 20 20 20 69 66 20 28 73 65  ......    if (se
2310: 61 72 63 68 51 75 65 72 79 2e 51 75 65 72 79 20  archQuery.Query 
2320: 3d 3d 20 27 27 29 0d 0a 09 20 20 20 20 7b 0d 0a  == '')...    {..
2330: 09 09 09 76 61 72 20 65 73 20 3d 20 47 65 74 45  ...var es = GetE
2340: 78 74 53 65 61 72 63 68 28 29 3b 0d 0a 09 20 20  xtSearch();...  
2350: 20 20 20 20 20 20 65 73 2e 63 6c 65 61 72 53 65        es.clearSe
2360: 61 72 63 68 52 65 73 75 6c 74 73 28 29 3b 0d 0a  archResults();..
2370: 09 20 20 20 20 20 20 20 20 65 73 2e 73 65 74 44  .        es.setD
2380: 65 66 61 75 6c 74 53 65 61 72 63 68 51 75 65 72  efaultSearchQuer
2390: 79 28 29 3b 0d 0a 09 20 20 20 20 7d 0d 0a 09 09  y();...    }....
23a0: 65 6c 73 65 0d 0a 09 09 7b 09 0d 0a 09 09 09 73  else....{......s
23b0: 77 69 74 63 68 28 73 44 6c 67 2e 67 65 74 53 65  witch(sDlg.getSe
23c0: 61 72 63 68 41 72 65 61 28 29 29 20 0d 0a 09 09  archArea()) ....
23d0: 09 7b 0d 0a 09 09 09 63 61 73 65 20 53 65 61 72  .{.....case Sear
23e0: 63 68 41 72 65 61 73 2e 41 6c 6c 4f 70 65 6e 65  chAreas.AllOpene
23f0: 64 57 69 6e 64 6f 77 73 3a 0d 0a 09 09 09 09 76  dWindows:......v
2400: 61 72 20 65 73 20 3d 20 47 65 74 45 78 74 53 65  ar es = GetExtSe
2410: 61 72 63 68 28 29 3b 0d 0a 09 09 09 09 65 73 2e  arch();......es.
2420: 73 65 74 51 75 65 72 79 28 73 65 61 72 63 68 51  setQuery(searchQ
2430: 75 65 72 79 29 3b 0d 0a 09 09 09 09 65 73 2e 73  uery);......es.s
2440: 68 6f 77 28 29 3b 0d 0a 09 09 09 09 65 73 2e 73  how();......es.s
2450: 65 61 72 63 68 4f 70 65 6e 65 64 57 69 6e 64 6f  earchOpenedWindo
2460: 77 73 28 74 72 75 65 29 3b 0d 0a 09 09 09 09 62  ws(true);......b
2470: 72 65 61 6b 3b 0d 0a 09 09 09 09 0d 0a 09 09 09  reak;...........
2480: 63 61 73 65 20 53 65 61 72 63 68 41 72 65 61 73  case SearchAreas
2490: 2e 43 75 72 72 65 6e 74 43 6f 6e 74 61 69 6e 65  .CurrentContaine
24a0: 72 3a 0d 0a 09 09 09 20 20 20 20 76 61 72 20 65  r:.....    var e
24b0: 73 20 3d 20 47 65 74 45 78 74 53 65 61 72 63 68  s = GetExtSearch
24c0: 47 6c 6f 62 61 6c 28 29 3b 0d 0a 09 09 09 20 20  Global();.....  
24d0: 20 20 65 73 2e 69 73 47 6c 6f 62 61 6c 46 69 6e    es.isGlobalFin
24e0: 64 20 3d 20 74 72 75 65 3b 0d 0a 09 09 09 20 20  d = true;.....  
24f0: 20 20 65 73 2e 61 63 74 69 76 65 56 69 65 77 20    es.activeView 
2500: 3d 20 77 69 6e 64 6f 77 73 2e 67 65 74 41 63 74  = windows.getAct
2510: 69 76 65 56 69 65 77 28 29 3b 0d 0a 09 09 09 20  iveView();..... 
2520: 20 20 20 65 73 2e 69 73 49 6e 43 75 72 72 65 6e     es.isInCurren
2530: 74 4d 64 43 6f 6e 74 65 69 6e 65 72 46 69 6e 64  tMdConteinerFind
2540: 20 3d 20 74 72 75 65 3b 0d 0a 09 09 09 09 65 73   = true;......es
2550: 2e 73 65 74 51 75 65 72 79 28 73 65 61 72 63 68  .setQuery(search
2560: 51 75 65 72 79 29 3b 0d 0a 09 09 09 20 20 20 20  Query);.....    
2570: 65 73 2e 73 68 6f 77 28 29 3b 0d 0a 09 09 09 09  es.show();......
2580: 65 73 2e 73 65 61 72 63 68 49 6e 4d 65 74 61 64  es.searchInMetad
2590: 61 74 61 28 74 72 75 65 29 3b 0d 0a 09 09 09 09  ata(true);......
25a0: 62 72 65 61 6b 3b 0d 0a 09 09 09 09 0d 0a 09 09  break;..........
25b0: 09 63 61 73 65 20 53 65 61 72 63 68 41 72 65 61  .case SearchArea
25c0: 73 2e 47 6c 6f 62 61 6c 3a 0d 0a 09 09 09 20 20  s.Global:.....  
25d0: 20 20 76 61 72 20 65 73 20 3d 20 47 65 74 45 78    var es = GetEx
25e0: 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 28 29 3b  tSearchGlobal();
25f0: 0d 0a 09 09 09 20 20 20 20 65 73 2e 69 73 47 6c  .....    es.isGl
2600: 6f 62 61 6c 46 69 6e 64 20 3d 20 74 72 75 65 3b  obalFind = true;
2610: 0d 0a 09 09 09 20 20 20 20 65 73 2e 61 63 74 69  .....    es.acti
2620: 76 65 56 69 65 77 20 3d 20 77 69 6e 64 6f 77 73  veView = windows
2630: 2e 67 65 74 41 63 74 69 76 65 56 69 65 77 28 29  .getActiveView()
2640: 3b 0d 0a 09 09 09 20 20 20 20 65 73 2e 69 73 49  ;.....    es.isI
2650: 6e 43 75 72 72 65 6e 74 4d 64 43 6f 6e 74 65 69  nCurrentMdContei
2660: 6e 65 72 46 69 6e 64 20 3d 20 66 61 6c 73 65 3b  nerFind = false;
2670: 0d 0a 09 09 09 09 65 73 2e 73 65 74 51 75 65 72  ......es.setQuer
2680: 79 28 73 65 61 72 63 68 51 75 65 72 79 29 3b 0d  y(searchQuery);.
2690: 0a 09 09 09 20 20 20 20 65 73 2e 73 68 6f 77 28  ....    es.show(
26a0: 29 3b 0d 0a 09 09 09 09 65 73 2e 73 65 61 72 63  );......es.searc
26b0: 68 49 6e 4d 65 74 61 64 61 74 61 28 74 72 75 65  hInMetadata(true
26c0: 29 3b 09 09 09 0d 0a 09 09 09 09 62 72 65 61 6b  );.........break
26d0: 3b 0d 0a 09 09 09 09 0d 0a 09 09 09 63 61 73 65  ;...........case
26e0: 20 53 65 61 72 63 68 41 72 65 61 73 2e 41 63 74   SearchAreas.Act
26f0: 69 76 65 57 69 6e 64 6f 77 3a 0d 0a 09 09 09 64  iveWindow:.....d
2700: 65 66 61 75 6c 74 3a 0d 0a 09 09 09 09 76 61 72  efault:......var
2710: 20 65 73 20 3d 20 47 65 74 45 78 74 53 65 61 72   es = GetExtSear
2720: 63 68 28 29 3b 0d 0a 09 09 09 09 65 73 2e 73 65  ch();......es.se
2730: 74 51 75 65 72 79 28 73 65 61 72 63 68 51 75 65  tQuery(searchQue
2740: 72 79 29 3b 0d 0a 09 09 09 09 65 73 2e 73 68 6f  ry);......es.sho
2750: 77 28 29 3b 0d 0a 09 20 20 20 20 20 20 20 20 09  w();...        .
2760: 65 73 2e 73 65 61 72 63 68 41 63 74 69 76 65 44  es.searchActiveD
2770: 6f 63 28 74 72 75 65 29 3b 0d 0a 09 09 09 09 62  oc(true);......b
2780: 72 65 61 6b 3b 0d 0a 09 09 09 7d 0d 0a 09 09 7d  reak;.....}....}
2790: 0d 0a 09 7d 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 d0 a0  ...}..}..../* ..
27a0: d0 b5 d0 b0 d0 bb d0 b8 d0 b7 d1 83 d0 b5 d1 82  ................
27b0: 20 d0 b4 d0 b8 d0 b0 d0 bb d0 be d0 b3 20 d0 bd   ............ ..
27c0: d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0 b8  ................
27d0: 20 d0 bf d0 b0 d1 80 d0 b0 d0 bc d0 b5 d1 82 d1   ...............
27e0: 80 d0 be d0 b2 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
27f0: d0 b0 2e 2a 2f 0d 0a 45 78 74 53 65 61 72 63 68  ...*/..ExtSearch
2800: 44 69 61 6c 6f 67 20 3d 20 53 63 72 69 70 74 46  Dialog = ScriptF
2810: 6f 72 6d 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a  orm.extend({....
2820: 20 20 20 20 73 65 74 74 69 6e 67 73 52 6f 6f 74      settingsRoot
2830: 50 61 74 68 20 3a 20 53 65 6c 66 53 63 72 69 70  Path : SelfScrip
2840: 74 2e 75 6e 69 71 75 65 4e 61 6d 65 2c 0d 0a 20  t.uniqueName,.. 
2850: 20 20 20 0d 0a 20 20 20 20 73 65 74 74 69 6e 67     ..    setting
2860: 73 20 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20 70  s : {..        p
2870: 66 6c 53 6e 65 67 6f 70 61 74 20 3a 20 7b 0d 0a  flSnegopat : {..
2880: 20 20 20 20 20 20 20 20 20 20 20 20 27 49 73 52              'IsR
2890: 65 67 45 78 70 27 20 20 20 20 20 20 3a 20 66 61  egExp'      : fa
28a0: 6c 73 65 2c 20 2f 2f 20 d0 9f d0 be d0 b8 d1 81  lse, // ........
28b0: d0 ba 20 d1 80 d0 b5 d0 b3 d1 83 d0 bb d1 8f d1  .. .............
28c0: 80 d0 bd d1 8b d0 bc d0 b8 20 d0 b2 d1 8b d1 80  ......... ......
28d0: d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f d0 bc d0 b8  ................
28e0: 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 27  ...            '
28f0: 43 61 73 65 53 65 6e 73 65 74 69 76 65 27 20 3a  CaseSensetive' :
2900: 20 66 61 6c 73 65 2c 20 2f 2f 20 d0 a3 d1 87 d0   false, // .....
2910: b8 d1 82 d1 8b d0 b2 d0 b0 d1 82 d1 8c 20 d1 80  ............. ..
2920: d0 b5 d0 b3 d0 b8 d1 81 d1 82 d1 80 20 d0 bf d1  ............ ...
2930: 80 d0 b8 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b5  ... ............
2940: 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 27  ...            '
2950: 57 68 6f 6c 65 57 6f 72 64 73 27 20 20 20 20 3a  WholeWords'    :
2960: 20 66 61 6c 73 65 2c 20 2f 2f 20 d0 9f d0 be d0   false, // .....
2970: b8 d1 81 d0 ba 20 d1 81 d0 bb d0 be d0 b2 d0 b0  ..... ..........
2980: 20 d1 86 d0 b5 d0 bb d0 b8 d0 ba d0 be d0 bc 2e   ...............
2990: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 53  ..            'S
29a0: 65 61 72 63 68 48 69 73 74 6f 72 79 27 20 3a 20  earchHistory' : 
29b0: 76 38 4e 65 77 28 27 56 61 6c 75 65 4c 69 73 74  v8New('ValueList
29c0: 27 29 2c 20 2f 2f 20 d0 98 d1 81 d1 82 d0 be d1  '), // .........
29d0: 80 d0 b8 d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
29e0: d0 b0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20  .....           
29f0: 20 27 48 69 73 74 6f 72 79 44 65 70 74 68 27 20   'HistoryDepth' 
2a00: 20 3a 20 31 35 2c 20 2f 2f 20 d0 9a d0 be d0 bb   : 15, // ......
2a10: d0 b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be 20 d1  .............. .
2a20: 8d d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 d0 be d0  ................
2a30: b2 20 d0 b8 d1 81 d1 82 d0 be d1 80 d0 b8 d0 b8  . ..............
2a40: 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a   ...............
2a50: 20 20 20 20 20 20 20 20 20 20 20 20 27 54 72 65              'Tre
2a60: 65 56 69 65 77 27 20 20 20 20 20 20 3a 20 66 61  eView'      : fa
2a70: 6c 73 65 20 2f 2f 20 d0 93 d1 80 d1 83 d0 bf d0  lse // .........
2a80: bf d0 b8 d1 80 d0 be d0 b2 d0 b0 d1 82 d1 8c 20  ............... 
2a90: d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0 b0  ................
2aa0: d1 82 d1 8b 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0  .... ...........
2ab0: b0 20 d0 bf d0 be 20 d0 bc d0 b5 d1 82 d0 be d0  . .... .........
2ac0: b4 d0 b0 d0 bc 2e 20 20 20 20 20 20 20 20 20 20  ......          
2ad0: 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20    ..        }.. 
2ae0: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 63 6f 6e     },....    con
2af0: 73 74 72 75 63 74 20 3a 20 66 75 6e 63 74 69 6f  struct : functio
2b00: 6e 20 28 71 75 65 72 79 2c 20 69 6e 69 74 53 65  n (query, initSe
2b10: 61 72 63 68 41 72 65 61 29 20 7b 09 0d 0a 20 20  archArea) {...  
2b20: 20 20 20 20 20 20 74 68 69 73 2e 5f 73 75 70 65        this._supe
2b30: 72 28 22 73 63 72 69 70 74 73 5c 5c 65 78 74 53  r("scripts\\extS
2b40: 65 61 72 63 68 2e 73 73 66 22 29 3b 20 20 20 20  earch.ssf");    
2b50: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
2b60: 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e        this.form.
2b70: d0 9a d0 bb d1 8e d1 87 d0 a1 d0 be d1 85 d1 80  ................
2b80: d0 b0 d0 bd d0 b5 d0 bd d0 b8 d1 8f d0 9f d0 be  ................
2b90: d0 bb d0 be d0 b6 d0 b5 d0 bd d0 b8 d1 8f d0 9e  ................
2ba0: d0 ba d0 bd d0 b0 20 3d 20 22 65 78 74 53 65 61  ...... = "extSea
2bb0: 72 63 68 2e 64 69 61 6c 6f 67 2e 6a 73 22 0d 0a  rch.dialog.js"..
2bc0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 6c 6f 61          this.loa
2bd0: 64 53 65 74 74 69 6e 67 73 28 29 3b 0d 0a 09 09  dSettings();....
2be0: 74 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79 20  this.form.Query 
2bf0: 3d 20 71 75 65 72 79 3b 0d 0a 09 09 74 68 69 73  = query;....this
2c00: 2e 66 6f 72 6d 2e 53 65 61 72 63 68 41 72 65 61  .form.SearchArea
2c10: 20 3d 20 69 6e 69 74 53 65 61 72 63 68 41 72 65   = initSearchAre
2c20: 61 3b 09 09 0d 0a 09 7d 2c 0d 0a 09 0d 0a 09 67  a;.....},......g
2c30: 65 74 53 65 61 72 63 68 51 75 65 72 79 50 61 72  etSearchQueryPar
2c40: 61 6d 73 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29  ams: function ()
2c50: 20 7b 0d 0a 09 09 76 61 72 20 70 61 72 61 6d 73   {....var params
2c60: 20 3d 20 76 38 4e 65 77 28 27 53 74 72 75 63 74   = v8New('Struct
2c70: 75 72 65 27 29 3b 0d 0a 09 09 70 61 72 61 6d 73  ure');....params
2c80: 2e 49 6e 73 65 72 74 28 27 51 75 65 72 79 27 2c  .Insert('Query',
2c90: 20 09 09 09 74 68 69 73 2e 66 6f 72 6d 2e 51 75   ...this.form.Qu
2ca0: 65 72 79 29 3b 0d 0a 09 09 70 61 72 61 6d 73 2e  ery);....params.
2cb0: 49 6e 73 65 72 74 28 27 57 68 6f 6c 65 57 6f 72  Insert('WholeWor
2cc0: 64 73 27 2c 20 09 74 68 69 73 2e 66 6f 72 6d 2e  ds', .this.form.
2cd0: 57 68 6f 6c 65 57 6f 72 64 73 29 3b 0d 0a 09 09  WholeWords);....
2ce0: 70 61 72 61 6d 73 2e 49 6e 73 65 72 74 28 27 43  params.Insert('C
2cf0: 61 73 65 53 65 6e 73 65 74 69 76 65 27 2c 09 74  aseSensetive',.t
2d00: 68 69 73 2e 66 6f 72 6d 2e 43 61 73 65 53 65 6e  his.form.CaseSen
2d10: 73 65 74 69 76 65 29 3b 0d 0a 09 09 70 61 72 61  setive);....para
2d20: 6d 73 2e 49 6e 73 65 72 74 28 27 49 73 52 65 67  ms.Insert('IsReg
2d30: 45 78 70 27 2c 20 09 09 74 68 69 73 2e 66 6f 72  Exp', ..this.for
2d40: 6d 2e 49 73 52 65 67 45 78 70 29 3b 0d 0a 09 09  m.IsRegExp);....
2d50: 72 65 74 75 72 6e 20 70 61 72 61 6d 73 3b 0d 0a  return params;..
2d60: 09 7d 2c 0d 0a 09 0d 0a 09 67 65 74 53 65 61 72  .},......getSear
2d70: 63 68 41 72 65 61 3a 20 66 75 6e 63 74 69 6f 6e  chArea: function
2d80: 20 28 29 20 7b 0d 0a 09 09 72 65 74 75 72 6e 20   () {....return 
2d90: 74 68 69 73 2e 66 6f 72 6d 2e 53 65 61 72 63 68  this.form.Search
2da0: 41 72 65 61 3b 0d 0a 09 7d 2c 0d 0a 09 0d 0a 20  Area;...},..... 
2db0: 20 20 20 46 6f 72 6d 5f 4f 6e 43 6c 6f 73 65 20     Form_OnClose 
2dc0: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d  : function () {.
2dd0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 73 61  .        this.sa
2de0: 76 65 53 65 74 74 69 6e 67 73 28 29 3b 0d 0a 20  veSettings();.. 
2df0: 20 20 20 7d 2c 0d 0a 09 0d 0a 20 20 20 20 51 75     },.....    Qu
2e00: 65 72 79 5f 53 74 61 72 74 4c 69 73 74 43 68 6f  ery_StartListCho
2e10: 69 63 65 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  ice : function (
2e20: 63 6f 6e 74 72 6f 6c 2c 20 64 65 66 61 75 6c 74  control, default
2e30: 48 61 6e 64 6c 65 72 29 20 7b 0d 0a 20 20 20 20  Handler) {..    
2e40: 20 20 20 20 63 6f 6e 74 72 6f 6c 2e 76 61 6c 2e      control.val.
2e50: 43 68 6f 69 63 65 4c 69 73 74 20 3d 20 74 68 69  ChoiceList = thi
2e60: 73 2e 66 6f 72 6d 2e 53 65 61 72 63 68 48 69 73  s.form.SearchHis
2e70: 74 6f 72 79 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 09  tory;..    },...
2e80: 0d 0a 09 62 74 46 69 6e 64 5f 43 6c 69 63 6b 3a  ...btFind_Click:
2e90: 20 66 75 6e 63 74 69 6f 6e 20 28 62 74 6e 29 20   function (btn) 
2ea0: 7b 0d 0a 09 09 74 68 69 73 2e 63 6c 6f 73 65 28  {....this.close(
2eb0: 74 72 75 65 29 3b 0d 0a 09 7d 2c 0d 0a 09 0d 0a  true);...},.....
2ec0: 09 62 74 43 61 6e 63 65 6c 5f 43 6c 69 63 6b 3a  .btCancel_Click:
2ed0: 20 66 75 6e 63 74 69 6f 6e 20 28 62 74 6e 29 20   function (btn) 
2ee0: 7b 0d 0a 09 09 74 68 69 73 2e 63 6c 6f 73 65 28  {....this.close(
2ef0: 66 61 6c 73 65 29 3b 0d 0a 09 7d 2c 0d 0a 09 0d  false);...},....
2f00: 0a 20 20 20 20 49 73 52 65 67 45 78 70 5f 4f 6e  .    IsRegExp_On
2f10: 43 68 61 6e 67 65 20 3a 20 66 75 6e 63 74 69 6f  Change : functio
2f20: 6e 28 d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82  n(..............
2f30: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  ) {..        if 
2f40: 28 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52 65 67  (this.form.IsReg
2f50: 45 78 70 29 0d 0a 20 20 20 20 20 20 20 20 20 20  Exp)..          
2f60: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c    this.form.Whol
2f70: 65 57 6f 72 64 73 20 3d 20 66 61 6c 73 65 3b 0d  eWords = false;.
2f80: 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 57  .    },....    W
2f90: 68 6f 6c 65 57 6f 72 64 73 5f 4f 6e 43 68 61 6e  holeWords_OnChan
2fa0: 67 65 20 3a 20 66 75 6e 63 74 69 6f 6e 28 d0 ad  ge : function(..
2fb0: d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 29 20 7b 0d  ............) {.
2fc0: 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69  .        if (thi
2fd0: 73 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f 72 64  s.form.WholeWord
2fe0: 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  s)..            
2ff0: 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52 65 67 45  this.form.IsRegE
3000: 78 70 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20  xp = false;..   
3010: 20 7d 0d 0a 7d 29 3b 20 2f 2f 20 65 6e 64 20 6f   }..}); // end o
3020: 66 20 45 78 74 53 65 61 72 63 68 44 69 61 6c 6f  f ExtSearchDialo
3030: 67 0d 0a 0d 0a 45 78 74 53 65 61 72 63 68 20 3d  g....ExtSearch =
3040: 20 53 63 72 69 70 74 46 6f 72 6d 2e 65 78 74 65   ScriptForm.exte
3050: 6e 64 28 7b 0d 0a 0d 0a 20 20 20 20 73 65 74 74  nd({....    sett
3060: 69 6e 67 73 52 6f 6f 74 50 61 74 68 20 3a 20 53  ingsRootPath : S
3070: 65 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65  elfScript.unique
3080: 4e 61 6d 65 2c 0d 0a 20 20 20 20 0d 0a 20 20 20  Name,..    ..   
3090: 20 73 65 74 74 69 6e 67 73 20 3a 20 7b 0d 0a 20   settings : {.. 
30a0: 20 20 20 20 20 20 20 70 66 6c 53 6e 65 67 6f 70         pflSnegop
30b0: 61 74 20 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20  at : {..        
30c0: 20 20 20 20 27 49 73 52 65 67 45 78 70 27 20 20      'IsRegExp'  
30d0: 20 20 20 20 3a 20 66 61 6c 73 65 2c 20 2f 2f 20      : false, // 
30e0: d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 80 d0 b5 d0  .......... .....
30f0: b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b d0 bc d0  ................
3100: b8 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd  . ..............
3110: d0 b8 d1 8f d0 bc d0 b8 2e 0d 0a 20 20 20 20 20  ...........     
3120: 20 20 20 20 20 20 20 27 43 61 73 65 53 65 6e 73         'CaseSens
3130: 65 74 69 76 65 27 20 3a 20 66 61 6c 73 65 2c 20  etive' : false, 
3140: 2f 2f 20 d0 a3 d1 87 d0 b8 d1 82 d1 8b d0 b2 d0  // .............
3150: b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b3 d0 b8 d1 81  ..... ..........
3160: d1 82 d1 80 20 d0 bf d1 80 d0 b8 20 d0 bf d0 be  .... ...... ....
3170: d0 b8 d1 81 d0 ba d0 b5 2e 0d 0a 20 20 20 20 20  ...........     
3180: 20 20 20 20 20 20 20 27 57 68 6f 6c 65 57 6f 72         'WholeWor
3190: 64 73 27 20 20 20 20 3a 20 66 61 6c 73 65 2c 20  ds'    : false, 
31a0: 2f 2f 20 d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 81  // .......... ..
31b0: d0 bb d0 be d0 b2 d0 b0 20 d1 86 d0 b5 d0 bb d0  ........ .......
31c0: b8 d0 ba d0 be d0 bc 2e 0d 0a 20 20 20 20 20 20  ..........      
31d0: 20 20 20 20 20 20 27 53 65 61 72 63 68 48 69 73        'SearchHis
31e0: 74 6f 72 79 27 20 3a 20 76 38 4e 65 77 28 27 56  tory' : v8New('V
31f0: 61 6c 75 65 4c 69 73 74 27 29 2c 20 2f 2f 20 d0  alueList'), // .
3200: 98 d1 81 d1 82 d0 be d1 80 d0 b8 d1 8f 20 d0 bf  ............. ..
3210: d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20  .............   
3220: 20 20 20 20 20 20 20 20 20 27 48 69 73 74 6f 72           'Histor
3230: 79 44 65 70 74 68 27 20 20 3a 20 31 35 2c 20 2f  yDepth'  : 15, /
3240: 2f 20 d0 9a d0 be d0 bb d0 b8 d1 87 d0 b5 d1 81  / ..............
3250: d1 82 d0 b2 d0 be 20 d1 8d d0 bb d0 b5 d0 bc d0  ...... .........
3260: b5 d0 bd d1 82 d0 be d0 b2 20 d0 b8 d1 81 d1 82  ......... ......
3270: d0 be d1 80 d0 b8 d0 b8 20 d0 bf d0 be d0 b8 d1  ........ .......
3280: 81 d0 ba d0 b0 2e 0d 0a 20 20 20 20 20 20 20 20  ........        
3290: 20 20 20 20 27 54 72 65 65 56 69 65 77 27 20 20      'TreeView'  
32a0: 20 20 20 20 3a 20 66 61 6c 73 65 20 2f 2f 20 d0      : false // .
32b0: 93 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0  ................
32c0: b2 d0 b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b7 d1 83  ....... ........
32d0: d0 bb d1 8c d1 82 d0 b0 d1 82 d1 8b 20 d0 bf d0  ............ ...
32e0: be d0 b8 d1 81 d0 ba d0 b0 20 d0 bf d0 be 20 d0  ......... .... .
32f0: bc d0 b5 d1 82 d0 be d0 b4 d0 b0 d0 bc 2e 20 20  ..............  
3300: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
3310: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 0d      }..    },...
3320: 0a 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a  .    construct :
3330: 20 66 75 6e 63 74 69 6f 6e 20 28 69 73 45 78 74   function (isExt
3340: 65 6e 64 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  end) {..        
3350: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 69 73  ..        if (is
3360: 45 78 74 65 6e 64 20 3d 3d 20 75 6e 64 65 66 69  Extend == undefi
3370: 6e 65 64 29 20 69 73 45 78 74 65 6e 64 20 3d 20  ned) isExtend = 
3380: 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20  false;..        
3390: 74 68 69 73 2e 5f 73 75 70 65 72 28 22 73 63 72  this._super("scr
33a0: 69 70 74 73 5c 5c 65 78 74 53 65 61 72 63 68 2e  ipts\\extSearch.
33b0: 72 65 73 75 6c 74 73 2e 73 73 66 22 29 3b 0d 0a  results.ssf");..
33c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
33d0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 66  ..        this.f
33e0: 6f 72 6d 2e d0 9a d0 bb d1 8e d1 87 d0 a1 d0 be  orm.............
33f0: d1 85 d1 80 d0 b0 d0 bd d0 b5 d0 bd d0 b8 d1 8f  ................
3400: d0 9f d0 be d0 bb d0 be d0 b6 d0 b5 d0 bd d0 b8  ................
3410: d1 8f d0 9e d0 ba d0 bd d0 b0 20 3d 20 22 65 78  .......... = "ex
3420: 74 53 65 61 72 63 68 2e 6a 73 22 0d 0a 20 20 20  tSearch.js"..   
3430: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
3440: 73 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f  s = this.form.Co
3450: 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73  ntrols.SearchRes
3460: 75 6c 74 73 2e 56 61 6c 75 65 3b 0d 0a 20 20 20  ults.Value;..   
3470: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
3480: 73 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 5f  s.Columns.Add('_
3490: 6d 65 74 68 6f 64 27 29 3b 0d 0a 20 20 20 20 20  method');..     
34a0: 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e     this.results.
34b0: 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 67 72 6f  Columns.Add('gro
34c0: 75 70 73 43 61 63 68 65 27 29 3b 0d 0a 20 20 20  upsCache');..   
34d0: 20 20 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74       this.result
34e0: 73 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 5f  s.Columns.Add('_
34f0: 6f 62 6a 65 63 74 27 29 3b 0d 0a 20 20 20 20 20  object');..     
3500: 20 20 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e     this.results.
3510: 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 27 5f 6d 61  Columns.Add('_ma
3520: 74 63 68 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  tch');..        
3530: 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 43 6f 6c  this.results.Col
3540: 75 6d 6e 73 2e 41 64 64 28 27 53 6f 72 74 4d 65  umns.Add('SortMe
3550: 74 61 64 61 74 61 27 29 3b 0d 0a 20 20 20 20 20  tadata');..     
3560: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
3570: 73 2e 77 61 74 63 68 65 72 20 3d 20 6e 65 77 20  s.watcher = new 
3580: 54 65 78 74 57 69 6e 64 6f 77 73 57 61 74 63 68  TextWindowsWatch
3590: 65 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 74  er();..        t
35a0: 68 69 73 2e 77 61 74 63 68 65 72 2e 73 74 61 72  his.watcher.star
35b0: 74 57 61 74 63 68 28 29 3b 0d 0a 20 20 20 20 20  tWatch();..     
35c0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74       ..        t
35d0: 68 69 73 2e 6c 6f 61 64 53 65 74 74 69 6e 67 73  his.loadSettings
35e0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ();..        .. 
35f0: 20 20 20 20 20 20 20 74 68 69 73 2e 74 61 72 67         this.targ
3600: 65 74 57 69 6e 64 6f 77 20 3d 20 6e 75 6c 6c 3b  etWindow = null;
3610: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
3620: 20 20 20 20 74 68 69 73 2e 49 63 6f 6e 73 20 3d      this.Icons =
3630: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
3640: 27 46 75 6e 63 27 3a 20 74 68 69 73 2e 66 6f 72  'Func': this.for
3650: 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 50 69 63 46 75  m.Controls.PicFu
3660: 6e 63 2e 50 69 63 74 75 72 65 2c 0d 0a 20 20 20  nc.Picture,..   
3670: 20 20 20 20 20 20 20 20 20 27 50 72 6f 63 27 3a           'Proc':
3680: 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72   this.form.Contr
3690: 6f 6c 73 2e 50 69 63 50 72 6f 63 2e 50 69 63 74  ols.PicProc.Pict
36a0: 75 72 65 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  ure..        }..
36b0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
36c0: 20 20 74 68 69 73 2e 53 65 61 72 63 68 44 6f 63    this.SearchDoc
36d0: 52 6f 77 46 6f 6e 74 20 3d 20 76 38 4e 65 77 28  RowFont = v8New(
36e0: 27 46 6f 6e 74 27 2c 20 75 6e 64 65 66 69 6e 65  'Font', undefine
36f0: 64 2c 20 75 6e 64 65 66 69 6e 65 64 2c 20 74 72  d, undefined, tr
3700: 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  ue);..        th
3710: 69 73 2e 69 73 47 6c 6f 62 61 6c 46 69 6e 64 20  is.isGlobalFind 
3720: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20  = false;..      
3730: 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73    ..        this
3740: 2e 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69  .SetControlsVisi
3750: 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  ble();..        
3760: 69 66 20 28 21 69 73 45 78 74 65 6e 64 29 20 45  if (!isExtend) E
3770: 78 74 53 65 61 72 63 68 2e 5f 69 6e 73 74 61 6e  xtSearch._instan
3780: 63 65 20 3d 20 74 68 69 73 3b 0d 0a 20 20 20 20  ce = this;..    
3790: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a  ..    },..    ..
37a0: 20 20 20 20 73 65 74 53 69 6d 70 6c 65 51 75 65      setSimpleQue
37b0: 72 79 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 71  ry : function (q
37c0: 75 65 72 79 29 20 7b 0d 0a 20 20 20 20 20 20 20  uery) {..       
37d0: 20 74 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79   this.form.Query
37e0: 20 3d 20 71 75 65 72 79 3b 0d 0a 20 20 20 20 20   = query;..     
37f0: 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52     this.form.IsR
3800: 65 67 45 78 70 20 3d 20 66 61 6c 73 65 3b 0d 0a  egExp = false;..
3810: 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72          this.for
3820: 6d 2e 43 61 73 65 53 65 6e 73 65 74 69 76 65 20  m.CaseSensetive 
3830: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20  = false;..      
3840: 20 20 74 68 69 73 2e 61 64 64 54 6f 48 69 73 74    this.addToHist
3850: 6f 72 79 28 71 75 65 72 79 29 3b 0d 0a 20 20 20  ory(query);..   
3860: 20 7d 2c 0d 0a 09 0d 0a 09 73 65 74 51 75 65 72   },......setQuer
3870: 79 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 73 65  y : function (se
3880: 61 72 63 68 51 75 65 72 79 50 61 72 61 6d 73 29  archQueryParams)
3890: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
38a0: 2e 66 6f 72 6d 2e 51 75 65 72 79 20 09 09 3d 20  .form.Query ..= 
38b0: 73 65 61 72 63 68 51 75 65 72 79 50 61 72 61 6d  searchQueryParam
38c0: 73 2e 51 75 65 72 79 3b 0d 0a 20 20 20 20 20 20  s.Query;..      
38d0: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52 65    this.form.IsRe
38e0: 67 45 78 70 20 09 09 3d 20 73 65 61 72 63 68 51  gExp ..= searchQ
38f0: 75 65 72 79 50 61 72 61 6d 73 2e 49 73 52 65 67  ueryParams.IsReg
3900: 45 78 70 3b 0d 0a 20 20 20 20 20 20 20 20 74 68  Exp;..        th
3910: 69 73 2e 66 6f 72 6d 2e 43 61 73 65 53 65 6e 73  is.form.CaseSens
3920: 65 74 69 76 65 20 3d 20 73 65 61 72 63 68 51 75  etive = searchQu
3930: 65 72 79 50 61 72 61 6d 73 2e 43 61 73 65 53 65  eryParams.CaseSe
3940: 6e 73 65 74 69 76 65 3b 0d 0a 09 09 74 68 69 73  nsetive;....this
3950: 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f 72 64 73  .form.WholeWords
3960: 09 3d 20 73 65 61 72 63 68 51 75 65 72 79 50 61  .= searchQueryPa
3970: 72 61 6d 73 2e 57 68 6f 6c 65 57 6f 72 64 73 3b  rams.WholeWords;
3980: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 61  ..        this.a
3990: 64 64 54 6f 48 69 73 74 6f 72 79 28 74 68 69 73  ddToHistory(this
39a0: 2e 66 6f 72 6d 2e 51 75 65 72 79 29 3b 0d 0a 20  .form.Query);.. 
39b0: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 65 78 70     },....    exp
39c0: 61 6e 64 54 72 65 65 20 3a 20 66 75 6e 63 74 69  andTree : functi
39d0: 6f 6e 20 28 63 6f 6c 6c 61 70 73 65 29 20 7b 0d  on (collapse) {.
39e0: 0a 20 20 20 20 20 20 20 20 76 61 72 20 74 72 65  .        var tre
39f0: 65 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f  e = this.form.Co
3a00: 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73  ntrols.SearchRes
3a10: 75 6c 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 66  ults;..        f
3a20: 6f 72 20 28 76 61 72 20 69 3d 30 3b 20 69 20 3c  or (var i=0; i <
3a30: 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f   this.results.Ro
3a40: 77 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b 2b 29  ws.Count(); i++)
3a50: 0d 0a 20 20 20 20 20 20 20 20 7b 20 20 20 20 20  ..        {     
3a60: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
3a70: 20 76 61 72 20 64 6f 63 52 6f 77 20 3d 20 74 68   var docRow = th
3a80: 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e  is.results.Rows.
3a90: 47 65 74 28 69 29 3b 0d 0a 20 20 20 20 20 20 20  Get(i);..       
3aa0: 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f       if (this.fo
3ab0: 72 6d 2e 54 72 65 65 56 69 65 77 29 0d 0a 20 20  rm.TreeView)..  
3ac0: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
3ad0: 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72               for
3ae0: 20 28 76 61 72 20 6a 3d 30 3b 20 6a 20 3c 20 64   (var j=0; j < d
3af0: 6f 63 52 6f 77 2e 52 6f 77 73 2e 43 6f 75 6e 74  ocRow.Rows.Count
3b00: 28 29 3b 20 6a 2b 2b 29 0d 0a 20 20 20 20 20 20  (); j++)..      
3b10: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
3b20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3b30: 20 76 61 72 20 72 6f 77 20 3d 20 64 6f 63 52 6f   var row = docRo
3b40: 77 2e 52 6f 77 73 2e 47 65 74 28 6a 29 3b 0d 0a  w.Rows.Get(j);..
3b50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3b60: 20 20 20 20 63 6f 6c 6c 61 70 73 65 20 3f 20 74      collapse ? t
3b70: 72 65 65 2e 43 6f 6c 6c 61 70 73 65 28 72 6f 77  ree.Collapse(row
3b80: 29 20 3a 20 74 72 65 65 2e 45 78 70 61 6e 64 28  ) : tree.Expand(
3b90: 72 6f 77 2c 20 74 72 75 65 29 3b 0d 0a 20 20 20  row, true);..   
3ba0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
3bb0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
3bc0: 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d             else.
3bd0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a  .            {..
3be0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3bf0: 63 6f 6c 6c 61 70 73 65 20 3f 20 74 72 65 65 2e  collapse ? tree.
3c00: 43 6f 6c 6c 61 70 73 65 28 64 6f 63 52 6f 77 29  Collapse(docRow)
3c10: 20 3a 20 74 72 65 65 2e 45 78 70 61 6e 64 28 64   : tree.Expand(d
3c20: 6f 63 52 6f 77 2c 20 74 72 75 65 29 3b 20 20 20  ocRow, true);   
3c30: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
3c40: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
3c50: 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20    }..    },..   
3c60: 20 20 20 20 20 0d 0a 20 20 20 20 67 65 74 57 69       ..    getWi
3c70: 6e 64 6f 77 4f 62 6a 65 63 74 20 3a 20 66 75 6e  ndowObject : fun
3c80: 63 74 69 6f 6e 20 28 76 69 65 77 29 20 7b 0d 0a  ction (view) {..
3c90: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
3ca0: 20 69 66 20 28 76 69 65 77 2e 6d 64 4f 62 6a 20   if (view.mdObj 
3cb0: 26 26 20 76 69 65 77 2e 6d 64 50 72 6f 70 29 20  && view.mdProp) 
3cc0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65  ..            re
3cd0: 74 75 72 6e 20 6e 65 77 20 4d 64 4f 62 6a 65 63  turn new MdObjec
3ce0: 74 28 76 69 65 77 2e 6d 64 4f 62 6a 2c 20 76 69  t(view.mdObj, vi
3cf0: 65 77 2e 6d 64 50 72 6f 70 2c 20 76 69 65 77 2e  ew.mdProp, view.
3d00: 74 69 74 6c 65 29 3b 0d 0a 20 20 20 20 20 20 20  title);..       
3d10: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76       ..        v
3d20: 61 72 20 6f 62 6a 20 3d 20 76 69 65 77 2e 67 65  ar obj = view.ge
3d30: 74 4f 62 6a 65 63 74 28 29 3b 0d 0a 20 20 20 20  tObject();..    
3d40: 20 20 20 20 69 66 20 28 6f 62 6a 20 26 26 20 74      if (obj && t
3d50: 6f 56 38 56 61 6c 75 65 28 6f 62 6a 29 2e 74 79  oV8Value(obj).ty
3d60: 70 65 4e 61 6d 65 28 30 29 20 3d 3d 20 27 54 65  peName(0) == 'Te
3d70: 78 74 44 6f 63 75 6d 65 6e 74 27 29 0d 0a 20 20  xtDocument')..  
3d80: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e            return
3d90: 20 6e 65 77 20 54 65 78 74 44 6f 63 4f 62 6a 65   new TextDocObje
3da0: 63 74 28 6f 62 6a 2c 20 76 69 65 77 2e 74 69 74  ct(obj, view.tit
3db0: 6c 65 29 3b 20 20 20 20 20 20 20 20 0d 0a 20 20  le);        ..  
3dc0: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
3dd0: 20 20 20 20 69 66 20 28 6f 62 6a 29 20 4d 65 73      if (obj) Mes
3de0: 73 61 67 65 28 27 d0 9d d0 b5 d0 bf d0 be d0 b4  sage('..........
3df0: d0 b4 d0 b5 d1 80 d0 b6 d0 b8 d0 b2 d0 b0 d0 b5  ................
3e00: d0 bc d1 8b d0 b9 20 d1 82 d0 b8 d0 bf 20 d0 be  ...... ...... ..
3e10: d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 b0 20 d0 b4 d0  ............ ...
3e20: bb d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0 b0  ... ............
3e30: 3a 20 27 20 2b 20 74 6f 56 38 56 61 6c 75 65 28  : ' + toV8Value(
3e40: 6f 62 6a 29 2e 74 79 70 65 4e 61 6d 65 28 30 29  obj).typeName(0)
3e50: 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  );..        ..  
3e60: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c        return nul
3e70: 6c 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20  l;..    },..    
3e80: 0d 0a 20 20 20 20 73 65 61 72 63 68 4f 70 65 6e  ..    searchOpen
3e90: 65 64 57 69 6e 64 6f 77 73 3a 20 66 75 6e 63 74  edWindows: funct
3ea0: 69 6f 6e 20 28 66 72 6f 6d 48 6f 74 4b 65 79 29  ion (fromHotKey)
3eb0: 20 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 61   {....        va
3ec0: 72 20 61 63 74 69 76 65 57 69 6e 64 6f 77 20 3d  r activeWindow =
3ed0: 20 74 68 69 73 2e 77 61 74 63 68 65 72 2e 67 65   this.watcher.ge
3ee0: 74 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f  tActiveTextWindo
3ef0: 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 69 66  w();..        if
3f00: 20 28 21 61 63 74 69 76 65 57 69 6e 64 6f 77 29   (!activeWindow)
3f10: 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20   return;..      
3f20: 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20    ..        var 
3f30: 61 63 74 69 76 65 56 69 65 77 20 3d 20 61 63 74  activeView = act
3f40: 69 76 65 57 69 6e 64 6f 77 2e 47 65 74 56 69 65  iveWindow.GetVie
3f50: 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 69 66  w();..        if
3f60: 20 28 21 61 63 74 69 76 65 56 69 65 77 29 20 72   (!activeView) r
3f70: 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20  eturn;....      
3f80: 20 20 74 68 69 73 2e 63 6c 65 61 72 53 65 61 72    this.clearSear
3f90: 63 68 52 65 73 75 6c 74 73 28 29 3b 0d 0a 20 20  chResults();..  
3fa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3fb0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69     ..        thi
3fc0: 73 2e 72 65 20 3d 20 74 68 69 73 2e 62 75 69 6c  s.re = this.buil
3fd0: 64 53 65 61 72 63 68 52 65 67 45 78 70 4f 62 6a  dSearchRegExpObj
3fe0: 65 63 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  ect();..        
3ff0: 69 66 20 28 21 74 68 69 73 2e 72 65 29 20 72 65  if (!this.re) re
4000: 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 0d  turn;..        .
4010: 0a 20 20 20 20 20 20 20 20 76 61 72 20 61 63 74  .        var act
4020: 69 76 65 57 6e 64 52 65 73 52 6f 77 20 3d 20 6e  iveWndResRow = n
4030: 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  ull;..        ..
4040: 20 20 20 20 20 20 20 20 76 61 72 20 65 73 20 3d          var es =
4050: 20 74 68 69 73 3b 0d 0a 20 20 20 20 20 20 20 20   this;..        
4060: 28 66 75 6e 63 74 69 6f 6e 20 28 76 69 65 77 73  (function (views
4070: 29 20 7b 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ) {        ..   
4080: 20 20 20 20 20 20 20 20 20 66 6f 72 28 76 61 72           for(var
4090: 20 69 20 3d 20 30 3b 20 69 20 3c 20 76 69 65 77   i = 0; i < view
40a0: 73 2e 63 6f 75 6e 74 3b 20 69 2b 2b 29 20 0d 0a  s.count; i++) ..
40b0: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
40c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
40d0: 61 72 20 76 20 3d 20 76 69 65 77 73 2e 69 74 65  ar v = views.ite
40e0: 6d 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  m(i);..         
40f0: 20 20 20 20 20 20 20 69 66 28 76 2e 69 73 43 6f         if(v.isCo
4100: 6e 74 61 69 6e 65 72 20 21 3d 20 76 63 74 4e 6f  ntainer != vctNo
4110: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
4120: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
4130: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 95 d1            // ...
4140: 81 d0 bb d0 b8 20 d0 be d0 ba d0 bd d0 be 20 2d  ..... ........ -
4150: 20 d0 ba d0 be d0 bd d1 82 d0 b5 d0 b9 d0 bd d0   ...............
4160: b5 d1 80 2c 20 d1 82 d0 be 20 d0 be d0 b1 d1 85  ..., .... ......
4170: d0 be d0 b4 d0 b8 d0 bc 20 d1 80 d0 b5 d0 ba d1  ........ .......
4180: 83 d1 80 d1 81 d0 b8 d0 b2 d0 bd d0 be 20 d0 b5  ............. ..
4190: d0 b3 d0 be 20 d0 bf d0 be d1 82 d0 be d0 bc d0  .... ...........
41a0: ba d0 be d0 b2 2e 0d 0a 20 20 20 20 20 20 20 20  ........        
41b0: 20 20 20 20 20 20 20 20 20 20 20 20 61 72 67 75              argu
41c0: 6d 65 6e 74 73 2e 63 61 6c 6c 65 65 28 76 2e 65  ments.callee(v.e
41d0: 6e 75 6d 43 68 69 6c 64 73 28 29 29 3b 0d 0a 20  numChilds());.. 
41e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
41f0: 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20     continue;..  
4200: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d                }.
4210: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4230: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
4240: 20 20 20 76 61 72 20 6f 62 6a 20 3d 20 65 73 2e     var obj = es.
4250: 67 65 74 57 69 6e 64 6f 77 4f 62 6a 65 63 74 28  getWindowObject(
4260: 76 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  v);..           
4270: 20 20 20 20 20 69 66 20 28 21 6f 62 6a 29 20 63       if (!obj) c
4280: 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20 20 20 20  ontinue;..      
4290: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
42a0: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
42b0: 64 6f 63 52 6f 77 20 3d 20 65 73 2e 73 65 61 72  docRow = es.sear
42c0: 63 68 28 6f 62 6a 2c 20 65 73 2e 72 65 29 3b 0d  ch(obj, es.re);.
42d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
42e0: 20 69 66 20 28 76 20 3d 3d 20 61 63 74 69 76 65   if (v == active
42f0: 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20 20 20  View)..         
4300: 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 76             activ
4310: 65 57 6e 64 52 65 73 52 6f 77 20 3d 20 64 6f 63  eWndResRow = doc
4320: 52 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  Row;..          
4330: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 29 28    }..        })(
4340: 77 69 6e 64 6f 77 73 2e 6d 64 69 56 69 65 77 2e  windows.mdiView.
4350: 65 6e 75 6d 43 68 69 6c 64 73 28 29 29 3b 0d 0a  enumChilds());..
4360: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
4370: 20 20 74 68 69 73 2e 73 68 6f 77 53 65 61 72 63    this.showSearc
4380: 68 52 65 73 75 6c 74 28 61 63 74 69 76 65 57 6e  hResult(activeWn
4390: 64 52 65 73 52 6f 77 2c 20 66 72 6f 6d 48 6f 74  dResRow, fromHot
43a0: 4b 65 79 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  Key);..    },...
43b0: 0a 20 20 20 20 73 65 61 72 63 68 41 63 74 69 76  .    searchActiv
43c0: 65 44 6f 63 20 3a 20 66 75 6e 63 74 69 6f 6e 20  eDoc : function 
43d0: 28 66 72 6f 6d 48 6f 74 4b 65 79 29 20 7b 0d 0a  (fromHotKey) {..
43e0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
43f0: 20 20 74 68 69 73 2e 63 6c 65 61 72 53 65 61 72    this.clearSear
4400: 63 68 52 65 73 75 6c 74 73 28 29 3b 0d 0a 20 20  chResults();..  
4410: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
4420: 76 61 72 20 61 63 74 69 76 65 57 69 6e 64 6f 77  var activeWindow
4430: 20 3d 20 74 68 69 73 2e 77 61 74 63 68 65 72 2e   = this.watcher.
4440: 67 65 74 41 63 74 69 76 65 54 65 78 74 57 69 6e  getActiveTextWin
4450: 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  dow();..        
4460: 69 66 20 28 21 61 63 74 69 76 65 57 69 6e 64 6f  if (!activeWindo
4470: 77 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20  w) return;..    
4480: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
4490: 20 20 20 74 68 69 73 2e 72 65 20 3d 20 74 68 69     this.re = thi
44a0: 73 2e 62 75 69 6c 64 53 65 61 72 63 68 52 65 67  s.buildSearchReg
44b0: 45 78 70 4f 62 6a 65 63 74 28 29 3b 0d 0a 20 20  ExpObject();..  
44c0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e        if (!this.
44d0: 72 65 29 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20  re) return;.... 
44e0: 20 20 20 20 20 20 20 76 61 72 20 6f 62 6a 20 3d         var obj =
44f0: 20 74 68 69 73 2e 67 65 74 57 69 6e 64 6f 77 4f   this.getWindowO
4500: 62 6a 65 63 74 28 61 63 74 69 76 65 57 69 6e 64  bject(activeWind
4510: 6f 77 2e 47 65 74 56 69 65 77 28 29 29 3b 0d 0a  ow.GetView());..
4520: 20 20 20 20 20 20 20 20 69 66 20 28 21 6f 62 6a          if (!obj
4530: 29 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20  ) return;..     
4540: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72     ..        var
4550: 20 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 73   docRow = this.s
4560: 65 61 72 63 68 28 6f 62 6a 2c 20 74 68 69 73 2e  earch(obj, this.
4570: 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  re);..        ..
4580: 20 20 20 20 20 20 20 20 74 68 69 73 2e 73 68 6f          this.sho
4590: 77 53 65 61 72 63 68 52 65 73 75 6c 74 28 64 6f  wSearchResult(do
45a0: 63 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79  cRow, fromHotKey
45b0: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20  );..    },....  
45c0: 20 20 62 75 69 6c 64 53 65 61 72 63 68 52 65 67    buildSearchReg
45d0: 45 78 70 4f 62 6a 65 63 74 20 3a 20 66 75 6e 63  ExpObject : func
45e0: 74 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 0d  tion () {..    .
45f0: 0a 20 20 20 20 20 20 20 20 76 61 72 20 70 61 74  .        var pat
4600: 74 65 72 6e 20 3d 20 74 68 69 73 2e 66 6f 72 6d  tern = this.form
4610: 2e 51 75 65 72 79 3b 0d 0a 20 20 20 20 20 20 20  .Query;..       
4620: 20 76 61 72 20 72 65 46 6c 61 67 73 20 3d 20 27   var reFlags = '
4630: 27 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  ';..        ..  
4640: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e        if (!this.
4650: 66 6f 72 6d 2e 49 73 52 65 67 45 78 70 29 20 0d  form.IsRegExp) .
4660: 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20  .        {..    
4670: 20 20 20 20 20 20 20 20 70 61 74 74 65 72 6e 20          pattern 
4680: 3d 20 53 74 72 69 6e 67 55 74 69 6c 73 2e 61 64  = StringUtils.ad
4690: 64 53 6c 61 73 68 65 73 28 70 61 74 74 65 72 6e  dSlashes(pattern
46a0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
46b0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
46c0: 20 28 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c   (this.form.Whol
46d0: 65 57 6f 72 64 73 29 0d 0a 20 20 20 20 20 20 20  eWords)..       
46e0: 20 20 20 20 20 20 20 20 20 70 61 74 74 65 72 6e           pattern
46f0: 20 3d 20 22 28 5b 5e 5c 5c 77 5c 5c 64 d0 90 2d   = "([^\\w\\d..-
4700: d1 8f 5d 7c 5e 29 22 20 2b 20 70 61 74 74 65 72  ..]|^)" + patter
4710: 6e 20 2b 20 22 28 5b 5e 5c 5c 77 5c 5c 64 d0 90  n + "([^\\w\\d..
4720: 2d d1 8f 5d 7c 24 29 22 3b 0d 0a 20 20 20 20 20  -..]|$)";..     
4730: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 65 6c     }..        el
4740: 73 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20  se..        {.. 
4750: 20 20 20 20 20 20 20 20 20 20 20 69 66 28 70 61             if(pa
4760: 74 74 65 72 6e 2e 72 65 70 6c 61 63 65 28 22 5c  ttern.replace("\
4770: 5c 5c 5c 22 2c 20 22 22 29 2e 73 65 61 72 63 68  \\\", "").search
4780: 28 2f 5c 5c 72 7c 5c 5c 6e 2f 29 20 21 3d 20 2d  (/\\r|\\n/) != -
4790: 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  1)..            
47a0: 20 20 20 20 72 65 46 6c 61 67 73 20 3d 20 27 67      reFlags = 'g
47b0: 6d 27 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  m';..        }..
47c0: 20 20 20 20 20 20 20 20 69 66 28 21 74 68 69 73          if(!this
47d0: 2e 66 6f 72 6d 2e 43 61 73 65 53 65 6e 73 65 74  .form.CaseSenset
47e0: 69 76 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20  ive)..          
47f0: 20 20 72 65 46 6c 61 67 73 20 2b 3d 20 27 69 27    reFlags += 'i'
4800: 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  ;..        ..   
4810: 20 20 20 20 20 76 61 72 20 72 65 20 3d 20 6e 75       var re = nu
4820: 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ll;..        .. 
4830: 20 20 20 20 20 20 20 74 72 79 20 0d 0a 20 20 20         try ..   
4840: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
4850: 20 20 20 20 72 65 20 3d 20 6e 65 77 20 52 65 67      re = new Reg
4860: 45 78 70 28 70 61 74 74 65 72 6e 2c 20 72 65 46  Exp(pattern, reF
4870: 6c 61 67 73 29 3b 0d 0a 20 20 20 20 20 20 20 20  lags);..        
4880: 7d 0d 0a 20 20 20 20 20 20 20 20 63 61 74 63 68  }..        catch
4890: 20 28 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d   (e)..        {.
48a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 6f 4d  .            DoM
48b0: 65 73 73 61 67 65 42 6f 78 28 22 d0 92 20 d1 80  essageBox(".. ..
48c0: d0 b5 d0 b3 d1 83 d0 bb d1 8f d1 80 d0 bd d0 be  ................
48d0: d0 bc 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0  .. .............
48e0: bd d0 b8 d0 b8 20 d0 b4 d0 be d0 bf d1 83 d1 89  ..... ..........
48f0: d0 b5 d0 bd d0 b0 20 d0 be d1 88 d0 b8 d0 b1 d0  ...... .........
4900: ba d0 b0 3a 20 5c 6e 22 20 2b 20 65 2e 6d 65 73  ...: \n" + e.mes
4910: 73 61 67 65 29 3b 0d 0a 20 20 20 20 20 20 20 20  sage);..        
4920: 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b      return null;
4930: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
4940: 20 0d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72   ..        retur
4950: 6e 20 72 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20  n re;..    },.. 
4960: 20 20 20 0d 0a 20 20 20 20 73 65 61 72 63 68 20     ..    search 
4970: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 6f 62 6a 2c  : function (obj,
4980: 20 72 65 29 20 7b 0d 0a 20 20 20 20 20 20 20 20   re) {..        
4990: 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20    ..        var 
49a0: 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 72 65  docRow = this.re
49b0: 73 75 6c 74 73 2e 52 6f 77 73 2e 41 64 64 28 29  sults.Rows.Add()
49c0: 3b 0d 0a 20 20 20 20 20 20 20 20 64 6f 63 52 6f  ;..        docRo
49d0: 77 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 20 6f 62  w.FoundLine = ob
49e0: 6a 2e 67 65 74 54 69 74 6c 65 28 29 3b 0d 0a 20  j.getTitle();.. 
49f0: 20 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 5f 6f         docRow._o
4a00: 62 6a 65 63 74 20 3d 20 6f 62 6a 3b 0d 0a 20 20  bject = obj;..  
4a10: 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 52 6f 77        docRow.Row
4a20: 54 79 70 65 20 3d 20 52 6f 77 54 79 70 65 73 2e  Type = RowTypes.
4a30: 53 65 61 72 63 68 44 6f 63 3b 0d 0a 20 20 20 20  SearchDoc;..    
4a40: 20 20 20 20 69 66 20 28 21 6f 62 6a 2e 73 6f 72      if (!obj.sor
4a50: 74 29 20 6f 62 6a 2e 73 6f 72 74 20 3d 20 39 39  t) obj.sort = 99
4a60: 39 3b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  9;..        var 
4a70: 73 74 72 53 6f 72 74 20 3d 20 22 30 30 30 30 30  strSort = "00000
4a80: 30 30 30 30 30 22 2b 28 6f 62 6a 2e 73 6f 72 74  00000"+(obj.sort
4a90: 20 2b 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e   + this.results.
4aa0: 52 6f 77 73 2e 43 6f 75 6e 74 28 29 29 3b 0d 0a  Rows.Count());..
4ab0: 20 20 20 20 20 20 20 20 73 74 72 53 6f 72 74 20          strSort 
4ac0: 3d 20 73 74 72 53 6f 72 74 2e 73 75 62 73 74 72  = strSort.substr
4ad0: 28 73 74 72 53 6f 72 74 2e 6c 65 6e 67 74 68 2d  (strSort.length-
4ae0: 31 30 29 3b 0d 0a 20 20 20 20 20 20 20 20 64 6f  10);..        do
4af0: 63 52 6f 77 2e 53 6f 72 74 4d 65 74 61 64 61 74  cRow.SortMetadat
4b00: 61 20 3d 20 73 74 72 53 6f 72 74 3b 0d 0a 0d 0a  a = strSort;....
4b10: 20 20 20 20 20 20 20 20 64 6f 63 52 6f 77 2e 67          docRow.g
4b20: 72 6f 75 70 73 43 61 63 68 65 20 3d 20 76 38 4e  roupsCache = v8N
4b30: 65 77 28 27 4d 61 70 27 29 3b 0d 0a 20 20 20 20  ew('Map');..    
4b40: 20 20 20 20 69 66 28 21 72 65 2e 6d 75 6c 74 69      if(!re.multi
4b50: 6c 69 6e 65 29 0d 0a 20 20 20 20 20 20 20 20 7b  line)..        {
4b60: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61  ..            va
4b70: 72 20 63 75 72 4d 65 74 68 6f 64 20 3d 20 7b 20  r curMethod = { 
4b80: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
4b90: 20 20 27 4e 61 6d 65 27 20 20 20 20 20 20 3a 20    'Name'      : 
4ba0: 27 d0 a0 d0 b0 d0 b7 d0 b4 d0 b5 d0 bb 20 d0 be  '............ ..
4bb0: d0 bf d0 b8 d1 81 d0 b0 d0 bd d0 b8 d1 8f 20 d0  .............. .
4bc0: bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1  ................
4bd0: 8b d1 85 27 2c 0d 0a 20 20 20 20 20 20 20 20 20  ...',..         
4be0: 20 20 20 20 20 20 20 27 49 73 50 72 6f 63 27 20         'IsProc' 
4bf0: 20 20 20 3a 20 75 6e 64 65 66 69 6e 65 64 2c 0d     : undefined,.
4c00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4c10: 20 27 53 74 61 72 74 4c 69 6e 65 27 20 3a 20 30   'StartLine' : 0
4c20: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
4c30: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4c50: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20       ..         
4c60: 20 20 20 76 61 72 20 6c 69 6e 65 73 20 3d 20 53     var lines = S
4c70: 74 72 69 6e 67 55 74 69 6c 73 2e 74 6f 4c 69 6e  tringUtils.toLin
4c80: 65 73 28 6f 62 6a 2e 67 65 74 54 65 78 74 28 29  es(obj.getText()
4c90: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
4ca0: 66 6f 72 28 76 61 72 20 6c 69 6e 65 49 78 3d 30  for(var lineIx=0
4cb0: 3b 20 6c 69 6e 65 49 78 20 3c 20 6c 69 6e 65 73  ; lineIx < lines
4cc0: 2e 6c 65 6e 67 74 68 3b 20 6c 69 6e 65 49 78 2b  .length; lineIx+
4cd0: 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  +)..            
4ce0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
4cf0: 20 20 20 76 61 72 20 6c 69 6e 65 20 3d 20 6c 69     var line = li
4d00: 6e 65 73 5b 6c 69 6e 65 49 78 5d 3b 0d 0a 20 20  nes[lineIx];..  
4d10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
4d20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4d30: 2f 2f 20 d0 9f d1 80 d0 be d0 b2 d0 b5 d1 80 d0  // .............
4d40: b8 d0 bc 2c 20 d0 bd d0 b5 20 d0 b2 d1 81 d1 82  ..., .... ......
4d50: d1 80 d0 b5 d1 82 d0 b8 d0 bb d0 be d1 81 d1 8c  ................
4d60: 20 d0 bb d0 b8 20 d0 bd d0 b0 d1 87 d0 b0 d0 bb   .... ..........
4d70: d0 be 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e  .. .............
4d80: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
4d90: 20 20 76 61 72 20 6d 61 74 63 68 65 73 20 3d 20    var matches = 
4da0: 6c 69 6e 65 2e 6d 61 74 63 68 28 52 45 2e 4d 45  line.match(RE.ME
4db0: 54 48 4f 44 5f 53 54 41 52 54 29 3b 0d 0a 20 20  THOD_START);..  
4dc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66                if
4dd0: 20 28 6d 61 74 63 68 65 73 20 26 26 20 6d 61 74   (matches && mat
4de0: 63 68 65 73 2e 6c 65 6e 67 74 68 29 0d 0a 20 20  ches.length)..  
4df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d                {.
4e00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4e10: 20 20 20 20 20 63 75 72 4d 65 74 68 6f 64 20 3d       curMethod =
4e20: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
4e30: 20 20 20 20 20 20 20 20 20 20 20 20 27 4e 61 6d              'Nam
4e40: 65 27 20 20 20 20 20 20 3a 20 6d 61 74 63 68 65  e'      : matche
4e50: 73 5b 32 5d 2c 0d 0a 20 20 20 20 20 20 20 20 20  s[2],..         
4e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27                 '
4e70: 49 73 50 72 6f 63 27 20 20 20 20 3a 20 6d 61 74  IsProc'    : mat
4e80: 63 68 65 73 5b 31 5d 2e 74 6f 4c 6f 77 65 72 43  ches[1].toLowerC
4e90: 61 73 65 28 29 20 3d 3d 20 27 d0 bf d1 80 d0 be  ase() == '......
4ea0: d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 27 20 7c 7c  ............' ||
4eb0: 20 6d 61 74 63 68 65 73 5b 31 5d 2e 74 6f 4c 6f   matches[1].toLo
4ec0: 77 65 72 43 61 73 65 28 29 20 3d 3d 20 27 70 72  werCase() == 'pr
4ed0: 6f 63 65 64 75 72 65 27 2c 0d 0a 20 20 20 20 20  ocedure',..     
4ee0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4ef0: 20 20 20 27 53 74 61 72 74 4c 69 6e 65 27 20 3a     'StartLine' :
4f00: 20 6c 69 6e 65 49 78 0d 0a 20 20 20 20 20 20 20   lineIx..       
4f10: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
4f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f30: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
4f40: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
4f50: 20 20 20 20 20 6d 61 74 63 68 65 73 20 3d 20 6c       matches = l
4f60: 69 6e 65 2e 6d 61 74 63 68 28 72 65 29 3b 0d 0a  ine.match(re);..
4f70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f80: 69 66 20 28 6d 61 74 63 68 65 73 20 26 26 20 6d  if (matches && m
4f90: 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 29 0d 0a  atches.length)..
4fa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4fb0: 20 20 20 20 74 68 69 73 2e 61 64 64 53 65 61 72      this.addSear
4fc0: 63 68 52 65 73 75 6c 74 28 64 6f 63 52 6f 77 2c  chResult(docRow,
4fd0: 20 6c 69 6e 65 2c 20 6c 69 6e 65 49 78 20 2b 20   line, lineIx + 
4fe0: 31 2c 20 6d 61 74 63 68 65 73 2c 20 63 75 72 4d  1, matches, curM
4ff0: 65 74 68 6f 64 29 3b 0d 0a 20 20 20 20 20 20 20  ethod);..       
5000: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
5010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f                //
5020: 20 d0 9f d1 80 d0 be d0 b2 d0 b5 d1 80 d0 b8 d0   ...............
5030: bc 2c 20 d0 bd d0 b5 20 d0 b2 d1 81 d1 82 d1 80  ., .... ........
5040: d0 b5 d1 82 d0 b8 d0 bb d1 81 d1 8f 20 d0 bb d0  ............ ...
5050: b8 20 d0 ba d0 be d0 bd d0 b5 d1 86 20 d0 bc d0  . .......... ...
5060: b5 d1 82 d0 be d0 b4 d0 b0 2e 0d 0a 20 20 20 20  ............    
5070: 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63              matc
5080: 68 65 73 20 3d 20 6c 69 6e 65 2e 6d 61 74 63 68  hes = line.match
5090: 28 52 45 2e 4d 45 54 48 4f 44 5f 45 4e 44 29 3b  (RE.METHOD_END);
50a0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
50b0: 20 20 69 66 20 28 6d 61 74 63 68 65 73 20 26 26    if (matches &&
50c0: 20 6d 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 29   matches.length)
50d0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
50e0: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
50f0: 20 20 20 20 20 20 20 20 20 63 75 72 4d 65 74 68           curMeth
5100: 6f 64 20 3d 20 7b 0d 0a 20 20 20 20 20 20 20 20  od = {..        
5110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5120: 27 4e 61 6d 65 27 20 20 20 20 20 20 3a 20 27 3c  'Name'      : '<
5130: d0 a2 d0 b5 d0 ba d1 81 d1 82 20 d0 b2 d0 bd d0  .......... .....
5140: b5 20 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83  . ..............
5150: d1 80 20 d0 b8 20 d1 84 d1 83 d0 bd d0 ba d1 86  .. .. ..........
5160: d0 b8 d0 b9 3e 27 2c 0d 0a 20 20 20 20 20 20 20  ....>',..       
5170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5180: 20 27 49 73 50 72 6f 63 27 20 20 20 20 3a 20 75   'IsProc'    : u
5190: 6e 64 65 66 69 6e 65 64 2c 0d 0a 20 20 20 20 20  ndefined,..     
51a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
51b0: 20 20 20 27 53 74 61 72 74 4c 69 6e 65 27 20 3a     'StartLine' :
51c0: 20 6c 69 6e 65 49 78 0d 0a 20 20 20 20 20 20 20   lineIx..       
51d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
51e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
51f0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d  }..            }
5200: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d 0d      ..        }.
5210: 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20  .        else.. 
5220: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
5230: 20 20 20 20 20 20 2f 2f 64 65 62 75 67 67 65 72        //debugger
5240: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f  ..            //
5250: 20 d0 ad d1 82 d0 be 20 d0 bc d0 bd d0 be d0 b3   ...... ........
5260: d0 be d1 81 d1 82 d1 80 d0 be d1 87 d0 bd d1 8b  ................
5270: d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 0d 0a 20  .. ............ 
5280: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 94             // ..
5290: d0 bb d1 8f 20 d0 bd d0 b0 d1 87 d0 b0 d0 bb d0  .... ...........
52a0: b0 20 d0 bd d0 b0 d0 b4 d0 be 20 d0 b2 d0 be d0  . ........ .....
52b0: be d0 b1 d1 89 d0 b5 20 d0 bf d1 80 d0 be d0 b2  ....... ........
52c0: d0 b5 d1 80 d0 b8 d1 82 d1 8c 2c 20 d0 bd d0 b0  .........., ....
52d0: d1 85 d0 be d0 b4 d0 b8 d1 82 d1 81 d1 8f 20 d0  .............. .
52e0: bb d0 b8 20 d1 87 d1 82 d0 be 2d d0 bd d0 b8 d0  ... ......-.....
52f0: b1 d1 83 d0 b4 d1 8c 0d 0a 20 20 20 20 20 20 20  .........       
5300: 20 20 20 20 20 76 61 72 20 74 65 78 74 20 3d 20       var text = 
5310: 6f 62 6a 2e 67 65 74 54 65 78 74 28 29 0d 0a 20  obj.getText().. 
5320: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72             var r
5330: 65 73 75 6c 74 73 20 3d 20 5b 5d 2c 20 72 0d 0a  esults = [], r..
5340: 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c              whil
5350: 65 28 72 20 3d 20 72 65 2e 65 78 65 63 28 74 65  e(r = re.exec(te
5360: 78 74 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20  xt))..          
5370: 20 20 20 20 20 20 72 65 73 75 6c 74 73 2e 70 75        results.pu
5380: 73 68 28 72 29 0d 0a 20 20 20 20 20 20 20 20 20  sh(r)..         
5390: 20 20 20 69 66 28 72 65 73 75 6c 74 73 2e 6c 65     if(results.le
53a0: 6e 67 74 68 29 20 20 2f 2f 20 d0 a7 d1 82 d0 be  ngth)  // ......
53b0: 2d d1 82 d0 be 20 d0 bd d0 b0 d1 88 d0 bb d0 b8  -.... ..........
53c0: 2e 20 d0 a2 d0 b5 d0 bf d0 b5 d1 80 d1 8c 20 d0  . ............ .
53d0: bd d0 b0 d0 b4 d0 be 20 d0 bf d0 be d0 bb d1 83  ....... ........
53e0: d1 87 d0 b8 d1 82 d1 8c 20 d0 bd d0 be d0 bc d0  ........ .......
53f0: b5 d1 80 d0 b0 20 d1 81 d1 82 d1 80 d0 be d0 ba  ..... ..........
5400: 20 d0 b4 d0 bb d1 8f 20 d0 ba d0 b0 d0 b6 d0 b4   ...... ........
5410: d0 be d0 b3 d0 be 20 d0 b2 d1 85 d0 be d0 b6 d0  ...... .........
5420: b4 d0 b5 d0 bd d0 b8 d1 8f 0d 0a 20 20 20 20 20  ...........     
5430: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
5440: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 66            this.f
5450: 6f 72 6d 2e 54 72 65 65 56 69 65 77 20 3d 20 66  orm.TreeView = f
5460: 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20  alse;..         
5470: 20 20 20 20 20 20 20 76 61 72 20 69 64 78 20 3d         var idx =
5480: 20 30 2c 20 6c 69 6e 65 4e 75 6d 20 3d 20 30 2c   0, lineNum = 0,
5490: 20 63 75 72 72 65 6e 74 52 65 73 20 3d 20 72 65   currentRes = re
54a0: 73 75 6c 74 73 5b 69 64 78 5d 2c 20 62 65 67 69  sults[idx], begi
54b0: 6e 49 64 78 20 3d 20 63 75 72 72 65 6e 74 52 65  nIdx = currentRe
54c0: 73 2e 69 6e 64 65 78 0d 0a 20 20 20 20 20 20 20  s.index..       
54d0: 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 94 d0 bb           // ....
54e0: d1 8f 20 d0 b8 d1 81 d0 ba d0 bb d1 8e d1 87 d0  .. .............
54f0: b5 d0 bd d0 b8 d0 b5 20 d1 81 d0 b8 d1 82 d1 83  ....... ........
5500: d0 b0 d1 86 d0 b8 d0 b8 2c 20 d0 ba d0 be d0 b3  ........, ......
5510: d0 b4 d0 b0 20 d1 82 d0 b5 d0 ba d1 81 d1 82 20  .... .......... 
5520: d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd 20 d0 b2 20  ............ .. 
5530: d0 bf d0 be d1 81 d0 bb d0 b5 d0 b4 d0 bd d0 b5  ................
5540: d0 b9 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b5 2c  .. ............,
5550: 20 d0 bd d0 b5 20 d0 b7 d0 b0 d0 ba d0 b0 d0 bd   .... ..........
5560: d1 87 d0 b8 d0 b2 d0 b0 d1 8e d1 89 d0 b5 d0 b9  ................
5570: d1 81 d1 8f 20 d0 bf d0 b5 d1 80 d0 b5 d0 b2 d0  .... ...........
5580: be d0 b4 d0 be d0 bc 20 d1 81 d1 82 d1 80 d0 be  ....... ........
5590: d0 ba d0 b8 2c 0d 0a 20 20 20 20 20 20 20 20 20  ....,..         
55a0: 20 20 20 20 20 20 20 2f 2f 20 d0 b4 d0 be d0 b1         // ......
55b0: d0 b0 d0 b2 d0 b8 d0 bc 20 d0 ba 20 d1 82 d0 b5  ........ .. ....
55c0: d0 ba d1 81 d1 82 d1 83 20 d0 bf d0 b5 d1 80 d0  ........ .......
55d0: b5 d0 b2 d0 be d0 b4 20 d1 81 d1 82 d1 80 d0 be  ....... ........
55e0: d0 ba d0 b8 0d 0a 20 20 20 20 20 20 20 20 20 20  ......          
55f0: 20 20 20 20 20 20 74 65 78 74 20 2b 3d 20 27 5c        text += '\
5600: 6e 27 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  n';..           
5610: 20 20 20 20 20 72 65 20 3d 20 2f 2e 2a 5c 6e 2f       re = /.*\n/
5620: 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  g..             
5630: 20 20 20 77 68 69 6c 65 28 72 20 3d 20 72 65 2e     while(r = re.
5640: 65 78 65 63 28 74 65 78 74 29 29 0d 0a 20 20 20  exec(text))..   
5650: 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a               {..
5660: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5670: 20 20 20 20 6c 69 6e 65 4e 75 6d 2b 2b 0d 0a 20      lineNum++.. 
5680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5690: 20 20 20 69 66 28 72 2e 69 6e 64 65 78 20 3c 3d     if(r.index <=
56a0: 20 62 65 67 69 6e 49 64 78 20 26 26 20 72 2e 6c   beginIdx && r.l
56b0: 61 73 74 49 6e 64 65 78 20 3e 20 62 65 67 69 6e  astIndex > begin
56c0: 49 64 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20  Idx)..          
56d0: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
56e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
56f0: 20 20 20 20 20 63 75 72 72 65 6e 74 52 65 73 2e       currentRes.
5700: 69 6e 64 65 78 20 2d 3d 20 72 2e 69 6e 64 65 78  index -= r.index
5710: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5720: 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e            curren
5730: 74 52 65 73 2e 6c 61 73 74 49 6e 64 65 78 20 2d  tRes.lastIndex -
5740: 3d 20 72 2e 69 6e 64 65 78 0d 0a 20 20 20 20 20  = r.index..     
5750: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5760: 20 20 20 2f 2f 20 d0 94 d0 bb d1 8f 20 d0 be d1     // ...... ...
5770: 82 d0 be d0 b1 d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0  ................
5780: b8 d1 8f 20 d1 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c  ... ............
5790: d1 82 d0 b0 d1 82 d0 b0 20 d0 bc d0 bd d0 be d0  ........ .......
57a0: b3 d0 be d1 81 d1 82 d1 80 d0 be d1 87 d0 bd d0  ................
57b0: be d0 b3 d0 be 20 d0 bf d0 be d0 b8 d1 81 d0 ba  ..... ..........
57c0: d0 b0 20 d0 bf d1 80 d0 b5 d0 be d0 b1 d1 80 d0  .. .............
57d0: b0 d0 b7 d1 83 d0 b5 d0 bc 20 d1 81 d1 82 d1 80  ......... ......
57e0: d0 be d0 ba d1 83 0d 0a 20 20 20 20 20 20 20 20  ........        
57f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5800: 63 75 72 72 65 6e 74 52 65 73 2e 72 65 61 6c 52  currentRes.realR
5810: 65 73 75 6c 74 20 3d 20 63 75 72 72 65 6e 74 52  esult = currentR
5820: 65 73 5b 30 5d 0d 0a 20 20 20 20 20 20 20 20 20  es[0]..         
5830: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63                 c
5840: 75 72 72 65 6e 74 52 65 73 5b 30 5d 20 3d 20 63  urrentRes[0] = c
5850: 75 72 72 65 6e 74 52 65 73 5b 30 5d 2e 72 65 70  urrentRes[0].rep
5860: 6c 61 63 65 28 2f 5e 5c 73 2b 2f 2c 20 27 27 29  lace(/^\s+/, '')
5870: 2e 72 65 70 6c 61 63 65 28 2f 5c 6e 5c 73 2a 2f  .replace(/\n\s*/
5880: 67 2c 20 27 20 5c 75 30 30 42 42 20 27 29 2e 73  g, ' \u00BB ').s
5890: 75 62 73 74 72 28 30 2c 20 35 30 29 20 2b 20 27  ubstr(0, 50) + '
58a0: 5c 6e 27 0d 0a 20 20 20 20 20 20 20 20 20 20 20  \n'..           
58b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69               thi
58c0: 73 2e 61 64 64 53 65 61 72 63 68 52 65 73 75 6c  s.addSearchResul
58d0: 74 28 64 6f 63 52 6f 77 2c 20 72 5b 30 5d 2c 20  t(docRow, r[0], 
58e0: 6c 69 6e 65 4e 75 6d 2c 20 72 65 73 75 6c 74 73  lineNum, results
58f0: 5b 69 64 78 5d 29 3b 0d 0a 20 20 20 20 20 20 20  [idx]);..       
5900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5910: 20 69 64 78 2b 2b 3b 0d 0a 20 20 20 20 20 20 20   idx++;..       
5920: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5930: 20 69 66 28 69 64 78 20 3d 3d 20 72 65 73 75 6c   if(idx == resul
5940: 74 73 2e 6c 65 6e 67 74 68 29 0d 0a 20 20 20 20  ts.length)..    
5950: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5960: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
5970: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5980: 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 52          currentR
5990: 65 73 20 3d 20 72 65 73 75 6c 74 73 5b 69 64 78  es = results[idx
59a0: 5d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ]..             
59b0: 20 20 20 20 20 20 20 20 20 20 20 62 65 67 69 6e             begin
59c0: 49 64 78 20 3d 20 63 75 72 72 65 6e 74 52 65 73  Idx = currentRes
59d0: 2e 69 6e 64 65 78 0d 0a 20 20 20 20 20 20 20 20  .index..        
59e0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
59f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
5a00: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
5a10: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
5a20: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66      ..        if
5a30: 20 28 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65   (this.form.Tree
5a40: 56 69 65 77 20 26 26 20 64 6f 63 52 6f 77 2e 52  View && docRow.R
5a50: 6f 77 73 2e 43 6f 75 6e 74 28 29 20 3e 20 30 29  ows.Count() > 0)
5a60: 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20  ..        {..   
5a70: 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 61 73           var las
5a80: 74 47 72 6f 75 70 20 3d 20 74 68 69 73 2e 72 65  tGroup = this.re
5a90: 73 75 6c 74 73 2e 52 6f 77 73 2e 47 65 74 28 74  sults.Rows.Get(t
5aa0: 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73  his.results.Rows
5ab0: 2e 43 6f 75 6e 74 28 29 20 2d 20 31 29 3b 0d 0a  .Count() - 1);..
5ac0: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28              if (
5ad0: 6c 61 73 74 47 72 6f 75 70 2e 46 6f 75 6e 64 4c  lastGroup.FoundL
5ae0: 69 6e 65 20 3d 3d 20 27 3c d0 a2 d0 b5 d0 ba d1  ine == '<.......
5af0: 81 d1 82 20 d0 b2 d0 bd d0 b5 20 d0 bf d1 80 d0  ... ...... .....
5b00: be d1 86 d0 b5 d0 b4 d1 83 d1 80 20 d0 b8 20 d1  ........... .. .
5b10: 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b9 3e 27 29  .............>')
5b20: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5b30: 20 20 6c 61 73 74 47 72 6f 75 70 2e 46 6f 75 6e    lastGroup.Foun
5b40: 64 4c 69 6e 65 20 3d 20 22 d0 a0 d0 b0 d0 b7 d0  dLine = ".......
5b50: b4 d0 b5 d0 bb 20 d0 be d1 81 d0 bd d0 be d0 b2  ..... ..........
5b60: d0 bd d0 be d0 b9 20 d0 bf d1 80 d0 be d0 b3 d1  ...... .........
5b70: 80 d0 b0 d0 bc d0 bc d1 8b 22 3b 0d 0a 20 20 20  .........";..   
5b80: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
5b90: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 64  ..        if (!d
5ba0: 6f 63 52 6f 77 2e 52 6f 77 73 2e 43 6f 75 6e 74  ocRow.Rows.Count
5bb0: 28 29 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  ())..        {..
5bc0: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
5bd0: 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73 2e 44 65  .results.Rows.De
5be0: 6c 65 74 65 28 64 6f 63 52 6f 77 29 3b 0d 0a 20  lete(docRow);.. 
5bf0: 20 20 20 20 20 20 20 20 20 20 20 64 6f 63 52 6f             docRo
5c00: 77 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20  w = null;..     
5c10: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a     }..        ..
5c20: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 64          return d
5c30: 6f 63 52 6f 77 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  ocRow;..    },..
5c40: 0d 0a 20 20 20 20 73 68 6f 77 52 65 73 75 6c 74  ..    showResult
5c50: 3a 20 66 75 6e 63 74 69 6f 6e 28 64 6f 63 52 6f  : function(docRo
5c60: 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29 7b 0d  w, fromHotKey){.
5c70: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 72 65  .        this.re
5c80: 73 75 6c 74 73 2e 52 6f 77 73 2e 53 6f 72 74 28  sults.Rows.Sort(
5c90: 27 53 6f 72 74 4d 65 74 61 64 61 74 61 2c 20 46  'SortMetadata, F
5ca0: 6f 75 6e 64 4c 69 6e 65 27 2c 20 66 61 6c 73 65  oundLine', false
5cb0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0  );..        // .
5cc0: 97 d0 b0 d0 bf d0 be d0 bc d0 bd d0 b8 d0 bc 20  ............... 
5cd0: d1 81 d1 82 d1 80 d0 be d0 ba d1 83 20 d0 bf d0  ............ ...
5ce0: be d0 b8 d1 81 d0 ba d0 b0 20 d0 b2 20 d0 b8 d1  ......... .. ...
5cf0: 81 d1 82 d0 be d1 80 d0 b8 d0 b8 2e 0d 0a 20 20  ..............  
5d00: 20 20 20 20 20 20 74 68 69 73 2e 61 64 64 54 6f        this.addTo
5d10: 48 69 73 74 6f 72 79 28 74 68 69 73 2e 66 6f 72  History(this.for
5d20: 6d 2e 51 75 65 72 79 29 3b 0d 0a 0d 0a 20 20 20  m.Query);....   
5d30: 20 20 20 20 20 69 66 20 28 66 72 6f 6d 48 6f 74       if (fromHot
5d40: 4b 65 79 20 3d 3d 20 74 72 75 65 29 0d 0a 20 20  Key == true)..  
5d50: 20 20 20 20 20 20 7b 20 0d 0a 20 20 20 20 20 20        { ..      
5d60: 20 20 20 20 20 20 2f 2f 20 d0 94 d0 bb d1 8f 20        // ...... 
5d70: d1 82 d0 be d0 b3 d0 be 20 d1 87 d1 82 d0 be d0  ........ .......
5d80: b1 d1 8b 20 d0 ba d1 83 d1 80 d1 81 d0 be d1 80  ... ............
5d90: 20 d0 bd d0 b5 20 d0 bf d1 80 d1 8b d0 b3 d0 b0   .... ..........
5da0: d0 bb 20 d0 bf d1 80 d0 b8 20 d0 bf d0 be d0 b8  .. ...... ......
5db0: d1 81 d0 ba d0 b5 20 d1 82 d0 b5 d0 ba d1 83 d1  ...... .........
5dc0: 89 d0 b5 d0 b3 d0 be 20 d1 81 d0 bb d0 be d0 b2  ....... ........
5dd0: d0 b0 2c 20 0d 0a 20 20 20 20 20 20 20 20 20 20  .., ..          
5de0: 20 20 2f 2f 20 d1 82 d1 83 d1 82 20 d0 b1 d1 8b    // ...... ....
5df0: 20 d0 b5 d1 89 d0 b5 20 d0 b4 d0 be d0 b1 d0 b0   ...... ........
5e00: d0 b2 d0 b8 d1 82 d1 8c 20 d1 87 d1 82 d0 be d0  ........ .......
5e10: b1 d1 8b 20 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 b8  ... ............
5e20: d0 b7 d0 b8 d1 80 d0 be d0 b2 d0 b0 d0 bb d0 b0  ................
5e30: d1 81 d1 8c 20 d0 b8 d0 bc d0 b5 d0 bd d0 bd d0  .... ...........
5e40: be 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1 8f  . ..............
5e50: 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 0d 0a 20   .............. 
5e60: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
5e70: 66 6f 72 6d 2e 4f 70 65 6e 28 29 3b 0d 0a 20 20  form.Open();..  
5e80: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 66            this.f
5e90: 6f 72 6d 2e 43 75 72 72 65 6e 74 43 6f 6e 74 72  orm.CurrentContr
5ea0: 6f 6c 3d 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e  ol=this.form.Con
5eb0: 74 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73 75  trols.SearchResu
5ec0: 6c 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  lts;..          
5ed0: 20 20 69 66 20 28 64 6f 63 52 6f 77 29 20 0d 0a    if (docRow) ..
5ee0: 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20              {.. 
5ef0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
5f00: 61 72 20 63 75 72 4c 69 6e 65 52 6f 77 20 3d 20  ar curLineRow = 
5f10: 74 68 69 73 2e 67 65 74 52 6f 77 46 6f 72 54 68  this.getRowForTh
5f20: 65 43 75 72 72 65 6e 74 4c 69 6e 65 28 64 6f 63  eCurrentLine(doc
5f30: 52 6f 77 29 3b 20 20 0d 0a 20 20 20 20 20 20 20  Row);  ..       
5f40: 20 20 20 20 20 20 20 20 20 69 66 20 28 63 75 72           if (cur
5f50: 4c 69 6e 65 52 6f 77 29 0d 0a 20 20 20 20 20 20  LineRow)..      
5f60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68                th
5f70: 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73  is.form.Controls
5f80: 2e 53 65 61 72 63 68 52 65 73 75 6c 74 73 2e 43  .SearchResults.C
5f90: 75 72 72 65 6e 74 52 6f 77 20 3d 20 63 75 72 4c  urrentRow = curL
5fa0: 69 6e 65 52 6f 77 3b 20 20 20 20 20 20 20 20 20  ineRow;         
5fb0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
5fc0: 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20   }..        }.. 
5fd0: 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28         else if (
5fe0: 64 6f 63 52 6f 77 29 0d 0a 20 20 20 20 20 20 20  docRow)..       
5ff0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
6000: 69 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e 54 72  if (this.form.Tr
6010: 65 65 56 69 65 77 29 0d 0a 20 20 20 20 20 20 20  eeView)..       
6020: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 67 6f           this.go
6030: 54 6f 4c 69 6e 65 28 64 6f 63 52 6f 77 2e 52 6f  ToLine(docRow.Ro
6040: 77 73 2e 47 65 74 28 30 29 2e 52 6f 77 73 2e 47  ws.Get(0).Rows.G
6050: 65 74 28 30 29 29 3b 0d 0a 20 20 20 20 20 20 20  et(0));..       
6060: 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20       else..     
6070: 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e             this.
6080: 67 6f 54 6f 4c 69 6e 65 28 64 6f 63 52 6f 77 2e  goToLine(docRow.
6090: 52 6f 77 73 2e 47 65 74 28 30 29 29 3b 20 20 20  Rows.Get(0));   
60a0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d       ..        }
60b0: 0d 0a 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20  ....    },..    
60c0: 0d 0a 20 20 20 20 73 68 6f 77 53 65 61 72 63 68  ..    showSearch
60d0: 52 65 73 75 6c 74 3a 20 66 75 6e 63 74 69 6f 6e  Result: function
60e0: 20 28 64 6f 63 52 6f 77 2c 20 66 72 6f 6d 48 6f   (docRow, fromHo
60f0: 74 4b 65 79 29 20 7b 0d 0a 20 20 20 20 20 20 20  tKey) {..       
6100: 20 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e   ..        this.
6110: 73 68 6f 77 52 65 73 75 6c 74 28 64 6f 63 52 6f  showResult(docRo
6120: 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29 3b 0d  w, fromHotKey);.
6130: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 65 78  .        this.ex
6140: 70 61 6e 64 54 72 65 65 28 29 3b 0d 0a 20 20 20  pandTree();..   
6150: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69       ..        i
6160: 66 20 28 74 68 69 73 2e 72 65 73 75 6c 74 73 2e  f (this.results.
6170: 52 6f 77 73 2e 43 6f 75 6e 74 28 29 20 3d 3d 20  Rows.Count() == 
6180: 30 29 20 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  0) ..        {..
6190: 20 20 20 20 20 20 20 20 20 20 20 20 44 6f 4d 65              DoMe
61a0: 73 73 61 67 65 42 6f 78 28 27 d0 a1 d0 be d0 b2  ssageBox('......
61b0: d0 bf d0 b0 d0 b4 d0 b5 d0 bd d0 b8 d0 b9 20 d0  .............. .
61c0: bd d0 b5 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd  ... ............
61d0: d0 be 21 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  ..!');..        
61e0: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
61f0: 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20       }....      
6200: 20 20 74 68 69 73 2e 53 65 74 43 6f 6e 74 72 6f    this.SetContro
6210: 6c 73 56 69 73 69 62 6c 65 28 29 3b 20 20 20 20  lsVisible();    
6220: 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a  ..    },..    ..
6230: 20 20 20 20 67 65 74 52 6f 77 46 6f 72 54 68 65      getRowForThe
6240: 43 75 72 72 65 6e 74 4c 69 6e 65 3a 20 66 75 6e  CurrentLine: fun
6250: 63 74 69 6f 6e 28 64 6f 63 52 6f 77 29 20 7b 0d  ction(docRow) {.
6260: 0a 20 20 20 20 20 20 20 20 76 61 72 20 74 77 6e  .        var twn
6270: 64 20 3d 20 64 6f 63 52 6f 77 2e 5f 6f 62 6a 65  d = docRow._obje
6280: 63 74 2e 61 63 74 69 76 61 74 65 28 29 3b 0d 0a  ct.activate();..
6290: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 64          return d
62a0: 6f 63 52 6f 77 2e 52 6f 77 73 2e 46 69 6e 64 28  ocRow.Rows.Find(
62b0: 74 77 6e 64 2e 47 65 74 43 61 72 65 74 50 6f 73  twnd.GetCaretPos
62c0: 28 29 2e 62 65 67 69 6e 52 6f 77 2c 20 22 4c 69  ().beginRow, "Li
62d0: 6e 65 4e 6f 22 2c 20 74 72 75 65 29 3b 0d 0a 20  neNo", true);.. 
62e0: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 67 65 74     },....    get
62f0: 47 72 6f 75 70 52 6f 77 3a 20 66 75 6e 63 74 69  GroupRow: functi
6300: 6f 6e 20 28 64 6f 63 52 6f 77 2c 20 6d 65 74 68  on (docRow, meth
6310: 6f 64 44 61 74 61 29 20 7b 0d 0a 0d 0a 20 20 20  odData) {....   
6320: 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e 66       if (!this.f
6330: 6f 72 6d 2e 54 72 65 65 56 69 65 77 20 7c 7c 20  orm.TreeView || 
6340: 74 68 69 73 2e 72 65 2e 6d 75 6c 74 69 6c 69 6e  this.re.multilin
6350: 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e)..            
6360: 72 65 74 75 72 6e 20 64 6f 63 52 6f 77 3b 0d 0a  return docRow;..
6370: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 67 72  ..        var gr
6380: 6f 75 70 52 6f 77 20 3d 20 64 6f 63 52 6f 77 2e  oupRow = docRow.
6390: 67 72 6f 75 70 73 43 61 63 68 65 2e 47 65 74 28  groupsCache.Get(
63a0: 6d 65 74 68 6f 64 44 61 74 61 29 3b 0d 0a 20 20  methodData);..  
63b0: 20 20 20 20 20 20 69 66 20 28 21 67 72 6f 75 70        if (!group
63c0: 52 6f 77 29 20 0d 0a 20 20 20 20 20 20 20 20 7b  Row) ..        {
63d0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 72  ..            gr
63e0: 6f 75 70 52 6f 77 20 3d 20 64 6f 63 52 6f 77 2e  oupRow = docRow.
63f0: 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20 20 20  Rows.Add();..   
6400: 20 20 20 20 20 20 20 20 20 67 72 6f 75 70 52 6f           groupRo
6410: 77 2e 46 6f 75 6e 64 4c 69 6e 65 20 3d 20 28 21  w.FoundLine = (!
6420: 6d 65 74 68 6f 64 44 61 74 61 2e 4e 61 6d 65 29  methodData.Name)
6430: 3f 22 22 3a 6d 65 74 68 6f 64 44 61 74 61 2e 4e  ?"":methodData.N
6440: 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ame;..          
6450: 20 20 67 72 6f 75 70 52 6f 77 2e 4d 65 74 68 6f    groupRow.Metho
6460: 64 20 3d 20 28 21 6d 65 74 68 6f 64 44 61 74 61  d = (!methodData
6470: 2e 4e 61 6d 65 29 3f 22 22 3a 6d 65 74 68 6f 64  .Name)?"":method
6480: 44 61 74 61 2e 4e 61 6d 65 3b 0d 0a 20 20 20 20  Data.Name;..    
6490: 20 20 20 20 20 20 20 20 67 72 6f 75 70 52 6f 77          groupRow
64a0: 2e 5f 6f 62 6a 65 63 74 20 3d 20 64 6f 63 52 6f  ._object = docRo
64b0: 77 2e 5f 6f 62 6a 65 63 74 3b 0d 0a 20 20 20 20  w._object;..    
64c0: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
64d0: 20 20 20 20 20 20 69 66 20 28 6d 65 74 68 6f 64        if (method
64e0: 44 61 74 61 2e 49 73 50 72 6f 63 20 21 3d 3d 20  Data.IsProc !== 
64f0: 75 6e 64 65 66 69 6e 65 64 29 0d 0a 20 20 20 20  undefined)..    
6500: 20 20 20 20 20 20 20 20 20 20 20 20 67 72 6f 75              grou
6510: 70 52 6f 77 2e 52 6f 77 54 79 70 65 20 3d 20 6d  pRow.RowType = m
6520: 65 74 68 6f 64 44 61 74 61 2e 49 73 50 72 6f 63  ethodData.IsProc
6530: 20 3f 20 52 6f 77 54 79 70 65 73 2e 50 72 6f 63   ? RowTypes.Proc
6540: 47 72 6f 75 70 20 3a 20 52 6f 77 54 79 70 65 73  Group : RowTypes
6550: 2e 46 75 6e 63 47 72 6f 75 70 3b 0d 0a 20 20 20  .FuncGroup;..   
6560: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20               .. 
6570: 20 20 20 20 20 20 20 20 20 20 20 67 72 6f 75 70             group
6580: 52 6f 77 2e 6c 69 6e 65 4e 6f 20 3d 20 6d 65 74  Row.lineNo = met
6590: 68 6f 64 44 61 74 61 2e 53 74 61 72 74 4c 69 6e  hodData.StartLin
65a0: 65 20 2b 20 31 3b 0d 0a 20 20 20 20 20 20 20 20  e + 1;..        
65b0: 20 20 20 20 67 72 6f 75 70 52 6f 77 2e 5f 6d 65      groupRow._me
65c0: 74 68 6f 64 20 3d 20 6d 65 74 68 6f 64 44 61 74  thod = methodDat
65d0: 61 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  a;..            
65e0: 67 72 6f 75 70 52 6f 77 2e 53 6f 72 74 4d 65 74  groupRow.SortMet
65f0: 61 64 61 74 61 20 3d 20 6d 65 74 68 6f 64 44 61  adata = methodDa
6600: 74 61 2e 53 6f 72 74 4d 65 74 61 64 61 74 61 3b  ta.SortMetadata;
6610: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a  ..            ..
6620: 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 63 52              docR
6630: 6f 77 2e 67 72 6f 75 70 73 43 61 63 68 65 2e 49  ow.groupsCache.I
6640: 6e 73 65 72 74 28 6d 65 74 68 6f 64 44 61 74 61  nsert(methodData
6650: 2c 20 67 72 6f 75 70 52 6f 77 29 3b 20 0d 0a 20  , groupRow); .. 
6660: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
6670: 20 20 72 65 74 75 72 6e 20 67 72 6f 75 70 52 6f    return groupRo
6680: 77 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20  w;..    },..    
6690: 0d 0a 20 20 20 20 61 64 64 53 65 61 72 63 68 52  ..    addSearchR
66a0: 65 73 75 6c 74 20 3a 20 66 75 6e 63 74 69 6f 6e  esult : function
66b0: 20 28 64 6f 63 52 6f 77 2c 20 6c 69 6e 65 2c 20   (docRow, line, 
66c0: 6c 69 6e 65 4e 6f 2c 20 6d 61 74 63 68 65 73 2c  lineNo, matches,
66d0: 20 6d 65 74 68 6f 64 44 61 74 61 29 20 7b 0d 0a   methodData) {..
66e0: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 67 72  ..        var gr
66f0: 6f 75 70 52 6f 77 20 3d 20 74 68 69 73 2e 67 65  oupRow = this.ge
6700: 74 47 72 6f 75 70 52 6f 77 28 64 6f 63 52 6f 77  tGroupRow(docRow
6710: 2c 20 6d 65 74 68 6f 64 44 61 74 61 29 3b 0d 0a  , methodData);..
6720: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 72 65  ..        var re
6730: 73 52 6f 77 20 3d 20 67 72 6f 75 70 52 6f 77 2e  sRow = groupRow.
6740: 52 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20 20 20  Rows.Add();..   
6750: 20 20 20 20 20 72 65 73 52 6f 77 2e 46 6f 75 6e       resRow.Foun
6760: 64 4c 69 6e 65 20 3d 20 6c 69 6e 65 3b 0d 0a 20  dLine = line;.. 
6770: 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e 6c 69         resRow.li
6780: 6e 65 4e 6f 20 3d 20 6c 69 6e 65 4e 6f 3b 0d 0a  neNo = lineNo;..
6790: 20 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e 5f          resRow._
67a0: 6f 62 6a 65 63 74 20 3d 20 64 6f 63 52 6f 77 2e  object = docRow.
67b0: 5f 6f 62 6a 65 63 74 3b 0d 0a 20 20 20 20 20 20  _object;..      
67c0: 20 20 69 66 28 75 6e 64 65 66 69 6e 65 64 20 21    if(undefined !
67d0: 3d 20 6d 65 74 68 6f 64 44 61 74 61 29 0d 0a 20  = methodData).. 
67e0: 20 20 20 20 20 20 20 20 20 20 20 72 65 73 52 6f             resRo
67f0: 77 2e 4d 65 74 68 6f 64 20 3d 20 6d 65 74 68 6f  w.Method = metho
6800: 64 44 61 74 61 2e 4e 61 6d 65 3b 0d 0a 0d 0a 20  dData.Name;.... 
6810: 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e 5f 6d         resRow._m
6820: 65 74 68 6f 64 20 3d 20 6d 65 74 68 6f 64 44 61  ethod = methodDa
6830: 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 72 65 73  ta;..        res
6840: 52 6f 77 2e 5f 6d 61 74 63 68 20 3d 20 6d 61 74  Row._match = mat
6850: 63 68 65 73 0d 0a 20 20 20 20 20 20 20 20 20 20  ches..          
6860: 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28    ..        if (
6870: 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57  this.form.WholeW
6880: 6f 72 64 73 29 0d 0a 20 20 20 20 20 20 20 20 20  ords)..         
6890: 20 20 20 72 65 73 52 6f 77 2e 45 78 61 63 74 4d     resRow.ExactM
68a0: 61 74 63 68 20 3d 20 6d 61 74 63 68 65 73 5b 30  atch = matches[0
68b0: 5d 2e 72 65 70 6c 61 63 65 28 2f 5e 5b 5e 5c 77  ].replace(/^[^\w
68c0: 5c 64 d0 90 2d d1 8f 5d 2f 2c 20 27 27 29 2e 72  \d..-..]/, '').r
68d0: 65 70 6c 61 63 65 28 2f 5b 5e 5c 77 5c 64 d0 90  eplace(/[^\w\d..
68e0: 2d d1 8f 5d 24 2f 2c 20 27 27 29 3b 0d 0a 20 20  -..]$/, '');..  
68f0: 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20        else..    
6900: 20 20 20 20 20 20 20 20 72 65 73 52 6f 77 2e 45          resRow.E
6910: 78 61 63 74 4d 61 74 63 68 20 3d 20 6d 61 74 63  xactMatch = matc
6920: 68 65 73 5b 30 5d 3b 0d 0a 20 20 20 20 7d 2c 0d  hes[0];..    },.
6930: 0a 20 20 20 20 0d 0a 20 20 20 20 67 6f 54 6f 4c  .    ..    goToL
6940: 69 6e 65 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  ine : function (
6950: 72 6f 77 29 20 7b 0d 0a 0d 0a 20 20 20 20 20 20  row) {....      
6960: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74    this.form.Cont
6970: 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73 75 6c  rols.SearchResul
6980: 74 73 2e 43 75 72 72 65 6e 74 52 6f 77 20 3d 20  ts.CurrentRow = 
6990: 72 6f 77 3b 20 20 20 20 0d 0a 0d 0a 20 20 20 20  row;    ....    
69a0: 20 20 20 20 2f 2f 20 d0 9e d1 82 d0 ba d1 80 d0      // .........
69b0: be d0 b5 d0 bc 20 d0 b8 2f d0 b8 d0 bb d0 b8 20  ..... ../...... 
69c0: d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0 b8 d1 80 d1 83  ................
69d0: d0 b5 d0 bc 20 d0 be d0 ba d0 bd d0 be 20 d0 be  .... ........ ..
69e0: d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 b0 2c 20 d0 b2  ............, ..
69f0: 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be d0 bc 20   .............. 
6a00: d0 b2 d1 8b d0 bf d0 be d0 bb d0 bd d1 8f d0 bb  ................
6a10: d1 81 d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba 2e  .... ...........
6a20: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 74 61  ..        var ta
6a30: 72 67 65 74 57 69 6e 64 6f 77 20 3d 20 72 6f 77  rgetWindow = row
6a40: 2e 5f 6f 62 6a 65 63 74 2e 61 63 74 69 76 61 74  ._object.activat
6a50: 65 28 29 3b 0d 0a 20 20 20 20 20 0d 0a 20 20 20  e();..     ..   
6a60: 20 20 20 20 20 69 66 20 28 21 74 61 72 67 65 74       if (!target
6a70: 57 69 6e 64 6f 77 2e 49 73 41 63 74 69 76 65 28  Window.IsActive(
6a80: 29 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20  ))..        {.. 
6a90: 20 20 20 20 20 20 20 20 20 20 20 44 6f 4d 65 73             DoMes
6aa0: 73 61 67 65 42 6f 78 28 22 d0 9e d0 ba d0 bd d0  sageBox(".......
6ab0: be 2c 20 d0 b4 d0 bb d1 8f 20 d0 ba d0 be d1 82  ., ...... ......
6ac0: d0 be d1 80 d0 be d0 b3 d0 be 20 d0 b2 d1 8b d0  .......... .....
6ad0: bf d0 be d0 bb d0 bd d1 8f d0 bb d1 81 d1 8f 20  ............... 
6ae0: d0 bf d0 be d0 b8 d1 81 d0 ba 2c 20 d0 b1 d1 8b  .........., ....
6af0: d0 bb d0 be 20 d0 b7 d0 b0 d0 ba d1 80 d1 8b d1  .... ...........
6b00: 82 d0 be 21 5c 6e d0 9e d0 ba d0 bd d0 be 20 d0  ...!\n........ .
6b10: bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d1 81 20 d1  ........... .. .
6b20: 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0 b0 d1  ................
6b30: 82 d0 b0 d0 bc d0 b8 20 d1 81 d1 82 d0 b0 d0 bb  ....... ........
6b40: d0 be 20 d0 bd d0 b5 20 d0 b0 d0 ba d1 82 d1 83  .. .... ........
6b50: d0 b0 d0 bb d1 8c d0 bd d0 be 20 d0 b8 20 d0 b1  .......... .. ..
6b60: d1 83 d0 b4 d0 b5 d1 82 20 d0 b7 d0 b0 d0 ba d1  ........ .......
6b70: 80 d1 8b d1 82 d0 be 2e 22 29 3b 0d 0a 20 20 20  ........");..   
6b80: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 6c           this.cl
6b90: 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74 73  earSearchResults
6ba0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ();..           
6bb0: 20 74 68 69 73 2e 43 6c 6f 73 65 28 29 3b 0d 0a   this.Close();..
6bc0: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
6bd0: 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  rn;..        }..
6be0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 2f       ..        /
6bf0: 2f 20 d0 9d d0 b0 d0 b9 d0 b4 d0 b5 d0 bc 20 d0  / ............ .
6c00: bf d0 be d0 b7 d0 b8 d1 86 d0 b8 d1 8e 20 d0 bd  ............. ..
6c10: d0 b0 d0 b9 d0 b4 d0 b5 d0 bd d0 bd d0 be d0 b3  ................
6c20: d0 be 20 d1 81 d0 bb d0 be d0 b2 d0 b0 20 d0 b2  .. .......... ..
6c30: 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b5 2e 0d 0a   ...............
6c40: 20 20 20 20 20 20 20 20 2f 2f 64 65 62 75 67 67          //debugg
6c50: 65 72 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20  er..        var 
6c60: 6c 69 6e 65 53 74 61 72 74 20 3d 20 72 6f 77 2e  lineStart = row.
6c70: 4c 69 6e 65 4e 6f 2c 20 63 6f 6c 53 74 61 72 74  LineNo, colStart
6c80: 2c 20 6c 69 6e 65 45 6e 64 20 3d 20 6c 69 6e 65  , lineEnd = line
6c90: 53 74 61 72 74 2c 20 63 6f 6c 45 6e 64 0d 0a 20  Start, colEnd.. 
6ca0: 20 20 20 20 20 20 20 69 66 28 72 6f 77 2e 45 78         if(row.Ex
6cb0: 61 63 74 4d 61 74 63 68 2e 73 75 62 73 74 72 28  actMatch.substr(
6cc0: 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68 2e 6c  row.ExactMatch.l
6cd0: 65 6e 67 74 68 20 2d 20 31 29 20 3d 3d 20 27 5c  ength - 1) == '\
6ce0: 6e 27 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  n')..        {..
6cf0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d1              // .
6d00: 80 d0 b5 d0 b7 d1 83 d0 bb d1 8c d1 82 d0 b0 d1  ................
6d10: 82 20 d0 bc d0 bd d0 be d0 b3 d0 be d1 81 d1 82  . ..............
6d20: d1 80 d0 be d1 87 d0 bd d0 be d0 b3 d0 be 20 d0  .............. .
6d30: bf d0 be d0 b8 d1 81 d0 ba d0 b0 0d 0a 20 20 20  .............   
6d40: 20 20 20 20 20 20 20 20 20 76 61 72 20 74 65 78           var tex
6d50: 74 20 3d 20 72 6f 77 2e 5f 6d 61 74 63 68 2e 72  t = row._match.r
6d60: 65 61 6c 52 65 73 75 6c 74 0d 0a 20 20 20 20 20  ealResult..     
6d70: 20 20 20 20 20 20 20 63 6f 6c 53 74 61 72 74 20         colStart 
6d80: 3d 20 72 6f 77 2e 5f 6d 61 74 63 68 2e 69 6e 64  = row._match.ind
6d90: 65 78 20 2b 20 31 0d 0a 20 20 20 20 20 20 20 20  ex + 1..        
6da0: 20 20 20 20 63 6f 6c 45 6e 64 20 3d 20 63 6f 6c      colEnd = col
6db0: 53 74 61 72 74 0d 0a 20 20 20 20 20 20 20 20 20  Start..         
6dc0: 20 20 20 66 6f 72 28 76 61 72 20 6b 20 3d 20 30     for(var k = 0
6dd0: 3b 20 6b 20 3c 20 74 65 78 74 2e 6c 65 6e 67 74  ; k < text.lengt
6de0: 68 3b 20 6b 2b 2b 29 0d 0a 20 20 20 20 20 20 20  h; k++)..       
6df0: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
6e00: 20 20 20 20 20 20 20 20 69 66 28 74 65 78 74 2e          if(text.
6e10: 63 68 61 72 41 74 28 6b 29 20 3d 3d 20 27 5c 6e  charAt(k) == '\n
6e20: 27 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ')..            
6e30: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
6e40: 20 20 20 20 20 20 20 20 20 20 20 6c 69 6e 65 45             lineE
6e50: 6e 64 2b 2b 0d 0a 20 20 20 20 20 20 20 20 20 20  nd++..          
6e60: 20 20 20 20 20 20 20 20 20 20 63 6f 6c 45 6e 64            colEnd
6e70: 20 3d 20 31 3b 0d 0a 20 20 20 20 20 20 20 20 20   = 1;..         
6e80: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
6e90: 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a            else..
6ea0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6eb0: 20 20 20 20 63 6f 6c 45 6e 64 2b 2b 0d 0a 20 20      colEnd++..  
6ec0: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
6ed0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
6ee0: 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d  else..        {.
6ef0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72  .            var
6f00: 20 73 65 61 72 63 68 50 61 74 74 65 72 6e 20 3d   searchPattern =
6f10: 20 74 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c 65   this.form.Whole
6f20: 57 6f 72 64 73 20 3f 20 22 28 3f 3a 5b 5e 5c 5c  Words ? "(?:[^\\
6f30: 77 5c 5c 64 d0 90 2d d1 8f 5d 7c 5e 29 22 20 2b  w\\d..-..]|^)" +
6f40: 20 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68 20   row.ExactMatch 
6f50: 2b 20 22 28 5b 5e 5c 5c 77 5c 5c 64 d0 90 2d d1  + "([^\\w\\d..-.
6f60: 8f 5d 7c 24 29 22 20 3a 20 53 74 72 69 6e 67 55  .]|$)" : StringU
6f70: 74 69 6c 73 2e 61 64 64 53 6c 61 73 68 65 73 28  tils.addSlashes(
6f80: 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68 29 3b  row.ExactMatch);
6f90: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76   ..            v
6fa0: 61 72 20 72 65 20 3d 20 6e 65 77 20 52 65 67 45  ar re = new RegE
6fb0: 78 70 28 73 65 61 72 63 68 50 61 74 74 65 72 6e  xp(searchPattern
6fc0: 2c 20 27 67 27 29 3b 0d 0a 20 20 20 20 20 20 20  , 'g');..       
6fd0: 20 20 20 20 20 76 61 72 20 6d 61 74 63 68 65 73       var matches
6fe0: 20 3d 20 72 65 2e 65 78 65 63 28 72 6f 77 2e 46   = re.exec(row.F
6ff0: 6f 75 6e 64 4c 69 6e 65 29 3b 0d 0a 0d 0a 20 20  oundLine);....  
7000: 20 20 20 20 20 20 20 20 20 20 63 6f 6c 53 74 61            colSta
7010: 72 74 20 3d 20 31 3b 0d 0a 20 20 20 20 20 20 20  rt = 1;..       
7020: 20 20 20 20 20 69 66 20 28 6d 61 74 63 68 65 73       if (matches
7030: 29 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) ..            
7040: 7b 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  {        ..     
7050: 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 53 74             colSt
7060: 61 72 74 20 3d 20 72 65 2e 6c 61 73 74 49 6e 64  art = re.lastInd
7070: 65 78 20 2d 20 72 6f 77 2e 45 78 61 63 74 4d 61  ex - row.ExactMa
7080: 74 63 68 2e 6c 65 6e 67 74 68 20 2b 20 31 3b 0d  tch.length + 1;.
7090: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
70a0: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
70b0: 20 20 20 69 66 20 28 74 68 69 73 2e 66 6f 72 6d     if (this.form
70c0: 2e 57 68 6f 6c 65 57 6f 72 64 73 20 26 26 20 6d  .WholeWords && m
70d0: 61 74 63 68 65 73 2e 6c 65 6e 67 74 68 20 3e 20  atches.length > 
70e0: 31 29 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  1)        ..    
70f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7100: 63 6f 6c 53 74 61 72 74 20 2d 3d 20 6d 61 74 63  colStart -= matc
7110: 68 65 73 5b 31 5d 2e 6c 65 6e 67 74 68 3b 20 0d  hes[1].length; .
7120: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a  .            }..
7130: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 45              colE
7140: 6e 64 20 3d 20 63 6f 6c 53 74 61 72 74 20 2b 20  nd = colStart + 
7150: 72 6f 77 2e 45 78 61 63 74 4d 61 74 63 68 2e 6c  row.ExactMatch.l
7160: 65 6e 67 74 68 0d 0a 20 20 20 20 20 20 20 20 7d  ength..        }
7170: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
7180: 20 20 20 20 2f 2f 20 d0 a3 d1 81 d1 82 d0 b0 d0      // .........
7190: bd d0 be d0 b2 d0 b8 d0 bc 20 d0 b2 d1 8b d0 b4  ......... ......
71a0: d0 b5 d0 bb d0 b5 d0 bd d0 b8 d0 b5 20 d0 bd d0  ............ ...
71b0: b0 20 d0 bd d0 b0 d0 b9 d0 b4 d0 b5 d0 bd d0 bd  . ..............
71c0: d0 be d0 b5 20 d1 81 d0 be d0 b2 d0 bf d0 b0 d0  .... ...........
71d0: b4 d0 b5 d0 bd d0 b8 d0 b5 20 d1 81 d0 be 20 d1  ......... .... .
71e0: 81 d1 82 d1 80 d0 be d0 ba d0 be d0 b9 20 d0 bf  ............. ..
71f0: d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20  .............   
7200: 20 20 20 20 20 74 61 72 67 65 74 57 69 6e 64 6f       targetWindo
7210: 77 2e 53 65 74 43 61 72 65 74 50 6f 73 28 6c 69  w.SetCaretPos(li
7220: 6e 65 53 74 61 72 74 2c 20 63 6f 6c 45 6e 64 29  neStart, colEnd)
7230: 3b 0d 0a 20 20 20 20 20 20 20 20 74 61 72 67 65  ;..        targe
7240: 74 57 69 6e 64 6f 77 2e 53 65 74 53 65 6c 65 63  tWindow.SetSelec
7250: 74 69 6f 6e 28 6c 69 6e 65 53 74 61 72 74 2c 20  tion(lineStart, 
7260: 63 6f 6c 53 74 61 72 74 2c 20 6c 69 6e 65 45 6e  colStart, lineEn
7270: 64 2c 20 63 6f 6c 45 6e 64 29 3b 0d 0a 20 20 20  d, colEnd);..   
7280: 20 7d 2c 0d 0a 0d 0a 20 20 20 20 6d 6f 76 65 52   },....    moveR
7290: 6f 77 43 75 72 73 6f 72 20 3a 20 66 75 6e 63 74  owCursor : funct
72a0: 69 6f 6e 20 28 66 6f 72 77 61 72 64 29 20 7b 0d  ion (forward) {.
72b0: 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20  .        ..     
72c0: 20 20 20 69 66 20 28 21 74 68 69 73 2e 72 65 73     if (!this.res
72d0: 75 6c 74 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28  ults.Rows.Count(
72e0: 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))..            
72f0: 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20  return;..       
7300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7310: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72     ..        var
7320: 20 72 6f 77 20 3d 20 74 68 69 73 2e 66 6f 72 6d   row = this.form
7330: 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63 68  .Controls.Search
7340: 52 65 73 75 6c 74 73 2e 43 75 72 72 65 6e 74 52  Results.CurrentR
7350: 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ow;..        .. 
7360: 20 20 20 20 20 20 20 69 66 20 28 21 72 6f 77 29         if (!row)
7370: 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20  ..        {..   
7380: 20 20 20 20 20 20 20 20 20 72 6f 77 20 3d 20 74           row = t
7390: 68 69 73 2e 72 65 73 75 6c 74 73 2e 52 6f 77 73  his.results.Rows
73a0: 2e 47 65 74 28 30 29 2e 47 65 74 28 30 29 3b 0d  .Get(0).Get(0);.
73b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20  .            if 
73c0: 28 74 68 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56  (this.form.TreeV
73d0: 69 65 77 29 0d 0a 20 20 20 20 20 20 20 20 20 20  iew)..          
73e0: 20 20 20 20 20 20 72 6f 77 20 3d 20 72 6f 77 2e        row = row.
73f0: 52 6f 77 73 2e 47 65 74 28 30 29 3b 0d 0a 20 20  Rows.Get(0);..  
7400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
7410: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
7420: 2e 67 6f 54 6f 4c 69 6e 65 28 72 6f 77 29 3b 20  .goToLine(row); 
7430: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
7440: 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20   return;..      
7450: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20    }..        .. 
7460: 20 20 20 20 20 20 20 69 66 20 28 66 6f 72 77 61         if (forwa
7470: 72 64 29 20 0d 0a 20 20 20 20 20 20 20 20 7b 0d  rd) ..        {.
7480: 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20  .            if 
7490: 28 72 6f 77 2e 52 6f 77 54 79 70 65 20 3d 3d 20  (row.RowType == 
74a0: 52 6f 77 54 79 70 65 73 2e 53 65 61 72 63 68 52  RowTypes.SearchR
74b0: 65 73 75 6c 74 29 0d 0a 20 20 20 20 20 20 20 20  esult)..        
74c0: 20 20 20 20 7b 20 20 20 20 0d 0a 20 20 20 20 20      {    ..     
74d0: 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65             while
74e0: 20 28 72 6f 77 29 0d 0a 20 20 20 20 20 20 20 20   (row)..        
74f0: 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20          {..     
7500: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
7510: 61 72 20 72 6f 77 73 20 3d 20 72 6f 77 2e 50 61  ar rows = row.Pa
7520: 72 65 6e 74 20 3f 20 72 6f 77 2e 50 61 72 65 6e  rent ? row.Paren
7530: 74 2e 52 6f 77 73 20 3a 20 74 68 69 73 2e 72 65  t.Rows : this.re
7540: 73 75 6c 74 73 2e 52 6f 77 73 3b 0d 0a 20 20 20  sults.Rows;..   
7550: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7560: 20 76 61 72 20 69 6e 64 65 78 20 3d 20 72 6f 77   var index = row
7570: 73 2e 49 6e 64 65 78 4f 66 28 72 6f 77 29 3b 0d  s.IndexOf(row);.
7580: 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20  .            .. 
7590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
75a0: 20 20 20 69 66 20 28 69 6e 64 65 78 20 3c 20 72     if (index < r
75b0: 6f 77 73 2e 43 6f 75 6e 74 28 29 20 2d 20 31 29  ows.Count() - 1)
75c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
75d0: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
75e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
75f0: 20 72 6f 77 20 3d 20 72 6f 77 73 2e 47 65 74 28   row = rows.Get(
7600: 69 6e 64 65 78 20 2b 20 31 29 3b 0d 0a 20 20 20  index + 1);..   
7610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7620: 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20       break;..   
7630: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7640: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
7650: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
7660: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66                if
7670: 20 28 21 72 6f 77 2e 50 61 72 65 6e 74 29 0d 0a   (!row.Parent)..
7680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7690: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
76a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
76b0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
76c0: 20 20 20 20 20 20 20 20 20 72 6f 77 20 3d 20 72           row = r
76d0: 6f 77 2e 50 61 72 65 6e 74 3b 20 20 20 20 20 20  ow.Parent;      
76e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
76f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7700: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
7710: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  }..            .
7720: 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69  .            whi
7730: 6c 65 20 28 72 6f 77 2e 52 6f 77 73 2e 43 6f 75  le (row.Rows.Cou
7740: 6e 74 28 29 20 3e 20 30 29 0d 0a 20 20 20 20 20  nt() > 0)..     
7750: 20 20 20 20 20 20 20 20 20 20 20 72 6f 77 20 3d             row =
7760: 20 72 6f 77 2e 52 6f 77 73 2e 47 65 74 28 30 29   row.Rows.Get(0)
7770: 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ;               
7780: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
7790: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 65 6c     }..        el
77a0: 73 65 0d 0a 20 20 20 20 20 20 20 20 7b 20 20 20  se..        {   
77b0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66  ..            if
77c0: 20 28 72 6f 77 2e 52 6f 77 54 79 70 65 20 3d 3d   (row.RowType ==
77d0: 20 52 6f 77 54 79 70 65 73 2e 53 65 61 72 63 68   RowTypes.Search
77e0: 52 65 73 75 6c 74 29 0d 0a 20 20 20 20 20 20 20  Result)..       
77f0: 20 20 20 20 20 7b 20 20 20 20 0d 0a 20 20 20 20       {    ..    
7800: 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c              whil
7810: 65 20 28 72 6f 77 29 20 0d 0a 20 20 20 20 20 20  e (row) ..      
7820: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
7830: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7840: 20 76 61 72 20 72 6f 77 73 20 3d 20 72 6f 77 2e   var rows = row.
7850: 50 61 72 65 6e 74 20 3f 20 72 6f 77 2e 50 61 72  Parent ? row.Par
7860: 65 6e 74 2e 52 6f 77 73 20 3a 20 74 68 69 73 2e  ent.Rows : this.
7870: 72 65 73 75 6c 74 73 2e 52 6f 77 73 3b 0d 0a 20  results.Rows;.. 
7880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7890: 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 72     var index = r
78a0: 6f 77 73 2e 49 6e 64 65 78 4f 66 28 72 6f 77 29  ows.IndexOf(row)
78b0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  ;..            .
78c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
78d0: 20 20 20 20 20 69 66 20 28 69 6e 64 65 78 20 3e       if (index >
78e0: 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20   0)..           
78f0: 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20           {..    
7900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7910: 20 20 20 20 72 6f 77 20 3d 20 72 6f 77 73 2e 47      row = rows.G
7920: 65 74 28 69 6e 64 65 78 20 2d 20 31 29 3b 0d 0a  et(index - 1);..
7930: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7940: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
7950: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7960: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
7970: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
7980: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7990: 20 69 66 20 28 21 72 6f 77 2e 50 61 72 65 6e 74   if (!row.Parent
79a0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
79b0: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b             break
79c0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
79d0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
79e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 77               row
79f0: 20 3d 20 72 6f 77 2e 50 61 72 65 6e 74 3b 20 20   = row.Parent;  
7a00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7a10: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
7a20: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
7a30: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
7a40: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
7a50: 20 77 68 69 6c 65 20 28 72 6f 77 2e 52 6f 77 73   while (row.Rows
7a60: 2e 43 6f 75 6e 74 28 29 20 3e 20 30 29 0d 0a 20  .Count() > 0).. 
7a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72                 r
7a80: 6f 77 20 3d 20 72 6f 77 2e 52 6f 77 73 2e 47 65  ow = row.Rows.Ge
7a90: 74 28 72 6f 77 2e 52 6f 77 73 2e 43 6f 75 6e 74  t(row.Rows.Count
7aa0: 28 29 20 2d 20 31 29 3b 20 20 20 20 20 20 20 20  () - 1);        
7ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7ac0: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
7ad0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74       ..        t
7ae0: 68 69 73 2e 67 6f 54 6f 4c 69 6e 65 28 72 6f 77  his.goToLine(row
7af0: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20  );..    },..    
7b00: 0d 0a 20 20 20 20 63 6c 65 61 72 53 65 61 72 63  ..    clearSearc
7b10: 68 52 65 73 75 6c 74 73 20 3a 20 66 75 6e 63 74  hResults : funct
7b20: 69 6f 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20 20  ion () {..      
7b30: 20 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52    this.results.R
7b40: 6f 77 73 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20  ows.Clear();..  
7b50: 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20    },..    ..    
7b60: 73 65 74 44 65 66 61 75 6c 74 53 65 61 72 63 68  setDefaultSearch
7b70: 51 75 65 72 79 20 3a 20 66 75 6e 63 74 69 6f 6e  Query : function
7b80: 20 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74   () {..        t
7b90: 68 69 73 2e 66 6f 72 6d 2e 43 75 72 72 65 6e 74  his.form.Current
7ba0: 43 6f 6e 74 72 6f 6c 3d 74 68 69 73 2e 66 6f 72  Control=this.for
7bb0: 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 51 75 65 72 79  m.Controls.Query
7bc0: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d  ;..    },..    .
7bd0: 0a 20 20 20 20 61 64 64 54 6f 48 69 73 74 6f 72  .    addToHistor
7be0: 79 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 71 75  y : function (qu
7bf0: 65 72 79 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  ery) {..        
7c00: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 71  ..        if (!q
7c10: 75 65 72 79 29 20 0d 0a 20 20 20 20 20 20 20 20  uery) ..        
7c20: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
7c30: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 2f       ..        /
7c40: 2f 20 d0 94 d0 be d0 b1 d0 b0 d0 b2 d0 bb d1 8f  / ..............
7c50: d0 b5 d0 bc 20 d0 b2 20 d0 b8 d1 81 d1 82 d0 be  .... .. ........
7c60: d1 80 d0 b8 d1 8e 20 d1 82 d0 be d0 bb d1 8c d0  ...... .........
7c70: ba d0 be 20 d0 b5 d1 81 d0 bb d0 b8 20 d1 82 d0  ... ........ ...
7c80: b0 d0 ba d0 be d0 b9 20 d0 bf d0 be d0 b8 d1 81  ....... ........
7c90: d0 ba d0 be d0 b2 d0 be d0 b9 20 d1 81 d1 82 d1  .......... .....
7ca0: 80 d0 be d0 ba d0 b8 20 d1 82 d0 b0 d0 bc 20 d0  ....... ...... .
7cb0: bd d0 b5 d1 82 2e 0d 0a 20 20 20 20 20 20 20 20  ........        
7cc0: 76 61 72 20 68 69 73 74 6f 72 79 20 3d 20 74 68  var history = th
7cd0: 69 73 2e 66 6f 72 6d 2e 53 65 61 72 63 68 48 69  is.form.SearchHi
7ce0: 73 74 6f 72 79 3b 0d 0a 20 20 20 20 20 20 20 20  story;..        
7cf0: 69 66 20 28 68 69 73 74 6f 72 79 2e 46 69 6e 64  if (history.Find
7d00: 42 79 56 61 6c 75 65 28 71 75 65 72 79 29 29 0d  ByValue(query)).
7d10: 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74  .            ret
7d20: 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  urn;..          
7d30: 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28    ..        if (
7d40: 68 69 73 74 6f 72 79 2e 43 6f 75 6e 74 28 29 29  history.Count())
7d50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 68 69  ..            hi
7d60: 73 74 6f 72 79 2e 49 6e 73 65 72 74 28 30 2c 20  story.Insert(0, 
7d70: 71 75 65 72 79 29 3b 0d 0a 20 20 20 20 20 20 20  query);..       
7d80: 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20   else..         
7d90: 20 20 20 68 69 73 74 6f 72 79 2e 41 64 64 28 71     history.Add(q
7da0: 75 65 72 79 29 3b 0d 0a 20 20 20 20 20 20 20 20  uery);..        
7db0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20     ..        // 
7dc0: d0 9d d0 b5 20 d0 bf d0 be d0 b7 d0 b2 d0 be d0  .... ...........
7dd0: bb d1 8f d0 b5 d0 bc 20 d0 b8 d1 81 d1 82 d0 be  ....... ........
7de0: d1 80 d0 b8 d0 b8 20 d1 80 d0 b0 d1 81 d1 82 d0  ...... .........
7df0: b8 20 d0 b1 d0 be d0 bb d0 b5 d0 b5 20 d0 b7 d0  . .......... ...
7e00: b0 d0 b4 d0 b0 d0 bd d0 bd d0 be d0 b9 20 d0 b3  ............. ..
7e10: d0 bb d1 83 d0 b1 d0 b8 d0 bd d1 8b 2e 0d 0a 20  ............... 
7e20: 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 68 69         while (hi
7e30: 73 74 6f 72 79 2e 43 6f 75 6e 74 28 29 20 3e 20  story.Count() > 
7e40: 74 68 69 73 2e 66 6f 72 6d 2e 48 69 73 74 6f 72  this.form.Histor
7e50: 79 44 65 70 74 68 29 0d 0a 20 20 20 20 20 20 20  yDepth)..       
7e60: 20 20 20 20 20 68 69 73 74 6f 72 79 2e 44 65 6c       history.Del
7e70: 65 74 65 28 68 69 73 74 6f 72 79 2e 43 6f 75 6e  ete(history.Coun
7e80: 74 28 29 20 2d 20 31 29 3b 0d 0a 20 20 20 20 7d  t() - 1);..    }
7e90: 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 67 65 74  ,..    ..    get
7ea0: 52 65 67 45 78 70 45 64 69 74 6f 72 53 63 72 69  RegExpEditorScri
7eb0: 70 74 50 61 74 68 20 3a 20 66 75 6e 63 74 69 6f  ptPath : functio
7ec0: 6e 20 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  n () {..        
7ed0: 76 61 72 20 6d 61 69 6e 46 6f 6c 64 65 72 20 3d  var mainFolder =
7ee0: 20 70 72 6f 66 69 6c 65 52 6f 6f 74 2e 67 65 74   profileRoot.get
7ef0: 56 61 6c 75 65 28 22 53 6e 65 67 6f 70 61 74 2f  Value("Snegopat/
7f00: 4d 61 69 6e 46 6f 6c 64 65 72 22 29 3b 0d 0a 20  MainFolder");.. 
7f10: 20 20 20 20 20 20 20 76 61 72 20 73 63 72 69 70         var scrip
7f20: 74 50 61 74 68 20 3d 20 6d 61 69 6e 46 6f 6c 64  tPath = mainFold
7f30: 65 72 20 2b 20 22 73 63 72 69 70 74 73 5c 5c 52  er + "scripts\\R
7f40: 65 67 45 78 70 45 64 69 74 6f 72 2e 6a 73 22 3b  egExpEditor.js";
7f50: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 66 20  ..        var f 
7f60: 3d 20 76 38 4e 65 77 28 27 46 69 6c 65 27 2c 20  = v8New('File', 
7f70: 73 63 72 69 70 74 50 61 74 68 29 3b 0d 0a 20 20  scriptPath);..  
7f80: 20 20 20 20 20 20 69 66 20 28 66 2e 45 78 69 73        if (f.Exis
7f90: 74 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20  t())..          
7fa0: 20 20 72 65 74 75 72 6e 20 73 63 72 69 70 74 50    return scriptP
7fb0: 61 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 72 65  ath;..        re
7fc0: 74 75 72 6e 20 27 27 3b 0d 0a 20 20 20 20 7d 2c  turn '';..    },
7fd0: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 46 6f 72 6d  ..    ..    Form
7fe0: 5f 4f 6e 4f 70 65 6e 20 3a 20 66 75 6e 63 74 69  _OnOpen : functi
7ff0: 6f 6e 20 28 29 20 7b 20 20 20 0d 0a 20 20 20 20  on () {   ..    
8000: 20 20 20 20 69 66 20 28 21 74 68 69 73 2e 67 65      if (!this.ge
8010: 74 52 65 67 45 78 70 45 64 69 74 6f 72 53 63 72  tRegExpEditorScr
8020: 69 70 74 50 61 74 68 28 29 29 0d 0a 20 20 20 20  iptPath())..    
8030: 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72          this.for
8040: 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 51 75 65 72 79  m.Controls.Query
8050: 2e 43 68 6f 69 63 65 42 75 74 74 6f 6e 20 3d 20  .ChoiceButton = 
8060: 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20  false;..        
8070: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 53  ..        this.S
8080: 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62 6c  etControlsVisibl
8090: 65 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a  e();..    },....
80a0: 20 20 20 20 46 6f 72 6d 5f 4f 6e 43 6c 6f 73 65      Form_OnClose
80b0: 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b   : function () {
80c0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 73  ..        this.s
80d0: 61 76 65 53 65 74 74 69 6e 67 73 28 29 3b 0d 0a  aveSettings();..
80e0: 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 43 6d      },....    Cm
80f0: 64 42 61 72 5f 42 74 50 72 65 76 20 3a 20 66 75  dBar_BtPrev : fu
8100: 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29  nction (control)
8110: 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73   {..        this
8120: 2e 6d 6f 76 65 52 6f 77 43 75 72 73 6f 72 28 66  .moveRowCursor(f
8130: 61 6c 73 65 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  alse);..    },..
8140: 0d 0a 20 20 20 20 43 6d 64 42 61 72 5f 42 74 4e  ..    CmdBar_BtN
8150: 65 78 74 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  ext : function (
8160: 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 20 20 20 20  control) {..    
8170: 20 20 20 20 74 68 69 73 2e 6d 6f 76 65 52 6f 77      this.moveRow
8180: 43 75 72 73 6f 72 28 74 72 75 65 29 3b 0d 0a 20  Cursor(true);.. 
8190: 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20     },..    ..   
81a0: 20 51 75 65 72 79 5f 4f 6e 43 68 61 6e 67 65 20   Query_OnChange 
81b0: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 74  : function (cont
81c0: 72 6f 6c 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  rol) {..        
81d0: 69 66 20 28 74 68 69 73 2e 66 6f 72 6d 2e 51 75  if (this.form.Qu
81e0: 65 72 79 20 21 3d 20 27 27 29 0d 0a 20 20 20 20  ery != '')..    
81f0: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
8200: 2e 73 65 61 72 63 68 41 63 74 69 76 65 44 6f 63  .searchActiveDoc
8210: 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20  ();..    },.... 
8220: 20 20 20 51 75 65 72 79 5f 53 74 61 72 74 4c 69     Query_StartLi
8230: 73 74 43 68 6f 69 63 65 20 3a 20 66 75 6e 63 74  stChoice : funct
8240: 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 2c 20 64 65  ion (control, de
8250: 66 61 75 6c 74 48 61 6e 64 6c 65 72 29 20 7b 0d  faultHandler) {.
8260: 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 72 6f 6c  .        control
8270: 2e 76 61 6c 2e 43 68 6f 69 63 65 4c 69 73 74 20  .val.ChoiceList 
8280: 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 53 65 61 72  = this.form.Sear
8290: 63 68 48 69 73 74 6f 72 79 3b 0d 0a 20 20 20 20  chHistory;..    
82a0: 7d 2c 0d 0a 0d 0a 20 20 20 20 42 74 53 65 61 72  },....    BtSear
82b0: 63 68 5f 43 6c 69 63 6b 20 3a 20 66 75 6e 63 74  ch_Click : funct
82c0: 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d  ion (control) {.
82d0: 0a 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74  ...        if (t
82e0: 68 69 73 2e 66 6f 72 6d 2e 51 75 65 72 79 20 3d  his.form.Query =
82f0: 3d 20 27 27 29 0d 0a 20 20 20 20 20 20 20 20 7b  = '')..        {
8300: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 6f  ..            Do
8310: 4d 65 73 73 61 67 65 42 6f 78 28 27 d0 9d d0 b5  MessageBox('....
8320: 20 d0 b7 d0 b0 d0 b4 d0 b0 d0 bd d0 b0 20 d1 81   ............ ..
8330: d1 82 d1 80 d0 be d0 ba d0 b0 20 d0 bf d0 be d0  .......... .....
8340: b8 d1 81 d0 ba d0 b0 27 29 3b 0d 0a 20 20 20 20  .......');..    
8350: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d          return;.
8360: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
8370: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68      ..        th
8380: 69 73 2e 73 65 61 72 63 68 41 63 74 69 76 65 44  is.searchActiveD
8390: 6f 63 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  oc();..    },...
83a0: 0a 20 20 20 20 43 6d 64 42 61 72 4f 70 74 69 6f  .    CmdBarOptio
83b0: 6e 73 5f 42 74 41 62 6f 75 74 20 3a 20 66 75 6e  ns_BtAbout : fun
83c0: 63 74 69 6f 6e 20 28 63 6f 6e 74 72 6f 6c 29 20  ction (control) 
83d0: 7b 0d 0a 20 20 20 20 20 20 20 20 52 75 6e 41 70  {..        RunAp
83e0: 70 28 27 68 74 74 70 3a 2f 2f 73 6e 65 67 6f 70  p('http://snegop
83f0: 61 74 2e 72 75 2f 73 63 72 69 70 74 73 2f 77 69  at.ru/scripts/wi
8400: 6b 69 3f 6e 61 6d 65 3d 65 78 74 53 65 61 72 63  ki?name=extSearc
8410: 68 2e 6a 73 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d  h.js');..    },.
8420: 0a 0d 0a 20 20 20 20 53 65 61 72 63 68 52 65 73  ...    SearchRes
8430: 75 6c 74 73 5f 53 65 6c 65 63 74 69 6f 6e 20 3a  ults_Selection :
8440: 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 74 72   function (contr
8450: 6f 6c 2c 20 73 65 6c 65 63 74 65 64 52 6f 77 2c  ol, selectedRow,
8460: 20 73 65 6c 65 63 74 65 64 43 6f 6c 2c 20 64 65   selectedCol, de
8470: 66 61 75 6c 74 48 61 6e 64 6c 65 72 29 20 7b 0d  faultHandler) {.
8480: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 67 6f  .        this.go
8490: 54 6f 4c 69 6e 65 28 73 65 6c 65 63 74 65 64 52  ToLine(selectedR
84a0: 6f 77 2e 76 61 6c 29 3b 0d 0a 20 20 20 20 20 20  ow.val);..      
84b0: 20 20 64 65 66 61 75 6c 74 48 61 6e 64 6c 65 72    defaultHandler
84c0: 2e 76 61 6c 20 3d 20 66 61 6c 73 65 3b 20 2f 2f  .val = false; //
84d0: 20 d0 ad d1 82 d0 be 20 d0 b4 d0 bb d1 8f 20 d1   ...... ...... .
84e0: 82 d0 be d0 b3 d0 be 20 d1 87 d1 82 d0 be d0 b1  ....... ........
84f0: d1 8b 20 d0 bf d0 be d1 81 d0 bb d0 b5 20 d0 bd  .. .......... ..
8500: d0 b0 d0 b6 d0 b0 d1 82 d0 b8 d1 8f 20 d0 bd d0  ............ ...
8510: b0 20 d1 81 d1 82 d1 80 d0 be d0 ba d1 83 20 d0  . ............ .
8520: ba d1 83 d1 80 d1 81 d0 be d1 80 20 d0 bd d0 b5  ........... ....
8530: 20 d1 83 d1 85 d0 be d0 b4 d0 b8 d1 82 20 d1 81   ............ ..
8540: 20 d1 82 d0 b0 d0 b1 d0 bb d0 b8 d1 87 d0 bd d0   ...............
8550: be d0 b3 d0 be 20 d0 bf d0 be d0 bb d1 8f 2c 20  ..... ........, 
8560: d0 b8 20 d0 bf d1 80 d0 b8 20 d0 bd d0 be d0 b2  .. ...... ......
8570: d0 be d0 b9 20 d0 b0 d0 ba d1 82 d0 b8 d0 b2 d0  .... ...........
8580: b8 d0 b7 d0 b0 d1 86 d0 b8 d0 b8 20 d1 84 d0 be  ........... ....
8590: d1 80 d0 bc d1 8b 20 d0 bc d0 be d0 b6 d0 bd d0  ...... .........
85a0: be 20 d0 b1 d1 8b d0 bb d0 be 20 d0 ba d1 83 d1  . ........ .....
85b0: 80 d1 81 d0 be d1 80 d0 be d0 bc 20 d0 bf d0 be  ........... ....
85c0: d1 81 d0 bc d0 be d1 82 d1 80 d0 b5 d1 82 d1 8c  ................
85d0: 20 d0 b4 d1 80 d1 83 d0 b3 d0 b8 d0 b5 20 d0 b7   ............ ..
85e0: d0 bd d0 b0 d1 87 d0 b5 d0 bd d0 b8 d1 8f 0d 0a  ................
85f0: 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20      },..    ..  
8600: 20 20 62 65 66 6f 72 65 45 78 69 74 41 70 70 20    beforeExitApp 
8610: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d  : function () {.
8620: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 77 61  .        this.wa
8630: 74 63 68 65 72 2e 73 74 6f 70 57 61 74 63 68 28  tcher.stopWatch(
8640: 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20  );..    },....  
8650: 20 20 49 73 52 65 67 45 78 70 5f 4f 6e 43 68 61    IsRegExp_OnCha
8660: 6e 67 65 20 3a 20 66 75 6e 63 74 69 6f 6e 28 d0  nge : function(.
8670: ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 29 20 7b  .............) {
8680: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68  ..        if (th
8690: 69 73 2e 66 6f 72 6d 2e 49 73 52 65 67 45 78 70  is.form.IsRegExp
86a0: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74  )..            t
86b0: 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f  his.form.WholeWo
86c0: 72 64 73 20 3d 20 66 61 6c 73 65 3b 0d 0a 0d 0a  rds = false;....
86d0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 53 65 74          this.Set
86e0: 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62 6c 65 28  ControlsVisible(
86f0: 29 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20  )..    },....   
8700: 20 57 68 6f 6c 65 57 6f 72 64 73 5f 4f 6e 43 68   WholeWords_OnCh
8710: 61 6e 67 65 20 3a 20 66 75 6e 63 74 69 6f 6e 28  ange : function(
8720: d0 ad d0 bb d0 b5 d0 bc d0 b5 d0 bd d1 82 29 20  ..............) 
8730: 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74  {..        if (t
8740: 68 69 73 2e 66 6f 72 6d 2e 57 68 6f 6c 65 57 6f  his.form.WholeWo
8750: 72 64 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20  rds)..          
8760: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52 65    this.form.IsRe
8770: 67 45 78 70 20 3d 20 66 61 6c 73 65 3b 0d 0a 0d  gExp = false;...
8780: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 53 65  .        this.Se
8790: 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62 6c 65  tControlsVisible
87a0: 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20  ();..    },..   
87b0: 20 0d 0a 20 20 20 20 51 75 65 72 79 5f 53 74 61   ..    Query_Sta
87c0: 72 74 43 68 6f 69 63 65 20 3a 20 66 75 6e 63 74  rtChoice : funct
87d0: 69 6f 6e 20 28 43 6f 6e 74 72 6f 6c 2c 20 44 65  ion (Control, De
87e0: 66 61 75 6c 74 48 61 6e 64 6c 65 72 29 20 7b 0d  faultHandler) {.
87f0: 0a 20 20 20 20 20 20 20 20 76 61 72 20 72 65 45  .        var reE
8800: 64 69 74 6f 72 50 61 74 68 20 3d 20 74 68 69 73  ditorPath = this
8810: 2e 67 65 74 52 65 67 45 78 70 45 64 69 74 6f 72  .getRegExpEditor
8820: 53 63 72 69 70 74 50 61 74 68 28 29 3b 0d 0a 20  ScriptPath();.. 
8830: 20 20 20 20 20 20 20 69 66 20 28 72 65 45 64 69         if (reEdi
8840: 74 6f 72 50 61 74 68 29 0d 0a 20 20 20 20 20 20  torPath)..      
8850: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
8860: 20 44 65 66 61 75 6c 74 48 61 6e 64 6c 65 72 2e   DefaultHandler.
8870: 76 61 6c 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20  val = false;..  
8880: 20 20 20 20 20 20 20 20 20 20 72 65 45 64 69 74            reEdit
8890: 6f 72 41 64 64 69 6e 20 3d 20 73 74 64 6c 69 62  orAddin = stdlib
88a0: 2e 72 65 71 75 69 72 65 28 72 65 45 64 69 74 6f  .require(reEdito
88b0: 72 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20  rPath);..       
88c0: 20 20 20 20 20 69 66 20 28 72 65 45 64 69 74 6f       if (reEdito
88d0: 72 41 64 64 69 6e 29 0d 0a 20 20 20 20 20 20 20  rAddin)..       
88e0: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
88f0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72          this.for
8900: 6d 2e 49 73 52 65 67 45 78 70 20 3d 20 74 72 75  m.IsRegExp = tru
8910: 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e;..            
8920: 20 20 20 20 76 61 72 20 72 65 45 64 69 74 6f 72      var reEditor
8930: 20 3d 20 72 65 45 64 69 74 6f 72 41 64 64 69 6e   = reEditorAddin
8940: 2e 43 72 65 61 74 65 52 65 67 45 78 70 45 64 69  .CreateRegExpEdi
8950: 74 6f 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  tor();..        
8960: 20 20 20 20 20 20 20 20 72 65 45 64 69 74 6f 72          reEditor
8970: 2e 6f 70 65 6e 28 43 6f 6e 74 72 6f 6c 2e 76 61  .open(Control.va
8980: 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  l);..           
8990: 20 7d 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20   }        ..    
89a0: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 20      }..    },.. 
89b0: 20 20 20 0d 0a 20 20 20 20 53 65 61 72 63 68 52     ..    SearchR
89c0: 65 73 75 6c 74 73 5f 4f 6e 52 6f 77 4f 75 74 70  esults_OnRowOutp
89d0: 75 74 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 43  ut : function (C
89e0: 6f 6e 74 72 6f 6c 2c 20 52 6f 77 41 70 70 65 61  ontrol, RowAppea
89f0: 72 61 6e 63 65 2c 20 52 6f 77 44 61 74 61 29 20  rance, RowData) 
8a00: 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  {..        ..   
8a10: 20 20 20 20 20 76 61 72 20 63 65 6c 6c 20 3d 20       var cell = 
8a20: 52 6f 77 41 70 70 65 61 72 61 6e 63 65 2e 76 61  RowAppearance.va
8a30: 6c 2e 43 65 6c 6c 73 2e 46 6f 75 6e 64 4c 69 6e  l.Cells.FoundLin
8a40: 65 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  e;..        ..  
8a50: 20 20 20 20 20 20 73 77 69 74 63 68 20 28 52 6f        switch (Ro
8a60: 77 44 61 74 61 2e 76 61 6c 2e 52 6f 77 54 79 70  wData.val.RowTyp
8a70: 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20  e)..        {.. 
8a80: 20 20 20 20 20 20 20 63 61 73 65 20 52 6f 77 54         case RowT
8a90: 79 70 65 73 2e 46 75 6e 63 47 72 6f 75 70 3a 0d  ypes.FuncGroup:.
8aa0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 65 6c  .            cel
8ab0: 6c 2e 53 65 74 50 69 63 74 75 72 65 28 74 68 69  l.SetPicture(thi
8ac0: 73 2e 49 63 6f 6e 73 2e 46 75 6e 63 29 3b 0d 0a  s.Icons.Func);..
8ad0: 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61              brea
8ae0: 6b 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20  k;..        ..  
8af0: 20 20 20 20 20 20 63 61 73 65 20 52 6f 77 54 79        case RowTy
8b00: 70 65 73 2e 50 72 6f 63 47 72 6f 75 70 3a 0d 0a  pes.ProcGroup:..
8b10: 20 20 20 20 20 20 20 20 20 20 20 20 63 65 6c 6c              cell
8b20: 2e 53 65 74 50 69 63 74 75 72 65 28 74 68 69 73  .SetPicture(this
8b30: 2e 49 63 6f 6e 73 2e 50 72 6f 63 29 3b 0d 0a 20  .Icons.Proc);.. 
8b40: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b             break
8b50: 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 63 61 73  ;....        cas
8b60: 65 20 52 6f 77 54 79 70 65 73 2e 53 65 61 72 63  e RowTypes.Searc
8b70: 68 44 6f 63 3a 0d 0a 20 20 20 20 20 20 20 20 20  hDoc:..         
8b80: 20 20 20 52 6f 77 41 70 70 65 61 72 61 6e 63 65     RowAppearance
8b90: 2e 76 61 6c 2e 43 65 6c 6c 73 2e 4c 69 6e 65 4e  .val.Cells.LineN
8ba0: 6f 2e 53 65 74 54 65 78 74 28 27 27 29 3b 0d 0a  o.SetText('');..
8bb0: 20 20 20 20 20 20 20 20 20 20 20 20 52 6f 77 41              RowA
8bc0: 70 70 65 61 72 61 6e 63 65 2e 76 61 6c 2e 46 6f  ppearance.val.Fo
8bd0: 6e 74 20 3d 20 74 68 69 73 2e 53 65 61 72 63 68  nt = this.Search
8be0: 44 6f 63 52 6f 77 46 6f 6e 74 3b 0d 0a 20 20 20  DocRowFont;..   
8bf0: 20 20 20 20 20 20 20 20 20 52 6f 77 41 70 70 65           RowAppe
8c00: 61 72 61 6e 63 65 2e 76 61 6c 2e 54 65 78 74 43  arance.val.TextC
8c10: 6f 6c 6f 72 20 3d 20 57 65 62 43 6f 6c 6f 72 73  olor = WebColors
8c20: 2e 44 61 72 6b 42 6c 75 65 3b 0d 0a 20 20 20 20  .DarkBlue;..    
8c30: 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a          break;..
8c40: 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20              ..  
8c50: 20 20 20 20 20 20 64 65 66 61 75 6c 74 3a 0d 0a        default:..
8c60: 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61              brea
8c70: 6b 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20  k;..        }.. 
8c80: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
8c90: 20 69 66 20 28 52 6f 77 44 61 74 61 2e 76 61 6c   if (RowData.val
8ca0: 2e 5f 6d 65 74 68 6f 64 20 26 26 20 52 6f 77 44  ._method && RowD
8cb0: 61 74 61 2e 76 61 6c 2e 5f 6d 65 74 68 6f 64 2e  ata.val._method.
8cc0: 49 73 50 72 6f 63 20 21 3d 3d 20 75 6e 64 65 66  IsProc !== undef
8cd0: 69 6e 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20  ined)..         
8ce0: 20 20 20 52 6f 77 41 70 70 65 61 72 61 6e 63 65     RowAppearance
8cf0: 2e 76 61 6c 2e 43 65 6c 6c 73 2e 4d 65 74 68 6f  .val.Cells.Metho
8d00: 64 2e 53 65 74 50 69 63 74 75 72 65 28 52 6f 77  d.SetPicture(Row
8d10: 44 61 74 61 2e 76 61 6c 2e 5f 6d 65 74 68 6f 64  Data.val._method
8d20: 2e 49 73 50 72 6f 63 20 3f 20 74 68 69 73 2e 49  .IsProc ? this.I
8d30: 63 6f 6e 73 2e 50 72 6f 63 20 3a 20 74 68 69 73  cons.Proc : this
8d40: 2e 49 63 6f 6e 73 2e 46 75 6e 63 29 3b 0d 0a 20  .Icons.Func);.. 
8d50: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 2c 0d         ..    },.
8d60: 0a 20 20 20 20 0d 0a 20 20 20 20 73 77 69 74 63  .    ..    switc
8d70: 68 56 69 65 77 20 3a 20 66 75 6e 63 74 69 6f 6e  hView : function
8d80: 20 28 73 65 74 54 72 65 65 56 69 65 77 29 20 7b   (setTreeView) {
8d90: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
8da0: 20 20 20 20 76 61 72 20 72 65 73 75 6c 74 73 20      var results 
8db0: 3d 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 43  = this.results.C
8dc0: 6f 70 79 28 29 3b 0d 0a 20 20 20 20 20 20 20 20  opy();..        
8dd0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 63  ..        this.c
8de0: 6c 65 61 72 53 65 61 72 63 68 52 65 73 75 6c 74  learSearchResult
8df0: 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  s();..        ..
8e00: 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72          for (var
8e10: 20 64 6f 63 52 6f 77 49 78 20 3d 20 30 3b 20 64   docRowIx = 0; d
8e20: 6f 63 52 6f 77 49 78 20 3c 20 72 65 73 75 6c 74  ocRowIx < result
8e30: 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20  s.Rows.Count(); 
8e40: 64 6f 63 52 6f 77 49 78 2b 2b 29 0d 0a 20 20 20  docRowIx++)..   
8e50: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
8e60: 20 20 20 20 76 61 72 20 6f 6c 64 44 6f 63 52 6f      var oldDocRo
8e70: 77 20 3d 20 72 65 73 75 6c 74 73 2e 52 6f 77 73  w = results.Rows
8e80: 2e 47 65 74 28 64 6f 63 52 6f 77 49 78 29 3b 0d  .Get(docRowIx);.
8e90: 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72  .            var
8ea0: 20 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 72   docRow = this.r
8eb0: 65 73 75 6c 74 73 2e 52 6f 77 73 2e 41 64 64 28  esults.Rows.Add(
8ec0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
8ed0: 46 69 6c 6c 50 72 6f 70 65 72 74 79 56 61 6c 75  FillPropertyValu
8ee0: 65 73 28 64 6f 63 52 6f 77 2c 20 6f 6c 64 44 6f  es(docRow, oldDo
8ef0: 63 52 6f 77 29 3b 0d 0a 20 20 20 20 20 20 20 20  cRow);..        
8f00: 20 20 20 20 64 6f 63 52 6f 77 2e 67 72 6f 75 70      docRow.group
8f10: 73 43 61 63 68 65 20 3d 20 76 38 4e 65 77 28 27  sCache = v8New('
8f20: 4d 61 70 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  Map');..        
8f30: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
8f40: 20 20 69 66 20 28 73 65 74 54 72 65 65 56 69 65    if (setTreeVie
8f50: 77 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  w)..            
8f60: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
8f70: 20 20 20 66 6f 72 20 28 76 61 72 20 69 3d 30 3b     for (var i=0;
8f80: 20 69 3c 6f 6c 64 44 6f 63 52 6f 77 2e 52 6f 77   i<oldDocRow.Row
8f90: 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b 2b 29 0d  s.Count(); i++).
8fa0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
8fb0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
8fc0: 20 20 20 20 20 20 20 20 76 61 72 20 72 6f 77 20          var row 
8fd0: 3d 20 6f 6c 64 44 6f 63 52 6f 77 2e 52 6f 77 73  = oldDocRow.Rows
8fe0: 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20 20 20 20  .Get(i);..      
8ff0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
9000: 72 20 67 72 6f 75 70 52 6f 77 20 3d 20 74 68 69  r groupRow = thi
9010: 73 2e 67 65 74 47 72 6f 75 70 52 6f 77 28 64 6f  s.getGroupRow(do
9020: 63 52 6f 77 2c 20 72 6f 77 2e 5f 6d 65 74 68 6f  cRow, row._metho
9030: 64 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  d);..           
9040: 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65 73           var res
9050: 52 6f 77 20 3d 20 67 72 6f 75 70 52 6f 77 2e 52  Row = groupRow.R
9060: 6f 77 73 2e 41 64 64 28 29 3b 0d 0a 20 20 20 20  ows.Add();..    
9070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9080: 46 69 6c 6c 50 72 6f 70 65 72 74 79 56 61 6c 75  FillPropertyValu
9090: 65 73 28 72 65 73 52 6f 77 2c 20 72 6f 77 29 3b  es(resRow, row);
90a0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
90b0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
90c0: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
90d0: 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20  else..          
90e0: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
90f0: 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 3d       for (var i=
9100: 30 3b 20 69 3c 6f 6c 64 44 6f 63 52 6f 77 2e 52  0; i<oldDocRow.R
9110: 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b 2b  ows.Count(); i++
9120: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )..             
9130: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
9140: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 67 72            var gr
9150: 6f 75 70 52 6f 77 20 3d 20 6f 6c 64 44 6f 63 52  oupRow = oldDocR
9160: 6f 77 2e 52 6f 77 73 2e 47 65 74 28 69 29 3b 0d  ow.Rows.Get(i);.
9170: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
9180: 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 6a 3d       for (var j=
9190: 30 3b 20 6a 3c 67 72 6f 75 70 52 6f 77 2e 52 6f  0; j<groupRow.Ro
91a0: 77 73 2e 43 6f 75 6e 74 28 29 3b 20 6a 2b 2b 29  ws.Count(); j++)
91b0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
91c0: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
91d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
91e0: 20 76 61 72 20 72 6f 77 20 3d 20 67 72 6f 75 70   var row = group
91f0: 52 6f 77 2e 52 6f 77 73 2e 47 65 74 28 6a 29 3b  Row.Rows.Get(j);
9200: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
9210: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65            var re
9220: 73 52 6f 77 20 3d 20 64 6f 63 52 6f 77 2e 52 6f  sRow = docRow.Ro
9230: 77 73 2e 41 64 64 28 29 3b 0d 0a 20 20 20 20 20  ws.Add();..     
9240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9250: 20 20 20 46 69 6c 6c 50 72 6f 70 65 72 74 79 56     FillPropertyV
9260: 61 6c 75 65 73 28 72 65 73 52 6f 77 2c 20 72 6f  alues(resRow, ro
9270: 77 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  w);..           
9280: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
9290: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
92a0: 20 20 20 20 20 20 20 20 20 20 20 7d 20 20 20 20             }    
92b0: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
92c0: 20 20 20 20 20 74 68 69 73 2e 65 78 70 61 6e 64       this.expand
92d0: 54 72 65 65 28 29 3b 20 20 20 20 20 20 20 20 0d  Tree();        .
92e0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 53 65  .        this.Se
92f0: 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62 6c 65  tControlsVisible
9300: 28 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20  ();..    },..   
9310: 20 0d 0a 20 20 20 20 43 6d 64 42 61 72 5f 54 72   ..    CmdBar_Tr
9320: 65 65 56 69 65 77 20 3a 20 66 75 6e 63 74 69 6f  eeView : functio
9330: 6e 20 28 42 75 74 74 6f 6e 29 20 7b 0d 0a 20 20  n (Button) {..  
9340: 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e        this.form.
9350: 54 72 65 65 56 69 65 77 20 3d 20 21 74 68 69 73  TreeView = !this
9360: 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d  .form.TreeView;.
9370: 0a 20 20 20 20 20 20 20 20 42 75 74 74 6f 6e 2e  .        Button.
9380: 76 61 6c 2e 43 68 65 63 6b 20 3d 20 74 68 69 73  val.Check = this
9390: 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d  .form.TreeView;.
93a0: 0a 20 20 20 20 20 20 20 20 2f 2f 74 68 69 73 2e  .        //this.
93b0: 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65  form.Controls.Se
93c0: 61 72 63 68 52 65 73 75 6c 74 73 2e 43 6f 6c 75  archResults.Colu
93d0: 6d 6e 73 2e 46 6f 75 6e 64 4c 69 6e 65 2e 53 68  mns.FoundLine.Sh
93e0: 6f 77 48 69 65 72 61 72 63 68 79 20 3d 20 74 68  owHierarchy = th
93f0: 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77  is.form.TreeView
9400: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
9410: 73 77 69 74 63 68 56 69 65 77 28 74 68 69 73 2e  switchView(this.
9420: 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 29 3b 0d  form.TreeView);.
9430: 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20  .    },..    .. 
9440: 20 20 20 43 6d 64 42 61 72 5f 45 78 70 61 6e 64     CmdBar_Expand
9450: 41 6c 6c 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28  All : function (
9460: 42 75 74 74 6f 6e 29 20 7b 0d 0a 20 20 20 20 20  Button) {..     
9470: 20 20 20 74 68 69 73 2e 65 78 70 61 6e 64 54 72     this.expandTr
9480: 65 65 28 66 61 6c 73 65 29 3b 0d 0a 20 20 20 20  ee(false);..    
9490: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 43 6d  },..    ..    Cm
94a0: 64 42 61 72 5f 43 6f 6c 6c 61 70 73 65 41 6c 6c  dBar_CollapseAll
94b0: 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 42 75 74   : function (But
94c0: 74 6f 6e 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  ton) {..        
94d0: 74 68 69 73 2e 65 78 70 61 6e 64 54 72 65 65 28  this.expandTree(
94e0: 74 72 75 65 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a  true);..    },..
94f0: 0d 0a 20 20 20 20 53 65 74 43 6f 6e 74 72 6f 6c  ..    SetControl
9500: 73 56 69 73 69 62 6c 65 20 3a 20 66 75 6e 63 74  sVisible : funct
9510: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20 20 20  ion() {..       
9520: 20 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 63   ..        var c
9530: 74 72 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 43  tr = this.form.C
9540: 6f 6e 74 72 6f 6c 73 3b 0d 0a 20 20 20 20 20 20  ontrols;..      
9550: 20 20 2f 2f 63 74 72 2e 53 65 61 72 63 68 52 65    //ctr.SearchRe
9560: 73 75 6c 74 73 2e 43 6f 6c 75 6d 6e 73 2e 46 6f  sults.Columns.Fo
9570: 75 6e 64 4c 69 6e 65 2e 53 68 6f 77 48 69 65 72  undLine.ShowHier
9580: 61 72 63 68 79 20 3d 20 74 68 69 73 2e 66 6f 72  archy = this.for
9590: 6d 2e 54 72 65 65 56 69 65 77 3b 20 20 20 20 0d  m.TreeView;    .
95a0: 0a 20 20 20 20 20 20 20 20 63 74 72 2e 43 6d 64  .        ctr.Cmd
95b0: 42 61 72 2e 42 75 74 74 6f 6e 73 2e 54 72 65 65  Bar.Buttons.Tree
95c0: 56 69 65 77 2e 43 68 65 63 6b 20 3d 20 74 68 69  View.Check = thi
95d0: 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 3b  s.form.TreeView;
95e0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 66  ..        this.f
95f0: 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65 61  orm.Controls.Sea
9600: 72 63 68 52 65 73 75 6c 74 73 2e 43 6f 6c 75 6d  rchResults.Colum
9610: 6e 73 2e 4d 65 74 68 6f 64 2e 56 69 73 69 62 6c  ns.Method.Visibl
9620: 65 20 3d 20 21 74 68 69 73 2e 66 6f 72 6d 2e 54  e = !this.form.T
9630: 72 65 65 56 69 65 77 3b 0d 0a 20 20 20 20 20 20  reeView;..      
9640: 20 20 74 68 69 73 2e 66 6f 72 6d 2e 43 6f 6e 74    this.form.Cont
9650: 72 6f 6c 73 2e 53 65 61 72 63 68 52 65 73 75 6c  rols.SearchResul
9660: 74 73 2e 43 6f 6c 75 6d 6e 73 2e 45 78 61 63 74  ts.Columns.Exact
9670: 4d 61 74 63 68 2e 56 69 73 69 62 6c 65 20 3d 20  Match.Visible = 
9680: 74 68 69 73 2e 66 6f 72 6d 2e 49 73 52 65 67 45  this.form.IsRegE
9690: 78 70 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76  xp;....        v
96a0: 61 72 20 62 75 74 74 6f 6e 73 20 3d 20 74 68 69  ar buttons = thi
96b0: 73 2e 66 6f 72 6d 2e 43 6f 6e 74 72 6f 6c 73 2e  s.form.Controls.
96c0: 43 6d 64 42 61 72 2e 42 75 74 74 6f 6e 73 3b 0d  CmdBar.Buttons;.
96d0: 0a 20 20 20 20 20 20 20 20 62 75 74 74 6f 6e 73  .        buttons
96e0: 2e 45 78 70 61 6e 64 41 6c 6c 2e 45 6e 61 62 6c  .ExpandAll.Enabl
96f0: 65 64 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 54  ed = this.form.T
9700: 72 65 65 56 69 65 77 3b 0d 0a 20 20 20 20 20 20  reeView;..      
9710: 20 20 62 75 74 74 6f 6e 73 2e 41 63 74 69 6f 6e    buttons.Action
9720: 73 2e 42 75 74 74 6f 6e 73 2e 45 78 70 61 6e 64  s.Buttons.Expand
9730: 41 6c 6c 2e 45 6e 61 62 6c 65 64 20 3d 20 74 68  All.Enabled = th
9740: 69 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77  is.form.TreeView
9750: 3b 0d 0a 20 20 20 20 20 20 20 20 62 75 74 74 6f  ;..        butto
9760: 6e 73 2e 43 6f 6c 6c 61 70 73 65 41 6c 6c 2e 45  ns.CollapseAll.E
9770: 6e 61 62 6c 65 64 20 3d 20 74 68 69 73 2e 66 6f  nabled = this.fo
9780: 72 6d 2e 54 72 65 65 56 69 65 77 3b 0d 0a 20 20  rm.TreeView;..  
9790: 20 20 20 20 20 20 62 75 74 74 6f 6e 73 2e 41 63        buttons.Ac
97a0: 74 69 6f 6e 73 2e 42 75 74 74 6f 6e 73 2e 43 6f  tions.Buttons.Co
97b0: 6c 6c 61 70 73 65 41 6c 6c 2e 45 6e 61 62 6c 65  llapseAll.Enable
97c0: 64 20 3d 20 74 68 69 73 2e 66 6f 72 6d 2e 54 72  d = this.form.Tr
97d0: 65 65 56 69 65 77 3b 0d 0a 0d 0a 20 20 20 20 20  eeView;....     
97e0: 20 20 20 74 68 69 73 2e 66 6f 72 6d 2e 63 61 70     this.form.cap
97f0: 74 69 6f 6e 20 3d 20 22 d0 a0 d0 b0 d1 81 d1 88  tion = "........
9800: d0 b8 d1 80 d0 b5 d0 bd d0 bd d1 8b d0 b9 20 d0  .............. .
9810: bf d0 be d0 b8 d1 81 d0 ba 20 d0 b2 20 d0 bc d0  ......... .. ...
9820: be d0 b4 d1 83 d0 bb d0 b5 22 3b 0d 0a 20 20 20  .........";..   
9830: 20 7d 0d 0a 20 20 0d 0a 7d 29 3b 20 2f 2f 20 65   }..  ..}); // e
9840: 6e 64 20 6f 66 20 45 78 74 53 65 61 72 63 68 20  nd of ExtSearch 
9850: 63 6c 61 73 73 0d 0a 0d 0a 45 78 74 53 65 61 72  class....ExtSear
9860: 63 68 47 6c 6f 62 61 6c 20 3d 20 45 78 74 53 65  chGlobal = ExtSe
9870: 61 72 63 68 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d  arch.extend({...
9880: 0a 20 20 20 20 73 65 74 74 69 6e 67 73 52 6f 6f  .    settingsRoo
9890: 74 50 61 74 68 20 3a 20 53 65 6c 66 53 63 72 69  tPath : SelfScri
98a0: 70 74 2e 75 6e 69 71 75 65 4e 61 6d 65 2b 22 47  pt.uniqueName+"G
98b0: 6c 6f 62 61 6c 22 2c 20 2f 2f 20 d1 82 d0 b5 d1  lobal", // .....
98c0: 81 d1 82 2c 20 d0 bf d1 83 d1 81 d0 ba d0 b0 d0  ..., ...........
98d0: b9 20 d1 83 20 d0 bd d0 b0 d1 81 20 d0 b8 20 d0  . .. ...... .. .
98e0: bd d0 b0 d1 81 d1 82 d1 80 d0 be d0 b9 d0 ba d0  ................
98f0: b8 20 d0 b1 d1 83 d0 b4 d1 83 d1 82 20 d0 b3 d0  . .......... ...
9900: bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b d0  ................
9910: bc d0 b8 2e 20 0d 0a 20 20 20 20 0d 0a 20 20 20  .... ..    ..   
9920: 20 73 65 74 74 69 6e 67 73 20 3a 20 7b 0d 0a 20   settings : {.. 
9930: 20 20 20 20 20 20 20 70 66 6c 53 6e 65 67 6f 70         pflSnegop
9940: 61 74 20 3a 20 7b 0d 0a 20 20 20 20 20 20 20 20  at : {..        
9950: 20 20 20 20 27 49 73 52 65 67 45 78 70 27 20 20      'IsRegExp'  
9960: 20 20 20 20 3a 20 66 61 6c 73 65 2c 20 2f 2f 20      : false, // 
9970: d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 80 d0 b5 d0  .......... .....
9980: b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b d0 bc d0  ................
9990: b8 20 d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd  . ..............
99a0: d0 b8 d1 8f d0 bc d0 b8 2e 0d 0a 20 20 20 20 20  ...........     
99b0: 20 20 20 20 20 20 20 27 43 61 73 65 53 65 6e 73         'CaseSens
99c0: 65 74 69 76 65 27 20 3a 20 66 61 6c 73 65 2c 20  etive' : false, 
99d0: 2f 2f 20 d0 a3 d1 87 d0 b8 d1 82 d1 8b d0 b2 d0  // .............
99e0: b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b3 d0 b8 d1 81  ..... ..........
99f0: d1 82 d1 80 20 d0 bf d1 80 d0 b8 20 d0 bf d0 be  .... ...... ....
9a00: d0 b8 d1 81 d0 ba d0 b5 2e 0d 0a 20 20 20 20 20  ...........     
9a10: 20 20 20 20 20 20 20 27 57 68 6f 6c 65 57 6f 72         'WholeWor
9a20: 64 73 27 20 20 20 20 3a 20 66 61 6c 73 65 2c 20  ds'    : false, 
9a30: 2f 2f 20 d0 9f d0 be d0 b8 d1 81 d0 ba 20 d1 81  // .......... ..
9a40: d0 bb d0 be d0 b2 d0 b0 20 d1 86 d0 b5 d0 bb d0  ........ .......
9a50: b8 d0 ba d0 be d0 bc 2e 0d 0a 20 20 20 20 20 20  ..........      
9a60: 20 20 20 20 20 20 27 53 65 61 72 63 68 48 69 73        'SearchHis
9a70: 74 6f 72 79 27 20 3a 20 76 38 4e 65 77 28 27 56  tory' : v8New('V
9a80: 61 6c 75 65 4c 69 73 74 27 29 2c 20 2f 2f 20 d0  alueList'), // .
9a90: 98 d1 81 d1 82 d0 be d1 80 d0 b8 d1 8f 20 d0 bf  ............. ..
9aa0: d0 be d0 b8 d1 81 d0 ba d0 b0 2e 0d 0a 20 20 20  .............   
9ab0: 20 20 20 20 20 20 20 20 20 27 48 69 73 74 6f 72           'Histor
9ac0: 79 44 65 70 74 68 27 20 20 3a 20 31 35 2c 20 2f  yDepth'  : 15, /
9ad0: 2f 20 d0 9a d0 be d0 bb d0 b8 d1 87 d0 b5 d1 81  / ..............
9ae0: d1 82 d0 b2 d0 be 20 d1 8d d0 bb d0 b5 d0 bc d0  ...... .........
9af0: b5 d0 bd d1 82 d0 be d0 b2 20 d0 b8 d1 81 d1 82  ......... ......
9b00: d0 be d1 80 d0 b8 d0 b8 20 d0 bf d0 be d0 b8 d1  ........ .......
9b10: 81 d0 ba d0 b0 2e 0d 0a 20 20 20 20 20 20 20 20  ........        
9b20: 20 20 20 20 27 54 72 65 65 56 69 65 77 27 20 20      'TreeView'  
9b30: 20 20 20 20 3a 20 66 61 6c 73 65 20 2f 2f 20 d0      : false // .
9b40: 93 d1 80 d1 83 d0 bf d0 bf d0 b8 d1 80 d0 be d0  ................
9b50: b2 d0 b0 d1 82 d1 8c 20 d1 80 d0 b5 d0 b7 d1 83  ....... ........
9b60: d0 bb d1 8c d1 82 d0 b0 d1 82 d1 8b 20 d0 bf d0  ............ ...
9b70: be d0 b8 d1 81 d0 ba d0 b0 20 d0 bf d0 be 20 d0  ......... .... .
9b80: bc d0 b5 d1 82 d0 be d0 b4 d0 b0 d0 bc 2e 20 20  ..............  
9b90: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
9ba0: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 2c 0d 0a 0d      }..    },...
9bb0: 0a 20 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a  .    construct :
9bc0: 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a   function () {..
9bd0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68      ..        th
9be0: 69 73 2e 5f 73 75 70 65 72 28 74 72 75 65 29 3b  is._super(true);
9bf0: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  ....        this
9c00: 2e 5f 69 6e 73 74 61 6e 63 65 20 3d 20 6e 75 6c  ._instance = nul
9c10: 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 74 68  l;....        th
9c20: 69 73 2e 66 6f 72 6d 2e d0 9a d0 bb d1 8e d1 87  is.form.........
9c30: d0 a1 d0 be d1 85 d1 80 d0 b0 d0 bd d0 b5 d0 bd  ................
9c40: d0 b8 d1 8f d0 9f d0 be d0 bb d0 be d0 b6 d0 b5  ................
9c50: d0 bd d0 b8 d1 8f d0 9e d0 ba d0 bd d0 b0 20 3d  .............. =
9c60: 20 22 65 78 74 47 6c 6f 62 61 6c 53 65 61 72 63   "extGlobalSearc
9c70: 68 2e 6a 73 22 3b 0d 0a 0d 0a 20 20 20 20 20 20  h.js";....      
9c80: 20 20 74 68 69 73 2e 69 73 47 6c 6f 62 61 6c 46    this.isGlobalF
9c90: 69 6e 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20  ind = true;..   
9ca0: 20 20 20 20 20 2f 2f 54 4f 44 4f 3a 20 d0 bf d1       //TODO: ...
9cb0: 80 d0 b8 d0 b7 d0 bd d0 b0 d0 ba 20 d0 b0 d0 b2  ........... ....
9cc0: d1 82 d0 be d0 bc d1 82 d0 b8 d1 87 d0 b5 d1 81  ................
9cd0: d0 ba d0 b8 20 d0 bd d0 b0 d0 b7 d0 bd d0 b0 d1  .... ...........
9ce0: 87 d0 b0 d0 b5 d0 bc d0 be d0 b3 d0 be 20 d1 85  ............. ..
9cf0: d0 be d1 82 d0 ba d0 b5 d0 b9 2c 20 d0 b5 d1 81  .........., ....
9d00: d0 bb d0 b8 20 d1 83 d0 b6 d0 b5 20 d0 bd d0 b0  .... ...... ....
9d10: d0 b7 d0 bd d0 b0 d1 87 d0 b5 d0 bd 20 d0 bd d0  ............ ...
9d20: b0 20 d0 be d1 82 d0 bc d0 b5 d0 bd d1 83 20 d0  . ............ .
9d30: bf d0 be d0 b8 d1 81 d0 ba d0 b0 2c 20 d0 b0 d0  ..........., ...
9d40: b2 d1 82 d0 be d0 bc d0 b0 d1 82 d0 be d0 bc 20  ............... 
9d50: d0 bd d0 b5 20 d0 b1 d1 83 d0 b4 d0 b5 d1 82 20  .... .......... 
9d60: d0 bd d0 b0 d0 b7 d0 bd d0 b0 d1 87 d0 b0 d1 82  ................
9d70: d1 8c d1 81 d1 8f 2e 20 0d 0a 20 20 20 20 20 20  ....... ..      
9d80: 20 20 74 68 69 73 2e 64 79 6e 61 6d 69 63 48 6f    this.dynamicHo
9d90: 74 4b 65 79 20 3d 20 74 72 75 65 3b 20 0d 0a 20  tKey = true; .. 
9da0: 20 20 20 20 20 20 20 66 6f 72 28 76 61 72 20 69         for(var i
9db0: 20 3d 20 30 3b 20 69 20 3c 20 48 6f 74 4b 65 79   = 0; i < HotKey
9dc0: 73 2e 63 6f 75 6e 74 3b 20 69 2b 2b 29 0d 0a 20  s.count; i++).. 
9dd0: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
9de0: 20 20 20 20 20 20 76 61 72 20 68 6b 20 3d 20 48        var hk = H
9df0: 6f 74 4b 65 79 73 2e 69 74 65 6d 28 69 29 3b 0d  otKeys.item(i);.
9e00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 d0 9a d0  .            ...
9e10: be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 3d 20 68 6b  ........... = hk
9e20: 2e 61 64 64 69 6e 20 2b 20 22 3a 3a 22 20 2b 20  .addin + "::" + 
9e30: 68 6b 2e 6d 61 63 72 6f 73 0d 0a 20 20 20 20 20  hk.macros..     
9e40: 20 20 20 20 20 20 20 69 66 20 28 d0 9a d0 be d0         if (.....
9e50: bc d0 b0 d0 bd d0 b4 d0 b0 2e 69 6e 64 65 78 4f  ..........indexO
9e60: 66 28 22 45 78 74 65 6e 64 65 64 53 65 61 72 63  f("ExtendedSearc
9e70: 68 3a 3a d0 9e d1 82 d0 bc d0 b5 d0 bd d0 b8 d1  h::.............
9e80: 82 d1 8c 20 d0 b3 d0 bb d0 be d0 b1 d0 b0 d0 bb  ... ............
9e90: d1 8c d0 bd d1 8b d0 b9 20 d0 bf d0 be d0 b8 d1  ........ .......
9ea0: 81 d0 ba 22 29 21 3d 2d 31 29 7b 0d 0a 20 20 20  ...")!=-1){..   
9eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69               thi
9ec0: 73 2e 64 79 6e 61 6d 69 63 48 6f 74 4b 65 79 20  s.dynamicHotKey 
9ed0: 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20  = false;..      
9ee0: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b            break;
9ef0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
9f00: 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
9f10: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68      ..        th
9f20: 69 73 2e 65 78 70 61 6e 64 65 74 52 6f 77 73 20  is.expandetRows 
9f30: 3d 20 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 20 0d  = {};..        .
9f40: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 53 65  .        this.Se
9f50: 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62 6c 65  tControlsVisible
9f60: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 46  ();..        //F
9f70: 49 58 4d 45 3a 20 d0 b2 d1 8b d0 bd d0 b5 d1 81  IXME: ..........
9f80: d1 82 d0 b8 20 d0 b2 20 d0 bd d0 b0 d1 81 d1 82  .... .. ........
9f90: d1 80 d0 be d0 b9 d0 ba d1 83 2e 20 0d 0a 20 20  ........... ..  
9fa0: 20 20 20 20 20 20 74 68 69 73 2e 63 6f 75 6e 74        this.count
9fb0: 52 6f 77 73 49 6e 49 64 6c 65 53 65 61 72 63 68  RowsInIdleSearch
9fc0: 20 3d 20 32 35 3b 20 2f 2f d0 9a d0 be d0 bb d0   = 25; //.......
9fd0: b8 d1 87 d0 b5 d1 81 d1 82 d0 b2 d0 be 20 d0 be  ............. ..
9fe0: d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 be d0 b2 20 d0  .............. .
9ff0: bf d0 be d0 b8 d1 81 d0 ba d0 b0 20 d0 b2 20 d1  ........... .. .
a000: 84 d0 be d0 bd d0 b5 28 d0 b4 d0 bb d1 8f 20 d1  .......(...... .
a010: 81 d0 bb d0 b0 d0 b1 d0 b5 d0 bd d1 8c d0 ba d0  ................
a020: b8 d1 85 20 d0 bc d0 b0 d1 88 d0 b8 d0 bd 20 d1  ... .......... .
a030: 81 d1 82 d0 b0 d0 b2 d0 b8 d0 bc 20 d0 bc d0 b5  ........... ....
a040: d0 bd d1 8c d1 88 d0 b5 2c 20 d0 b4 d0 bb d1 8f  ........, ......
a050: 20 d1 84 d0 be d1 80 d0 bc d1 83 d0 bb d0 b0 31   ..............1
a060: 20 2d 20 d0 ba d0 b0 d0 ba 20 d1 83 d0 b4 d0 be   - ...... ......
a070: d0 b1 d0 bd d0 b5 d0 b9 29 0d 0a 20 20 20 20 20  ........)..     
a080: 20 20 20 74 68 69 73 2e 72 65 20 3d 20 6e 65 77     this.re = new
a090: 20 52 65 67 45 78 70 28 2f 28 28 5b d0 b0 2d d1   RegExp(/(([..-.
a0a0: 8f 61 2d 7a 30 2d 39 5d 7b 31 2c 7d 29 5c 73 5b  .a-z0-9]{1,})\s[
a0b0: d0 b0 2d d1 8f 61 2d 7a 30 2d 39 5d 7b 31 2c 7d  ..-..a-z0-9]{1,}
a0c0: 29 28 5c 2e 7c 5c 3a 29 2f 69 29 3b 0d 0a 20 20  )(\.|\:)/i);..  
a0d0: 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20            ..    
a0e0: 20 20 20 20 74 68 69 73 2e 66 69 6c 74 65 72 42      this.filterB
a0f0: 79 55 55 49 44 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d  yUUID = null;...
a100: 0a 20 20 20 20 20 20 20 20 45 78 74 53 65 61 72  .        ExtSear
a110: 63 68 47 6c 6f 62 61 6c 2e 5f 69 6e 73 74 61 6e  chGlobal._instan
a120: 63 65 20 3d 20 74 68 69 73 3b 0d 0a 20 20 20 20  ce = this;..    
a130: 7d 2c 0d 0a 0d 0a 20 20 20 20 73 65 61 72 63 68  },....    search
a140: 42 79 55 75 69 64 3a 20 66 75 6e 63 74 69 6f 6e  ByUuid: function
a150: 28 72 6f 77 2c 20 73 6f 72 74 29 20 7b 0d 0a 20  (row, sort) {.. 
a160: 20 20 20 20 20 20 20 6d 64 4f 62 6a 20 3d 20 66         mdObj = f
a170: 69 6e 64 4d 64 4f 62 6a 28 74 68 69 73 2e 63 75  indMdObj(this.cu
a180: 72 72 65 6e 74 4d 64 43 6f 6e 74 61 69 6e 65 72  rrentMdContainer
a190: 2c 20 72 6f 77 2e 55 55 49 44 29 3b 0d 0a 20 20  , row.UUID);..  
a1a0: 20 20 20 20 20 20 69 66 20 28 73 6f 72 74 20 3d        if (sort =
a1b0: 3d 20 75 6e 64 65 66 69 6e 65 64 29 20 73 6f 72  = undefined) sor
a1c0: 74 20 3d 20 39 39 39 3b 0d 0a 20 20 20 20 20 20  t = 999;..      
a1d0: 20 20 76 61 72 20 64 6f 63 52 6f 77 20 3d 20 6e    var docRow = n
a1e0: 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 69 66  ull;..        if
a1f0: 20 28 6d 64 4f 62 6a 29 7b 0d 0a 20 20 20 20 20   (mdObj){..     
a200: 20 20 20 20 20 20 20 76 61 72 20 6f 62 6a 20 3d         var obj =
a210: 20 74 68 69 73 2e 67 65 74 57 69 6e 64 6f 77 4f   this.getWindowO
a220: 62 6a 65 63 74 28 7b 0d 0a 20 20 20 20 20 20 20  bject({..       
a230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a240: 20 20 20 20 20 20 20 20 20 6d 64 4f 62 6a 3a 6d           mdObj:m
a250: 64 4f 62 6a 2c 0d 0a 20 20 20 20 20 20 20 20 20  dObj,..         
a260: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a270: 20 20 20 20 20 20 20 6d 64 50 72 6f 70 3a 72 6f         mdProp:ro
a280: 77 2e 6d 64 50 72 6f 70 2c 0d 0a 20 20 20 20 20  w.mdProp,..     
a290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a2a0: 20 20 20 20 20 20 20 20 20 20 20 74 69 74 6c 65             title
a2b0: 3a 72 6f 77 2e 74 69 74 6c 65 7d 29 3b 0d 0a 20  :row.title});.. 
a2c0: 20 20 20 20 20 20 20 20 20 20 20 6f 62 6a 2e 73             obj.s
a2d0: 6f 72 74 20 3d 20 73 6f 72 74 2b 31 3b 0d 0a 20  ort = sort+1;.. 
a2e0: 20 20 20 20 20 20 20 20 20 20 20 64 6f 63 52 6f             docRo
a2f0: 77 20 3d 20 74 68 69 73 2e 73 65 61 72 63 68 28  w = this.search(
a300: 6f 62 6a 2c 20 74 68 69 73 2e 72 65 29 3b 0d 0a  obj, this.re);..
a310: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
a320: 20 20 20 72 65 74 75 72 6e 20 64 6f 63 52 6f 77     return docRow
a330: 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20 20 0d  ;..    },..    .
a340: 0a 20 20 20 20 73 65 61 72 63 68 49 6e 4d 65 74  .    searchInMet
a350: 61 64 61 74 61 20 3a 20 66 75 6e 63 74 69 6f 6e  adata : function
a360: 28 66 72 6f 6d 48 6f 74 4b 65 79 29 7b 0d 0a 0d  (fromHotKey){...
a370: 0a 20 20 20 20 20 20 20 20 76 61 72 20 6d 64 20  .        var md 
a380: 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20  = null;..       
a390: 20 76 61 72 20 6f 62 6a 54 69 74 6c 65 20 3d 20   var objTitle = 
a3a0: 22 22 3b 0d 0a 20 20 20 20 20 20 20 20 76 61 72  "";..        var
a3b0: 20 61 63 74 69 76 65 57 69 6e 64 6f 77 20 3d 20   activeWindow = 
a3c0: 74 68 69 73 2e 77 61 74 63 68 65 72 2e 67 65 74  this.watcher.get
a3d0: 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77  ActiveTextWindow
a3e0: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 69 66 20  ();..        if 
a3f0: 28 21 61 63 74 69 76 65 57 69 6e 64 6f 77 29 20  (!activeWindow) 
a400: 7b 20 0d 0a 20 20 20 20 20 20 20 20 7d 20 65 6c  { ..        } el
a410: 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  se {..          
a420: 20 20 76 61 72 20 61 63 74 69 76 65 56 69 65 77    var activeView
a430: 20 3d 20 61 63 74 69 76 65 57 69 6e 64 6f 77 2e   = activeWindow.
a440: 47 65 74 56 69 65 77 28 29 3b 0d 0a 20 20 20 20  GetView();..    
a450: 20 20 20 20 20 20 20 20 76 61 72 20 6f 62 6a 20          var obj 
a460: 3d 20 74 68 69 73 2e 67 65 74 57 69 6e 64 6f 77  = this.getWindow
a470: 4f 62 6a 65 63 74 28 61 63 74 69 76 65 56 69 65  Object(activeVie
a480: 77 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  w);..           
a490: 20 69 66 20 28 6f 62 6a 21 3d 6e 75 6c 6c 29 7b   if (obj!=null){
a4a0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
a4b0: 20 20 6f 62 6a 54 69 74 6c 65 20 3d 20 6f 62 6a    objTitle = obj
a4c0: 2e 67 65 74 54 69 74 6c 65 28 29 3b 0d 0a 20 20  .getTitle();..  
a4d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
a4e0: 72 20 6d 61 74 63 68 65 73 20 3d 20 74 68 69 73  r matches = this
a4f0: 2e 72 65 2e 65 78 65 63 28 6f 62 6a 54 69 74 6c  .re.exec(objTitl
a500: 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  e);..           
a510: 20 20 20 20 20 69 66 20 28 6d 61 74 63 68 65 73       if (matches
a520: 21 3d 6e 75 6c 6c 29 7b 0d 0a 20 20 20 20 20 20  !=null){..      
a530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 62                ob
a540: 6a 54 69 74 6c 65 20 3d 20 6d 61 74 63 68 65 73  jTitle = matches
a550: 5b 31 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  [1];..          
a560: 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a        } else {..
a570: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a580: 20 20 20 20 69 66 20 28 6f 62 6a 54 69 74 6c 65      if (objTitle
a590: 2e 69 6e 64 65 78 4f 66 28 22 3a 22 29 21 3d 2d  .indexOf(":")!=-
a5a0: 31 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  1){..           
a5b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 62 6a               obj
a5c0: 54 69 74 6c 65 20 3d 20 6f 62 6a 54 69 74 6c 65  Title = objTitle
a5d0: 2e 73 75 62 73 74 72 28 30 2c 20 6f 62 6a 54 69  .substr(0, objTi
a5e0: 74 6c 65 2e 69 6e 64 65 78 4f 66 28 22 3a 22 29  tle.indexOf(":")
a5f0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
a600: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
a610: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
a620: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
a630: 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20       }....      
a640: 20 20 6d 64 20 3d 20 74 68 69 73 2e 67 65 74 43    md = this.getC
a650: 75 72 72 65 6e 74 4d 64 28 29 3b 0d 0a 20 20 20  urrentMd();..   
a660: 20 20 20 20 20 69 66 20 28 21 6d 64 29 20 72 65       if (!md) re
a670: 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20  turn;....       
a680: 20 74 68 69 73 2e 63 75 72 72 65 6e 74 4d 64 43   this.currentMdC
a690: 6f 6e 74 61 69 6e 65 72 20 3d 20 6d 64 3b 0d 0a  ontainer = md;..
a6a0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 6c 65          this.cle
a6b0: 61 72 53 65 61 72 63 68 52 65 73 75 6c 74 73 28  arSearchResults(
a6c0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73  );..        this
a6d0: 2e 72 65 20 3d 20 74 68 69 73 2e 62 75 69 6c 64  .re = this.build
a6e0: 53 65 61 72 63 68 52 65 67 45 78 70 4f 62 6a 65  SearchRegExpObje
a6f0: 63 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 69  ct();..        i
a700: 66 20 28 21 74 68 69 73 2e 72 65 29 20 72 65 74  f (!this.re) ret
a710: 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a  urn;..        ..
a720: 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 75 72          this.cur
a730: 43 61 70 74 69 6f 6e 20 3d 20 77 69 6e 64 6f 77  Caption = window
a740: 73 2e 63 61 70 74 69 6f 6e 3b 20 2f 2f d0 b0 20  s.caption; //.. 
a750: d0 b2 d0 b4 d1 80 d1 83 d0 b3 2c 20 d0 b5 d1 89  .........., ....
a760: d0 b5 20 d0 ba d1 82 d0 be 2d d1 82 d0 be 20 d0  .. ......-.... .
a770: bd d0 b5 20 d0 bf d0 be d0 bb d1 8c d0 b7 d1 83  ... ............
a780: d0 b5 d1 82 d1 81 d1 8f 20 63 6f 6e 66 69 67 43  ........ configC
a790: 61 70 74 69 6f 6e 2e 2e 2e 20 0d 0a 20 20 20 20  aption... ..    
a7a0: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 74 68      ..        th
a7b0: 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53 65  is.startGlobalSe
a7c0: 61 72 63 68 20 3d 20 74 72 75 65 3b 0d 0a 20 20  arch = true;..  
a7d0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e        if (!this.
a7e0: 76 74 4d 44 29 7b 0d 0a 20 20 20 20 20 20 20 20  vtMD){..        
a7f0: 20 20 20 20 74 68 69 73 2e 76 74 4d 44 20 3d 20      this.vtMD = 
a800: 7b 7d 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  {};..        }..
a810: 20 20 20 20 20 20 20 20 74 68 69 73 2e 72 65 61          this.rea
a820: 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73 20 3d 20  tingMdObjects = 
a830: 7b 22 d0 9e d0 b1 d1 89 d0 b8 d0 b9 d0 9c d0 be  {"..............
a840: d0 b4 d1 83 d0 bb d1 8c 22 3a 32 2c 20 0d 0a 20  ........":2, .. 
a850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a860: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22                 "
a870: d0 9a d0 be d0 bd d1 84 d0 b8 d0 b3 d1 83 d1 80  ................
a880: d0 b0 d1 86 d0 b8 d1 8f 22 3a 33 2c 0d 0a 20 20  ........":3,..  
a890: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a8a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 d0                ".
a8b0: 9f d0 bb d0 b0 d0 bd d0 9e d0 b1 d0 bc d0 b5 d0  ................
a8c0: bd d0 b0 22 3a 34 2c 0d 0a 20 20 20 20 20 20 20  ...":4,..       
a8d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a8e0: 20 20 20 20 20 20 20 20 20 22 d0 9e d0 b1 d1 89           "......
a8f0: d0 b0 d1 8f d0 a4 d0 be d1 80 d0 bc d0 b0 22 3a  ..............":
a900: 35 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  5..             
a910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
a920: 3b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 6f  ;..        if (o
a930: 62 6a 54 69 74 6c 65 2e 6c 65 6e 67 74 68 3e 30  bjTitle.length>0
a940: 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ){..            
a950: 74 68 69 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62  this.reatingMdOb
a960: 6a 65 63 74 73 5b 6f 62 6a 54 69 74 6c 65 5d 3d  jects[objTitle]=
a970: 31 3b 20 2f 2f d0 a1 d0 b0 d0 bc d1 8b d0 b9 20  1; //.......... 
a980: d0 b2 d1 8b d1 81 d0 be d0 ba d0 b8 d0 b9 20 d1  .............. .
a990: 80 d0 b5 d0 b9 d1 82 d0 b8 d0 bd d0 b3 2e 2e 2e  ................
a9a0: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 7d       ..        }
a9b0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 0d 0a 20 20  ..        ....  
a9c0: 20 20 20 20 20 20 74 68 69 73 2e 72 65 61 64 4d        this.readM
a9d0: 64 54 6f 56 74 28 74 68 69 73 2e 63 75 72 72 65  dToVt(this.curre
a9e0: 6e 74 4d 64 43 6f 6e 74 61 69 6e 65 72 29 3b 0d  ntMdContainer);.
a9f0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 65 78  .        this.ex
aa00: 70 61 6e 64 65 74 52 6f 77 73 20 3d 20 7b 7d 3b  pandetRows = {};
aa10: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 63  ..        this.c
aa20: 75 72 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20  urId = 0;..     
aa30: 20 20 20 69 66 20 28 74 68 69 73 2e 64 79 6e 61     if (this.dyna
aa40: 6d 69 63 48 6f 74 4b 65 79 29 20 0d 0a 20 20 20  micHotKey) ..   
aa50: 20 20 20 20 20 20 20 20 20 68 6f 74 6b 65 79 73           hotkeys
aa60: 2e 41 64 64 48 6f 74 4b 65 79 28 22 43 74 72 6c  .AddHotKey("Ctrl
aa70: 2b 53 68 69 66 74 2b 42 6b 53 70 61 63 65 22 2c  +Shift+BkSpace",
aa80: 20 22 45 78 74 65 6e 64 65 64 53 65 61 72 63 68   "ExtendedSearch
aa90: 22 2c 20 22 d0 9e d1 82 d0 bc d0 b5 d0 bd d0 b8  ", "............
aaa0: d1 82 d1 8c 20 d0 b3 d0 bb d0 be d0 b1 d0 b0 d0  .... ...........
aab0: bb d1 8c d0 bd d1 8b d0 b9 20 d0 bf d0 be d0 b8  ......... ......
aac0: d1 81 d0 ba 22 29 3b 0d 0a 20 20 20 20 20 20 20  ....");..       
aad0: 20 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28   events.connect(
aae0: 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e 49 64 6c  Designer, "onIdl
aaf0: 65 22 2c 20 74 68 69 73 29 3b 0d 0a 20 20 20 20  e", this);..    
ab00: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 2f 2f 74     ..        //t
ab10: 68 69 73 2e 73 68 6f 77 53 65 61 72 63 68 52 65  his.showSearchRe
ab20: 73 75 6c 74 28 64 6f 63 52 6f 77 2c 20 66 72 6f  sult(docRow, fro
ab30: 6d 48 6f 74 4b 65 79 29 3b 0d 0a 20 20 20 20 20  mHotKey);..     
ab40: 20 20 20 2f 2f 77 69 6e 64 6f 77 73 2e 63 61 70     //windows.cap
ab50: 74 69 6f 6e 20 3d 20 63 75 72 43 61 70 74 69 6f  tion = curCaptio
ab60: 6e 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a 20 20  n;..    },....  
ab70: 20 20 67 65 74 43 75 72 72 65 6e 74 4d 64 3a 66    getCurrentMd:f
ab80: 75 6e 63 74 69 6f 6e 28 29 7b 0d 0a 20 20 20 20  unction(){..    
ab90: 20 20 20 20 76 61 72 20 6d 64 20 3b 0d 0a 20 20      var md ;..  
aba0: 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 69        if (this.i
abb0: 73 49 6e 43 75 72 72 65 6e 74 4d 64 43 6f 6e 74  sInCurrentMdCont
abc0: 65 69 6e 65 72 46 69 6e 64 20 29 20 7b 0d 0a 20  einerFind ) {.. 
abd0: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21             if (!
abe0: 74 68 69 73 2e 61 63 74 69 76 65 56 69 65 77 29  this.activeView)
abf0: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
ac00: 20 20 20 76 61 72 20 61 63 74 69 76 65 57 69 6e     var activeWin
ac10: 64 6f 77 20 3d 20 74 68 69 73 2e 77 61 74 63 68  dow = this.watch
ac20: 65 72 2e 67 65 74 41 63 74 69 76 65 54 65 78 74  er.getActiveText
ac30: 57 69 6e 64 6f 77 28 29 3b 20 20 20 20 0d 0a 20  Window();    .. 
ac40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69                 i
ac50: 66 20 28 21 61 63 74 69 76 65 57 69 6e 64 6f 77  f (!activeWindow
ac60: 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ){..            
ac70: 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20      } else {..  
ac80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ac90: 20 20 76 61 72 20 61 63 74 69 76 65 56 69 65 77    var activeView
aca0: 20 3d 20 61 63 74 69 76 65 57 69 6e 64 6f 77 2e   = activeWindow.
acb0: 47 65 74 56 69 65 77 28 29 3b 20 20 20 20 0d 0a  GetView();    ..
acc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
acd0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d  }..            }
ace0: 20 65 6c 73 65 20 7b 0d 0a 0d 0a 20 20 20 20 20   else {....     
acf0: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61             var a
ad00: 63 74 69 76 65 56 69 65 77 20 3d 20 74 68 69 73  ctiveView = this
ad10: 2e 61 63 74 69 76 65 56 69 65 77 3b 20 20 20 20  .activeView;    
ad20: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
ad30: 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f d0  .            //.
ad40: 9e d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b8 d0  ................
ad50: bc 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 20 d0  . ............ .
ad60: ba d0 be d0 bd d1 84 d0 b8 d0 b3 d1 83 d1 80 d0  ................
ad70: b0 d1 86 d0 b8 d0 b8 20 d0 bf d0 be 20 d1 82 d0  ....... .... ...
ad80: b5 d0 ba d1 83 d1 89 d0 b5 d0 bc d1 83 20 d0 be  ............. ..
ad90: d0 ba d0 bd d1 83 2e 20 0d 0a 20 20 20 20 20 20  ....... ..      
ada0: 20 20 20 20 20 20 69 66 20 28 21 61 63 74 69 76        if (!activ
adb0: 65 56 69 65 77 29 20 7b 0d 0a 20 20 20 20 20 20  eView) {..      
adc0: 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a        } else {..
add0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ade0: 69 66 20 28 61 63 74 69 76 65 56 69 65 77 2e 6d  if (activeView.m
adf0: 64 4f 62 6a 20 26 26 20 61 63 74 69 76 65 56 69  dObj && activeVi
ae00: 65 77 2e 6d 64 50 72 6f 70 29 20 7b 0d 0a 20 20  ew.mdProp) {..  
ae10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ae20: 20 20 6d 64 20 3d 20 61 63 74 69 76 65 56 69 65    md = activeVie
ae30: 77 2e 6d 64 4f 62 6a 2e 63 6f 6e 74 61 69 6e 65  w.mdObj.containe
ae40: 72 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  r;..            
ae50: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 61      } else if (a
ae60: 63 74 69 76 65 56 69 65 77 2e 6d 64 4f 62 6a 29  ctiveView.mdObj)
ae70: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
ae80: 20 20 20 20 20 20 20 20 6d 64 20 3d 20 61 63 74          md = act
ae90: 69 76 65 56 69 65 77 2e 6d 64 4f 62 6a 2e 63 6f  iveView.mdObj.co
aea0: 6e 74 61 69 6e 65 72 3b 0d 0a 20 20 20 20 20 20  ntainer;..      
aeb0: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
aec0: 20 20 20 20 20 20 20 20 20 7d 20 0d 0a 20 20 20           } ..   
aed0: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
aee0: 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a     }..        ..
aef0: 20 20 20 20 20 20 20 20 69 66 20 28 21 6d 64 29          if (!md)
af00: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
af10: 6d 64 20 3d 20 6d 65 74 61 64 61 74 61 2e 63 75  md = metadata.cu
af20: 72 72 65 6e 74 3b 20 20 20 0d 0a 20 20 20 20 20  rrent;   ..     
af30: 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20     }....        
af40: 72 65 74 75 72 6e 20 6d 64 3b 0d 0a 20 20 20 20  return md;..    
af50: 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20 20 6f 6e  },..    ..    on
af60: 49 64 6c 65 3a 66 75 6e 63 74 69 6f 6e 28 29 7b  Idle:function(){
af70: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 74  ..        if (!t
af80: 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53  his.startGlobalS
af90: 65 61 72 63 68 29 20 7b 0d 0a 20 20 20 20 20 20  earch) {..      
afa0: 20 20 20 20 20 20 77 69 6e 64 6f 77 73 2e 63 61        windows.ca
afb0: 70 74 69 6f 6e 20 3d 20 74 68 69 73 2e 63 75 72  ption = this.cur
afc0: 43 61 70 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20  Caption;..      
afd0: 20 20 20 20 20 20 65 76 65 6e 74 73 2e 64 69 73        events.dis
afe0: 63 6f 6e 6e 65 63 74 28 44 65 73 69 67 6e 65 72  connect(Designer
aff0: 2c 20 22 6f 6e 49 64 6c 65 22 2c 20 74 68 69 73  , "onIdle", this
b000: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
b010: 74 68 69 73 2e 73 68 6f 77 53 65 61 72 63 68 52  this.showSearchR
b020: 65 73 75 6c 74 28 64 6f 63 52 6f 77 2c 20 66 61  esult(docRow, fa
b030: 6c 73 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  lse);..         
b040: 20 20 20 74 68 69 73 2e 65 78 70 61 6e 64 65 74     this.expandet
b050: 52 6f 77 73 20 3d 20 7b 7d 3b 0d 0a 20 20 20 20  Rows = {};..    
b060: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
b070: 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 64        if (this.d
b080: 79 6e 61 6d 69 63 48 6f 74 4b 65 79 29 20 7b 0d  ynamicHotKey) {.
b090: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b0a0: 20 66 6f 72 28 76 61 72 20 69 20 3d 20 30 3b 20   for(var i = 0; 
b0b0: 69 20 3c 20 48 6f 74 4b 65 79 73 2e 63 6f 75 6e  i < HotKeys.coun
b0c0: 74 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20  t; i++)..       
b0d0: 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20           {..    
b0e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b0f0: 76 61 72 20 68 6b 20 3d 20 48 6f 74 4b 65 79 73  var hk = HotKeys
b100: 2e 69 74 65 6d 28 69 29 3b 0d 0a 20 20 20 20 20  .item(i);..     
b110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d0                 .
b120: 9a d0 be d0 bc d0 b0 d0 bd d0 b4 d0 b0 20 3d 20  ............. = 
b130: 68 6b 2e 61 64 64 69 6e 20 2b 20 22 3a 3a 22 20  hk.addin + "::" 
b140: 2b 20 68 6b 2e 6d 61 63 72 6f 73 0d 0a 20 20 20  + hk.macros..   
b150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b160: 20 69 66 20 28 d0 9a d0 be d0 bc d0 b0 d0 bd d0   if (...........
b170: b4 d0 b0 2e 69 6e 64 65 78 4f 66 28 22 45 78 74  ....indexOf("Ext
b180: 65 6e 64 65 64 53 65 61 72 63 68 3a 3a d0 9e d1  endedSearch::...
b190: 82 d0 bc d0 b5 d0 bd d0 b8 d1 82 d1 8c 20 d0 b3  ............. ..
b1a0: d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1 8b  ................
b1b0: d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 22 29 21  .. ..........")!
b1c0: 3d 2d 31 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  =-1){..         
b1d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74                 t
b1e0: 72 79 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  ry {..          
b1f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
b200: 20 20 48 6f 74 4b 65 79 73 2e 72 65 6d 6f 76 65    HotKeys.remove
b210: 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  (i);..          
b220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20                } 
b230: 63 61 74 63 68 20 28 65 29 20 7b 7d 0d 0a 20 20  catch (e) {}..  
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 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
b270: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
b280: 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20     return;..    
b290: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 76      }..        v
b2a0: 61 72 20 63 75 72 72 65 6e 74 49 64 20 3d 20 74  ar currentId = t
b2b0: 68 69 73 2e 63 75 72 72 65 6e 74 4d 64 43 6f 6e  his.currentMdCon
b2c0: 74 61 69 6e 65 72 2e 72 6f 6f 74 4f 62 6a 65 63  tainer.rootObjec
b2d0: 74 2e 69 64 3b 0d 0a 20 20 20 20 20 20 20 20 69  t.id;..        i
b2e0: 66 20 28 74 68 69 73 2e 76 74 4d 44 5b 63 75 72  f (this.vtMD[cur
b2f0: 72 65 6e 74 49 64 5d 2e 43 6f 75 6e 74 28 29 3c  rentId].Count()<
b300: 31 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  1) {..          
b310: 20 20 74 68 69 73 2e 73 74 61 72 74 47 6c 6f 62    this.startGlob
b320: 61 6c 53 65 61 72 63 68 20 3d 20 66 61 6c 73 65  alSearch = false
b330: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65  ;..            e
b340: 76 65 6e 74 73 2e 64 69 73 63 6f 6e 6e 65 63 74  vents.disconnect
b350: 28 44 65 73 69 67 6e 65 72 2c 20 22 6f 6e 49 64  (Designer, "onId
b360: 6c 65 22 2c 20 74 68 69 73 29 3b 0d 0a 20 20 20  le", this);..   
b370: 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b           return;
b380: 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
b390: 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 76       ..        v
b3a0: 61 72 20 63 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20  ar count = 0;.. 
b3b0: 20 20 20 20 20 20 20 76 61 72 20 64 6f 63 52 6f         var docRo
b3c0: 77 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20  w = null;..     
b3d0: 20 20 20 77 68 69 6c 65 20 28 63 6f 75 6e 74 20     while (count 
b3e0: 3c 20 74 68 69 73 2e 63 6f 75 6e 74 52 6f 77 73  < this.countRows
b3f0: 49 6e 49 64 6c 65 53 65 61 72 63 68 29 7b 0d 0a  InIdleSearch){..
b400: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28              if (
b410: 74 68 69 73 2e 63 75 72 49 64 3c 74 68 69 73 2e  this.curId<this.
b420: 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e  vtMD[currentId].
b430: 43 6f 75 6e 74 28 29 29 7b 0d 0a 20 20 20 20 20  Count()){..     
b440: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 64 6f 63             //doc
b450: 52 6f 77 20 3d 20 74 68 69 73 2e 73 65 61 72 63  Row = this.searc
b460: 68 42 79 55 75 69 64 28 74 68 69 73 2e 76 74 4d  hByUuid(this.vtM
b470: 44 5b 63 75 72 72 65 6e 74 49 64 5d 5b 74 68 69  D[currentId][thi
b480: 73 2e 63 75 72 49 64 5d 29 3b 0d 0a 20 20 20 20  s.curId]);..    
b490: 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20              var 
b4a0: 63 75 72 72 52 6f 77 20 3d 20 74 68 69 73 2e 76  currRow = this.v
b4b0: 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 47  tMD[currentId].G
b4c0: 65 74 28 74 68 69 73 2e 63 75 72 49 64 29 3b 0d  et(this.curId);.
b4d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b4e0: 20 64 6f 63 52 6f 77 20 3d 20 74 68 69 73 2e 73   docRow = this.s
b4f0: 65 61 72 63 68 42 79 55 75 69 64 28 63 75 72 72  earchByUuid(curr
b500: 52 6f 77 2c 20 74 68 69 73 2e 63 75 72 49 64 29  Row, this.curId)
b510: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
b520: 20 20 20 77 69 6e 64 6f 77 73 2e 63 61 70 74 69     windows.capti
b530: 6f 6e 20 3d 20 63 75 72 72 52 6f 77 2e 6d 64 4e  on = currRow.mdN
b540: 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ame;..          
b550: 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20    } else {..    
b560: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
b570: 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53 65 61 72  .startGlobalSear
b580: 63 68 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20  ch = false;..   
b590: 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65               bre
b5a0: 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ak;..           
b5b0: 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   }..            
b5c0: 74 68 69 73 2e 63 75 72 49 64 20 2b 2b 3b 0d 0a  this.curId ++;..
b5d0: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e              coun
b5e0: 74 2b 2b 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d  t++;..        }.
b5f0: 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 73 68  .        this.sh
b600: 6f 77 53 65 61 72 63 68 52 65 73 75 6c 74 28 6e  owSearchResult(n
b610: 75 6c 6c 2c 20 66 61 6c 73 65 29 3b 0d 0a 20 20  ull, false);..  
b620: 20 20 20 20 20 20 0d 0a 20 20 20 20 7d 2c 0d 0a        ..    },..
b630: 20 20 20 20 0d 0a 20 20 20 20 72 65 61 64 4d 64      ..    readMd
b640: 54 6f 56 74 3a 66 75 6e 63 74 69 6f 6e 28 4d 64  ToVt:function(Md
b650: 43 6f 6e 74 61 69 6e 65 72 29 7b 0d 0a 20 20 20  Container){..   
b660: 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74       var current
b670: 49 64 20 3d 20 4d 64 43 6f 6e 74 61 69 6e 65 72  Id = MdContainer
b680: 2e 72 6f 6f 74 4f 62 6a 65 63 74 2e 69 64 3b 20  .rootObject.id; 
b690: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 74  ..        if (!t
b6a0: 68 69 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74  his.vtMD[current
b6b0: 49 64 5d 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  Id]){..         
b6c0: 20 20 20 76 61 72 20 64 6f 63 52 6f 77 20 3d 20     var docRow = 
b6d0: 6e 75 6c 6c 3b 20 0d 0a 20 20 20 20 20 20 20 20  null; ..        
b6e0: 20 20 20 20 2f 2f 74 68 69 73 2e 76 74 4d 44 5b      //this.vtMD[
b6f0: 63 75 72 72 65 6e 74 49 64 5d 20 3d 20 5b 5d 3b  currentId] = [];
b700: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68  ..            th
b710: 69 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49  is.vtMD[currentI
b720: 64 5d 3d 76 38 4e 65 77 28 22 56 61 6c 75 65 54  d]=v8New("ValueT
b730: 61 62 6c 65 22 29 3b 0d 0a 20 20 20 20 20 20 20  able");..       
b740: 20 20 20 20 20 74 68 69 73 2e 76 74 4d 44 5b 63       this.vtMD[c
b750: 75 72 72 65 6e 74 49 64 5d 2e 43 6f 6c 75 6d 6e  urrentId].Column
b760: 73 2e 41 64 64 28 22 55 55 49 44 22 29 3b 0d 0a  s.Add("UUID");..
b770: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
b780: 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d  .vtMD[currentId]
b790: 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 22 6d 64  .Columns.Add("md
b7a0: 50 72 6f 70 22 29 3b 0d 0a 20 20 20 20 20 20 20  Prop");..       
b7b0: 20 20 20 20 20 74 68 69 73 2e 76 74 4d 44 5b 63       this.vtMD[c
b7c0: 75 72 72 65 6e 74 49 64 5d 2e 43 6f 6c 75 6d 6e  urrentId].Column
b7d0: 73 2e 41 64 64 28 22 6d 64 4e 61 6d 65 22 29 3b  s.Add("mdName");
b7e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68  ..            th
b7f0: 69 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49  is.vtMD[currentI
b800: 64 5d 2e 43 6f 6c 75 6d 6e 73 2e 41 64 64 28 22  d].Columns.Add("
b810: 74 69 74 6c 65 22 29 3b 0d 0a 20 20 20 20 20 20  title");..      
b820: 20 20 20 20 20 20 74 68 69 73 2e 76 74 4d 44 5b        this.vtMD[
b830: 63 75 72 72 65 6e 74 49 64 5d 2e 43 6f 6c 75 6d  currentId].Colum
b840: 6e 73 2e 41 64 64 28 22 73 6f 72 74 54 69 74 6c  ns.Add("sortTitl
b850: 65 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  e");..          
b860: 20 20 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72    this.vtMD[curr
b870: 65 6e 74 49 64 5d 2e 43 6f 6c 75 6d 6e 73 2e 41  entId].Columns.A
b880: 64 64 28 22 73 6f 72 74 22 29 3b 0d 0a 20 20 20  dd("sort");..   
b890: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 76 74           this.vt
b8a0: 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 43 6f  MD[currentId].Co
b8b0: 6c 75 6d 6e 73 2e 41 64 64 28 22 4c 69 6e 65 4e  lumns.Add("LineN
b8c0: 75 6d 62 65 72 22 29 3b 0d 0a 0d 0a 20 20 20 20  umber");....    
b8d0: 20 20 20 20 20 20 20 20 76 61 72 20 65 73 20 3d          var es =
b8e0: 20 74 68 69 73 3b 0d 0a 20 20 20 20 20 20 20 20   this;..        
b8f0: 20 20 20 20 2f 2f d0 a0 d0 b5 d0 ba d0 b2 d0 b8      //..........
b900: d0 b7 d0 b8 d1 82 d1 8b 20 d0 bf d1 80 d0 be d0  ........ .......
b910: bf d1 83 d1 81 d1 82 d0 b8 d0 bc 0d 0a 20 20 20  .............   
b920: 20 20 20 20 20 20 20 20 20 76 61 72 20 69 67 6e           var ign
b930: 6f 72 65 64 4d 64 43 6c 61 73 73 20 3d 20 7b 0d  oredMdClass = {.
b940: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
b950: 20 22 d0 a0 d0 b5 d0 ba d0 b2 d0 b8 d0 b7 d0 b8   "..............
b960: d1 82 d1 8b 22 3a 22 22 2c 0d 0a 20 20 20 20 20  ....":"",..     
b970: 20 20 20 20 20 20 20 20 20 20 20 22 d0 9c d0 b0             "....
b980: d0 ba d0 b5 d1 82 d1 8b 22 20 3a 20 22 22 20 2c  ........" : "" ,
b990: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
b9a0: 20 20 22 d0 9e d0 b1 d1 89 d0 b8 d0 b5 d0 9a d0    ".............
b9b0: b0 d1 80 d1 82 d0 b8 d0 bd d0 ba d0 b8 22 20 3a  ............." :
b9c0: 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20   "" ,..         
b9d0: 20 20 20 20 20 20 20 22 d0 ad d0 bb d0 b5 d0 bc         "........
b9e0: d0 b5 d0 bd d1 82 d1 8b 20 d1 81 d1 82 d0 b8 d0  ........ .......
b9f0: bb d1 8f 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20  ..." : "" ,..   
ba00: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 9f               "..
ba10: d0 be d0 b4 d1 81 d0 b8 d1 81 d1 82 d0 b5 d0 bc  ................
ba20: d1 8b 22 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20  .." : "" ,..    
ba30: 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 af d0              "...
ba40: b7 d1 8b d0 ba d0 b8 22 20 3a 20 22 22 20 2c 0d  ......." : "" ,.
ba50: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
ba60: 20 22 d0 a1 d1 82 d0 b8 d0 bb d0 b8 22 20 3a 20   ".........." : 
ba70: 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  "" ,..          
ba80: 20 20 20 20 20 20 22 d0 98 d0 bd d1 82 d0 b5 d1        ".........
ba90: 80 d1 84 d0 b5 d0 b9 d1 81 d1 8b 22 20 3a 20 22  ..........." : "
baa0: 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20  " ,..           
bab0: 20 20 20 20 20 22 d0 9f d0 b0 d1 80 d0 b0 d0 bc       "..........
bac0: d0 b5 d1 82 d1 80 d1 8b d0 a1 d0 b5 d0 b0 d0 bd  ................
bad0: d1 81 d0 b0 22 20 3a 20 22 22 20 2c 0d 0a 20 20  ...." : "" ,..  
bae0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 d0                ".
baf0: a0 d0 be d0 bb d0 b8 22 20 3a 20 22 22 20 2c 0d  ......." : "" ,.
bb00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
bb10: 20 22 d0 9e d0 b1 d1 89 d0 b8 d0 b5 d0 9c d0 b0   "..............
bb20: d0 ba d0 b5 d1 82 d1 8b 22 20 3a 20 22 22 20 2c  ........" : "" ,
bb30: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
bb40: 20 20 22 d0 9a d1 80 d0 b8 d1 82 d0 b5 d1 80 d0    ".............
bb50: b8 d0 b8 d0 9e d1 82 d0 b1 d0 be d1 80 d0 b0 22  ..............."
bb60: 20 3a 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20   : "" ,..       
bb70: 20 20 20 20 20 20 20 20 20 22 d0 9e d0 b1 d1 89           "......
bb80: d0 b8 d0 b5 d0 a0 d0 b5 d0 ba d0 b2 d0 b8 d0 b7  ................
bb90: d0 b8 d1 82 d1 8b 22 20 3a 20 22 22 20 2c 0d 0a  ......" : "" ,..
bba0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
bbb0: 22 d0 a2 d0 b0 d0 b1 d0 bb d0 b8 d1 87 d0 bd d1  "...............
bbc0: 8b d0 b5 d0 a7 d0 b0 d1 81 d1 82 d0 b8 22 20 3a  ............." :
bbd0: 20 22 22 20 2c 0d 0a 20 20 20 20 20 20 20 20 20   "" ,..         
bbe0: 20 20 20 20 20 20 20 22 d0 9f d0 b0 d1 80 d0 b0         "........
bbf0: d0 bc d0 b5 d1 82 d1 80 d1 8b 22 20 3a 20 22 22  .........." : ""
bc00: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
bc10: 20 20 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20     };..         
bc20: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
bc30: 20 20 20 20 20 76 61 72 20 4c 69 6e 65 4e 75 6d       var LineNum
bc40: 62 65 72 20 3d 20 30 3b 20 2f 2f d0 94 d0 bb d1  ber = 0; //.....
bc50: 8f 20 d1 81 d0 be d1 80 d1 82 d0 b8 d1 80 d0 be  . ..............
bc60: d0 b2 d0 ba d0 b8 20 d0 bc d0 be d0 b4 d1 83 d0  ...... .........
bc70: bb d0 b5 d0 b9 20 d1 84 d1 83 d0 bd d0 ba d1 86  ..... ..........
bc80: d0 b8 d0 b9 20 d0 bf d0 be 20 d0 bf d0 be d1 80  .... .... ......
bc90: d1 8f d0 b4 d0 ba d1 83 20 d0 be d0 b1 d1 85 d0  ........ .......
bca0: be d0 b4 d0 b0 2c 20 d0 b0 20 d0 bd d0 b5 20 d0  ....., .. .... .
bcb0: bf d0 be 20 d0 b0 d0 bb d1 84 d0 b0 d0 b2 d0 b8  ... ............
bcc0: d1 82 d1 83 2e 0d 0a 20 20 20 20 20 20 20 20 20  .......         
bcd0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
bce0: 20 28 66 75 6e 63 74 69 6f 6e 20 28 6d 64 4f 62   (function (mdOb
bcf0: 6a 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  j){..           
bd00: 20 20 20 20 20 69 66 20 28 21 65 73 2e 73 74 61       if (!es.sta
bd10: 72 74 47 6c 6f 62 61 6c 53 65 61 72 63 68 29 20  rtGlobalSearch) 
bd20: 7b 72 65 74 75 72 6e 7d 20 0d 0a 20 20 20 20 20  {return} ..     
bd30: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
bd40: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
bd50: 20 6d 64 63 20 3d 20 6d 64 4f 62 6a 2e 6d 64 63   mdc = mdObj.mdc
bd60: 6c 61 73 73 3b 0d 0a 20 20 20 20 20 20 20 20 20  lass;..         
bd70: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
bd80: 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 67 65       function ge
bd90: 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29 20 7b  tMdName(mdObj) {
bda0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
bdb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20               .. 
bdc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
bdd0: 20 20 20 69 66 20 28 6d 64 4f 62 6a 2e 70 61 72     if (mdObj.par
bde0: 65 6e 74 20 26 26 20 6d 64 4f 62 6a 2e 70 61 72  ent && mdObj.par
bdf0: 65 6e 74 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65  ent.mdClass.name
be00: 28 31 29 20 21 3d 20 27 d0 9a d0 be d0 bd d1 84  (1) != '........
be10: d0 b8 d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f  ................
be20: 27 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ')..            
be30: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
be40: 72 6e 20 67 65 74 4d 64 4e 61 6d 65 28 6d 64 4f  rn getMdName(mdO
be50: 62 6a 2e 70 61 72 65 6e 74 29 20 2b 20 27 2e 27  bj.parent) + '.'
be60: 20 2b 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73 73   + mdObj.mdClass
be70: 2e 6e 61 6d 65 28 31 29 20 2b 20 27 20 27 20 2b  .name(1) + ' ' +
be80: 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20 20   mdObj.name;..  
be90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
bea0: 20 20 76 61 72 20 63 6e 61 6d 65 20 3d 20 6d 64    var cname = md
beb0: 4f 62 6a 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65  Obj.mdClass.name
bec0: 28 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  (1);..          
bed0: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e            return
bee0: 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e 61 6d 65    (cname ? cname
bef0: 20 2b 20 27 20 27 20 3a 20 27 27 29 20 2b 20 6d   + ' ' : '') + m
bf00: 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20 20 20 20  dObj.name;..    
bf10: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
bf20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
bf30: 61 72 20 6d 64 4e 61 6d 65 20 3d 20 67 65 74 4d  ar mdName = getM
bf40: 64 4e 61 6d 65 28 6d 64 4f 62 6a 29 0d 0a 20 20  dName(mdObj)..  
bf50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
bf60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
bf70: 66 6f 72 28 76 61 72 20 69 20 3d 20 30 2c 20 63  for(var i = 0, c
bf80: 20 3d 20 6d 64 63 2e 70 72 6f 70 65 72 74 69 65   = mdc.propertie
bf90: 73 43 6f 75 6e 74 3b 20 69 20 3c 20 63 3b 20 69  sCount; i < c; i
bfa0: 2b 2b 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  ++){..          
bfb0: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 64            var md
bfc0: 50 72 6f 70 20 3d 20 6d 64 63 2e 70 72 6f 70 65  Prop = mdc.prope
bfd0: 72 74 79 41 74 28 69 29 3b 0d 0a 20 20 20 20 20  rtyAt(i);..     
bfe0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76                 v
bff0: 61 72 20 6d 64 50 72 6f 70 4e 61 6d 65 20 3d 20  ar mdPropName = 
c000: 6d 64 63 2e 70 72 6f 70 65 72 74 79 41 74 28 69  mdc.propertyAt(i
c010: 29 2e 6e 61 6d 65 28 31 29 3b 0d 0a 0d 0a 20 20  ).name(1);....  
c020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c030: 20 20 69 66 20 28 6d 64 4f 62 6a 2e 69 73 50 72    if (mdObj.isPr
c040: 6f 70 4d 6f 64 75 6c 65 28 6d 64 50 72 6f 70 2e  opModule(mdProp.
c050: 69 64 29 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  id)){..         
c060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f                 /
c070: 2f 76 61 72 20 72 6f 77 20 3d 20 7b 55 55 49 44  /var row = {UUID
c080: 20 3a 20 6d 64 4f 62 6a 2e 69 64 7d 0d 0a 20 20   : mdObj.id}..  
c090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c0a0: 20 20 20 20 20 20 76 61 72 20 72 6f 77 20 3d 20        var row = 
c0b0: 65 73 2e 76 74 4d 44 5b 63 75 72 72 65 6e 74 49  es.vtMD[currentI
c0c0: 64 5d 2e 41 64 64 28 29 3b 0d 0a 20 20 20 20 20  d].Add();..     
c0d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c0e0: 20 20 20 72 6f 77 2e 55 55 49 44 20 3d 20 6d 64     row.UUID = md
c0f0: 4f 62 6a 2e 69 64 3b 0d 0a 20 20 20 20 20 20 20  Obj.id;..       
c100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c110: 20 72 6f 77 2e 6d 64 50 72 6f 70 20 3d 20 6d 64   row.mdProp = md
c120: 50 72 6f 70 3b 0d 0a 20 20 20 20 20 20 20 20 20  Prop;..         
c130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72                 r
c140: 6f 77 2e 6d 64 4e 61 6d 65 20 3d 20 6d 64 4e 61  ow.mdName = mdNa
c150: 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  me;..           
c160: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20               .. 
c170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c180: 20 20 20 20 20 20 20 4c 69 6e 65 4e 75 6d 62 65         LineNumbe
c190: 72 2b 2b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  r++;..          
c1a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61                va
c1b0: 72 20 74 69 74 6c 65 20 3d 20 6d 64 4e 61 6d 65  r title = mdName
c1c0: 20 2b 20 27 3a 20 27 20 2b 20 6d 64 50 72 6f 70   + ': ' + mdProp
c1d0: 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20  Name;..         
c1e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72                 r
c1f0: 6f 77 2e 74 69 74 6c 65 20 3d 20 74 69 74 6c 65  ow.title = title
c200: 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ;....           
c210: 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 77               row
c220: 2e 73 6f 72 74 20 3d 20 39 3b 0d 0a 20 20 20 20  .sort = 9;..    
c230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c240: 20 20 20 20 72 6f 77 2e 4c 69 6e 65 4e 75 6d 62      row.LineNumb
c250: 65 72 20 3d 20 4c 69 6e 65 4e 75 6d 62 65 72 3b  er = LineNumber;
c260: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
c270: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 61            var ma
c280: 74 63 68 65 73 3b 0d 0a 0d 0a 20 20 20 20 20 20  tches;....      
c290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c2a0: 20 20 76 61 72 20 72 65 20 3d 20 6e 65 77 20 52    var re = new R
c2b0: 65 67 45 78 70 28 2f 28 28 5b d0 b0 2d d1 8f 61  egExp(/(([..-..a
c2c0: 2d 7a 30 2d 39 5d 7b 31 2c 7d 29 5c 73 5b d0 b0  -z0-9]{1,})\s[..
c2d0: 2d d1 8f 61 2d 7a 30 2d 39 5d 7b 31 2c 7d 29 28  -..a-z0-9]{1,})(
c2e0: 5c 2e 7c 3a 29 2f 69 29 3b 0d 0a 20 20 20 20 20  \.|:)/i);..     
c2f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c300: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
c310: 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74               mat
c320: 63 68 65 73 20 3d 20 72 65 2e 65 78 65 63 28 6d  ches = re.exec(m
c330: 64 4e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20  dName);..       
c340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c350: 20 69 66 20 28 6d 61 74 63 68 65 73 21 3d 6e 75   if (matches!=nu
c360: 6c 6c 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20  ll){..          
c370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c380: 20 20 72 6f 77 2e 73 6f 72 74 54 69 74 6c 65 20    row.sortTitle 
c390: 3d 20 6d 61 74 63 68 65 73 5b 31 5d 3b 0d 0a 0d  = matches[1];...
c3a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
c3b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20               if 
c3c0: 28 21 65 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62  (!es.reatingMdOb
c3d0: 6a 65 63 74 73 5b 6d 61 74 63 68 65 73 5b 31 5d  jects[matches[1]
c3e0: 5d 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ]){..           
c3f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c400: 20 20 20 20 20 69 66 20 28 21 65 73 2e 72 65 61       if (!es.rea
c410: 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73 5b 6d 61  tingMdObjects[ma
c420: 74 63 68 65 73 5b 32 5d 5d 29 20 7b 0d 0a 20 20  tches[2]]) {..  
c430: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c440: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c450: 20 20 72 6f 77 2e 73 6f 72 74 20 3d 20 39 3b 20    row.sort = 9; 
c460: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
c470: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c480: 20 7d 20 65 6c 73 65 20 7b 0d 0a 20 20 20 20 20   } else {..     
c490: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c4a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72                 r
c4b0: 6f 77 2e 73 6f 72 74 20 3d 20 65 73 2e 72 65 61  ow.sort = es.rea
c4c0: 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73 5b 6d 61  tingMdObjects[ma
c4d0: 74 63 68 65 73 5b 32 5d 5d 3b 0d 0a 20 20 20 20  tches[2]];..    
c4e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c4f0: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
c500: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c510: 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65            } else
c520: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
c530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c540: 20 20 20 20 72 6f 77 2e 73 6f 72 74 20 3d 20 65      row.sort = e
c550: 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63  s.reatingMdObjec
c560: 74 73 5b 6d 61 74 63 68 65 73 5b 31 5d 5d 3b 20  ts[matches[1]]; 
c570: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
c580: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c590: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
c5a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c5b0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
c5c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c5d0: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
c5e0: 20 20 20 20 20 20 20 20 20 20 20 7d 20 20 20 20             }    
c5f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c600: 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20      ..          
c610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
c620: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c630: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
c640: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
c650: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0 9f d0            // ...
c660: b5 d1 80 d0 b5 d0 b1 d0 b8 d1 80 d0 b0 d0 b5 d0  ................
c670: bc 20 d0 ba d0 bb d0 b0 d1 81 d1 81 d1 8b 20 d0  . ............ .
c680: bf d0 be d1 82 d0 be d0 bc d0 ba d0 be d0 b2 20  ............... 
c690: 28 d0 bd d0 b0 d0 bf d1 80 d0 b8 d0 bc d0 b5 d1  (...............
c6a0: 80 20 d1 83 20 d0 94 d0 be d0 ba d1 83 d0 bc d0  . .. ...........
c6b0: b5 d0 bd d1 82 d0 b0 20 d1 8d d1 82 d0 be 20 d0  ....... ...... .
c6c0: a0 d0 b5 d0 ba d0 b2 d0 b8 d0 b7 d0 b8 d1 82 d1  ................
c6d0: 8b 2c 20 d0 a2 d0 b0 d0 b1 d0 bb d0 b8 d1 87 d0  ., .............
c6e0: bd d1 8b d0 b5 d0 a7 d0 b0 d1 81 d1 82 d0 b8 2c  ...............,
c6f0: 20 d0 a4 d0 be d1 80 d0 bc d1 8b 29 0d 0a 20 20   ..........)..  
c700: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f                fo
c710: 72 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c  r(var i = 0; i <
c720: 20 6d 64 63 2e 63 68 69 6c 64 73 43 6c 61 73 73   mdc.childsClass
c730: 65 73 43 6f 75 6e 74 3b 20 69 2b 2b 29 0d 0a 20  esCount; i++).. 
c740: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b                 {
c750: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
c760: 20 20 20 20 20 20 76 61 72 20 63 68 69 6c 64 4d        var childM
c770: 64 43 6c 61 73 73 20 3d 20 6d 64 63 2e 63 68 69  dClass = mdc.chi
c780: 6c 64 43 6c 61 73 73 41 74 28 69 29 0d 0a 20 20  ldClassAt(i)..  
c790: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c7a0: 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20    ..            
c7b0: 20 20 20 20 20 20 20 20 69 66 20 28 21 28 69 67          if (!(ig
c7c0: 6e 6f 72 65 64 4d 64 43 6c 61 73 73 5b 63 68 69  noredMdClass[chi
c7d0: 6c 64 4d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31  ldMdClass.name(1
c7e0: 2c 20 74 72 75 65 29 5d 3d 3d 75 6e 64 65 66 69  , true)]==undefi
c7f0: 6e 65 64 29 29 7b 0d 0a 20 20 20 20 20 20 20 20  ned)){..        
c800: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c810: 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20 20 20  continue;..     
c820: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
c830: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
c840: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
c850: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 d0              // .
c860: 94 d0 bb d1 8f 20 d0 be d1 81 d1 82 d0 b0 d0 bb  ..... ..........
c870: d1 8c d0 bd d0 be d0 b3 d0 be 20 d0 bf d0 b5 d1  .......... .....
c880: 80 d0 b5 d0 b1 d0 b5 d1 80 d0 b5 d0 bc 20 d0 bf  ............. ..
c890: d0 be d1 82 d0 be d0 bc d0 ba d0 be d0 b2 20 d1  .............. .
c8a0: 8d d1 82 d0 be d0 b3 d0 be 20 d0 ba d0 bb d0 b0  ......... ......
c8b0: d1 81 d1 81 d0 b0 2e 0d 0a 20 20 20 20 20 20 20  .........       
c8c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72               for
c8d0: 28 76 61 72 20 63 68 6c 64 69 64 78 20 3d 20 30  (var chldidx = 0
c8e0: 2c 20 63 20 3d 20 6d 64 4f 62 6a 2e 63 68 69 6c  , c = mdObj.chil
c8f0: 64 4f 62 6a 65 63 74 73 43 6f 75 6e 74 28 69 29  dObjectsCount(i)
c900: 3b 20 63 68 6c 64 69 64 78 20 3c 20 63 3b 20 63  ; chldidx < c; c
c910: 68 6c 64 69 64 78 2b 2b 29 7b 0d 0a 20 20 20 20  hldidx++){..    
c920: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c930: 20 20 20 20 76 61 72 20 63 68 69 6c 64 4f 62 6a      var childObj
c940: 65 63 74 20 3d 20 6d 64 4f 62 6a 2e 63 68 69 6c  ect = mdObj.chil
c950: 64 4f 62 6a 65 63 74 28 69 2c 20 63 68 6c 64 69  dObject(i, chldi
c960: 64 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  dx);..          
c970: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72                ar
c980: 67 75 6d 65 6e 74 73 2e 63 61 6c 6c 65 65 28 63  guments.callee(c
c990: 68 69 6c 64 4f 62 6a 65 63 74 29 3b 0d 0a 20 20  hildObject);..  
c9a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
c9b0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
c9c0: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
c9d0: 20 20 20 20 20 20 20 20 7d 29 28 4d 64 43 6f 6e          })(MdCon
c9e0: 74 61 69 6e 65 72 2e 72 6f 6f 74 4f 62 6a 65 63  tainer.rootObjec
c9f0: 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  t)..            
ca00: 0d 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65  ..        } else
ca10: 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
ca20: 66 6f 72 20 28 76 61 72 20 6b 65 79 20 69 6e 20  for (var key in 
ca30: 74 68 69 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62  this.reatingMdOb
ca40: 6a 65 63 74 73 29 7b 0d 0a 20 20 20 20 20 20 20  jects){..       
ca50: 20 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69           if (thi
ca60: 73 2e 72 65 61 74 69 6e 67 4d 64 4f 62 6a 65 63  s.reatingMdObjec
ca70: 74 73 5b 6b 65 79 5d 3c 32 29 20 7b 0d 0a 20 20  ts[key]<2) {..  
ca80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ca90: 20 20 76 61 72 20 66 69 6c 74 65 72 20 3d 20 76    var filter = v
caa0: 38 4e 65 77 28 22 53 74 72 75 63 74 75 72 65 22  8New("Structure"
cab0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
cac0: 20 20 20 20 20 20 20 20 66 69 6c 74 65 72 2e 49          filter.I
cad0: 6e 73 65 72 74 28 22 73 6f 72 74 22 2c 20 31 29  nsert("sort", 1)
cae0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  ;..            .
caf0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
cb00: 20 20 20 20 20 76 61 72 20 66 69 6e 64 52 6f 77       var findRow
cb10: 73 20 3d 20 74 68 69 73 2e 76 74 4d 44 5b 63 75  s = this.vtMD[cu
cb20: 72 72 65 6e 74 49 64 5d 2e 46 69 6e 64 52 6f 77  rrentId].FindRow
cb30: 73 28 66 69 6c 74 65 72 29 3b 0d 0a 20 20 20 20  s(filter);..    
cb40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cb50: 69 66 20 28 66 69 6e 64 52 6f 77 73 2e 43 6f 75  if (findRows.Cou
cb60: 6e 74 28 29 3e 30 29 7b 0d 0a 20 20 20 20 20 20  nt()>0){..      
cb70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cb80: 20 20 66 6f 72 20 28 76 61 72 20 69 3d 30 3b 20    for (var i=0; 
cb90: 69 3c 66 69 6e 64 52 6f 77 73 2e 43 6f 75 6e 74  i<findRows.Count
cba0: 28 29 3b 20 69 2b 2b 29 7b 0d 0a 20 20 20 20 20  (); i++){..     
cbb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cbc0: 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 52         var currR
cbd0: 6f 77 20 3d 20 66 69 6e 64 52 6f 77 73 2e 47 65  ow = findRows.Ge
cbe0: 74 28 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  t(i);..         
cbf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cc00: 20 20 20 69 66 20 28 63 75 72 72 52 6f 77 2e 73     if (currRow.s
cc10: 6f 72 74 54 69 74 6c 65 20 21 3d 20 6b 65 79 29  ortTitle != key)
cc20: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
cc30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cc40: 20 20 20 63 75 72 72 52 6f 77 2e 73 6f 72 74 20     currRow.sort 
cc50: 3d 20 39 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  = 9;..          
cc60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cc70: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
cc80: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
cc90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cca0: 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20      }....       
ccb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
ccc0: 20 66 69 6c 74 65 72 20 3d 20 76 38 4e 65 77 28   filter = v8New(
ccd0: 22 53 74 72 75 63 74 75 72 65 22 29 3b 0d 0a 20  "Structure");.. 
cce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ccf0: 20 20 20 66 69 6c 74 65 72 2e 49 6e 73 65 72 74     filter.Insert
cd00: 28 22 73 6f 72 74 54 69 74 6c 65 22 2c 20 6b 65  ("sortTitle", ke
cd10: 79 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  y);..           
cd20: 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69 6e           var fin
cd30: 64 52 6f 77 73 20 3d 20 74 68 69 73 2e 76 74 4d  dRows = this.vtM
cd40: 44 5b 63 75 72 72 65 6e 74 49 64 5d 2e 46 69 6e  D[currentId].Fin
cd50: 64 52 6f 77 73 28 66 69 6c 74 65 72 29 3b 0d 0a  dRows(filter);..
cd60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cd70: 20 20 20 20 69 66 20 28 66 69 6e 64 52 6f 77 73      if (findRows
cd80: 2e 43 6f 75 6e 74 28 29 3e 30 29 7b 0d 0a 20 20  .Count()>0){..  
cd90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cda0: 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69        for (var i
cdb0: 3d 30 3b 20 69 3c 66 69 6e 64 52 6f 77 73 2e 43  =0; i<findRows.C
cdc0: 6f 75 6e 74 28 29 3b 20 69 2b 2b 29 7b 0d 0a 20  ount(); i++){.. 
cdd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cde0: 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63             var c
cdf0: 75 72 72 52 6f 77 20 3d 20 66 69 6e 64 52 6f 77  urrRow = findRow
ce00: 73 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20 20 20  s.Get(i);..     
ce10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ce20: 20 20 20 20 20 20 20 69 66 20 28 63 75 72 72 52         if (currR
ce30: 6f 77 2e 73 6f 72 74 54 69 74 6c 65 20 21 3d 20  ow.sortTitle != 
ce40: 6b 65 79 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  key){..         
ce50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ce60: 20 20 20 20 20 20 20 63 75 72 72 52 6f 77 2e 73         currRow.s
ce70: 6f 72 74 20 3d 20 28 21 74 68 69 73 2e 72 65 61  ort = (!this.rea
ce80: 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73 5b 6b 65  tingMdObjects[ke
ce90: 79 5d 29 20 3f 20 39 3a 20 74 68 69 73 2e 72 65  y]) ? 9: this.re
cea0: 61 74 69 6e 67 4d 64 4f 62 6a 65 63 74 73 5b 6b  atingMdObjects[k
ceb0: 65 79 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ey];..          
cec0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
ced0: 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20    }..           
cee0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
cef0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cf00: 20 20 20 20 7d 20 20 20 20 20 20 20 20 20 20 20      }           
cf10: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
cf20: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
cf30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a                ..
cf40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
cf50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
cf60: 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20  .            .. 
cf70: 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20         }....    
cf80: 20 20 20 20 69 66 20 28 74 68 69 73 2e 66 69 6c      if (this.fil
cf90: 74 65 72 42 79 55 55 49 44 29 7b 0d 0a 20 20 20  terByUUID){..   
cfa0: 20 20 20 20 20 20 20 20 20 76 61 72 20 61 72 72           var arr
cfb0: 61 79 54 6f 46 69 6c 74 65 72 20 3d 20 76 38 4e  ayToFilter = v8N
cfc0: 65 77 28 27 41 72 72 61 79 27 29 3b 0d 0a 20 20  ew('Array');..  
cfd0: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69            var fi
cfe0: 72 73 74 45 6c 65 6d 65 6e 74 20 3d 20 66 61 6c  rstElement = fal
cff0: 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  se;..           
d000: 20 66 6f 72 20 28 76 61 72 20 6b 20 69 6e 20 74   for (var k in t
d010: 68 69 73 2e 66 69 6c 74 65 72 42 79 55 55 49 44  his.filterByUUID
d020: 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ){..            
d030: 20 20 20 20 66 69 72 73 74 45 6c 65 6d 65 6e 74      firstElement
d040: 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20   = true;..      
d050: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69            var fi
d060: 6c 74 65 72 20 3d 20 76 38 4e 65 77 28 22 53 74  lter = v8New("St
d070: 72 75 63 74 75 72 65 22 29 3b 0d 0a 20 20 20 20  ructure");..    
d080: 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 74              filt
d090: 65 72 2e 49 6e 73 65 72 74 28 22 55 55 49 44 22  er.Insert("UUID"
d0a0: 2c 20 6b 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  , k);..         
d0b0: 20 20 20 20 20 20 20 76 61 72 20 66 69 6e 64 52         var findR
d0c0: 6f 77 73 20 3d 20 74 68 69 73 2e 76 74 4d 44 5b  ows = this.vtMD[
d0d0: 63 75 72 72 65 6e 74 49 64 5d 2e 46 69 6e 64 52  currentId].FindR
d0e0: 6f 77 73 28 66 69 6c 74 65 72 29 3b 0d 0a 20 20  ows(filter);..  
d0f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66                if
d100: 20 28 66 69 6e 64 52 6f 77 73 2e 43 6f 75 6e 74   (findRows.Count
d110: 28 29 3e 30 29 7b 0d 0a 20 20 20 20 20 20 20 20  ()>0){..        
d120: 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20              for 
d130: 28 76 61 72 20 69 3d 30 3b 20 69 3c 66 69 6e 64  (var i=0; i<find
d140: 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20 69 2b  Rows.Count(); i+
d150: 2b 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  +){..           
d160: 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72               arr
d170: 61 79 54 6f 46 69 6c 74 65 72 2e 41 64 64 28 66  ayToFilter.Add(f
d180: 69 6e 64 52 6f 77 73 2e 47 65 74 28 69 29 29 3b  indRows.Get(i));
d190: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
d1a0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
d1b0: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
d1c0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
d1d0: 20 20 20 20 20 20 20 69 66 20 28 66 69 72 73 74         if (first
d1e0: 45 6c 65 6d 65 6e 74 29 0d 0a 20 20 20 20 20 20  Element)..      
d1f0: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 76            this.v
d200: 74 4d 44 5b 63 75 72 72 65 6e 74 49 64 5d 20 3d  tMD[currentId] =
d210: 20 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72 65   this.vtMD[curre
d220: 6e 74 49 64 5d 2e 43 6f 70 79 28 61 72 72 61 79  ntId].Copy(array
d230: 54 6f 46 69 6c 74 65 72 29 3b 0d 0a 0d 0a 20 20  ToFilter);....  
d240: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
d250: 20 74 68 69 73 2e 76 74 4d 44 5b 63 75 72 72 65   this.vtMD[curre
d260: 6e 74 49 64 5d 2e 53 6f 72 74 28 22 73 6f 72 74  ntId].Sort("sort
d270: 2c 20 4c 69 6e 65 4e 75 6d 62 65 72 2c 20 74 69  , LineNumber, ti
d280: 74 6c 65 22 29 3b 0d 0a 0d 0a 20 20 20 20 7d 2c  tle");....    },
d290: 0d 0a 20 20 20 20 0d 0a 0d 0a 20 20 20 20 51 75  ..    ....    Qu
d2a0: 65 72 79 5f 4f 6e 43 68 61 6e 67 65 20 3a 20 66  ery_OnChange : f
d2b0: 75 6e 63 74 69 6f 6e 28 43 6f 6e 74 72 6f 6c 29  unction(Control)
d2c0: 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 72 65 74  {....        ret
d2d0: 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 7d 2c 0d 0a  urn;....    },..
d2e0: 0d 0a 20 20 20 20 42 74 53 65 61 72 63 68 5f 43  ..    BtSearch_C
d2f0: 6c 69 63 6b 20 3a 20 66 75 6e 63 74 69 6f 6e 20  lick : function 
d300: 28 63 6f 6e 74 72 6f 6c 29 20 7b 0d 0a 0d 0a 20  (control) {.... 
d310: 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73 2e         if (this.
d320: 66 6f 72 6d 2e 51 75 65 72 79 20 3d 3d 20 27 27  form.Query == ''
d330: 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  )..        {..  
d340: 20 20 20 20 20 20 20 20 20 20 44 6f 4d 65 73 73            DoMess
d350: 61 67 65 42 6f 78 28 27 d0 9d d0 b5 20 d0 b7 d0  ageBox('.... ...
d360: b0 d0 b4 d0 b0 d0 bd d0 b0 20 d1 81 d1 82 d1 80  ......... ......
d370: d0 be d0 ba d0 b0 20 d0 bf d0 be d0 b8 d1 81 d0  ...... .........
d380: ba d0 b0 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  ...');..        
d390: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
d3a0: 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20       }....      
d3b0: 20 20 74 68 69 73 2e 73 65 61 72 63 68 49 6e 4d    this.searchInM
d3c0: 65 74 61 64 61 74 61 28 74 72 75 65 29 3b 0d 0a  etadata(true);..
d3d0: 20 20 20 20 7d 2c 0d 0a 0d 0a 0d 0a 20 20 20 20      },......    
d3e0: 53 65 74 43 6f 6e 74 72 6f 6c 73 56 69 73 69 62  SetControlsVisib
d3f0: 6c 65 20 3a 20 66 75 6e 63 74 69 6f 6e 28 29 7b  le : function(){
d400: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f  ..        this._
d410: 73 75 70 65 72 28 29 3b 0d 0a 20 20 20 20 20 20  super();..      
d420: 20 20 69 66 20 28 74 68 69 73 2e 69 73 47 6c 6f    if (this.isGlo
d430: 62 61 6c 46 69 6e 64 29 7b 0d 0a 20 20 20 20 20  balFind){..     
d440: 20 20 20 20 20 20 20 74 68 69 73 2e 66 6f 72 6d         this.form
d450: 2e 63 61 70 74 69 6f 6e 20 3d 20 22 d0 a0 d0 b0  .caption = "....
d460: d1 81 d1 88 d0 b8 d1 80 d0 b5 d0 bd d0 bd d1 8b  ................
d470: d0 b9 20 d0 bf d0 be d0 b8 d1 81 d0 ba 20 d0 b2  .. .......... ..
d480: 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5 20 28 d0   ............ (.
d490: b3 d0 bb d0 be d0 b1 d0 b0 d0 bb d1 8c d0 bd d1  ................
d4a0: 8b d0 b9 29 22 3b 0d 0a 20 20 20 20 20 20 20 20  ...)";..        
d4b0: 7d 0d 0a 20 20 20 20 7d 2c 20 0d 0a 0d 0a 20 20  }..    }, ....  
d4c0: 20 20 73 68 6f 77 53 65 61 72 63 68 52 65 73 75    showSearchResu
d4d0: 6c 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 64 6f  lt: function (do
d4e0: 63 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79  cRow, fromHotKey
d4f0: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ) {..        thi
d500: 73 2e 73 68 6f 77 52 65 73 75 6c 74 28 64 6f 63  s.showResult(doc
d510: 52 6f 77 2c 20 66 72 6f 6d 48 6f 74 4b 65 79 29  Row, fromHotKey)
d520: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
d530: 65 78 70 61 6e 64 54 72 65 65 28 29 3b 0d 0a 20  expandTree();.. 
d540: 20 20 20 7d 2c 0d 0a 20 20 20 20 0d 0a 20 20 20     },..    ..   
d550: 20 65 78 70 61 6e 64 54 72 65 65 20 3a 20 66 75   expandTree : fu
d560: 6e 63 74 69 6f 6e 20 28 63 6f 6c 6c 61 70 73 65  nction (collapse
d570: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72  ) {..        var
d580: 20 74 72 65 65 20 3d 20 74 68 69 73 2e 66 6f 72   tree = this.for
d590: 6d 2e 43 6f 6e 74 72 6f 6c 73 2e 53 65 61 72 63  m.Controls.Searc
d5a0: 68 52 65 73 75 6c 74 73 3b 0d 0a 20 20 20 20 20  hResults;..     
d5b0: 20 20 20 66 6f 72 20 28 76 61 72 20 69 3d 30 3b     for (var i=0;
d5c0: 20 69 20 3c 20 74 68 69 73 2e 72 65 73 75 6c 74   i < this.result
d5d0: 73 2e 52 6f 77 73 2e 43 6f 75 6e 74 28 29 3b 20  s.Rows.Count(); 
d5e0: 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 7b 20  i++)..        { 
d5f0: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
d600: 20 20 20 20 20 76 61 72 20 64 6f 63 52 6f 77 20       var docRow 
d610: 3d 20 74 68 69 73 2e 72 65 73 75 6c 74 73 2e 52  = this.results.R
d620: 6f 77 73 2e 47 65 74 28 69 29 3b 0d 0a 20 20 20  ows.Get(i);..   
d630: 20 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69           if (thi
d640: 73 2e 66 6f 72 6d 2e 54 72 65 65 56 69 65 77 29  s.form.TreeView)
d650: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d  ..            {.
d660: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
d670: 20 66 6f 72 20 28 76 61 72 20 6a 3d 30 3b 20 6a   for (var j=0; j
d680: 20 3c 20 64 6f 63 52 6f 77 2e 52 6f 77 73 2e 43   < docRow.Rows.C
d690: 6f 75 6e 74 28 29 3b 20 6a 2b 2b 29 0d 0a 20 20  ount(); j++)..  
d6a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d                {.
d6b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
d6c0: 20 20 20 20 20 76 61 72 20 72 6f 77 20 3d 20 64       var row = d
d6d0: 6f 63 52 6f 77 2e 52 6f 77 73 2e 47 65 74 28 6a  ocRow.Rows.Get(j
d6e0: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
d6f0: 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69 73          if (this
d700: 2e 65 78 70 61 6e 64 65 74 52 6f 77 73 5b 22 22  .expandetRows[""
d710: 2b 72 6f 77 2e 4c 69 6e 65 4e 6f 2b 72 6f 77 2e  +row.LineNo+row.
d720: 46 6f 75 6e 64 4c 69 6e 65 5d 29 7b 0d 0a 20 20  FoundLine]){..  
d730: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
d740: 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d        continue;.
d750: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
d760: 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20       }..        
d770: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c              coll
d780: 61 70 73 65 20 3f 20 74 72 65 65 2e 43 6f 6c 6c  apse ? tree.Coll
d790: 61 70 73 65 28 72 6f 77 29 20 3a 20 74 72 65 65  apse(row) : tree
d7a0: 2e 45 78 70 61 6e 64 28 72 6f 77 2c 20 74 72 75  .Expand(row, tru
d7b0: 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  e);..           
d7c0: 20 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69           if (thi
d7d0: 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53 65 61  s.startGlobalSea
d7e0: 72 63 68 29 7b 0d 0a 20 20 20 20 20 20 20 20 20  rch){..         
d7f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74                 t
d800: 68 69 73 2e 65 78 70 61 6e 64 65 74 52 6f 77 73  his.expandetRows
d810: 5b 22 22 2b 72 6f 77 2e 4c 69 6e 65 4e 6f 2b 72  [""+row.LineNo+r
d820: 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65 5d 20 3d 20  ow.FoundLine] = 
d830: 22 31 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  "1";..          
d840: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
d850: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
d860: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
d870: 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d             else.
d880: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a  .            {..
d890: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
d8a0: 69 66 20 28 74 68 69 73 2e 65 78 70 61 6e 64 65  if (this.expande
d8b0: 74 52 6f 77 73 5b 22 22 2b 64 6f 63 52 6f 77 2e  tRows[""+docRow.
d8c0: 4c 69 6e 65 4e 6f 2b 64 6f 63 52 6f 77 2e 46 6f  LineNo+docRow.Fo
d8d0: 75 6e 64 4c 69 6e 65 5d 29 7b 0d 0a 20 20 20 20  undLine]){..    
d8e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
d8f0: 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20 20 20  continue;..     
d900: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
d910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f                co
d920: 6c 6c 61 70 73 65 20 3f 20 74 72 65 65 2e 43 6f  llapse ? tree.Co
d930: 6c 6c 61 70 73 65 28 64 6f 63 52 6f 77 29 20 3a  llapse(docRow) :
d940: 20 74 72 65 65 2e 45 78 70 61 6e 64 28 64 6f 63   tree.Expand(doc
d950: 52 6f 77 2c 20 74 72 75 65 29 3b 20 20 20 20 20  Row, true);     
d960: 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20         ..       
d970: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
d980: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74             if (t
d990: 68 69 73 2e 73 74 61 72 74 47 6c 6f 62 61 6c 53  his.startGlobalS
d9a0: 65 61 72 63 68 29 7b 0d 0a 20 20 20 20 20 20 20  earch){..       
d9b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69               thi
d9c0: 73 2e 65 78 70 61 6e 64 65 74 52 6f 77 73 5b 22  s.expandetRows["
d9d0: 22 2b 64 6f 63 52 6f 77 2e 4c 69 6e 65 4e 6f 2b  "+docRow.LineNo+
d9e0: 64 6f 63 52 6f 77 2e 46 6f 75 6e 64 4c 69 6e 65  docRow.FoundLine
d9f0: 5d 20 3d 20 22 31 22 3b 0d 0a 20 20 20 20 20 20  ] = "1";..      
da00: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
da10: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
da20: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20      }..    }..  
da30: 20 20 20 0d 0a 0d 0a 0d 0a 7d 29 0d 0a 0d 0a 2f     ......})..../
da40: 2f 2f 2f 7d 20 45 78 74 53 65 61 72 63 68 0d 0a  ///} ExtSearch..
da50: 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ..//////////////
da60: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
da70: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
da80: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
da90: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
daa0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f  //////////..////
dab0: 7b 20 d0 92 d1 81 d0 bf d0 be d0 bc d0 be d0 b3  { ..............
dac0: d0 b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0 b5  ................
dad0: 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d1 8b 2e   ...............
dae0: 0d 0a 2f 2f 2f 2f 0d 0a 0d 0a 4d 64 4f 62 6a 65  ..////....MdObje
daf0: 63 74 20 3d 20 73 74 64 6c 69 62 2e 43 6c 61 73  ct = stdlib.Clas
db00: 73 2e 65 78 74 65 6e 64 28 7b 20 20 20 20 20 20  s.extend({      
db10: 20 20 20 20 20 0d 0a 20 20 20 20 63 6f 6e 73 74       ..    const
db20: 72 75 63 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28  ruct: function (
db30: 6f 62 6a 2c 20 70 72 6f 70 2c 20 74 69 74 6c 65  obj, prop, title
db40: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69  ) {..        thi
db50: 73 2e 6f 62 6a 20 3d 20 6f 62 6a 3b 0d 0a 20 20  s.obj = obj;..  
db60: 20 20 20 20 20 20 74 68 69 73 2e 70 72 6f 70 20        this.prop 
db70: 3d 20 70 72 6f 70 3b 0d 0a 20 20 20 20 20 20 20  = prop;..       
db80: 20 74 68 69 73 2e 74 69 74 6c 65 20 3d 20 74 69   this.title = ti
db90: 74 6c 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20  tle;..    },..  
dba0: 20 20 67 65 74 54 65 78 74 3a 20 66 75 6e 63 74    getText: funct
dbb0: 69 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20 20 20  ion() {..       
dbc0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 6f 62 6a   return this.obj
dbd0: 2e 67 65 74 4d 6f 64 75 6c 65 54 65 78 74 28 74  .getModuleText(t
dbe0: 68 69 73 2e 70 72 6f 70 2e 69 64 29 3b 0d 0a 20  his.prop.id);.. 
dbf0: 20 20 20 7d 2c 0d 0a 20 20 20 20 61 63 74 69 76     },..    activ
dc00: 61 74 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20  ate: function() 
dc10: 7b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  {..        this.
dc20: 6f 62 6a 2e 6f 70 65 6e 4d 6f 64 75 6c 65 28 74  obj.openModule(t
dc30: 68 69 73 2e 70 72 6f 70 2e 69 64 29 3b 0d 0a 20  his.prop.id);.. 
dc40: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 47 65         return Ge
dc50: 74 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 0d 0a  tTextWindow();..
dc60: 20 20 20 20 7d 2c 0d 0a 20 20 20 20 67 65 74 54      },..    getT
dc70: 69 74 6c 65 3a 20 66 75 6e 63 74 69 6f 6e 28 29  itle: function()
dc80: 20 7b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28   {..        if (
dc90: 21 74 68 69 73 2e 74 69 74 6c 65 29 0d 0a 20 20  !this.title)..  
dca0: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
dcb0: 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 67 65       function ge
dcc0: 74 4d 64 4e 61 6d 65 28 6d 64 4f 62 6a 29 20 7b  tMdName(mdObj) {
dcd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20               .. 
dcf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69                 i
dd00: 66 20 28 6d 64 4f 62 6a 2e 70 61 72 65 6e 74 20  f (mdObj.parent 
dd10: 26 26 20 6d 64 4f 62 6a 2e 70 61 72 65 6e 74 2e  && mdObj.parent.
dd20: 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31 29 20  mdClass.name(1) 
dd30: 21 3d 20 27 d0 9a d0 be d0 bd d1 84 d0 b8 d0 b3  != '............
dd40: d1 83 d1 80 d0 b0 d1 86 d0 b8 d1 8f 27 29 0d 0a  ............')..
dd50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dd60: 20 20 20 20 72 65 74 75 72 6e 20 67 65 74 4d 64      return getMd
dd70: 4e 61 6d 65 28 6d 64 4f 62 6a 2e 70 61 72 65 6e  Name(mdObj.paren
dd80: 74 29 20 2b 20 27 2e 27 20 2b 20 6d 64 4f 62 6a  t) + '.' + mdObj
dd90: 2e 6d 64 43 6c 61 73 73 2e 6e 61 6d 65 28 31 29  .mdClass.name(1)
dda0: 20 2b 20 27 20 27 20 2b 20 6d 64 4f 62 6a 2e 6e   + ' ' + mdObj.n
ddb0: 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  ame;..          
ddc0: 20 20 20 20 20 20 76 61 72 20 63 6e 61 6d 65 20        var cname 
ddd0: 3d 20 6d 64 4f 62 6a 2e 6d 64 43 6c 61 73 73 2e  = mdObj.mdClass.
dde0: 6e 61 6d 65 28 31 29 3b 0d 0a 20 20 20 20 20 20  name(1);..      
ddf0: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e            return
de00: 20 20 28 63 6e 61 6d 65 20 3f 20 63 6e 61 6d 65    (cname ? cname
de10: 20 2b 20 27 20 27 20 3a 20 27 27 29 20 2b 20 6d   + ' ' : '') + m
de20: 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 20 20 20 20  dObj.name;..    
de30: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
de40: 20 20 20 20 20 20 20 74 68 69 73 2e 74 69 74 6c         this.titl
de50: 65 20 3d 20 67 65 74 4d 64 4e 61 6d 65 28 74 68  e = getMdName(th
de60: 69 73 2e 6f 62 6a 29 20 2b 20 27 3a 20 27 20 2b  is.obj) + ': ' +
de70: 20 74 68 69 73 2e 70 72 6f 70 2e 6e 61 6d 65 28   this.prop.name(
de80: 31 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  1);..        }..
de90: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74          return t
dea0: 68 69 73 2e 74 69 74 6c 65 3b 0d 0a 20 20 20 20  his.title;..    
deb0: 7d 0d 0a 7d 29 3b 0d 0a 0d 0a 54 65 78 74 44 6f  }..});....TextDo
dec0: 63 4f 62 6a 65 63 74 20 3d 20 73 74 64 6c 69 62  cObject = stdlib
ded0: 2e 43 6c 61 73 73 2e 65 78 74 65 6e 64 28 7b 0d  .Class.extend({.
dee0: 0a 20 20 20 20 63 6f 6e 73 74 72 75 63 74 3a 20  .    construct: 
def0: 66 75 6e 63 74 69 6f 6e 20 28 74 78 74 44 6f 63  function (txtDoc
df00: 2c 20 74 69 74 6c 65 29 20 7b 0d 0a 20 20 20 20  , title) {..    
df10: 20 20 20 20 74 68 69 73 2e 6f 62 6a 20 3d 20 74      this.obj = t
df20: 78 74 44 6f 63 3b 0d 0a 20 20 20 20 20 20 20 20  xtDoc;..        
df30: 74 68 69 73 2e 74 69 74 6c 65 20 3d 20 74 69 74  this.title = tit
df40: 6c 65 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 20 20 20  le;..    },..   
df50: 20 67 65 74 54 65 78 74 3a 20 66 75 6e 63 74 69   getText: functi
df60: 6f 6e 28 29 20 7b 0d 0a 20 20 20 20 20 20 20 20  on() {..        
df70: 72 65 74 75 72 6e 20 74 68 69 73 2e 6f 62 6a 2e  return this.obj.
df80: 47 65 74 54 65 78 74 28 29 3b 0d 0a 20 20 20 20  GetText();..    
df90: 7d 2c 0d 0a 20 20 20 20 61 63 74 69 76 61 74 65  },..    activate
dfa0: 3a 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a  : function() {..
dfb0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 6f 62 6a          this.obj
dfc0: 2e 53 68 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20  .Show();..      
dfd0: 20 20 72 65 74 75 72 6e 20 47 65 74 54 65 78 74    return GetText
dfe0: 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20 7d  Window();..    }
dff0: 2c 0d 0a 20 20 20 20 67 65 74 54 69 74 6c 65 3a  ,..    getTitle:
e000: 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20   function() {.. 
e010: 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73         if (!this
e020: 2e 74 69 74 6c 65 29 0d 0a 20 20 20 20 20 20 20  .title)..       
e030: 20 20 20 20 20 74 68 69 73 2e 74 69 74 6c 65 20       this.title 
e040: 3d 20 74 68 69 73 2e 6f 62 6a 2e 55 73 65 64 46  = this.obj.UsedF
e050: 69 6c 65 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20  ileName;..      
e060: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 74 69    return this.ti
e070: 74 6c 65 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 29 3b  tle;..    }..});
e080: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 66 69 6e  ....function fin
e090: 64 4d 64 4f 62 6a 28 63 75 72 72 65 6e 74 6d 64  dMdObj(currentmd
e0a0: 2c 20 75 75 69 64 29 0d 0a 7b 0d 0a 20 20 20 20  , uuid)..{..    
e0b0: 69 66 28 75 75 69 64 20 3d 3d 20 63 75 72 72 65  if(uuid == curre
e0c0: 6e 74 6d 64 2e 72 6f 6f 74 4f 62 6a 65 63 74 2e  ntmd.rootObject.
e0d0: 69 64 29 0d 0a 20 20 20 20 20 20 20 20 72 65 74  id)..        ret
e0e0: 75 72 6e 20 63 75 72 72 65 6e 74 6d 64 2e 72 6f  urn currentmd.ro
e0f0: 6f 74 4f 62 6a 65 63 74 0d 0a 20 20 20 20 72 65  otObject..    re
e100: 74 75 72 6e 20 63 75 72 72 65 6e 74 6d 64 2e 66  turn currentmd.f
e110: 69 6e 64 42 79 55 55 49 44 28 75 75 69 64 29 3b  indByUUID(uuid);
e120: 0d 0a 7d 0d 0a 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7d  ..}..////..////}
e130: 20 d0 92 d1 81 d0 bf d0 be d0 bc d0 be d0 b3 d0   ...............
e140: b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0 b5 20  ............... 
e150: d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d1 8b 2e 0d  ................
e160: 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  .///////////////
e170: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e180: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e190: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e1a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e1b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 0d 0a 2f 2f 2f  /////////....///
e1c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e1d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e1e0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e1f0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e200: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e210: 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 54 65 78  /////..////{ Tex
e220: 74 57 69 6e 64 6f 77 73 57 61 74 63 68 65 72 20  tWindowsWatcher 
e230: 2d 20 d0 be d1 82 d1 81 d0 bb d0 b5 d0 b6 d0 b8  - ..............
e240: d0 b2 d0 b0 d0 b5 d1 82 20 d0 b0 d0 ba d1 82 d0  ........ .......
e250: b8 d0 b2 d0 b8 d0 b7 d0 b0 d1 86 d0 b8 d1 8e 20  ............... 
e260: d1 82 d0 b5 d0 ba d1 81 d1 82 d0 be d0 b2 d1 8b  ................
e270: d1 85 20 d0 be d0 ba d0 be d0 bd 20 d0 b8 20 d0  .. ........ .. .
e280: b7 d0 b0 d0 bf d0 be d0 bc d0 b8 d0 bd d0 b0 d0  ................
e290: b5 d1 82 20 d0 bf d0 be d1 81 d0 bb d0 b5 d0 b4  ... ............
e2a0: d0 bd d0 b5 d0 b5 2e 0d 0a 2f 2f 2f 2f 0d 0a 0d  .........////...
e2b0: 0a 54 65 78 74 57 69 6e 64 6f 77 73 57 61 74 63  .TextWindowsWatc
e2c0: 68 65 72 20 3d 20 73 74 64 6c 69 62 2e 43 6c 61  her = stdlib.Cla
e2d0: 73 73 2e 65 78 74 65 6e 64 28 7b 0d 0a 0d 0a 20  ss.extend({.... 
e2e0: 20 20 20 63 6f 6e 73 74 72 75 63 74 20 3a 20 66     construct : f
e2f0: 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 20 20 20  unction() {..   
e300: 20 20 20 20 20 74 68 69 73 2e 74 69 6d 65 72 49       this.timerI
e310: 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20  d = 0;..        
e320: 74 68 69 73 2e 6c 61 73 74 41 63 74 69 76 65 54  this.lastActiveT
e330: 65 78 74 57 69 6e 64 6f 77 20 3d 20 6e 75 6c 6c  extWindow = null
e340: 3b 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e  ;..        this.
e350: 73 74 61 72 74 57 61 74 63 68 28 29 3b 0d 0a 20  startWatch();.. 
e360: 20 20 20 7d 2c 0d 0a 0d 0a 20 20 20 20 67 65 74     },....    get
e370: 41 63 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77  ActiveTextWindow
e380: 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b   : function () {
e390: 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68  ..        if (th
e3a0: 69 73 2e 6c 61 73 74 41 63 74 69 76 65 54 65 78  is.lastActiveTex
e3b0: 74 57 69 6e 64 6f 77 20 26 26 20 74 68 69 73 2e  tWindow && this.
e3c0: 6c 61 73 74 41 63 74 69 76 65 54 65 78 74 57 69  lastActiveTextWi
e3d0: 6e 64 6f 77 2e 49 73 41 63 74 69 76 65 28 29 29  ndow.IsActive())
e3e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65  ..            re
e3f0: 74 75 72 6e 20 74 68 69 73 2e 6c 61 73 74 41 63  turn this.lastAc
e400: 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77 3b 0d  tiveTextWindow;.
e410: 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20  .        return 
e420: 6e 75 6c 6c 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d  null;..    },...
e430: 0a 20 20 20 20 73 74 61 72 74 57 61 74 63 68 20  .    startWatch 
e440: 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d  : function () {.
e450: 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 68 69  .        if (thi
e460: 73 2e 74 69 6d 65 72 49 64 29 0d 0a 20 20 20 20  s.timerId)..    
e470: 20 20 20 20 20 20 20 20 74 68 69 73 2e 73 74 6f          this.sto
e480: 70 57 61 74 63 68 28 29 3b 0d 0a 20 20 20 20 20  pWatch();..     
e490: 20 20 20 74 68 69 73 2e 74 69 6d 65 72 49 64 20     this.timerId 
e4a0: 3d 20 63 72 65 61 74 65 54 69 6d 65 72 28 35 30  = createTimer(50
e4b0: 30 2c 20 74 68 69 73 2c 20 27 6f 6e 54 69 6d 65  0, this, 'onTime
e4c0: 72 27 29 3b 0d 0a 20 20 20 20 7d 2c 0d 0a 0d 0a  r');..    },....
e4d0: 20 20 20 20 73 74 6f 70 57 61 74 63 68 20 3a 20      stopWatch : 
e4e0: 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d 0a 20  function () {.. 
e4f0: 20 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73         if (!this
e500: 2e 74 69 6d 65 72 49 64 29 0d 0a 20 20 20 20 20  .timerId)..     
e510: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a         return;..
e520: 20 20 20 20 20 20 20 20 6b 69 6c 6c 54 69 6d 65          killTime
e530: 72 28 74 68 69 73 2e 74 69 6d 65 72 49 64 29 3b  r(this.timerId);
e540: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 74  ..        this.t
e550: 69 6d 65 72 49 64 20 3d 20 30 3b 0d 0a 20 20 20  imerId = 0;..   
e560: 20 7d 2c 0d 0a 0d 0a 20 20 20 20 6f 6e 54 69 6d   },....    onTim
e570: 65 72 20 3a 20 66 75 6e 63 74 69 6f 6e 20 28 74  er : function (t
e580: 69 6d 65 72 49 64 29 20 7b 0d 0a 20 20 20 20 20  imerId) {..     
e590: 20 20 20 76 61 72 20 77 6e 64 20 3d 20 47 65 74     var wnd = Get
e5a0: 54 65 78 74 57 69 6e 64 6f 77 28 29 3b 20 20 20  TextWindow();   
e5b0: 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 77   ..        if (w
e5c0: 6e 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  nd)..           
e5d0: 20 74 68 69 73 2e 6c 61 73 74 41 63 74 69 76 65   this.lastActive
e5e0: 54 65 78 74 57 69 6e 64 6f 77 20 3d 20 77 6e 64  TextWindow = wnd
e5f0: 3b 0d 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20  ;..        else 
e600: 69 66 20 28 74 68 69 73 2e 6c 61 73 74 41 63 74  if (this.lastAct
e610: 69 76 65 54 65 78 74 57 69 6e 64 6f 77 20 26 26  iveTextWindow &&
e620: 20 21 74 68 69 73 2e 6c 61 73 74 41 63 74 69 76   !this.lastActiv
e630: 65 54 65 78 74 57 69 6e 64 6f 77 2e 49 73 41 63  eTextWindow.IsAc
e640: 74 69 76 65 28 29 29 0d 0a 20 20 20 20 20 20 20  tive())..       
e650: 20 20 20 20 20 74 68 69 73 2e 6c 61 73 74 41 63       this.lastAc
e660: 74 69 76 65 54 65 78 74 57 69 6e 64 6f 77 20 3d  tiveTextWindow =
e670: 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 7d 0d 0a 20   null;..    }.. 
e680: 20 20 20 0d 0a 7d 29 3b 20 2f 2f 20 65 6e 64 20     ..}); // end 
e690: 6f 66 20 54 65 78 74 57 69 6e 64 6f 77 73 57 61  of TextWindowsWa
e6a0: 74 63 68 65 72 20 63 6c 61 73 73 0d 0a 0d 0a 2f  tcher class..../
e6b0: 2f 7d 20 54 65 78 74 57 69 6e 64 6f 77 73 57 61  /} TextWindowsWa
e6c0: 74 63 68 65 72 20 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f  tcher ....//////
e6d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e6e0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e6f0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e700: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e710: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
e720: 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 53 74 61 72 74 55  //..////{ StartU
e730: 70 0d 0a 2f 2f 2f 2f 0d 0a 66 75 6e 63 74 69 6f  p..////..functio
e740: 6e 20 47 65 74 45 78 74 53 65 61 72 63 68 28 29  n GetExtSearch()
e750: 20 7b 0d 0a 20 20 20 20 69 66 20 28 21 45 78 74   {..    if (!Ext
e760: 53 65 61 72 63 68 2e 5f 69 6e 73 74 61 6e 63 65  Search._instance
e770: 29 0d 0a 20 20 20 20 20 20 20 20 6e 65 77 20 45  )..        new E
e780: 78 74 53 65 61 72 63 68 28 29 3b 0d 0a 20 20 20  xtSearch();..   
e790: 20 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 45 78   ..    return Ex
e7a0: 74 53 65 61 72 63 68 2e 5f 69 6e 73 74 61 6e 63  tSearch._instanc
e7b0: 65 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f  e;..}....functio
e7c0: 6e 20 47 65 74 45 78 74 53 65 61 72 63 68 47 6c  n GetExtSearchGl
e7d0: 6f 62 61 6c 28 29 20 7b 0d 0a 20 20 20 20 69 66  obal() {..    if
e7e0: 20 28 21 45 78 74 53 65 61 72 63 68 47 6c 6f 62   (!ExtSearchGlob
e7f0: 61 6c 2e 5f 69 6e 73 74 61 6e 63 65 29 0d 0a 20  al._instance).. 
e800: 20 20 20 20 20 20 20 6e 65 77 20 45 78 74 53 65         new ExtSe
e810: 61 72 63 68 47 6c 6f 62 61 6c 28 29 3b 0d 0a 20  archGlobal();.. 
e820: 20 20 20 0d 0a 20 20 20 20 72 65 74 75 72 6e 20     ..    return 
e830: 45 78 74 53 65 61 72 63 68 47 6c 6f 62 61 6c 2e  ExtSearchGlobal.
e840: 5f 69 6e 73 74 61 6e 63 65 3b 0d 0a 7d 0d 0a 0d  _instance;..}...
e850: 0a 0d 0a 65 76 65 6e 74 73 2e 63 6f 6e 6e 65 63  ...events.connec
e860: 74 28 44 65 73 69 67 6e 65 72 2c 20 22 62 65 66  t(Designer, "bef
e870: 6f 72 65 45 78 69 74 41 70 70 22 2c 20 47 65 74  oreExitApp", Get
e880: 45 78 74 53 65 61 72 63 68 28 29 29 3b 0d 0a 65  ExtSearch());..e
e890: 76 65 6e 74 73 2e 63 6f 6e 6e 65 63 74 28 44 65  vents.connect(De
e8a0: 73 69 67 6e 65 72 2c 20 22 62 65 66 6f 72 65 45  signer, "beforeE
e8b0: 78 69 74 41 70 70 22 2c 20 47 65 74 45 78 74 53  xitApp", GetExtS
e8c0: 65 61 72 63 68 47 6c 6f 62 61 6c 28 29 29 3b 0d  earchGlobal());.
e8d0: 0a 2f 2f 2f 2f 7d 0d 0a                          .////}..