Browse Source

added a sccd generator to yakindu

Simon Van Mierlo 7 years ago
parent
commit
240b573743
32 changed files with 1406 additions and 304 deletions
  1. 75 75
      plugins/org.yakindu.base.expressions.ui/plugin.xml
  2. 4 1
      plugins/org.yakindu.sct.generator.genmodel.ui/src/org/yakindu/sct/generator/genmodel/ui/wizard/CoreGenerator.java
  3. 2 0
      plugins/org.yakindu.sct.generator.sccd-feature/.gitignore
  4. 28 0
      plugins/org.yakindu.sct.generator.sccd-feature/.project
  5. 2 0
      plugins/org.yakindu.sct.generator.sccd-feature/.settings/org.eclipse.core.resources.prefs
  6. 2 0
      plugins/org.yakindu.sct.generator.sccd-feature/.settings/org.eclipse.core.runtime.prefs
  7. 6 0
      plugins/org.yakindu.sct.generator.sccd-feature/build.properties
  8. 328 0
      plugins/org.yakindu.sct.generator.sccd-feature/epl-v10.html
  9. 151 0
      plugins/org.yakindu.sct.generator.sccd-feature/feature.properties
  10. 43 0
      plugins/org.yakindu.sct.generator.sccd-feature/feature.xml
  11. 107 0
      plugins/org.yakindu.sct.generator.sccd-feature/license.html
  12. 16 0
      plugins/org.yakindu.sct.generator.sccd-feature/pom.xml
  13. 8 0
      plugins/org.yakindu.sct.generator.sccd/.classpath
  14. 2 0
      plugins/org.yakindu.sct.generator.sccd/.gitignore
  15. 51 0
      plugins/org.yakindu.sct.generator.sccd/.project
  16. 3 0
      plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.core.resources.prefs
  17. 2 0
      plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.core.runtime.prefs
  18. 12 0
      plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.jdt.core.prefs
  19. 3 0
      plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.xtend.shared.ui.prefs
  20. 14 0
      plugins/org.yakindu.sct.generator.sccd/META-INF/MANIFEST.MF
  21. 7 0
      plugins/org.yakindu.sct.generator.sccd/build.properties
  22. BIN
      plugins/org.yakindu.sct.generator.sccd/icons/sct.png
  23. 57 0
      plugins/org.yakindu.sct.generator.sccd/library/FeatureTypeLibrary.xmi
  24. 42 0
      plugins/org.yakindu.sct.generator.sccd/plugin.xml
  25. 47 0
      plugins/org.yakindu.sct.generator.sccd/pom.xml
  26. 122 0
      plugins/org.yakindu.sct.generator.sccd/src/org/yakindu/sct/generator/sccd/SCCDGenerator.xtend
  27. 38 0
      plugins/org.yakindu.sct.generator.sccd/src/org/yakindu/sct/generator/sccd/SCCDGeneratorModule.java
  28. 5 0
      plugins/org.yakindu.sct.generator.sccd/xtend-gen/.gitignore
  29. 169 169
      plugins/org.yakindu.sct.model.sgraph.edit/plugin.properties
  30. 1 0
      plugins/org.yakindu.sct.model.sruntime/META-INF/MANIFEST.MF
  31. 1 1
      plugins/org.yakindu.sct.simulation.core.sexec/plugin.xml
  32. 58 58
      plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/policies/ContextSensitiveHelpPolicy.java

+ 75 - 75
plugins/org.yakindu.base.expressions.ui/plugin.xml

@@ -1,37 +1,37 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-    <extension
-            point="org.eclipse.ui.preferencePages">
-        <page
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
-            id="org.yakindu.base.expressions.Expressions"
-            name="Expressions">
-            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
-        </page>
-        <page
-            category="org.yakindu.base.expressions.Expressions"
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
-            id="org.yakindu.base.expressions.Expressions.coloring"
-            name="Syntax coloring">
-            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
-        </page>
-        <page
-            category="org.yakindu.base.expressions.Expressions"
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
-            id="org.yakindu.base.expressions.Expressions.templates"
-            name="Templates">
-            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
-        </page>
-    </extension>
-    <extension
-        point="org.eclipse.ui.keywords">
-        <keyword
-            id="org.yakindu.base.expressions.ui.keyword_Expressions"
-            label="Expressions"/>
-    </extension>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<plugin>
+    <extension
+            point="org.eclipse.ui.preferencePages">
+        <page
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+            id="org.yakindu.base.expressions.Expressions"
+            name="Expressions">
+            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
+        </page>
+        <page
+            category="org.yakindu.base.expressions.Expressions"
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
+            id="org.yakindu.base.expressions.Expressions.coloring"
+            name="Syntax coloring">
+            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
+        </page>
+        <page
+            category="org.yakindu.base.expressions.Expressions"
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
+            id="org.yakindu.base.expressions.Expressions.templates"
+            name="Templates">
+            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
+        </page>
+    </extension>
+    <extension
+        point="org.eclipse.ui.keywords">
+        <keyword
+            id="org.yakindu.base.expressions.ui.keyword_Expressions"
+            label="Expressions"/>
+    </extension>
+
 	<!-- marker definitions for org.yakindu.base.expressions.Expressions -->
 	<extension
 	        id="expressions.check.fast"
@@ -54,44 +54,44 @@
 	    <super type="org.eclipse.xtext.ui.check.expensive"/>
 	    <persistent value="true"/>
 	</extension>
-
-   <extension
-            point="org.eclipse.ui.preferencePages">
-        <page
-            category="org.yakindu.base.expressions.Expressions"
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
-            id="org.yakindu.base.expressions.Expressions.compiler.preferencePage"
-            name="Compiler">
-            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
-        </page>
-    </extension>
-
-    <!-- quickfix marker resolution generator for org.yakindu.base.expressions.Expressions -->
-    <extension
-            point="org.eclipse.ui.ide.markerResolution">
-        <markerResolutionGenerator
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
-            markerType="org.yakindu.base.expressions.ui.expressions.check.fast">
-            <attribute
-                name="FIXABLE_KEY"
-                value="true">
-            </attribute>
-        </markerResolutionGenerator>
-        <markerResolutionGenerator
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
-            markerType="org.yakindu.base.expressions.ui.expressions.check.normal">
-            <attribute
-                name="FIXABLE_KEY"
-                value="true">
-            </attribute>
-        </markerResolutionGenerator>
-        <markerResolutionGenerator
-            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
-            markerType="org.yakindu.base.expressions.ui.expressions.check.expensive">
-            <attribute
-                name="FIXABLE_KEY"
-                value="true">
-            </attribute>
-        </markerResolutionGenerator>
-    </extension>
-</plugin>
+
+   <extension
+            point="org.eclipse.ui.preferencePages">
+        <page
+            category="org.yakindu.base.expressions.Expressions"
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+            id="org.yakindu.base.expressions.Expressions.compiler.preferencePage"
+            name="Compiler">
+            <keywordReference id="org.yakindu.base.expressions.ui.keyword_Expressions"/>
+        </page>
+    </extension>
+
+    <!-- quickfix marker resolution generator for org.yakindu.base.expressions.Expressions -->
+    <extension
+            point="org.eclipse.ui.ide.markerResolution">
+        <markerResolutionGenerator
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+            markerType="org.yakindu.base.expressions.ui.expressions.check.fast">
+            <attribute
+                name="FIXABLE_KEY"
+                value="true">
+            </attribute>
+        </markerResolutionGenerator>
+        <markerResolutionGenerator
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+            markerType="org.yakindu.base.expressions.ui.expressions.check.normal">
+            <attribute
+                name="FIXABLE_KEY"
+                value="true">
+            </attribute>
+        </markerResolutionGenerator>
+        <markerResolutionGenerator
+            class="org.yakindu.base.expressions.ui.ExpressionsExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+            markerType="org.yakindu.base.expressions.ui.expressions.check.expensive">
+            <attribute
+                name="FIXABLE_KEY"
+                value="true">
+            </attribute>
+        </markerResolutionGenerator>
+    </extension>
+</plugin>

+ 4 - 1
plugins/org.yakindu.sct.generator.genmodel.ui/src/org/yakindu/sct/generator/genmodel/ui/wizard/CoreGenerator.java

@@ -23,7 +23,7 @@ import org.yakindu.sct.generator.core.extensions.IGeneratorDescriptor;
 public enum CoreGenerator {
 
 	Java("yakindu::java"), C("yakindu::c"), Cpp("yakindu::cpp"), GenericJava("yakindu::generic"), Xpand(
-			"yakindu::xpand");
+			"yakindu::xpand"), SCCD("yakindu::sccd");
 
 	private String id;
 
@@ -51,6 +51,9 @@ public enum CoreGenerator {
 		if (Xpand.id.equals(id)) {
 			return Xpand;
 		}
+		if (SCCD.id.equals(id)) {
+			return SCCD;
+		}
 		throw new IllegalArgumentException(String.format("No such generator id '%s'", id));
 	}
 

+ 2 - 0
plugins/org.yakindu.sct.generator.sccd-feature/.gitignore

@@ -0,0 +1,2 @@
+/bin/
+/target/

+ 28 - 0
plugins/org.yakindu.sct.generator.sccd-feature/.project

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.yakindu.sct.generator.sccd-feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+	<filteredResources>
+		<filter>
+			<id>0</id>
+			<name></name>
+			<type>10</type>
+			<matcher>
+				<id>org.eclipse.ui.ide.multiFilter</id>
+				<arguments>1.0-name-matches-false-false-target</arguments>
+			</matcher>
+		</filter>
+	</filteredResources>
+</projectDescription>

+ 2 - 0
plugins/org.yakindu.sct.generator.sccd-feature/.settings/org.eclipse.core.resources.prefs

@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8

+ 2 - 0
plugins/org.yakindu.sct.generator.sccd-feature/.settings/org.eclipse.core.runtime.prefs

@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n

+ 6 - 0
plugins/org.yakindu.sct.generator.sccd-feature/build.properties

@@ -0,0 +1,6 @@
+bin.includes = feature.xml,\
+               feature.properties,\
+               epl-v10.html,\
+               license.html
+src.includes = epl-v10.html,\
+               license.html

+ 328 - 0
plugins/org.yakindu.sct.generator.sccd-feature/epl-v10.html

@@ -0,0 +1,328 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
+<meta name=ProgId content=Word.Document>
+<meta name=Generator content="Microsoft Word 9">
+<meta name=Originator content="Microsoft Word 9">
+<link rel=File-List
+href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
+<title>Eclipse Public License - Version 1.0</title>
+<!--[if gte mso 9]><xml>
+ <o:DocumentProperties>
+  <o:Revision>2</o:Revision>
+  <o:TotalTime>3</o:TotalTime>
+  <o:Created>2004-03-05T23:03:00Z</o:Created>
+  <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
+  <o:Pages>4</o:Pages>
+  <o:Words>1626</o:Words>
+  <o:Characters>9270</o:Characters>
+   <o:Lines>77</o:Lines>
+  <o:Paragraphs>18</o:Paragraphs>
+  <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
+  <o:Version>9.4402</o:Version>
+ </o:DocumentProperties>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:WordDocument>
+  <w:TrackRevisions/>
+ </w:WordDocument>
+</xml><![endif]-->
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+	{font-family:Tahoma;
+	panose-1:2 11 6 4 3 5 4 4 2 4;
+	mso-font-charset:0;
+	mso-generic-font-family:swiss;
+	mso-font-pitch:variable;
+	mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+	{mso-style-parent:"";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	mso-fareast-font-family:"Times New Roman";}
+p
+	{margin-right:0in;
+	mso-margin-top-alt:auto;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	mso-fareast-font-family:"Times New Roman";}
+p.BalloonText, li.BalloonText, div.BalloonText
+	{mso-style-name:"Balloon Text";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:8.0pt;
+	font-family:Tahoma;
+	mso-fareast-font-family:"Times New Roman";}
+@page Section1
+	{size:8.5in 11.0in;
+	margin:1.0in 1.25in 1.0in 1.25in;
+	mso-header-margin:.5in;
+	mso-footer-margin:.5in;
+	mso-paper-source:0;}
+div.Section1
+	{page:Section1;}
+-->
+</style>
+</head>
+
+<body lang=EN-US style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear=left>
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+changes to the Program, and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+additions to the Program;</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span
+style='color:red'> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+its license agreement:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
+
+<p><span style='font-size:10.0pt'>When the Program is made available in source
+code form:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it must be made available under this Agreement; and </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style='font-size:10.0pt'>Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor (&quot;Commercial
+Contributor&quot;) hereby agrees to defend and indemnify every other
+Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
+costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style='font-size:10.0pt'>For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
+
+<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
+
+</div>
+
+</body>
+
+</html>

+ 151 - 0
plugins/org.yakindu.sct.generator.sccd-feature/feature.properties

@@ -0,0 +1,151 @@
+# feature.properties
+# contains externalized strings for feature.xml
+# "%foo" in feature.xml corresponds to the key "foo" in this file
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file should be translated.
+
+# "updateSiteName" property - label for the update site
+updateSiteName=YAKINDU Statechart Tools 2
+
+# "description" property - description of the feature
+description=The YAKINDU SCCD Code generator. 
+
+# "licenseURL" property - URL of the "Feature License"
+licenseURL=license.html
+
+# "copyright" property - text of the "Feature Update Copyright"
+copyright=\
+Copyright (c) 2011 committers of YAKINDU and others.\n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License v1.0\n\
+which accompanies this distribution, and is available at\n\
+http://www.eclipse.org/legal/epl-v10.html\n\
+\n\
+Contributors:\n\
+    committers of YAKINDU and others - initial API and implementation\n
+################ end of copyright property ####################################
+
+license=\
+Eclipse Foundation Software User Agreement\n\
+April 9, 2014\n\
+\n\
+Usage Of Content\n\
+\n\
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
+NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU\n\
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
+OR NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE\n\
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
+BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
+\n\
+Applicable Licenses\n\
+\n\
+Unless otherwise indicated, all Content made available by the\n\
+Eclipse Foundation is provided to you under the terms and conditions of\n\
+the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
+provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
+For purposes of the EPL, "Program" will mean the Content.\n\
+\n\
+Content includes, but is not limited to, source code, object code,\n\
+documentation and other files maintained in the Eclipse Foundation source code\n\
+repository ("Repository") in software modules ("Modules") and made available\n\
+as downloadable archives ("Downloads").\n\
+\n\
+       - Content may be structured and packaged into modules to facilitate delivering,\n\
+         extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
+         plug-in fragments ("Fragments"), and features ("Features").\n\
+       - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
+         in a directory named "plugins".\n\
+       - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
+         Each Feature may be packaged as a sub-directory in a directory named "features".\n\
+         Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
+         numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
+       - Features may also include other Features ("Included Features"). Within a Feature, files\n\
+         named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
+\n\
+The terms and conditions governing Plug-ins and Fragments should be\n\
+contained in files named "about.html" ("Abouts"). The terms and\n\
+conditions governing Features and Included Features should be contained\n\
+in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
+Licenses may be located in any directory of a Download or Module\n\
+including, but not limited to the following locations:\n\
+\n\
+       - The top-level (root) directory\n\
+       - Plug-in and Fragment directories\n\
+       - Inside Plug-ins and Fragments packaged as JARs\n\
+       - Sub-directories of the directory named "src" of certain Plug-ins\n\
+       - Feature directories\n\
+\n\
+Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
+Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
+Update License") during the installation process. If the Feature contains\n\
+Included Features, the Feature Update License should either provide you\n\
+with the terms and conditions governing the Included Features or inform\n\
+you where you can locate them. Feature Update Licenses may be found in\n\
+the "license" property of files named "feature.properties" found within a Feature.\n\
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
+terms and conditions (or references to such terms and conditions) that\n\
+govern your use of the associated Content in that directory.\n\
+\n\
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
+\n\
+       - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
+       - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
+       - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
+       - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
+       - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
+\n\
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
+is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
+govern that particular Content.\n\
+\n\
+\n\Use of Provisioning Technology\n\
+\n\
+The Eclipse Foundation makes available provisioning software, examples of which include,\n\
+but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
+the purpose of allowing users to install software, documentation, information and/or\n\
+other materials (collectively "Installable Software"). This capability is provided with\n\
+the intent of allowing such users to install, extend and update Eclipse-based products.\n\
+Information about packaging Installable Software is available at\n\
+http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
+\n\
+You may use Provisioning Technology to allow other parties to install Installable Software.\n\
+You shall be responsible for enabling the applicable license agreements relating to the\n\
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
+in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
+making it available in accordance with the Specification, you further acknowledge your\n\
+agreement to, and the acquisition of all necessary rights to permit the following:\n\
+\n\
+       1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
+          the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
+          extending or updating the functionality of an Eclipse-based product.\n\
+       2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
+          Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
+       3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
+          govern the use of the Installable Software ("Installable Software Agreement") and such\n\
+          Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
+          with the Specification. Such Installable Software Agreement must inform the user of the\n\
+          terms and conditions that govern the Installable Software and must solicit acceptance by\n\
+          the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
+          indication of agreement by the user, the provisioning Technology will complete installation\n\
+          of the Installable Software.\n\
+\n\
+Cryptography\n\
+\n\
+Content may contain encryption software. The country in which you are\n\
+currently may have restrictions on the import, possession, and use,\n\
+and/or re-export to another country, of encryption software. BEFORE\n\
+using any encryption software, please check the country's laws,\n\
+regulations and policies concerning the import, possession, or use, and\n\
+re-export of encryption software, to see if this is permitted.\n\
+\n\
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
+########### end of license property ##########################################

+ 43 - 0
plugins/org.yakindu.sct.generator.sccd-feature/feature.xml

@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.yakindu.sct.generator.sccd"
+      label="YAKINDU Statechart Tools SCCD Code Generator"
+      version="3.4.0.qualifier"
+      provider-name="statecharts.org"
+      plugin="org.yakindu.sct.branding">
+
+   <description>
+      %description
+   </description>
+
+   <copyright url="%licenseURL">
+      %copyright
+   </copyright>
+
+   <license url="%licenseURL">
+      %license
+   </license>
+
+   <url>
+      <discovery label="YAKINDU SCT Repository" url="http://updates.yakindu.com/statecharts/releases/"/>
+   </url>
+
+   <requires>
+      <import feature="org.yakindu.sct" version="3.4.0.qualifier"/>
+   </requires>
+
+   <plugin
+         id="org.yakindu.sct.generator.sccd"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.yakindu.sct.generator.core"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>

+ 107 - 0
plugins/org.yakindu.sct.generator.sccd-feature/license.html

@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>April 9, 2014</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
+   (&quot;EPL&quot;).  A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+   For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
+
+<ul>
+       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
+       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
+       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
+      and/or Fragments associated with that Feature.</li>
+       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
+Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+       <li>The top-level (root) directory</li>
+       <li>Plug-in and Fragment directories</li>
+       <li>Inside Plug-ins and Fragments packaged as JARs</li>
+       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
+       <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
+installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+       <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
+   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
+   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+   (&quot;Specification&quot;).</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
+       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
+       product.</li>
+       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+       accessed and copied to the Target Machine.</li>
+       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
+       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>

+ 16 - 0
plugins/org.yakindu.sct.generator.sccd-feature/pom.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.yakindu.sct</groupId>
+		<artifactId>org.yakindu.sct.releng</artifactId>
+		<version>3.4.0-SNAPSHOT</version>
+		<relativePath>../../releng/org.yakindu.sct.releng/pom.xml</relativePath>
+	</parent>
+	<artifactId>org.yakindu.sct.generator.sccd</artifactId>
+	<packaging>eclipse-feature</packaging>
+	<groupId>org.yakindu.sct.features</groupId>
+
+</project>

+ 8 - 0
plugins/org.yakindu.sct.generator.sccd/.classpath

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="xtend-gen"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>

+ 2 - 0
plugins/org.yakindu.sct.generator.sccd/.gitignore

@@ -0,0 +1,2 @@
+/bin/
+/target/

+ 51 - 0
plugins/org.yakindu.sct.generator.sccd/.project

@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.yakindu.sct.generator.sccd</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.xtend.shared.ui.xtendBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.xtend.shared.ui.xtendXPandNature</nature>
+		<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+	</natures>
+	<filteredResources>
+		<filter>
+			<id>0</id>
+			<name></name>
+			<type>10</type>
+			<matcher>
+				<id>org.eclipse.ui.ide.multiFilter</id>
+				<arguments>1.0-name-matches-false-false-target</arguments>
+			</matcher>
+		</filter>
+	</filteredResources>
+</projectDescription>

+ 3 - 0
plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.core.resources.prefs

@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//.settings/org.eclipse.xtend.shared.ui.prefs=Cp1252
+encoding/<project>=UTF-8

+ 2 - 0
plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.core.runtime.prefs

@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n

+ 12 - 0
plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.jdt.core.prefs

@@ -0,0 +1,12 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8

+ 3 - 0
plugins/org.yakindu.sct.generator.sccd/.settings/org.eclipse.xtend.shared.ui.prefs

@@ -0,0 +1,3 @@
+#Thu Dec 22 16:18:38 CET 2011
+eclipse.preferences.version=1
+project.specific.metamodel=true

+ 14 - 0
plugins/org.yakindu.sct.generator.sccd/META-INF/MANIFEST.MF

@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: YAKINDU SCCD Generator
+Bundle-SymbolicName: org.yakindu.sct.generator.sccd;singleton:=true
+Bundle-Version: 3.4.0.qualifier
+Require-Bundle: org.yakindu.sct.model.stext,
+ org.yakindu.sct.generator.core,
+ org.yakindu.sct.generator.genmodel,
+ org.yakindu.sct.model.stext.lib
+Bundle-Vendor: statecharts.org
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.yakindu.sct.generator.sccd
+

+ 7 - 0
plugins/org.yakindu.sct.generator.sccd/build.properties

@@ -0,0 +1,7 @@
+source.. = src/,\
+		xtend-gen/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml,\
+               library/,\
+               icons/

BIN
plugins/org.yakindu.sct.generator.sccd/icons/sct.png


+ 57 - 0
plugins/org.yakindu.sct.generator.sccd/library/FeatureTypeLibrary.xmi

@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="ASCII"?>
+<sgen:FeatureTypeLibrary
+    xmi:version="2.0"
+    xmlns:xmi="http://www.omg.org/XMI"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:sgen="http://www.yakindu.org/sct/statechart/SGen"
+    xsi:schemaLocation="http://www.yakindu.org/sct/statechart/SGen ../../org.yakindu.sct.model.sgen/model/emf/sgen.ecore"
+    name="Java Generator">
+  <types name="Naming"
+      optional="true">
+    <parameters
+        name="basePackage"/>
+    <parameters
+        name="implementationSuffix"
+        optional="true"/>
+  </types>
+  <types name="GeneralFeatures"
+      optional="true">
+    <parameters
+        name="InterfaceObserverSupport"
+        optional="true"
+        parameterType="BOOLEAN"/>
+    <parameters
+        name="RuntimeService"
+        optional="true"
+        parameterType="BOOLEAN"/>
+    <parameters
+        name="TimerService"
+        optional="true"
+        parameterType="BOOLEAN"/>
+    <parameters
+        name="UseJavaIntForInteger"
+        optional="true"
+        parameterType="BOOLEAN"/>
+  </types>
+  <types name="RunnableWrapper"
+      comment="Generates a runnable wrapper for the state machine"
+      optional="true">
+    <parameters
+        name="namePrefix"
+        comment="Name prefix"
+        optional="true"/>
+    <parameters
+        name="nameSuffix"
+        comment="Name suffix"
+        optional="true"/>
+  </types>
+  <types name="SynchronizedWrapper"
+      optional="true">
+    <parameters
+        name="namePrefix"
+        optional="true"/>
+    <parameters
+        name="nameSuffix"
+        optional="true"/>
+  </types>
+</sgen:FeatureTypeLibrary>

+ 42 - 0
plugins/org.yakindu.sct.generator.sccd/plugin.xml

@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         point="org.yakindu.sct.generator.core.generator">
+       <SCTGenerator
+             bindings="org.yakindu.sct.generator.sccd.SCCDGeneratorModule"
+             contentType="statechart"
+             description="YAKINDU SCT Java Code Generator"
+             elementRefType="org.yakindu.sct.model.sgraph.Statechart"
+             executor="org.yakindu.sct.generator.core.execution.SGraphGeneratorEntryExecutor"
+             icon="icons/sct.png"
+             id="yakindu::sccd"
+             name="YAKINDU SCT Java Code Generator">
+             <Domain
+                   id="org.yakindu.domain.default">
+             </Domain>
+          <FeatureLibrary
+                library_id="org.yakindu.generator.core.features">
+          </FeatureLibrary>
+          <FeatureLibrary
+                library_id="org.yakindu.sct.generator.feature.sccd">
+          </FeatureLibrary>
+      </SCTGenerator>
+   </extension>
+   <extension
+         point="org.yakindu.sct.generator.core.featuretypes">
+      <FeatureLibrary
+            defaultProvider="org.yakindu.sct.generator.sccd.features.JavaFeatureValueProvider"
+            library_id="org.yakindu.sct.generator.feature.sccd"
+            uri="platform:/plugin/org.yakindu.sct.generator.sccd/library/FeatureTypeLibrary.xmi">
+      </FeatureLibrary>
+   </extension>
+   <extension
+         point="org.yakindu.sct.generator.core.extensions">
+      <ExtensionGeneratorMapping
+            fileExtension="sct"
+            generatorId="yakindu::sccd">
+      </ExtensionGeneratorMapping>
+   </extension>
+
+</plugin>

+ 47 - 0
plugins/org.yakindu.sct.generator.sccd/pom.xml

@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.yakindu.sct</groupId>
+		<artifactId>org.yakindu.sct.releng</artifactId>
+		<version>3.4.0-SNAPSHOT</version>
+		<relativePath>../../releng/org.yakindu.sct.releng/pom.xml</relativePath>
+	</parent>
+	<artifactId>org.yakindu.sct.generator.java</artifactId>
+	<groupId>org.yakindu.sct.plugins</groupId>
+	<packaging>eclipse-plugin</packaging>
+	<build>
+		<plugins>
+			<plugin>
+				<artifactId>maven-clean-plugin</artifactId>
+				<configuration>
+					<filesets>
+						<fileset>
+							<directory>xtend-gen</directory>
+							<includes>
+								<include>**</include>
+							</includes>
+							<excludes>
+								<exclude>.gitignore</exclude>
+								<exclude>.svn/</exclude>
+							</excludes>
+						</fileset>
+					</filesets>
+				</configuration>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.xtend</groupId>
+				<artifactId>xtend-maven-plugin</artifactId>
+				<executions>
+					<execution>
+						<goals>
+							<goal>compile</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+</project>

+ 122 - 0
plugins/org.yakindu.sct.generator.sccd/src/org/yakindu/sct/generator/sccd/SCCDGenerator.xtend

@@ -0,0 +1,122 @@
+/**
+  Copyright (c) 2012 committers of YAKINDU and others.
+  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:
+  	Markus Muehlbrandt - Initial contribution and API
+ */
+package org.yakindu.sct.generator.sccd
+
+import org.eclipse.xtext.generator.IFileSystemAccess
+import org.yakindu.sct.generator.core.ISGraphGenerator
+import org.yakindu.sct.model.sgen.GeneratorEntry
+import org.yakindu.sct.model.sgraph.Entry
+import org.yakindu.sct.model.sgraph.Region
+import org.yakindu.sct.model.sgraph.State
+import org.yakindu.sct.model.sgraph.Statechart
+import org.yakindu.sct.model.sgraph.Transition
+import org.yakindu.sct.model.sgraph.Trigger
+import org.yakindu.sct.model.stext.stext.DefaultTrigger
+import org.yakindu.sct.model.stext.stext.ReactionTrigger
+import org.yakindu.sct.model.stext.stext.impl.ReactionTriggerImpl
+
+/**
+ * This is the Java code generators main class.
+ * 
+ * @author Markus Mühlbrandt
+ * @author Axel Terfloth - extensions
+ */
+class SCCDGenerator implements ISGraphGenerator {
+
+    /*
+	@Inject extension GenmodelEntries
+	@Inject extension EventBasedRunnableFeature
+	@Inject extension CycleBasedWrapperFeature
+
+	@Inject extension SExecExtensions
+	@Inject extension IStatemachine
+	@Inject extension ITimerCallback
+	@Inject extension ITimer
+	@Inject extension TimerService
+	@Inject extension RuntimeService
+	@Inject extension StatemachineInterface
+	@Inject extension Statemachine
+	@Inject extension EventBasedRunnableWrapper
+	@Inject extension CycleBasedSynchronizedWrapper
+	@Inject INamingService namingService
+	*/
+ 	
+	override generate(Statechart sc, GeneratorEntry entry, IFileSystemAccess fsa) {
+		fsa.generateFile(sc.name + '.xml', sc.generate as String)
+	}
+	
+	def String generate(Statechart it){
+		'''
+		<?xml version="1.0" ?>
+		<diagram author="foo" name="aName">
+		<class name="MainApp" default="true">
+			«IF regions.size >= 2»
+			<scxml initial="parallelRegions">
+				<parallel id="parallelRegions">
+					«FOR region : regions»
+						<state id="«region.name»" initial="«region.initialState»">
+							«region.generate»
+						</state>
+					«ENDFOR»
+					</parallel>
+				«ELSE»
+			<scxml initial="«regions.head.initialState»">
+				«FOR region : regions»
+					«region.generate»
+				«ENDFOR»
+			«ENDIF»
+			</scxml>
+		</class>
+		</diagram>
+		'''
+	}
+	
+	def generate(Region it){
+		'''
+		«FOR vertex : vertices.filter(State)»
+			«vertex.generate»
+		«ENDFOR»
+		'''
+	}
+	
+	def initialState(Region it){
+		vertices.filter(Entry).head.outgoingTransitions.head.target.name
+	}
+	
+	def generate(State it){
+		'''
+		<state id="«name»">
+			«FOR transition : outgoingTransitions»
+			«transition.generate»
+			«ENDFOR»
+		</state>
+		'''
+	}
+	
+	def generate(Transition it){
+		'''
+		«trigger.generateTrigger»
+		Instance of : «trigger instanceof Trigger»
+		Instance of : «trigger instanceof ReactionTrigger»
+		Instance of : «trigger instanceof ReactionTriggerImpl»
+		<transition target="/«target.name»">
+		</transition>
+		'''
+		
+	}
+	
+	def dispatch generateTrigger(DefaultTrigger it) {
+		'''defaultTrigger'''
+	}
+	
+	def dispatch generateTrigger(ReactionTrigger it){
+		'''«triggers.toString()»'''
+	}
+}

+ 38 - 0
plugins/org.yakindu.sct.generator.sccd/src/org/yakindu/sct/generator/sccd/SCCDGeneratorModule.java

@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2016 committers of YAKINDU and others.
+ * 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:
+ *     committers of YAKINDU - initial API and implementation
+ */
+package org.yakindu.sct.generator.sccd;
+
+import org.yakindu.sct.generator.core.IGeneratorModule;
+import org.yakindu.sct.generator.core.ISGraphGenerator;
+import org.yakindu.sct.model.sgen.GeneratorEntry;
+
+import com.google.inject.Binder;
+
+/**
+ *
+ * @author andreas muelder - Initial contribution and API
+ * @author terfloth - extensions for event driven execution
+ *
+ */
+public class SCCDGeneratorModule implements IGeneratorModule {
+
+	@Override
+	public void configure(GeneratorEntry entry, Binder binder) {
+		configureGeneratorRoot(entry, binder);
+		// configureForExecutionStyle(entry, binder);
+		// configureServices(entry, binder);
+	}
+
+
+	public void configureGeneratorRoot(GeneratorEntry entry, Binder binder) {
+		binder.bind(ISGraphGenerator.class).to(SCCDGenerator.class);
+	}
+}

+ 5 - 0
plugins/org.yakindu.sct.generator.sccd/xtend-gen/.gitignore

@@ -0,0 +1,5 @@
+# Ignore those directories
+*
+
+# And never this file
+!.gitignore

+ 169 - 169
plugins/org.yakindu.sct.model.sgraph.edit/plugin.properties

@@ -1,170 +1,170 @@
-# Copyright (c) 2010 committers of YAKINDU and others.
-# 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:
-# committers of YAKINDU - initial API and implementation
-
-_UI_CreateChild_text = {0}
-_UI_CreateChild_text2 = {1} {0}
-_UI_CreateChild_text3 = {1}
-_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
-_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
-_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
-
-_UI_PropertyDescriptor_description = The {0} of the {1}
-
-_UI_Statechart_type = Statechart
-_UI_Region_type = Region
-_UI_Vertex_type = Vertex
-_UI_Transition_type = Transition
-_UI_State_type = State
-_UI_Pseudostate_type = Pseudostate
-_UI_FinalState_type = Final State
-_UI_InitialState_type = Initial State
-_UI_HistoryState_type = History State
-_UI_DeepHistoryState_type = Deep History State
-_UI_ShallowHistoryState_type = Shallow History State
-_UI_Fork_type = Fork
-_UI_Join_type = Join
-_UI_Junction_type = Junction
-_UI_Unknown_type = Object
-
-_UI_Unknown_datatype= Value
-
-_UI_Statechart_region_feature = Region
-_UI_Region_vertex_feature = Vertex
-_UI_Region_transition_feature = Transition
-_UI_Region_region_feature = Region
-_UI_Region_statechart_feature = Statechart
-_UI_Vertex_incoming_feature = Incoming
-_UI_Vertex_outgoing_feature = Outgoing
-_UI_Vertex___feature = 
-_UI_Transition_source_feature = Source
-_UI_Transition_region_feature = Region
-_UI_Transition_target_feature = Target
-_UI_ScopedElement_namespace_feature = Namespace
-_UI_State_region_feature = Region
-_UI_State_substatechartId_feature = Substatechart
-_UI_Unknown_feature = Unspecified
-
-_UI_Choice_type = Choice
-_UI_Vertex_containingRegion_feature = Containing Region
-_UI_Statechart_regions_feature = Regions
-_UI_Region_vertices_feature = Vertices
-_UI_Region_transitions_feature = Transitions
-_UI_Vertex_incomingTransitions_feature = Incoming Transitions
-_UI_Vertex_outgoingTransitions_feature = Outgoing Transitions
-_UI_State_regions_feature = Regions
-_UI_State_name_feature = Name
-_UI_NamedElement_type = Named Element
-_UI_NamedElement_name_feature = Name
-_UI_State_expression_feature = Expression
-_UI_ExpressionElement_type = Expression Element
-_UI_ExpressionElement_expression_feature = Expression
-_UI_BehavioredElement_type = Behaviored Element
-_UI_Event_type = Event
-_UI_Variable_type = Variable
-_UI_RealVariableValue_type = Real Variable Value
-_UI_RealVariable_type = Real Variable
-_UI_BooleanVariable_type = Boolean Variable
-_UI_BooleanVariableValue_type = Boolean Variable Value
-_UI_IntegerVariable_type = Integer Variable
-_UI_IntegerVariableValue_type = Integer Variable Value
-_UI_Vertex_parentRegion_feature = Parent Region
-_UI_Transition___feature = 
-_UI_State_subRegions_feature = Sub Regions
-_UI_BehavioredElement_events_feature = Events
-_UI_BehavioredElement_variables_feature = Variables
-_UI_Event___feature = 
-_UI_Variable___feature = 
-_UI_RealVariableValue___feature = 
-_UI_RealVariable_value_feature = Value
-_UI_BooleanVariable_value_feature = Value
-_UI_BooleanVariableValue_value_feature = Value
-_UI_BooleanVariableValue___feature = 
-_UI_IntegerVariable_value_feature = Value
-_UI_IntegerVariableValue_value_feature = Value
-_UI_IntegerVariableValue___feature = 
-_UI_TransitionExpression_type = Transition Expression
-_UI_Trigger_type = Trigger
-_UI_Effect_type = Effect
-_UI_TimeEvent_type = Time Event
-_UI_Transition_expression_feature = Expression
-_UI_Statechart_variables_feature = Variables
-_UI_Statechart_events_feature = Events
-_UI_DataElement_type = Data Element
-_UI_Entry_type = Entry
-_UI_Declaration_type = Declaration
-_UI_Reaction_type = Reaction
-_UI_ReactiveElement_type = Reactive Element
-_UI_Exit_type = Exit
-_UI_Scope_type = Scope
-_UI_ScopedElement_type = Scoped Element
-_UI_Entry_kind_feature = Kind
-_UI_Reaction_trigger_feature = Trigger
-_UI_Reaction_effect_feature = Effect
-_UI_ReactiveElement_reactions_feature = Reactions
-_UI_ReactiveElement_localReactions_feature = Local Reactions
-_UI_Scope_declarations_feature = Declarations
-_UI_Scope_events_feature = Events
-_UI_Scope_variables_feature = Variables
-_UI_ScopedElement_scopes_feature = Scopes
-_UI_EntryKind_initial_literal = INITIAL
-_UI_EntryKind_shallowHistory_literal = SHALLOW_HISTORY
-_UI_EntryKind_deepHistory_literal = DEEP_HISTORY
-_UI_Synchronization_type = Synchronization
-_UI_Region_priority_feature = Priority
-_UI_Transition_priority_feature = Priority
-_UI_State_substatechart_feature = Substatechart
-_UI_State_submachineState_feature = Submachine State
-_UI_State_compositeState_feature = Composite State
-_UI_State_simpleState_feature = Simple State
-_UI_SimpleState_type = Simple State
-_UI_CompositeState_type = Composite State
-_UI_SubmachineState_type = Submachine State
-_UI_CompositeState_subRegions_feature = Sub Regions
-_UI_CompositeState_orthogonal_feature = Orthogonal
-_UI_SubmachineState_substatechart_feature = Substatechart
-_UI_AbstractState_type = Abstract State
-_UI_State_orthogonal_feature = Orthogonal
-_UI_State_submachine_feature = Submachine
-_UI_State_simple_feature = Simple
-_UI_State_composite_feature = Composite
-_UI_Statement_type = Statement
-_UI_State_isLeaf_feature = Is Leaf
-_UI_State_leaf_feature = Leaf
-pluginName = SGraph Edit Support
-providerName = www.example.org
+# Copyright (c) 2010 committers of YAKINDU and others.
+# 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:
+# committers of YAKINDU - initial API and implementation
 
-_UI_RegularState_type = Regular State
-_UI_Choice_kind_feature = Kind
-_UI_ChoiceKind_dynamic_literal = dynamic
-_UI_ChoiceKind_static_literal = static
-_UI_CompositeElement_type = Composite Element
-_UI_Region_composite_feature = Composite
-_UI_State_subchart_feature = Subchart
-_UI_CompositeElement_regions_feature = Regions
-_UI_SpecificationElement_type = Specification Element
-_UI_SpecificationElement_expression_feature = Expression
-_UI_SpecificationElement_specification_feature = Specification
-_UI_ReactionProperty_type = Reaction Property
-_UI_Reaction_properties_feature = Properties
-_UI_Import_type = Import
-_UI_ImportDeclaration_type = Import Declaration
-_UI_Statechart_imports_feature = Imports
-_UI_Import_importedNamespace_feature = Imported Namespace
-_UI_ImportDeclaration_declaration_feature = Declaration
-_UI_Statechart_domainID_feature = Domain ID
-_UI_Scope_reactions_feature = Reactions
-_UI_AnnotatableElement_type = Annotatable Element
-_UI_AnnotatableElement_annotations_feature = Annotations
-_UI_Statechart_annotations_feature = Annotations
-_UI_ScopeMember_type = Scope Member
-_UI_Scope_members_feature = Members
-
-_UI_DocumentedElement_type = Documented Element
-_UI_DocumentedElement_documentation_feature = Documentation
-_UI_DomainElement_type = Domain Element
-_UI_DomainElement_domainID_feature = Domain ID
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_Statechart_type = Statechart
+_UI_Region_type = Region
+_UI_Vertex_type = Vertex
+_UI_Transition_type = Transition
+_UI_State_type = State
+_UI_Pseudostate_type = Pseudostate
+_UI_FinalState_type = Final State
+_UI_InitialState_type = Initial State
+_UI_HistoryState_type = History State
+_UI_DeepHistoryState_type = Deep History State
+_UI_ShallowHistoryState_type = Shallow History State
+_UI_Fork_type = Fork
+_UI_Join_type = Join
+_UI_Junction_type = Junction
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_Statechart_region_feature = Region
+_UI_Region_vertex_feature = Vertex
+_UI_Region_transition_feature = Transition
+_UI_Region_region_feature = Region
+_UI_Region_statechart_feature = Statechart
+_UI_Vertex_incoming_feature = Incoming
+_UI_Vertex_outgoing_feature = Outgoing
+_UI_Vertex___feature = 
+_UI_Transition_source_feature = Source
+_UI_Transition_region_feature = Region
+_UI_Transition_target_feature = Target
+_UI_ScopedElement_namespace_feature = Namespace
+_UI_State_region_feature = Region
+_UI_State_substatechartId_feature = Substatechart
+_UI_Unknown_feature = Unspecified
+
+_UI_Choice_type = Choice
+_UI_Vertex_containingRegion_feature = Containing Region
+_UI_Statechart_regions_feature = Regions
+_UI_Region_vertices_feature = Vertices
+_UI_Region_transitions_feature = Transitions
+_UI_Vertex_incomingTransitions_feature = Incoming Transitions
+_UI_Vertex_outgoingTransitions_feature = Outgoing Transitions
+_UI_State_regions_feature = Regions
+_UI_State_name_feature = Name
+_UI_NamedElement_type = Named Element
+_UI_NamedElement_name_feature = Name
+_UI_State_expression_feature = Expression
+_UI_ExpressionElement_type = Expression Element
+_UI_ExpressionElement_expression_feature = Expression
+_UI_BehavioredElement_type = Behaviored Element
+_UI_Event_type = Event
+_UI_Variable_type = Variable
+_UI_RealVariableValue_type = Real Variable Value
+_UI_RealVariable_type = Real Variable
+_UI_BooleanVariable_type = Boolean Variable
+_UI_BooleanVariableValue_type = Boolean Variable Value
+_UI_IntegerVariable_type = Integer Variable
+_UI_IntegerVariableValue_type = Integer Variable Value
+_UI_Vertex_parentRegion_feature = Parent Region
+_UI_Transition___feature = 
+_UI_State_subRegions_feature = Sub Regions
+_UI_BehavioredElement_events_feature = Events
+_UI_BehavioredElement_variables_feature = Variables
+_UI_Event___feature = 
+_UI_Variable___feature = 
+_UI_RealVariableValue___feature = 
+_UI_RealVariable_value_feature = Value
+_UI_BooleanVariable_value_feature = Value
+_UI_BooleanVariableValue_value_feature = Value
+_UI_BooleanVariableValue___feature = 
+_UI_IntegerVariable_value_feature = Value
+_UI_IntegerVariableValue_value_feature = Value
+_UI_IntegerVariableValue___feature = 
+_UI_TransitionExpression_type = Transition Expression
+_UI_Trigger_type = Trigger
+_UI_Effect_type = Effect
+_UI_TimeEvent_type = Time Event
+_UI_Transition_expression_feature = Expression
+_UI_Statechart_variables_feature = Variables
+_UI_Statechart_events_feature = Events
+_UI_DataElement_type = Data Element
+_UI_Entry_type = Entry
+_UI_Declaration_type = Declaration
+_UI_Reaction_type = Reaction
+_UI_ReactiveElement_type = Reactive Element
+_UI_Exit_type = Exit
+_UI_Scope_type = Scope
+_UI_ScopedElement_type = Scoped Element
+_UI_Entry_kind_feature = Kind
+_UI_Reaction_trigger_feature = Trigger
+_UI_Reaction_effect_feature = Effect
+_UI_ReactiveElement_reactions_feature = Reactions
+_UI_ReactiveElement_localReactions_feature = Local Reactions
+_UI_Scope_declarations_feature = Declarations
+_UI_Scope_events_feature = Events
+_UI_Scope_variables_feature = Variables
+_UI_ScopedElement_scopes_feature = Scopes
+_UI_EntryKind_initial_literal = INITIAL
+_UI_EntryKind_shallowHistory_literal = SHALLOW_HISTORY
+_UI_EntryKind_deepHistory_literal = DEEP_HISTORY
+_UI_Synchronization_type = Synchronization
+_UI_Region_priority_feature = Priority
+_UI_Transition_priority_feature = Priority
+_UI_State_substatechart_feature = Substatechart
+_UI_State_submachineState_feature = Submachine State
+_UI_State_compositeState_feature = Composite State
+_UI_State_simpleState_feature = Simple State
+_UI_SimpleState_type = Simple State
+_UI_CompositeState_type = Composite State
+_UI_SubmachineState_type = Submachine State
+_UI_CompositeState_subRegions_feature = Sub Regions
+_UI_CompositeState_orthogonal_feature = Orthogonal
+_UI_SubmachineState_substatechart_feature = Substatechart
+_UI_AbstractState_type = Abstract State
+_UI_State_orthogonal_feature = Orthogonal
+_UI_State_submachine_feature = Submachine
+_UI_State_simple_feature = Simple
+_UI_State_composite_feature = Composite
+_UI_Statement_type = Statement
+_UI_State_isLeaf_feature = Is Leaf
+_UI_State_leaf_feature = Leaf
+pluginName = SGraph Edit Support
+providerName = www.example.org
+
+_UI_RegularState_type = Regular State
+_UI_Choice_kind_feature = Kind
+_UI_ChoiceKind_dynamic_literal = dynamic
+_UI_ChoiceKind_static_literal = static
+_UI_CompositeElement_type = Composite Element
+_UI_Region_composite_feature = Composite
+_UI_State_subchart_feature = Subchart
+_UI_CompositeElement_regions_feature = Regions
+_UI_SpecificationElement_type = Specification Element
+_UI_SpecificationElement_expression_feature = Expression
+_UI_SpecificationElement_specification_feature = Specification
+_UI_ReactionProperty_type = Reaction Property
+_UI_Reaction_properties_feature = Properties
+_UI_Import_type = Import
+_UI_ImportDeclaration_type = Import Declaration
+_UI_Statechart_imports_feature = Imports
+_UI_Import_importedNamespace_feature = Imported Namespace
+_UI_ImportDeclaration_declaration_feature = Declaration
+_UI_Statechart_domainID_feature = Domain ID
+_UI_Scope_reactions_feature = Reactions
+_UI_AnnotatableElement_type = Annotatable Element
+_UI_AnnotatableElement_annotations_feature = Annotations
+_UI_Statechart_annotations_feature = Annotations
+_UI_ScopeMember_type = Scope Member
+_UI_Scope_members_feature = Members
+
+_UI_DocumentedElement_type = Documented Element
+_UI_DocumentedElement_documentation_feature = Documentation
+_UI_DomainElement_type = Domain Element
+_UI_DomainElement_domainID_feature = Domain ID

+ 1 - 0
plugins/org.yakindu.sct.model.sruntime/META-INF/MANIFEST.MF

@@ -2,6 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.yakindu.sct.model.sruntime;singleton:=true
+Automatic-Module-Name: org.yakindu.sct.model.sruntime
 Bundle-Version: 3.4.0.qualifier
 Bundle-ClassPath: .
 Bundle-Vendor: %providerName

+ 1 - 1
plugins/org.yakindu.sct.simulation.core.sexec/plugin.xml

@@ -10,5 +10,5 @@
           name="Statechart Simulation">
     	</launchConfigurationType>
 	</extension>
- 
+ 
 </plugin>

+ 58 - 58
plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/policies/ContextSensitiveHelpPolicy.java

@@ -1,63 +1,63 @@
-/**
- * Copyright (c) 2011 committers of YAKINDU and others.
- * 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:
- * 	committers of YAKINDU - initial API and implementation
- * 
- */
-package org.yakindu.sct.ui.editor.policies;
-
-import org.eclipse.gef.editpolicies.SelectionEditPolicy;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.yakindu.sct.ui.editor.utils.HelpContextIds;
-
-/**
- * Adds context-sensitive help to the host <code>EditPart</code>. 
- * 
- * @see org.yakindu.sct.ui.editor.utils.HelpContextIds
- * 
- * @author martin esser
- * 
- */
-public class ContextSensitiveHelpPolicy extends SelectionEditPolicy {
-
+/**
+ * Copyright (c) 2011 committers of YAKINDU and others.
+ * 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:
+ * 	committers of YAKINDU - initial API and implementation
+ * 
+ */
+package org.yakindu.sct.ui.editor.policies;
+
+import org.eclipse.gef.editpolicies.SelectionEditPolicy;
+import org.eclipse.ui.IViewPart;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+import org.yakindu.sct.ui.editor.utils.HelpContextIds;
+
+/**
+ * Adds context-sensitive help to the host <code>EditPart</code>. 
+ * 
+ * @see org.yakindu.sct.ui.editor.utils.HelpContextIds
+ * 
+ * @author martin esser
+ * 
+ */
+public class ContextSensitiveHelpPolicy extends SelectionEditPolicy {
+
 	// Duplicate of the internal constant used to register the help view as a UI
 	// extension.
 	// @see org.eclipse.help.ui.internalDefaulHelptUI#HELP_VIEW_ID
-	private final static String HELP_VIEW_ID = "org.eclipse.help.ui.HelpView";
+	private final static String HELP_VIEW_ID = "org.eclipse.help.ui.HelpView";
+	
+	private String helpContextId;
+
+	public ContextSensitiveHelpPolicy(String helpContextId) {
+		this.helpContextId = helpContextId;
+	}
+
+	@Override
+	protected void showSelection() {
+		if (isDynamicHelpViewShowing()) {
+				displayViewerHelpContext(helpContextId);
+		}
+	}
+
+	@Override
+	protected void hideSelection() {
+		if (isDynamicHelpViewShowing()) {
+			displayViewerHelpContext(HelpContextIds.SC_EDITOR_GRAPHICAL_VIEWER);
+		}
+	}
+
+	private void displayViewerHelpContext(String helpContextId) {
+		PlatformUI.getWorkbench().getHelpSystem()
+				.setHelp(getHost().getViewer().getControl(), helpContextId);
+		PlatformUI.getWorkbench().getHelpSystem().displayDynamicHelp();
+	}
 	
-	private String helpContextId;
-
-	public ContextSensitiveHelpPolicy(String helpContextId) {
-		this.helpContextId = helpContextId;
-	}
-
-	@Override
-	protected void showSelection() {
-		if (isDynamicHelpViewShowing()) {
-				displayViewerHelpContext(helpContextId);
-		}
-	}
-
-	@Override
-	protected void hideSelection() {
-		if (isDynamicHelpViewShowing()) {
-			displayViewerHelpContext(HelpContextIds.SC_EDITOR_GRAPHICAL_VIEWER);
-		}
-	}
-
-	private void displayViewerHelpContext(String helpContextId) {
-		PlatformUI.getWorkbench().getHelpSystem()
-				.setHelp(getHost().getViewer().getControl(), helpContextId);
-		PlatformUI.getWorkbench().getHelpSystem().displayDynamicHelp();
-	}
-	
 	public static boolean isDynamicHelpViewShowing() {
 		boolean open = false;
 		IWorkbenchWindow activeWindow = PlatformUI.getWorkbench()
@@ -73,5 +73,5 @@ public class ContextSensitiveHelpPolicy extends SelectionEditPolicy {
 		}
 		return open;
 	}
-
-}
+
+}