4. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 3/31/2017 10:45:37 AM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

4.1 Files compared

# Location File Last Modified
1 CPRS v31A.zip\CPRS v31A\OR_30_434V106_SRC.zip fxBrokerSearch.pas Tue Sep 13 13:32:16 2016 UTC
2 CPRS v31A.zip\CPRS v31A\OR_30_434V106_SRC.zip fxBrokerSearch.pas Fri Mar 31 14:50:59 2017 UTC

4.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 10 582
Changed 9 18
Inserted 0 0
Removed 0 0

4.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

4.4 Active regular expressions

No regular expressions were active.

4.5 Comparison detail

  1   unit fxBro kerSearch;
  2  
  3   interface
  4  
  5   uses
  6     Winapi.W indows, Wi napi.Messa ges, Syste m.SysUtils , System.V ariants,
  7     System.C lasses, Vc l.Graphics ,
  8     Vcl.Cont rols, Vcl. Forms, Vcl .Dialogs,  Vcl.ComCtr ls, Vcl.St dCtrls, Vc l.Buttons,
  9     Vcl.ExtC trls, ORNe t, Winapi. RichEdit,  fBase508Fo rm, orfn;
  10  
  11   type
  12  
  13     TRpcReco rd = recor d
  14       RpcNam e: String;
  15       UCallL istIndex:  Integer;
  16       Result ListIndex:  Integer;
  17       RPCTex t: TString List;
  18     end;
  19  
  20     TfrmBoke rSearch =  class(Tfrm Base508For m)
  21       Panel1 : TPanel;
  22       Panel2 : TPanel;
  23       Panel3 : TPanel;
  24       Label1 : TLabel;
  25       btnOk:  TBitBtn;
  26       btnCan cel: TBitB tn;
  27       Label2 : TLabel;
  28       Panel4 : TPanel;
  29       Search Term: TEdi t;
  30       btnSea rch: TButt on;
  31       Result List: TLis tView;
  32       proced ure Result ListSelect Item(Sende r: TObject ; Item: TL istItem;
  33         Sele cted: Bool ean);
  34       proced ure Search TermChange (Sender: T Object);
  35       proced ure btnSea rchClick(S ender: TOb ject);
  36       proced ure FormCr eate(Sende r: TObject );
  37       proced ure FormDe stroy(Send er: TObjec t);
  38       proced ure btnOkC lick(Sende r: TObject );
  39       proced ure FormRe size(Sende r: TObject );
  40     private
  41       { Priv ate declar ations }
  42       RPCArr ay: Array  of TRpcRec ord;
  43       RPCSrc hSelIndex:  Integer;
  44       FOrigi nal: Integ er;
  45       fRetur nRichEdit:  TRichedit ;
  46       fRetur nLabel: TS taticText;
  47       proced ure CloneR PCList();
  48     public
  49       { Publ ic declara tions }
  50     end;
  51  
  52   Procedure  ShowBroker Search(Ret urnIndex:  Integer; R eturnRichE dit: TRich edit;
  53     ReturnLa bel: TStat icText);
  54  
  55   var
  56     frmBoker Search: Tf rmBokerSea rch;
  57  
  58   implementa tion
  59  
  60   {$R *.dfm}
  61  
  62  
  63   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  64     Procedur e:   ShowB rokerSearc h
  65       Author:        DN S      BELLC
  66     DateTime :    2013. 08.12
  67     Argument s:   Retur nIndex: In teger; Ret urnRichEdi t: TRiched it;
  68                   Retur nLabel: TS taticText
  69     Result:       None
  70     Descript ion: Show  search wit h interact ion
  71   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  72   Procedure  ShowBroker Search(Ret urnIndex:  Integer; R eturnRichE dit: TRich edit;
  73     ReturnLa bel: TStat icText);
  74   begin
  75     if not A ssigned(fr mBokerSear ch) then
  76       frmBok erSearch : = TfrmBoke rSearch.Cr eate(Appli cation);
  77     try
  78       Resize AnchoredFo rmToFont(f rmBokerSea rch);
  79       frmBok erSearch.S how;
  80       frmBok erSearch.F Original : = ReturnIn dex;
  81       frmBok erSearch.f ReturnRich Edit := Re turnRichEd it;
  82       frmBok erSearch.f ReturnLabe l := Retur nLabel;
  83     except
  84       frmBok erSearch.F ree;
  85     end;
  86   end;
  87  
  88   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  89     Procedur e:   TfrmB okerSearch .btnOkClic k
  90       Author:        DN S      BELLC
  91     DateTime :    2013. 08.12
  92     Argument s:   Sende r: TObject
  93     Result:       None
  94     Descript ion: Close  the dialo g and save  the index
  95   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  96   procedure  TfrmBokerS earch.btnO kClick(Sen der: TObje ct);
  97   Var
  98     I: Integ er;
  99   begin
  100     for I :=  Low(RPCAr ray) to Hi gh(RPCArra y) do
  101       if Res ultList.Se lected.Ind ex = RPCAr ray[I].Res ultListInd ex then
  102         RPCS rchSelInde x := RPCAr ray[I].UCa llListInde x;
  103   end;
  104  
  105   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  106     Procedur e:   TfrmB okerSearch .btnSearch Click
  107       Author:        DN S      BELLC
  108     DateTime :    2013. 08.12
  109     Argument s:   Sende r: TObject
  110     Result:       None
  111     Descript ion: Perfo rm the sea rch
  112   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  113   procedure  TfrmBokerS earch.btnS earchClick (Sender: T Object);
  114   var
  115     I, Retur nCursor: I nteger;
  116     Found: B oolean;
  117     ListItem : TListIte m;
  118  
  119   begin
  120     ReturnCu rsor := Sc reen.Curso r;
  121     Screen.C ursor := c rHourGlass ;
  122     try
  123       // Cle ar all
  124       Result List.Clear ;
  125       Found  := false;
  126       for I  := Low(RPC Array) to  High(RPCAr ray) do
  127       begin
  128         RPCA rray[I].Re sultListIn dex := -1;
  129         if P os(UpperCa se(SearchT erm.Text),  UpperCase (RPCArray[ I].RPCText .Text)) >  0
  130         then
  131         begi n
  132           Li stItem :=  ResultList .Items.Add ;
  133           Li stItem.Cap tion :=
  134              IntToStr(( RPCArray[I ].UCallLis tIndex - R etainedRPC Count) + 1 );
  135  
  136           Li stItem.Sub Items.Add( RPCArray[I ].RpcName) ;
  137           RP CArray[I]. ResultList Index := L istItem.In dex;
  138           if  not Found  then
  139           be gin
  140              ResultList .Column[1] .Width :=  -1;
  141              Found := T rue;
  142           en d;
  143         end;
  144       end;
  145       if not  Found the n
  146         Show Message('n o matches  found');
  147  
  148     finally
  149       Screen .Cursor :=  ReturnCur sor;
  150     end;
  151   end;
  152  
  153   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  154     Procedur e:   TfrmB okerSearch .CloneRPCL ist
  155       Author:        DN S      BELLC
  156     DateTime :    2013. 08.12
  157     Argument s:
  158     Result:       None
  159     Descript ion: Clone  the RPC l ist
  160   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  161   procedure  TfrmBokerS earch.Clon eRPCList() ;
  162   Var
  163     I: Integ er;
  164   begin
  165     for I :=  0 to Reta inedRPCCou nt - 1 do
  166     begin
  167       SetLen gth(RPCArr ay, Length (RPCArray)  + 1);
  168       RPCArr ay[High(RP CArray)].R PCText :=  TStringLis t.Create;
  169       try
  170         Load RPCData(RP CArray[Hig h(RPCArray )].RPCText , I);
  171         RPCA rray[High( RPCArray)] .RpcName : = RPCArray [High(RPCA rray)].RPC Text[0];
  172         RPCA rray[High( RPCArray)] .UCallList Index := I ;
  173       except
  174         RPCA rray[High( RPCArray)] .RPCText.F ree;
  175       end;
  176     end;
  177  
  178   end;
  179  
  180   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  181     Procedur e:   TfrmB okerSearch .FormCreat e
  182       Author:        DN S      BELLC
  183     DateTime :    2013. 08.12
  184     Argument s:   Sende r: TObject
  185     Result:       None
  186     Descript ion: Inita lize
  187   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  188   procedure  TfrmBokerS earch.Form Create(Sen der: TObje ct);
  189   begin
  190     SetLengt h(RPCArray , 0);
  191     CloneRPC List;
  192     ResultLi st.Column[ 0].Width : = -2;
  193     ResultLi st.Column[ 1].Width : = -2;
  194   end;
  195  
  196   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  197     Procedur e:   TfrmB okerSearch .FormDestr oy
  198       Author:        DN S      BELLC
  199     DateTime :    2013. 08.12
  200     Argument s:   Sende r: TObject
  201     Result:       None
  202     Descript ion: Clean  up
  203   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  204   procedure  TfrmBokerS earch.Form Destroy(Se nder: TObj ect);
  205   Var
  206     I: Integ er;
  207   begin
  208     for I :=  Low(RPCAr ray) to Hi gh(RPCArra y) do
  209       RPCArr ay[I].RPCT ext.Free;
  210     SetLengt h(RPCArray , 0);
  211   end;
  212  
  213   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  214     Procedur e:   TfrmB okerSearch .FormResiz e
  215       Author:        DN S      BELLC
  216     DateTime :    2013. 08.12
  217     Argument s:   Sende r: TObject
  218     Result:       None
  219     Descript ion: Refre sh the scr een
  220   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  221   procedure  TfrmBokerS earch.Form Resize(Sen der: TObje ct);
  222   begin
  223     Refresh;
  224   end;
  225  
  226   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  227     Procedur e:   TfrmB okerSearch .ResultLis tSelectIte m
  228       Author:        DN S      BELLC
  229     DateTime :    2013. 08.12
  230     Argument s:   Sende r: TObject ; Item: TL istItem; S elected: B oolean
  231     Result:       None
  232     Descript ion: Selec t RPC and  load it up  in the li st
  233   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  234   procedure  TfrmBokerS earch.Resu ltListSele ctItem(Sen der: TObje ct; Item:  TListItem;
  235     Selected : Boolean) ;
  236   Var
  237     I: Integ er;
  238     SearchSt ring: stri ng;
  239     CharPos,  CharPos2:  Integer;
  240     Format:  CHARFORMAT 2;
  241   begin
  242     btnOk.En abled := S elected; / / original  code
  243  
  244     if Selec ted then
  245     begin
  246       for I  := Low(RPC Array) to  High(RPCAr ray) do
  247         if R esultList. Selected.I ndex = RPC Array[I].R esultListI ndex then
  248         begi n
  249           Lo adRPCData( fReturnRic hEdit.Line s, RPCArra y[I].UCall ListIndex) ;
  250           fR eturnRichE dit.SelSta rt := 0;
  251           fR eturnLabel .Caption : = 'Last Ca ll Minus:  ' +
  252              IntToStr(( RetainedRP CCount - R PCArray[I] .UCallList Index) - 1 );
  253           FO riginal :=  RPCArray[ I].UCallLi stIndex;
  254           br eak;
  255         end;
  256  
  257       Search String :=  StringRepl ace(Trim(f rmBokerSea rch.Search Term.Text) , #10, '',
  258         [rfR eplaceAll] );
  259  
  260       CharPo s := 0;
  261       repeat
  262         // f ind the te xt and sav e the posi tion
  263         Char Pos2 := fR eturnRichE dit.FindTe xt(SearchS tring, Cha rPos,
  264           Le ngth(fRetu rnRichEdit .Text), [] );
  265         Char Pos := Cha rPos2 + 1;
  266         if C harPos = 0  then
  267           br eak;
  268  
  269         // S elect the  word
  270         fRet urnRichEdi t.SelStart  := CharPo s2;
  271         fRet urnRichEdi t.SelLengt h := Lengt h(SearchSt ring);
  272  
  273         // S et the bac kground co lor
  274         Form at.cbSize  := SizeOf( Format);
  275         Form at.dwMask  := CFM_BAC KCOLOR;
  276         Form at.crBackC olor := cl Yellow;
  277         fRet urnRichEdi t.Perform( EM_SETCHAR FORMAT, SC F_SELECTIO N,
  278           Lo ngint(@For mat));
  279         Appl ication.Pr ocessMessa ges;
  280       until  CharPos =  0;
  281  
  282     end;
  283  
  284   end;
  285  
  286   {--------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  287     Procedur e:   TfrmB okerSearch .SearchTer mChange
  288       Author:        DN S      BELLC
  289     DateTime :    2013. 08.12
  290     Argument s:   Sende r: TObject
  291     Result:       None
  292     Descript ion: Toggl e the sear ch button
  293   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------}
  294   procedure  TfrmBokerS earch.Sear chTermChan ge(Sender:  TObject);
  295   begin
  296     btnSearc h.Enabled  := (Trim(S earchTerm. Text) > '' );
  297  
  298   end;
  299  
  300   end.