TAChart: Deprecate TDataPointDrawTool.OnShow by and replace by TDataPointDrawTool.OnCustomDraw.

git-svn-id: trunk@60984 -
This commit is contained in:
wp 2019-04-15 19:40:19 +00:00
parent c17a8a1444
commit 78857f4559
5 changed files with 45 additions and 17 deletions

View File

@ -1,9 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<CONFIG> <CONFIG>
<ProjectOptions BuildModesCount="1"> <ProjectOptions>
<Version Value="12"/> <Version Value="12"/>
<PathDelim Value="\"/> <PathDelim Value="\"/>
<General> <General>
<Flags>
<CompatibilityMode Value="True"/>
</Flags>
<SessionStorage Value="InProjectDir"/> <SessionStorage Value="InProjectDir"/>
<Title Value="distancedemo"/> <Title Value="distancedemo"/>
<Scaled Value="True"/> <Scaled Value="True"/>
@ -16,8 +19,8 @@
<i18n> <i18n>
<EnableI18N LFM="False"/> <EnableI18N LFM="False"/>
</i18n> </i18n>
<BuildModes> <BuildModes Count="1">
<Item1 Name="Default" Default="True"/> <Item1 Name="default" Default="True"/>
</BuildModes> </BuildModes>
<PublishOptions> <PublishOptions>
<Version Value="2"/> <Version Value="2"/>

View File

@ -237,7 +237,7 @@ object Form1: TForm1
Shift = [ssCtrl] Shift = [ssCtrl]
OnAfterKeyUp = ChartToolset1DataPointCrosshairTool1AfterKeyUp OnAfterKeyUp = ChartToolset1DataPointCrosshairTool1AfterKeyUp
GrabRadius = 200 GrabRadius = 200
OnDraw = ChartToolset1DataPointCrosshairTool1Draw OnCustomDraw = ChartToolset1DataPointCrosshairTool1CustomDraw
end end
end end
object RandomChartSource1: TRandomChartSource object RandomChartSource1: TRandomChartSource

View File

@ -6,7 +6,8 @@ interface
uses uses
Classes, ExtCtrls, StdCtrls, SysUtils, FileUtil, LResources, Forms, Controls, Classes, ExtCtrls, StdCtrls, SysUtils, FileUtil, LResources, Forms, Controls,
Graphics, Dialogs, Types, TAFuncSeries, TAGraph, TASeries, TASources, TATools; Graphics, Dialogs, Types,
TAFuncSeries, TAGraph, TASeries, TASources, TATools, TADrawUtils;
type type
@ -42,8 +43,8 @@ type
procedure Chart1FuncSeries1Calculate(const AX: Double; out AY: Double); procedure Chart1FuncSeries1Calculate(const AX: Double; out AY: Double);
procedure ChartToolset1DataPointCrosshairTool1AfterKeyUp(ATool: TChartTool; procedure ChartToolset1DataPointCrosshairTool1AfterKeyUp(ATool: TChartTool;
APoint: TPoint); APoint: TPoint);
procedure ChartToolset1DataPointCrosshairTool1Draw( procedure ChartToolset1DataPointCrosshairTool1CustomDraw(
ASender: TDataPointCrosshairTool); ASender: TDataPointCrosshairTool; ADrawer: IChartDrawer);
procedure ChartToolset1DataPointDragTool1BeforeMouseMove(ATool: TChartTool; procedure ChartToolset1DataPointDragTool1BeforeMouseMove(ATool: TChartTool;
APoint: TPoint); APoint: TPoint);
procedure rgPanClick(Sender: TObject); procedure rgPanClick(Sender: TObject);
@ -92,8 +93,8 @@ begin
ChartToolset1DataPointCrosshairTool1.Hide; ChartToolset1DataPointCrosshairTool1.Hide;
end; end;
procedure TForm1.ChartToolset1DataPointCrosshairTool1Draw( procedure TForm1.ChartToolset1DataPointCrosshairTool1CustomDraw(
ASender: TDataPointCrosshairTool); ASender: TDataPointCrosshairTool; ADrawer: IChartDrawer);
const const
R = 20; R = 20;
begin begin

View File

@ -1,11 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<CONFIG> <CONFIG>
<ProjectOptions> <ProjectOptions>
<Version Value="11"/> <Version Value="12"/>
<PathDelim Value="\"/> <PathDelim Value="\"/>
<General> <General>
<Flags>
<CompatibilityMode Value="True"/>
</Flags>
<SessionStorage Value="InProjectDir"/> <SessionStorage Value="InProjectDir"/>
<MainUnit Value="0"/>
<ResourceType Value="res"/> <ResourceType Value="res"/>
<UseXPManifest Value="True"/> <UseXPManifest Value="True"/>
</General> </General>
@ -21,13 +23,13 @@
</PublishOptions> </PublishOptions>
<RunParams> <RunParams>
<local> <local>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/> <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T &apos;Lazarus Run Output&apos; -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local> </local>
<FormatVersion Value="2"/> <FormatVersion Value="2"/>
<Modes Count="1"> <Modes Count="1">
<Mode0 Name="default"> <Mode0 Name="default">
<local> <local>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/> <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T &apos;Lazarus Run Output&apos; -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local> </local>
</Mode0> </Mode0>
</Modes> </Modes>

View File

@ -544,17 +544,24 @@ type
TDataPointDrawTool = class; TDataPointDrawTool = class;
TChartDataPointDrawEvent = procedure (ASender: TDataPointDrawTool; TChartDataPointCustomDrawEvent = procedure (
ADrawer: IChartDrawer) of object; ASender: TDataPointDrawTool; ADrawer: IChartDrawer) of object;
TChartDataPointDrawEvent = procedure (
ASender: TDataPointDrawTool) of object;
TDataPointDrawTool = class(TDataPointTool) TDataPointDrawTool = class(TDataPointTool)
strict private strict private
FOnCustomDraw: TChartDataPointCustomDrawEvent;
FOnDraw: TChartDataPointDrawEvent; FOnDraw: TChartDataPointDrawEvent;
strict protected strict protected
FPen: TChartPen; FPen: TChartPen;
procedure DoDraw(ADrawer: IChartDrawer); virtual; procedure DoDraw(ADrawer: IChartDrawer); virtual;
procedure DoHide(ADrawer: IChartDrawer); virtual; procedure DoHide(ADrawer: IChartDrawer); virtual;
procedure SetPen(AValue: TChartPen); procedure SetPen(AValue: TChartPen);
// deprecated
procedure DoDraw; virtual; deprecated;
procedure DoHide; virtual; deprecated;
public public
constructor Create(AOwner: TComponent); override; constructor Create(AOwner: TComponent); override;
destructor Destroy; override; destructor Destroy; override;
@ -563,7 +570,10 @@ type
published published
property DrawingMode; property DrawingMode;
property GrabRadius default 20; property GrabRadius default 20;
property OnDraw: TChartDataPointDrawEvent read FOnDraw write FOnDraw; property OnCustomDraw: TChartDataPointCustomDrawEvent
read FOnCustomDraw write FOnCustomDraw;
property OnDraw: TChartDataPointDrawEvent
read FOnDraw write FOnDraw; deprecated 'Use OnCustomDraw';
property MouseInsideOnly; property MouseInsideOnly;
end; end;
@ -1990,10 +2000,22 @@ begin
inherited; inherited;
end; end;
procedure TDataPointDrawTool.DoDraw;
begin
DoDraw(GetCurrentDrawer);
end;
procedure TDataPointDrawTool.DoDraw(ADrawer: IChartDrawer); procedure TDataPointDrawTool.DoDraw(ADrawer: IChartDrawer);
begin begin
if Assigned(OnCustomDraw) then
OnCustomDraw(Self, ADrawer);
if Assigned(OnDraw) then if Assigned(OnDraw) then
OnDraw(Self, ADrawer); OnDraw(Self);
end;
procedure TDataPointDrawTool.DoHide;
begin
DoHide(GetCurrentDrawer);
end; end;
procedure TDataPointDrawTool.DoHide(ADrawer: IChartDrawer); procedure TDataPointDrawTool.DoHide(ADrawer: IChartDrawer);