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.gui.SectionWidget; 6 import jimm.datavision.gui.SectionFieldPanel; 7 import jimm.datavision.gui.FieldWidget; 8 import jimm.datavision.gui.TextFieldWidget; 9 import java.awt.event.MouseEvent ; 10 import java.awt.Component ; 11 12 17 public class NewTextFieldCommand extends InsertFieldCommand { 18 19 public NewTextFieldCommand(SectionWidget sw, MouseEvent e) { 20 super(sw, "text", new Point(e.getPoint())); 21 22 Component c = e.getComponent(); 25 while (!(c instanceof SectionFieldPanel)) { 26 java.awt.Rectangle bounds = c.getBounds(); 27 insertLoc.translate(bounds.x, bounds.y); 28 c = c.getParent(); 29 if (c == null) break; 31 } 32 } 33 34 public void perform() { 35 super.perform(); 36 ((TextFieldWidget)fw).startEditing(); } 38 39 protected Rectangle initialFieldBounds() { 40 return new Rectangle(insertLoc.getX(), 41 insertLoc.getY() - (int)(Field.DEFAULT_HEIGHT / 2), 42 (double)Field.DEFAULT_WIDTH, 43 (double)Field.DEFAULT_HEIGHT); 44 } 45 46 protected Object initialFieldValue() { 47 return ""; 48 } 49 50 protected FieldWidget createFieldWidget(Field f) { 51 return new TextFieldWidget(null, f); 52 } 53 54 } 55 | Popular Tags |