﻿function Button(content, name, xaml)
{
    this.Control = content.findName(name);
    
    this.Control.addEventListener("MouseEnter", Silverlight.createDelegate(this, this.MouseEnter));
    this.Control.addEventListener("MouseLeave", Silverlight.createDelegate(this, this.MouseLeave));
    this.Control.addEventListener("MouseLeftButtonDown", Silverlight.createDelegate(this, this.ButtonDown));
    //this.Control.addEventListener("MouseLeftButtonUp", Silverlight.createDelegate(this, this.ButtonUp));
    
    this.Theme = content.createFromXaml(xaml, true);
    var scale = this.Theme.findName("Scale");
    scale.ScaleX = this.Control.Width / this.Theme.Width;
    scale.ScaleY = this.Control.Height / this.Theme.Height;
    //this.Pressed.Visibility = "Collapsed";
    this.Control.children.Insert(0, this.Theme);
}

Button.prototype.ButtonDown = function(sender, eventArgs)
{
    var press = this.Theme.findName("Press");
    press.Begin();
}

Button.prototype.ButtonUp = function(sender, eventArgs)
{
    //var press = this.Theme.findName("Release");
    //press.Begin();
}



Button.prototype.Press = function()
{
    var press = this.Theme.findName("Press");
    press.Begin();
}

Button.prototype.Enable = function()
{
    var press = this.Theme.findName("Enable");
    press.Begin();
}

Button.prototype.Disable = function()
{
    var press = this.Theme.findName("Disable");
    press.Begin();
}



Button.prototype.Release = function()
{
    var press = this.Theme.findName("Release");
    press.Begin();
}


Button.prototype.MouseEnter = function(sender, eventArgs)
{
    sender.Background = "Gray";
}

Button.prototype.MouseLeave = function(sender, eventArgs)
{
    sender.Background = "#00000000";
}

