org.eclipse.gef.tools
Class DirectEditManager
java.lang.Object
org.eclipse.gef.tools.DirectEditManager
- public abstract class DirectEditManager
- extends java.lang.Object
Manages the direct edit operation by creating and maintaining the
CellEditor
and executing the resulting command if
the cell editor value has changed.
Methods inherited from class java.lang.Object
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
|
DirectEditManager
public DirectEditManager(
GraphicalEditPart source,
java.lang.Class editorType,
CellEditorLocator locator)
- Constructs a new DirectEditManager for the given source edit part. The cell editor
will be created by instantiating the type editorType. The cell editor will be
placed using the given CellEditorLocator.
-
Parameters:
-
source
- the source edit part -
editorType
- the cell editor type -
locator
- the locator
DirectEditManager
public DirectEditManager(
GraphicalEditPart source,
java.lang.Class editorType,
CellEditorLocator locator,
java.lang.Object feature)
- Constructs a new DirectEditManager for the given source edit part. The cell editor
will be created by instantiating the type editorType. The cell editor will be
placed using the given CellEditorLocator.
-
Parameters:
-
source
- the source edit part -
editorType
- the cell editor type -
locator
- the locator -
feature
- If the EditPart supports direct editing of multiple features, this parameter can be
used to discriminate among them. -
Since:
- 3.2
bringDown
protected 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
.
-
commit
protected 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.
-
createCellEditorOn
protected
CellEditor createCellEditorOn(Composite composite)
- Creates the cell editor on the given composite. The cell editor is created by
instantiating the cell editor type passed into this DirectEditManager's constuctor.
-
-
Parameters:
-
composite
- the composite to create the cell editor on
-
Returns:
- the newly created cell editor
createDirectEditRequest
protected
DirectEditRequest createDirectEditRequest()
- Creates and returns the DirectEditRequest.
-
-
Returns:
- the direct edit request
eraseFeedback
protected void eraseFeedback()
- Asks the source edit part to erase source feedback.
-
getCellEditor
protected
CellEditor getCellEditor()
- Returns the cell editor.
-
-
Returns:
- the cell editor
getDirectEditFeature
protected java.lang.Object getDirectEditFeature()
-
-
Returns:
-
Object
that can be used if the EditPart supports direct editing of multiple
features, this parameter can be used to discriminate among them. -
Since:
- 3.2
getDirectEditRequest
protected
DirectEditRequest getDirectEditRequest()
- Returns the direct edit request, creating it if needed.
-
-
Returns:
- the direct edit request
getEditPart
protected
GraphicalEditPart getEditPart()
- Returns the source edit part.
-
-
Returns:
- the source edit part
getLocator
protected
CellEditorLocator getLocator()
-
handleValueChanged
protected void handleValueChanged()
-
hookListeners
protected void hookListeners()
-
initCellEditor
protected abstract void initCellEditor()
- Initializes the cell editor. Subclasses should implement this to set the initial text
and add things such as
VerifyListeners
, if needed.
-
isDirty
protected boolean isDirty()
- Returns
true
if the cell editor's value has been changed.
-
-
Returns:
-
true
if the cell editor is dirty
setCellEditor
protected void setCellEditor(
CellEditor editor)
- Sets the cell editor to the given editor.
-
-
Parameters:
-
editor
- the cell editor
setDirty
protected void setDirty(boolean value)
- Sets the dirty property.
-
-
Parameters:
-
value
- the dirty property
setEditPart
protected void setEditPart(
GraphicalEditPart source)
- Sets the source edit part.
-
-
Parameters:
-
source
- the source edit part
setLocator
public void setLocator(
CellEditorLocator locator)
- Sets the CellEditorLocator used to place the cell editor in the correct location.
-
-
Parameters:
-
locator
- the locator
show
public void show()
- Shows the cell editor when direct edit is started. Calls
initCellEditor()
,
CellEditor.activate()
, and
showFeedback()
.
-
showFeedback
public void showFeedback()
- Asks the source edit part to show source feedback.
-
unhookListeners
protected void unhookListeners()
- Unhooks listeners. Called from
bringDown()
.
-
Copyright (c) IBM Corp. and others 2000, 2007. All Rights Reserved.