How to update AIS_Shape location or appearance without having to set a new owner shape?

when my mouse move in the UI window a transient model will appear and move with my mouse. After I clicked a place on screen the model is then placed.

The way it is done is via putting new TopoDS_Shape into immediatelist.

The problem that errs me is I have to create new TopoDS_Shapes. And I wander if there is a way to do without such a large overhaul?

For example, if I drag and change a vertex position in a cubic shape, maybe it could just update a portion of it?