Subversion Repositories autosfx

Rev

Rev 1 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 daniel-mar 1
unit ExtractorError;
2
 
3
interface
4
 
5
uses
4 daniel-mar 6
  Forms, StdCtrls, ExtCtrls, Controls, Graphics, Classes, Dialogs;
1 daniel-mar 7
 
8
type
9
  TErrorForm = class(TForm)
10
    ErrorList: TListBox;
11
    ErrorImg: TImage;
12
    ErrorLabel: TLabel;
13
    OKBtn: TButton;
4 daniel-mar 14
    SaveBtn: TButton;
15
    SaveDialog: TSaveDialog;
16
    procedure FormResize(Sender: TObject);
17
    procedure SaveBtnClick(Sender: TObject);
1 daniel-mar 18
  public
19
    function ErrorsAvailable: boolean;
20
    procedure NewError(Filename: string);
21
  end;
22
 
23
var
24
  ErrorForm: TErrorForm;
25
 
26
implementation
27
 
28
{$R *.dfm}
29
 
30
function TErrorForm.ErrorsAvailable: boolean;
31
begin
32
  result := ErrorList.Items.Count > 0;
33
end;
34
 
4 daniel-mar 35
procedure TErrorForm.FormResize(Sender: TObject);
36
begin
37
  ErrorList.Width := ClientWidth - ErrorList.Left - ErrorImg.Left;
38
  ErrorList.Height := ClientHeight - ErrorList.Top - (2 * ErrorImg.Left + OkBtn.Height);
39
  OkBtn.Top := ErrorList.Top + ErrorList.Height + ErrorImg.Left;
40
  OkBtn.Left := ErrorList.Left + ErrorList.Width - OkBtn.Width;
41
  SaveBtn.Top := OkBtn.Top;
42
end;
43
 
1 daniel-mar 44
procedure TErrorForm.NewError(Filename: string);
45
begin
46
  // In future: Also add reason into list?
47
  ErrorList.Items.Add(Filename);
48
end;
49
 
4 daniel-mar 50
procedure TErrorForm.SaveBtnClick(Sender: TObject);
51
begin
52
  if SaveDialog.Execute then
53
  begin
54
    ErrorList.Items.SaveToFile(SaveDialog.FileName);
55
  end;
56
end;
57
 
1 daniel-mar 58
end.