add user input event handler interface