/** * <copyright> * </copyright> * * $Id$ */ package org.eclipse.gmf.codegen.gmfgen; import java.util.List; import org.eclipse.emf.codegen.ecore.genmodel.GenClass; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Gen Common Base</b></em>'. * <!-- end-user-doc --> * * <!-- begin-model-doc --> * One that combines attributes that are essential for diagram elements * <!-- end-model-doc --> * * <p> * The following features are supported: * <ul> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getDiagramRunTimeClass <em>Diagram Run Time Class</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getVisualID <em>Visual ID</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getElementType <em>Element Type</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getEditPartClassName <em>Edit Part Class Name</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getItemSemanticEditPolicyClassName <em>Item Semantic Edit Policy Class Name</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getNotationViewFactoryClassName <em>Notation View Factory Class Name</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getViewmap <em>Viewmap</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getStyles <em>Styles</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getBehaviour <em>Behaviour</em>}</li> * <li>{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#isSansDomain <em>Sans Domain</em>}</li> * </ul> * </p> * * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase() * @model abstract="true" * annotation="http://www.eclipse.org/gmf/2005/constraints ocl='styles->forAll(style|style.ecoreClass.eAllSuperTypes->including(style.ecoreClass)->one(ePackage.name = \'notation\' and name = \'Style\'))' description='Each style must be a notation::Style or sub-class'" * @generated */ public interface GenCommonBase extends EObject { /** * Returns the value of the '<em><b>Diagram Run Time Class</b></em>' reference. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Diagram Run Time Class</em>' reference isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Diagram Run Time Class</em>' reference. * @see #setDiagramRunTimeClass(GenClass) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_DiagramRunTimeClass() * @model required="true" * @generated */ GenClass getDiagramRunTimeClass(); /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getDiagramRunTimeClass <em>Diagram Run Time Class</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Diagram Run Time Class</em>' reference. * @see #getDiagramRunTimeClass() * @generated */ void setDiagramRunTimeClass(GenClass value); /** * Returns the value of the '<em><b>Visual ID</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> * way to decide which editpart to use for specific diagram element. Maps to attribute in DRT. * <!-- end-model-doc --> * @return the value of the '<em>Visual ID</em>' attribute. * @see #setVisualID(int) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_VisualID() * @model required="true" * annotation="http://www.eclipse.org/gmf/2005/constraints ocl='visualID >= 0' description='Visual ID must be a non-negative integer'" * @generated */ int getVisualID(); /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getVisualID <em>Visual ID</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Visual ID</em>' attribute. * @see #getVisualID() * @generated */ void setVisualID(int value); /** * Returns the value of the '<em><b>Element Type</b></em>' containment reference. * It is bidirectional and its opposite is '{@link org.eclipse.gmf.codegen.gmfgen.ElementType#getDiagramElement <em>Diagram Element</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Element Type</em>' containment reference isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Element Type</em>' containment reference. * @see #setElementType(ElementType) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_ElementType() * @see org.eclipse.gmf.codegen.gmfgen.ElementType#getDiagramElement * @model opposite="diagramElement" containment="true" * @generated */ ElementType getElementType(); /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getElementType <em>Element Type</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Element Type</em>' containment reference. * @see #getElementType() * @generated */ void setElementType(ElementType value); /** * Returns the value of the '<em><b>Edit Part Class Name</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Edit Part Class Name</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Edit Part Class Name</em>' attribute. * @see #setEditPartClassName(String) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_EditPartClassName() * @model * @generated */ String getEditPartClassName(); public static final String EDIT_PART_SUFFIX = "EditPart"; //$NON-NLS-1$ /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getEditPartClassName <em>Edit Part Class Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Edit Part Class Name</em>' attribute. * @see #getEditPartClassName() * @generated */ void setEditPartClassName(String value); /** * Returns the value of the '<em><b>Item Semantic Edit Policy Class Name</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Item Semantic Edit Policy Class Name</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Item Semantic Edit Policy Class Name</em>' attribute. * @see #setItemSemanticEditPolicyClassName(String) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_ItemSemanticEditPolicyClassName() * @model * @generated */ String getItemSemanticEditPolicyClassName(); public static final String ITEM_SEMANTIC_EDIT_POLICY_SUFFIX = "ItemSemanticEditPolicy"; //$NON-NLS-1$ /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getItemSemanticEditPolicyClassName <em>Item Semantic Edit Policy Class Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Item Semantic Edit Policy Class Name</em>' attribute. * @see #getItemSemanticEditPolicyClassName() * @generated */ void setItemSemanticEditPolicyClassName(String value); /** * Returns the value of the '<em><b>Notation View Factory Class Name</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Notation View Factory Class Name</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Notation View Factory Class Name</em>' attribute. * @see #setNotationViewFactoryClassName(String) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_NotationViewFactoryClassName() * @model annotation="http://www.eclipse.org/gmf/2006/deprecated documentation='ViewFactories are no longer generated'" * @generated */ String getNotationViewFactoryClassName(); public static final String NOTATION_VIEW_FACTORY_SUFFIX = "ViewFactory"; //$NON-NLS-1$ /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getNotationViewFactoryClassName <em>Notation View Factory Class Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Notation View Factory Class Name</em>' attribute. * @see #getNotationViewFactoryClassName() * @generated */ void setNotationViewFactoryClassName(String value); /** * Returns the value of the '<em><b>Viewmap</b></em>' containment reference. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Viewmap</em>' containment reference isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Viewmap</em>' containment reference. * @see #setViewmap(Viewmap) * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_Viewmap() * @model containment="true" required="true" * @generated */ Viewmap getViewmap(); /** * Sets the value of the '{@link org.eclipse.gmf.codegen.gmfgen.GenCommonBase#getViewmap <em>Viewmap</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Viewmap</em>' containment reference. * @see #getViewmap() * @generated */ void setViewmap(Viewmap value); /** * Returns the value of the '<em><b>Styles</b></em>' reference list. * The list contents are of type {@link org.eclipse.emf.codegen.ecore.genmodel.GenClass}. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Styles</em>' reference list isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Styles</em>' reference list. * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_Styles() * @model * @generated */ EList<GenClass> getStyles(); /** * Returns the value of the '<em><b>Behaviour</b></em>' containment reference list. * The list contents are of type {@link org.eclipse.gmf.codegen.gmfgen.Behaviour}. * It is bidirectional and its opposite is '{@link org.eclipse.gmf.codegen.gmfgen.Behaviour#getSubject <em>Subject</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Behaviour</em>' containment reference list isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Behaviour</em>' containment reference list. * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_Behaviour() * @see org.eclipse.gmf.codegen.gmfgen.Behaviour#getSubject * @model opposite="subject" containment="true" * @generated */ EList<Behaviour> getBehaviour(); /** * Returns the value of the '<em><b>Sans Domain</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Sans Domain</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * <!-- begin-model-doc --> * Indicates this element has no associated domain model. IOW, pure design element. * <!-- end-model-doc --> * @return the value of the '<em>Sans Domain</em>' attribute. * @see org.eclipse.gmf.codegen.gmfgen.GMFGenPackage#getGenCommonBase_SansDomain() * @model transient="true" changeable="false" volatile="true" derived="true" * @generated */ boolean isSansDomain(); /** * Filter list of behavior to instances of particular kind. Note, behaviour returned is not * necessarily owned (think contained) by this element, as this method unwraps {@link SharedBehaviour} * @param behaviourClass should be Behaviour.class.isAssignableFrom(behaviourClass) */ <T extends Behaviour> List<T> getBehaviour(Class<T> behaviourClass); /** * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Class Name Prefix</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @model kind="operation" * @generated */ String getClassNamePrefix(); public static final String DEFAULT_CLASS_NAME_PREFIX = "Unknown"; //$NON-NLS-1$ /** * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Class Name Suffux</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @model kind="operation" * annotation="http://www.eclipse.org/gmf/2006/deprecated documentation='No longer in use'" * @generated */ String getClassNameSuffux(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * <!-- begin-model-doc --> * This unique string identifier could be used to construct unique identifiers in generated java code * <!-- end-model-doc --> * @model kind="operation" * @generated */ String getUniqueIdentifier(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model kind="operation" * @generated */ ViewmapLayoutType getLayoutType(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model kind="operation" * @generated */ String getEditPartQualifiedClassName(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model kind="operation" * @generated */ String getItemSemanticEditPolicyQualifiedClassName(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model kind="operation" * annotation="http://www.eclipse.org/gmf/2006/deprecated documentation='ViewFactories are no longer generated'" * @generated */ String getNotationViewFactoryQualifiedClassName(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @model kind="operation" * @generated */ GenDiagram getDiagram(); } // GenCommonBase