add button click listener