roneditor.edit.utils
Class TreeDirectEditManager

java.lang.Object
  extended by roneditor.edit.utils.TreeDirectEditManager

public class TreeDirectEditManager
extends java.lang.Object

A helper class to perform a direct edit on a TreeEditPart with a TextCellEditor. Adapted for TreeEditParts from DirectEditManager.

Author:
Tony Modica

Field Summary
private  org.eclipse.jface.viewers.CellEditor cellEditor
           
private  org.eclipse.jface.viewers.ICellEditorListener cellEditorListener
           
private  boolean committing
           
private  boolean dirty
          Is true if the cell editor's value has been changed.
private  org.eclipse.gef.EditPartListener editPartListener
           
private  org.eclipse.gef.requests.DirectEditRequest request
           
private  org.eclipse.gef.TreeEditPart source
           
private  org.eclipse.swt.custom.TreeEditor tableEditor
           
 
Constructor Summary
TreeDirectEditManager(org.eclipse.gef.TreeEditPart source)
          Constructs a new DirectEditManager for the given source edit part.
 
Method Summary
 void bringDown()
          Cleanup is done here.
private  void commit()
          Commits the current value of the cell editor by getting a Command from the source edit part and executing it via the CommandStack.
private  org.eclipse.gef.requests.DirectEditRequest getDirectEditRequest()
           
private  void hookListeners()
           
private  void initCellEditor()
          Initializes the cell editor.
private  void setCellEditor(org.eclipse.jface.viewers.CellEditor editor)
           
 void show()
          Shows the cell editor when direct edit is started.
private  void unhookListeners()
          Unhooks listeners.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cellEditorListener

private org.eclipse.jface.viewers.ICellEditorListener cellEditorListener

dirty

private boolean dirty
Is true if the cell editor's value has been changed.


request

private org.eclipse.gef.requests.DirectEditRequest request

editPartListener

private org.eclipse.gef.EditPartListener editPartListener

source

private org.eclipse.gef.TreeEditPart source

cellEditor

private org.eclipse.jface.viewers.CellEditor cellEditor

committing

private boolean committing

tableEditor

private org.eclipse.swt.custom.TreeEditor tableEditor
Constructor Detail

TreeDirectEditManager

public TreeDirectEditManager(org.eclipse.gef.TreeEditPart source)
Constructs a new DirectEditManager for the given source edit part. A new TextCellEditor will be created and placed using the given CellEditorLocator.

Parameters:
source - The source edit part
Method Detail

bringDown

public void bringDown()
Cleanup is done here. Any feedback is erased and listeners unhooked. If the cell editor is not null, it will be deativated, disposed, and set to null.


show

public void show()
Shows the cell editor when direct edit is started. Calls initCellEditor() and CellEditor.activate().


commit

private void commit()
Commits the current value of the cell editor by getting a Command from the source edit part and executing it via the CommandStack. Finally, bringDown() is called to perform and necessary cleanup.


getDirectEditRequest

private org.eclipse.gef.requests.DirectEditRequest getDirectEditRequest()

hookListeners

private void hookListeners()

initCellEditor

private void initCellEditor()
Initializes the cell editor. This could be extended to set the initial text and add things such as VerifyListeners, if needed.


setCellEditor

private void setCellEditor(org.eclipse.jface.viewers.CellEditor editor)

unhookListeners

private void unhookListeners()
Unhooks listeners. Called from bringDown().