lazarus/components/lazsvnpkg/svncommitform.pas
darius e28c1a3240 Forms are no longer modal
Use SynEdit with diff highlighter for the diff form

git-svn-id: trunk@30861 -
2011-05-22 20:01:49 +00:00

78 lines
1.4 KiB
ObjectPascal

unit SVNCommitForm;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
ButtonPanel, StdCtrls, Process, LCLProc;
type
{ TSVNCommitFrm }
TSVNCommitFrm = class(TForm)
ButtonPanel: TButtonPanel;
SVNCommitMemo: TMemo;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure OKButtonClick(Sender: TObject);
private
{ private declarations }
FSVNCommandLine: string;
public
{ public declarations }
procedure Execute(Data: PtrInt);
property SVNCommandLine: string read FSVNCommandLine write FSVNCommandLine;
end;
procedure ShowSVNCommitFrm(ACmdLine: string);
var
SVNCommitFrm: TSVNCommitFrm;
implementation
{$R *.lfm}
uses
SVNClasses;
procedure ShowSVNCommitFrm(ACmdLine: string);
begin
if not Assigned(SVNCommitFrm) then
SVNCommitFrm := TSVNCommitFrm.Create(nil);
SVNCommitFrm.SVNCommandLine:=ACmdLine;
SVNCommitFrm.Show;
end;
{ TSVNCommitFrm }
procedure TSVNCommitFrm.FormShow(Sender: TObject);
begin
Application.QueueAsyncCall(@Execute, 0);
end;
procedure TSVNCommitFrm.OKButtonClick(Sender: TObject);
begin
Close;
end;
procedure TSVNCommitFrm.Execute(Data: PtrInt);
begin
CmdLineToMemo(SVNCommandLine, SVNCommitMemo);
end;
procedure TSVNCommitFrm.FormCreate(Sender: TObject);
begin
Caption := rsLazarusSVNCommit;
end;
finalization
FreeAndNil(SVNCommitFrm);
end.