button can be resized, image can be switched