anchor.diff:  function TAbCustomListView.GetListItems: TAbListItems;
   begin
     Result := inherited Items as TAbListItems;
  +end;
  +{ -------------------------------------------------------------------------- }
  +procedure TAbCustomListView.HeaderWndProc(var Msg: TMessage);
  +const
  +  FMT_MASK = HDF_BITMAP or HDF_BITMAP_ON_RIGHT or HDF_SORTDOWN or HDF_SORTUP;
  +var
  +  Item: THDItem;
  +begin
  +  if (Msg.Msg = HDM_SETITEM) and not FInUpdateSortArrows then begin
  +    Item.Mask := HDI_FORMAT;
  +    if Header_GetItem(FHeaderHandle, Msg.WParam, Item) then begin
  +      PHDItem(Msg.LParam).Mask := PHDItem(Msg.LParam).Mask and not HDI_BITMAP;
  +      PHDItem(Msg.LParam).fmt := PHDItem(Msg.LParam).fmt and not FMT_MASK
  +        or (Item.fmt and FMT_MASK);
  +    end;
  +  end;
  +  Msg.Result := CallWindowProc(FDefHeaderProc, FHeaderHandle, Msg.Msg,
  +    Msg.WParam, Msg.LParam);
  +  if Msg.Msg = WM_DESTROY then
  +    FHeaderHandle := 0;
   end;
   { -------------------------------------------------------------------------- }
   procedure TAbCustomListView.Notification(aComponent: TComponent;
  
positive.code:   TAbCustomListView = class(TCustomListView)
    protected {private}
      FArchive : TAbBaseBrowser;
      FFlatList: Boolean;
      FHeaderImages : TImageList;
      FPath : string;
      FSortAscending : Boolean;
      FSortColIndex : Integer;
  
negative.code:     procedure DoChange(Sender : TObject);
        virtual;
      function GetListItems: TAbListItems;
      procedure HeaderWndProc(var Msg: TMessage);
        virtual;
      procedure Notification(aComponent : TComponent; aOperation : TOperation);
        override;
      procedure SetArchive(aValue : TAbBaseBrowser);
  