anchor.diff:  
   procedure TCEMessagesWidget.clearOutOfRangeMessg;
   begin
  +  list.BeginUpdate;
     while List.Items.Count > fMaxMessCnt do
       List.Items.Delete(List.Items.GetFirstNode);
  +  list.EndUpdate;
   end;
   
   procedure TCEMessagesWidget.scrollToBack;
  
positive.code:   i: Integer;
    msgdt: PMessageData;
  begin
    if aCtxt = amcAll then
      List.Items.Clear
    else for i := List.Items.Count-1 downto 0 do
  
negative.code:     if msgdt^.ctxt = aCtxt then
        List.Items.Delete(List.Items[i]);
    end;
    list.EndUpdate;
  end;
  
  procedure TCEMessagesWidget.clearByData(aData: Pointer);
  