mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-12-16 06:00:32 +01:00
IDE: list compiler options sets
git-svn-id: trunk@27654 -
This commit is contained in:
parent
a072a15271
commit
e1a90e5911
@ -47,7 +47,102 @@ inherited BuildModesEditorFrame: TBuildModesEditorFrame
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'BuildModesGroupBox'
|
||||
ClientHeight = 137
|
||||
ClientWidth = 530
|
||||
TabOrder = 1
|
||||
object BuildModesStringGrid: TStringGrid
|
||||
AnchorSideTop.Control = BuildModeAddSpeedButton
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 115
|
||||
Top = 22
|
||||
Width = 530
|
||||
Align = alBottom
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
AutoFillColumns = True
|
||||
ColCount = 3
|
||||
Columns = <
|
||||
item
|
||||
ButtonStyle = cbsCheckboxColumn
|
||||
MaxSize = 50
|
||||
Title.Caption = 'Active'
|
||||
Width = 170
|
||||
end
|
||||
item
|
||||
ButtonStyle = cbsCheckboxColumn
|
||||
MaxSize = 50
|
||||
Title.Caption = 'InSession'
|
||||
Width = 170
|
||||
end
|
||||
item
|
||||
MaxSize = 500
|
||||
SizePriority = 100
|
||||
Title.Caption = 'Title'
|
||||
Width = 170
|
||||
end>
|
||||
FixedCols = 0
|
||||
TabOrder = 0
|
||||
ColWidths = (
|
||||
170
|
||||
170
|
||||
170
|
||||
)
|
||||
end
|
||||
object BuildModeAddSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = BuildModesGroupBox
|
||||
AnchorSideTop.Control = BuildModesGroupBox
|
||||
Left = 0
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
Color = clBtnFace
|
||||
NumGlyphs = 0
|
||||
OnClick = BuildModeAddSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object BuildModeDeleteSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = BuildModeAddSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = BuildModesGroupBox
|
||||
Left = 23
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
Color = clBtnFace
|
||||
NumGlyphs = 0
|
||||
OnClick = BuildModeDeleteSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object BuildModeMoveUpSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = BuildModeDeleteSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = BuildModesGroupBox
|
||||
Left = 46
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
Color = clBtnFace
|
||||
NumGlyphs = 0
|
||||
OnClick = BuildModeMoveUpSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object BuildModeMoveDownSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = BuildModeMoveUpSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = BuildModesGroupBox
|
||||
Left = 69
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
Color = clBtnFace
|
||||
NumGlyphs = 0
|
||||
OnClick = BuildModeMoveDownSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
end
|
||||
object Splitter1: TSplitter[2]
|
||||
Cursor = crVSplit
|
||||
|
||||
@ -45,14 +45,23 @@ type
|
||||
TBuildModesEditorFrame = class(TAbstractIDEOptionsEditor)
|
||||
BuildMacroValuesGroupBox: TGroupBox;
|
||||
BuildMacroValuesStringGrid: TStringGrid;
|
||||
BuildModeAddSpeedButton: TSpeedButton;
|
||||
BuildModeDeleteSpeedButton: TSpeedButton;
|
||||
BuildModeMoveDownSpeedButton: TSpeedButton;
|
||||
BuildModeMoveUpSpeedButton: TSpeedButton;
|
||||
BuildModesGroupBox: TGroupBox;
|
||||
BuildModesPopupMenu: TPopupMenu;
|
||||
BuildModesStringGrid: TStringGrid;
|
||||
Splitter1: TSplitter;
|
||||
procedure BuildMacroValuesStringGridEditingDone(Sender: TObject);
|
||||
procedure BuildMacroValuesStringGridSelectEditor(Sender: TObject; aCol,
|
||||
aRow: Integer; var Editor: TWinControl);
|
||||
procedure BuildMacroValuesStringGridSelection(Sender: TObject; aCol,
|
||||
aRow: Integer);
|
||||
procedure BuildModeAddSpeedButtonClick(Sender: TObject);
|
||||
procedure BuildModeDeleteSpeedButtonClick(Sender: TObject);
|
||||
procedure BuildModeMoveDownSpeedButtonClick(Sender: TObject);
|
||||
procedure BuildModeMoveUpSpeedButtonClick(Sender: TObject);
|
||||
private
|
||||
FMacroValues: TProjectBuildMacros;
|
||||
FProject: TProject;
|
||||
@ -62,6 +71,8 @@ type
|
||||
procedure Save(UpdateControls: boolean);
|
||||
procedure UpdateInheritedOptions;
|
||||
function FindOptionFrame(AClass: TComponentClass): TComponent;
|
||||
procedure FillBuildModesGrid;
|
||||
procedure UpdateBuildModeButtons;
|
||||
public
|
||||
constructor Create(TheOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
@ -153,6 +164,29 @@ begin
|
||||
CleanMacrosGrid;
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.BuildModeAddSpeedButtonClick(Sender: TObject);
|
||||
begin
|
||||
ShowMessage('ToDo: TBuildModesEditorFrame.BuildModeAddSpeedButtonClick');
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.BuildModeDeleteSpeedButtonClick(Sender: TObject
|
||||
);
|
||||
begin
|
||||
ShowMessage('ToDo: TBuildModesEditorFrame.BuildModeDeleteSpeedButtonClick');
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.BuildModeMoveDownSpeedButtonClick(
|
||||
Sender: TObject);
|
||||
begin
|
||||
ShowMessage('ToDo: TBuildModesEditorFrame.BuildModeMoveDownSpeedButtonClick');
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.BuildModeMoveUpSpeedButtonClick(Sender: TObject
|
||||
);
|
||||
begin
|
||||
ShowMessage('ToDo: TBuildModesEditorFrame.BuildModeMoveUpSpeedButtonClick');
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.UpdateMacrosControls;
|
||||
var
|
||||
Grid: TStringGrid;
|
||||
@ -306,6 +340,39 @@ begin
|
||||
Result:=Search(GetParentForm(Self));
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.FillBuildModesGrid;
|
||||
var
|
||||
i: Integer;
|
||||
CurMode: TProjectBuildMode;
|
||||
begin
|
||||
if AProject=nil then exit;
|
||||
BuildModesStringGrid.RowCount:=AProject.BuildModes.Count+1;
|
||||
|
||||
for i:=0 to AProject.BuildModes.Count-1 do begin
|
||||
CurMode:=AProject.BuildModes[i];
|
||||
// active
|
||||
if CurMode=AProject.ActiveBuildMode then
|
||||
BuildModesStringGrid.Cells[0,i+1]:=BuildModesStringGrid.Columns[0].ValueChecked
|
||||
else
|
||||
BuildModesStringGrid.Cells[0,i+1]:=BuildModesStringGrid.Columns[0].ValueUnchecked;
|
||||
// in session
|
||||
if CurMode.InSession then
|
||||
BuildModesStringGrid.Cells[1,i+1]:=BuildModesStringGrid.Columns[0].ValueChecked
|
||||
else
|
||||
BuildModesStringGrid.Cells[1,i+1]:=BuildModesStringGrid.Columns[0].ValueUnchecked;
|
||||
// identifier
|
||||
BuildModesStringGrid.Cells[2,i+1]:=CurMode.Identifier;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TBuildModesEditorFrame.UpdateBuildModeButtons;
|
||||
begin
|
||||
BuildModeDeleteSpeedButton.Enabled:=BuildModesStringGrid.Row>1;
|
||||
BuildModeMoveUpSpeedButton.Enabled:=BuildModesStringGrid.Row>1;
|
||||
BuildModeMoveDownSpeedButton.Enabled:=
|
||||
BuildModesStringGrid.Row<BuildModesStringGrid.RowCount-1;
|
||||
end;
|
||||
|
||||
constructor TBuildModesEditorFrame.Create(TheOwner: TComponent);
|
||||
begin
|
||||
inherited Create(TheOwner);
|
||||
@ -327,15 +394,18 @@ procedure TBuildModesEditorFrame.Setup(ADialog: TAbstractOptionsEditorDialog);
|
||||
var
|
||||
Grid: TStringGrid;
|
||||
begin
|
||||
BuildModesGroupBox.Caption:='Build modes';
|
||||
BuildModesGroupBox.Caption:=lisBuildModes;
|
||||
BuildModesStringGrid.Cells[0, 0]:=lisActive;
|
||||
BuildModesStringGrid.Cells[1, 0]:=lisInSession;
|
||||
BuildModesStringGrid.Cells[2, 0]:=lisDebugOptionsFrmName;
|
||||
|
||||
BuildMacroValuesGroupBox.Caption:='Set macro values';
|
||||
BuildMacroValuesGroupBox.Caption:=lisSetMacroValues;
|
||||
Grid:=BuildMacroValuesStringGrid;
|
||||
Grid.Columns.Add;
|
||||
Grid.Columns[0].Title.Caption:='Macro name';
|
||||
Grid.Columns[0].Title.Caption:=lisMacroName;
|
||||
Grid.Columns[0].ButtonStyle:=cbsPickList;
|
||||
Grid.Columns.Add;
|
||||
Grid.Columns[1].Title.Caption:='Macro value';
|
||||
Grid.Columns[1].Title.Caption:=lisMacroValue;
|
||||
Grid.Columns[1].ButtonStyle:=cbsPickList;
|
||||
end;
|
||||
|
||||
@ -349,6 +419,8 @@ begin
|
||||
FProject:=PCOptions.LazProject;
|
||||
MacroValues.Assign(FProject.MacroValues);
|
||||
UpdateMacrosControls;
|
||||
FillBuildModesGrid;
|
||||
UpdateBuildModeButtons;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
@ -4333,6 +4333,9 @@ resourcestring
|
||||
lisDebugOptionsFrmOSExceptions = 'OS Exceptions';
|
||||
lisDebugOptionsFrmSignals = 'Signals';
|
||||
lisDebugOptionsFrmName = 'Name';
|
||||
lisSetMacroValues = 'Set macro values';
|
||||
lisMacroName = 'Macro name';
|
||||
lisMacroValue = 'Macro value';
|
||||
lisDebugOptionsFrmID = 'ID';
|
||||
lisDebugOptionsFrmHandledBy = 'Handled by';
|
||||
lisDebugOptionsFrmResume = 'Resume';
|
||||
@ -4897,6 +4900,9 @@ resourcestring
|
||||
+'needed for functions like find declaration. While scanning you can edit '
|
||||
+'sources and compile, but functions like find declaration will show unit-'
|
||||
+'not-found errors. This can take a minute.';
|
||||
lisActive = 'Active';
|
||||
lisBuildModes = 'Build modes';
|
||||
lisInSession = 'In session';
|
||||
|
||||
implementation
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user