mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-22 04:48:19 +02:00
TAChart: Extract BoundsSize utility function
git-svn-id: trunk@24329 -
This commit is contained in:
parent
93833e99ed
commit
bce837f856
@ -382,7 +382,7 @@ procedure TChartAxis.Draw(
|
|||||||
AY += -TickLength - Marks.Distance - sz.cy
|
AY += -TickLength - Marks.Distance - sz.cy
|
||||||
else
|
else
|
||||||
AY += TickLength + Marks.Distance;
|
AY += TickLength + Marks.Distance;
|
||||||
Marks.DrawLabel(ACanvas, Bounds(x - sz.cx div 2, AY, sz.cx, sz.cy), AText);
|
Marks.DrawLabel(ACanvas, BoundsSize(x - sz.cx div 2, AY, sz), AText);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure DrawYMark(AX: Integer; AMark: Double; const AText: String);
|
procedure DrawYMark(AX: Integer; AMark: Double; const AText: String);
|
||||||
@ -410,7 +410,7 @@ procedure TChartAxis.Draw(
|
|||||||
AX += -TickLength - Marks.Distance - sz.cx
|
AX += -TickLength - Marks.Distance - sz.cx
|
||||||
else
|
else
|
||||||
AX += TickLength + Marks.Distance;
|
AX += TickLength + Marks.Distance;
|
||||||
Marks.DrawLabel(ACanvas, Bounds(AX, y - sz.cy div 2, sz.cx, sz.cy), AText);
|
Marks.DrawLabel(ACanvas, BoundsSize(AX, y - sz.cy div 2, sz), AText);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure DoDraw(AMin, AMax: Double);
|
procedure DoDraw(AMin, AMax: Double);
|
||||||
|
@ -150,6 +150,8 @@ const
|
|||||||
CASE_OF_TWO: array [Boolean, Boolean] of TCaseOfTwo =
|
CASE_OF_TWO: array [Boolean, Boolean] of TCaseOfTwo =
|
||||||
((cotNone, cotSecond), (cotFirst, cotBoth));
|
((cotNone, cotSecond), (cotFirst, cotBoth));
|
||||||
|
|
||||||
|
function BoundsSize(ALeft, ATop: Integer; ASize: TSize): TRect; inline;
|
||||||
|
|
||||||
function DoubleRect(AX1, AY1, AX2, AY2: Double): TDoubleRect; inline;
|
function DoubleRect(AX1, AY1, AX2, AY2: Double): TDoubleRect; inline;
|
||||||
|
|
||||||
procedure DrawLineDepth(ACanvas: TCanvas; AX1, AY1, AX2, AY2, ADepth: Integer);
|
procedure DrawLineDepth(ACanvas: TCanvas; AX1, AY1, AX2, AY2, ADepth: Integer);
|
||||||
@ -196,6 +198,11 @@ implementation
|
|||||||
uses
|
uses
|
||||||
LCLIntf;
|
LCLIntf;
|
||||||
|
|
||||||
|
function BoundsSize(ALeft, ATop: Integer; ASize: TSize): TRect; inline;
|
||||||
|
begin
|
||||||
|
Result := Bounds(ALeft, ATop, ASize.cx, ASize.cy);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure CalculateIntervals(
|
procedure CalculateIntervals(
|
||||||
AMin, AMax: Double; AxisScale: TAxisScale; out AStart, AStep: Double);
|
AMin, AMax: Double; AxisScale: TAxisScale; out AStart, AStep: Double);
|
||||||
var
|
var
|
||||||
|
@ -576,7 +576,7 @@ procedure TBasicPointSeries.DrawLabels(ACanvas: TCanvas);
|
|||||||
center.X += OFFSETS[ADir].X * (Marks.Distance + sz.cx div 2);
|
center.X += OFFSETS[ADir].X * (Marks.Distance + sz.cx div 2);
|
||||||
center.Y += OFFSETS[ADir].Y * (Marks.Distance + sz.cy div 2);
|
center.Y += OFFSETS[ADir].Y * (Marks.Distance + sz.cy div 2);
|
||||||
with center do
|
with center do
|
||||||
labelRect := Bounds(X - sz.cx div 2, Y - sz.cy div 2, sz.cx, sz.cy);
|
labelRect := BoundsSize(X - sz.cx div 2, Y - sz.cy div 2, sz);
|
||||||
if
|
if
|
||||||
not IsRectEmpty(FPrevLabelRect) and
|
not IsRectEmpty(FPrevLabelRect) and
|
||||||
IntersectRect(dummy, labelRect, FPrevLabelRect)
|
IntersectRect(dummy, labelRect, FPrevLabelRect)
|
||||||
|
Loading…
Reference in New Issue
Block a user