Button = function (control, name, clickScope, clickFunction) 
{
    this.control = control;
    this.name = name;
    
	this.target = control.content.findName(this.name);
	this.target.AddEventListener("MouseEnter", Silverlight.createDelegate(this, this.mouseEnter));
	this.target.AddEventListener("MouseLeave", Silverlight.createDelegate(this, this.mouseLeave));
	this.target.AddEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.mouseDown));
	this.target.AddEventListener("MouseLeftButtonUp", Silverlight.createDelegate(this, this.mouseUp));
    this.target.AddEventListener("MouseLeftButtonUp", Silverlight.createDelegate(clickScope, clickFunction));
	
}

Button.prototype =
{

    mouseEnter: function(sender, e)
    {
        var enter = sender.findName(sender.name+"_enter");
        var normal = sender.findName(sender.name+"_normal");
        enter.Opacity = 1;
        normal.Opacity = 0;
    },
    
    mouseLeave: function(sender, e)
    {
        var enter = sender.findName(sender.name+"_enter");
        var normal = sender.findName(sender.name+"_normal");
        enter.Opacity = 0;
        normal.Opacity = 1;
    },
    
    mouseDown: function(sender, e)
    {
        var enter = sender.findName(sender.name+"_enter");
        var down = sender.findName(sender.name+"_down");
        enter.Opacity = 0;
        down.Opacity = 1;
    },
    
    mouseUp: function(sender, e)
    {
        var enter = sender.findName(sender.name+"_enter");
        var down = sender.findName(sender.name+"_down");
        enter.Opacity = 1;
        down.Opacity = 0;
    }

}
