/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package eric; import java.awt.Image; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.util.ArrayList; import java.util.Enumeration; import java.util.Vector; import javax.imageio.ImageIO; import rene.util.FileName; import rene.zirkel.objects.ConstructionObject; import rene.zirkel.objects.ImageObject; /** * * @author erichake */ public class Media { private byte[] imagebytes; private String imagefilename; //short name, with extension and without path private static ArrayList medias=new ArrayList(); private Media(String name, byte[] datas) { imagefilename=name; imagebytes=datas; } private Media(String name, InputStream in) { this(name, FileTools.copyToByteArray(in)); } public String getImageFileName(){ return imagefilename; } public byte[] getImageBytes(){ return imagebytes; } static public ArrayList getMedias(){ return medias; } public static void clearMedias() { medias=null; medias=new ArrayList(); } static public void createMedia(String name, byte[] datas) { medias.add(new Media(name, datas)); } static public void createMedia(String filename) { String shortname=FileName.filename(filename); for (int i=0; i=0; i--){ compt = 0; e = JZirkelCanvas.getCurrentZC().getConstruction().elements(); while(e.hasMoreElements() && compt==0){ ConstructionObject o = (ConstructionObject) e.nextElement(); if(o instanceof ImageObject && ((ImageObject) o).getFilename().equals(medias.get(i).getImageFileName())){ compt++; } } if(compt==0) { medias.remove(i); } } return medias.size(); } static public Image getImage(String name) { String shortname=FileName.filename(name); for (int i=0; i