mirror of https://gitlab.com/basile.b/dexed.git
fix, annoying error message when the symbol list background tool is missing
This commit is contained in:
parent
4b2cbfc803
commit
6ca31769c1
|
@ -110,6 +110,7 @@ type
|
||||||
procedure TreeFilterEdit1MouseEnter(Sender: TObject);
|
procedure TreeFilterEdit1MouseEnter(Sender: TObject);
|
||||||
procedure TreeKeyPress(Sender: TObject; var Key: char);
|
procedure TreeKeyPress(Sender: TObject; var Key: char);
|
||||||
private
|
private
|
||||||
|
fHasToolExe: boolean;
|
||||||
fOptions: TCESymbolListOptions;
|
fOptions: TCESymbolListOptions;
|
||||||
fSyms: TSymbolList;
|
fSyms: TSymbolList;
|
||||||
fMsgs: ICEMessagesDisplay;
|
fMsgs: ICEMessagesDisplay;
|
||||||
|
@ -140,6 +141,7 @@ type
|
||||||
procedure updateVisibleCat;
|
procedure updateVisibleCat;
|
||||||
procedure clearTree;
|
procedure clearTree;
|
||||||
//
|
//
|
||||||
|
procedure checkIfHasToolExe;
|
||||||
procedure callToolProc;
|
procedure callToolProc;
|
||||||
procedure toolOutputData(sender: TObject);
|
procedure toolOutputData(sender: TObject);
|
||||||
procedure toolTerminated(sender: TObject);
|
procedure toolTerminated(sender: TObject);
|
||||||
|
@ -175,6 +177,7 @@ implementation
|
||||||
|
|
||||||
const
|
const
|
||||||
OptsFname = 'symbollist.txt';
|
OptsFname = 'symbollist.txt';
|
||||||
|
toolExeName = 'cesyms' + exeExt;
|
||||||
|
|
||||||
{$REGION Serializable symbols---------------------------------------------------}
|
{$REGION Serializable symbols---------------------------------------------------}
|
||||||
constructor TSymbol.create(ACollection: TCollection);
|
constructor TSymbol.create(ACollection: TCollection);
|
||||||
|
@ -304,6 +307,7 @@ begin
|
||||||
fAutoRefresh := false;
|
fAutoRefresh := false;
|
||||||
fRefreshOnFocus := true;
|
fRefreshOnFocus := true;
|
||||||
fRefreshOnChange := false;
|
fRefreshOnChange := false;
|
||||||
|
checkIfHasToolExe;
|
||||||
//
|
//
|
||||||
fActCopyIdent := TAction.Create(self);
|
fActCopyIdent := TAction.Create(self);
|
||||||
fActCopyIdent.OnExecute:=@actCopyIdentExecute;
|
fActCopyIdent.OnExecute:=@actCopyIdentExecute;
|
||||||
|
@ -387,6 +391,7 @@ end;
|
||||||
procedure TCESymbolListWidget.SetVisible(Value: boolean);
|
procedure TCESymbolListWidget.SetVisible(Value: boolean);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
|
checkIfHasToolExe;
|
||||||
getMessageDisplay(fMsgs);
|
getMessageDisplay(fMsgs);
|
||||||
if Value then
|
if Value then
|
||||||
callToolProc;
|
callToolProc;
|
||||||
|
@ -622,10 +627,16 @@ begin
|
||||||
fDoc.SelectLine;
|
fDoc.SelectLine;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TCESymbolListWidget.checkIfHasToolExe;
|
||||||
|
begin
|
||||||
|
fHasToolExe := exeInSysPath(toolExeName);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TCESymbolListWidget.callToolProc;
|
procedure TCESymbolListWidget.callToolProc;
|
||||||
var
|
var
|
||||||
srcFname: string;
|
srcFname: string;
|
||||||
begin
|
begin
|
||||||
|
if not fHasToolExe then exit;
|
||||||
if fDoc = nil then exit;
|
if fDoc = nil then exit;
|
||||||
if fDoc.Lines.Count = 0 then exit;
|
if fDoc.Lines.Count = 0 then exit;
|
||||||
if not fDoc.isDSource then exit;
|
if not fDoc.isDSource then exit;
|
||||||
|
@ -635,7 +646,7 @@ begin
|
||||||
fToolProc := TCheckedAsyncProcess.Create(nil);
|
fToolProc := TCheckedAsyncProcess.Create(nil);
|
||||||
fToolProc.ShowWindow := swoHIDE;
|
fToolProc.ShowWindow := swoHIDE;
|
||||||
fToolProc.Options := [poUsePipes];
|
fToolProc.Options := [poUsePipes];
|
||||||
fToolProc.Executable := 'cesyms';
|
fToolProc.Executable := toolExeName;
|
||||||
fToolProc.OnTerminate := @toolTerminated;
|
fToolProc.OnTerminate := @toolTerminated;
|
||||||
fToolProc.OnReadData := @toolOutputData;
|
fToolProc.OnReadData := @toolOutputData;
|
||||||
fToolProc.CurrentDirectory := ExtractFileDir(Application.ExeName);
|
fToolProc.CurrentDirectory := ExtractFileDir(Application.ExeName);
|
||||||
|
|
Loading…
Reference in New Issue