actually components of Window are normal Active objects.
I've made myself a tooltips on hovering over window components which used similar logic to this simple example:
if (Game.ActiveObject != null)
var w = Game.ActiveObject;
if (w.Name == "Button1") do_some_hover_code;
You can set this easily in loop attached to window for example or handle it in game_loop.script (game_daemon.script).