mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-22 13:59:31 +02:00
TAChart: Update "distance" demo
git-svn-id: trunk@38499 -
This commit is contained in:
parent
544ce86495
commit
b33c818ce3
@ -323,7 +323,7 @@ object Form1: TForm1
|
||||
TabOrder = 3
|
||||
end
|
||||
object RandomChartSource1: TRandomChartSource
|
||||
PointsNumber = 10
|
||||
PointsNumber = 100
|
||||
RandSeed = 2143215771
|
||||
XMax = 10
|
||||
XMin = 0
|
||||
@ -345,12 +345,12 @@ object Form1: TForm1
|
||||
object ctDist: TChartToolset
|
||||
left = 72
|
||||
top = 232
|
||||
object ctDistDataPointCrosshairTool1: TDataPointCrosshairTool
|
||||
object ctCrosshair: TDataPointCrosshairTool
|
||||
Shift = [ssRight]
|
||||
OnDraw = ctDistDataPointCrosshairTool1Draw
|
||||
OnDraw = ctCrosshairDraw
|
||||
Size = 16
|
||||
end
|
||||
object ctDistDataPointDistanceTool1: TDataPointDistanceTool
|
||||
object ctDistance1: TDataPointDistanceTool
|
||||
Shift = [ssLeft]
|
||||
LinePen.Width = 2
|
||||
Marks.Distance = 30
|
||||
@ -361,9 +361,9 @@ object Form1: TForm1
|
||||
PointerStart.Brush.Style = bsClear
|
||||
PointerStart.Pen.Color = clRed
|
||||
PointerStart.VertSize = 1000
|
||||
OnMeasure = ctDistDataPointDistanceTool1Measure
|
||||
OnMeasure = ctDistance1Measure
|
||||
end
|
||||
object ctDistDataPointDistanceTool2: TDataPointDistanceTool
|
||||
object ctDistance2: TDataPointDistanceTool
|
||||
Shift = [ssCtrl, ssLeft]
|
||||
Marks.Format = '%0:.9g'
|
||||
PointerEnd.HorizSize = 8
|
||||
@ -372,7 +372,7 @@ object Form1: TForm1
|
||||
PointerStart.Brush.Style = bsClear
|
||||
PointerStart.Style = psLeftBracket
|
||||
PointerStart.VertSize = 8
|
||||
OnMeasure = ctDistDataPointDistanceTool1Measure
|
||||
OnMeasure = ctDistance1Measure
|
||||
end
|
||||
end
|
||||
object ChartAxisTransformations1: TChartAxisTransformations
|
||||
|
@ -31,9 +31,9 @@ type
|
||||
clrFontColor: TColorButton;
|
||||
clrPenColor: TColorButton;
|
||||
ctDist: TChartToolset;
|
||||
ctDistDataPointCrosshairTool1: TDataPointCrosshairTool;
|
||||
ctDistDataPointDistanceTool1: TDataPointDistanceTool;
|
||||
ctDistDataPointDistanceTool2: TDataPointDistanceTool;
|
||||
ctCrosshair: TDataPointCrosshairTool;
|
||||
ctDistance1: TDataPointDistanceTool;
|
||||
ctDistance2: TDataPointDistanceTool;
|
||||
edEndbarLength: TSpinEdit;
|
||||
lblEndBarLength: TLabel;
|
||||
mDistanceText: TMemo;
|
||||
@ -54,8 +54,8 @@ type
|
||||
procedure clrBackgroundColorColorChanged(Sender: TObject);
|
||||
procedure clrFontColorColorChanged(Sender: TObject);
|
||||
procedure clrPenColorColorChanged(Sender: TObject);
|
||||
procedure ctDistDataPointCrosshairTool1Draw(ASender: TDataPointCrosshairTool);
|
||||
procedure ctDistDataPointDistanceTool1Measure(
|
||||
procedure ctCrosshairDraw(ASender: TDataPointCrosshairTool);
|
||||
procedure ctDistance1Measure(
|
||||
ASender: TDataPointDistanceTool);
|
||||
procedure edEndbarLengthChange(Sender: TObject);
|
||||
procedure FormCreate(Sender: TObject);
|
||||
@ -98,8 +98,8 @@ end;
|
||||
|
||||
procedure TForm1.cbShowLabelClick(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.Marks.Visible := cbShowLabel.Checked;
|
||||
ctDistDataPointDistanceTool2.Marks.Visible := cbShowLabel.Checked;
|
||||
ctDistance1.Marks.Visible := cbShowLabel.Checked;
|
||||
ctDistance2.Marks.Visible := cbShowLabel.Checked;
|
||||
UpdateButtons;
|
||||
end;
|
||||
|
||||
@ -110,18 +110,18 @@ end;
|
||||
|
||||
procedure TForm1.clrFontColorColorChanged(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.Marks.LabelFont.Color := clrFontColor.ButtonColor;
|
||||
ctDistDataPointDistanceTool2.Marks.LabelFont.Color := clrFontColor.ButtonColor;
|
||||
ctDistance1.Marks.LabelFont.Color := clrFontColor.ButtonColor;
|
||||
ctDistance2.Marks.LabelFont.Color := clrFontColor.ButtonColor;
|
||||
end;
|
||||
|
||||
procedure TForm1.clrPenColorColorChanged(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.LinePen.Color := clrPenColor.ButtonColor;
|
||||
ctDistDataPointDistanceTool2.LinePen.Color := clrPenColor.ButtonColor;
|
||||
ctDistDataPointCrosshairTool1.CrosshairPen.Color := clrPenColor.ButtonColor;
|
||||
ctDistance1.LinePen.Color := clrPenColor.ButtonColor;
|
||||
ctDistance2.LinePen.Color := clrPenColor.ButtonColor;
|
||||
ctCrosshair.CrosshairPen.Color := clrPenColor.ButtonColor;
|
||||
end;
|
||||
|
||||
procedure TForm1.ctDistDataPointCrosshairTool1Draw(
|
||||
procedure TForm1.ctCrosshairDraw(
|
||||
ASender: TDataPointCrosshairTool);
|
||||
var
|
||||
ser: TChartSeries;
|
||||
@ -134,7 +134,7 @@ begin
|
||||
Statusbar1.SimpleText := '';
|
||||
end;
|
||||
|
||||
procedure TForm1.ctDistDataPointDistanceTool1Measure(
|
||||
procedure TForm1.ctDistance1Measure(
|
||||
ASender: TDataPointDistanceTool);
|
||||
const
|
||||
DIST_TEXT: array [TChartDistanceMode] of String = ('', 'x ', 'y ');
|
||||
@ -151,8 +151,8 @@ end;
|
||||
|
||||
procedure TForm1.edEndbarLengthChange(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.PointerStart.VertSize := edEndbarLength.Value;
|
||||
ctDistDataPointDistanceTool1.PointerEnd.VertSize := edEndbarLength.Value;
|
||||
ctDistance1.PointerStart.VertSize := edEndbarLength.Value;
|
||||
ctDistance1.PointerEnd.VertSize := edEndbarLength.Value;
|
||||
end;
|
||||
|
||||
procedure TForm1.FormCreate(Sender: TObject);
|
||||
@ -171,60 +171,62 @@ begin
|
||||
s := mDistanceText.Lines.Text;
|
||||
try
|
||||
Format(s, [1.0, 1.0]);
|
||||
ctDistDataPointDistanceTool1.Marks.Format := s;
|
||||
ctDistDataPointDistanceTool2.Marks.Format := s;
|
||||
ctDistance1.Marks.Format := s;
|
||||
ctDistance2.Marks.Format := s;
|
||||
except
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TForm1.rgDataPointModeClick(Sender: TObject);
|
||||
begin
|
||||
with ctDistDataPointDistanceTool1 do begin
|
||||
DataPointMode := TDataPointDistanceTool.TDataPointMode(rgDataPointMode.ItemIndex);
|
||||
ctDistDataPointDistanceTool2.DataPointMode := DataPointMode;
|
||||
with ctDistance1 do begin
|
||||
DataPointModeStart := TDataPointDistanceTool.TDataPointMode(rgDataPointMode.ItemIndex);
|
||||
DataPointModeEnd := DataPointModeStart;
|
||||
ctDistance2.DataPointModeStart := DataPointModeStart;
|
||||
ctDistance2.DataPointModeEnd := DataPointModeStart;
|
||||
end;
|
||||
UpdateButtons;
|
||||
end;
|
||||
|
||||
procedure TForm1.rgDrawingModeClick(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.DrawingMode := TChartToolDrawingMode(rgDrawingMode.ItemIndex);
|
||||
ctDistDataPointDistanceTool2.DrawingMode := TChartToolDrawingMode(rgDrawingMode.ItemIndex);
|
||||
ctDistDataPointCrosshairTool1.DrawingMode := TChartToolDrawingMode(rgDrawingMode.ItemIndex);
|
||||
ctDistance1.DrawingMode := TChartToolDrawingMode(rgDrawingMode.ItemIndex);
|
||||
ctDistance2.DrawingMode := TChartToolDrawingMode(rgDrawingMode.ItemIndex);
|
||||
ctCrosshair.DrawingMode := TChartToolDrawingMode(rgDrawingMode.ItemIndex);
|
||||
UpdateButtons;
|
||||
end;
|
||||
|
||||
procedure TForm1.rgMeasureModeClick(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.MeasureMode := TChartDistanceMode(rgMeasureMode.ItemIndex);
|
||||
ctDistDataPointDistanceTool2.MeasureMode := TChartDistanceMode(rgMeasureMode.ItemIndex);
|
||||
ctDistance1.MeasureMode := TChartDistanceMode(rgMeasureMode.ItemIndex);
|
||||
ctDistance2.MeasureMode := TChartDistanceMode(rgMeasureMode.ItemIndex);
|
||||
end;
|
||||
|
||||
procedure TForm1.rgSnapModeClick(Sender: TObject);
|
||||
begin
|
||||
ctDistDataPointDistanceTool1.DistanceMode := TChartDistanceMode(rgSnapMode.ItemIndex);
|
||||
ctDistDataPointDistanceTool2.DistanceMode := TChartDistanceMode(rgSnapMode.ItemIndex);
|
||||
ctDistDataPointCrosshairTool1.DistanceMode := TChartDistanceMode(rgSnapMode.ItemIndex);
|
||||
ctDistance1.DistanceMode := TChartDistanceMode(rgSnapMode.ItemIndex);
|
||||
ctDistance2.DistanceMode := TChartDistanceMode(rgSnapMode.ItemIndex);
|
||||
ctCrosshair.DistanceMode := TChartDistanceMode(rgSnapMode.ItemIndex);
|
||||
end;
|
||||
|
||||
procedure TForm1.SwitchOptions(
|
||||
AOptions: TDataPointDistanceTool.TOptions; AOn: Boolean);
|
||||
begin
|
||||
with ctDistDataPointDistanceTool1 do begin
|
||||
with ctDistance1 do begin
|
||||
if AOn then
|
||||
Options := Options + AOptions
|
||||
else
|
||||
Options := Options - AOptions;
|
||||
ctDistDataPointDistanceTool2.Options := Options;
|
||||
ctDistance2.Options := Options;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TForm1.UpdateButtons;
|
||||
begin
|
||||
clrPenColor.Enabled := ctDistDataPointDistanceTool1.DrawingMode=tdmNormal;
|
||||
clrFontColor.Enabled := (ctDistDataPointDistanceTool1.DrawingMode=tdmNormal)
|
||||
and ctDistDataPointDistanceTool1.Marks.Visible;
|
||||
rgSnapMode.Enabled := ctDistDataPointDistanceTool1.DataPointMode <> dpmFree;
|
||||
clrPenColor.Enabled := ctDistance1.DrawingMode=tdmNormal;
|
||||
clrFontColor.Enabled := (ctDistance1.DrawingMode=tdmNormal)
|
||||
and ctDistance1.Marks.Visible;
|
||||
rgSnapMode.Enabled := ctDistance1.DataPointModeStart <> dpmFree;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user