/**
 * QLIB 1.0 Dynamic Label
 * Serge Dolgov (C) 2002
 * studio.quazzle.com
 */

function QLabel_set_dom2(value) {
    with (this.label) {
        replaceChild(document.createTextNode((this.value = value) || "\xA0"), firstChild);
    }
}

function QLabel_set_ie(value) {
    this.label.innerText = (this.value = value) || "\xA0";
}

function QLabel_set_ns4(value) {
    with (this.label.document) {
        open();
        write('<div class="label">' + ((this.value = value) || "") + '</div>');
        close();
    }
}

function QLabel_nop() {
}

function QLabel(parent, name, value) {
    this.init(parent, name);
    this.value = value || "&nbsp;";
    if (document.getElementById || document.all) {
        document.write('<div id="' + this.name + '" class="label">' + this.value + '</div>');
        this.label = document.getElementById ? document.getElementById(this.name) : document.all[this.name];
        if (this.label.innerText) {
            this.set = QLabel_set_ie;
        } else if (this.label.replaceChild) {
            this.set = QLabel_set_dom2;
        } else {
            this.set = QLabel_nop;
        }
    } else if (document.layers) {
        for (var j=this.value.length; j<50; j++) this.value += " &nbsp;";
        document.write('<div><ilayer><layer onLoad="self.document.layers[\'' + this.name +
            '\']=this"><div class="label">' + this.value + '</div></layer></ilayer></div>');
        this.set = QLabel_set_ns4;
        this.label = document.layers[this.name];
    } else {
        document.write("No support for label");
    }
}
QLabel.prototype = new QControl();