Save This Page
Home » openjdk-7 » javax » swing » tree » [javadoc | source]
javax.swing.tree
public class: DefaultTreeCellEditor [javadoc | source]
java.lang.Object
   javax.swing.tree.DefaultTreeCellEditor

All Implemented Interfaces:
    ActionListener, TreeCellEditor, TreeSelectionListener

Direct Known Subclasses:
    SynthTreeCellEditor

A TreeCellEditor. You need to supply an instance of DefaultTreeCellRenderer so that the icons can be obtained. You can optionally supply a TreeCellEditor that will be layed out according to the icon in the DefaultTreeCellRenderer. If you do not supply a TreeCellEditor, a TextField will be used. Editing is started on a triple mouse click, or after a click, pause, click and a delay of 1200 miliseconds.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the java.beans package. Please see java.beans.XMLEncoder .

Nested Class Summary:
public class  DefaultTreeCellEditor.DefaultTextField  TextField used when no editor is supplied. This textfield locks into the border it is constructed with. It also prefers its parents font over its font. And if the renderer is not null and no font has been specified the preferred height is that of the renderer. 
public class  DefaultTreeCellEditor.EditorContainer  Container responsible for placing the editingComponent
Field Summary
protected  TreeCellEditor realEditor    Editor handling the editing. 
protected  DefaultTreeCellRenderer renderer    Renderer, used to get border and offsets from. 
protected  Container editingContainer    Editing container, will contain the editorComponent
protected transient  Component editingComponent    Component used in editing, obtained from the editingContainer
protected  boolean canEdit    As of Java 2 platform v1.4 this field should no longer be used. If you wish to provide similar behavior you should directly override isCellEditable
protected transient  int offset    Used in editing. Indicates x position to place editingComponent
protected transient  JTree tree    JTree instance listening too. 
protected transient  TreePath lastPath    Last path that was selected. 
protected transient  Timer timer    Used before starting the editing session. 
protected transient  int lastRow    Row that was last passed into getTreeCellEditorComponent
protected  Color borderSelectionColor    True if the border selection color should be drawn. 
protected transient  Icon editingIcon    Icon to use when editing. 
protected  Font font    Font to paint with, null indicates font of renderer is to be used. 
Constructor:
 public DefaultTreeCellEditor(JTree tree,
    DefaultTreeCellRenderer renderer) 
    Constructs a DefaultTreeCellEditor object for a JTree using the specified renderer and a default editor. (Use this constructor for normal editing.)
    Parameters:
    tree - a JTree object
    renderer - a DefaultTreeCellRenderer object
 public DefaultTreeCellEditor(JTree tree,
    DefaultTreeCellRenderer renderer,
    TreeCellEditor editor) 
    Constructs a DefaultTreeCellEditor object for a JTree using the specified renderer and the specified editor. (Use this constructor for specialized editing.)
    Parameters:
    tree - a JTree object
    renderer - a DefaultTreeCellRenderer object
    editor - a TreeCellEditor object
Method from javax.swing.tree.DefaultTreeCellEditor Summary:
actionPerformed,   addCellEditorListener,   canEditImmediately,   cancelCellEditing,   createContainer,   createTreeCellEditor,   determineOffset,   getBorderSelectionColor,   getCellEditorListeners,   getCellEditorValue,   getFont,   getTreeCellEditorComponent,   inHitRegion,   isCellEditable,   prepareForEditing,   removeCellEditorListener,   setBorderSelectionColor,   setFont,   setTree,   shouldSelectCell,   shouldStartEditingTimer,   startEditingTimer,   stopCellEditing,   valueChanged
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.swing.tree.DefaultTreeCellEditor Detail:
 public  void actionPerformed(ActionEvent e) 
    Messaged when the timer fires, this will start the editing session.
 public  void addCellEditorListener(CellEditorListener l) 
    Adds the CellEditorListener.
 protected boolean canEditImmediately(EventObject event) 
    Returns true if event is null, or it is a MouseEvent with a click count > 2 and inHitRegion returns true.
 public  void cancelCellEditing() 
    Messages cancelCellEditing to the realEditor and removes it from this instance.
 protected Container createContainer() 
    Creates the container to manage placement of editingComponent.
 protected TreeCellEditor createTreeCellEditor() 
    This is invoked if a TreeCellEditor is not supplied in the constructor. It returns a TextField editor.
 protected  void determineOffset(JTree tree,
    Object value,
    boolean isSelected,
    boolean expanded,
    boolean leaf,
    int row) 
 public Color getBorderSelectionColor() 
    Returns the color the border is drawn.
 public CellEditorListener[] getCellEditorListeners() 
    Returns an array of all the CellEditorListeners added to this DefaultTreeCellEditor with addCellEditorListener().
 public Object getCellEditorValue() 
    Returns the value currently being edited.
 public Font getFont() 
    Gets the font used for editing.
 public Component getTreeCellEditorComponent(JTree tree,
    Object value,
    boolean isSelected,
    boolean expanded,
    boolean leaf,
    int row) 
    Configures the editor. Passed onto the realEditor.
 protected boolean inHitRegion(int x,
    int y) 
    Returns true if the passed in location is a valid mouse location to start editing from. This is implemented to return false if x is <= the width of the icon and icon gap displayed by the renderer. In other words this returns true if the user clicks over the text part displayed by the renderer, and false otherwise.
 public boolean isCellEditable(EventObject event) 
    If the realEditor returns true to this message, prepareForEditing is messaged and true is returned.
 protected  void prepareForEditing() 
    Invoked just before editing is to start. Will add the editingComponent to the editingContainer.
 public  void removeCellEditorListener(CellEditorListener l) 
    Removes the previously added CellEditorListener.
 public  void setBorderSelectionColor(Color newColor) 
    Sets the color to use for the border.
 public  void setFont(Font font) 
    Sets the font to edit with. null indicates the renderers font should be used. This will NOT override any font you have set in the editor the receiver was instantied with. If null for an editor was passed in a default editor will be created that will pick up this font.
 protected  void setTree(JTree newTree) 
    Sets the tree currently editing for. This is needed to add a selection listener.
 public boolean shouldSelectCell(EventObject event) 
    Messages the realEditor for the return value.
 protected boolean shouldStartEditingTimer(EventObject event) 
    Returns true if event is a MouseEvent and the click count is 1.
 protected  void startEditingTimer() 
    Starts the editing timer.
 public boolean stopCellEditing() 
    If the realEditor will allow editing to stop, the realEditor is removed and true is returned, otherwise false is returned.
 public  void valueChanged(TreeSelectionEvent e) 
    Resets lastPath.