TAChart: Add support of the TChartTitle.Wordwrap property to ChartEditor demo.

This commit is contained in:
wp_xyz 2021-07-31 22:34:42 +02:00
parent 365852ddae
commit 3864a0e0b5
3 changed files with 28 additions and 3 deletions

View File

@ -90,11 +90,15 @@ object MainForm: TMainForm
Caption = 'Click on a title, axis, label, grid, data point to open the corresponding editor.' Caption = 'Click on a title, axis, label, grid, data point to open the corresponding editor.'
end end
object Bevel1: TBevel object Bevel1: TBevel
AnchorSideLeft.Control = Owner
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = Label1 AnchorSideBottom.Control = Label1
Left = 0 Left = 0
Height = 4 Height = 4
Top = 290 Top = 290
Width = 613 Width = 613
Anchors = [akTop, akLeft, akRight]
Shape = bsBottomLine Shape = bsBottomLine
end end
object cbDoubleClick: TCheckBox object cbDoubleClick: TCheckBox

View File

@ -31,6 +31,19 @@ object ChartTitleFootFrame: TChartTitleFootFrame
State = cbChecked State = cbChecked
TabOrder = 0 TabOrder = 0
end end
object cbWordwrap: TCheckBox
AnchorSideLeft.Control = cbShow
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = PanelTop
Left = 81
Height = 19
Top = 0
Width = 75
BorderSpacing.Left = 32
Caption = 'Wordwrap'
OnClick = cbWordwrapClick
TabOrder = 1
end
end end
object ParamsPanel: TPanel object ParamsPanel: TPanel
Left = 0 Left = 0
@ -43,7 +56,7 @@ object ChartTitleFootFrame: TChartTitleFootFrame
BevelOuter = bvNone BevelOuter = bvNone
ClientHeight = 187 ClientHeight = 187
ClientWidth = 423 ClientWidth = 423
TabOrder = 1 TabOrder = 2
object rgAlignment: TRadioGroup object rgAlignment: TRadioGroup
AnchorSideLeft.Control = ParamsPanel AnchorSideLeft.Control = ParamsPanel
AnchorSideTop.Control = ParamsPanel AnchorSideTop.Control = ParamsPanel
@ -118,7 +131,7 @@ object ChartTitleFootFrame: TChartTitleFootFrame
ClientHeight = 196 ClientHeight = 196
ClientWidth = 423 ClientWidth = 423
Constraints.MinHeight = 80 Constraints.MinHeight = 80
TabOrder = 2 TabOrder = 1
object lblText: TLabel object lblText: TLabel
AnchorSideLeft.Control = MemoPanel AnchorSideLeft.Control = MemoPanel
AnchorSideTop.Control = MemoPanel AnchorSideTop.Control = MemoPanel
@ -127,7 +140,6 @@ object ChartTitleFootFrame: TChartTitleFootFrame
Top = 0 Top = 0
Width = 21 Width = 21
Caption = 'Text' Caption = 'Text'
ParentColor = False
end end
object mmoText: TMemo object mmoText: TMemo
AnchorSideLeft.Control = lblText AnchorSideLeft.Control = lblText

View File

@ -16,6 +16,7 @@ type
TChartTitleFootFrame = class(TFrame) TChartTitleFootFrame = class(TFrame)
cbShow: TCheckBox; cbShow: TCheckBox;
cbWordwrap: TCheckBox;
gbFont: TGroupBox; gbFont: TGroupBox;
gbShapeBrushPenMargins: TGroupBox; gbShapeBrushPenMargins: TGroupBox;
lblText: TLabel; lblText: TLabel;
@ -25,6 +26,7 @@ type
ParamsPanel: TPanel; ParamsPanel: TPanel;
rgAlignment: TRadioGroup; rgAlignment: TRadioGroup;
procedure cbShowChange(Sender: TObject); procedure cbShowChange(Sender: TObject);
procedure cbWordwrapClick(Sender: TObject);
procedure mmoTextChange(Sender: TObject); procedure mmoTextChange(Sender: TObject);
procedure rgAlignmentClick(Sender: TObject); procedure rgAlignmentClick(Sender: TObject);
private private
@ -101,6 +103,12 @@ begin
rgAlignment.Visible := cbShow.Checked; rgAlignment.Visible := cbShow.Checked;
gbShapeBrushPenMargins.Visible := cbShow.Checked; gbShapeBrushPenMargins.Visible := cbShow.Checked;
gbFont.Visible := cbShow.Checked; gbFont.Visible := cbShow.Checked;
cbWordwrap.Visible := cbShow.Checked;
end;
procedure TChartTitleFootFrame.cbWordwrapClick(Sender: TObject);
begin
FTitle.Wordwrap := cbWordwrap.Checked;
end; end;
procedure TChartTitleFootFrame.ChangedHandler(Sender: TObject); procedure TChartTitleFootFrame.ChangedHandler(Sender: TObject);
@ -139,6 +147,7 @@ begin
FTitle := ATitle; FTitle := ATitle;
cbShow.Checked := ATitle.Visible; cbShow.Checked := ATitle.Visible;
cbWordwrap.Checked := ATitle.Wordwrap;
mmoText.Lines.Assign(ATitle.Text); mmoText.Lines.Assign(ATitle.Text);
{$IFDEF WYSIWYG_TITLE} {$IFDEF WYSIWYG_TITLE}
mmoText.Font.Assign(ATitle.Font); mmoText.Font.Assign(ATitle.Font);