/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.clothocore.api.dnd; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.UnsupportedFlavorException; import java.io.IOException; import javax.swing.TransferHandler; import org.clothocore.api.data.ObjBase; import org.clothocore.api.dnd.TransferableObject; import org.openide.util.Exceptions; /** * * @author jenhan */ public class ObjBaseTransferHandler extends TransferHandler { public ObjBaseTransferHandler(ObjBaseDropTarget target) { _target=target; } @Override public boolean importData(TransferHandler.TransferSupport support) { try { ObjBase o= (ObjBase) support.getTransferable().getTransferData(TransferableObject.objBaseFlavor); _target.handleDropedObject(o); } catch (UnsupportedFlavorException ex) { Exceptions.printStackTrace(ex); } catch (IOException ex) { Exceptions.printStackTrace(ex); } return super.importData(support); } @Override public boolean canImport(TransferHandler.TransferSupport support) { try { if (support.getTransferable().getTransferData(TransferableObject.objBaseFlavor) != null) { return true; } } catch (UnsupportedFlavorException ex) { Exceptions.printStackTrace(ex); return false; } catch (IOException ex) { Exceptions.printStackTrace(ex); return false; } return false; } private ObjBaseDropTarget _target; }