Modified onEvent to handle state event handles
Added getCurrentState method
Added onMouseWheel method