Jetzt könntest Du ggf. noch ohne den Callback auskommen.
Du bekommst ja jetzt im destructor mit, dass das Objekt freigegeben wird.
Jetzt könntest Du auch dort
PopUpMenu := nil;
ausführen.
Ist aber Geschmacksache und würde sofort nicht mehr funktionieren, wenn durch Änderungen am Projekt irgendwann doch noch irgendwo eine Referenz auf das Objekt hängen würde.