mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-01 04:43:41 +02:00
79 lines
1.5 KiB
ObjectPascal
79 lines
1.5 KiB
ObjectPascal
unit frmgeneratedcode;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
|
|
SynHighlighterPas, SynMemo, ExtCtrls, StdCtrls, ldd_consts;
|
|
|
|
type
|
|
|
|
{ TCodeForm }
|
|
|
|
TCodeForm = class(TForm)
|
|
BClose: TButton;
|
|
BSave: TButton;
|
|
PButtons: TPanel;
|
|
SDCode: TSaveDialog;
|
|
SynFreePascalSyn1: TSynFreePascalSyn;
|
|
MCode: TSynMemo;
|
|
procedure BSaveClick(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
function GetCode: TStrings;
|
|
procedure SetCode(const AValue: TStrings);
|
|
private
|
|
FUnitName: String;
|
|
{ private declarations }
|
|
public
|
|
{ public declarations }
|
|
Property Code : TStrings Read GetCode Write SetCode;
|
|
Property UnitName : String Read FUnitName Write FUnitName;
|
|
end;
|
|
|
|
var
|
|
CodeForm: TCodeForm;
|
|
|
|
implementation
|
|
|
|
{ TCodeForm }
|
|
|
|
function TCodeForm.GetCode: TStrings;
|
|
begin
|
|
Result:=MCode.Lines;
|
|
end;
|
|
|
|
procedure TCodeForm.BSaveClick(Sender: TObject);
|
|
begin
|
|
With SDCode do
|
|
begin
|
|
If (UnitName<>'') then
|
|
SDCode.FileName:=UnitName+'.pp';
|
|
If Execute then
|
|
MCode.Lines.SaveToFile(UTF8ToSys(FileName));
|
|
end;
|
|
end;
|
|
|
|
procedure TCodeForm.FormCreate(Sender: TObject);
|
|
begin
|
|
//
|
|
Caption:= ldd_Generatedcode;
|
|
BClose.Caption:= ldd_Close;
|
|
BSave.Caption:= ldd_Save;
|
|
SDCode.Title:= ldd_SDCodetitle;
|
|
SDCode.Filter:= ldd_SDCodefilter;
|
|
//
|
|
end;
|
|
|
|
procedure TCodeForm.SetCode(const AValue: TStrings);
|
|
begin
|
|
MCode.Lines.Assign(AValue);
|
|
end;
|
|
|
|
initialization
|
|
{$I frmgeneratedcode.lrs}
|
|
|
|
end.
|
|
|