From c73717599503a6ecc07464bc75d51eec0b218ee5 Mon Sep 17 00:00:00 2001 From: Tim Kluge <timklge@gmail.com> Date: Mon, 28 Sep 2020 20:44:13 +0200 Subject: [PATCH] Add eclipse product configuration for deployment --- org.framed.iorm.featuremodel/build.properties | 3 +- .../test/TransformationTestSuite.java | 4 +- .../test/testgeneration/TestGenerator.java | 2 +- .../transformation/EpsilonStandalone.java | 24 +- .../TransformationExecutor.java | 62 +- org.framed.iorm.ui/META-INF/MANIFEST.MF | 4 +- org.framed.iorm.ui/build.properties | 26 +- .../core/model/ModelPattern.java | 4 +- org.framed.iorm.ui/framed.product | 515 +++++++++++++ .../icons/icon_role_model_project_wizard.icns | Bin 0 -> 3377 bytes .../icons/icon_role_model_wizard.ico | Bin 0 -> 12862 bytes .../icons/icon_role_model_wizard.xpm | 724 ++++++++++++++++++ .../icons/icon_role_model_wizard_16.png | Bin 0 -> 2703 bytes .../icons/icon_role_model_wizard_32.png | Bin 0 -> 8942 bytes org.framed.iorm.ui/icons/splash.png | Bin 0 -> 5347 bytes org.framed.iorm.ui/plugin.xml | 53 +- org.framed.iorm.ui/plugin_customization.ini | 1 + org.framed.iorm.ui/splash.bmp | Bin 0 -> 495122 bytes .../ui/subeditors/FRaMEDFeatureEditor.java | 2 +- 19 files changed, 1382 insertions(+), 42 deletions(-) create mode 100644 org.framed.iorm.ui/framed.product create mode 100644 org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard.ico create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard.xpm create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard_16.png create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard_32.png create mode 100644 org.framed.iorm.ui/icons/splash.png create mode 100644 org.framed.iorm.ui/plugin_customization.ini create mode 100644 org.framed.iorm.ui/splash.bmp diff --git a/org.framed.iorm.featuremodel/build.properties b/org.framed.iorm.featuremodel/build.properties index 076250ce..200d24e7 100644 --- a/org.framed.iorm.featuremodel/build.properties +++ b/org.framed.iorm.featuremodel/build.properties @@ -2,6 +2,7 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ + standardframedconfiguration/,\ model.xml src.includes = model.xml,\ - META-INF/ + standardframedconfiguration/ \ No newline at end of file diff --git a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java index e1bddb9a..dec35028 100644 --- a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java +++ b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java @@ -88,7 +88,7 @@ public class TransformationTestSuite { if (bundle != null) { // get dir out of bundle URL fileURL = bundle.getEntry("testcases"); - file = new File(FileLocator.resolve(fileURL).toURI()); + file = new File(FileLocator.toFileURL(fileURL).toURI()); } else { // otherwise just load it from the working directory file = new File("testcases"); @@ -326,7 +326,7 @@ public class TransformationTestSuite { Bundle bundle = Platform.getBundle("org.framed.iorm.transformation.test"); URL fileURL = bundle.getEntry("testcases/Generated/" + filename + ".xmi"); try { - File file = new File(FileLocator.resolve(fileURL).toURI()); + File file = new File(FileLocator.toFileURL(fileURL).toURI()); Files.delete(Paths.get(file.getPath())); } catch (URISyntaxException | IOException e) { e.printStackTrace(); diff --git a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java index 7f3f4304..64340ee1 100644 --- a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java +++ b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java @@ -48,7 +48,7 @@ public class TestGenerator { configGenerator = new ConfigGenerator(); Bundle bundle = Platform.getBundle("org.framed.iorm.transformation.test"); URL fileURL = bundle.getEntry("testcases/Generated/baseTest.xmi"); - File file = new File(FileLocator.resolve(fileURL).toURI()); + File file = new File(FileLocator.toFileURL(fileURL).toURI()); String str_config; TestCase testCase = loadTestCase(file); diff --git a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java index 5b1faa99..daf0ab8c 100644 --- a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java +++ b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java @@ -1,15 +1,18 @@ package org.framed.iorm.transformation; +import java.io.File; +import java.io.IOException; +import java.net.MalformedURLException; import java.net.URI; import java.net.URISyntaxException; import java.net.URL; import java.util.List; -import org.eclipse.core.runtime.Platform; + +import org.eclipse.core.runtime.FileLocator; import org.eclipse.epsilon.common.parse.problem.ParseProblem; import org.eclipse.epsilon.eol.IEolModule; import org.eclipse.epsilon.eol.exceptions.EolRuntimeException; import org.eclipse.epsilon.eol.models.IModel; -import org.osgi.framework.Bundle; public abstract class EpsilonStandalone { @@ -52,12 +55,21 @@ public abstract class EpsilonStandalone { } protected URI getTransformationFile() { - Bundle bundle = Platform.getBundle("org.framed.iorm.transformation"); - URL fileURL = bundle.getEntry(getSource()); + URL fileURL = null; + try { + fileURL = new File(getSource()).toURI().toURL(); + } catch (MalformedURLException e1) { + e1.printStackTrace(); + } + try { - return fileURL.toURI(); - } catch (URISyntaxException e) { e.printStackTrace(); } + System.out.println("Output file is " + FileLocator.toFileURL(fileURL).toString()); + + return FileLocator.toFileURL(fileURL).toURI(); + } catch (URISyntaxException e) { e.printStackTrace(); } catch (IOException e) { + e.printStackTrace(); + } return null; } } diff --git a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java index 02a3cf9b..22530d9b 100644 --- a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java +++ b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java @@ -61,9 +61,15 @@ public class TransformationExecutor extends EpsilonStandalone { */ private final List<File> copiedAndGeneratedFiles; - private final String generatedFolder = "generated", generatedFile = "generatedORM2CROM.etl", + private final String generatedFile = "generatedORM2CROM.etl", importMarker = "/*{generate imports here}*/"; + private Path tempEpsilonFolder; + + public Path getTempGeneratedFolder() { + return tempEpsilonFolder; + } + /** * class constructor * <p> @@ -83,6 +89,17 @@ public class TransformationExecutor extends EpsilonStandalone { * need to be copied once. */ public TransformationExecutor() { + tempEpsilonFolder = null; + try { + tempEpsilonFolder = Files.createTempDirectory("framed"); + } catch (IOException e2) { + e2.printStackTrace(); + } + try { + Files.createDirectory(Paths.get(tempEpsilonFolder.toString(), "generated")); + } catch (IOException e2) { + e2.printStackTrace(); + } sourceModelFile = null; targetModelFile = null; copiedAndGeneratedFiles = new ArrayList<File>(); @@ -90,7 +107,7 @@ public class TransformationExecutor extends EpsilonStandalone { URL epsilonFolderURL = TransformationBundle.getEntry("epsilon"); File epsilonFolder = null; try { - epsilonFolder = new File(resolveURL(FileLocator.resolve(epsilonFolderURL))); + epsilonFolder = new File(resolveURL(epsilonFolderURL)); } catch (URISyntaxException | IOException e1) { e1.printStackTrace(); } @@ -99,6 +116,18 @@ public class TransformationExecutor extends EpsilonStandalone { System.err.println("No folder 'epsilon' found"); return; } + + final String[] epsilonFiles = {"AllFeatures.eol", "CardinalityParser.eol", "ORM2CROM.etl"}; + for(String f : epsilonFiles) { + try { + File src = new File(FileLocator.toFileURL(TransformationBundle.getEntry("/epsilon/" + f)).toURI()); + File dst = new File(Paths.get(tempEpsilonFolder.toString(), f).toString()); + Files.copy(src.toPath(), dst.toPath(), StandardCopyOption.REPLACE_EXISTING); + } catch(IOException | URISyntaxException e) { + e.printStackTrace(); + } + } + // Step 2 List<URL> moduleFileURLs = null, coreFileURLs = null; Enumeration<URL> moduleFileEnumeration = UIBundle.findEntries("/modules", "*.etl", true), @@ -116,15 +145,15 @@ public class TransformationExecutor extends EpsilonStandalone { && !packageETLFilesMarkedAsNotUsed(url.toString(), "modules/")) { // (a) try { - etlFile = new File(resolveURL(FileLocator.resolve(url))); + etlFile = new File(resolveURL(url)); } catch (URISyntaxException | IOException e) { e.printStackTrace(); } try { try { - Path path = Files.copy(Paths.get(etlFile.getPath()), - Paths.get(epsilonFolder.getPath() + File.separator + File.separator - + generatedFolder + File.separator + etlFile.getName()), + File targetFile = new File(Paths.get(tempEpsilonFolder.toString(), "generated", etlFile.getName()).toString()); + targetFile.mkdirs(); + Path path = Files.copy(Paths.get(etlFile.getPath()), targetFile.toPath(), StandardCopyOption.REPLACE_EXISTING); copiedAndGeneratedFiles.add(new File(path.toString())); // Note @@ -144,15 +173,16 @@ public class TransformationExecutor extends EpsilonStandalone { && !packageETLFilesMarkedAsNotUsed(url.toString(), "core/")) { // (a) try { - etlFile = new File(resolveURL(FileLocator.resolve(url))); + etlFile = new File(resolveURL(url)); } catch (URISyntaxException | IOException e) { e.printStackTrace(); } try { try { + File targetFile = new File(Paths.get(tempEpsilonFolder.toString(), "generated", etlFile.getName()).toString()); + Path path = Files.copy(Paths.get(etlFile.getPath()), - Paths.get(epsilonFolder.getPath() + File.separator + File.separator - + generatedFolder + File.separator + etlFile.getName()), + targetFile.toPath(), StandardCopyOption.REPLACE_EXISTING); copiedAndGeneratedFiles.add(new File(path.toString())); // Note @@ -167,8 +197,8 @@ public class TransformationExecutor extends EpsilonStandalone { } } // Step 4 - generateORM2CROMWithImports(importNames, epsilonFolder); - transformationFile = "epsilon/" + generatedFolder + "/" + generatedFile; + generateORM2CROMWithImports(importNames, tempEpsilonFolder.toFile()); + transformationFile = Paths.get(tempEpsilonFolder.toString(), "generated", generatedFile.toString()).toString(); } /** @@ -225,7 +255,7 @@ public class TransformationExecutor extends EpsilonStandalone { } else { // Step 2 try { - File ORM2CROMUrl = new File(resolveURL(FileLocator.resolve(ORM2CROMUrls.get(0)))); + File ORM2CROMUrl = new File(resolveURL(ORM2CROMUrls.get(0))); BufferedReader buff = new BufferedReader(new FileReader(ORM2CROMUrl.getPath())); String str = ""; while ((str = buff.readLine()) != null) { @@ -240,8 +270,7 @@ public class TransformationExecutor extends EpsilonStandalone { fileText = fileText.replace(importMarker, importMarker + "\n import \"" + s + "\";\n"); // Step 4 try { - String generatedORM2CROMPath = epsilonFolder.getPath() + File.separator + File.separator - + generatedFolder + File.separator + generatedFile; + String generatedORM2CROMPath = Paths.get(tempEpsilonFolder.toString(), "generated", generatedFile.toString()).toString(); File generatedORM2CROM = new File(generatedORM2CROMPath); generatedORM2CROM.createNewFile(); copiedAndGeneratedFiles.add(generatedORM2CROM); @@ -382,8 +411,9 @@ public class TransformationExecutor extends EpsilonStandalone { * @param url the given URL * @return a new correctly initialized URI object * @throws URISyntaxException + * @throws IOException */ - private static URI resolveURL(URL url) throws URISyntaxException { - return new URI(url.getProtocol(), url.getPath(), null); + private static URI resolveURL(URL url) throws URISyntaxException, IOException { + return FileLocator.toFileURL(url).toURI(); } } diff --git a/org.framed.iorm.ui/META-INF/MANIFEST.MF b/org.framed.iorm.ui/META-INF/MANIFEST.MF index e916b037..b52ced48 100644 --- a/org.framed.iorm.ui/META-INF/MANIFEST.MF +++ b/org.framed.iorm.ui/META-INF/MANIFEST.MF @@ -28,7 +28,9 @@ Require-Bundle: org.framed.iorm.featuremodel;bundle-version="1.0.0", org.eclipse.ui.workbench, org.eclipse.emf.ecore, org.framed.iorm.editpolicymodel;bundle-version="1.0.0", - org.eclipse.osgi + org.eclipse.osgi, + org.apache.felix.scr;bundle-version="2.0.14", + org.eclipse.equinox.ds;bundle-version="1.5.100" Import-Package: org.eclipse.graphiti.features;version="0.13.2", org.framed.iorm.transformation Bundle-ClassPath: src/, diff --git a/org.framed.iorm.ui/build.properties b/org.framed.iorm.ui/build.properties index e8eacb21..98900e60 100644 --- a/org.framed.iorm.ui/build.properties +++ b/org.framed.iorm.ui/build.properties @@ -1,11 +1,15 @@ -source.. = src/,\ - core/,\ - modules/ -output.. = bin/ -bin.includes = META-INF/,\ - plugin.xml,\ - .,\ - .classpath,\ - src/,\ - modules/ -jars.compile.order = . +output.. = bin/ +bin.includes = META-INF/,\ + plugin.xml,\ + .,\ + .classpath,\ + src/,\ + modules/,\ + icons/,\ + plugin_customization.ini,\ + bin/,\ + core/ +jars.compile.order = . +source.. = src/,\ + core/,\ + modules/ diff --git a/org.framed.iorm.ui/core/model/ModelPattern.java b/org.framed.iorm.ui/core/model/ModelPattern.java index 84658a16..93fde284 100644 --- a/org.framed.iorm.ui/core/model/ModelPattern.java +++ b/org.framed.iorm.ui/core/model/ModelPattern.java @@ -152,8 +152,10 @@ public class ModelPattern extends FRaMEDShapePattern implements IPattern { */ private void setStandartConfiguration(Model model) throws URISyntaxException, IOException { ResourceSet resourceSet = new ResourceSetImpl(); + System.out.println(UILiterals.URL_TO_STANDARD_CONFIGURATION.toURI().toString()); + System.out.println(URI.createURI(UILiterals.URL_TO_STANDARD_CONFIGURATION.toURI().toString()).toString()); Resource resourceStandartConfiguration = - resourceSet.createResource(URI.createFileURI(FileLocator.resolve(UILiterals.URL_TO_STANDARD_CONFIGURATION).getFile())); + resourceSet.getResource(URI.createURI(UILiterals.URL_TO_STANDARD_CONFIGURATION.toURI().toString()), true); try { resourceStandartConfiguration.load(null); } catch (IOException e) { diff --git a/org.framed.iorm.ui/framed.product b/org.framed.iorm.ui/framed.product new file mode 100644 index 00000000..59a0aa0f --- /dev/null +++ b/org.framed.iorm.ui/framed.product @@ -0,0 +1,515 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?pde version="3.5"?> + +<product name="FRaMED Editor" uid="org.framed.iorm.ui.product" id="org.framed.iorm.ui.framed" application="org.eclipse.ui.ide.workbench" version="2.2.0.qualifier" useFeatures="false" includeLaunchers="true"> + + <aboutInfo> + <image path="/org.framed.iorm.ui/icons/splash.png"/> + <text> + The Full-fledged Role Modeling EDitor Software Product Line (FRaMED SPL) (Version 2.0) is the reimplementation of FRaMED allowing the graphical specification of Role-based Software Systems by means of compartments (aka. contexts), objects, roles, and relationships. Moreover, it supports a varity of constraints upon roles and relationships. + +Contributors: +Kevin Ivo Kassin +Christian Deussen +Thomas Kühn + </text> + </aboutInfo> + + <configIni use="default"> + </configIni> + + <launcherArgs> + <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts + </vmArgsMac> + </launcherArgs> + + <windowImages/> + + <splash + location="org.framed.iorm.ui" + startupProgressRect="5,275,445,15" + startupMessageRect="7,252,445,20" + startupForegroundColor="000000" /> + <launcher name="framed"> + <linux icon="/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm"/> + <macosx icon="/org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns"/> + <win useIco="true"> + <ico path="/org.framed.iorm.ui/icons/icon_role_model_wizard.ico"/> + <bmp/> + </win> + </launcher> + + + <vm> + <linux include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</linux> + <windows include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</windows> + </vm> + + <license> + <url>https://www.eclipse.org/legal/epl-2.0/</url> + <text> + Eclipse Public License - v 2.0 + + THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE + PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION + OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + + a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + + b) in the case of each subsequent Contributor: + i) changes to the Program, and + ii) additions to the Program; + 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 changes or additions to the Program that + are not Modified Works. + +"Contributor" means any person or entity that Distributes the Program. + +"Licensed Patents" 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. + +"Program" means the Contributions Distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this Agreement +or any Secondary License (as applicable), including Contributors. + +"Derivative Works" shall mean any work, whether in Source Code or other +form, that is based on (or derived from) the Program and for which the +editorial revisions, annotations, elaborations, or other modifications +represent, as a whole, an original work of authorship. + +"Modified Works" shall mean any work in Source Code or other form that +results from an addition to, deletion from, or modification of the +contents of the Program, including, for purposes of clarity any new file +in Source Code form that contains any contents of the Program. Modified +Works shall not include works that contain only declarations, +interfaces, types, classes, structures, or files of the Program solely +in each case in order to link to, bind by name, or subclass the Program +or Modified Works thereof. + +"Distribute" means the acts of a) distributing or b) making available +in any manner that enables the transfer of a copy. + +"Source Code" means the form of a Program preferred for making +modifications, including but not limited to software source code, +documentation source, and configuration files. + +"Secondary License" means either the GNU General Public License, +Version 2.0, or any later versions of that license, including any +exceptions or additional permissions as identified by the initial +Contributor. + +2. GRANT OF RIGHTS + + a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + + b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, 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 or other 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. + + 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. + + 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. + + e) Notwithstanding the terms of any Secondary License, no + Contributor makes additional grants to any Recipient (other than + those set forth in this Agreement) as a result of such Recipient's + receipt of the Program under the terms of a Secondary License + (if permitted under the terms of Section 3). + +3. REQUIREMENTS + +3.1 If a Contributor Distributes the Program in any form, then: + + a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + i) effectively disclaims on behalf of all other 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; + + ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, + incidental and consequential damages, such as lost profits; + + iii) does not attempt to limit or alter the recipients' rights + in the Source Code under section 3.2; and + + iv) requires any subsequent distribution of the Program by any + party to be under a license that satisfies the requirements + of this section 3. + +3.2 When the Program is Distributed as Source Code: + + a) it must be made available under this Agreement, or if the + Program (i) is combined with other material in a separate file or + files made available under a Secondary License, and (ii) the initial + Contributor attached to the Source Code the notice described in + Exhibit A of this Agreement, then the Program may be made available + under the terms of such Secondary Licenses, and + + b) a copy of this Agreement must be included with each copy of + the Program. + +3.3 Contributors may not remove or alter any copyright, patent, +trademark, attribution notices, disclaimers of warranty, or limitations +of liability ("notices") contained within the Program from any copy of +the Program which they Distribute, provided that Contributors may add +their own appropriate notices. + +4. COMMERCIAL DISTRIBUTION + +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 +("Commercial Contributor") hereby agrees to defend and indemnify every +other Contributor ("Indemnified Contributor") against any losses, +damages and costs (collectively "Losses") 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. + +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. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT +PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS" +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. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT +PERMITTED BY APPLICABLE LAW, 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. + +7. GENERAL + +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. + +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. + +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. + +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. Nothing in this Agreement is intended +to be enforceable by any entity that is not a Contributor or Recipient. +No third-party beneficiary rights are created under this Agreement. + +Exhibit A - Form of Secondary Licenses Notice + +"This Source Code may also be made available under the following +Secondary Licenses when the conditions for such availability set forth +in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), +version(s), and exceptions or additional permissions here}." + + Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + + If it is not possible or desirable to put the notice in a particular + file, then You may include the notice in a location (such as a LICENSE + file in a relevant directory) where a recipient would be likely to + look for such a notice. + + You may add additional accurate notices of copyright ownership. + </text> + </license> + + <plugins> + <plugin id="com.google.inject"/> + <plugin id="com.ibm.icu"/> + <plugin id="de.ovgu.featureide.fm.core"/> + <plugin id="de.ovgu.featureide.fm.ui"/> + <plugin id="javax.annotation"/> + <plugin id="javax.inject"/> + <plugin id="javax.servlet"/> + <plugin id="javax.xml"/> + <plugin id="org.antlr.runtime_3.1.b1"/> + <plugin id="org.apache.batik.constants"/> + <plugin id="org.apache.batik.css"/> + <plugin id="org.apache.batik.i18n"/> + <plugin id="org.apache.batik.util"/> + <plugin id="org.apache.commons.io"/> + <plugin id="org.apache.commons.jxpath"/> + <plugin id="org.apache.commons.logging"/> + <plugin id="org.apache.felix.gogo.runtime"/> + <plugin id="org.apache.felix.scr"/> + <plugin id="org.apache.felix.scr.source"/> + <plugin id="org.apache.xmlgraphics"/> + <plugin id="org.eclipse.ant.core"/> + <plugin id="org.eclipse.compare"/> + <plugin id="org.eclipse.compare.core"/> + <plugin id="org.eclipse.core.commands"/> + <plugin id="org.eclipse.core.contenttype"/> + <plugin id="org.eclipse.core.databinding"/> + <plugin id="org.eclipse.core.databinding.observable"/> + <plugin id="org.eclipse.core.databinding.property"/> + <plugin id="org.eclipse.core.expressions"/> + <plugin id="org.eclipse.core.filebuffers"/> + <plugin id="org.eclipse.core.filesystem"/> + <plugin id="org.eclipse.core.filesystem.linux.x86_64" fragment="true"/> + <plugin id="org.eclipse.core.jobs"/> + <plugin id="org.eclipse.core.net"/> + <plugin id="org.eclipse.core.net.linux.x86_64" fragment="true"/> + <plugin id="org.eclipse.core.resources"/> + <plugin id="org.eclipse.core.runtime"/> + <plugin id="org.eclipse.core.variables"/> + <plugin id="org.eclipse.debug.core"/> + <plugin id="org.eclipse.debug.ui"/> + <plugin id="org.eclipse.draw2d"/> + <plugin id="org.eclipse.e4.core.commands"/> + <plugin id="org.eclipse.e4.core.contexts"/> + <plugin id="org.eclipse.e4.core.di"/> + <plugin id="org.eclipse.e4.core.di.annotations"/> + <plugin id="org.eclipse.e4.core.di.extensions"/> + <plugin id="org.eclipse.e4.core.di.extensions.supplier"/> + <plugin id="org.eclipse.e4.core.services"/> + <plugin id="org.eclipse.e4.emf.xpath"/> + <plugin id="org.eclipse.e4.ui.bindings"/> + <plugin id="org.eclipse.e4.ui.css.core"/> + <plugin id="org.eclipse.e4.ui.css.swt"/> + <plugin id="org.eclipse.e4.ui.css.swt.theme"/> + <plugin id="org.eclipse.e4.ui.di"/> + <plugin id="org.eclipse.e4.ui.model.workbench"/> + <plugin id="org.eclipse.e4.ui.services"/> + <plugin id="org.eclipse.e4.ui.swt.gtk" fragment="true"/> + <plugin id="org.eclipse.e4.ui.widgets"/> + <plugin id="org.eclipse.e4.ui.workbench"/> + <plugin id="org.eclipse.e4.ui.workbench.addons.swt"/> + <plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/> + <plugin id="org.eclipse.e4.ui.workbench.renderers.swt.cocoa" fragment="true"/> + <plugin id="org.eclipse.e4.ui.workbench.swt"/> + <plugin id="org.eclipse.e4.ui.workbench3"/> + <plugin id="org.eclipse.emf"/> + <plugin id="org.eclipse.emf.codegen"/> + <plugin id="org.eclipse.emf.codegen.ecore"/> + <plugin id="org.eclipse.emf.common"/> + <plugin id="org.eclipse.emf.common.ui"/> + <plugin id="org.eclipse.emf.ecore"/> + <plugin id="org.eclipse.emf.ecore.change"/> + <plugin id="org.eclipse.emf.ecore.xmi"/> + <plugin id="org.eclipse.emf.edit"/> + <plugin id="org.eclipse.emf.edit.ui"/> + <plugin id="org.eclipse.emf.transaction"/> + <plugin id="org.eclipse.emf.validation"/> + <plugin id="org.eclipse.emf.workspace"/> + <plugin id="org.eclipse.epsilon.common"/> + <plugin id="org.eclipse.epsilon.common.dt"/> + <plugin id="org.eclipse.epsilon.dependencies"/> + <plugin id="org.eclipse.epsilon.emc.emf"/> + <plugin id="org.eclipse.epsilon.eol.dt"/> + <plugin id="org.eclipse.epsilon.eol.engine"/> + <plugin id="org.eclipse.epsilon.erl.engine"/> + <plugin id="org.eclipse.epsilon.etl.engine"/> + <plugin id="org.eclipse.equinox.app"/> + <plugin id="org.eclipse.equinox.bidi"/> + <plugin id="org.eclipse.equinox.common"/> + <plugin id="org.eclipse.equinox.ds"/> + <plugin id="org.eclipse.equinox.event"/> + <plugin id="org.eclipse.equinox.p2.core"/> + <plugin id="org.eclipse.equinox.p2.engine"/> + <plugin id="org.eclipse.equinox.p2.metadata"/> + <plugin id="org.eclipse.equinox.p2.metadata.repository"/> + <plugin id="org.eclipse.equinox.p2.repository"/> + <plugin id="org.eclipse.equinox.preferences"/> + <plugin id="org.eclipse.equinox.region" fragment="true"/> + <plugin id="org.eclipse.equinox.registry"/> + <plugin id="org.eclipse.equinox.security"/> + <plugin id="org.eclipse.equinox.security.linux.x86_64" fragment="true"/> + <plugin id="org.eclipse.equinox.security.macosx" fragment="true"/> + <plugin id="org.eclipse.equinox.security.win32.x86" fragment="true"/> + <plugin id="org.eclipse.equinox.security.win32.x86_64" fragment="true"/> + <plugin id="org.eclipse.equinox.supplement"/> + <plugin id="org.eclipse.equinox.transforms.hook" fragment="true"/> + <plugin id="org.eclipse.equinox.weaving.hook" fragment="true"/> + <plugin id="org.eclipse.gef"/> + <plugin id="org.eclipse.graphiti"/> + <plugin id="org.eclipse.graphiti.mm"/> + <plugin id="org.eclipse.graphiti.pattern"/> + <plugin id="org.eclipse.graphiti.ui"/> + <plugin id="org.eclipse.help"/> + <plugin id="org.eclipse.jdt.compiler.apt" fragment="true"/> + <plugin id="org.eclipse.jdt.compiler.tool" fragment="true"/> + <plugin id="org.eclipse.jdt.core"/> + <plugin id="org.eclipse.jdt.debug"/> + <plugin id="org.eclipse.jdt.launching"/> + <plugin id="org.eclipse.jface"/> + <plugin id="org.eclipse.jface.databinding"/> + <plugin id="org.eclipse.jface.text"/> + <plugin id="org.eclipse.ltk.core.refactoring"/> + <plugin id="org.eclipse.ltk.ui.refactoring"/> + <plugin id="org.eclipse.osgi"/> + <plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/> + <plugin id="org.eclipse.osgi.services"/> + <plugin id="org.eclipse.osgi.util"/> + <plugin id="org.eclipse.pde.ds.lib"/> + <plugin id="org.eclipse.swt"/> + <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.ppc64le" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/> + <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/> + <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/> + <plugin id="org.eclipse.team.core"/> + <plugin id="org.eclipse.team.ui"/> + <plugin id="org.eclipse.text"/> + <plugin id="org.eclipse.ui"/> + <plugin id="org.eclipse.ui.cocoa" fragment="true"/> + <plugin id="org.eclipse.ui.console"/> + <plugin id="org.eclipse.ui.editors"/> + <plugin id="org.eclipse.ui.forms"/> + <plugin id="org.eclipse.ui.genericeditor"/> + <plugin id="org.eclipse.ui.ide"/> + <plugin id="org.eclipse.ui.ide.application"/> + <plugin id="org.eclipse.ui.navigator"/> + <plugin id="org.eclipse.ui.navigator.resources"/> + <plugin id="org.eclipse.ui.views"/> + <plugin id="org.eclipse.ui.views.properties.tabbed"/> + <plugin id="org.eclipse.ui.workbench"/> + <plugin id="org.eclipse.ui.workbench.texteditor"/> + <plugin id="org.eclipse.xsd"/> + <plugin id="org.framed.iorm.editpolicymodel"/> + <plugin id="org.framed.iorm.featuremodel"/> + <plugin id="org.framed.iorm.model"/> + <plugin id="org.framed.iorm.model.edit"/> + <plugin id="org.framed.iorm.transformation"/> + <plugin id="org.framed.iorm.ui"/> + <plugin id="org.rosi.crom.metamodel"/> + <plugin id="org.tukaani.xz"/> + <plugin id="org.w3c.css.sac"/> + <plugin id="org.w3c.dom.events"/> + <plugin id="org.w3c.dom.smil"/> + <plugin id="org.w3c.dom.svg"/> + </plugins> + + <configurations> + <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" /> + <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" /> + <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" /> + <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" /> + <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" /> + <plugin id="org.framed.iorm.ui" autoStart="true" startLevel="3" /> + </configurations> + + <preferencesInfo> + <targetfile overwrite="false"/> + </preferencesInfo> + + <cssInfo> + </cssInfo> + +</product> diff --git a/org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns b/org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns new file mode 100644 index 0000000000000000000000000000000000000000..df8eb63f68ef29aa21e85729dc162e6ae7215052 GIT binary patch literal 3377 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 K7!83D8v+3QN_0H{ literal 0 HcmV?d00001 diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard.ico b/org.framed.iorm.ui/icons/icon_role_model_wizard.ico new file mode 100644 index 0000000000000000000000000000000000000000..93a82140044e913fd6a49ed434c96d69e9457a3e GIT binary patch literal 12862 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 literal 0 HcmV?d00001 diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm b/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm new file mode 100644 index 00000000..9ab15aba --- /dev/null +++ b/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm @@ -0,0 +1,724 @@ +/* XPM */ +static char * icon_role_model_wizard_xpm[] = { +"64 64 657 2", +" c #FFFFFF", +". c #FBFBFB", +"+ c #CEDEDA", +"@ c #C9DBD7", +"# c #D9E4E0", +"$ c #ECF0ED", +"% c #FDFDFD", +"& c #C2D8D6", +"* c #9FD0DC", +"= c #A1D0DB", +"- c #AED2D6", +"; c #BDD6D5", +"> c #CEDDDA", +", c #E1E9E4", +"' c #F3F6F3", +") c #A8D1D7", +"! c #A5D0D8", +"~ c #B3D3D5", +"{ c #D3E1DC", +"] c #EAEFEB", +"^ c #FEFDFE", +"/ c #A1D0DC", +"( c #A7D0D8", +"_ c #C0D7D5", +": c #E1E9E5", +"< c #F4F5F4", +"[ c #AFD2D5", +"} c #E7EDEA", +"| c #E7EDE9", +"1 c #D8E4DF", +"2 c #DDE7E1", +"3 c #A0D0D7", +"4 c #ACB7B0", +"5 c #A1ABA8", +"6 c #9DA8A6", +"7 c #9DA7A5", +"8 c #9FAAA8", +"9 c #A7B0AA", +"0 c #AABEBC", +"a c #A0D0DB", +"b c #D6E2DE", +"c c #FCF9F5", +"d c #F9F1E6", +"e c #FAF4EC", +"f c #D3E0DC", +"g c #AEC3BE", +"h c #BFC5BA", +"i c #DDDCD1", +"j c #E8E2D6", +"k c #EAE2D6", +"l c #E1DED2", +"m c #C4C5B9", +"n c #A9B2AC", +"o c #AAB4AD", +"p c #DFE7E3", +"q c #FFFEFE", +"r c #FAF5ED", +"s c #F5E9D7", +"t c #F0DEC3", +"u c #EBD4B1", +"v c #E9CFA9", +"w c #FBF5ED", +"x c #CADBD7", +"y c #B0C3BC", +"z c #BED7D5", +"A c #F9FBFA", +"B c #FEFFFE", +"C c #BFD7D5", +"D c #AAD1D6", +"E c #A4D0D9", +"F c #F6EBDC", +"G c #F0DDC3", +"H c #EAD1AD", +"I c #F5EADA", +"J c #C0D7D4", +"K c #85BEC8", +"L c #B0C1B8", +"M c #BDD7D6", +"N c #EBF0ED", +"O c #B0D2D6", +"P c #BAD4D5", +"Q c #FEFCFA", +"R c #EEDABC", +"S c #F2E3CD", +"T c #BBCDC6", +"U c #78BFD0", +"V c #91BDC1", +"W c #B0C2BB", +"X c #A6D0D8", +"Y c #FAFBF9", +"Z c #D1DFDB", +"` c #EDF0ED", +" . c #FDFAF6", +".. c #F3E5D0", +"+. c #EAD2AE", +"@. c #E6CBAB", +"#. c #CEC1A8", +"$. c #EFDCC0", +"%. c #B8C6BA", +"&. c #A4BCB5", +"*. c #A9C4C3", +"=. c #9ED0DB", +"-. c #F6ECDE", +";. c #A3ADA7", +">. c #B3C0B6", +",. c #E3EBE8", +"'. c #ACC6C4", +"). c #A3CFD6", +"!. c #A7C7C9", +"~. c #AAD1D7", +"{. c #F3E4CF", +"]. c #ADB3A9", +"^. c #B2B4A8", +"/. c #FDFBF8", +"(. c #AEBEB4", +"_. c #A5BCB5", +":. c #F5F8F7", +"<. c #EBF0EC", +"[. c #B1C1B7", +"}. c #79BFCF", +"|. c #80BECA", +"1. c #A6BDB5", +"2. c #ACC8C6", +"3. c #F1F4F2", +"4. c #F4E8D6", +"5. c #E9CFAA", +"6. c #EFEADE", +"7. c #9DA7A7", +"8. c #CBC0A9", +"9. c #F9F3E9", +"0. c #ABBDB4", +"a. c #B6CCC7", +"b. c #81BECA", +"c. c #98BDBC", +"d. c #B0C1B7", +"e. c #A1D0DA", +"f. c #A2D0DA", +"g. c #E6EDE8", +"h. c #DDE7E2", +"i. c #E9D0AA", +"j. c #F9F1E7", +"k. c #C7C7BB", +"l. c #9DA6A5", +"m. c #C5BDA7", +"n. c #F6EADA", +"o. c #EFF4F0", +"p. c #A9BDB4", +"q. c #A2BCB6", +"r. c #D1DED9", +"s. c #9CBCB8", +"t. c #85BEC7", +"u. c #A8BDB5", +"v. c #A6BAB3", +"w. c #9CB4B2", +"x. c #ABB9B0", +"y. c #DBE5E1", +"z. c #D2E0DC", +"A. c #EFDCC1", +"B. c #F0DEC4", +"C. c #C4C2B5", +"D. c #9DA5A5", +"E. c #A9AFA7", +"F. c #D5C6AA", +"G. c #E7CEAA", +"H. c #F2E4CE", +"I. c #EAEFED", +"J. c #A6BCB5", +"K. c #9DBCB9", +"L. c #B0C0B7", +"M. c #7CBCCB", +"N. c #97ADAF", +"O. c #AEBBB4", +"P. c #C8DBD7", +"Q. c #FCF9F4", +"R. c #F8EFE3", +"S. c #E2E3D9", +"T. c #A5AFA9", +"U. c #A3ABA7", +"V. c #B9B4A1", +"W. c #D4BB9E", +"X. c #D8C2A4", +"Y. c #D8C7A9", +"Z. c #F0DFC5", +"`. c #ECF0EE", +" + c #A5BCB4", +".+ c #81BFCA", +"++ c #7DBFCC", +"@+ c #93BDBE", +"#+ c #ADBDB4", +"$+ c #AEC4BE", +"%+ c #DAC7A9", +"&+ c #DAC3A5", +"*+ c #DAC2A4", +"=+ c #D8C2A5", +"-+ c #D9C1A3", +";+ c #D9C0A2", +">+ c #DBBF9E", +",+ c #DEBD9A", +"'+ c #E0BB96", +")+ c #E5B991", +"!+ c #DFBC99", +"~+ c #DECBAC", +"{+ c #F6EBDB", +"]+ c #FFFFFE", +"^+ c #FEFEFD", +"/+ c #E5E2D6", +"(+ c #B5B8AD", +"_+ c #A2ADA7", +":+ c #9CA6A5", +"<+ c #9EA7A6", +"[+ c #E7B68E", +"}+ c #E1D1B7", +"|+ c #F8F9F6", +"1+ c #A6B6AF", +"2+ c #A6BDB4", +"3+ c #ADC6C3", +"4+ c #F1F5F2", +"5+ c #F0DFC7", +"6+ c #E9B88D", +"7+ c #EBB78A", +"8+ c #CBB397", +"9+ c #A6ACA6", +"0+ c #A4ABA6", +"a+ c #B6B09F", +"b+ c #DABF9F", +"c+ c #DECDB3", +"d+ c #F2E4D0", +"e+ c #F4E7D3", +"f+ c #EAD9BE", +"g+ c #DBC9AD", +"h+ c #E1BB96", +"i+ c #D9C6AA", +"j+ c #EEEEEE", +"k+ c #A6B1AB", +"l+ c #78BFCF", +"m+ c #7CBFCD", +"n+ c #AFBEB4", +"o+ c #7EBECC", +"p+ c #98BCBB", +"q+ c #AEC5BF", +"r+ c #ADD1D5", +"s+ c #E5D6BC", +"t+ c #E8B789", +"u+ c #CBB79E", +"v+ c #BCB9A7", +"w+ c #9FA9A7", +"x+ c #AAAEA4", +"y+ c #E9B78B", +"z+ c #E6B98F", +"A+ c #EAB88B", +"B+ c #D8C2A3", +"C+ c #DFDFDF", +"D+ c #ACB1A6", +"E+ c #84B6C2", +"F+ c #A4CFD6", +"G+ c #ADBEB4", +"H+ c #C8DAD6", +"I+ c #DDD1B8", +"J+ c #E1BA95", +"K+ c #DBC7AC", +"L+ c #9EA9A7", +"M+ c #D9B391", +"N+ c #EBB789", +"O+ c #ECB788", +"P+ c #EDB687", +"Q+ c #EEB585", +"R+ c #EFB583", +"S+ c #EFB482", +"T+ c #F0B481", +"U+ c #F1B480", +"V+ c #F2B37F", +"W+ c #FEFDFB", +"X+ c #7D7C77", +"Y+ c #97AAAD", +"Z+ c #9AA8A5", +"`+ c #B3BEB5", +" @ c #ADBEB3", +".@ c #EEF2F0", +"+@ c #CCC5B2", +"@@ c #EEB584", +"#@ c #EFB582", +"$@ c #EAB78A", +"%@ c #C6B89F", +"&@ c #D0B495", +"*@ c #F2B37E", +"=@ c #F3B27C", +"-@ c #E1BC98", +";@ c #FDFBF9", +">@ c #4F4F50", +",@ c #A7AEA7", +"'@ c #86B5BF", +")@ c #7EBBC9", +"!@ c #8BB1B9", +"~@ c #9DAFAD", +"{@ c #C7D7D0", +"]@ c #D7DEDB", +"^@ c #9ABCBB", +"/@ c #7DBECC", +"(@ c #C0CFC7", +"_@ c #C0C0B3", +":@ c #F0B380", +"<@ c #F1B380", +"[@ c #DCC09E", +"}@ c #FEFDFC", +"|@ c #737470", +"1@ c #9BA8A8", +"2@ c #7DBCCB", +"3@ c #A7B7AF", +"4@ c #A0D0DA", +"5@ c #B9C9C0", +"6@ c #9EBCB9", +"7@ c #B0BEB4", +"8@ c #F4F5F5", +"9@ c #E8DFCF", +"0@ c #ABADA3", +"a@ c #F3B27D", +"b@ c #F2B27F", +"c@ c #ECB383", +"d@ c #E7B485", +"e@ c #F2B37D", +"f@ c #DDCEB4", +"g@ c #C2C6BB", +"h@ c #98A8A9", +"i@ c #7ABECE", +"j@ c #7ABFCF", +"k@ c #7EBECB", +"l@ c #9DBCB8", +"m@ c #E0E7E2", +"n@ c #FEFCF9", +"o@ c #A2ABA8", +"p@ c #EAB483", +"q@ c #CCB497", +"r@ c #9EA9A6", +"s@ c #9DA4A3", +"t@ c #9EA8A6", +"u@ c #E2B387", +"v@ c #E9B78A", +"w@ c #F7EDE2", +"x@ c #F0F0F0", +"y@ c #B7BDB1", +"z@ c #97A8AB", +"A@ c #7BBDCB", +"B@ c #95BCBD", +"C@ c #CFDBD4", +"D@ c #BABDAF", +"E@ c #ACADA3", +"F@ c #F2B27D", +"G@ c #D9C3A3", +"H@ c #B4B6A8", +"I@ c #A3ACA6", +"J@ c #F3B37C", +"K@ c #F1F1F1", +"L@ c #BCC1B5", +"M@ c #9AA8A8", +"N@ c #82B7C4", +"O@ c #97BCBC", +"P@ c #D6DAD3", +"Q@ c #FBF8F5", +"R@ c #C9B196", +"S@ c #E1BA94", +"T@ c #A5ACA7", +"U@ c #E9B285", +"V@ c #F2F2F2", +"W@ c #D2D4CC", +"X@ c #9DAAA9", +"Y@ c #92ABB0", +"Z@ c #80B9C6", +"`@ c #79BFD0", +" # c #83B7C3", +".# c #A7B6AF", +"+# c #D2D5CE", +"@# c #D5D7CD", +"## c #9CA7A6", +"$# c #D0B192", +"%# c #F2B27C", +"&# c #E4B48A", +"*# c #ECB382", +"=# c #E7B88D", +"-# c #F0E3D0", +";# c #F3F3F3", +"># c #FAF9F7", +",# c #BBBDB2", +"'# c #8CB0B7", +")# c #82B7C3", +"!# c #7FB9C7", +"~# c #7DBBC9", +"{# c #91B0B4", +"]# c #A2B0AB", +"^# c #B4B7AA", +"/# c #595757", +"(# c #959596", +"_# c #CBCCC3", +":# c #C3B098", +"<# c #E7B98E", +"[# c #E4D7BF", +"}# c #D6D6CC", +"|# c #AFB5AB", +"1# c #A4ACA8", +"2# c #A0AAA7", +"3# c #9FAAA7", +"4# c #A0ACA9", +"5# c #A7AEA8", +"6# c #B6BBB1", +"7# c #DFE0D8", +"8# c #CBCBCC", +"9# c #656566", +"0# c #DCD8CB", +"a# c #A0ABA7", +"b# c #A5ACA5", +"c# c #DDB289", +"d# c #E4B287", +"e# c #C8B69E", +"f# c #E4DBC4", +"g# c #F4F4F4", +"h# c #F9F9F9", +"i# c #505051", +"j# c #EEEEEF", +"k# c #FAF6F1", +"l# c #BBBCAE", +"m# c #B4AF9F", +"n# c #BAB19C", +"o# c #BAB09C", +"p# c #B5AF9E", +"q# c #AEAEA2", +"r# c #A8AFA7", +"s# c #B6B7AA", +"t# c #F7F0E7", +"u# c #FDFAF7", +"v# c #F1E1C9", +"w# c #F1E0C7", +"x# c #F5E9D8", +"y# c #F5F5F5", +"z# c #606061", +"A# c #D7D7D7", +"B# c #FAF7F2", +"C# c #CACABD", +"D# c #ACB3AA", +"E# c #A3ACA8", +"F# c #A2ADA8", +"G# c #A4ADA8", +"H# c #B2B6AB", +"I# c #D5D0C0", +"J# c #FBF6EE", +"K# c #F5E8D7", +"L# c #E4CFA6", +"M# c #DBC8AA", +"N# c #FCF8F2", +"O# c #727272", +"P# c #D1D1D1", +"Q# c #F0DFC6", +"R# c #A4AEA8", +"S# c #9EA2A1", +"T# c #C9C1A9", +"U# c #FAF4EB", +"V# c #666667", +"W# c #CFCFCF", +"X# c #ECE0CA", +"Y# c #C1BBA9", +"Z# c #F7EFE2", +"`# c #B6BAAE", +" $ c #B8B8A7", +".$ c #ECD5B4", +"+$ c #FEFEFE", +"@$ c #575758", +"#$ c #E5E5E6", +"$$ c #FBF5EE", +"%$ c #9FA2A0", +"&$ c #B9B7A8", +"*$ c #EBD3B0", +"=$ c #DADADB", +"-$ c #555555", +";$ c #C6C1AF", +">$ c #A0A1A0", +",$ c #A0A19F", +"'$ c #B1B3A6", +")$ c #E7CEA8", +"!$ c #B8AB98", +"~$ c #E6CDA9", +"{$ c #FBF6EF", +"]$ c #A7A7A8", +"^$ c #7A7A7B", +"/$ c #C9C9C9", +"($ c #717172", +"_$ c #A6ADA7", +":$ c #9FA19F", +"<$ c #E7CFA8", +"[$ c #C4BDA8", +"}$ c #A7AFA8", +"|$ c #A8AFA8", +"1$ c #BEBBA8", +"2$ c #EEDBBE", +"3$ c #F8F8F8", +"4$ c #626263", +"5$ c #B4B4B4", +"6$ c #838384", +"7$ c #615E5B", +"8$ c #A4ACA7", +"9$ c #E3CBAA", +"0$ c #ABB1A8", +"a$ c #9FABA8", +"b$ c #E4CFA8", +"c$ c #F8F0E5", +"d$ c #AAAAAB", +"e$ c #5B5B5C", +"f$ c #F7F7F7", +"g$ c #E9E9E9", +"h$ c #686869", +"i$ c #525253", +"j$ c #A9A5A0", +"k$ c #ABB1AA", +"l$ c #9EA3A3", +"m$ c #A1ABA7", +"n$ c #E8CEA8", +"o$ c #B6B0A7", +"p$ c #565657", +"q$ c #8D8C82", +"r$ c #9EAAA7", +"s$ c #A7AEA9", +"t$ c #EDD7B8", +"u$ c #D9D9D9", +"v$ c #B4B4B5", +"w$ c #636364", +"x$ c #5D5D5E", +"y$ c #D6D6D6", +"z$ c #C0BCAE", +"A$ c #AEB2A7", +"B$ c #F7EDDF", +"C$ c #DDDDDD", +"D$ c #99958A", +"E$ c #A5AEA8", +"F$ c #F7EEE1", +"G$ c #EFEFEF", +"H$ c #EAEAEA", +"I$ c #E6E6E6", +"J$ c #B2B6AC", +"K$ c #9FA2A1", +"L$ c #EBD9BF", +"M$ c #9EA3A2", +"N$ c #C5BDA9", +"O$ c #EDECEB", +"P$ c #686868", +"Q$ c #A59681", +"R$ c #EFDBBF", +"S$ c #D2D2D2", +"T$ c #5E5E5F", +"U$ c #BABABA", +"V$ c #EAE9DF", +"W$ c #9DA4A4", +"X$ c #A3AEA7", +"Y$ c #ACB2A8", +"Z$ c #9EA2A2", +"`$ c #ACB0A7", +" % c #DAC8AB", +".% c #E9D0AC", +"+% c #E4CEA7", +"@% c #BDBAA8", +"#% c #A5ADA8", +"$% c #CDC5AF", +"%% c #EBEBEB", +"&% c #9A9A9A", +"*% c #646465", +"=% c #FCFCFC", +"-% c #616162", +";% c #ABABAC", +">% c #BBBEB3", +",% c #9FA1A0", +"'% c #9EA3A1", +")% c #ADAD9F", +"!% c #F7F5F2", +"~% c #D4D4D4", +"{% c #E8E8E8", +"]% c #E5E5E5", +"^% c #DCDCDC", +"/% c #DADADA", +"(% c #BDBDBD", +"_% c #8C8C8C", +":% c #535354", +"<% c #848485", +"[% c #C8C8C9", +"}% c #5F5F60", +"|% c #FFFEFD", +"1% c #B3B8AD", +"2% c #9EA4A3", +"3% c #CFCFC5", +"4% c #6B6A69", +"5% c #676768", +"6% c #C1C1C1", +"7% c #939394", +"8% c #9B9B9B", +"9% c #C8C7BA", +"0% c #E7E7DD", +"a% c #A6A6A6", +"b% c #8A8A8A", +"c% c #69696A", +"d% c #C0C0C1", +"e% c #6E6E6F", +"f% c #C4C4C5", +"g% c #E6E1D8", +"h% c #C8C7B8", +"i% c #D0CFC0", +"j% c #E9E7E0", +"k% c #D3D3D3", +"l% c #79797A", +"m% c #CCCCCC", +"n% c #B8B8B8", +"o% c #515152", +"p% c #E1E1E1", +"q% c #8B8B8C", +"r% c #59595A", +"s% c #DEDEDE", +"t% c #545455", +"u% c #8E8E8F", +"v% c #6B6B6B", +"w% c #CFCFD0", +"x% c #BFBFBF", +"y% c #D0D0D0", +"z% c #8A8A8B", +"A% c #ADADAD", +"B% c #B7B7B7", +"C% c #7C7C7D", +"D% c #818181", +"E% c #696969", +"F% c #F9F9FA", +"G% c #7B7B7C", +"H% c #ACACAD", +"I% c #555556", +"J% c #E7E7E7", +"K% c #ABABAB", +"L% c #CDCDCD", +"M% c #EDEDED", +"N% c #B0B0B0", +"O% c #F6F6F6", +"P% c #6F6F70", +"Q% c #9A9A9B", +"R% c #585859", +"S% c #787878", +"T% c #767676", +"U% c #868687", +"V% c #878788", +"W% c #E3E3E4", +"X% c #B7B7B8", +"Y% c #DCDCDD", +"Z% c #858586", +"`% c #909091", +" & c #D1D1D2", +".& c #A7A7A7", +"+& c #ECECEC", +"@& c #6A6A6B", +"#& c #C6C6C7", +"$& c #5C5C5D", +"%& c #6D6D6E", +"&& c #7E7E7F", +"*& c #CBCBCB", +"=& c #C6C6C6", +"-& c #979798", +";& c #E4E4E4", +">& c #9D9D9E", +" ", +" . + @ # $ % ", +" & * * * * = - ; > , ' ", +" ) * * * * * * * * * * ! ~ & { ] ", +" ^ / * * * * * * * * * * * * * * * ( _ : ", +" < * * * * * * * * * * * * * * * * * * * [ } ", +" | * * * * * * * * * * * * * * * * * * * * = 1 ", +" 2 * * * * * * * 3 4 5 6 7 7 8 9 0 * * * * * a b c d e ", +" f * * * * * * * g h i j k l m n 5 o * * * * * / p q r s t u v v v w ", +" x y * * * * * z A B p C D * * * * * * * * * E ' c F G H v v v v v v v I ", +" J K L * * * M N O * * * * * * * * * * * * * P Q F R v v v v v v v v v v v S ", +" T U U V W X Y Z = * * * * * * * * * * * * * * * ` ...+.v v @.#.v v v v v v v v v $. ", +" %.U U U &.@ + * * * * * * * * * * * * * *.=.* * & -.H v v v v v ;.v v v v v v v v v u ", +" >.U U U &.,. f '.).* * * * * * * * * * * * !.* * * ~. {.v v v v v v H ].^.v v v v v v v v v /. ", +" (.U U U _.:.<.[.}.|.1.2.* * * * * * * * * X ) * * * * 3. 4.v v v v v v v 5.6.7.8.v v v v v v v v 9. ", +" Y 0.U U U &.B a.b.U U U }.c.d.e.* * * * * f.g.) * * * * h. w i.v v v v v v v v j.k.l.m.v v v v v v v n. ", +" o.p.U U U q.r.s.U U U U U U U t.&.u.v.w.x.p y.* * * * * z. A.v v v v v v v v v B. C.D.E.F.G.v v v v H. ", +" I.J.U U U K.L.U U U U U U U U U U M.N.O.z P.= * * * * * f Q.v v v v v v v v v v v R. S.T.l.U.V.W.X.Y.Z. ", +" `. +U U U .+++U U U U U U U U U U U @+#+$+=.* * * * * * p n.%+&+*+=+-+;+>+,+'+)+!+~+{+]+^+/+(+_+:+<+[+}+ ", +" |+1+U U U U U U U U U U U U M.}.U U U U U K 2+3+* * * * 4+5+6+7+8+9+0+a+7+7+7+7+7+7+b+c+d+s e+f+g+h+7+i+ ", +" j+k+l+U U U U U U U U U U m+n+o+U U U U U U U U p+q+* r+ s+7+7+t+u+v+w+x+7+7+7+7+7+7+7+y+z+z+A+7+7+7+B+ ", +" C+D+E+U U U U U U U U U U #+F+|.U U U U U U U U U }.G+H+ I+7+7+7+7+J+K+L+M+7+7+N+O+P+P+Q+Q+R+S+T+U+V+!+W+ ", +" C+X+Y+U U U U U U U U U c.Z+`+U U U U U U U U U U U @.@ +@7+@@T+#@R+$@%@&@*@=@=@=@=@=@=@=@=@=@=@=@=@-@;@ ", +" C+>@,@'@U U U U U )@!@~@{@]@^@U U U U U U U U U U /@(@ _@M+=@=@=@=@=@:@<@=@=@=@=@=@=@=@=@=@=@=@=@=@[@}@ ", +" C+>@|@1@2@U U U U '@3@4@5@6@U U U U U U U U U U U 7@8@ 9@0@a@=@=@=@=@=@=@=@=@b@c@d@b@=@=@=@=@=@=@e@f@ ", +" C+>@>@g@h@i@U U U U j@k@U U U U U U U U U U U U l@m@ n@o@p@=@=@=@=@=@=@=@a@q@r@s@t@u@=@=@=@=@=@v@w@ ", +" C+>@>@x@y@z@A@U U U U U U U U U U U U U U U U B@C@ D@E@=@=@=@=@=@=@=@=@F@@@G@H@I@J@=@=@=@*@c+ ", +" C+>@>@K@ L@M@N@U U U U U U U U U U U U U U O@P@ Q@w+R@=@=@=@=@=@=@=@=@=@F@S@T@U@=@=@a@,+r ", +" C+>@>@V@ W@X@Y@Z@U U U U U U U U U `@ #.#+# @###$#=@=@=@=@=@=@=@=@=@%#&#*#=@%#=#-# ", +" C+>@>@;# >#,#t@h@'#)#!#~#~#!#'@{#]#^#/#(# _###:#F@=@=@=@=@=@=@=@=@=@=@*@<#[#q ", +" C+>@>@;# ;@}#|#1#2#3#4#5#6#7#}@8#>@9# 0#a#b#c#a@=@=@=@=@=@=@F@d#e#f#q ", +" C+>@>@g# h#i#>@j# k#l#L+t@0@m#n#o#p#q#r#s#t# u#{+v#w#x#c ", +" C+>@>@y# z#>@A# B#C#D#E#F#G#H#I#J# K#H v L#M#v 5.B.N# ", +" C+>@>@y# O#>@P# q Q#v v v R#S#T#v v H U# ", +" C+>@>@y# V#>@W# X#Y#v v v Z#`# $v v v .$Q ", +" C+>@>@g# +$@$>@#$ $$G#%$&$v *$ H.v v v v v S ", +" C+>@>@;# =$>@-$+$ +$;$>$,$%$'$)$!$~$v v v v v i.{$ ", +" C+>@>@;# ]$>@^$ +$/$($_$,$,$,$:$E.<$v v [$}$|$1$v 2$ ", +" C+>@>@V@ 3$4$>@5$ ;#6$>@7$L+,$,$,$,$,$8$9$@.r#0$}$D.a$b$c$ ", +" C+>@>@K@ d$>@e$f$ g$h$>@i$j$6 ,$,$s@k$l$,$m$n$o$p$>@q$r$s$t$q ", +" C+>@>@x@ u$-$>@v$ j+w$>@x$y$^+8 ,$,$z$ R#,$,$A$B$C$4$>@D$E$v F$ ", +" C+>@>@G$ H$z#>@^$+$ +$^$>@4$I$ J$,$K$L$U#E#,$,$M$N$x#O$P$Q$v v R$ ", +" C+>@>@j# S$T$>@w$j+ U$>@-$C+ V$W$,$X$Y$%$,$,$,$Z$`$ %.%+%@%#%$% ", +" C+>@>@j+ %%&%i$>@*%I$ =%-%>@;% >%:$,$,$,$,$,$,$,$,$,%'%K$5 )%!% ", +" C+>@>@~%{%{%{%{%{%]%^%/%(%_%:%>@>@<%V@ [%>@}%3$ |%1%K$,$,$,$,$,$,$,$2%E$3%4%>@(% ", +" C+>@>@>@>@>@>@>@>@>@>@>@>@>@>@5%6% 7%>@8% q 9%2#%$,$,$M$3#H#0%]+ a%>@b% ", +" C+>@>@>@>@>@>@>@>@>@>@>@>@c%d%% e%>@f% }@g%h%i%j%W+ k%>@c% ", +" C+>@>@V@;#;#V@{%{%{%P#z#>@l%+$ e$>@=$ H$>@e$ ", +" C+>@>@ m%>@>@n% o%>@p% G$>@i$ ", +" C+>@i# q%>@r%j+ r%>@s% H$>@t% ", +" C+>@i$ K@x$>@u% v%>@w% u$>@4$ ", +" C+>@:% x%>@>@y% z%>@A% B%>@C% ", +" C+>@t% D%>@E%F% v$>@($ G%>@H% ", +" C+>@I% J%p$>@K% K@:%>@L% y$>@i$M% ", +" C+>@@$ N%>@I%I$ &%>@c%O% f$P%>@Q% ", +" C+>@R% +$S%>@T%+$ y#w$>@U%=% +$V%>@*%O% ", +" C+>@r% W%-$>@X% Y%@$>@Z%O% 3$`%>@:% & ", +" C+>@e$ .&>@r%+& 8#I%>@@&~% p%e%>@i$#& ", +" C+>@$& . %&>@6$ /%z#>@i#&&x%x@ M%*&U%i#>@e$=& ", +" C+>@x$ u$o%>@#& ;#`%i#>@>@i#e$e$p$>@>@>@>@V%j+ ", +" C+>@}% -&>@w$O% ;&>&%&i#>@>@>@i$h$-&^% ", +" f$ &C+ 3$^%^%f$ ;#{%{%+&% ", +" ", +" "}; diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard_16.png b/org.framed.iorm.ui/icons/icon_role_model_wizard_16.png new file mode 100644 index 0000000000000000000000000000000000000000..0245931a5954cc15cdd7dad2ff38a2c98bd105fe GIT binary patch literal 2703 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 literal 0 HcmV?d00001 diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard_32.png b/org.framed.iorm.ui/icons/icon_role_model_wizard_32.png new file mode 100644 index 0000000000000000000000000000000000000000..49ff5fa1a2ecae3d4fc5f52e55a8a875b77c8d15 GIT binary patch literal 8942 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 literal 0 HcmV?d00001 diff --git a/org.framed.iorm.ui/icons/splash.png b/org.framed.iorm.ui/icons/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..99e2a35c8befac296959c23f37213ad5c9674c31 GIT binary patch literal 5347 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 literal 0 HcmV?d00001 diff --git a/org.framed.iorm.ui/plugin.xml b/org.framed.iorm.ui/plugin.xml index 1bdcc103..f205d058 100644 --- a/org.framed.iorm.ui/plugin.xml +++ b/org.framed.iorm.ui/plugin.xml @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> <plugin> - <extension point="org.eclipse.graphiti.ui.diagramTypes"> + <extension + point="org.eclipse.graphiti.ui.diagramTypes"> <diagramType description="This is a Compartment Role Object Model Diagram." id="CROM_Diagram" @@ -47,7 +48,7 @@ <wizard category="org.framed.iorm.ui.wizard_category" class="org.framed.iorm.ui.wizards.RoleModelWizard" - icon="icons/icon_role_model_wizard.png" + icon="icons/icon_role_model_wizard_16.png" id="org.framed.iorm.ui.model_wizard" name="Compartment Role Object Model"> </wizard> @@ -67,4 +68,52 @@ id="org.framed.iorm.ui.imageProvider"> </imageProvider> </extension> + <extension + id="framed" + point="org.eclipse.core.runtime.products"> + <product + application="org.eclipse.ui.ide.workbench" + name="FRaMED Editor"> + <property + name="appName" + value="FRaMED Editor"> + </property> + <property + name="aboutImage" + value="icons/splash.png"> + </property> + <property + name="aboutText" + value="The Full-fledged Role Modeling EDitor Software Product Line (FRaMED SPL) (Version 2.0) is the reimplementation of FRaMED allowing the graphical specification of Role-based Software Systems by means of compartments (aka. contexts), objects, roles, and relationships. Moreover, it supports a varity of constraints upon roles and relationships.

Contributors:
Kevin Ivo Kassin
Christian Deussen
Thomas Kühn"> + </property> + <property + name="startupForegroundColor" + value="000000"> + </property> + <property + name="startupMessageRect" + value="7,252,445,20"> + </property> + <property + name="startupProgressRect" + value="5,275,445,15"> + </property> + <property + name="preferenceCustomization" + value="plugin_customization.ini"> + </property> + </product> + </extension> + <extension + point="org.eclipse.ui.perspectiveExtensions"> + <perspectiveExtension + targetID="*"> + <newWizardShortcut + id="org.framed.iorm.ui.project_wizard"> + </newWizardShortcut> + <newWizardShortcut + id="org.framed.iorm.ui.model_wizard"> + </newWizardShortcut> + </perspectiveExtension> + </extension> </plugin> diff --git a/org.framed.iorm.ui/plugin_customization.ini b/org.framed.iorm.ui/plugin_customization.ini new file mode 100644 index 00000000..333fab9d --- /dev/null +++ b/org.framed.iorm.ui/plugin_customization.ini @@ -0,0 +1 @@ +org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP = true diff --git a/org.framed.iorm.ui/splash.bmp b/org.framed.iorm.ui/splash.bmp new file mode 100644 index 0000000000000000000000000000000000000000..655f3448567562f6275ec8f4ffbff847f9605d21 GIT binary patch literal 495122 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 JLtrF^008O-KD+<` literal 0 HcmV?d00001 diff --git a/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java b/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java index 796dd92d..3ba054aa 100644 --- a/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java +++ b/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java @@ -194,7 +194,7 @@ public class FRaMEDFeatureEditor extends EditorPart { private IFeatureModel readFeatureModel() { File featureModelFile = null; try { - featureModelFile = new File(resolveURL(FileLocator.resolve(URL_TO_FEATUREMODEL))); + featureModelFile = new File(resolveURL(FileLocator.toFileURL(URL_TO_FEATUREMODEL))); } catch (URISyntaxException | IOException e) { e.printStackTrace(); } -- GitLab