[quote user="Paul Connelly"] The native (C++) version of DgnTool supports _OnKeyTransition()[/quote]
Thanks for pointing that out.
I notice that the MicroStationAPI also offers SetKeyinFunction(), which is, I think, an updated version of old MDL's mdlState_setFunction (STATE_KEYIN, func). One would call that when starting a primitive command to tell the command to pay attention to user keyboard input while the command state machine is active.