编辑器

优化重新加载提示
This commit is contained in:
JianjunLiu 2023-03-27 10:23:39 +08:00
parent d2794ef22e
commit 0237f14153
1 changed files with 35 additions and 14 deletions

View File

@ -2241,7 +2241,7 @@ type TEditer=class(TCustomcontrol) //
lt := it.GetLastLoadTime(); lt := it.GetLastLoadTime();
nlt := it.ReGetLastLoadTime(); nlt := it.ReGetLastLoadTime();
if not lt then return; if not lt then return;
if nlt <> lt then if (nlt <> lt) then //Îļþ¸Ä±äÁË
begin begin
FPageEditer.FCanDraged := false; FPageEditer.FCanDraged := false;
FPageEditer.MouseDrageLeave(); //此处不知为什么会报错 FPageEditer.MouseDrageLeave(); //此处不知为什么会报错
@ -2258,6 +2258,10 @@ type TEditer=class(TCustomcontrol) //
end end
end else //被其他程序修改 end else //被其他程序修改
begin begin
if (it.FEditer.ChangedFlag = false) and fcloseflag then
begin
return ;
end
if Messageboxa(format("%s\r\n被其他程序修改是否重新加载",it.ScriptPath),"提示",mb_YesNo,self)=IDYES then if Messageboxa(format("%s\r\n被其他程序修改是否重新加载",it.ScriptPath),"提示",mb_YesNo,self)=IDYES then
begin begin
LoadFromFile(it,true); LoadFromFile(it,true);
@ -2374,11 +2378,17 @@ type TEditer=class(TCustomcontrol) //
if iti=it then break ; if iti=it then break ;
itss[i] := iti; itss[i] := iti;
end end
for i,iti in itss do fcloseflag := true;
begin try
docloseapageitem(iti); for i,iti in itss do
end begin
docloseapageitem(iti);
end
finally
fcloseflag := false;
end;
if itss then FPageEditer.CallSelChanged(); if itss then FPageEditer.CallSelChanged();
end end
"关闭右侧所有": "关闭右侧所有":
begin begin
@ -2389,20 +2399,27 @@ type TEditer=class(TCustomcontrol) //
begin begin
itss[i] := its[i]; itss[i] := its[i];
end end
for i,iti in itss do fcloseflag := true;
begin try
if dodel then docloseapageitem(iti); for i,iti in itss do
if iti=it then
begin begin
dodel := 1; if dodel then docloseapageitem(iti);
end ; if iti=it then
end begin
dodel := 1;
end ;
end
finally
fcloseflag := false;
end;
if dodel then FPageEditer.CallSelChanged(); if dodel then FPageEditer.CallSelChanged();
end end
"关闭其他标签": "关闭其他标签":
begin begin
Cit := it; Cit := it;
its := GetAllPageItems(); its := GetAllPageItems();
fcloseflag := true;
try
for i := 0 to its.Length()-1 do for i := 0 to its.Length()-1 do
begin begin
it := its[i]; it := its[i];
@ -2424,6 +2441,9 @@ type TEditer=class(TCustomcontrol) //
end end
end end
CloseAllPageItems(Cit); CloseAllPageItems(Cit);
finally
fcloseflag := false;
end;
end end
"另存为": "另存为":
begin begin
@ -4136,6 +4156,7 @@ type TEditer=class(TCustomcontrol) //
FOpenHistory; FOpenHistory;
FHistoryWnd; FHistoryWnd;
FTslDebug; FTslDebug;
fcloseflag;
private private
function GetFilesFormSearchInfo(d); function GetFilesFormSearchInfo(d);
begin begin