by using general button listener