You could write your modularized source, gizmo_driver.c, thusly:
// File: gizmo_driver.c
// Common stuff
// ...
#ifdef EXTRACT_EVENT_HANDLER_GIZMO
// Event handler for the gizmo device ...
// ...
#else
// Code for gizmo device other than event handler
// ...
#endif
Then, in Events.c, where the particular event handler would
be placed if modularization was not much of a concern:
#define EXTRACT_EVENT_HANDLER_GIZMO
#include "gizmo_driver.c"
#undef EXTRACT_EVENT_HANDLER_GIZMO