mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-03 10:23:41 +02:00
67 lines
1.4 KiB
ObjectPascal
67 lines
1.4 KiB
ObjectPascal
unit ceBrushFrame;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, Graphics, Forms, Controls, StdCtrls, Dialogs, TAChartCombos;
|
|
|
|
type
|
|
|
|
{ TChartBrushFrame }
|
|
|
|
TChartBrushFrame = class(TFrame)
|
|
cbBrushStyle: TChartComboBox;
|
|
cbBrushColor: TColorButton;
|
|
lblBrushStyle: TLabel;
|
|
procedure cbBrushColorColorChanged(Sender: TObject);
|
|
procedure cbBrushStyleChange(Sender: TObject);
|
|
private
|
|
FBrush: TBrush;
|
|
FOnChange: TNotifyEvent;
|
|
procedure DoChanged;
|
|
public
|
|
constructor Create(AOwner: TComponent); override;
|
|
procedure Prepare(ABrush: TBrush);
|
|
property OnChange: TNotifyEvent read FOnChange write FOnChange;
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.lfm}
|
|
|
|
constructor TChartBrushFrame.Create(AOwner: TComponent);
|
|
begin
|
|
inherited;
|
|
cbBrushStyle.DropDownCount := DEFAULT_DROPDOWN_COUNT;
|
|
cbBrushColor.Width := cbBrushColor.Height;
|
|
end;
|
|
|
|
procedure TChartBrushFrame.cbBrushStyleChange(Sender: TObject);
|
|
begin
|
|
FBrush.Style := cbBrushStyle.BrushStyle;
|
|
DoChanged;
|
|
end;
|
|
|
|
procedure TChartBrushFrame.cbBrushColorColorChanged(Sender: TObject);
|
|
begin
|
|
FBrush.Color := cbBrushColor.ButtonColor;
|
|
DoChanged;
|
|
end;
|
|
|
|
procedure TChartBrushFrame.DoChanged;
|
|
begin
|
|
if Assigned(FOnChange) then FOnChange(FBrush);
|
|
end;
|
|
|
|
procedure TChartBrushFrame.Prepare(ABrush: TBrush);
|
|
begin
|
|
FBrush := ABrush;
|
|
cbBrushColor.ButtonColor := ColorToRGB(ABrush.Color);
|
|
cbBrushStyle.BrushStyle := ABrush.Style;
|
|
end;
|
|
|
|
end.
|
|
|