فهرست منبع

disable hitbox of multiselection

Johann ELSASS 5 سال پیش
والد
کامیت
91fcf4b933
2فایلهای تغییر یافته به همراه3 افزوده شده و 1 حذف شده
  1. 1 0
      lazpaintcontrols/lcvectormultishape.pas
  2. 2 1
      lazpaintcontrols/lcvectorrectshapes.pas

+ 1 - 0
lazpaintcontrols/lcvectormultishape.pas

@@ -912,6 +912,7 @@ begin
   inherited Create(AContainer);
   FShapes := TVectorShapes.Create;
   FOldChangeHandler := TShapeChangeHandlerMap.Create;
+  FDisableHitBox:= true;
 end;
 
 procedure TVectorMultiselection.TransformFrame(const AMatrix: TAffineMatrix);

+ 2 - 1
lazpaintcontrols/lcvectorrectshapes.pas

@@ -42,6 +42,7 @@ type
     FXSizeBackup,FYSizeBackup: single;
     FMatrixBackup: TAffineMatrix;
     FFixedRatio: single;
+    FDisableHitBox: boolean;
     procedure DoMoveXAxis(ANewCoord: TPointF; AShift: TShiftState; AFactor: single);
     procedure DoMoveYAxis(ANewCoord: TPointF; AShift: TShiftState; AFactor: single);
     procedure DoMoveXYCorner(ANewCoord: TPointF; AShift: TShiftState; AFactorX, AFactorY: single);
@@ -868,7 +869,7 @@ begin
   AEditor.AddPointAlternateMove(idxXNeg, @OnMoveXAxisNegAlt);
   AEditor.AddPointAlternateMove(idxYNeg, @OnMoveYAxisNegAlt);
   idxOrig := AEditor.AddPoint(FOrigin, @OnMoveOrigin, true);
-  if ShowArrows then
+  if ShowArrows and not FDisableHitBox then
   begin
     AEditor.SetHitBox(idxX, TAffineBox.AffineBox(Origin + (XAxis-Origin)*0.667 - (YAxis-Origin)*0.667,
       Origin + (XAxis-Origin) - (YAxis-Origin)*0.667,