spiegel-keyman/developer/src/tike/project/Keyman.Developer.UI.Project.UfrmProjectSettings.pas

79 lines
2.5 KiB
ObjectPascal

(*
Name: Keyman.Developer.UI.Project.UfrmProjectSettings
Copyright: Copyright (C) SIL International.
Documentation:
Description:
Create Date: 4 May 2015
Modified Date: 24 Aug 2015
Authors: mcdurdin
Related Files:
Dependencies:
Bugs:
Todo:
Notes:
History: 04 May 2015 - mcdurdin - I4688 - V9.0 - Add build path to project settings
24 Aug 2015 - mcdurdin - I4865 - Add treat hints and warnings as errors into project
24 Aug 2015 - mcdurdin - I4866 - Add warn on deprecated features to project and compile
*)
unit Keyman.Developer.UI.Project.UfrmProjectSettings; // I4688
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TfrmProjectSettings = class(TForm)
lblOutputPath: TLabel;
editOutputPath: TEdit;
Label2: TLabel;
cmdOK: TButton;
cmdCancel: TButton;
Label1: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
chkCompilerWarningsAsErrors: TCheckBox;
chkWarnDeprecatedCode: TCheckBox;
chkCheckFilenameConventions: TCheckBox;
procedure FormCreate(Sender: TObject);
procedure cmdOKClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
uses
Keyman.Developer.System.Project.Project;
procedure TfrmProjectSettings.cmdOKClick(Sender: TObject);
begin
FGlobalProject.Options.BuildPath := Trim(editOutputPath.Text);
FGlobalProject.Options.CompilerWarningsAsErrors := chkCompilerWarningsAsErrors.Checked; // I4865
FGlobalProject.Options.WarnDeprecatedCode := chkWarnDeprecatedCode.Checked; // I4866
FGlobalProject.Options.CheckFilenameConventions := chkCheckFilenameConventions.Checked;
FGlobalProject.Save;
ModalResult := mrOk;
end;
procedure TfrmProjectSettings.FormCreate(Sender: TObject);
begin
editOutputPath.Text := FGlobalProject.Options.BuildPath;
chkCompilerWarningsAsErrors.Checked := FGlobalProject.Options.CompilerWarningsAsErrors; // I4865
chkWarnDeprecatedCode.Checked := FGlobalProject.Options.WarnDeprecatedCode; // I4866
chkCheckFilenameConventions.Checked := FGlobalProject.Options.CheckFilenameConventions;
if editOutputPath.Text = '' then editOutputPath.Text := '$SOURCEPATH';
end;
end.