implementation of touch interface