rem: var dragService = Components.classes["@mozilla.org/widget/dragservice;1"].getService(); if (dragService) dragService = dragService.QueryInterface(Components.interfaces.nsIDragService); if (!dragService)	return(false);  var dragSession = dragService.getCurrentSession(); if ( !dragSession )	return(false); 
add: var dragService = Components.classes["@mozilla.org/widget/dragservice;1"].getService(); if (dragService) dragService = dragService.QueryInterface(Components.interfaces.nsIDragService); if (!dragService) return(false); 
context: function DropOnAddressListTree(event){	var rdf = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService();	if (rdf)   		rdf = rdf.QueryInterface(Components.interfaces.nsIRDFService);	if (!rdf) return(false);	var dragService = Components.classes["@mozilla.org/widget/dragservice;1"].getService();	if (dragService) 		dragService = dragService.QueryInterface(Components.interfaces.nsIDragService);	if (!dragService)	return(false);		var dragSession = dragService.getCurrentSession();	if ( !dragSession )	return(false);	var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);	if ( !trans ) return(false);	trans.addDataFlavor("text/nsabcard");	for ( var i = 0; i < dragSession.numDropItems; ++i )	{		dragSession.getData ( trans, i );		var dataObj = new Object();		var bestFlavor = new Object();		var len = new Object();		trans.getAnyTransferData ( bestFlavor, dataObj, len );		if ( dataObj )	dataObj = dataObj.value.QueryInterface(Components.interfaces.nsISupportsWString);		if ( !dataObj )	continue;		// pull the URL out of the data object		var sourceID = dataObj.data.substring(0, len.value);		if (!sourceID)	continue;		var cardResource = rdf.GetResource(sourceID);		var card = cardResource.QueryInterface(Components.interfaces.nsIAbCard);				if (card.isMailList)			DropListAddress(card.name); 		else		{			var address;			if (card.name.length)				address = card.name + " <" + card.primaryEmail + ">";			else				address = card.primaryEmail;			DropListAddress(address); 		}			}	return(false);}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/0b2dd2b2d2fd037df917e07645fa019a963332a5/abMailListDialog.js/clean/mailnews/addrbook/resources/content/abMailListDialog.js