VistA-cprs/CPRS-Chart/Templates/fTemplateImport.pas

83 lines
1.9 KiB
Plaintext

unit fTemplateImport;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Gauges, StdCtrls, ComCtrls;
type
TfrmTemplateImport = class(TForm)
animImport: TAnimate;
btnCancel: TButton;
lblImporting: TStaticText;
gaugeImport: TGauge;
procedure btnCancelClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
procedure StartImportMessage(AFileName: string; MaxCount: integer);
function UpdateImportMessage(CurrentCount: integer): boolean;
procedure StopImportMessage;
implementation
{$R *.DFM}
uses
ORFn;
var
frmTemplateImport: TfrmTemplateImport = nil;
procedure StartImportMessage(AFileName: string; MaxCount: integer);
begin
if not assigned(frmTemplateImport) then
begin
frmTemplateImport := TfrmTemplateImport.Create(Application);
ResizeAnchoredFormToFont(frmTemplateImport);
with frmTemplateImport do
begin
lblImporting.Caption := lblImporting.Caption + AFileName;
lblImporting.Hint := lblImporting.Caption;
gaugeImport.MaxValue := MaxCount;
Show;
Application.ProcessMessages;
end;
end;
end;
function UpdateImportMessage(CurrentCount: integer): boolean;
begin
if assigned(frmTemplateImport) then
begin
Result := (not frmTemplateImport.btnCancel.Enabled);
if not Result then
begin
frmTemplateImport.gaugeImport.Progress := CurrentCount;
Application.ProcessMessages;
end;
end
else
Result := TRUE;
end;
procedure StopImportMessage;
begin
if assigned(frmTemplateImport) then
FreeAndNil(frmTemplateImport);
end;
procedure TfrmTemplateImport.btnCancelClick(Sender: TObject);
begin
lblImporting.Caption := 'Canceling...';
btnCancel.Enabled := FALSE;
Application.ProcessMessages;
end;
end.