mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-28 23:45:36 +02:00
IDE: run file: fixed running command in working directory, added checkbox to show run output
git-svn-id: trunk@56703 -
This commit is contained in:
parent
c0a0ffc941
commit
db74a11c8b
@ -1,7 +1,7 @@
|
|||||||
object BuildFileDialog: TBuildFileDialog
|
object BuildFileDialog: TBuildFileDialog
|
||||||
Left = 317
|
Left = 873
|
||||||
Height = 417
|
Height = 417
|
||||||
Top = 153
|
Top = 201
|
||||||
Width = 451
|
Width = 451
|
||||||
ActiveControl = Notebook1
|
ActiveControl = Notebook1
|
||||||
BorderIcons = [biSystemMenu]
|
BorderIcons = [biSystemMenu]
|
||||||
@ -9,39 +9,41 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
ClientHeight = 417
|
ClientHeight = 417
|
||||||
ClientWidth = 451
|
ClientWidth = 451
|
||||||
KeyPreview = True
|
KeyPreview = True
|
||||||
OnCreate = BuildFileDialogCREATE
|
OnCreate = BuildFileDialogCreate
|
||||||
OnKeyDown = BuildFileDialogKEYDOWN
|
OnKeyDown = BuildFileDialogKeyDown
|
||||||
Position = poScreenCenter
|
Position = poScreenCenter
|
||||||
LCLVersion = '0.9.27'
|
LCLVersion = '1.9.0.0'
|
||||||
object Notebook1: TPageControl
|
object Notebook1: TPageControl
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 379
|
Height = 377
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 451
|
Width = 451
|
||||||
|
ActivePage = RunPage
|
||||||
Align = alClient
|
Align = alClient
|
||||||
BorderSpacing.Bottom = 6
|
BorderSpacing.Bottom = 6
|
||||||
|
TabIndex = 2
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object GeneralPage: TTabSheet
|
object GeneralPage: TTabSheet
|
||||||
Caption = 'Options'
|
Caption = 'Options'
|
||||||
ClientWidth = 443
|
ClientHeight = 350
|
||||||
ClientHeight = 337
|
ClientWidth = 447
|
||||||
object WhenFileIsActiveGroupbox: TGroupBox
|
object WhenFileIsActiveGroupbox: TGroupBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 81
|
Height = 81
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 431
|
Width = 435
|
||||||
Align = alTop
|
Align = alTop
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'When this file is active in source editor ...'
|
Caption = 'When this file is active in source editor ...'
|
||||||
ClientHeight = 63
|
ClientHeight = 66
|
||||||
ClientWidth = 427
|
ClientWidth = 431
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object OverrideBuildProjectCheckbox: TCheckBox
|
object OverrideBuildProjectCheckbox: TCheckBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 22
|
Height = 24
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 415
|
Width = 419
|
||||||
Align = alTop
|
Align = alTop
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'On build project execute the Build File command instead'
|
Caption = 'On build project execute the Build File command instead'
|
||||||
@ -49,9 +51,9 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
end
|
end
|
||||||
object OverrideRunProjectCheckbox: TCheckBox
|
object OverrideRunProjectCheckbox: TCheckBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 22
|
Height = 24
|
||||||
Top = 34
|
Top = 36
|
||||||
Width = 415
|
Width = 419
|
||||||
Align = alTop
|
Align = alTop
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'On run project execute the Run File command instead'
|
Caption = 'On run project execute the Run File command instead'
|
||||||
@ -61,8 +63,8 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
end
|
end
|
||||||
object BuildPage: TTabSheet
|
object BuildPage: TTabSheet
|
||||||
Caption = 'Build'
|
Caption = 'Build'
|
||||||
ClientWidth = 443
|
ClientHeight = 350
|
||||||
ClientHeight = 337
|
ClientWidth = 447
|
||||||
object BuildCommandGroupbox: TGroupBox
|
object BuildCommandGroupbox: TGroupBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 80
|
Height = 80
|
||||||
@ -71,7 +73,7 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
Align = alTop
|
Align = alTop
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Build Command'
|
Caption = 'Build Command'
|
||||||
ClientHeight = 62
|
ClientHeight = 65
|
||||||
ClientWidth = 427
|
ClientWidth = 427
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object BuildCommandMemo: TMemo
|
object BuildCommandMemo: TMemo
|
||||||
@ -116,7 +118,7 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Working directory (Leave empty for file path)'
|
Caption = 'Working directory (Leave empty for file path)'
|
||||||
ClientHeight = 42
|
ClientHeight = 45
|
||||||
ClientWidth = 427
|
ClientWidth = 427
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
object BuildWorkDirCombobox: TComboBox
|
object BuildWorkDirCombobox: TComboBox
|
||||||
@ -128,10 +130,8 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
Top = 6
|
Top = 6
|
||||||
Width = 384
|
Width = 384
|
||||||
Anchors = [akTop, akLeft, akRight]
|
Anchors = [akTop, akLeft, akRight]
|
||||||
AutoComplete = False
|
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
ItemWidth = 0
|
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = 'BuildWorkDirCombobox'
|
Text = 'BuildWorkDirCombobox'
|
||||||
end
|
end
|
||||||
@ -153,34 +153,34 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
end
|
end
|
||||||
object RunPage: TTabSheet
|
object RunPage: TTabSheet
|
||||||
Caption = 'Run'
|
Caption = 'Run'
|
||||||
ClientWidth = 443
|
ClientHeight = 350
|
||||||
ClientHeight = 353
|
ClientWidth = 447
|
||||||
object AlwaysCompileFirstCheckbox: TCheckBox
|
object RunBeforeBuildCheckbox: TCheckBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 17
|
Height = 24
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 431
|
Width = 435
|
||||||
Align = alTop
|
Align = alTop
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Always Build before Run'
|
Caption = 'Run before build'
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
end
|
end
|
||||||
object RunCommandGroupbox: TGroupBox
|
object RunCommandGroupbox: TGroupBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 98
|
Height = 98
|
||||||
Top = 88
|
Top = 126
|
||||||
Width = 431
|
Width = 435
|
||||||
Align = alTop
|
Align = alTop
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Run Command'
|
Caption = 'Run Command'
|
||||||
ClientHeight = 80
|
ClientHeight = 83
|
||||||
ClientWidth = 427
|
ClientWidth = 431
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object RunCommandMemo: TMemo
|
object RunCommandMemo: TMemo
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 68
|
Height = 71
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 415
|
Width = 419
|
||||||
Align = alClient
|
Align = alClient
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
@ -191,36 +191,34 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
end
|
end
|
||||||
object RunWorkDirGroupbox: TGroupBox
|
object RunWorkDirGroupbox: TGroupBox
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 53
|
Height = 54
|
||||||
Top = 29
|
Top = 66
|
||||||
Width = 431
|
Width = 435
|
||||||
Align = alTop
|
Align = alTop
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Working Directory (Leave empty for file path)'
|
Caption = 'Working Directory (Leave empty for file path)'
|
||||||
ClientHeight = 35
|
ClientHeight = 39
|
||||||
ClientWidth = 427
|
ClientWidth = 431
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
object RunWorkDirCombobox: TComboBox
|
object RunWorkDirCombobox: TComboBox
|
||||||
AnchorSideLeft.Control = RunWorkDirGroupbox
|
AnchorSideLeft.Control = RunWorkDirGroupbox
|
||||||
AnchorSideTop.Control = RunWorkDirGroupbox
|
AnchorSideTop.Control = RunWorkDirGroupbox
|
||||||
AnchorSideRight.Control = RunBrowseWorkDirButton
|
AnchorSideRight.Control = RunBrowseWorkDirButton
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 21
|
Height = 27
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 384
|
Width = 388
|
||||||
Anchors = [akTop, akLeft, akRight]
|
Anchors = [akTop, akLeft, akRight]
|
||||||
AutoComplete = False
|
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
ItemHeight = 13
|
ItemHeight = 0
|
||||||
ItemWidth = 0
|
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = 'RunWorkDirCombobox'
|
Text = 'RunWorkDirCombobox'
|
||||||
end
|
end
|
||||||
object RunBrowseWorkDirButton: TButton
|
object RunBrowseWorkDirButton: TButton
|
||||||
AnchorSideRight.Side = asrBottom
|
AnchorSideRight.Side = asrBottom
|
||||||
Left = 396
|
Left = 400
|
||||||
Height = 23
|
Height = 27
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 25
|
Width = 25
|
||||||
HelpType = htKeyword
|
HelpType = htKeyword
|
||||||
@ -231,13 +229,31 @@ object BuildFileDialog: TBuildFileDialog
|
|||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
object RunShowOutputCheckBox: TCheckBox
|
||||||
|
Left = 6
|
||||||
|
Height = 24
|
||||||
|
Top = 36
|
||||||
|
Width = 435
|
||||||
|
Align = alTop
|
||||||
|
BorderSpacing.Around = 6
|
||||||
|
Caption = 'Show output in Messages window'
|
||||||
|
TabOrder = 3
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object ButtonPanel: TButtonPanel
|
object ButtonPanel: TButtonPanel
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 26
|
Height = 28
|
||||||
Top = 385
|
Top = 383
|
||||||
Width = 439
|
Width = 439
|
||||||
|
OKButton.Name = 'OKButton'
|
||||||
|
OKButton.DefaultCaption = True
|
||||||
|
HelpButton.Name = 'HelpButton'
|
||||||
|
HelpButton.DefaultCaption = True
|
||||||
|
CloseButton.Name = 'CloseButton'
|
||||||
|
CloseButton.DefaultCaption = True
|
||||||
|
CancelButton.Name = 'CancelButton'
|
||||||
|
CancelButton.DefaultCaption = True
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
ShowButtons = [pbOK, pbCancel, pbHelp]
|
ShowButtons = [pbOK, pbCancel, pbHelp]
|
||||||
ShowBevel = False
|
ShowBevel = False
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
{ Dialog to configure Build/Run file
|
||||||
|
}
|
||||||
unit BuildFileDlg;
|
unit BuildFileDlg;
|
||||||
|
|
||||||
{$mode objfpc}{$H+}
|
{$mode objfpc}{$H+}
|
||||||
@ -37,32 +39,33 @@ type
|
|||||||
{ TBuildFileDialog }
|
{ TBuildFileDialog }
|
||||||
|
|
||||||
TBuildFileDialog = class(TForm)
|
TBuildFileDialog = class(TForm)
|
||||||
AlwaysCompileFirstCheckbox: TCHECKBOX;
|
RunBeforeBuildCheckbox: TCheckBox;
|
||||||
BuildBrowseWorkDirButton: TBUTTON;
|
BuildBrowseWorkDirButton: TButton;
|
||||||
BuildCommandGroupbox: TGROUPBOX;
|
BuildCommandGroupbox: TGroupBox;
|
||||||
BuildCommandMemo: TMEMO;
|
BuildCommandMemo: TMemo;
|
||||||
BuildScanForFPCMsgCheckbox: TCHECKBOX;
|
BuildScanForFPCMsgCheckbox: TCheckBox;
|
||||||
BuildScanForMakeMsgCheckbox: TCHECKBOX;
|
BuildScanForMakeMsgCheckbox: TCheckBox;
|
||||||
BuildWorkDirCombobox: TCOMBOBOX;
|
BuildWorkDirCombobox: TComboBox;
|
||||||
BuildWorkingDirGroupbox: TGROUPBOX;
|
BuildWorkingDirGroupbox: TGroupBox;
|
||||||
BuildPage: TTabSheet;
|
BuildPage: TTabSheet;
|
||||||
ButtonPanel: TButtonPanel;
|
ButtonPanel: TButtonPanel;
|
||||||
GeneralPage: TTabSheet;
|
GeneralPage: TTabSheet;
|
||||||
Notebook1: TPageControl;
|
Notebook1: TPageControl;
|
||||||
OverrideBuildProjectCheckbox: TCHECKBOX;
|
OverrideBuildProjectCheckbox: TCheckBox;
|
||||||
OverrideRunProjectCheckbox: TCHECKBOX;
|
OverrideRunProjectCheckbox: TCheckBox;
|
||||||
RunBrowseWorkDirButton: TBUTTON;
|
RunBrowseWorkDirButton: TButton;
|
||||||
RunCommandGroupbox: TGROUPBOX;
|
RunCommandGroupbox: TGroupBox;
|
||||||
RunCommandMemo: TMEMO;
|
RunCommandMemo: TMemo;
|
||||||
RunPage: TTabSheet;
|
RunPage: TTabSheet;
|
||||||
RunWorkDirCombobox: TCOMBOBOX;
|
RunWorkDirCombobox: TComboBox;
|
||||||
RunWorkDirGroupbox: TGROUPBOX;
|
RunWorkDirGroupbox: TGroupBox;
|
||||||
WhenFileIsActiveGroupbox: TGROUPBOX;
|
RunShowOutputCheckBox: TCheckBox;
|
||||||
|
WhenFileIsActiveGroupbox: TGroupBox;
|
||||||
BuildMacroSelectionBox: TMacroSelectionBox;
|
BuildMacroSelectionBox: TMacroSelectionBox;
|
||||||
RunMacroSelectionBox: TMacroSelectionBox;
|
RunMacroSelectionBox: TMacroSelectionBox;
|
||||||
procedure BuildBrowseWorkDirButtonCLICK(Sender: TObject);
|
procedure BuildBrowseWorkDirButtonCLICK(Sender: TObject);
|
||||||
procedure BuildFileDialogCREATE(Sender: TObject);
|
procedure BuildFileDialogCreate(Sender: TObject);
|
||||||
procedure BuildFileDialogKEYDOWN(Sender: TObject; var Key: Word;
|
procedure BuildFileDialogKeyDown(Sender: TObject; var Key: Word;
|
||||||
{%H-}Shift: TShiftState);
|
{%H-}Shift: TShiftState);
|
||||||
procedure BuildMacroSelectionBoxAddMacro(Sender: TObject);
|
procedure BuildMacroSelectionBoxAddMacro(Sender: TObject);
|
||||||
procedure HelpButtonClick(Sender: TObject);
|
procedure HelpButtonClick(Sender: TObject);
|
||||||
@ -434,7 +437,7 @@ end;
|
|||||||
|
|
||||||
{ TBuildFileDialog }
|
{ TBuildFileDialog }
|
||||||
|
|
||||||
procedure TBuildFileDialog.BuildFileDialogKEYDOWN(Sender: TObject;
|
procedure TBuildFileDialog.BuildFileDialogKeyDown(Sender: TObject;
|
||||||
var Key: Word; Shift: TShiftState);
|
var Key: Word; Shift: TShiftState);
|
||||||
begin
|
begin
|
||||||
if Key=VK_ESCAPE then ModalResult:=mrCancel;
|
if Key=VK_ESCAPE then ModalResult:=mrCancel;
|
||||||
@ -473,7 +476,7 @@ begin
|
|||||||
RunCommandMemo.SelText:=MacroCode;
|
RunCommandMemo.SelText:=MacroCode;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TBuildFileDialog.BuildFileDialogCREATE(Sender: TObject);
|
procedure TBuildFileDialog.BuildFileDialogCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Notebook1.PageIndex:=0;
|
Notebook1.PageIndex:=0;
|
||||||
|
|
||||||
@ -513,7 +516,8 @@ begin
|
|||||||
BuildScanForMakeMsgCheckbox.Caption:=lisCOScanForMakeMessages;
|
BuildScanForMakeMsgCheckbox.Caption:=lisCOScanForMakeMessages;
|
||||||
|
|
||||||
RunPage.Caption:=lisRun;
|
RunPage.Caption:=lisRun;
|
||||||
AlwaysCompileFirstCheckbox.Caption:=lisBFAlwaysBuildBeforeRun;
|
RunBeforeBuildCheckbox.Caption:=lisBFAlwaysBuildBeforeRun;
|
||||||
|
RunShowOutputCheckBox.Caption:=lisShowOutput;
|
||||||
RunWorkDirGroupbox.Caption:=lisBFWorkingDirectoryLeaveEmptyForFilePath;
|
RunWorkDirGroupbox.Caption:=lisBFWorkingDirectoryLeaveEmptyForFilePath;
|
||||||
RunCommandGroupbox.Caption:=lisBFRunCommand;
|
RunCommandGroupbox.Caption:=lisBFRunCommand;
|
||||||
|
|
||||||
@ -605,7 +609,6 @@ var
|
|||||||
BuildCommand: String;
|
BuildCommand: String;
|
||||||
BuildScanForFPCMsg: Boolean;
|
BuildScanForFPCMsg: Boolean;
|
||||||
BuildScanForMakeMsg: Boolean;
|
BuildScanForMakeMsg: Boolean;
|
||||||
AlwaysBuildBeforeRun: Boolean;
|
|
||||||
RunWorkingDir: String;
|
RunWorkingDir: String;
|
||||||
RunCommand: String;
|
RunCommand: String;
|
||||||
BuildScanStr: String;
|
BuildScanStr: String;
|
||||||
@ -630,7 +633,6 @@ begin
|
|||||||
RunFlags:=GetIDEDirRunFlagFromString(
|
RunFlags:=GetIDEDirRunFlagFromString(
|
||||||
GetIDEStringDirective(DirectiveList,
|
GetIDEStringDirective(DirectiveList,
|
||||||
IDEDirectiveNames[idedRunFlags],''));
|
IDEDirectiveNames[idedRunFlags],''));
|
||||||
AlwaysBuildBeforeRun:=idedrfBuildBeforeRun in RunFlags;
|
|
||||||
RunWorkingDir:=GetIDEStringDirective(DirectiveList,
|
RunWorkingDir:=GetIDEStringDirective(DirectiveList,
|
||||||
IDEDirectiveNames[idedRunWorkingDir],'');
|
IDEDirectiveNames[idedRunWorkingDir],'');
|
||||||
RunCommand:=GetIDEStringDirective(DirectiveList,
|
RunCommand:=GetIDEStringDirective(DirectiveList,
|
||||||
@ -642,7 +644,8 @@ begin
|
|||||||
BuildCommandMemo.Lines.Text:=BuildCommand;
|
BuildCommandMemo.Lines.Text:=BuildCommand;
|
||||||
BuildScanForFPCMsgCheckbox.Checked:=BuildScanForFPCMsg;
|
BuildScanForFPCMsgCheckbox.Checked:=BuildScanForFPCMsg;
|
||||||
BuildScanForMakeMsgCheckbox.Checked:=BuildScanForMakeMsg;
|
BuildScanForMakeMsgCheckbox.Checked:=BuildScanForMakeMsg;
|
||||||
AlwaysCompileFirstCheckbox.Checked:=AlwaysBuildBeforeRun;
|
RunBeforeBuildCheckbox.Checked:=idedrfBuildBeforeRun in RunFlags;
|
||||||
|
RunShowOutputCheckBox.Checked:=idedrfMessages in RunFlags;
|
||||||
RunWorkDirCombobox.Text:=RunWorkingDir;
|
RunWorkDirCombobox.Text:=RunWorkingDir;
|
||||||
RunCommandMemo.Lines.Text:=RunCommand;
|
RunCommandMemo.Lines.Text:=RunCommand;
|
||||||
end;
|
end;
|
||||||
@ -654,7 +657,6 @@ var
|
|||||||
BuildScanForFPCMsg: Boolean;
|
BuildScanForFPCMsg: Boolean;
|
||||||
BuildScanForMakeMsg: Boolean;
|
BuildScanForMakeMsg: Boolean;
|
||||||
BuildScan: TIDEDirBuildScanFlags;
|
BuildScan: TIDEDirBuildScanFlags;
|
||||||
AlwaysBuildBeforeRun: Boolean;
|
|
||||||
RunWorkingDir: String;
|
RunWorkingDir: String;
|
||||||
RunCommand: String;
|
RunCommand: String;
|
||||||
RunFlags: TIDEDirRunFlags;
|
RunFlags: TIDEDirRunFlags;
|
||||||
@ -670,9 +672,9 @@ begin
|
|||||||
if BuildScanForMakeMsg then Include(BuildScan,idedbsfMake);
|
if BuildScanForMakeMsg then Include(BuildScan,idedbsfMake);
|
||||||
|
|
||||||
// run
|
// run
|
||||||
AlwaysBuildBeforeRun:=AlwaysCompileFirstCheckbox.Checked;
|
|
||||||
RunFlags:=[];
|
RunFlags:=[];
|
||||||
if AlwaysBuildBeforeRun then Include(RunFlags,idedrfBuildBeforeRun);
|
if RunBeforeBuildCheckbox.Checked then Include(RunFlags,idedrfBuildBeforeRun);
|
||||||
|
if RunShowOutputCheckBox.Checked then Include(RunFlags,idedrfMessages);
|
||||||
RunWorkingDir:=SpecialCharsToSpaces(RunWorkDirCombobox.Text,true);
|
RunWorkingDir:=SpecialCharsToSpaces(RunWorkDirCombobox.Text,true);
|
||||||
RunCommand:=SpecialCharsToSpaces(RunCommandMemo.Lines.Text,true);
|
RunCommand:=SpecialCharsToSpaces(RunCommandMemo.Lines.Text,true);
|
||||||
|
|
||||||
|
@ -496,6 +496,7 @@ resourcestring
|
|||||||
lisMenuProjectOptions = 'Project Options ...';
|
lisMenuProjectOptions = 'Project Options ...';
|
||||||
|
|
||||||
lisBFWorkingDirectoryLeaveEmptyForFilePath = 'Working directory (leave empty for file path)';
|
lisBFWorkingDirectoryLeaveEmptyForFilePath = 'Working directory (leave empty for file path)';
|
||||||
|
lisShowOutput = 'Show output';
|
||||||
lisBFBuildCommand = 'Build Command';
|
lisBFBuildCommand = 'Build Command';
|
||||||
lisMenuQuickCompile = 'Quick Compile';
|
lisMenuQuickCompile = 'Quick Compile';
|
||||||
lisMenuCleanUpAndBuild = 'Clean up and Build ...';
|
lisMenuCleanUpAndBuild = 'Clean up and Build ...';
|
||||||
|
15
ide/main.pp
15
ide/main.pp
@ -7662,7 +7662,7 @@ var
|
|||||||
DefRunCommand: String;
|
DefRunCommand: String;
|
||||||
RunCommand: String;
|
RunCommand: String;
|
||||||
ProgramFilename: string;
|
ProgramFilename: string;
|
||||||
Params: string;
|
Params, aFilename: string;
|
||||||
ExtTool: TIDEExternalToolOptions;
|
ExtTool: TIDEExternalToolOptions;
|
||||||
DirectiveList: TStringList;
|
DirectiveList: TStringList;
|
||||||
Code: TCodeBuffer;
|
Code: TCodeBuffer;
|
||||||
@ -7732,6 +7732,19 @@ begin
|
|||||||
SourceEditorManager.ClearErrorLines;
|
SourceEditorManager.ClearErrorLines;
|
||||||
|
|
||||||
SplitCmdLine(RunCommand,ProgramFilename,Params);
|
SplitCmdLine(RunCommand,ProgramFilename,Params);
|
||||||
|
aFilename:=ProgramFilename;
|
||||||
|
if (aFilename<>'')
|
||||||
|
and (not FilenameIsAbsolute(aFilename))
|
||||||
|
and (Pos(PathDelim,aFilename)<1)
|
||||||
|
then begin
|
||||||
|
aFilename:=FileUtil.FindDefaultExecutablePath(aFilename,RunWorkingDir);
|
||||||
|
if aFilename='' then
|
||||||
|
aFilename:=ProgramFilename;
|
||||||
|
end;
|
||||||
|
if aFilename<>'' then
|
||||||
|
aFilename:=ExpandFileNameUTF8(aFilename,RunWorkingDir);
|
||||||
|
if (aFilename<>'') and FileExistsUTF8(aFilename) then
|
||||||
|
ProgramFilename:=aFilename;
|
||||||
|
|
||||||
ExtTool:=TIDEExternalToolOptions.Create;
|
ExtTool:=TIDEExternalToolOptions.Create;
|
||||||
try
|
try
|
||||||
|
Loading…
Reference in New Issue
Block a user