close Warning: Can't synchronize with repository "(default)" (No changeset 184 in the repository). Look in the Trac log for more information.

source: trunk/Forms/UFormSettings.pas

Last change on this file was 145, checked in by chronos, 7 years ago
  • Modified: Do not create settings form on application start but just if form is opened.
  • Fixed: Removed various compilation warnings.
File size: 2.5 KB
Line 
1unit UFormSettings;
2
3{$mode delphi}
4
5interface
6
7uses
8 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
9 Spin, ComCtrls;
10
11type
12
13 { TFormSettings }
14
15 TFormSettings = class(TForm)
16 ButtonOk: TButton;
17 ButtonCancel: TButton;
18 CheckBoxAutoSaveTurn: TCheckBox;
19 CheckBox2: TCheckBox;
20 CheckBoxDevelMode: TCheckBox;
21 ComboBoxLanguage: TComboBox;
22 Label1: TLabel;
23 Label2: TLabel;
24 Label3: TLabel;
25 Label4: TLabel;
26 Label5: TLabel;
27 PageControl1: TPageControl;
28 SpinEditX: TSpinEdit;
29 SpinEditY: TSpinEdit;
30 SpinEditAnimSpeed: TSpinEdit;
31 TabSheetGeneral: TTabSheet;
32 TabSheetDebug: TTabSheet;
33 procedure CheckBox2Change(Sender: TObject);
34 procedure FormCreate(Sender: TObject);
35 procedure FormShow(Sender: TObject);
36 private
37 { private declarations }
38 public
39 procedure Load;
40 procedure Save;
41 end;
42
43var
44 FormSettings: TFormSettings;
45
46implementation
47
48{$R *.lfm}
49
50uses
51 UCore, ULanguages;
52
53{ TFormSettings }
54
55procedure TFormSettings.CheckBox2Change(Sender: TObject);
56begin
57 SpinEditX.Enabled := not CheckBox2.Checked;
58 SpinEditY.Enabled := not CheckBox2.Checked;
59end;
60
61procedure TFormSettings.FormCreate(Sender: TObject);
62begin
63 PageControl1.TabIndex := 0;
64 Core.CoolTranslator1.TranslateComponentRecursive(Self);
65end;
66
67procedure TFormSettings.FormShow(Sender: TObject);
68begin
69 {$IFDEF DEBUG}
70 TabSheetDebug.TabVisible := True;
71 {$ELSE}
72 TabSheetDebug.TabVisible := False;
73 {$ENDIF}
74end;
75
76procedure TFormSettings.Load;
77begin
78 Core.CoolTranslator1.LanguageListToStrings(ComboBoxLanguage.Items);
79 ComboBoxLanguage.ItemIndex := ComboBoxLanguage.Items.IndexOfObject(Core.CoolTranslator1.Language);
80 if ComboBoxLanguage.ItemIndex = -1 then ComboBoxLanguage.ItemIndex := 0;
81 CheckBoxDevelMode.Checked := Core.DevelMode;
82 SpinEditAnimSpeed.Value := Core.AnimationSpeed;
83 CheckBox2.Checked := Core.ScaleDPI1.AutoDetect;
84 SpinEditX.Value := Core.ScaleDPI1.DPI.X;
85 SpinEditY.Value := Core.ScaleDPI1.DPI.Y;
86 CheckBoxAutoSaveTurn.Checked := Core.AutoSaveEnabled;
87end;
88
89procedure TFormSettings.Save;
90begin
91 if ComboBoxLanguage.ItemIndex <> -1 then
92 Core.CoolTranslator1.Language := TLanguage(ComboBoxLanguage.Items.Objects[ComboBoxLanguage.ItemIndex]);
93 Core.DevelMode := CheckBoxDevelMode.Checked;
94 Core.AnimationSpeed := SpinEditAnimSpeed.Value;
95 Core.ScaleDPI1.AutoDetect := CheckBox2.Checked;
96 Core.ScaleDPI1.DPI := Point(SpinEditX.Value, SpinEditY.Value);
97 Core.AutoSaveEnabled := CheckBoxAutoSaveTurn.Checked;
98end;
99
100end.
101
Note: See TracBrowser for help on using the repository browser.