removed ButtonAction and added it to the button class instead