Ja Du hast recht, jetzt wo ich das so aufgebröselt sehe, fällt mir das auch auf...
Danke für deinen letzten Vorschlag.
Ein Fehlverhalten hat er noch, und zwar wenn ein Item selektiert ist, das gerade nicht bearbeitet wird,
dazu ein nicht selektiertes Item, was bearbeitet wird. Nun ein DeleteItems(true) und es kommt trotzdem eine Abfrage.
Problem lässt sich allerdings leicht beheben, nämlich einfach die beiden if Bedingungen vertauschen:
Delphi-Quellcode:
for i := Items.Count - 1 downto 0 do
if (not AOnlySelected or Items[i].Selected)
and (not IsItemBusy(i) or GetUWD) then
Delete(i);
Jetzt läufts genau so wie ich mir das vorgestellt habe.
Vielen Dank himi!