rem: var link_obj	= this.lib.getElementById(menu_obj.link_id); 
add: var link_obj	= FA.getObj(menu_obj.link_id); 
context: 	shouldCloseMenu: function(e, menu_obj) {		var link_obj	= this.lib.getElementById(menu_obj.link_id);		var positions	= k4MenuMiscFactory.createInstance().menuPositions(e); // x0 y1		var should_close= false;		var event_target= this.lib.get_event_target(e);		if(link_obj && menu_obj && event_target) {						// deal with menus with same menus and different links			// this is a really ugly way of doing things though...			if(event_target.id != link_obj.id && event_target.parentNode.id != link_obj.id) {				for(var c = 0; c < ALL_MENUSLINKS.sizeof(); c++) { // l0 m1					if(ALL_MENUSLINKS[c][1].id == menu_obj.id) {												if(ALL_MENUSLINKS[c][0].id == event_target.id || ALL_MENUSLINKS[c][0].id == event_target.parentNode.id) {							link_obj = event_target;							break;						}					}				}			}			if(positions[0] < menu_obj.left()) { should_close = true; }			if(positions[0] > menu_obj.right()) { should_close = true; }			if(positions[1] < menu_obj.top()) { should_close = true; }			if(positions[1] > menu_obj.bottom()) { should_close = true; }			if(event_target.id == link_obj.id || event_target.parentNode.id == link_obj.id) { should_close = false; }			if(event_target.id == menu_obj.id) { should_close = false; }		}				return should_close;	}
meta: 8193	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/8193/d55368118dec4a8f237e8e432dd97304d21083d6/k4_menu.js/clean/trunk/upload/js/k4_menu.js