function ComboBox() 
{
    /**
     * get the DOM element of the text-box that is part of the combo-box
     * @type DOMElement_Input
     */
    this.getTextBox = function() { return this.fTextBox; }

    /**
     * initialize the combobox
     * @param {Array} menu      menu to bring-up when arrow is checked on
     * @param {String} width	width of the text-box as a string specifiable
     *				in a css style
     */
    this.init = function(menu, width) {
	var d = document.createElement("div");
	if( !Utils.isIE() )		// IE doesnt support table
	    d.style.display  = "table";	// very important for firefox so that arrow
	d.style.height   = "1.5em";	// give some height

	var i = document.createElement("input");
	i.type = "text";
	i.style.fontSize = "100%";// so it scales with the browse text size (liquid design)
	i.style.width = width;
	if( label )
	    i.style.textAlign = "left";
	i.style.display  = "inline";
	i.style.cssFloat = "left";
	i.setAttribute("autocomplete","off");	// supposedly gets around mozilla bug about permission denied
						// when we set focus - found by browsing web
	d.appendChild(i);

	var arrow = new ComboBoxArrow(this);
	d.appendChild(arrow.getContent());

	this.fOuter = d;
	this.fTextBox = i;
	this.fMenu = menu;
    }

    /**
     * called by {@link ComboBoxArrow}, when the arrow is clicked
     */
    this.arrowClicked = function() {
	if( this.fMenu ) {
	    var obj = this.getContent();
	    var x = LookAndFeel.findPosX(obj);
	    var y = LookAndFeel.findPosY(obj) + obj.offsetHeight;
	    this.fMenu.show(x,y);
	}
    }
}
/**
 * @class
 * represents a combo box (warning: not yet fully implemented)
 */
@class
represents a combo box (warning: not yet fully implemented)
@class represents a combo box ( warning : not yet fully implemented )
function ComboBox() 
{
    this.getTextBox = function() { return this.fTextBox; }
    this.init = function(menu, width) {
	var d = document.createElement("div");
	if( !Utils.isIE() )		
	    d.style.display  = "table";	
	d.style.height   = "1.5em";	
	var i = document.createElement("input");
	i.type = "text";
	i.style.fontSize = "100%";
	i.style.width = width;
	if( label )
	    i.style.textAlign = "left";
	i.style.display  = "inline";
	i.style.cssFloat = "left";
	i.setAttribute("autocomplete","off");	
	d.appendChild(i);
	var arrow = new ComboBoxArrow(this);
	d.appendChild(arrow.getContent());
	this.fOuter = d;
	this.fTextBox = i;
	this.fMenu = menu;
    }
    this.arrowClicked = function() {
	if( this.fMenu ) {
	    var obj = this.getContent();
	    var x = LookAndFeel.findPosX(obj);
	    var y = LookAndFeel.findPosY(obj) + obj.offsetHeight;
	    this.fMenu.show(x,y);
	}
    }
}
function ComboBox ( ) { this . getTextBox = function ( ) { return this . fTextBox ; } this . init = function ( menu , width ) { var d = document . createElement ( "div" ) ; if ( ! Utils . isIE ( ) ) d . style . display = "table" ; d . style . height = "1.5em" ; var i = document . createElement ( "input" ) ; i . type = "text" ; i . style . fontSize = "100%" ; i . style . width = width ; if ( label ) i . style . textAlign = "left" ; i . style . display = "inline" ; i . style . cssFloat = "left" ; i . setAttribute ( "autocomplete" , "off" ) ; d . appendChild ( i ) ; var arrow = new ComboBoxArrow ( this ) ; d . appendChild ( arrow . getContent ( ) ) ; this . fOuter = d ; this . fTextBox = i ; this . fMenu = menu ; } this . arrowClicked = function ( ) { if ( this . fMenu ) { var obj = this . getContent ( ) ; var x = LookAndFeel . findPosX ( obj ) ; var y = LookAndFeel . findPosY ( obj ) + obj . offsetHeight ; this . fMenu . show ( x , y ) ; } } }
@class
 represents a combo box (warning: not yet fully implemented)
@class represents a combo box ( warning : not yet fully implemented )
/**
     * get the DOM element of the text-box that is part of the combo-box
     * @type DOMElement_Input
     */ /**
     * initialize the combobox
     * @param {Array} menu      menu to bring-up when arrow is checked on
     * @param {String} width	width of the text-box as a string specifiable
     *				in a css style
     */ // IE doesnt support table
 // very important for firefox so that arrow
 // give some height
 // so it scales with the browse text size (liquid design)
 // supposedly gets around mozilla bug about permission denied
 // when we set focus - found by browsing web
 /**
     * called by {@link ComboBoxArrow}, when the arrow is clicked
     */