From b132e87418bbf8c1f27f0e68fa8f5610f0d1a307 Mon Sep 17 00:00:00 2001 From: ask Date: Fri, 12 Aug 2011 17:36:14 +0000 Subject: [PATCH] TAChart: Add TZoomDragTool.Frame property git-svn-id: trunk@31965 - --- components/tachart/tatools.pas | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/components/tachart/tatools.pas b/components/tachart/tatools.pas index 107c94f239..3f2e997251 100644 --- a/components/tachart/tatools.pas +++ b/components/tachart/tatools.pas @@ -186,18 +186,23 @@ type TZoomDragTool = class(TBasicZoomTool) strict private + FFrame: TChartPen; FRatioLimit: TZoomRatioLimit; FSelectionRect: TRect; function GetProportional: Boolean; + procedure SetFrame(AValue: TChartPen); procedure SetProportional(AValue: Boolean); public procedure MouseDown(APoint: TPoint); override; procedure MouseMove(APoint: TPoint); override; procedure MouseUp(APoint: TPoint); override; public + constructor Create(AOwner: TComponent); override; + destructor Destroy; override; procedure Draw(AChart: TChart; ADrawer: IChartDrawer); override; published property DrawingMode; + property Frame: TChartPen read FFrame write SetFrame; property Proportional: Boolean read GetProportional write SetProportional stored false default false; deprecated; @@ -881,6 +886,18 @@ end; { TZoomDragTool } +constructor TZoomDragTool.Create(AOwner: TComponent); +begin + inherited; + FFrame := TChartPen.Create; +end; + +destructor TZoomDragTool.Destroy; +begin + FreeAndNil(FFrame); + inherited; +end; + procedure TZoomDragTool.Draw(AChart: TChart; ADrawer: IChartDrawer); begin if not IsActive or IsAnimating then exit; @@ -889,7 +906,7 @@ begin tdmDefault, tdmXor: PrepareXorPen(FChart.Canvas); tdmNormal: - FChart.Drawer.PrepareSimplePen($0); + FChart.Drawer.Pen := Frame; end; FChart.Drawer.Rectangle(FSelectionRect); end; @@ -981,6 +998,11 @@ begin Handled; end; +procedure TZoomDragTool.SetFrame(AValue: TChartPen); +begin + FFrame.Assign(AValue); +end; + procedure TZoomDragTool.SetProportional(AValue: Boolean); begin if AValue then