// global, eek!
var shown = false;

function findPos(obj) {
        var curleft = curtop = 0;
        if (obj.offsetParent) {
                do {
                        curleft += obj.offsetLeft;
                        curtop += obj.offsetTop;
                } while (obj = obj.offsetParent);
                return [curleft,curtop];
        }
}

function showToolbox() {
    if ( !shown ) {
        var tb = document.getElementById('toolbox-container');
        if ( tb ) {
            pos = findPos(document.getElementById('toolbox'))
            tb.style.display = 'block';
            tb.style.left = (pos[0]-6) + 'px';
            // complete hack
            setTimeout(function(){shown = true}, 100);
        }
    }
}
function hideToolbox() {
    if ( shown ) {
        var tb = document.getElementById('toolbox-container');
        if ( tb ) {
            tb.style.display = 'none';
            shown = false;
        }
    }
}

document.onclick = function() { hideToolbox(); }