source: branches/ByteArray/Project.pas

Last change on this file was 48, checked in by chronos, 7 months ago
  • Fixed: Resolved unit names conflict with Common package.
File size: 1.1 KB
Line 
1unit Project;
2
3interface
4
5uses
6 Classes, SysUtils, Common.LastOpenedList;
7
8type
9
10 { TProject }
11
12 TProject = class
13 FileName: string;
14 Modified: Boolean;
15 RecentFiles: TLastOpenedList;
16 procedure New;
17 procedure Open(AFileName: string);
18 procedure Save;
19 procedure SaveAs(AFileName: string);
20 procedure Close;
21 constructor Create;
22 destructor Destroy; override;
23 end;
24
25implementation
26
27{ TProject }
28
29procedure TProject.New;
30begin
31 FileName := 'New project.prj';
32 Modified := False;
33end;
34
35procedure TProject.Open(AFileName: string);
36begin
37 FileName := AFileName;
38 RecentFiles.AddItem(AFileName);
39 Modified := False;
40end;
41
42procedure TProject.Save;
43begin
44 Modified := False;
45end;
46
47procedure TProject.SaveAs(AFileName: string);
48begin
49 FileName := AFileName;
50 RecentFiles.AddItem(AFileName);
51 Save;
52end;
53
54procedure TProject.Close;
55begin
56 if Modified then Save;
57 FileName := '';
58end;
59
60constructor TProject.Create;
61begin
62 RecentFiles := TLastOpenedList.Create(nil);
63end;
64
65destructor TProject.Destroy;
66begin
67 FreeAndNil(RecentFiles);
68 inherited;
69end;
70
71end.
72
Note: See TracBrowser for help on using the repository browser.