mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-11 09:36:10 +02:00
IDE: start to use the new build mode window by default.
git-svn-id: trunk@41323 -
This commit is contained in:
parent
7b26e3475c
commit
348410562f
2
.gitattributes
vendored
2
.gitattributes
vendored
@ -5011,8 +5011,6 @@ ide/fpmake.pp svneol=native#text/plain
|
|||||||
ide/frames/atom_checkboxes_options.pas svneol=native#text/pascal
|
ide/frames/atom_checkboxes_options.pas svneol=native#text/pascal
|
||||||
ide/frames/backup_options.lfm svneol=native#text/plain
|
ide/frames/backup_options.lfm svneol=native#text/plain
|
||||||
ide/frames/backup_options.pas svneol=native#text/pascal
|
ide/frames/backup_options.pas svneol=native#text/pascal
|
||||||
ide/frames/buildmodeseditor.lfm svneol=native#text/plain
|
|
||||||
ide/frames/buildmodeseditor.pas svneol=native#text/plain
|
|
||||||
ide/frames/codeexplorer_categories_options.lfm svneol=native#text/plain
|
ide/frames/codeexplorer_categories_options.lfm svneol=native#text/plain
|
||||||
ide/frames/codeexplorer_categories_options.pas svneol=native#text/pascal
|
ide/frames/codeexplorer_categories_options.pas svneol=native#text/pascal
|
||||||
ide/frames/codeexplorer_update_options.lfm svneol=native#text/plain
|
ide/frames/codeexplorer_update_options.lfm svneol=native#text/plain
|
||||||
|
@ -1,129 +0,0 @@
|
|||||||
object BuildModesEditorFrame: TBuildModesEditorFrame
|
|
||||||
Left = 0
|
|
||||||
Height = 421
|
|
||||||
Top = 0
|
|
||||||
Width = 550
|
|
||||||
ClientHeight = 421
|
|
||||||
ClientWidth = 550
|
|
||||||
TabOrder = 0
|
|
||||||
DesignLeft = 337
|
|
||||||
DesignTop = 116
|
|
||||||
object BuildModesGroupBox: TGroupBox
|
|
||||||
Left = 6
|
|
||||||
Height = 250
|
|
||||||
Top = 6
|
|
||||||
Width = 538
|
|
||||||
Align = alTop
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'BuildModesGroupBox'
|
|
||||||
ClientHeight = 233
|
|
||||||
ClientWidth = 534
|
|
||||||
TabOrder = 0
|
|
||||||
object BuildModesStringGrid: TStringGrid
|
|
||||||
AnchorSideTop.Control = BuildModeAddSpeedButton
|
|
||||||
AnchorSideTop.Side = asrBottom
|
|
||||||
Left = 0
|
|
||||||
Height = 211
|
|
||||||
Top = 22
|
|
||||||
Width = 534
|
|
||||||
Align = alBottom
|
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
|
||||||
AutoFillColumns = True
|
|
||||||
ColCount = 3
|
|
||||||
Columns = <
|
|
||||||
item
|
|
||||||
ButtonStyle = cbsCheckboxColumn
|
|
||||||
MaxSize = 50
|
|
||||||
Title.Caption = 'Active'
|
|
||||||
Width = 176
|
|
||||||
end
|
|
||||||
item
|
|
||||||
ButtonStyle = cbsCheckboxColumn
|
|
||||||
MaxSize = 50
|
|
||||||
Title.Caption = 'InSession'
|
|
||||||
Width = 176
|
|
||||||
end
|
|
||||||
item
|
|
||||||
MaxSize = 500
|
|
||||||
SizePriority = 100
|
|
||||||
Title.Caption = 'Title'
|
|
||||||
Width = 178
|
|
||||||
end>
|
|
||||||
FixedCols = 0
|
|
||||||
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goEditing, goSmoothScroll]
|
|
||||||
TabOrder = 0
|
|
||||||
OnCheckboxToggled = BuildModesStringGridCheckboxToggled
|
|
||||||
OnSelection = BuildModesStringGridSelection
|
|
||||||
OnValidateEntry = BuildModesStringGridValidateEntry
|
|
||||||
ColWidths = (
|
|
||||||
176
|
|
||||||
176
|
|
||||||
178
|
|
||||||
)
|
|
||||||
end
|
|
||||||
object BuildModeAddSpeedButton: TSpeedButton
|
|
||||||
AnchorSideLeft.Control = BuildModesGroupBox
|
|
||||||
AnchorSideTop.Control = BuildModesGroupBox
|
|
||||||
Left = 0
|
|
||||||
Height = 22
|
|
||||||
Top = 0
|
|
||||||
Width = 23
|
|
||||||
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
|
|
||||||
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
|
|
||||||
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
|
|
||||||
OnClick = BuildModeMoveDownSpeedButtonClick
|
|
||||||
ShowHint = True
|
|
||||||
ParentShowHint = False
|
|
||||||
end
|
|
||||||
object BuildModeDiffSpeedButton: TSpeedButton
|
|
||||||
AnchorSideLeft.Control = BuildModeMoveDownSpeedButton
|
|
||||||
AnchorSideLeft.Side = asrBottom
|
|
||||||
AnchorSideTop.Control = BuildModesGroupBox
|
|
||||||
Left = 102
|
|
||||||
Height = 22
|
|
||||||
Top = 0
|
|
||||||
Width = 23
|
|
||||||
BorderSpacing.Left = 10
|
|
||||||
OnClick = BuildModeDiffSpeedButtonClick
|
|
||||||
ShowHint = True
|
|
||||||
ParentShowHint = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object BuildModesPopupMenu: TPopupMenu
|
|
||||||
left = 180
|
|
||||||
top = 60
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,554 +0,0 @@
|
|||||||
{
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* This source is free software; you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU General Public License as published by *
|
|
||||||
* the Free Software Foundation; either version 2 of the License, or *
|
|
||||||
* (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This code is distributed in the hope that it will be useful, but *
|
|
||||||
* WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
|
|
||||||
* General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* A copy of the GNU General Public License is available on the World *
|
|
||||||
* Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also *
|
|
||||||
* obtain it by writing to the Free Software Foundation, *
|
|
||||||
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
Abstract:
|
|
||||||
The frame for 'build modes' on the compiler options.
|
|
||||||
Allows to add/delete/edit build modes and build macro values.
|
|
||||||
It does not allow to define new build macros, only values.
|
|
||||||
}
|
|
||||||
unit BuildModesEditor;
|
|
||||||
|
|
||||||
{$mode objfpc}{$H+}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Math, Classes, SysUtils, LCLProc, Controls, FileUtil, Forms,
|
|
||||||
Grids, Graphics, Menus, ComCtrls, Dialogs, AvgLvlTree, DefineTemplates,
|
|
||||||
StdCtrls, GraphMath, ExtCtrls, Buttons,
|
|
||||||
ProjectIntf, IDEImagesIntf, IDEOptionsIntf, CompOptsIntf,
|
|
||||||
PackageDefs, compiler_inherited_options, TransferMacros,
|
|
||||||
PathEditorDlg, Project, PackageSystem, LazarusIDEStrConsts, CompilerOptions,
|
|
||||||
IDEProcs, BuildModeDiffDlg, Compiler_ModeMatrix;
|
|
||||||
|
|
||||||
type
|
|
||||||
|
|
||||||
{ TBuildModesEditorFrame }
|
|
||||||
|
|
||||||
TBuildModesEditorFrame = class(TAbstractIDEOptionsEditor)
|
|
||||||
BuildModeDiffSpeedButton: TSpeedButton;
|
|
||||||
BuildModeAddSpeedButton: TSpeedButton;
|
|
||||||
BuildModeDeleteSpeedButton: TSpeedButton;
|
|
||||||
BuildModeMoveDownSpeedButton: TSpeedButton;
|
|
||||||
BuildModeMoveUpSpeedButton: TSpeedButton;
|
|
||||||
BuildModesGroupBox: TGroupBox;
|
|
||||||
BuildModesPopupMenu: TPopupMenu;
|
|
||||||
BuildModesStringGrid: TStringGrid;
|
|
||||||
procedure BuildModeDiffSpeedButtonClick(Sender: TObject);
|
|
||||||
procedure BuildModeAddSpeedButtonClick(Sender: TObject);
|
|
||||||
procedure BuildModeDeleteSpeedButtonClick(Sender: TObject);
|
|
||||||
procedure BuildModeMoveDownSpeedButtonClick(Sender: TObject);
|
|
||||||
procedure BuildModeMoveUpSpeedButtonClick(Sender: TObject);
|
|
||||||
procedure BuildModesStringGridCheckboxToggled(sender: TObject; aCol,
|
|
||||||
aRow: Integer; aState: TCheckboxState);
|
|
||||||
procedure BuildModesStringGridSelection(Sender: TObject; aCol, aRow: Integer);
|
|
||||||
procedure BuildModesStringGridValidateEntry(sender: TObject; aCol,
|
|
||||||
aRow: Integer; const OldValue: string; var NewValue: String);
|
|
||||||
private
|
|
||||||
FLoadShowSessionFromProject: boolean;
|
|
||||||
FProject: TProject;
|
|
||||||
FShowSession: boolean;
|
|
||||||
FSwitchingMode: boolean;
|
|
||||||
fModeActiveCol: integer;
|
|
||||||
fModeInSessionCol: integer;
|
|
||||||
fModeNameCol: integer;
|
|
||||||
procedure UpdateInheritedOptions;
|
|
||||||
procedure FillBuildModesGrid;
|
|
||||||
procedure UpdateBuildModeButtons;
|
|
||||||
procedure ActivateMode(aMode: TProjectBuildMode);
|
|
||||||
procedure UpdateShowSession;
|
|
||||||
procedure SetShowSession(const AValue: boolean);
|
|
||||||
procedure DoShowSession;
|
|
||||||
procedure UpdateDialogCaption;
|
|
||||||
function GetDialogCaption: string;
|
|
||||||
procedure ModesChanged;
|
|
||||||
public
|
|
||||||
constructor Create(TheOwner: TComponent); override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
function GetTitle: String; override;
|
|
||||||
procedure Setup(ADialog: TAbstractOptionsEditorDialog); override;
|
|
||||||
procedure ReadSettings(AOptions: TAbstractIDEOptions); override;
|
|
||||||
procedure WriteSettings(AOptions: TAbstractIDEOptions); override;
|
|
||||||
class function SupportedOptionsClass: TAbstractIDEOptionsClass; override;
|
|
||||||
property AProject: TProject read FProject;
|
|
||||||
property SwitchingMode: boolean read FSwitchingMode; // the active mode is currently switched
|
|
||||||
property ShowSession: boolean read FShowSession write SetShowSession;
|
|
||||||
property LoadShowSessionFromProjects: boolean read FLoadShowSessionFromProject
|
|
||||||
write FLoadShowSessionFromProject;
|
|
||||||
function GetSelectedBuildMode: TProjectBuildMode;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.lfm}
|
|
||||||
|
|
||||||
{ TBuildModesEditorFrame }
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModeDiffSpeedButtonClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
FSwitchingMode:=true;
|
|
||||||
try
|
|
||||||
// save changes
|
|
||||||
OnSaveIDEOptions(Self,AProject.CompilerOptions);
|
|
||||||
// show diff dialog
|
|
||||||
ShowBuildModeDiffDialog(GetSelectedBuildMode);
|
|
||||||
IncreaseBuildMacroChangeStamp;
|
|
||||||
// load options
|
|
||||||
OnLoadIDEOptions(Self,AProject.CompilerOptions);
|
|
||||||
finally
|
|
||||||
FSwitchingMode:=false;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModeAddSpeedButtonClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
NewName: String;
|
|
||||||
Identifier: String;
|
|
||||||
CurMode: TProjectBuildMode;
|
|
||||||
NewMode: TProjectBuildMode;
|
|
||||||
begin
|
|
||||||
// use current mode as template
|
|
||||||
i:=BuildModesStringGrid.Row-1;
|
|
||||||
if (i>=0) then
|
|
||||||
begin
|
|
||||||
Identifier:=BuildModesStringGrid.Cells[fModeNameCol,i+1];
|
|
||||||
CurMode:=AProject.BuildModes[i];
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
Identifier:='Mode';
|
|
||||||
CurMode:=nil;
|
|
||||||
end;
|
|
||||||
// find unique name
|
|
||||||
i:=0;
|
|
||||||
repeat
|
|
||||||
inc(i);
|
|
||||||
NewName:=Identifier+IntToStr(i);
|
|
||||||
until AProject.BuildModes.Find(NewName)=nil;
|
|
||||||
// create new mode
|
|
||||||
NewMode:=AProject.BuildModes.Add(NewName);
|
|
||||||
// clone
|
|
||||||
if CurMode<>nil then
|
|
||||||
NewMode.Assign(CurMode);
|
|
||||||
// show
|
|
||||||
FillBuildModesGrid;
|
|
||||||
// activate
|
|
||||||
ActivateMode(NewMode);
|
|
||||||
// select identifier
|
|
||||||
BuildModesStringGrid.Col:=fModeNameCol;
|
|
||||||
BuildModesStringGrid.Row:=BuildModesStringGrid.RowCount-1;
|
|
||||||
BuildModesStringGrid.EditorMode:=true;
|
|
||||||
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModeDeleteSpeedButtonClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
CurMode: TProjectBuildMode;
|
|
||||||
Grid: TStringGrid;
|
|
||||||
begin
|
|
||||||
Grid:=BuildModesStringGrid;
|
|
||||||
i:=Grid.Row-1;
|
|
||||||
if i<0 then exit;
|
|
||||||
if AProject.BuildModes.Count=1 then
|
|
||||||
begin
|
|
||||||
MessageDlg(lisCCOErrorCaption, lisThereMustBeAtLeastOneBuildMode,
|
|
||||||
mtError,[mbCancel],0);
|
|
||||||
exit;
|
|
||||||
end;
|
|
||||||
CurMode:=AProject.BuildModes[i];
|
|
||||||
// when delete the activated: activate another
|
|
||||||
if AProject.ActiveBuildMode=CurMode then
|
|
||||||
begin
|
|
||||||
if i<AProject.BuildModes.Count-1 then
|
|
||||||
ActivateMode(AProject.BuildModes[i+1])
|
|
||||||
else
|
|
||||||
ActivateMode(AProject.BuildModes[i-1]);
|
|
||||||
end;
|
|
||||||
if AProject.ActiveBuildMode=CurMode then begin
|
|
||||||
debugln(['TBuildModesEditorFrame.BuildModeDeleteSpeedButtonClick activate failed']);
|
|
||||||
exit;
|
|
||||||
end;
|
|
||||||
// delete mode
|
|
||||||
AProject.BuildModes.Delete(i);
|
|
||||||
FillBuildModesGrid;
|
|
||||||
// select next mode
|
|
||||||
if i>=Grid.RowCount then
|
|
||||||
Grid.Row:=Grid.RowCount-1
|
|
||||||
else
|
|
||||||
Grid.Row:=i;
|
|
||||||
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModeMoveDownSpeedButtonClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
i:=BuildModesStringGrid.Row-1;
|
|
||||||
if i+1>=AProject.BuildModes.Count then exit;
|
|
||||||
AProject.BuildModes.Move(i,i+1);
|
|
||||||
AProject.BuildModes[0].InSession:=false;
|
|
||||||
inc(i);
|
|
||||||
FillBuildModesGrid;
|
|
||||||
BuildModesStringGrid.Row:=i+1;
|
|
||||||
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModeMoveUpSpeedButtonClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
i:=BuildModesStringGrid.Row-1;
|
|
||||||
if i<=0 then exit;
|
|
||||||
AProject.BuildModes.Move(i,i-1);
|
|
||||||
dec(i);
|
|
||||||
AProject.BuildModes[0].InSession:=false;
|
|
||||||
FillBuildModesGrid;
|
|
||||||
BuildModesStringGrid.Row:=i+1;
|
|
||||||
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModesStringGridCheckboxToggled(
|
|
||||||
sender: TObject; aCol, aRow: Integer; aState: TCheckboxState);
|
|
||||||
var
|
|
||||||
CurMode: TProjectBuildMode;
|
|
||||||
b: Boolean;
|
|
||||||
i: Integer;
|
|
||||||
Grid: TStringGrid;
|
|
||||||
begin
|
|
||||||
//debugln(['TBuildModesEditorFrame.BuildModesStringGridCheckboxToggled Row=',aRow,' Col=',aCol,' ',ord(aState)]);
|
|
||||||
i:=aRow-1;
|
|
||||||
if (i<0) or (i>=AProject.BuildModes.Count) then exit;
|
|
||||||
//debugln(['TBuildModesEditorFrame.BuildModesStringGridCheckboxToggled ',i]);
|
|
||||||
CurMode:=AProject.BuildModes[i];
|
|
||||||
Grid:=BuildModesStringGrid;
|
|
||||||
if aCol=fModeActiveCol then
|
|
||||||
begin
|
|
||||||
// activate
|
|
||||||
if CurMode=AProject.ActiveBuildMode then
|
|
||||||
// there must always be an active mode
|
|
||||||
Grid.Cells[aCol,aRow]:=Grid.Columns[aCol].ValueChecked
|
|
||||||
else
|
|
||||||
ActivateMode(CurMode);
|
|
||||||
end else if aCol=fModeInSessionCol then
|
|
||||||
begin
|
|
||||||
// in session
|
|
||||||
b:=aState=cbChecked;
|
|
||||||
if b and (i=0) then
|
|
||||||
begin
|
|
||||||
Grid.Cells[aCol,aRow]:=Grid.Columns[aCol].ValueUnchecked;
|
|
||||||
MessageDlg(lisCCOErrorCaption,
|
|
||||||
lisTheFirstBuildModeIsTheDefaultModeAndMustBeStoredIn,
|
|
||||||
mtError,[mbCancel],0);
|
|
||||||
exit;
|
|
||||||
end;
|
|
||||||
CurMode.InSession:=b;
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModesStringGridSelection(Sender: TObject;
|
|
||||||
aCol, aRow: Integer);
|
|
||||||
begin
|
|
||||||
UpdateBuildModeButtons;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.BuildModesStringGridValidateEntry(sender: TObject;
|
|
||||||
aCol, aRow: Integer; const OldValue: string; var NewValue: String);
|
|
||||||
var
|
|
||||||
CurMode: TProjectBuildMode;
|
|
||||||
s: string;
|
|
||||||
j: Integer;
|
|
||||||
b: Boolean;
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
//debugln(['TBuildModesForm.BuildModesStringGridValidateEntry Row=',aRow,' Col=',aCol]);
|
|
||||||
i:=aRow-1;
|
|
||||||
if (i<0) or (i>=AProject.BuildModes.Count) then exit;
|
|
||||||
CurMode:=AProject.BuildModes[i];
|
|
||||||
if aCol=fModeInSessionCol then
|
|
||||||
begin
|
|
||||||
// in session
|
|
||||||
b:=NewValue=BuildModesStringGrid.Columns[aCol].ValueChecked;
|
|
||||||
if b and (i=0) then
|
|
||||||
begin
|
|
||||||
NewValue:=OldValue;
|
|
||||||
MessageDlg(lisCCOErrorCaption,
|
|
||||||
lisTheFirstBuildModeIsTheDefaultModeAndMustBeStoredIn,
|
|
||||||
mtError,[mbCancel],0);
|
|
||||||
exit;
|
|
||||||
end;
|
|
||||||
CurMode.InSession:=b;
|
|
||||||
ModesChanged;
|
|
||||||
end
|
|
||||||
else if aCol=fModeNameCol then
|
|
||||||
begin
|
|
||||||
// identifier
|
|
||||||
s:=NewValue;
|
|
||||||
for j:=1 to length(s) do
|
|
||||||
if s[j]<' ' then
|
|
||||||
s[j]:=' ';
|
|
||||||
CurMode.Identifier:=s;
|
|
||||||
NewValue:=s;
|
|
||||||
UpdateDialogCaption;
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.SetShowSession(const AValue: boolean);
|
|
||||||
begin
|
|
||||||
if AValue=FShowSession then exit;
|
|
||||||
FShowSession:=AValue;
|
|
||||||
DoShowSession;
|
|
||||||
FillBuildModesGrid;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.DoShowSession;
|
|
||||||
var
|
|
||||||
Grid: TStringGrid;
|
|
||||||
begin
|
|
||||||
Grid:=BuildModesStringGrid;
|
|
||||||
Grid.BeginUpdate;
|
|
||||||
fModeActiveCol:=0;
|
|
||||||
if FShowSession then
|
|
||||||
begin
|
|
||||||
fModeInSessionCol:=1;
|
|
||||||
fModeNameCol:=2;
|
|
||||||
if Grid.Columns.Count<3 then
|
|
||||||
Grid.Columns.Insert(fModeInSessionCol);
|
|
||||||
end else begin
|
|
||||||
fModeInSessionCol:=-1;
|
|
||||||
fModeNameCol:=1;
|
|
||||||
if Grid.Columns.Count>2 then
|
|
||||||
Grid.Columns.Delete(1);
|
|
||||||
end;
|
|
||||||
BuildModesStringGrid.Columns[fModeActiveCol].Title.Caption:=lisActive;
|
|
||||||
BuildModesStringGrid.Columns[fModeActiveCol].SizePriority:=1;
|
|
||||||
BuildModesStringGrid.Columns[fModeActiveCol].ButtonStyle:=cbsCheckboxColumn;
|
|
||||||
if fModeInSessionCol>=0 then
|
|
||||||
begin
|
|
||||||
BuildModesStringGrid.Columns[fModeInSessionCol].Title.Caption:=lisInSession;
|
|
||||||
BuildModesStringGrid.Columns[fModeInSessionCol].SizePriority:=1;
|
|
||||||
BuildModesStringGrid.Columns[fModeInSessionCol].ButtonStyle:=cbsCheckboxColumn;
|
|
||||||
end;
|
|
||||||
BuildModesStringGrid.Columns[fModeNameCol].Title.Caption:=lisName;
|
|
||||||
BuildModesStringGrid.Columns[fModeNameCol].SizePriority:=10;
|
|
||||||
BuildModesStringGrid.Columns[fModeNameCol].ButtonStyle:=cbsAuto;
|
|
||||||
Grid.EndUpdate(true);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.UpdateDialogCaption;
|
|
||||||
var
|
|
||||||
Form: TCustomForm;
|
|
||||||
begin
|
|
||||||
Form:=GetParentForm(Self);
|
|
||||||
if Form<>nil then
|
|
||||||
Form.Caption:=GetDialogCaption;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TBuildModesEditorFrame.GetDialogCaption: string;
|
|
||||||
begin
|
|
||||||
if AProject<>nil then
|
|
||||||
begin
|
|
||||||
Result := aProject.GetTitleOrName;
|
|
||||||
Result:=Format(dlgProjectOptionsFor, [Result]);
|
|
||||||
if AProject.BuildModes.Count>1 then
|
|
||||||
Result:=Result+', '+copy(AProject.ActiveBuildMode.GetCaption,1,12);
|
|
||||||
end else
|
|
||||||
Result:='TBuildModesEditorFrame.GetDialogCaption: no project';
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.ModesChanged;
|
|
||||||
begin
|
|
||||||
if ModeMatrixFrame<>nil then
|
|
||||||
ModeMatrixFrame.UpdateModes;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.UpdateInheritedOptions;
|
|
||||||
var
|
|
||||||
InhOptionCtrl: TCompilerInheritedOptionsFrame;
|
|
||||||
begin
|
|
||||||
InhOptionCtrl:=TCompilerInheritedOptionsFrame(
|
|
||||||
FindOptionControl(TCompilerInheritedOptionsFrame));
|
|
||||||
//debugln(['TBuildModesEditorFrame.UpdateInheritedOptions ',DbgSName(InhOptionCtrl)]);
|
|
||||||
if InhOptionCtrl=nil then exit;
|
|
||||||
InhOptionCtrl.UpdateInheritedTree(AProject.CompilerOptions);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.FillBuildModesGrid;
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
CurMode: TProjectBuildMode;
|
|
||||||
Grid: TStringGrid;
|
|
||||||
begin
|
|
||||||
if AProject=nil then exit;
|
|
||||||
|
|
||||||
Grid:=BuildModesStringGrid;
|
|
||||||
Grid.BeginUpdate;
|
|
||||||
Grid.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
|
|
||||||
Grid.Cells[fModeActiveCol,i+1]:=Grid.Columns[fModeActiveCol].ValueChecked
|
|
||||||
else
|
|
||||||
Grid.Cells[fModeActiveCol,i+1]:=Grid.Columns[fModeActiveCol].ValueUnchecked;
|
|
||||||
// in session
|
|
||||||
if fModeInSessionCol>=0 then
|
|
||||||
if CurMode.InSession then
|
|
||||||
Grid.Cells[fModeInSessionCol,i+1]:=Grid.Columns[fModeInSessionCol].ValueChecked
|
|
||||||
else
|
|
||||||
Grid.Cells[fModeInSessionCol,i+1]:=Grid.Columns[fModeInSessionCol].ValueUnchecked;
|
|
||||||
// identifier
|
|
||||||
Grid.Cells[fModeNameCol,i+1]:=CurMode.Identifier;
|
|
||||||
end;
|
|
||||||
Grid.EndUpdate(true);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.UpdateBuildModeButtons;
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
CurMode: TProjectBuildMode;
|
|
||||||
Identifier: string;
|
|
||||||
begin
|
|
||||||
i:=BuildModesStringGrid.Row-1;
|
|
||||||
if (AProject<>nil) and (AProject.BuildModes<>nil)
|
|
||||||
and (i>=0) and (i<AProject.BuildModes.Count) then
|
|
||||||
begin
|
|
||||||
CurMode:=AProject.BuildModes[i];
|
|
||||||
Identifier:=BuildModesStringGrid.Cells[fModeNameCol,i+1];
|
|
||||||
end
|
|
||||||
else
|
|
||||||
CurMode:=nil;
|
|
||||||
|
|
||||||
BuildModeAddSpeedButton.Hint:=Format(lisAddNewBuildModeCopyingSettingsFrom, [Identifier]);
|
|
||||||
BuildModeDeleteSpeedButton.Enabled:=(CurMode<>nil) and (AProject.BuildModes.Count>1);
|
|
||||||
BuildModeDeleteSpeedButton.Hint:=Format(lisDeleteMode, [Identifier]);
|
|
||||||
BuildModeMoveUpSpeedButton.Enabled:=(CurMode<>nil) and (i>0);
|
|
||||||
BuildModeMoveUpSpeedButton.Hint:=Format(lisMoveOnePositionUp, [Identifier]);
|
|
||||||
BuildModeMoveDownSpeedButton.Enabled:=i<BuildModesStringGrid.RowCount-2;
|
|
||||||
BuildModeMoveDownSpeedButton.Hint:=Format(lisMoveOnePositionDown, [Identifier]);
|
|
||||||
BuildModeDiffSpeedButton.Hint:=lisShowDifferencesBetweenModes;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.ActivateMode(aMode: TProjectBuildMode);
|
|
||||||
begin
|
|
||||||
if aMode=AProject.ActiveBuildMode then exit;
|
|
||||||
FSwitchingMode:=true;
|
|
||||||
try
|
|
||||||
// save changes
|
|
||||||
OnSaveIDEOptions(Self,AProject.CompilerOptions);
|
|
||||||
// switch
|
|
||||||
AProject.ActiveBuildMode:=aMode;
|
|
||||||
IncreaseBuildMacroChangeStamp;
|
|
||||||
// load options
|
|
||||||
OnLoadIDEOptions(Self,AProject.CompilerOptions);
|
|
||||||
finally
|
|
||||||
FSwitchingMode:=false;
|
|
||||||
end;
|
|
||||||
ModesChanged;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.UpdateShowSession;
|
|
||||||
begin
|
|
||||||
if LoadShowSessionFromProjects then
|
|
||||||
ShowSession:=(AProject<>nil)
|
|
||||||
and (AProject.SessionStorage in [pssInProjectDir,pssInIDEConfig]);
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TBuildModesEditorFrame.Create(TheOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited Create(TheOwner);
|
|
||||||
FLoadShowSessionFromProject:=true;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TBuildModesEditorFrame.Destroy;
|
|
||||||
begin
|
|
||||||
inherited Destroy;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TBuildModesEditorFrame.GetTitle: String;
|
|
||||||
begin
|
|
||||||
Result := dlgBuildModes;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.Setup(ADialog: TAbstractOptionsEditorDialog);
|
|
||||||
begin
|
|
||||||
BuildModesGroupBox.Caption:=lisBuildModes;
|
|
||||||
DoShowSession;
|
|
||||||
|
|
||||||
BuildModeAddSpeedButton.LoadGlyphFromLazarusResource('laz_add');
|
|
||||||
BuildModeDeleteSpeedButton.LoadGlyphFromLazarusResource('laz_delete');
|
|
||||||
BuildModeMoveUpSpeedButton.LoadGlyphFromLazarusResource('arrow_up');
|
|
||||||
BuildModeMoveDownSpeedButton.LoadGlyphFromLazarusResource('arrow_down');
|
|
||||||
BuildModeDiffSpeedButton.LoadGlyphFromLazarusResource('menu_tool_diff');
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.ReadSettings(AOptions: TAbstractIDEOptions);
|
|
||||||
var
|
|
||||||
PCOptions: TProjectCompilerOptions;
|
|
||||||
begin
|
|
||||||
//debugln(['TBuildModesEditorFrame.ReadSettings ',DbgSName(AOptions)]);
|
|
||||||
if AOptions is TProjectCompilerOptions then begin
|
|
||||||
PCOptions:=TProjectCompilerOptions(AOptions);
|
|
||||||
FProject:=PCOptions.LazProject;
|
|
||||||
|
|
||||||
// modes
|
|
||||||
UpdateShowSession;
|
|
||||||
FillBuildModesGrid;
|
|
||||||
UpdateBuildModeButtons;
|
|
||||||
|
|
||||||
// options dialog
|
|
||||||
UpdateDialogCaption;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBuildModesEditorFrame.WriteSettings(AOptions: TAbstractIDEOptions);
|
|
||||||
begin
|
|
||||||
; // Do Nothing. Overrides an abstract method.
|
|
||||||
end;
|
|
||||||
|
|
||||||
class function TBuildModesEditorFrame.SupportedOptionsClass: TAbstractIDEOptionsClass;
|
|
||||||
begin
|
|
||||||
Result := TProjectCompilerOptions;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TBuildModesEditorFrame.GetSelectedBuildMode: TProjectBuildMode;
|
|
||||||
var
|
|
||||||
i: LongInt;
|
|
||||||
begin
|
|
||||||
Result:=nil;
|
|
||||||
if aProject=nil then exit;
|
|
||||||
i:=BuildModesStringGrid.Row-1;
|
|
||||||
if (i<0) or (i>=AProject.BuildModes.Count) then exit;
|
|
||||||
Result:=AProject.BuildModes[i];
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
RegisterIDEOptionsEditor(GroupCompiler, TBuildModesEditorFrame,
|
|
||||||
CompilerOptionsBuildModes);
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
@ -7,9 +7,6 @@ interface
|
|||||||
uses
|
uses
|
||||||
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
|
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
|
||||||
StdCtrls, ExtCtrls, Project, IDEOptionsIntf, ProjectIntf, LCLProc, IDEProcs,
|
StdCtrls, ExtCtrls, Project, IDEOptionsIntf, ProjectIntf, LCLProc, IDEProcs,
|
||||||
{$IFnDEF NewBuildModeWindow}
|
|
||||||
BuildModesEditor,
|
|
||||||
{$ENDIF}
|
|
||||||
LazarusIDEStrConsts;
|
LazarusIDEStrConsts;
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -61,19 +58,8 @@ end;
|
|||||||
{ TProjectSaveOptionsFrame }
|
{ TProjectSaveOptionsFrame }
|
||||||
|
|
||||||
procedure TProjectSaveOptionsFrame.SaveSessionLocationRadioGroupClick(Sender: TObject);
|
procedure TProjectSaveOptionsFrame.SaveSessionLocationRadioGroupClick(Sender: TObject);
|
||||||
{$IFnDEF NewBuildModeWindow}
|
|
||||||
var
|
|
||||||
BuildModesEditor: TBuildModesEditorFrame;
|
|
||||||
{$ENDIF}
|
|
||||||
begin
|
begin
|
||||||
{$IFnDEF NewBuildModeWindow}
|
;
|
||||||
BuildModesEditor:=TBuildModesEditorFrame(FindOptionControl(TBuildModesEditorFrame));
|
|
||||||
if BuildModesEditor<>nil then
|
|
||||||
begin
|
|
||||||
BuildModesEditor.LoadShowSessionFromProjects:=false;
|
|
||||||
BuildModesEditor.ShowSession:=GetSessionLocation in [pssInIDEConfig,pssInProjectDir];
|
|
||||||
end;
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TProjectSaveOptionsFrame.GetSessionLocation: TProjectSessionStorage;
|
function TProjectSaveOptionsFrame.GetSessionLocation: TProjectSessionStorage;
|
||||||
|
@ -34,11 +34,7 @@ uses
|
|||||||
Buttons, ButtonPanel, ExtCtrls, EditBtn, StdCtrls, Dialogs, TreeFilterEdit,
|
Buttons, ButtonPanel, ExtCtrls, EditBtn, StdCtrls, Dialogs, TreeFilterEdit,
|
||||||
IDEWindowIntf, IDEOptionsIntf, IDECommands, IDEHelpIntf, ProjectIntf,
|
IDEWindowIntf, IDEOptionsIntf, IDECommands, IDEHelpIntf, ProjectIntf,
|
||||||
EnvironmentOpts, LazarusIDEStrConsts, CompOptsIntf, EditorOptions,
|
EnvironmentOpts, LazarusIDEStrConsts, CompOptsIntf, EditorOptions,
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
BuildModesManager, project_save_options, Project;
|
BuildModesManager, project_save_options, Project;
|
||||||
{$ELSE}
|
|
||||||
BuildModesEditor;
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
type
|
type
|
||||||
TIDEOptsDlgAction = (
|
TIDEOptsDlgAction = (
|
||||||
@ -153,11 +149,9 @@ begin
|
|||||||
// make the category visible in the treeview
|
// make the category visible in the treeview
|
||||||
if (CategoryTree.Selected<>nil) and (CategoryTree.Selected.Parent<>nil) then
|
if (CategoryTree.Selected<>nil) and (CategoryTree.Selected.Parent<>nil) then
|
||||||
CategoryTree.TopItem:=CategoryTree.Selected.Parent;
|
CategoryTree.TopItem:=CategoryTree.Selected.Parent;
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
BuildModesManager.OnLoadIDEOptionsHook := @LoadIDEOptions;
|
BuildModesManager.OnLoadIDEOptionsHook := @LoadIDEOptions;
|
||||||
BuildModesManager.OnSaveIDEOptionsHook := @SaveIDEOptions;
|
BuildModesManager.OnSaveIDEOptionsHook := @SaveIDEOptions;
|
||||||
UpdateBuildModeCombo(BuildModeComboBox);
|
UpdateBuildModeCombo(BuildModeComboBox);
|
||||||
{$ENDIF}
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDEOptionsDialog.HelpButtonClick(Sender: TObject);
|
procedure TIDEOptionsDialog.HelpButtonClick(Sender: TObject);
|
||||||
@ -175,9 +169,7 @@ end;
|
|||||||
|
|
||||||
procedure TIDEOptionsDialog.CategoryTreeChange(Sender: TObject; Node: TTreeNode);
|
procedure TIDEOptionsDialog.CategoryTreeChange(Sender: TObject; Node: TTreeNode);
|
||||||
var
|
var
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
GroupClass: TAbstractIDEOptionsClass;
|
GroupClass: TAbstractIDEOptionsClass;
|
||||||
{$ENDIF}
|
|
||||||
AEditor: TAbstractIDEOptionsEditor;
|
AEditor: TAbstractIDEOptionsEditor;
|
||||||
begin
|
begin
|
||||||
if Assigned(Node) then begin
|
if Assigned(Node) then begin
|
||||||
@ -189,25 +181,19 @@ begin
|
|||||||
Node := Node.GetFirstVisibleChild;
|
Node := Node.GetFirstVisibleChild;
|
||||||
end;
|
end;
|
||||||
AEditor := nil;
|
AEditor := nil;
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
GroupClass := nil;
|
GroupClass := nil;
|
||||||
{$ENDIF}
|
|
||||||
if Assigned(Node) and Assigned(Node.Data) then begin
|
if Assigned(Node) and Assigned(Node.Data) then begin
|
||||||
Assert(TObject(Node.Data) is TAbstractIDEOptionsEditor,
|
Assert(TObject(Node.Data) is TAbstractIDEOptionsEditor,
|
||||||
'TIDEOptionsDialog.CategoryTreeChange: Node.Data is not TAbstractIDEOptionsEditor');
|
'TIDEOptionsDialog.CategoryTreeChange: Node.Data is not TAbstractIDEOptionsEditor');
|
||||||
if CategoryTree.Selected = nil then
|
if CategoryTree.Selected = nil then
|
||||||
Node.Selected := True;
|
Node.Selected := True;
|
||||||
AEditor := TAbstractIDEOptionsEditor(Node.Data);
|
AEditor := TAbstractIDEOptionsEditor(Node.Data);
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
GroupClass := FindGroupClass(Node);
|
GroupClass := FindGroupClass(Node);
|
||||||
{$ENDIF}
|
|
||||||
end;
|
end;
|
||||||
// Show the Build Mode panel for Compiler Options
|
// Show the Build Mode panel for Compiler Options
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
if (GroupClass <> nil) and (GroupClass.InheritsFrom(TLazCompilerOptions)) then
|
if (GroupClass <> nil) and (GroupClass.InheritsFrom(TLazCompilerOptions)) then
|
||||||
BuildModeSelectPanel.Height:=40
|
BuildModeSelectPanel.Height:=40
|
||||||
else
|
else
|
||||||
{$ENDIF}
|
|
||||||
BuildModeSelectPanel.Height:=0;
|
BuildModeSelectPanel.Height:=0;
|
||||||
// Hide the old and show the new editor frame
|
// Hide the old and show the new editor frame
|
||||||
if Assigned(AEditor) then
|
if Assigned(AEditor) then
|
||||||
@ -231,24 +217,19 @@ end;
|
|||||||
|
|
||||||
procedure TIDEOptionsDialog.BuildModeComboBoxSelect(Sender: TObject);
|
procedure TIDEOptionsDialog.BuildModeComboBoxSelect(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
if BuildModeComboBox.Text = lisAllBuildModes then begin
|
if BuildModeComboBox.Text = lisAllBuildModes then begin
|
||||||
ShowMessage('This will allow changing all build modes at once. Not implemented yet.');
|
ShowMessage('This will allow changing all build modes at once. Not implemented yet.');
|
||||||
BuildModeComboBox.ItemIndex := PrevComboIndex;
|
BuildModeComboBox.ItemIndex := PrevComboIndex;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
SwitchBuildMode(BuildModeComboBox.Text);
|
SwitchBuildMode(BuildModeComboBox.Text);
|
||||||
{$ENDIF}
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDEOptionsDialog.BuildModeManageButtonClick(Sender: TObject);
|
procedure TIDEOptionsDialog.BuildModeManageButtonClick(Sender: TObject);
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
var
|
var
|
||||||
ProjectSaveOptions: TProjectSaveOptionsFrame;
|
ProjectSaveOptions: TProjectSaveOptionsFrame;
|
||||||
ShowSes: Boolean;
|
ShowSes: Boolean;
|
||||||
{$ENDIF}
|
|
||||||
begin
|
begin
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
ProjectSaveOptions:=TProjectSaveOptionsFrame(FindEditor(TProjectSaveOptionsFrame));
|
ProjectSaveOptions:=TProjectSaveOptionsFrame(FindEditor(TProjectSaveOptionsFrame));
|
||||||
if Assigned(ProjectSaveOptions) then
|
if Assigned(ProjectSaveOptions) then
|
||||||
ShowSes:=ProjectSaveOptions.GetSessionLocation in [pssInIDEConfig,pssInProjectDir]
|
ShowSes:=ProjectSaveOptions.GetSessionLocation in [pssInIDEConfig,pssInProjectDir]
|
||||||
@ -256,7 +237,6 @@ begin
|
|||||||
ShowSes:=Project1.SessionStorage in [pssInProjectDir,pssInIDEConfig];
|
ShowSes:=Project1.SessionStorage in [pssInProjectDir,pssInIDEConfig];
|
||||||
if ShowBuildModesDlg(ShowSes) = mrOK then
|
if ShowBuildModesDlg(ShowSes) = mrOK then
|
||||||
UpdateBuildModeCombo(BuildModeComboBox);
|
UpdateBuildModeCombo(BuildModeComboBox);
|
||||||
{$ENDIF}
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDEOptionsDialog.CategoryTreeCollapsed(Sender: TObject; Node: TTreeNode);
|
procedure TIDEOptionsDialog.CategoryTreeCollapsed(Sender: TObject; Node: TTreeNode);
|
||||||
|
@ -133,9 +133,6 @@ uses
|
|||||||
compiler_linking_options, compiler_verbosity_options, compiler_messages_options,
|
compiler_linking_options, compiler_verbosity_options, compiler_messages_options,
|
||||||
compiler_other_options, compiler_inherited_options, compiler_compilation_options,
|
compiler_other_options, compiler_inherited_options, compiler_compilation_options,
|
||||||
compiler_buildmacro_options, IdeMacroValues,
|
compiler_buildmacro_options, IdeMacroValues,
|
||||||
{$IFnDEF NewBuildModeWindow}
|
|
||||||
BuildModesEditor,
|
|
||||||
{$ENDIF}
|
|
||||||
{$IFDEF EnableModeMatrix}
|
{$IFDEF EnableModeMatrix}
|
||||||
Compiler_ModeMatrix,
|
Compiler_ModeMatrix,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
@ -3547,11 +3544,7 @@ end;
|
|||||||
|
|
||||||
procedure TMainIDE.mnuChgBuildModeClicked(Sender: TObject);
|
procedure TMainIDE.mnuChgBuildModeClicked(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
{$IFDEF NewBuildModeWindow}
|
|
||||||
DoOpenIDEOptions(TCompilerPathOptionsFrame, '', [TProjectCompilerOptions], []);
|
DoOpenIDEOptions(TCompilerPathOptionsFrame, '', [TProjectCompilerOptions], []);
|
||||||
{$ELSE}
|
|
||||||
DoOpenIDEOptions(TBuildModesEditorFrame, '', [TProjectCompilerOptions], []);
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TMainIDE.mnuSetBuildModeClick(Sender: TObject);
|
procedure TMainIDE.mnuSetBuildModeClick(Sender: TObject);
|
||||||
|
Loading…
Reference in New Issue
Block a user