function getButtonParts(button_table)
{
    var parts = new Array();
    
    parts["img_left"] = button_table.rows[0].cells[0].getElementsByTagName("img")[0];
    parts["cell_middle"] = button_table.rows[0].cells[1];
    parts["img_right"] = button_table.rows[0].cells[2].getElementsByTagName("img")[0];
    
    parts["path"] = parts["img_left"].src.substr(0, (parts["img_left"].src.lastIndexOf("/") + 1));
    
    return(parts);
}

function changePadding(elem, offset)
{
    var paddingL = elem.style.paddingLeft;
    var paddingR = elem.style.paddingRight;
    var paddingT = elem.style.paddingTop;
    var paddingB = elem.style.paddingBottom;
    
    if ((paddingL + "") == "")
        paddingL = offset;
    else
        paddingL = (parseInt(paddingL) + offset);
    
    if ((paddingR + "") == "")
        paddingR = (1 - offset);
    else
        paddingR = (parseInt(paddingR) - offset);
    
    if ((paddingT + "") == "")
        paddingT = offset;
    else
        paddingT = (parseInt(paddingT) + offset);
    
    if ((paddingB + "") == "")
        paddingB = (1 - offset);
    else
        paddingB = (parseInt(paddingB) - offset);
    
    elem.style.paddingLeft = (paddingL + "px");
    elem.style.paddingRight = (paddingR + "px");
    elem.style.paddingTop = (paddingT + "px");
    elem.style.paddingBottom = (paddingB + "px");
}

function button_onMouseOver(button_table)
{
    parts = getButtonParts(button_table);
    
    parts["img_left"].src = (parts["path"] + "hover_left.gif");
    parts["cell_middle"].style.backgroundImage = ("url('" + parts["path"] + "hover_middle.gif')");
    parts["img_right"].src = (parts["path"] + "hover_right.gif");
}
function button_onMouseOut(button_table)
{
    parts = getButtonParts(button_table);
    
    parts["img_left"].src = (parts["path"] + "up_left.gif");
    parts["cell_middle"].style.backgroundImage = ("url('" + parts["path"] + "up_middle.gif')");
    parts["img_right"].src = (parts["path"] + "up_right.gif");
}
function button_onMouseDown(button_table)
{
    parts = getButtonParts(button_table);
    
    parts["img_left"].src = (parts["path"] + "down_left.gif");
    parts["cell_middle"].style.backgroundImage = ("url('" + parts["path"] + "down_middle.gif')");
    changePadding(parts["cell_middle"], +1);
    parts["img_right"].src = (parts["path"] + "down_right.gif");
}
function button_onMouseUp(button_table, has_hover)
{
    parts = getButtonParts(button_table);
    
    parts["img_left"].src = (parts["path"] + "hover_left.gif");
    if (has_hover)
        parts["cell_middle"].style.backgroundImage = ("url('" + parts["path"] + "hover_middle.gif')");
    else
        parts["cell_middle"].style.backgroundImage = ("url('" + parts["path"] + "up_middle.gif')");
    changePadding(parts["cell_middle"], -1);
    parts["img_right"].src = (parts["path"] + "hover_right.gif");
}

