You can have pointer to the currently highlighted object. When you manualy update the object under the mouse, see whether you stored a pointer to the last highlighted update and unhighlight it first. Then highlight the new object and save it to that pointer. This way it is guarenteed that only one object is highlighted at one time.