public class IlvMakeSDMNodeInteractor extends IlvManagerViewInteractor implements IlvPermanentInteractorInterface
IlvMakeNodeInteractor lets the user
create nodes by clicking in an SDM view.| Constructor and Description |
|---|
IlvMakeSDMNodeInteractor()
Creates a new interactor that adds new nodes
to an SDM view.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
attach(IlvManagerView v)
This method is called when the interactor
is attached to the specified manager view.
|
protected IlvEditSDMLabelInteractor |
createEditLabelInteractor()
Factory to create the edit label interactor, used in
createNode(double, double) when autoEditLabel is true. |
protected void |
createNode(double x,
double y)
Creates the new node.
|
protected void |
detach()
This method is called when the interactor
is detached from the specified manager view.
|
Cursor |
getCursor()
Returns the cursor used for editing.
|
IlvSDMEngine |
getEngine()
Returns the SDM Engine attached to this interactor
|
IlvSDMModel |
getPrototypeModel()
Returns the data model that the prototype object belongs to.
|
Object |
getPrototypeObject()
Returns the prototype object used by this interactor
to create new nodes.
|
String |
getTag()
Returns the tag of the objects that will be created by this interactor.
|
void |
init()
Initializes the interactor.
|
boolean |
isAutoEditLabel()
Returns
true if this interactor is in "auto-edit-label" mode,
that is, if it will automatically install a label editing interactor as soon
as the new node is created. |
boolean |
isGridMode()
Returns
true if the interactor snaps the dragged rectangle
to the grid of the view; returns false otherwise. |
boolean |
isPermanent()
Returns
false if the interactor is removed from the
view once the object has been edited. |
protected void |
processKeyEvent(KeyEvent e)
Processes the key events.
|
protected void |
processMouseEvent(MouseEvent event)
Processes mouse events.
|
void |
setAutoEditLabel(boolean autoEditLabel)
Sets the "auto-edit-label" mode of this interactor.
|
void |
setCursor(Cursor cursor)
Changes the cursor used for editing.
|
void |
setGridMode(boolean value)
Changes the way the interactor works with the grid.
|
protected void |
setNodeProperties(IlvSDMModel model,
Object node)
Sets the initial properties of the newly created node.
|
void |
setPermanent(boolean permanent)
Specifies whether the interactor is removed from the view once
the object has been edited.
|
void |
setPrototypeObject(IlvSDMModel model,
Object object)
Sets the object that will be used as a prototype by this
interactor to create new nodes.
|
void |
setTag(String tag)
Sets the tag of the objects that will be created by this interactor.
|
addFocusListener, addKeyListener, addMouseListener, addMouseMotionListener, allowEnsureVisible, allowEnsureVisible, disableEvents, drawGhost, drawGhost, enableEvents, ensureVisible, ensureVisible, getManager, getManagerView, getTransformer, handleExpose, isXORGhost, processEvent, processFocusEvent, processMouseMotionEvent, removeFocusListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, setXORGhostpublic IlvMakeSDMNodeInteractor()
public void init()
public IlvSDMEngine getEngine()
public final boolean isGridMode()
true if the interactor snaps the dragged rectangle
to the grid of the view; returns false otherwise.setGridMode(boolean),
IlvGridpublic final void setGridMode(boolean value)
value - Set to true
if you want the interactor to snap the dragged rectangle
to the grid of the view; set to false otherwise.isGridMode(),
IlvGridpublic final boolean isPermanent()
false if the interactor is removed from the
view once the object has been edited.
The default value is false.isPermanent in interface IlvPermanentInteractorInterfacepublic final void setPermanent(boolean permanent)
false.setPermanent in interface IlvPermanentInteractorInterfacepermanent - false if the interactor is removed from the view.public Cursor getCursor()
public void setCursor(Cursor cursor)
cursor - The new cursor.public void setTag(String tag)
tag - The tag of the objects.public String getTag()
public void setPrototypeObject(IlvSDMModel model, Object object)
model - The data model that the object belongs to.object - The prototype object.setNodeProperties(ilog.views.sdm.IlvSDMModel, java.lang.Object),
setTag(java.lang.String)public IlvSDMModel getPrototypeModel()
public Object getPrototypeObject()
public boolean isAutoEditLabel()
true if this interactor is in "auto-edit-label" mode,
that is, if it will automatically install a label editing interactor as soon
as the new node is created.public void setAutoEditLabel(boolean autoEditLabel)
autoEditLabel - The new value of the auto-edit-label flag.createEditLabelInteractor()protected void attach(IlvManagerView v)
attach in class IlvManagerViewInteractorv - The manager view.IlvManagerViewInteractor.detach()protected void detach()
detach in class IlvManagerViewInteractorIlvManagerViewInteractor.attach(ilog.views.IlvManagerView)protected void processMouseEvent(MouseEvent event)
processMouseEvent in class IlvManagerViewInteractorevent - The event.IlvManagerViewInteractor.addMouseListener(java.awt.event.MouseListener)protected void processKeyEvent(KeyEvent e)
IlvManagerViewInteractorKeyListener
registered with this interactor (if any).processKeyEvent in class IlvManagerViewInteractore - The event.IlvManagerViewInteractor.addKeyListener(java.awt.event.KeyListener)protected void createNode(double x,
double y)
setPrototypeObject(ilog.views.sdm.IlvSDMModel, java.lang.Object), the new object is a copy of
the prototype object. Otherwise, the object is a new object
with the tag specified by setTag(java.lang.String).
If IlvSDMEngine.isDropToGroupEnabled()
returns true, the new node is created as a child of the
parent object located at the specified coordinates.
If IlvSDMEngine.isDropToGroupEnabled()
returns false, or if no parent is at the specified
location, the new node is created at the top level of the model.
x - The x-position in manager coordinates.y - The y-position in manager coordinates.protected IlvEditSDMLabelInteractor createEditLabelInteractor()
createNode(double, double) when autoEditLabel is true.IlvEditSDMLabelInteractorsetAutoEditLabel(boolean)protected void setNodeProperties(IlvSDMModel model, Object node)
This basic implementation copies the properties of
the prototype object specified by a call to setPrototypeObject(ilog.views.sdm.IlvSDMModel, java.lang.Object).
If no prototype object was specified, this method does nothing.
If the prototype object has children, the children are also copied.
model - The data model of the SDM engine.node - The node that has just been created by this interactor.© Copyright 2024 Rogue Wave Software, Inc., a Perforce company.. All Rights Reserved.