try { notifyListeners(DND.DragStart,event); } catch (Throwable e) { return; }
notifyListeners(DND.DragStart,event);
private void drag() {	DNDEvent event = new DNDEvent();	event.widget = this;	event.time = OS.GetMessageTime();	event.doit = true;	try {		notifyListeners(DND.DragStart,event);	} catch (Throwable e) {		return;	}	if (!event.doit || transferAgents == null || transferAgents.length == 0 ) return;		int[] pdwEffect = new int[1];	int operations = opToOs(getStyle());	int result = COM.DoDragDrop(iDataObject.getAddress(), iDropSource.getAddress(), operations, pdwEffect);	int operation = osToOp(pdwEffect[0]);	if (dataEffect == DND.DROP_MOVE) {		operation = (operation == DND.DROP_NONE || operation == DND.DROP_COPY) ? DND.DROP_TARGET_MOVE : DND.DROP_MOVE;	} else {		if (dataEffect != DND.DROP_NONE) {			operation = dataEffect;		}	}	event = new DNDEvent();	event.widget = this;	event.time = OS.GetMessageTime();	event.doit = (result == COM.DRAGDROP_S_DROP);	event.detail = operation;	try {		notifyListeners(DND.DragEnd,event);	} catch (Throwable e) {}	dataEffect = DND.DROP_NONE;}