anchor.diff:      procedure IncPosition(Sender:TObject);
       procedure DecPosition(Sender:TObject);
       constructor Create(aParent:TKMPanel; aLeft,aTop,aWidth,aHeight:integer; aScrollAxis:TScrollAxis; aStyle:TButtonStyle);
  +    procedure MouseDown(X,Y:integer; Shift:TShiftState; Button:TMouseButton); override;
       procedure MouseMove(X,Y:Integer; Shift:TShiftState); override;
       procedure RefreshItems();
       property OnChange: TNotifyEvent read FOnChange write FOnChange;
  
positive.code: end;
  
  
  procedure TKMFileList.MouseMove(X,Y:integer; Shift:TShiftState);
  begin
    Inherited;
  
    if (ssLeft in Shift) and
       (InRange(X, Left, Left+Width-ScrollBar.Width)) and
       (InRange(Y, Top, Top+Height div ItemHeight * ItemHeight))
    then
      ItemIndex := TopIndex + (Y-Top) div ItemHeight;
  
    if ItemIndex > fFiles.Count-1 then ItemIndex := -1;
  
    if Assigned(OnChange) and (ssLeft in Shift) then
      OnChange(Self);
  end;
  
  
  
negative.code: 
      procedure RefreshList(aPath,aExtension:string; ScanSubFolders:boolean=false);
      function FileName:string;
      procedure MouseDown(X,Y:integer; Shift:TShiftState; Button:TMouseButton); override;
      procedure MouseMove(X,Y:Integer; Shift:TShiftState); override;
      procedure MouseWheel(X,Y:integer; WheelDelta:integer); override;
      property OnChange: TNotifyEvent read FOnChange write FOnChange;
  