mirror of https://gitlab.com/basile.b/dexed.git
added small dialog to set the switches used to compile a runnable.
This commit is contained in:
parent
187b9499d0
commit
e770473dbb
|
@ -572,6 +572,9 @@ object CEMainForm: TCEMainForm
|
|||
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
|
||||
}
|
||||
end
|
||||
object MenuItem68: TMenuItem
|
||||
Action = actSetRunnableSw
|
||||
end
|
||||
object MenuItem59: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
|
@ -1818,6 +1821,9 @@ object CEMainForm: TCEMainForm
|
|||
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
|
||||
}
|
||||
end
|
||||
object MenuItem67: TMenuItem
|
||||
Action = actSetRunnableSw
|
||||
end
|
||||
object MenuItem10: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
|
@ -2365,11 +2371,17 @@ object CEMainForm: TCEMainForm
|
|||
OnExecute = actFileUnittestExecute
|
||||
OnUpdate = updateDocumentBasedAction
|
||||
end
|
||||
object actSetRunnableSw: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Set runnable switches'
|
||||
ImageIndex = 34
|
||||
OnExecute = actSetRunnableSwExecute
|
||||
end
|
||||
end
|
||||
object imgList: TImageList
|
||||
left = 64
|
||||
Bitmap = {
|
||||
4C69220000001000000010000000008F4E00008C4AB000965DFF00935AFF0093
|
||||
4C69230000001000000010000000008F4E00008C4AB000965DFF00935AFF0093
|
||||
59FF009359FF009359FF009359FF009359FF00945AFF008743FF008945FF008A
|
||||
49A8FFFFFF00008F4E00008F4F00008E4E00008A47FF66E2D0FF62DDCAFF62DD
|
||||
C8FF62DDC8FF62DDC8FF62DDC8FF62DDC8FF62DDC9FF61E0CAFF62DEC8FF3ABA
|
||||
|
@ -3457,7 +3469,39 @@ object CEMainForm: TCEMainForm
|
|||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
||||
FF00FFFFFF00FFFFFF00FFFFFF007E7E7E007F7F7F4D7F7F7F667F7F7F667F7F
|
||||
7F667F7F7F667F7F7F667F7F7F667F7F7F667F7F7F667F7F7F667F7F7F667F7F
|
||||
7F667F7F7F667F7F7F4D7E7E7E007C7C7C007C7C7C67FFFFFFFFFEFEFEFFFEFE
|
||||
FEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFE
|
||||
FEFFFFFFFFFF7C7C7C677C7C7C007878780078787868FBFBFBFFAAAAAAFFF7F7
|
||||
F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFAAAA
|
||||
AAFFFAFAFAFF7878786878787800737373007373736AF6F6F6FFF6F6F6FFEEEE
|
||||
EEFFE2E2E2FFD6D6D6FFD6D6D6FFD6D6D6FFD6D6D6FFE2E2E2FFEEEEEEFFF6F6
|
||||
F6FFF3F3F3FF7373736A737373006E6E6E006E6E6E6BF1F1F1FFE5E5E5FFE5E5
|
||||
E5FFD2D2D2FF575757FF575757FF575757FF575757FFCACACAFFDADADAFFDDDD
|
||||
DDFFE7E7E7FF6E6E6E6B6E6E6E00696969006969696DEBEBEBFFDEDEDEFFDEDE
|
||||
DEFFCFCFCFFF5E5E5EFFD2D2D2FFD2D2D2FF5E5E5EFFBDBCBCFFCECDCDFFCECD
|
||||
CDFFD7D6D6FF6969696D69696900636363006363636EE9E9E9FFDDDCDCFFD7D5
|
||||
D5FFCBC9C9FF686868FFE1E1E1FFE1E1E1FF686868FFB7B6B6FFD1CFCFFFD1CF
|
||||
CFFFD7D4D4FF6363636E636363005C5C5C005C5C5C70E6E5E5FFD8D4D4FFD6D1
|
||||
D1FFD0CCCCFF747474FFB2B2B2FFB2B2B2FF747474FFB3AFAFFFD6D1D1FFD6D1
|
||||
D1FFD9D4D4FF5C5C5C705C5C5C005555550055555571E3DEDEFFDBD4D4FFDBD4
|
||||
D4FFD6D0D0FF808080FFFDFDFDFFFDFDFDFF808080FFAEA9A9FF64BA55FF3CB2
|
||||
2AFF64BB56FF55555571555555004F4F4F004F4F4F73E5DCDCFFE0D6D6FFE0D6
|
||||
D6FFDCD3D3FF8C8C8CFFF2F2F2FFF2F2F2FF8C8C8CFFB1A9A9FF3BAC2AFF75EE
|
||||
64FF3CAE2BFF4F4F4F73317728004848480048484874E8DDDDFFE4D9D9FFE4D9
|
||||
D9FFE3D8D8FFA8A5A5FFD2D2D2FFD2D2D2FF479A3DFF33A123FF38A528FF66EB
|
||||
55FF3CA92BFF179407E3129C00993D3D3D003D3D3D76EBDDDDFF999999FFE9DB
|
||||
DBFFE9DBDBFFE9DBDBFFC7BABAFFBBAFAFFF329B23FF52E741FF52E741FF52E7
|
||||
41FF52E741FF52E741FF109500CC0B0B0B0023232377EDDDDDFFF6E5E5FFECDC
|
||||
DCFFECDCDCFFECDCDCFFECDCDCFFECDCDCFF67AD58FF3A9C2CFF3A9C2CFF3DE2
|
||||
2CFF3A9C2CFF108104E40B6A00990000001E0B0B0B640D0D0D780D0D0D780D0D
|
||||
0D780D0D0D780D0D0D780D0D0D780D0D0D780D0D0D780D0D0D780C7602E42BDF
|
||||
1AFF0C7602E40B0B0B640000001E00000000000000170000001A0000001A0000
|
||||
001A0000001A0000001A0000001A0000001A0000001A0000001A0669009E0566
|
||||
00D10669009E0000001700000000
|
||||
}
|
||||
end
|
||||
object ApplicationProperties1: TApplicationProperties
|
||||
|
|
|
@ -5,8 +5,8 @@ unit ce_main;
|
|||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, FileUtil, SynEditKeyCmds, SynHighlighterLFM, Forms,
|
||||
AnchorDocking, AnchorDockStorage, AnchorDockOptionsDlg, Controls, Graphics,
|
||||
Classes, SysUtils, FileUtil, SynEditKeyCmds, SynHighlighterLFM, Forms, StdCtrls,
|
||||
AnchorDocking, AnchorDockStorage, AnchorDockOptionsDlg, Controls, Graphics, strutils,
|
||||
Dialogs, Menus, ActnList, ExtCtrls, process, XMLPropStorage, SynExportHTML,
|
||||
ce_common, ce_dmdwrap, ce_project, ce_dcd, ce_synmemo, ce_writableComponent,
|
||||
ce_widget, ce_messages, ce_interfaces, ce_editor, ce_projinspect, ce_projconf,
|
||||
|
@ -34,6 +34,7 @@ type
|
|||
actFileHtmlExport: TAction;
|
||||
actFileUnittest: TAction;
|
||||
actFileCompileAndRunOut: TAction;
|
||||
actSetRunnableSw: TAction;
|
||||
actLayoutSave: TAction;
|
||||
actProjOpenContFold: TAction;
|
||||
actProjOptView: TAction;
|
||||
|
@ -122,6 +123,8 @@ type
|
|||
MenuItem64: TMenuItem;
|
||||
MenuItem65: TMenuItem;
|
||||
MenuItem66: TMenuItem;
|
||||
MenuItem67: TMenuItem;
|
||||
MenuItem68: TMenuItem;
|
||||
mnuLayout: TMenuItem;
|
||||
mnuItemMruFile: TMenuItem;
|
||||
mnuItemMruProj: TMenuItem;
|
||||
|
@ -132,6 +135,7 @@ type
|
|||
MenuItem7: TMenuItem;
|
||||
MenuItem8: TMenuItem;
|
||||
MenuItem9: TMenuItem;
|
||||
procedure actSetRunnableSwExecute(Sender: TObject);
|
||||
procedure updateDocumentBasedAction(sender: TObject);
|
||||
procedure updateProjectBasedAction(sender: TObject);
|
||||
procedure updateDocEditBasedAction(sender: TObject);
|
||||
|
@ -1353,6 +1357,53 @@ begin
|
|||
(inph as ICEProcInputHandler).removeProcess(proc);
|
||||
end;
|
||||
|
||||
procedure TCEMainForm.actSetRunnableSwExecute(Sender: TObject);
|
||||
var
|
||||
form: TForm;
|
||||
memo: TMemo;
|
||||
i, j: integer;
|
||||
cur: string;
|
||||
begin
|
||||
if fRunnableSw = '' then
|
||||
fRunnableSw := '-vcolumns'#13'-w'#13'-wi';
|
||||
form := TForm.Create(nil);
|
||||
form.BorderIcons:= [biSystemMenu];
|
||||
memo := TMemo.Create(form);
|
||||
memo.Align := alClient;
|
||||
memo.BorderSpacing.Around:=4;
|
||||
memo.Text := fRunnableSw;
|
||||
memo.Parent := form;
|
||||
form.ShowModal;
|
||||
//
|
||||
fRunnableSw := '';
|
||||
for i := memo.Lines.Count-1 downto 0 do
|
||||
begin
|
||||
cur := memo.Lines.Strings[i];
|
||||
// duplicated item
|
||||
j := memo.Lines.IndexOf(cur);
|
||||
if (j > -1) and (j < i) then
|
||||
continue;
|
||||
// not a switch
|
||||
if length(cur) < 2 then
|
||||
continue;
|
||||
if cur[1] <> '-' then
|
||||
continue;
|
||||
// added dynamically when needed
|
||||
if cur = '-unittest' then
|
||||
continue;
|
||||
if cur = '-main' then
|
||||
continue;
|
||||
RemoveTrailingChars(cur, [#0..#30]);
|
||||
fRunnableSw += (cur + #13);
|
||||
end;
|
||||
if (fRunnableSw <> '') and (fRunnableSw[length(fRunnableSw)] = #13) then
|
||||
fRunnableSw := fRunnableSw[1..length(fRunnableSw)-1];
|
||||
if fRunnableSw = '' then
|
||||
fRunnableSw := '-vcolumns'#13'-w'#13'-wi';
|
||||
//
|
||||
form.Free;
|
||||
end;
|
||||
|
||||
procedure TCEMainForm.compileAndRunFile(unittest: boolean = false; redirect: boolean = true;
|
||||
const runArgs: string = '');
|
||||
var
|
||||
|
|
Loading…
Reference in New Issue