org.jdesktop.swingx.tree
Class DefaultXTreeCellEditor

java.lang.Object
  extended by javax.swing.tree.DefaultTreeCellEditor
      extended by org.jdesktop.swingx.tree.DefaultXTreeCellEditor
All Implemented Interfaces:
ActionListener, EventListener, CellEditor, TreeSelectionListener, TreeCellEditor, UIDependent

public class DefaultXTreeCellEditor
extends DefaultTreeCellEditor
implements UIDependent

Subclassed to hack around core bug with RtoL editing (#4980473). The price to pay is currently is to guarantee a minimum size of the editing field (is only one char wide if the node value is null). PENDING: any possibility to position the editorContainer? BasicTreeUI adds it to the tree and positions at the node location. That's not a problem in LToR, only in RToL


Nested Class Summary
 class DefaultXTreeCellEditor.XEditorContainer
           
 
Nested classes/interfaces inherited from class javax.swing.tree.DefaultTreeCellEditor
DefaultTreeCellEditor.DefaultTextField, DefaultTreeCellEditor.EditorContainer
 
Field Summary
 
Fields inherited from class javax.swing.tree.DefaultTreeCellEditor
borderSelectionColor, canEdit, editingComponent, editingContainer, editingIcon, font, lastPath, lastRow, offset, realEditor, renderer, timer, tree
 
Constructor Summary
DefaultXTreeCellEditor(JTree tree, DefaultTreeCellRenderer renderer)
           
DefaultXTreeCellEditor(JTree tree, DefaultTreeCellRenderer renderer, TreeCellEditor editor)
           
 
Method Summary
protected  void applyComponentOrientation()
           
protected  Container createContainer()
          Creates the container to manage placement of editingComponent.
 DefaultTreeCellRenderer getRenderer()
           
protected  void prepareForEditing()
          Invoked just before editing is to start.
 void setRenderer(DefaultTreeCellRenderer renderer)
           
 void updateUI()
          Implement UIDependent.
 
Methods inherited from class javax.swing.tree.DefaultTreeCellEditor
actionPerformed, addCellEditorListener, cancelCellEditing, canEditImmediately, createTreeCellEditor, determineOffset, getBorderSelectionColor, getCellEditorListeners, getCellEditorValue, getFont, getTreeCellEditorComponent, inHitRegion, isCellEditable, removeCellEditorListener, setBorderSelectionColor, setFont, setTree, shouldSelectCell, shouldStartEditingTimer, startEditingTimer, stopCellEditing, valueChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultXTreeCellEditor

public DefaultXTreeCellEditor(JTree tree,
                              DefaultTreeCellRenderer renderer)

DefaultXTreeCellEditor

public DefaultXTreeCellEditor(JTree tree,
                              DefaultTreeCellRenderer renderer,
                              TreeCellEditor editor)
Method Detail

setRenderer

public void setRenderer(DefaultTreeCellRenderer renderer)

getRenderer

public DefaultTreeCellRenderer getRenderer()

createContainer

protected Container createContainer()
Description copied from class: javax.swing.tree.DefaultTreeCellEditor
Creates the container to manage placement of editingComponent.

Overrides:
createContainer in class DefaultTreeCellEditor

prepareForEditing

protected void prepareForEditing()
Description copied from class: javax.swing.tree.DefaultTreeCellEditor
Invoked just before editing is to start. Will add the editingComponent to the editingContainer.

Overrides:
prepareForEditing in class DefaultTreeCellEditor

applyComponentOrientation

protected void applyComponentOrientation()

updateUI

public void updateUI()
Implement UIDependent. Quick hack for #1060-swingx: icons lost on laf toggle.

Specified by:
updateUI in interface UIDependent