![JAR search and dependency download from the Maven repository](/logo.png)
com.habibsweb.commons.components.list.DefaultScrollableListTransferable Maven / Gradle / Ivy
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.habibsweb.commons.components.list;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* A class for doing drag and drop with the ScrollableList
*
* @author David Hamilton
*/
public class DefaultScrollableListTransferable implements Transferable {
private List flavors = new ArrayList<>();
/**
* Constructs a new DefaultScrollableListTransferable
*
* @param data the data to transfer
*/
public DefaultScrollableListTransferable(DefaultScrollableListDataFlavor data) {
flavors.add(data);
}
/**
* Constructs a new DefaultScrollableListTransferable
*
* @param datas the data to transfer
*/
public DefaultScrollableListTransferable(DefaultScrollableListDataFlavor[] datas) {
flavors.addAll(Arrays.asList(datas));
}
/**
* Constructs a new DefaultScrollableListTransferable
*
* @param datas the data to transfer
*/
public DefaultScrollableListTransferable(List datas) {
flavors.addAll(datas);
}
@Override
public DataFlavor[] getTransferDataFlavors() {
return flavors.toArray(new DefaultScrollableListDataFlavor[flavors.size()]);
}
@Override
public boolean isDataFlavorSupported(DataFlavor flavor) {
boolean supported = false;
for (DataFlavor mine : getTransferDataFlavors()) {
if (mine.equals(flavor)) {
supported = true;
break;
}
}
return supported;
}
@Override
public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException {
return flavors.toArray(new DefaultScrollableListDataFlavor[flavors.size()]);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy