1 16 17 package com.jaspersoft.jasperserver.irplugin.gui; 18 import com.jaspersoft.jasperserver.irplugin.JServer; 19 import com.jaspersoft.jasperserver.irplugin.RepositoryFolder; 20 import com.jaspersoft.jasperserver.irplugin.gui.dndobjects.FileObject; 21 import java.awt.datatransfer.Transferable ; 22 import javax.swing.*; 23 import javax.swing.tree.*; 24 28 public class ReportElementTransferHandler extends javax.swing.TransferHandler { 29 30 31 public ReportElementTransferHandler() { 32 super(); 33 } 34 35 public int getSourceActions(JComponent c) 36 { 37 38 return COPY_OR_MOVE; 39 } 40 41 protected Transferable createTransferable(JComponent c) 42 { 43 RepositoryFolder rf = getSelectedRepositoryObject(c); 44 if (rf != null) 45 { 46 FileObject fo = new FileObject(rf); 47 return new it.businesslogic.ireport.gui.dnd.TransferableObject(fo); 48 } 49 return new it.businesslogic.ireport.gui.dnd.TransferableObject(c); 50 } 51 52 protected RepositoryFolder getSelectedRepositoryObject(JComponent c) 53 { 54 if (c instanceof JTree) 55 { 56 JTree tree = (JTree)c; 57 TreePath path = tree.getLeadSelectionPath(); 58 DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode)path.getLastPathComponent(); 59 60 if ( selectedNode.getUserObject() instanceof RepositoryFolder ) 61 { 62 RepositoryFolder rf = (RepositoryFolder)selectedNode.getUserObject(); 63 return rf; 64 } 65 } 66 67 return null; 68 } 69 } 70 | Popular Tags |