1 17 18 package org.sape.carbon.services.swing.treetable; 19 20 import java.util.EventObject ; 21 22 import javax.swing.CellEditor ; 23 import javax.swing.event.CellEditorListener ; 24 import javax.swing.event.ChangeEvent ; 25 import javax.swing.event.EventListenerList ; 26 27 public class AbstractCellEditor implements CellEditor { 28 29 protected EventListenerList listenerList = new EventListenerList (); 30 31 public Object getCellEditorValue() { return null; } 32 public boolean isCellEditable(EventObject e) { return true; } 33 public boolean shouldSelectCell(EventObject anEvent) { return false; } 34 public boolean stopCellEditing() { return true; } 35 public void cancelCellEditing() {} 36 37 public void addCellEditorListener(CellEditorListener l) { 38 listenerList.add(CellEditorListener .class, l); 39 } 40 41 public void removeCellEditorListener(CellEditorListener l) { 42 listenerList.remove(CellEditorListener .class, l); 43 } 44 45 50 protected void fireEditingStopped() { 51 Object [] listeners = listenerList.getListenerList(); 53 for (int i = listeners.length-2; i>=0; i-=2) { 56 if (listeners[i]==CellEditorListener .class) { 57 ((CellEditorListener )listeners[i+1]).editingStopped(new ChangeEvent (this)); 58 } 59 } 60 } 61 62 67 protected void fireEditingCanceled() { 68 Object [] listeners = listenerList.getListenerList(); 70 for (int i = listeners.length-2; i>=0; i-=2) { 73 if (listeners[i]==CellEditorListener .class) { 74 ((CellEditorListener )listeners[i+1]).editingCanceled(new ChangeEvent (this)); 75 } 76 } 77 } 78 } 79 | Popular Tags |