Final refactoring (added new way to handle buttons)