I have a question about this solution.
Don't you think there is a problem if the user uses a "ctrl+z" on the
diagram ? The widget in this case would be already disposed when he hits
"ctrl+z".
Don't you think the graphical update must be done via a request or a
command ?