org.eclipse.gmt.umlx.tx.editor.regimes
Class TxTypedModelRegime

java.lang.Object
  extended by org.eclipse.gmt.umlx.utils.ClassExtension<M>
      extended by org.eclipse.gmt.umlx.editor.regime.AbstractRegime<M,P>
          extended by org.eclipse.gmt.umlx.editor.regime.AbstractNodeRegimeCo0<M,P>
              extended by org.eclipse.gmt.umlx.editor.regime.AbstractNodeRegimeCo1<M,P,CM,CP>
                  extended by org.eclipse.gmt.umlx.editor.regimes.GModelElementRegime<M,P,CM,CP>
                      extended by org.eclipse.gmt.umlx.editor.regimes.GSheetNodeRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>
                          extended by org.eclipse.gmt.umlx.tx.editor.regimes.TxTypedModelRegime
All Implemented Interfaces:
INodeRegimeCo0<TxTypedModel,TxContextSheet>, INodeRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>, IRegime, IRegimeCo0<TxTypedModel,TxContextSheet>, IRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>, IClassExtension

public class TxTypedModelRegime
extends GSheetNodeRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>


Field Summary
static TxTypedModelRegime INSTANCE
           
 
Method Summary
 IAbstractCommand createCreateChildLinkCommand(IActiveEditDomain editDomain, java.lang.Object coChild, java.lang.Object child, java.lang.Object parent)
          Create a command to create a graphical link between a newly created graphical child and its graphical parent.
 INodeFigure createFigure(INodeViewElement view)
           
 TxTypedModel createModelObject()
          Create a new and uninitialised EMF object of the type managed by this regime.
 AbstractPropertySource createPropertySource(TxTypedModel model)
           
 TxTypedModelView createView(SheetViewer viewer, TxTypedModel model)
           
 UTypedModelRegime getCoRegime()
          Return the co-regime if it has one.
 java.lang.Enum getIcon()
          Return the icon to be shown in the construction context (the Palette for GCore objects, the Outline for ECore objects).
static org.eclipse.gef.palette.PaletteEntry getPaletteEntry()
           
 UTransformation getParentCoModel(IActiveEditDomain editDomain, java.lang.Object parent)
          Return the object to be coModel of the parent of a model created by this regime in editDomain.
 
Methods inherited from class org.eclipse.gmt.umlx.editor.regimes.GSheetNodeRegimeCo1
createDeleteCommand, createFacets, getSheetClass
 
Methods inherited from class org.eclipse.gmt.umlx.editor.regimes.GModelElementRegime
getCoModel, setCoModel
 
Methods inherited from class org.eclipse.gmt.umlx.editor.regime.AbstractNodeRegimeCo1
canCoChange, coModelIsOptional, createChangeCoModelCommand, getCoModelClass, getCoModelFor, getCoModelFor, getCoModelParentClass, getLabel, isLink, isNode, isRegimeCo1, isRegimeCo2, loadCoModelClass
 
Methods inherited from class org.eclipse.gmt.umlx.editor.regime.AbstractNodeRegimeCo0
cannotCreate
 
Methods inherited from class org.eclipse.gmt.umlx.editor.regime.AbstractRegime
canCopy, canDelete, computeProblemMessage, createCreateCommand, createLinkEnd, createOutline, getBackElement, getBasicClass, getFacets, getModelClass, getNewNamePrefix, getParentModelClass, getSource, getSourceModelClass, getTarget, getTargetModelClass, initialise, isRegimeCo0, load, refreshProblemMessage, toString
 
Methods inherited from class org.eclipse.gmt.umlx.utils.ClassExtension
toDebugString, toUserString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.gmt.umlx.editor.regime.IRegimeCo0
canCopy, canDelete, computeProblemMessage, createOutline, getFacets, getModelClass, getParentModelClass, isRegimeCo0, refreshProblemMessage
 
Methods inherited from interface org.eclipse.gmt.umlx.editor.regime.IRegime
createCreateCommand, createLinkEnd, getBackElement, getNewNamePrefix, getSource, getSourceModelClass, getTarget, getTargetModelClass
 
Methods inherited from interface org.eclipse.gmt.umlx.utils.IClassExtension
getBasicClass, toDebugString, toUserString
 
Methods inherited from interface org.eclipse.gmt.umlx.editor.regime.INodeRegimeCo0
cannotCreate
 
Methods inherited from interface org.eclipse.gmt.umlx.editor.regime.IRegimeCo0
canCopy, canDelete, computeProblemMessage, createOutline, getFacets, getModelClass, getParentModelClass, isRegimeCo0, refreshProblemMessage
 
Methods inherited from interface org.eclipse.gmt.umlx.editor.regime.IRegime
createCreateCommand, createLinkEnd, getBackElement, getNewNamePrefix, getSource, getSourceModelClass, getTarget, getTargetModelClass
 
Methods inherited from interface org.eclipse.gmt.umlx.utils.IClassExtension
getBasicClass, toDebugString, toUserString
 

Field Detail

INSTANCE

public static final TxTypedModelRegime INSTANCE
Method Detail

getPaletteEntry

public static org.eclipse.gef.palette.PaletteEntry getPaletteEntry()

createCreateChildLinkCommand

public IAbstractCommand createCreateChildLinkCommand(IActiveEditDomain editDomain,
                                                     java.lang.Object coChild,
                                                     java.lang.Object child,
                                                     java.lang.Object parent)
Description copied from interface: IRegime
Create a command to create a graphical link between a newly created graphical child and its graphical parent. This is used to create an attribution link when a sheet attribute is created.

Specified by:
createCreateChildLinkCommand in interface IRegime
Overrides:
createCreateChildLinkCommand in class AbstractRegime<TxTypedModel,TxContextSheet>

createFigure

public INodeFigure createFigure(INodeViewElement view)
Specified by:
createFigure in interface INodeRegimeCo0<TxTypedModel,TxContextSheet>
Overrides:
createFigure in class AbstractNodeRegimeCo0<TxTypedModel,TxContextSheet>

createModelObject

public TxTypedModel createModelObject()
Description copied from interface: IRegime
Create a new and uninitialised EMF object of the type managed by this regime.

Specified by:
createModelObject in interface IRegime
Specified by:
createModelObject in interface IRegimeCo0<TxTypedModel,TxContextSheet>
Overrides:
createModelObject in class AbstractRegime<TxTypedModel,TxContextSheet>

createPropertySource

public AbstractPropertySource createPropertySource(TxTypedModel model)
Specified by:
createPropertySource in interface IRegimeCo0<TxTypedModel,TxContextSheet>
Overrides:
createPropertySource in class AbstractRegime<TxTypedModel,TxContextSheet>

createView

public TxTypedModelView createView(SheetViewer viewer,
                                   TxTypedModel model)
Specified by:
createView in interface IRegimeCo0<TxTypedModel,TxContextSheet>
Overrides:
createView in class AbstractRegime<TxTypedModel,TxContextSheet>

getCoRegime

public UTypedModelRegime getCoRegime()
Description copied from interface: IRegime
Return the co-regime if it has one.

Specified by:
getCoRegime in interface INodeRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>
Specified by:
getCoRegime in interface IRegime
Specified by:
getCoRegime in interface IRegimeCo0<TxTypedModel,TxContextSheet>
Specified by:
getCoRegime in interface IRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>
Specified by:
getCoRegime in class AbstractNodeRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>
Returns:
co-regime class or null

getIcon

public java.lang.Enum getIcon()
Description copied from interface: IRegime
Return the icon to be shown in the construction context (the Palette for GCore objects, the Outline for ECore objects).

Returns:
the icon

getParentCoModel

public UTransformation getParentCoModel(IActiveEditDomain editDomain,
                                        java.lang.Object parent)
Description copied from interface: IRegimeCo1
Return the object to be coModel of the parent of a model created by this regime in editDomain. The return is nominally just parent.coModel() after type validation, but derived implementations may add policies to provide defaults parents for orphans.

Specified by:
getParentCoModel in interface IRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>
Specified by:
getParentCoModel in class AbstractNodeRegimeCo1<TxTypedModel,TxContextSheet,UTypedModel,UTransformation>
Parameters:
editDomain - edit domain containing objects
parent - parent of graphical model
Returns:
co-model of parent