Add capability to react to hover events to the button widget

In the past people wanted to make use of hover-events to trigger certain actions (like popups or drop down menus). However there was no widget available which would enable them to do so. Since I recently created a hover widget which was based off the button widget, I propose to just add the capability of handling hover events to the standard button widget. (This seems to have been intended some time ago since there was a 'hover' parameter already present, albeit without function)

I think this is a good start to integrate said functionality, however calling the new parameter 'action' might cause confusion (I am not sure), so we might need another name for it (maybe hover=true/false).
Indentation looks wrong here. The code of the `case` should be indented by one tab from the `case` line.