Difference between revisions of "TAChart Chart"
From Lazarus wiki
Jump to navigationJump to search (Created page with "The Chart is the component from where you control much of the behaviour of your diagrams.") |
|||
Line 1: | Line 1: | ||
The Chart is the component from where you control much of the behaviour of your diagrams. | The Chart is the component from where you control much of the behaviour of your diagrams. | ||
+ | |||
+ | procedure EraseBackground(DC: HDC); override; | ||
+ | procedure GetChildren(AProc: TGetChildProc; ARoot: TComponent); override; | ||
+ | procedure Paint; override; | ||
+ | procedure SetChildOrder(Child: TComponent; Order: Integer); override; | ||
+ | |||
+ | public // Helpers for series drawing | ||
+ | procedure DrawLineHoriz(ADrawer: IChartDrawer; AY: Integer); | ||
+ | procedure DrawLineVert(ADrawer: IChartDrawer; AX: Integer); | ||
+ | procedure DrawOnCanvas(Rect: TRect; ACanvas: TCanvas); deprecated; | ||
+ | function IsPointInViewPort(const AP: TDoublePoint): Boolean; | ||
+ | |||
+ | public | ||
+ | procedure AddSeries(ASeries: TBasicChartSeries); | ||
+ | procedure ClearSeries; | ||
+ | function Clone: TChart; | ||
+ | procedure CopyToClipboardBitmap; | ||
+ | procedure DeleteSeries(ASeries: TBasicChartSeries); | ||
+ | procedure DisableRedrawing; | ||
+ | procedure Draw(ADrawer: IChartDrawer; const ARect: TRect); | ||
+ | procedure DrawLegendOn(ACanvas: TCanvas; var ARect: TRect); | ||
+ | procedure EnableRedrawing; | ||
+ | function GetFullExtent: TDoubleRect; | ||
+ | function GetLegendItems(AIncludeHidden: Boolean = false): TChartLegendItems; | ||
+ | procedure PaintOnAuxCanvas(ACanvas: TCanvas; ARect: TRect); | ||
+ | procedure PaintOnCanvas(ACanvas: TCanvas; ARect: TRect); | ||
+ | procedure Prepare; | ||
+ | procedure RemoveSeries(ASeries: TBasicChartSeries); inline; | ||
+ | procedure SaveToBitmapFile(const AFileName: String); inline; | ||
+ | procedure SaveToFile(AClass: TRasterImageClass; AFileName: String); | ||
+ | function SaveToImage(AClass: TRasterImageClass): TRasterImage; | ||
+ | procedure StyleChanged(Sender: TObject); override; | ||
+ | procedure ZoomFull(AImmediateRecalc: Boolean = false); override; | ||
+ | property Drawer: IChartDrawer read FConnectorData.FDrawer; | ||
+ | |||
+ | public // Coordinate conversion | ||
+ | function GraphToImage(const AGraphPoint: TDoublePoint): TPoint; | ||
+ | function ImageToGraph(const APoint: TPoint): TDoublePoint; overload; | ||
+ | function ImageToGraph(const AX, AY: Integer): TDoublePoint; overload; | ||
+ | function XGraphToImage(AX: Double): Integer; inline; | ||
+ | function XImageToGraph(AX: Integer): Double; inline; | ||
+ | function YGraphToImage(AY: Double): Integer; inline; | ||
+ | function YImageToGraph(AY: Integer): Double; inline; | ||
+ | |||
+ | public | ||
+ | property ActiveToolIndex: Integer read FActiveToolIndex; | ||
+ | property Broadcaster: TBroadcaster read FBroadcaster; | ||
+ | property ChartHeight: Integer read GetChartHeight; | ||
+ | property ChartWidth: Integer read GetChartWidth; | ||
+ | property ClipRect: TRect read FClipRect; | ||
+ | property CurrentExtent: TDoubleRect read FCurrentExtent; | ||
+ | property ExtentBroadcaster: TBroadcaster read FExtentBroadcaster; | ||
+ | property IsZoomed: Boolean read FIsZoomed; | ||
+ | property LogicalExtent: TDoubleRect read FLogicalExtent write SetLogicalExtent; | ||
+ | property OnChartPaint: TChartPaintEvent | ||
+ | read FOnChartPaint write SetOnChartPaint; experimental; | ||
+ | property PrevLogicalExtent: TDoubleRect read FPrevLogicalExtent; | ||
+ | property RenderingParams: TChartRenderingParams | ||
+ | read GetRenderingParams write SetRenderingParams; | ||
+ | property ReticulePos: TPoint read FReticulePos write SetReticulePos; | ||
+ | property SeriesCount: Integer read GetSeriesCount; | ||
+ | property XGraphMax: Double read FCurrentExtent.b.X; | ||
+ | property XGraphMin: Double read FCurrentExtent.a.X; | ||
+ | property YGraphMax: Double read FCurrentExtent.b.Y; | ||
+ | property YGraphMin: Double read FCurrentExtent.a.Y; | ||
+ | |||
+ | published | ||
+ | property AutoFocus: Boolean read FAutoFocus write FAutoFocus default false; | ||
+ | property AllowZoom: Boolean read FAllowZoom write FAllowZoom default true; | ||
+ | property AntialiasingMode: TChartAntialiasingMode | ||
+ | read FAntialiasingMode write SetAntialiasingMode default amDontCare; | ||
+ | property AxisList: TChartAxisList read FAxisList write SetAxisList; | ||
+ | property AxisVisible: Boolean read FAxisVisible write SetAxisVisible default true; | ||
+ | property BackColor: TColor read FBackColor write SetBackColor default clBtnFace; | ||
+ | property BottomAxis: TChartAxis index calBottom read GetAxisByAlign write SetAxisByAlign stored false; | ||
+ | property Depth: TChartDistance read FDepth write SetDepth default 0; | ||
+ | property ExpandPercentage: Integer | ||
+ | read FExpandPercentage write SetExpandPercentage default 0; | ||
+ | property Extent: TChartExtent read FExtent write SetExtent; | ||
+ | property ExtentSizeLimit: TChartExtent read FExtentSizeLimit write SetExtentSizeLimit; | ||
+ | property Foot: TChartTitle read FFoot write SetFoot; | ||
+ | property Frame: TChartPen read FFrame write SetFrame; | ||
+ | property GUIConnector: TChartGUIConnector | ||
+ | read FGUIConnector write SetGUIConnector; | ||
+ | property LeftAxis: TChartAxis index calLeft read GetAxisByAlign write SetAxisByAlign stored false; | ||
+ | property Legend: TChartLegend read FLegend write SetLegend; | ||
+ | property Margins: TChartMargins read FMargins write SetMargins; | ||
+ | property MarginsExternal: TChartMargins | ||
+ | read FMarginsExternal write SetMarginsExternal; | ||
+ | property Proportional: Boolean | ||
+ | read FProportional write SetProportional default false; | ||
+ | property ReticuleMode: TReticuleMode | ||
+ | read FReticuleMode write SetReticuleMode default rmNone; | ||
+ | property Series: TChartSeriesList read FSeries; | ||
+ | property Title: TChartTitle read FTitle write SetTitle; | ||
+ | property Toolset: TBasicChartToolset read FToolset write SetToolset; | ||
+ | |||
+ | published | ||
+ | property OnAfterDraw: TDrawEvent read FOnAfterDraw write SetOnAfterDraw; | ||
+ | property OnAfterDrawBackground: TChartAfterDrawEvent | ||
+ | read FOnAfterDrawBackground write SetOnAfterDrawBackground; | ||
+ | property OnAfterDrawBackWall: TChartAfterDrawEvent | ||
+ | read FOnAfterDrawBackWall write SetOnAfterDrawBackWall; | ||
+ | property OnAfterPaint: TChartEvent read FOnAfterPaint write FOnAfterPaint; | ||
+ | property OnBeforeDrawBackground: TChartBeforeDrawEvent | ||
+ | read FOnBeforeDrawBackground write SetOnBeforeDrawBackground; | ||
+ | property OnBeforeDrawBackWall: TChartBeforeDrawEvent | ||
+ | read FOnBeforeDrawBackWall write SetOnBeforeDrawBackWall; | ||
+ | property OnDrawReticule: TDrawReticuleEvent | ||
+ | read FOnDrawReticule write SetOnDrawReticule; | ||
+ | property OnExtentChanged: TChartEvent | ||
+ | read FOnExtentChanged write FOnExtentChanged; | ||
+ | property OnExtentChanging: TChartEvent | ||
+ | read FOnExtentChanging write FOnExtentChanging; | ||
+ | |||
+ | published | ||
+ | property Align; | ||
+ | property Anchors; | ||
+ | property BorderSpacing; | ||
+ | property Color default clBtnFace; | ||
+ | property DoubleBuffered; | ||
+ | property DragCursor; | ||
+ | property DragMode; | ||
+ | property Enabled; | ||
+ | property ParentColor; | ||
+ | property ParentShowHint; | ||
+ | property PopupMenu; | ||
+ | property ShowHint; | ||
+ | property Visible; | ||
+ | |||
+ | published | ||
+ | property OnClick; | ||
+ | property OnDblClick; | ||
+ | property OnDragDrop; | ||
+ | property OnDragOver; | ||
+ | property OnEndDrag; | ||
+ | property OnMouseDown; | ||
+ | property OnMouseMove; | ||
+ | property OnMouseUp; | ||
+ | property OnStartDrag; |
Revision as of 15:10, 20 December 2013
The Chart is the component from where you control much of the behaviour of your diagrams.
procedure EraseBackground(DC: HDC); override; procedure GetChildren(AProc: TGetChildProc; ARoot: TComponent); override; procedure Paint; override; procedure SetChildOrder(Child: TComponent; Order: Integer); override;
public // Helpers for series drawing procedure DrawLineHoriz(ADrawer: IChartDrawer; AY: Integer); procedure DrawLineVert(ADrawer: IChartDrawer; AX: Integer); procedure DrawOnCanvas(Rect: TRect; ACanvas: TCanvas); deprecated; function IsPointInViewPort(const AP: TDoublePoint): Boolean;
public procedure AddSeries(ASeries: TBasicChartSeries); procedure ClearSeries; function Clone: TChart; procedure CopyToClipboardBitmap; procedure DeleteSeries(ASeries: TBasicChartSeries); procedure DisableRedrawing; procedure Draw(ADrawer: IChartDrawer; const ARect: TRect); procedure DrawLegendOn(ACanvas: TCanvas; var ARect: TRect); procedure EnableRedrawing; function GetFullExtent: TDoubleRect; function GetLegendItems(AIncludeHidden: Boolean = false): TChartLegendItems; procedure PaintOnAuxCanvas(ACanvas: TCanvas; ARect: TRect); procedure PaintOnCanvas(ACanvas: TCanvas; ARect: TRect); procedure Prepare; procedure RemoveSeries(ASeries: TBasicChartSeries); inline; procedure SaveToBitmapFile(const AFileName: String); inline; procedure SaveToFile(AClass: TRasterImageClass; AFileName: String); function SaveToImage(AClass: TRasterImageClass): TRasterImage; procedure StyleChanged(Sender: TObject); override; procedure ZoomFull(AImmediateRecalc: Boolean = false); override; property Drawer: IChartDrawer read FConnectorData.FDrawer;
public // Coordinate conversion function GraphToImage(const AGraphPoint: TDoublePoint): TPoint; function ImageToGraph(const APoint: TPoint): TDoublePoint; overload; function ImageToGraph(const AX, AY: Integer): TDoublePoint; overload; function XGraphToImage(AX: Double): Integer; inline; function XImageToGraph(AX: Integer): Double; inline; function YGraphToImage(AY: Double): Integer; inline; function YImageToGraph(AY: Integer): Double; inline;
public property ActiveToolIndex: Integer read FActiveToolIndex; property Broadcaster: TBroadcaster read FBroadcaster; property ChartHeight: Integer read GetChartHeight; property ChartWidth: Integer read GetChartWidth; property ClipRect: TRect read FClipRect; property CurrentExtent: TDoubleRect read FCurrentExtent; property ExtentBroadcaster: TBroadcaster read FExtentBroadcaster; property IsZoomed: Boolean read FIsZoomed; property LogicalExtent: TDoubleRect read FLogicalExtent write SetLogicalExtent; property OnChartPaint: TChartPaintEvent read FOnChartPaint write SetOnChartPaint; experimental; property PrevLogicalExtent: TDoubleRect read FPrevLogicalExtent; property RenderingParams: TChartRenderingParams read GetRenderingParams write SetRenderingParams; property ReticulePos: TPoint read FReticulePos write SetReticulePos; property SeriesCount: Integer read GetSeriesCount; property XGraphMax: Double read FCurrentExtent.b.X; property XGraphMin: Double read FCurrentExtent.a.X; property YGraphMax: Double read FCurrentExtent.b.Y; property YGraphMin: Double read FCurrentExtent.a.Y;
published property AutoFocus: Boolean read FAutoFocus write FAutoFocus default false; property AllowZoom: Boolean read FAllowZoom write FAllowZoom default true; property AntialiasingMode: TChartAntialiasingMode read FAntialiasingMode write SetAntialiasingMode default amDontCare; property AxisList: TChartAxisList read FAxisList write SetAxisList; property AxisVisible: Boolean read FAxisVisible write SetAxisVisible default true; property BackColor: TColor read FBackColor write SetBackColor default clBtnFace; property BottomAxis: TChartAxis index calBottom read GetAxisByAlign write SetAxisByAlign stored false; property Depth: TChartDistance read FDepth write SetDepth default 0; property ExpandPercentage: Integer read FExpandPercentage write SetExpandPercentage default 0; property Extent: TChartExtent read FExtent write SetExtent; property ExtentSizeLimit: TChartExtent read FExtentSizeLimit write SetExtentSizeLimit; property Foot: TChartTitle read FFoot write SetFoot; property Frame: TChartPen read FFrame write SetFrame; property GUIConnector: TChartGUIConnector read FGUIConnector write SetGUIConnector; property LeftAxis: TChartAxis index calLeft read GetAxisByAlign write SetAxisByAlign stored false; property Legend: TChartLegend read FLegend write SetLegend; property Margins: TChartMargins read FMargins write SetMargins; property MarginsExternal: TChartMargins read FMarginsExternal write SetMarginsExternal; property Proportional: Boolean read FProportional write SetProportional default false; property ReticuleMode: TReticuleMode read FReticuleMode write SetReticuleMode default rmNone; property Series: TChartSeriesList read FSeries; property Title: TChartTitle read FTitle write SetTitle; property Toolset: TBasicChartToolset read FToolset write SetToolset;
published property OnAfterDraw: TDrawEvent read FOnAfterDraw write SetOnAfterDraw; property OnAfterDrawBackground: TChartAfterDrawEvent read FOnAfterDrawBackground write SetOnAfterDrawBackground; property OnAfterDrawBackWall: TChartAfterDrawEvent read FOnAfterDrawBackWall write SetOnAfterDrawBackWall; property OnAfterPaint: TChartEvent read FOnAfterPaint write FOnAfterPaint; property OnBeforeDrawBackground: TChartBeforeDrawEvent read FOnBeforeDrawBackground write SetOnBeforeDrawBackground; property OnBeforeDrawBackWall: TChartBeforeDrawEvent read FOnBeforeDrawBackWall write SetOnBeforeDrawBackWall; property OnDrawReticule: TDrawReticuleEvent read FOnDrawReticule write SetOnDrawReticule; property OnExtentChanged: TChartEvent read FOnExtentChanged write FOnExtentChanged; property OnExtentChanging: TChartEvent read FOnExtentChanging write FOnExtentChanging;
published property Align; property Anchors; property BorderSpacing; property Color default clBtnFace; property DoubleBuffered; property DragCursor; property DragMode; property Enabled; property ParentColor; property ParentShowHint; property PopupMenu; property ShowHint; property Visible;
published property OnClick; property OnDblClick; property OnDragDrop; property OnDragOver; property OnEndDrag; property OnMouseDown; property OnMouseMove; property OnMouseUp; property OnStartDrag;