1 package jimm.datavision.gui.cmd; 2 import jimm.datavision.Point; 3 import jimm.datavision.field.Field; 4 import jimm.datavision.field.Rectangle; 5 import jimm.datavision.field.ImageField; 6 import jimm.datavision.ErrorHandler; 7 import jimm.datavision.gui.SectionWidget; 8 import jimm.datavision.gui.FieldWidget; 9 import jimm.datavision.gui.ImageFieldWidget; 10 import jimm.util.I18N; 11 import javax.swing.ImageIcon ; 12 13 18 public class NewImageFieldCommand extends InsertFieldCommand { 19 20 protected String imageURL; 21 22 public NewImageFieldCommand(SectionWidget sw, String url) { 23 super(sw, "image", new Point(0, 0)); 24 imageURL = url; 25 } 26 27 public void perform() { 28 super.perform(); 29 30 if (!((ImageField)fw.getField()).canLoad()) { 31 ErrorHandler.error(I18N.get("DesignWin.image_load_err_1") 32 + ' ' + imageURL + ' ' 33 + I18N.get("DesignWin.image_load_err_2"), 34 I18N.get("DesignWin.image_load_err_title")); 35 } 36 37 } 38 39 protected Rectangle initialFieldBounds() { 40 ImageIcon imageIcon = ((ImageField)fw.getField()).getImageIcon(); 41 return new Rectangle(insertLoc.x, insertLoc.y, imageIcon.getIconWidth(), 42 imageIcon.getIconHeight()); 43 } 44 45 protected Object initialFieldValue() { 46 return imageURL; 47 } 48 49 protected FieldWidget createFieldWidget(Field f) { 50 return new ImageFieldWidget(null, (ImageField)f); 51 } 52 53 } 54 | Popular Tags |