org.eclipse.swt.custom
Class TreeEditor
java.lang.Object
|
+--org.eclipse.swt.custom.ControlEditor
|
+--org.eclipse.swt.custom.TreeEditor
- public class TreeEditor
- extends ControlEditor
A TreeEditor is a manager for a Control that appears above a cell in a Tree and tracks with the
moving and resizing of that cell. It can be used to display a text widget above a cell
in a Tree so that the user can edit the contents of that cell. It can also be used to display
a button that can launch a dialog for modifying the contents of the associated cell.
Here is an example of using a TreeEditor:
final Tree tree = new Tree(parent, SWT.FULL_SELECTION);
final TreeEditor editor = new TreeEditor (tree);
tree.addSelectionListener (new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
// Clean up any previous editor control
Control oldEditor = editor.getEditor();
if (oldEditor != null)
oldEditor.dispose();
// Identify the selected row
TreeItem item = (TreeItem)e.item;
// The control that will be the editor must be a child of the Tree
Text text = new Text(tree, SWT.NONE);
//The text editor must have the same size as the cell and must
//not be any smaller than 50 pixels.
editor.horizontalAlignment = SWT.LEFT;
editor.grabHorizontal = true;
editor.minimumWidth = 50;
// Open the text editor on the selected row.
editor.setEditor (text, item);
// Assign focus to the text control
text.setFocus ();
}
});
Constructor Summary |
TreeEditor(Tree tree)
Creates a TreeEditor for the specified Tree. |
Method Summary |
void |
dispose()
Removes all associations between the TreeEditor and the cell in the tree. |
TreeItem |
getItem()
Returns the TreeItem for the row of the cell being tracked by this editor. |
void |
setEditor(Control editor,
TreeItem item)
Specify the Control that is to be displayed and the cell in the tree that it is to be positioned above. |
void |
setItem(TreeItem item)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TreeEditor
public TreeEditor(Tree tree)
- Creates a TreeEditor for the specified Tree.
- Parameters:
tree
- the Tree Control above which this editor will be displayed
dispose
public void dispose()
- Removes all associations between the TreeEditor and the cell in the tree. The
tree and the editor Control are not disposed.
- Overrides:
dispose
in class ControlEditor
getItem
public TreeItem getItem()
- Returns the TreeItem for the row of the cell being tracked by this editor.
- Returns:
- the TreeItem for the row of the cell being tracked by this editor
setItem
public void setItem(TreeItem item)
setEditor
public void setEditor(Control editor,
TreeItem item)
- Specify the Control that is to be displayed and the cell in the tree that it is to be positioned above.
Note: The Control provided as the editor must be created with its parent being the Tree control
specified in the TreeEditor constructor.
- Parameters:
editor
- the Control that is displayed above the cell being editeditem
- the TreeItem for the row of the cell being tracked by this editorcolumn
- the zero based index of the column of the cell being tracked by this editor
Copyright (c) IBM Corp. and others 2000, 2003. All Rights Reserved.