anchor.diff:  
   procedure TfpgSpinEdit.ButtonUpMouseUp(Sender: TObject; AButton: TMouseButton; AShift: TShiftState; const AMousePos: TPoint);
   begin
  -  FUp := False;
  -  FTempIncrement := Increment;
  -  if Assigned(FTimer) then
  -    FTimer.Enabled := False;
  +  DisableTimer;
   end;
   
   procedure TfpgSpinEdit.ButtonDownMouseDown(Sender: TObject; AButton: TMouseButton; AShift: TShiftState; const AMousePos: TPoint);
  
positive.code: 
  procedure TfpgSpinEditFloat.ButtonDownMouseUp(Sender: TObject; AButton: TMouseButton; AShift: TShiftState; const AMousePos: TPoint);
  begin
    FDown := False;
    if Assigned(FTimer) then
      FTimer.Enabled := False;
  end;
  
  procedure TfpgSpinEditFloat.EditKeyPress(Sender: TObject; var keycode: word; var shiftstate: TShiftState; var consumed: Boolean);
  
negative.code: 
  procedure TfpgSpinEdit.EnableButtons;
  begin
    FButtonUp.Enabled := True;
    FButtonDown.Enabled := True;
    if IsMaxLimitReached then
      FButtonUp.Enabled := False
    else
      if IsMinLimitReached then
        FButtonDown.Enabled := False;
  end;
  
  function TfpgSpinEdit.IsMinLimitReached: Boolean;
  begin
    Result := FValue = FMinValue;
  end;
  
  function TfpgSpinEdit.IsMaxLimitReached: Boolean;
  begin
    Result:= FValue = FMaxValue;
  end;
  
  function TfpgSpinEdit.GetEditBackgroundColor: TfpgColor;
  