lazarus/ide/frames/compiler_verbosity_options.pas
2010-01-14 10:17:35 +00:00

140 lines
4.1 KiB
ObjectPascal

unit compiler_verbosity_options;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
ExtCtrls, StdCtrls, IDEOptionsIntf, Project, CompilerOptions,
LazarusIDEStrConsts;
type
{ TCompilerVerbosityOptionsFrame }
TCompilerVerbosityOptionsFrame = class(TAbstractIDEOptionsEditor)
edtErrorCnt: TEdit;
grpErrorCnt: TGroupBox;
grpVerbosity: TCheckGroup;
public
function GetTitle: string; override;
procedure Setup(ADialog: TAbstractOptionsEditorDialog); override;
procedure ReadSettings(AOptions: TAbstractIDEOptions); override;
procedure WriteSettings(AOptions: TAbstractIDEOptions); override;
class function SupportedOptionsClass: TAbstractIDEOptionsClass; override;
end;
implementation
{$R *.lfm}
{ TCompilerVerbosityOptionsFrame }
function TCompilerVerbosityOptionsFrame.GetTitle: string;
begin
Result := dlgCOVerbosity;
end;
procedure TCompilerVerbosityOptionsFrame.Setup(ADialog: TAbstractOptionsEditorDialog);
begin
with grpVerbosity do
begin
Caption := dlgVerbosity;
AutoSize := True;
Items.Add(dlgCOShowErr + ' (-ve)');
Items.Add(dlgHintsParameterSenderNotUsed + ' (none)');
Items.Add(dlgShowWarnings + ' (-vw)');
Items.Add(dlgShowDebugInfo + ' (-vd)');
Items.Add(dlgShowNotes + ' (-vn)');
Items.Add(dlgShowUsedFiles + ' (-vu)');
Items.Add(dlgShowHint + ' (-vh)');
Items.Add(dlgShowTriedFiles + ' (-vt)');
Items.Add(dlgShowGeneralInfo + ' (-vi)');
Items.Add(dlgShowDefinedMacros + ' (-vm)');
Items.Add(dlgShowCompilingLineNumbers + ' (-vl)');
Items.Add(dlgShowCompiledProcedures + ' (-vp)');
Items.Add(dlgShowProcsError + ' (-vb)');
Items.Add(dlgShowConditionals + ' (-vc)');
Items.Add(dlgShowEverything + ' (-va)');
Items.Add(dlgShowExecutableInfo + ' (-vx)');
Items.Add(dlgShowSummary + ' (none)');
Items.Add(dlgShowNothing + ' (-v0)');
Items.Add(dlgHintsUnused + ' (none)');
Items.Add(dlgWriteFPCLogo + ' (-l)');
end;
grpErrorCnt.Caption := dlgStopAfterNrErr + ' (-Se)';
edtErrorCnt.Text := '';
end;
procedure TCompilerVerbosityOptionsFrame.ReadSettings(AOptions: TAbstractIDEOptions);
begin
with AOptions as TBaseCompilerOptions, grpVerbosity do
begin
Checked[0] := ShowErrors;
Checked[1] := ShowHintsForSenderNotUsed;
Checked[2] := ShowWarn;
Checked[3] := ShowDebugInfo;
Checked[4] := ShowNotes;
Checked[5] := ShowUsedFiles;
Checked[6] := ShowHints;
Checked[7] := ShowTriedFiles;
Checked[8] := ShowGenInfo;
Checked[9] := ShowDefMacros;
Checked[10] := ShowLineNum;
Checked[11] := ShowCompProc;
Checked[12] := ShowAllProcsOnError;
Checked[13] := ShowCond;
Checked[14] := ShowAll;
Checked[15] := ShowExecInfo;
Checked[16] := ShowSummary;
Checked[17] := ShowNothing;
Checked[18] := ShowHintsForUnusedUnitsInMainSrc;
Checked[19] := WriteFPCLogo;
edtErrorCnt.Text := IntToStr(StopAfterErrCount);
end;
end;
procedure TCompilerVerbosityOptionsFrame.WriteSettings(AOptions: TAbstractIDEOptions);
begin
with AOptions as TBaseCompilerOptions, grpVerbosity do
begin
ShowErrors := Checked[0];
ShowHintsForSenderNotUsed := Checked[1];
ShowWarn := Checked[2];
ShowDebugInfo := Checked[3];
ShowNotes := Checked[4];
ShowUsedFiles := Checked[5];
ShowHints := Checked[6];
ShowTriedFiles := Checked[7];
ShowGenInfo := Checked[8];
ShowDefMacros := Checked[9];
ShowLineNum := Checked[10];
ShowCompProc := Checked[11];
ShowAllProcsOnError := Checked[12];
ShowCond := Checked[13];
ShowAll := Checked[14];
ShowExecInfo := Checked[15];
ShowSummary := Checked[16];
ShowNothing := Checked[17];
ShowHintsForUnusedUnitsInMainSrc := Checked[18];
WriteFPCLogo := Checked[19];
StopAfterErrCount := StrToIntDef(edtErrorCnt.Text, 1);
end;
end;
class function TCompilerVerbosityOptionsFrame.SupportedOptionsClass: TAbstractIDEOptionsClass;
begin
Result := TBaseCompilerOptions;
end;
initialization
RegisterIDEOptionsEditor(GroupCompiler, TCompilerVerbosityOptionsFrame,
CompilerOptionsVerbosity);
end.