@OpenApiAll
public interface DependencyEditor
MatrixFactory
Value editors define which matrix cells are editable, and may add new add/remove dependency actions
according to provided context
NOTE: if canCreate
returns false
, no menu items
will be created using createAddActions
. The same applies to canEdit
and createEditActions
methodsModifier and Type | Method and Description |
---|---|
boolean |
canCreate(PersistenceManager settings,
Element row,
Element column,
AbstractMatrixCell cell)
Analyze specific cell and decides if there is any new dependencies which can be created for this pair of elements
IMPORTANT: Make this method as fast as possible.
|
boolean |
canEdit(PersistenceManager persistenceManager,
Element row,
Element column,
AbstractMatrixCell cell)
Analyze current cell, an decide if this there are at least one dependency, which can be deleted/edited.
|
void |
clear()
Purpose of this method to cleanup all unnecessary cache and objects
|
void |
createAddActions(PersistenceManager settings,
Element row,
Element column,
AbstractMatrixCell cell,
ActionsCategory mainCategory,
ActionsCategory rowToColumn,
ActionsCategory columnToRow)
Used to edit specific cell action categories when user initiates add relationships actions.
|
void |
createEditActions(PersistenceManager settings,
Element row,
Element column,
AbstractMatrixCell cell,
ActionsCategory main,
ActionsCategory deleteActions)
Analyze current cell, and create actions which can remove/edit specific dependencies from this cell
|
void |
elementUpdated(java.util.Collection<Element> element)
This method is triggered when elements are updated but Build is not initiated.
|
void |
init(PersistenceManager settings,
org.eclipse.core.runtime.IProgressMonitor status)
Initializes value editor.
|
void init(PersistenceManager settings, @CheckForNull org.eclipse.core.runtime.IProgressMonitor status)
settings
- matrix settingsstatus
- progress statusvoid createAddActions(PersistenceManager settings, Element row, Element column, AbstractMatrixCell cell, ActionsCategory mainCategory, ActionsCategory rowToColumn, ActionsCategory columnToRow)
settings
- matrix settingsrow
- row elementcolumn
- column elementcell
- cell valuemainCategory
- whole menu categoryrowToColumn
- column to row dependency categorycolumnToRow
- row to column dependency categoryvoid createEditActions(PersistenceManager settings, Element row, Element column, AbstractMatrixCell cell, ActionsCategory main, ActionsCategory deleteActions)
settings
- matrix settingsrow
- row elementcolumn
- column elementcell
- current cellmain
- main action categorydeleteActions
- add remove dependency actions to this categoryboolean canCreate(PersistenceManager settings, Element row, Element column, @CheckForNull AbstractMatrixCell cell)
settings
- matrix settingsrow
- row elementcolumn
- column elementcell
- matrix celltrue
if at least one relation can be createdboolean canEdit(PersistenceManager persistenceManager, Element row, Element column, AbstractMatrixCell cell)
persistenceManager
- matrix settingsrow
- row elementcolumn
- column elementcell
- matrix celltrue
if there is at least one dependency which can be deleted.void elementUpdated(java.util.Collection<Element> element)
element
- updated elementvoid clear()