mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-01 21:43:42 +02:00
82 lines
1.8 KiB
ObjectPascal
82 lines
1.8 KiB
ObjectPascal
unit ceArrowFrame;
|
|
|
|
{$mode ObjFPC}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, Forms, Controls, StdCtrls, Spin,
|
|
TATypes;
|
|
|
|
type
|
|
|
|
{ TChartArrowFrame }
|
|
|
|
TChartArrowFrame = class(TFrame)
|
|
cbArrowVisible: TCheckBox;
|
|
lblArrowBaseLength: TLabel;
|
|
lblArrowLength: TLabel;
|
|
lblArrowWidth: TLabel;
|
|
seArrowBaseLength: TSpinEdit;
|
|
seArrowLength: TSpinEdit;
|
|
seArrowWidth: TSpinEdit;
|
|
procedure cbArrowVisibleChange(Sender: TObject);
|
|
procedure seArrowBaseLengthChange(Sender: TObject);
|
|
procedure seArrowLengthChange(Sender: TObject);
|
|
procedure seArrowWidthChange(Sender: TObject);
|
|
private
|
|
FArrow: TChartArrow;
|
|
procedure DoChange;
|
|
public
|
|
procedure Prepare(Arrow: TChartArrow);
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.lfm}
|
|
|
|
procedure TChartArrowFrame.cbArrowVisibleChange(Sender: TObject);
|
|
begin
|
|
FArrow.Visible := cbArrowVisible.Checked;
|
|
DoChange;
|
|
end;
|
|
|
|
procedure TChartArrowFrame.DoChange;
|
|
begin
|
|
lblArrowBaseLength.Enabled := cbArrowVisible.Checked;
|
|
seArrowBaseLength.Enabled := cbArrowVisible.Checked;
|
|
lblArrowLength.Enabled := cbArrowVisible.Checked;
|
|
seArrowLength.Enabled := cbArrowVisible.Checked;
|
|
lblArrowWidth.Enabled := cbArrowVisible.Checked;
|
|
seArrowWidth.Enabled := cbArrowVisible.Checked;
|
|
end;
|
|
|
|
procedure TChartArrowFrame.Prepare(Arrow: TChartArrow);
|
|
begin
|
|
FArrow := Arrow;
|
|
cbArrowVisible.Checked := Arrow.Visible;
|
|
seArrowBaseLength.Value := Arrow.BaseLength;
|
|
seArrowLength.Value := Arrow.Length;
|
|
seArrowWidth.Value := Arrow.Width;
|
|
DoChange;
|
|
end;
|
|
|
|
procedure TChartArrowFrame.seArrowBaseLengthChange(Sender: TObject);
|
|
begin
|
|
FArrow.BaseLength := seArrowBaseLength.Value;
|
|
end;
|
|
|
|
procedure TChartArrowFrame.seArrowLengthChange(Sender: TObject);
|
|
begin
|
|
FArrow.Length := seArrowLength.Value;
|
|
end;
|
|
|
|
procedure TChartArrowFrame.seArrowWidthChange(Sender: TObject);
|
|
begin
|
|
FArrow.Width := seArrowWidth.Value;
|
|
end;
|
|
|
|
|
|
end.
|
|
|