summaryrefslogtreecommitdiff
path: root/unit1.pas
blob: f6b029c29ab32c0e74e23453d8d830ffa4838de2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ExtCtrls, spectreUnit;

type

  { TForm1 }

  TForm1 = class(TForm)
    Image1: TImage;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormResize(Sender: TObject);
  private

  public
    spectres: array of tSpectre;
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormResize(Sender: TObject);
var
  i: longint;
begin
  image1.free;
  image1:=tImage.create(self);
  image1.parent:=self;
  image1.left:=0;
  image1.top:=0;
  image1.width:=form1.clientWidth;
  image1.height:=form1.clientHeight;
  image1.canvas.rectangle(-1,-1,image1.width+2,image1.height+2);
  for i:=0 to length(spectres)-1 do
    spectres[i].draw(image1.canvas);
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
  i: longint;
begin
  for i:=0 to length(spectres)-1 do
    spectres[i].free;
  setLength(spectres,0);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  setLength(spectres,1);
  spectres[0]:=tSpectre.create(100,150,pi/4,30);
end;

end.