diff --git a/.gitattributes b/.gitattributes index e5c7463b39..7b239851a8 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3411,6 +3411,9 @@ ide/frames/compiler_parsing_options.pas svneol=native#text/plain ide/frames/compiler_path_options.lfm svneol=native#text/plain ide/frames/compiler_path_options.lrs svneol=native#text/plain ide/frames/compiler_path_options.pas svneol=native#text/plain +ide/frames/compiler_verbosity_options.lfm svneol=native#text/plain +ide/frames/compiler_verbosity_options.lrs svneol=native#text/pascal +ide/frames/compiler_verbosity_options.pas svneol=native#text/pascal ide/frames/desktop_options.lfm svneol=native#text/plain ide/frames/desktop_options.lrs svneol=native#text/pascal ide/frames/desktop_options.pas svneol=native#text/pascal diff --git a/ide/frames/compiler_verbosity_options.lfm b/ide/frames/compiler_verbosity_options.lfm new file mode 100644 index 0000000000..f688ce91e6 --- /dev/null +++ b/ide/frames/compiler_verbosity_options.lfm @@ -0,0 +1,50 @@ +inherited CompilerVerbosityOptionsFrame: TCompilerVerbosityOptionsFrame + Height = 538 + Width = 697 + ClientHeight = 538 + ClientWidth = 697 + DesignLeft = 396 + DesignTop = 187 + object grpVerbosity: TCheckGroup[0] + Left = 0 + Height = 481 + Top = 0 + Width = 697 + Align = alClient + AutoFill = True + Caption = 'grpVerbosity' + ChildSizing.LeftRightSpacing = 6 + ChildSizing.TopBottomSpacing = 6 + ChildSizing.EnlargeHorizontal = crsHomogenousChildResize + ChildSizing.EnlargeVertical = crsHomogenousChildResize + ChildSizing.ShrinkHorizontal = crsScaleChilds + ChildSizing.ShrinkVertical = crsScaleChilds + ChildSizing.Layout = cclLeftToRightThenTopToBottom + ChildSizing.ControlsPerLine = 2 + Columns = 2 + TabOrder = 0 + end + object grpErrorCnt: TGroupBox[1] + Left = 0 + Height = 51 + Top = 487 + Width = 697 + Align = alBottom + AutoSize = True + BorderSpacing.Top = 6 + Caption = 'grpErrorCnt' + ClientHeight = 33 + ClientWidth = 693 + TabOrder = 1 + object edtErrorCnt: TEdit + Left = 6 + Height = 21 + Top = 6 + Width = 681 + Align = alTop + BorderSpacing.Around = 6 + TabOrder = 0 + Text = 'edtErrorCnt' + end + end +end diff --git a/ide/frames/compiler_verbosity_options.lrs b/ide/frames/compiler_verbosity_options.lrs new file mode 100644 index 0000000000..2cf9937dd9 --- /dev/null +++ b/ide/frames/compiler_verbosity_options.lrs @@ -0,0 +1,21 @@ +{ This is an automatically generated lazarus resource file } + +LazarusResources.Add('TCompilerVerbosityOptionsFrame','FORMDATA',[ + 'TPF0'#241#30'TCompilerVerbosityOptionsFrame'#29'CompilerVerbosityOptionsFram' + +'e'#6'Height'#3#26#2#5'Width'#3#185#2#12'ClientHeight'#3#26#2#11'ClientWidth' + +#3#185#2#10'DesignLeft'#3#140#1#9'DesignTop'#3#187#0#0#242#2#0#11'TCheckGrou' + +'p'#12'grpVerbosity'#4'Left'#2#0#6'Height'#3#225#1#3'Top'#2#0#5'Width'#3#185 + +#2#5'Align'#7#8'alClient'#8'AutoFill'#9#7'Caption'#6#12'grpVerbosity'#28'Chi' + +'ldSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29'Chil' + +'dSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizing.En' + +'largeVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkHorizont' + +'al'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleChilds' + +#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSizing.C' + +'ontrolsPerLine'#2#2#7'Columns'#2#2#8'TabOrder'#2#0#0#0#242#2#1#9'TGroupBox' + +#11'grpErrorCnt'#4'Left'#2#0#6'Height'#2'3'#3'Top'#3#231#1#5'Width'#3#185#2#5 + +'Align'#7#8'alBottom'#8'AutoSize'#9#17'BorderSpacing.Top'#2#6#7'Caption'#6#11 + +'grpErrorCnt'#12'ClientHeight'#2'!'#11'ClientWidth'#3#181#2#8'TabOrder'#2#1#0 + +#5'TEdit'#11'edtErrorCnt'#4'Left'#2#6#6'Height'#2#21#3'Top'#2#6#5'Width'#3 + +#169#2#5'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#8'TabOrder'#2#0#4'Te' + +'xt'#6#11'edtErrorCnt'#0#0#0#0 +]); diff --git a/ide/frames/compiler_verbosity_options.pas b/ide/frames/compiler_verbosity_options.pas new file mode 100644 index 0000000000..6388245bf9 --- /dev/null +++ b/ide/frames/compiler_verbosity_options.pas @@ -0,0 +1,139 @@ +unit compiler_verbosity_options; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, FileUtil, LResources, 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 + +{ 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 TProjectCompilerOptions, 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 TProjectCompilerOptions, 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 := TProjectCompilerOptions; +end; + +initialization + {$I compiler_verbosity_options.lrs} + RegisterIDEOptionsEditor(GroupCompiler, TCompilerVerbosityOptionsFrame, + CompilerOptionsVerbosity); + +end. + diff --git a/ide/lazarus.lpi b/ide/lazarus.lpi index bd2813fff3..aeae5c1520 100644 --- a/ide/lazarus.lpi +++ b/ide/lazarus.lpi @@ -43,7 +43,7 @@ - + @@ -484,6 +484,13 @@ + + + + + + + diff --git a/ide/main.pp b/ide/main.pp index 14b94a605a..87a2164e16 100644 --- a/ide/main.pp +++ b/ide/main.pp @@ -127,7 +127,7 @@ uses project_misc_options, // project compiler options compiler_path_options, compiler_parsing_options, compiler_codegen_options, - compiler_linking_options, compiler_messages_options, + compiler_linking_options, compiler_verbosity_options, compiler_messages_options, PublishModule, EnvironmentOpts, TransferMacros, KeyMapping, IDETranslations, IDEProcs, ExtToolDialog, ExtToolEditDlg, OutputFilter, JumpHistoryView,