anchor.diff:      fOnChange: TNotifyEvent;
       fOnCellClick: TPointEventFunc;
       fOnCellClickShift: TPointEventShiftFunc;
  +    fOnChangeInvoked: Boolean;
       function GetTopIndex: Integer;
       procedure SetTopIndex(aIndex: Integer);
       procedure SetBackAlpha(aValue: single);
  
positive.code: begin
    inherited;
    UpdateMouseOverPosition(X, Y);
    UpdateItemIndex(Shift);
    //Lets do DoClick here instead of MouseUp event handler, because of some TKMColumnBox specific logic
    if (csDown in State) then
    begin
  
negative.code:     procedure SetSearchColumn(aValue: ShortInt);
      procedure SetItemIndex(const Value: Smallint);
      procedure UpdateMouseOverPosition(X,Y: Integer);
      procedure UpdateItemIndex(Shift: TShiftState; var aOnChangeInvoked: Boolean);
      function GetItem(aIndex: Integer): TKMListRow;
      function GetSelectedItem: TKMListRow;
      function GetSelectedItemTag: Integer;
  