var ventana, moviendo=0, x0, y0, left, top

function mover(e) {
    var target
    if (!(target=e.target)) target = e.srcElement
    if (!moviendo) {
        if (target.className == "ventana-barra") ventana = target.parentNode.offsetParent
        else if (target.parentNode.className == "ventana-barra") ventana = target.parentNode.parentNode.offsetParent
        else return

        moviendo = 1
        x0 = e.clientX
        y0 = e.clientY
        top  = getStyle(ventana,"top")
        left = getStyle(ventana,"left")
    }
}

function arrastrar(e) {
    x = e.clientX
    y = e.clientY
    if (moviendo) {
        ventana.style.left = (parseInt(left) + x - x0)+"px"
        ventana.style.top  = (parseInt(top)  + y - y0)+"px"
    }
}

function parar(e) {
    moviendo = 0
}

function cerrar(e) {
    var target
    if (!(target=e.target)) target = e.srcElement
    if (target.className == "ventana-cerrar") target.parentNode.parentNode.parentNode.style.display = "none"
}

function getStyle(x,styleProp) {
    var y
    if (document.defaultView) y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp)
    else if (x.currentStyle)  y = eval('x.currentStyle.' + styleProp)
    return y
}

function addEvent(obj, evType, fn, useCapture){
    if (obj.addEventListener) {
        obj.addEventListener(evType, fn, useCapture)
        return true
    }
    else if (obj.attachEvent) {
        var r = obj.attachEvent("on"+evType, fn)
        return r;
    }
}

function inicializar() {
    addEvent(document,'mousedown', mover, false)
    addEvent(document,'mousemove', arrastrar, false)
    addEvent(document,'mouseup', parar, false)
    addEvent(document,'click', cerrar, false)
}


