下面列出了怎么用javax.swing.tree.TreeCellEditor的API类实例代码及写法,或者点击链接到github查看源代码。
/** Synchronize the root context from the manager of this Explorer.
*/
final void synchronizeRootContext() {
// #151850 cancel editing before changing root node
Mutex.EVENT.readAccess(new Runnable() {
@Override
public void run() {
TreeCellEditor cellEditor = tree.getCellEditor();
if (cellEditor instanceof TreeViewCellEditor) {
((TreeViewCellEditor) cellEditor).abortTimer();
}
tree.cancelEditing();
final Node rc = manager.getRootContext();
LOG.log(Level.FINE, "synchronizeRootContext {0}", rc);
treeModel.setNode(rc, visHolder);
}
});
}
@Override
public void installUI (JComponent c) {
super.installUI (c);
DefaultTreeCellRenderer renderer = new MaterialTreeCellRenderer ();
TreeCellEditor editor = new MaterialTreeCellEditor (tree, renderer);
tree.setCellRenderer (renderer);
tree.setCellEditor (editor);
tree.setFont (UIManager.getFont ("Tree.font"));
tree.setForeground (UIManager.getColor ("Tree.foreground"));
tree.setBackground (UIManager.getColor ("Tree.background"));
tree.setRowHeight (0);
tree.setInvokesStopCellEditing (true);
MaterialTreeUI ui = (MaterialTreeUI) tree.getUI ();
ui.setLeftChildIndent (10);
ui.setRightChildIndent (10);
tree.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
public static boolean isInCell(final Component c) {
if (getParentOfType(DarkTableHeaderRendererPane.class, c, CELL_SEARCH_DEPTH) != null) return false;
boolean inCellRenderer = getParentOfType(c, CELL_SEARCH_DEPTH, CellRendererPane.class, CellEditor.class,
TableCellRenderer.class, TableCellEditor.class,
TreeCellRenderer.class, TreeCellEditor.class,
ListCellRenderer.class, CellRenderer.class) != null;
return inCellRenderer && getParentOfType(JComboBox.class, c) == null;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* This is invoked if a TreeCellEditor is not supplied in the constructor.
* It returns a TextField editor.
*/
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public void addNotify() {
stopped = cancelled = false;
super.addNotify();
requestFocus();
}
};
//#137454 - text not visible in in-place editor
String laf = UIManager.getLookAndFeel().getID();
if( "GTK".equals( laf ) ) { //NOI18N
tf.setBorder( BorderFactory.createEmptyBorder() );
} else if( "Nimbus".equals( laf ) ) { //NOI18N
tf.setBorder( BorderFactory.createLineBorder( new JTree().getBackground() ) );
}
tf.registerKeyboardAction( //TODO update to use inputMap/actionMap
this, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0, true), JComponent.WHEN_FOCUSED);
tf.addFocusListener(this);
Ed ed = new Ed(tf);
ed.setClickCountToStart(1);
ed.getComponent().getAccessibleContext().setAccessibleDescription(
NbBundle.getMessage(TreeViewCellEditor.class, "ACSD_TreeViewCellEditor")
); // NOI18N
ed.getComponent().getAccessibleContext().setAccessibleName(
NbBundle.getMessage(TreeViewCellEditor.class, "ACSN_TreeViewCellEditor")
); // NOI18N
return ed;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
@SuppressWarnings("serial") // anonymous class
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
@SuppressWarnings("serial") // anonymous class
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* Maps {@code JTree.getCellEditor()} through queue
*/
public TreeCellEditor getCellEditor() {
return (runMapping(new MapAction<TreeCellEditor>("getCellEditor") {
@Override
public TreeCellEditor map() {
return ((JTree) getSource()).getCellEditor();
}
}));
}
/**
* Maps {@code JTree.setCellEditor(TreeCellEditor)} through queue
*/
public void setCellEditor(final TreeCellEditor treeCellEditor) {
runMapping(new MapVoidAction("setCellEditor") {
@Override
public void map() {
((JTree) getSource()).setCellEditor(treeCellEditor);
}
});
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}
/**
* {@inheritDoc}
*/
@Override
protected TreeCellEditor createDefaultCellEditor() {
TreeCellRenderer renderer = tree.getCellRenderer();
DefaultTreeCellEditor editor;
if(renderer != null && (renderer instanceof DefaultTreeCellRenderer)) {
editor = new SynthTreeCellEditor(tree, (DefaultTreeCellRenderer)
renderer);
}
else {
editor = new SynthTreeCellEditor(tree, null);
}
return editor;
}
@Override
protected TreeCellEditor createTreeCellEditor() {
JTextField tf = new JTextField() {
@Override
public String getName() {
return "Tree.cellEditor";
}
};
DefaultCellEditor editor = new DefaultCellEditor(tf);
// One click to edit.
editor.setClickCountToStart(1);
return editor;
}