优化:避免Ctrl+A透明命令没过滤导致的错误

pull/1498/MERGE
ChenX 3 years ago
parent 52de121a08
commit 868c026866

@ -8,6 +8,7 @@ import { TemplateRecord } from "../DatabaseServices/Template/TemplateRecord";
import { Command } from "../Editor/CommandMachine"; import { Command } from "../Editor/CommandMachine";
import { PromptStatus } from "../Editor/PromptResult"; import { PromptStatus } from "../Editor/PromptResult";
import { SelectSetBase } from "../Editor/SelectBase"; import { SelectSetBase } from "../Editor/SelectBase";
import { CheckFilter } from "../Editor/SelectFilter";
import { HideSelectModal } from "../UI/Components/Modal/HideSelectModal"; import { HideSelectModal } from "../UI/Components/Modal/HideSelectModal";
import { BoardOpenDir } from "../UI/Store/BoardInterface"; import { BoardOpenDir } from "../UI/Store/BoardInterface";
import { hideSelectStore } from "../UI/Store/HideSelectStore"; import { hideSelectStore } from "../UI/Store/HideSelectStore";
@ -211,17 +212,25 @@ export class SelectAll implements Command
{ {
if (o.visible && GetEntity(o)) if (o.visible && GetEntity(o))
{ {
if (app.Editor.SelectCtrl.Filter && !CheckFilter(o, app.Editor.SelectCtrl.Filter))
continue;
selectData._SelectList.add(o); selectData._SelectList.add(o);
} }
} }
} }
else else
{ {
let ens = (app.Viewer.isLayout ? app.Database.LayoutSpace : app.Database.ModelSpace).Entitys;
let ens = (app.Viewer.isLayout ? app.Database.LayoutSpace : app.Database.ModelSpace).Entitys.filter(e => e.Id?.Object && e.Visible && !e.IsErase);
for (let en of ens) for (let en of ens)
{ {
selectData._SelectList.add(en.DrawObject); if (en.Id?.Object && en.Visible && !en.IsErase)
{
let o = en.DrawObject;
if (app.Editor.SelectCtrl.Filter && !CheckFilter(o, app.Editor.SelectCtrl.Filter))
continue;
selectData._SelectList.add(o);
}
} }
} }
app.Editor.SelectCtrl.AddSelect(selectData, true); app.Editor.SelectCtrl.AddSelect(selectData, true);

Loading…
Cancel
Save