-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathOPTIONS.pas
99 lines (84 loc) · 2.43 KB
/
OPTIONS.pas
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
unit OPTIONS;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, JEWEL, IniFiles;
type
tForm2 = class(TForm)
lblX: TLabel;
scrlX: TScrollBar;
lblY: TLabel;
scrlY: TScrollBar;
btnCancel: TButton;
btnOk: TButton;
lblXval: TLabel;
lblYval: TLabel;
scrlColours: TScrollBar;
lblColours: TLabel;
lblColoursVal: TLabel;
btnDefault: TButton;
procedure btnCancelClick(Sender: TObject);
procedure btnOkClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure scrlXChange(Sender: TObject);
procedure scrlYChange(Sender: TObject);
procedure scrlColoursChange(Sender: TObject);
procedure btnDefaultClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: tForm2;
implementation
{$R *.dfm}
procedure tForm2.btnCancelClick(Sender: TObject);
begin
Close;
end;
procedure tForm2.btnDefaultClick(Sender: TObject);
begin
scrlX.Position := 8;
scrlY.Position := 8;
scrlColours.Position := 6;
end;
procedure tForm2.btnOkClick(Sender: TObject);
var
myINI: TINIFile;
begin
Form1.BoardSizeX := scrlX.Position;
Form1.BoardSizeY := scrlY.Position;
Form1.NumColours := scrlColours.Position;
//Save settings to INI file
myINI := TINIFile.Create(ExtractFilePath(Application.EXEName) + 'SliJewel.ini');
myINI.WriteInteger('Settings', 'BoardSizeX', Form1.BoardSizeX);
myINI.WriteInteger('Settings', 'BoardSizeY', Form1.BoardSizeY);
myINI.WriteInteger('Settings', 'NumColours', Form1.NumColours);
myINI.Free;
Close;
end;
procedure tForm2.FormCreate(Sender: TObject);
begin
scrlX.Position := Form1.BoardSizeX;
scrlX.Max := MaxBoardSize;
lblXval.Caption := IntToStr(scrlX.Position);
scrlY.Position := Form1.BoardSizeY;
scrlY.Max := MaxBoardSize;
lblYval.Caption := IntToStr(scrlY.Position);
scrlColours.Position := Form1.NumColours;
lblColoursVal.Caption := IntToStr(scrlColours.Position);
end;
procedure tForm2.scrlXChange(Sender: TObject);
begin
lblXval.Caption := IntToStr(scrlX.Position);
end;
procedure tForm2.scrlYChange(Sender: TObject);
begin
lblYval.Caption := IntToStr(scrlY.Position);
end;
procedure tForm2.scrlColoursChange(Sender: TObject);
begin
lblColoursVal.Caption := IntToStr(scrlColours.Position);
end;
end.