diff options
author | rschnekenbu | 2010-12-09 13:11:36 +0000 |
---|---|---|
committer | rschnekenbu | 2010-12-09 13:11:36 +0000 |
commit | 6b727cdfa9297e7d0f52c1e22a09c1322b3b710c (patch) | |
tree | d49f9fc643beb45bfa506f097742ead8919430e4 /plugins/developer/org.eclipse.papyrus.codegen | |
parent | 204499c88d7e70cec7308749019efdd93c2b3028 (diff) | |
download | org.eclipse.papyrus-6b727cdfa9297e7d0f52c1e22a09c1322b3b710c.tar.gz org.eclipse.papyrus-6b727cdfa9297e7d0f52c1e22a09c1322b3b710c.tar.xz org.eclipse.papyrus-6b727cdfa9297e7d0f52c1e22a09c1322b3b710c.zip |
Merged branch 0.7.X changes r2480:3444 into the trunk
Diffstat (limited to 'plugins/developer/org.eclipse.papyrus.codegen')
7 files changed, 52 insertions, 26 deletions
diff --git a/plugins/developer/org.eclipse.papyrus.codegen/META-INF/MANIFEST.MF b/plugins/developer/org.eclipse.papyrus.codegen/META-INF/MANIFEST.MF index f999d0bc85b..5a1ed45f451 100644 --- a/plugins/developer/org.eclipse.papyrus.codegen/META-INF/MANIFEST.MF +++ b/plugins/developer/org.eclipse.papyrus.codegen/META-INF/MANIFEST.MF @@ -1,10 +1,10 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 -Bundle-Name: Codegen Plug-in +Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.papyrus.codegen;singleton:=true -Bundle-Version: 0.7.0.qualifier +Bundle-Version: 0.7.1.qualifier Bundle-Activator: org.eclipse.papyrus.codegen.Activator -Bundle-Vendor: Atos Origin +Bundle-Vendor: %providerName Require-Bundle: org.eclipse.ui, org.eclipse.core.runtime, org.eclipse.gmf.codegen;bundle-version="2.1.0", diff --git a/plugins/developer/org.eclipse.papyrus.codegen/build.properties b/plugins/developer/org.eclipse.papyrus.codegen/build.properties index 2d575990465..bfa98369607 100644 --- a/plugins/developer/org.eclipse.papyrus.codegen/build.properties +++ b/plugins/developer/org.eclipse.papyrus.codegen/build.properties @@ -3,4 +3,5 @@ output.. = bin/ bin.includes = META-INF/,\
.,\
plugin.xml,\
- about.html
+ about.html,\
+ plugin.properties
diff --git a/plugins/developer/org.eclipse.papyrus.codegen/plugin.properties b/plugins/developer/org.eclipse.papyrus.codegen/plugin.properties new file mode 100644 index 00000000000..f8b7b5ab791 --- /dev/null +++ b/plugins/developer/org.eclipse.papyrus.codegen/plugin.properties @@ -0,0 +1,12 @@ +#################################################################################
+# Copyright (c) 2008 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Cedric Dumoulin Cedric.dumoulin@lifl.fr - Initial API and implementation
+##################################################################################
+pluginName=Papyrus Code Generator for GmfGen models (Incubation)
+providerName=Eclipse Modeling Project
diff --git a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusCodegenEmitters.java b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusCodegenEmitters.java index e9ef5dd9942..5a20b7f431c 100644 --- a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusCodegenEmitters.java +++ b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusCodegenEmitters.java @@ -26,8 +26,7 @@ import org.eclipse.gmf.internal.common.codegen.TextEmitter; */
public class PapyrusCodegenEmitters extends CodegenEmitters {
- public PapyrusCodegenEmitters(boolean useBaseTemplatesOnly, String templateDirectory,
- boolean includeDynamicModelTemplates) {
+ public PapyrusCodegenEmitters(boolean useBaseTemplatesOnly, String templateDirectory, boolean includeDynamicModelTemplates) {
super(useBaseTemplatesOnly, templateDirectory, includeDynamicModelTemplates);
}
diff --git a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusExecuteTemplatesOperation.java b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusExecuteTemplatesOperation.java index d098a3c3108..9d9f10f32ac 100644 --- a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusExecuteTemplatesOperation.java +++ b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusExecuteTemplatesOperation.java @@ -30,8 +30,7 @@ public class PapyrusExecuteTemplatesOperation extends ExecuteTemplatesOperation @Override
protected Generator createGenerator() {
GenEditorGenerator genModel = getGenModel();
- return new PapyrusGenerator(genModel, new PapyrusCodegenEmitters(!genModel.isDynamicTemplates(), genModel
- .getTemplateDirectory(), genModel.getModelAccess() != null));
+ return new PapyrusGenerator(genModel, new PapyrusCodegenEmitters(!genModel.isDynamicTemplates(), genModel.getTemplateDirectory(), genModel.getModelAccess() != null));
}
}
diff --git a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusGenerator.java b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusGenerator.java index de45b43c066..468bec1d5a1 100644 --- a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusGenerator.java +++ b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/PapyrusGenerator.java @@ -8,10 +8,11 @@ *
* Contributors:
* Thibault Landre (Atos Origin) - Initial API and implementation
- *
+ * Vincent Lorenzo (CEA - LIST) - minor change
*****************************************************************************/
package org.eclipse.papyrus.codegen;
+import org.eclipse.gmf.codegen.gmfgen.GenChildLabelNode;
import org.eclipse.gmf.codegen.gmfgen.GenDiagram;
import org.eclipse.gmf.codegen.gmfgen.GenEditorGenerator;
import org.eclipse.gmf.codegen.gmfgen.GenLink;
@@ -19,7 +20,6 @@ import org.eclipse.gmf.codegen.gmfgen.GenNode; import org.eclipse.gmf.codegen.gmfgen.MetamodelType;
import org.eclipse.gmf.codegen.util.Generator;
import org.eclipse.gmf.common.UnexpectedBehaviourException;
-import org.eclipse.papyrus.codegen.utils.PapyrusGenConstants;
/**
* The papyrus GMF generator.
@@ -38,9 +38,9 @@ public class PapyrusGenerator extends Generator { * Default constructor
*
* @param genModel
- * the genmodel to use
+ * the genmodel to use
* @param emitters
- * the Papyrus codegen emitters
+ * the Papyrus codegen emitters
*/
public PapyrusGenerator(GenEditorGenerator genModel, PapyrusCodegenEmitters emitters) {
super(genModel, emitters);
@@ -55,30 +55,45 @@ public class PapyrusGenerator extends Generator { protected void customRun() throws InterruptedException, UnexpectedBehaviourException {
super.customRun();
- // Generate NodePreferencePage
- for (GenNode node : diagram.getAllNodes()) {
+ /*
+ * We distinguish ChildNode and TopLevel Node for
+ * the generation of the preferences (top level nodes preferences were erased by child label nodes preferences)
+ */
+
+ // Generate LabelChildNodePreferencePage
+ for(GenNode node : diagram.getChildNodes()) {
+ if(node instanceof GenChildLabelNode) {
+ generateNodePreferencePage(node, node.getElementType().getDisplayName());
+ }
+ }
+
+ // Generate ChildNodePreferencePage
+ for(GenNode node : diagram.getChildNodes()) {
+ if(!(node instanceof GenChildLabelNode)) {
+ generateNodePreferencePage(node, node.getElementType().getDisplayName());
+ }
+ }
+
+ // Generate TopLevelNodePreferencePage
+ for(GenNode node : diagram.getTopLevelNodes()) {
generateNodePreferencePage(node, node.getElementType().getDisplayName());
}
// Generate LinkPreferencePage
- for (GenLink link : diagram.getLinks()) {
- if (link.getElementType() instanceof MetamodelType) {
- MetamodelType metamodelType = (MetamodelType) link.getElementType();
+ for(GenLink link : diagram.getLinks()) {
+ if(link.getElementType() instanceof MetamodelType) {
+ MetamodelType metamodelType = (MetamodelType)link.getElementType();
generateLinkPreferencePage(link, metamodelType.getDisplayName());
}
}
}
- private void generateNodePreferencePage(GenNode node, String elementName) throws InterruptedException,
- UnexpectedBehaviourException {
- doGenerateJavaClass(emitters.getNodePreferencePageEmitter(), diagram.getPreferencesPackageName(), elementName
- + PREFERENCE_PAGE, node);
+ private void generateNodePreferencePage(GenNode node, String elementName) throws InterruptedException, UnexpectedBehaviourException {
+ doGenerateJavaClass(emitters.getNodePreferencePageEmitter(), diagram.getPreferencesPackageName(), elementName + PREFERENCE_PAGE, node);
}
- private void generateLinkPreferencePage(GenLink link, String elementName) throws InterruptedException,
- UnexpectedBehaviourException {
- doGenerateJavaClass(emitters.getLinkPreferencePageEmitter(), diagram.getPreferencesPackageName(), elementName
- + PREFERENCE_PAGE, link);
+ private void generateLinkPreferencePage(GenLink link, String elementName) throws InterruptedException, UnexpectedBehaviourException {
+ doGenerateJavaClass(emitters.getLinkPreferencePageEmitter(), diagram.getPreferencesPackageName(), elementName + PREFERENCE_PAGE, link);
}
}
diff --git a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/utils/PapyrusGenConstants.java b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/utils/PapyrusGenConstants.java index f0fb2c4411a..4e68f496dc1 100644 --- a/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/utils/PapyrusGenConstants.java +++ b/plugins/developer/org.eclipse.papyrus.codegen/src/org/eclipse/papyrus/codegen/utils/PapyrusGenConstants.java @@ -46,7 +46,7 @@ public class PapyrusGenConstants { * </p>
*
* @param diagramName
- * the name of the Diagram
+ * the name of the Diagram
* @return the name of the java class used for the diagram preference page
*/
@Operation(contextual = false, kind = Kind.HELPER)
|