Source of MultiLineStringEditor.java


  1: import java.awt.Component;
  2: import java.beans.PropertyEditorSupport;
  3: import javax.swing.JScrollPane;
  4: import javax.swing.JTextArea;
  5: import javax.swing.event.DocumentEvent;
  6: import javax.swing.event.DocumentListener;
  7: import javax.swing.text.Document;

  9: /**
 10:    A property editor for the MultiLineString type.
 11: */
 12: public class MultiLineStringEditor extends PropertyEditorSupport
 13: {
 14:    public boolean supportsCustomEditor()
 15:    {
 16:       return true;
 17:    }

 19:    public Component getCustomEditor()
 20:    {
 21:       final MultiLineString value = (MultiLineString) getValue();
 22:       final JTextArea textArea = new JTextArea(value.getText(),10, 40);
 23:       textArea.getDocument().addDocumentListener(new
 24:          DocumentListener()
 25:          {
 26:             public void insertUpdate(DocumentEvent e)
 27:             {
 28:                value.setText(textArea.getText());
 29:                firePropertyChange();
 30:             }
 31:             public void removeUpdate(DocumentEvent e)
 32:             {
 33:                value.setText(textArea.getText());
 34:                firePropertyChange();
 35:             }
 36:             public void changedUpdate(DocumentEvent e)
 37:             {
 38:             }
 39:          });
 40:       return new JScrollPane(textArea);
 41:    }
 42: }