mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-13 08:09:22 +02:00
TAChart: Add Pointer property to spline series
git-svn-id: trunk@31433 -
This commit is contained in:
parent
1a44819dcf
commit
c7a345958f
@ -200,6 +200,7 @@ type
|
|||||||
FUpBound: Integer;
|
FUpBound: Integer;
|
||||||
FUseReticule: Boolean;
|
FUseReticule: Boolean;
|
||||||
|
|
||||||
|
procedure AfterAdd; override;
|
||||||
procedure AfterDrawPointer(
|
procedure AfterDrawPointer(
|
||||||
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint); virtual;
|
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint); virtual;
|
||||||
procedure DrawLabels(ADrawer: IChartDrawer);
|
procedure DrawLabels(ADrawer: IChartDrawer);
|
||||||
@ -750,6 +751,13 @@ end;
|
|||||||
|
|
||||||
{ TBasicPointSeries }
|
{ TBasicPointSeries }
|
||||||
|
|
||||||
|
procedure TBasicPointSeries.AfterAdd;
|
||||||
|
begin
|
||||||
|
inherited AfterAdd;
|
||||||
|
if Pointer <> nil then
|
||||||
|
Pointer.SetOwner(ParentChart);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TBasicPointSeries.AfterDrawPointer(
|
procedure TBasicPointSeries.AfterDrawPointer(
|
||||||
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint);
|
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint);
|
||||||
begin
|
begin
|
||||||
|
@ -128,6 +128,7 @@ type
|
|||||||
property Degree: TSplineDegree
|
property Degree: TSplineDegree
|
||||||
read FDegree write SetDegree default DEF_SPLINE_DEGREE;
|
read FDegree write SetDegree default DEF_SPLINE_DEGREE;
|
||||||
property Pen: TChartPen read FPen write SetPen;
|
property Pen: TChartPen read FPen write SetPen;
|
||||||
|
property Pointer;
|
||||||
property Step: TFuncSeriesStep
|
property Step: TFuncSeriesStep
|
||||||
read FStep write SetStep default DEF_SPLINE_STEP;
|
read FStep write SetStep default DEF_SPLINE_STEP;
|
||||||
end;
|
end;
|
||||||
@ -166,6 +167,7 @@ type
|
|||||||
property ZPosition;
|
property ZPosition;
|
||||||
published
|
published
|
||||||
property Pen: TChartPen read FPen write SetPen;
|
property Pen: TChartPen read FPen write SetPen;
|
||||||
|
property Pointer;
|
||||||
property Step: TFuncSeriesStep
|
property Step: TFuncSeriesStep
|
||||||
read FStep write SetStep default DEF_SPLINE_STEP;
|
read FStep write SetStep default DEF_SPLINE_STEP;
|
||||||
end;
|
end;
|
||||||
@ -477,6 +479,7 @@ begin
|
|||||||
FDegree := DEF_SPLINE_DEGREE;
|
FDegree := DEF_SPLINE_DEGREE;
|
||||||
FPen := TChartPen.Create;
|
FPen := TChartPen.Create;
|
||||||
FPen.OnChange := @StyleChanged;
|
FPen.OnChange := @StyleChanged;
|
||||||
|
FPointer := TSeriesPointer.Create(ParentChart);
|
||||||
FStep := DEF_SPLINE_STEP;
|
FStep := DEF_SPLINE_STEP;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -558,6 +561,7 @@ begin
|
|||||||
for startIndex := 0 to High(FGraphPoints) + Degree - 1 do
|
for startIndex := 0 to High(FGraphPoints) + Degree - 1 do
|
||||||
SplineSegment(0.0, 1.0, SplinePoint(0.0), SplinePoint(1.0));
|
SplineSegment(0.0, 1.0, SplinePoint(0.0), SplinePoint(1.0));
|
||||||
DrawLabels(ADrawer);
|
DrawLabels(ADrawer);
|
||||||
|
DrawPointers(ADrawer);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TBSplineSeries.GetLegendItems(AItems: TChartLegendItems);
|
procedure TBSplineSeries.GetLegendItems(AItems: TChartLegendItems);
|
||||||
@ -610,6 +614,7 @@ begin
|
|||||||
inherited Create(AOwner);
|
inherited Create(AOwner);
|
||||||
FPen := TChartPen.Create;
|
FPen := TChartPen.Create;
|
||||||
FPen.OnChange := @StyleChanged;
|
FPen.OnChange := @StyleChanged;
|
||||||
|
FPointer := TSeriesPointer.Create(ParentChart);
|
||||||
FStep := DEF_SPLINE_STEP;
|
FStep := DEF_SPLINE_STEP;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -633,6 +638,9 @@ begin
|
|||||||
finally
|
finally
|
||||||
de.Free;
|
de.Free;
|
||||||
end;
|
end;
|
||||||
|
PrepareGraphPoints(FChart.CurrentExtent, true);
|
||||||
|
DrawLabels(ADrawer);
|
||||||
|
DrawPointers(ADrawer);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCubicSplineSeries.GetLegendItems(AItems: TChartLegendItems);
|
procedure TCubicSplineSeries.GetLegendItems(AItems: TChartLegendItems);
|
||||||
|
@ -195,7 +195,6 @@ type
|
|||||||
procedure SetShowLines(Value: Boolean);
|
procedure SetShowLines(Value: Boolean);
|
||||||
procedure SetShowPoints(Value: Boolean);
|
procedure SetShowPoints(Value: Boolean);
|
||||||
protected
|
protected
|
||||||
procedure AfterAdd; override;
|
|
||||||
procedure AfterDrawPointer(
|
procedure AfterDrawPointer(
|
||||||
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint); override;
|
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint); override;
|
||||||
procedure GetLegendItems(AItems: TChartLegendItems); override;
|
procedure GetLegendItems(AItems: TChartLegendItems); override;
|
||||||
@ -321,12 +320,6 @@ uses
|
|||||||
|
|
||||||
{ TLineSeries }
|
{ TLineSeries }
|
||||||
|
|
||||||
procedure TLineSeries.AfterAdd;
|
|
||||||
begin
|
|
||||||
inherited AfterAdd;
|
|
||||||
Pointer.SetOwner(FChart);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TLineSeries.AfterDrawPointer(
|
procedure TLineSeries.AfterDrawPointer(
|
||||||
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint);
|
ADrawer: IChartDrawer; AIndex: Integer; const APos: TPoint);
|
||||||
var
|
var
|
||||||
|
Loading…
Reference in New Issue
Block a user