anchor.diff:    end;
   end;
   
  -
   procedure TATTabs.MouseDown(Button: TMouseButton; Shift: TShiftState;
     X, Y: Integer);
  -var
  -  R: TRect;
   begin
     FMouseDown:= true;
     FMouseDownPnt:= Point(X, Y);
  +  FMouseDownButton:= Button;
  +  FMouseDownShift:= Shift;
  +
     FTabIndexOver:= GetTabAt(X, Y);
  -
  -  if Button=mbMiddle then
  +  SetTabIndex(FTabIndexOver);
  +
  +  Invalidate;
  +end;
  +
  +
  +procedure TATTabs.DoHandleClick;
  +var
  +  R: TRect;
  +begin
  +  if FMouseDownButton=mbMiddle then
     begin
       if FTabMiddleClickClose then
         if FTabIndexOver>=0 then
  
positive.code:     FOnTabMove: TATTabMoveEvent;
      FOnTabChangeQuery: TATTabChangeQueryEvent;
  
      procedure DoPaintTo(C: TCanvas);
      procedure DoPaintBgTo(C: TCanvas; const ARect: TRect);
      procedure DoPaintTabTo(C: TCanvas; ARect: TRect; const ACaption: atString;
  
negative.code:     FMouseDown: boolean;
      FMouseDownPnt: TPoint;
      FMouseDownDbl: boolean;
      FMouseDownButton: TMouseButton;
      FMouseDownShift: TShiftState;
      FMouseDrag: boolean;
  
      //colors
  