try { notifyListeners(DND.DragSetData, event); } catch (Throwable e) { return; }
notifyListeners(DND.DragSetData, event);
void dragGetData(int /*long*/ widget, int /*long*/ context, int /*long*/ selection_data,  int info, int time){	if (selection_data == 0) return;		GtkSelectionData gtkSelectionData = new GtkSelectionData();	OS.memmove(gtkSelectionData, selection_data, GtkSelectionData.sizeof);	if (gtkSelectionData.target == 0) return;		TransferData transferData = new TransferData();	transferData.type = gtkSelectionData.target;	transferData.pValue = gtkSelectionData.data;	transferData.length = gtkSelectionData.length;	transferData.format = gtkSelectionData.format;			DNDEvent event = new DNDEvent();	event.widget = this;	event.time = time; 	event.dataType = transferData; 	try {		notifyListeners(DND.DragSetData, event);	} catch (Throwable e) {		return;	}	if (event.data == null) return;			Transfer transfer = null;	for (int i = 0; i < transferAgents.length; i++) {		if (transferAgents[i].isSupportedType(transferData)) {			transfer = transferAgents[i];			break;		}	}	if (transfer == null) return;	transfer.javaToNative(event.data, transferData);	if (transferData.result != 1) return;	OS.gtk_selection_data_set(selection_data, transferData.type, transferData.format, transferData.pValue, transferData.length);	return;	}