
function installBtnTextInuptDefaultListener(btnText){
	installInuptDefaultListener(btnText.children[0]);
	
	btnText.listeners=new EventListenerList();
	
	btnText.ON_BTN_CLICK="ON_BTN_CLICK";
	btnText.ON_EXIT="ON_EXIT";
	
	btnText.setDataTable=function(dt) {
		btnText.getTextInput().setDataTable(dt);
	}
	
	btnText.getTextInput=function() {
		return btnText.children[0];
	}
	
	btnText.getClickButton=function() {
		return btnText.children[1];
	}
	
	function doDefaultFocus() {
		if (!btnText.oldValue) {
		   btnText.oldValue=btnText.getTextInput().value;
		}
	}
	function doDefaultBlur() {
		if (document.activeElement==btnText.getClickButton()) return;
		var e={};
		e.source=btnText.getTextInput();
		btnText.processEvent(btnText.ON_EXIT,e);
		btnText.oldValue=null;
	}
	
	function doDefaultBtnClick() {
		if (document.activeElement!=btnText.getTextInput()) return;
		var e={};
		e.source=btnText.getTextInput();
		btnText.processEvent(btnText.ON_BTN_CLICK,e);
		return false;
	}
	
	function doBtnDefaultMouseDown() {
		document.btnText=btnText;
	}
	
	btnText.getTextInput().attachEvent("onfocus", doDefaultFocus);
	btnText.getTextInput().attachEvent("onblur",doDefaultBlur);
	btnText.getClickButton().attachEvent("onmousedown", doBtnDefaultMouseDown);
	btnText.getClickButton().attachEvent("onclick", doDefaultBtnClick);
	
	btnText.addBtnClickListener=function(ls) {
		btnText.listeners.add(btnText.ON_BTN_CLICK,ls);
	}
	btnText.removeBtnClickListener=function(ls) {
		btnText.listeners.remove(btnText.ON_BTN_CLICK,ls);
	}
	
	btnText.addExitListener=function(ls) {
		btnText.listeners.add(btnText.ON_EXIT,ls);
	}
	btnText.removeExitListener=function(ls) {
		btnText.listeners.remove(btnText.ON_EXIT,ls);
	}
	
	btnText.processEvent=function(which,e) {
        var lses=btnText.listeners.get(which);
        if (lses) {
           for (var i=0;i<lses.length;i++) lses[i](e);
        }
    }
	
	function doDocumentDefaultMouseUp() {
		if (document.btnText) {
			document.btnText.getTextInput().focus();
			document.btnText=null;
		}
	}
	
	document.attachEvent("onmouseup", doDocumentDefaultMouseUp);
}
