Why have you prefered a signal here, instead of overriding delete?