mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-04 03:38:20 +02:00
107 lines
2.4 KiB
ObjectPascal
107 lines
2.4 KiB
ObjectPascal
{
|
|
This file is part of the Free Component Library.
|
|
Copyright (c) 2017 Michael Van Canneyt, member of the Free Pascal development team
|
|
|
|
Edit form to edit a report memo.
|
|
|
|
See the file COPYING.FPC, included in this distribution,
|
|
for details about the copyright.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
**********************************************************************}
|
|
unit frmfpreportmemoedit;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ButtonPanel, StdCtrls, ExtCtrls, fpReport;
|
|
|
|
type
|
|
|
|
{ TfpReportMemoEditForm }
|
|
|
|
TfpReportMemoEditForm = class(TForm)
|
|
BPMemo: TButtonPanel;
|
|
MMemo: TMemo;
|
|
Pmemo: TPanel;
|
|
procedure FormCloseQuery(Sender: TObject; var CanClose: boolean);
|
|
private
|
|
FReportMemo: TFPReportCustomMemo;
|
|
procedure SetFPReportMemo(AValue: TFPReportCustomMemo);
|
|
public
|
|
Procedure MemoToForm;
|
|
Procedure FormToMemo;
|
|
Property ReportMemo : TFPReportCustomMemo Read FReportMemo Write SetFPReportMemo;
|
|
end;
|
|
|
|
{ TDefaultReportMemoEditor }
|
|
|
|
TDefaultReportMemoEditor = Class(TFPReportElementEditor)
|
|
Class function DefaultClass: TFPReportElementClass; override;
|
|
Function Execute : Boolean; override;
|
|
end;
|
|
|
|
var
|
|
fpReportMemoEditForm: TfpReportMemoEditForm;
|
|
|
|
implementation
|
|
|
|
{$R *.lfm}
|
|
|
|
{ TDefaultReportMemoEditor }
|
|
|
|
class function TDefaultReportMemoEditor.DefaultClass: TFPReportElementClass;
|
|
begin
|
|
Result:=TFPReportMemo;
|
|
end;
|
|
|
|
Function TDefaultReportMemoEditor.Execute : Boolean;
|
|
|
|
Var
|
|
F : TfpReportMemoEditForm;
|
|
|
|
begin
|
|
F:=TfpReportMemoEditForm.Create(Self);
|
|
try
|
|
F.ReportMemo:=Self.Element as TFPReportCustomMemo;
|
|
Result:=F.ShowModal=mrOK;
|
|
finally
|
|
F.Free;
|
|
end;
|
|
end;
|
|
|
|
{ TfpReportMemoEditForm }
|
|
|
|
procedure TfpReportMemoEditForm.FormCloseQuery(Sender: TObject; var CanClose: boolean);
|
|
begin
|
|
if ModalResult=mrOK then
|
|
FormToMemo;
|
|
end;
|
|
|
|
procedure TfpReportMemoEditForm.SetFPReportMemo(AValue: TFPReportCustomMemo);
|
|
begin
|
|
if FReportMemo=AValue then Exit;
|
|
FReportMemo:=AValue;
|
|
MemoToForm;
|
|
end;
|
|
|
|
procedure TfpReportMemoEditForm.MemoToForm;
|
|
begin
|
|
MMemo.Lines.Text:=TFPReportMemo(FReportMemo).Text;
|
|
end;
|
|
|
|
procedure TfpReportMemoEditForm.FormToMemo;
|
|
begin
|
|
TFPReportMemo(FReportMemo).Text:=MMemo.Lines.Text
|
|
end;
|
|
|
|
Initialization
|
|
TDefaultReportMemoEditor.RegisterEditor;
|
|
end.
|
|
|