1 6 7 package com.jaspersoft.jasperserver.irplugin.gui.dndobjects; 8 import com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor; 9 import com.jaspersoft.jasperserver.irplugin.RepositoryFile; 10 import com.jaspersoft.jasperserver.irplugin.RepositoryFolder; 11 import it.businesslogic.ireport.ImageReportElement; 12 import it.businesslogic.ireport.Report; 13 import it.businesslogic.ireport.SubReportElement; 14 import it.businesslogic.ireport.TextFieldReportElement; 15 import it.businesslogic.ireport.gui.FieldPatternDialog; 16 import it.businesslogic.ireport.gui.MainFrame; 17 import it.businesslogic.ireport.gui.event.ReportElementChangedEvent; 18 import it.businesslogic.ireport.gui.library.*; 19 import java.awt.Graphics ; 20 import java.awt.Image ; 21 import java.awt.Point ; 22 import java.awt.image.ImageObserver ; 23 import java.awt.image.ImageProducer ; 24 import javax.swing.JOptionPane ; 25 29 public class FileObject extends AbstractLibraryObject { 30 31 private RepositoryFolder repositoryFile = null; 32 33 34 public FileObject(RepositoryFolder repositoryFile) { 35 this.setRepositoryFile(repositoryFile); 36 } 37 38 public String getName() 39 { 40 return "" + repositoryFile; 41 } 42 43 public void drop(java.awt.dnd.DropTargetDropEvent dtde) { 44 45 if (getRepositoryFile().getDescriptor().getWsType().equals( ResourceDescriptor.TYPE_IMAGE)) 46 { 47 ImageReportElement ire = new ImageReportElement(0,0,10,10); 48 ire.setImageClass("java.lang.String"); 49 ire.setImageExpression("\"repo:" + getRepositoryFile().getDescriptor().getUriString() + "\""); 50 int w=200,h=100; 52 try { 53 String fileName = ((RepositoryFile)getRepositoryFile()).getFile(); 54 if (fileName != null) 55 { 56 javax.swing.ImageIcon img = new javax.swing.ImageIcon (fileName); 57 ire.setImg(img.getImage()); 58 w = img.getIconWidth(); 59 h = img.getIconHeight(); 60 } 61 } catch (Exception ex) { 62 ex.printStackTrace(); 63 } 64 getReportFrame().dropReportElement( dtde.getLocation(), ire, w, h); 65 } 66 else if (getRepositoryFile().getDescriptor().getWsType().equals( ResourceDescriptor.TYPE_JRXML)) 67 { 68 Report report = getReport(); 69 if (getRepositoryFile().getDescriptor().isMainReport()) return; 70 SubReportElement sre = new SubReportElement(0,0,10,10); 71 sre.setSubreportExpressionClass("java.lang.String"); 72 sre.setSubreportExpression("\"" + getRepositoryFile().getDescriptor().getUriString() + "\""); 73 Point p = dtde.getLocation(); 74 p.x = getReportFrame().getZoomedDim( report.getLeftMargin()) - getReportFrame().getHScroll()+10; 75 getReportFrame().dropReportElement( p, sre, 76 report.getWidth() - report.getLeftMargin() - report.getRightMargin(), 100); 77 } 78 } 79 80 public RepositoryFolder getRepositoryFile() { 81 return repositoryFile; 82 } 83 84 public void setRepositoryFile(RepositoryFolder repositoryFile) { 85 this.repositoryFile = repositoryFile; 86 } 87 88 } 89 | Popular Tags |