This is not as much of a simplification as the previous two commits because there is no simple replacement of EVT_MOUSE_EVENTS() using Bind() and a loop over all mouse event types has to be written explicitly, but it still avoids the need to allocate and delete a separate object, so is still worth it.