Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStéphane Bégaudeau2016-04-21 09:04:38 +0000
committerStéphane Bégaudeau2016-04-28 13:34:21 +0000
commit73797362ca3ca073156f6de1113a8113abf39129 (patch)
treee13c016e2df6637ebbca068c9a2aecaad27aa504 /plugins
parentd405a1d16c71226d7ad47663f93d1f1e37351977 (diff)
downloadorg.eclipse.eef-73797362ca3ca073156f6de1113a8113abf39129.tar.gz
org.eclipse.eef-73797362ca3ca073156f6de1113a8113abf39129.tar.xz
org.eclipse.eef-73797362ca3ca073156f6de1113a8113abf39129.zip
Improve the APIs
1) Improve the documentation of two extension points (Lifecycle Manager Provider and Tab Descriptor Provider) 2) Remove two useless extension points along with their code (View Description Provider and Interpreter Provider) 3) Move some interfaces related to Lifecycle Managers in order to have all APIs for the Lifecycle Managers (2 abstract classes and 2 interfaces) in the same package. 4) Move the two classes of o.e.eef.properties.ui.legacy in an internal package since they are only used in this bundle (I18N & Messages) 5) Update the behavior of the Lifecycle Manager Provider extension point to let contibutors replace existing Lifecycle Managers Change-Id: I76aa69e0650cbc6d34e56baaadbc33bdacbcb957 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/InputDescriptor.java6
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFCheckboxController.java2
-rw-r--r--plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF1
-rw-r--r--plugins/org.eclipse.eef.ide.ui/schema/eefLifecycleManagerProvider.exsd100
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/IEEFLifecycleManagerProvider.java41
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFLifecycleManager.java11
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFWidgetLifecycleManager.java4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManager.java (renamed from plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/ILifecycleManager.java)4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManagerProvider.java52
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/EEFIdeUiPlugin.java45
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFCheckboxLifecycleManager.java4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java24
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFControlSwitch.java155
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFGroupLifecycleManager.java25
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFHyperlinkLifecycleManager.java4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFLabelLifecycleManager.java6
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFRadioLifecycleManager.java4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java2
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSectionLifecycleManager.java14
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSelectLifecycleManager.java4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java4
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/RadioGroup.java14
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/styles/EEFColor.java6
-rw-r--r--plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF1
-rw-r--r--plugins/org.eclipse.eef.ide/build.properties3
-rw-r--r--plugins/org.eclipse.eef.ide/plugin.properties5
-rw-r--r--plugins/org.eclipse.eef.ide/plugin.xml7
-rw-r--r--plugins/org.eclipse.eef.ide/schema/eefViewDescriptionProvider.exsd123
-rw-r--r--plugins/org.eclipse.eef.ide/schema/interpreterProvider.exsd123
-rw-r--r--plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java79
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/META-INF/MANIFEST.MF5
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/I18N.java (renamed from plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/I18N.java)2
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/Messages.java (renamed from plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/Messages.java)5
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/eef2legacy/LegacyTabbedPropertySheetPage.java50
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyContributorRegistryEventListener.java2
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertySectionsRegistryEventListener.java2
-rw-r--r--plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyTabsRegistryEventListener.java2
-rw-r--r--plugins/org.eclipse.eef.properties.ui/schema/eefTabDescriptorProvider.exsd123
-rw-r--r--plugins/org.eclipse.eef/.classpath1
-rw-r--r--plugins/org.eclipse.eef/META-INF/MANIFEST.MF1
-rw-r--r--plugins/org.eclipse.eef/build.properties5
-rw-r--r--plugins/org.eclipse.eef/src/org/eclipse/eef/api/IEEFViewDescriptionProvider.java27
42 files changed, 464 insertions, 634 deletions
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/InputDescriptor.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/InputDescriptor.java
index 11c4460cc..a70a25c4b 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/InputDescriptor.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/InputDescriptor.java
@@ -13,7 +13,11 @@ package org.eclipse.eef.core.api;
import org.eclipse.emf.ecore.EObject;
/**
- * .
+ * This interface is used to describe the input of the EEF view. This input can be represented by two values (which can
+ * be identical), the original selection which can be a piece of text, a GMF mapping, a SWT widget, etc and the EMF
+ * semantic element which is represented by this selection. For example, we could consider a piece of text coming from a
+ * Xtext-based editor as the original selection (it could even be the ISelection object directly) and the semantic
+ * element could thus be the EMF object created by the Xtext parser for the selected piece of text.
*
* @author pcdavid
*/
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFCheckboxController.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFCheckboxController.java
index 9f3f8d031..d161566a8 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFCheckboxController.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFCheckboxController.java
@@ -76,7 +76,7 @@ public class EEFCheckboxController extends AbstractEEFWidgetController implement
Map<String, Object> variables = new HashMap<String, Object>();
variables.putAll(EEFCheckboxController.this.variableManager.getVariables());
- variables.put(EEFExpressionUtils.EEFCheckbox.NEW_VALUE, checkbox);
+ variables.put(EEFExpressionUtils.EEFCheckbox.NEW_VALUE, Boolean.valueOf(checkbox));
new Eval(EEFCheckboxController.this.interpreter, variables).call(eAttribute, editExpression);
}
diff --git a/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF
index 2d0b439dd..75b74b86b 100644
--- a/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF
@@ -7,7 +7,6 @@ Bundle-Vendor: %providerName
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.google.common.base;version="15.0.0",
org.eclipse.eef;version="[1.6.0,2.0.0)",
- org.eclipse.eef.api;version="[1.6.0,2.0.0)",
org.eclipse.eef.core.api;version="[1.6.0,2.0.0)",
org.eclipse.eef.core.api.controllers;version="[1.6.0,2.0.0)",
org.eclipse.eef.core.api.utils;version="[1.6.0,2.0.0)",
diff --git a/plugins/org.eclipse.eef.ide.ui/schema/eefLifecycleManagerProvider.exsd b/plugins/org.eclipse.eef.ide.ui/schema/eefLifecycleManagerProvider.exsd
index 1f2596c7f..fd984b45e 100644
--- a/plugins/org.eclipse.eef.ide.ui/schema/eefLifecycleManagerProvider.exsd
+++ b/plugins/org.eclipse.eef.ide.ui/schema/eefLifecycleManagerProvider.exsd
@@ -6,7 +6,7 @@
<meta.schema plugin="org.eclipse.eef.ide.ui" id="eefLifecycleManagerProvider" name="EEF Lifecycle Manager Provider"/>
</appinfo>
<documentation>
- Provides an EEF lifecycle manager which can be used by custom widgets.
+ This extension point allows the contribution of an &lt;code&gt;org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManagerProvider&lt;/code&gt; which can be used to create an instance of &lt;code&gt;org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager&lt;/code&gt; for the description of some controls. With this mechanism, you can not only provide the compulsory lifecycle manager of a custom widget but you can also replace the default lifecycle manager of any widget or container which gives you the ability to change the behavior and appearance of each part of the user interface (excluding groups and pages).
</documentation>
</annotation>
@@ -52,31 +52,31 @@
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
-
+ The identifier of the contribution.
</documentation>
</annotation>
</attribute>
<attribute name="label" type="string" use="required">
<annotation>
<documentation>
-
+ The label of the provider, this information may be used in the user interface and as such it may be visible by the end user. It should be internationalized if possible.
</documentation>
</annotation>
</attribute>
<attribute name="description" type="string" use="required">
<annotation>
<documentation>
-
+ The description of the provider, this information may be used in the user interface and as such it may be visible by the end user. It should be internationalized if possible.
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
-
+ The implementation of the IEEFLifecycleManagerProvider.
</documentation>
<appinfo>
- <meta.attribute kind="java" basedOn=":org.eclipse.eef.ide.ui.api.IEEFLifecycleManagerProvider"/>
+ <meta.attribute kind="java" basedOn=":org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManagerProvider"/>
</appinfo>
</annotation>
</attribute>
@@ -88,7 +88,7 @@
<meta.section type="since"/>
</appinfo>
<documentation>
- 1.6.0
+ This extension point has been available since Eclipse EEF 1.6.0 (Eclipse Neon release in June 2016).
</documentation>
</annotation>
@@ -97,7 +97,67 @@
<meta.section type="examples"/>
</appinfo>
<documentation>
- [Enter extension point usage example here.]
+ &lt;pre&gt;
+&lt;extension
+ point=&quot;org.eclipse.eef.ide.ui.eefLifecycleManagerProvider&quot;&gt;
+ &lt;descriptor
+ class=&quot;org.eclipse.eef.sample.internal.extensions.SampleLifecycleManagerProvider&quot;
+ description=&quot;Provides EEF Lifecycle Managers&quot;
+ id=&quot;org.eclipse.eef.sample.eefLifecycleManagerProvider&quot;
+ label=&quot;EEF Sample Lifecycle Manager Provider&quot;&gt;
+ &lt;/descriptor&gt;
+&lt;/extension&gt;
+&lt;/pre&gt;
+Example of IEEFLifecycleManagerProvider contribution. In this example, we are providing a contribution to provider an IEEFLifecycleManager for a custom widget description. Once EEF has retrieved the description of the user interface to create, it will navigate in this description in order to build the necessary widgets and containers. For each description of containers or widgets found, it will ask the IEEFLifecycleManagerProviders registered if they can handle the description. The first lifecycle manager provider which can handle the given description will thus be used to create the lifecycle manager for this description using the whole available context. The lifecycle manager returned will have the following responsibilities:
+&lt;ul&gt;
+ &lt;li&gt;Creation of the SWT widgets for the description - IEEFLifecycleManager#createControls(...)&lt;/li&gt;
+ &lt;li&gt;Registration of the listeners between the widgets - IEEFLifecycleManager#aboutToBeShown(...)&lt;/li&gt;
+ &lt;li&gt;Refresh of the widgets - IEEFLifecycleManager#refresh(...)&lt;/li&gt;
+ &lt;li&gt;Unregistration of the listeners - IEEFLifecycleManager#aboutToBeDisposed(...)&lt;/li&gt;
+ &lt;li&gt;Removal of all additional resources - IEEFLifecycleManager#dispose(...)&lt;/li&gt;
+&lt;/ul&gt;
+In order to perform those duties, the architecture of EEF encourages the creator of an IEEFLifecycleManager to separate the user interface-related behavior from the business behavior by using a controller to handle the business part. The controller should implement &lt;code&gt;org.eclipse.eef.core.api.controllers.IEEFController&lt;/code&gt; in order to perform basic task in a similar fashion as other controllers. There are several abstract classes available in order to build a new controller quite easily:
+&lt;ul&gt;
+ &lt;li&gt;&lt;code&gt;org.eclipse.eef.core.api.controllers.AbstractEEFController&lt;/code&gt;&lt;/li&gt;
+ &lt;li&gt;&lt;code&gt;org.eclipse.eef.core.api.controllers.AbstractEEFWidgetController&lt;/code&gt;&lt;/li&gt;
+ &lt;li&gt;&lt;code&gt;org.eclipse.eef.core.api.controllers.AbstractEEFCustomWidgetController&lt;/code&gt;&lt;/li&gt;
+&lt;/ul&gt;
+The AbstractEEFController provides support for the validation and the refresh. The AbstractEEFWidgetController, which extends the AbstractEEFController, adds support for the refresh of the label and the help of the widgets and finally the AbstractEEFCustomWidgetController, which extends the AbstractEEFWidgetController, adds on top of that utility methods for the execution of command expressions.
+&lt;pre&gt;
+package org.eclipse.eef.sample.internal.extensions;
+
+import org.eclipse.eef.EEFControlDescription;
+import org.eclipse.eef.core.api.EditingContextAdapter;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManagerProvider;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+import org.eclipse.sirius.common.interpreter.api.IVariableManager;
+
+public class SampleLifecycleManagerProvider implements IEEFLifecycleManagerProvider {
+
+ private static final String DESCRIPTION_IDENTIFIER = &quot;org.eclipse.eef.sample.customwidget&quot;;
+
+ @Override
+ public boolean canHandle(EEFControlDescription controlDescription) {
+ // Only handle the control with our description
+ return DESCRIPTION_IDENTIFIER.equals(controlDescription.getIdentifier());
+ }
+
+ @Override
+ public IEEFLifecycleManager getLifecycleManager(EEFControlDescription controlDescription, IVariableManager variableManager, IInterpreter interpreter, EditingContextAdapter contextAdapter) {
+ // Returns a lifecycle manager for the control supported
+ return new SampleLifecycleManager(controlDescription, variableManager, interpreter, contextAdapter);
+ }
+
+}
+&lt;/pre&gt;
+This example requires at least the following dependencies:
+&lt;ul&gt;
+ &lt;li&gt;org.eclipse.sirius.common.interpreter&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef.core&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef.ide.ui&lt;/li&gt;
+&lt;/ul&gt;
</documentation>
</annotation>
@@ -106,7 +166,7 @@
<meta.section type="apiinfo"/>
</appinfo>
<documentation>
- [Enter API information here.]
+ The IEEFLifecycleManagerProvider allows the contribution of an IEEFLifecycleManager for a custom widget or the replacement of a default IEEFLifecycleManager for any widget or container.
</documentation>
</annotation>
@@ -115,9 +175,29 @@
<meta.section type="implementation"/>
</appinfo>
<documentation>
- [Enter information about supplied implementation of this extension point.]
+ EEF does not supply directly any implementation of the &lt;code&gt;org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManagerProvider&lt;/code&gt; but you can find an example in the sample project with the implementation of a custom widget, the color picker.
+
+While we do not have any implementation for the lifecycle manager provider, there are several abstract implementations of &lt;code&gt;org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager&lt;/code&gt; provided by this plugin:
+&lt;ul&gt;
+ &lt;li&gt;&lt;code&gt;org.eclipse.eef.ide.ui.api.widgets.AbstractEEFLifecycleManager&lt;/code&gt;&lt;/li&gt;
+ &lt;li&gt;&lt;code&gt;org.eclipse.eef.ide.ui.api.widgets.AbstractEEFWidgetLifecycleManager&lt;/code&gt;&lt;/li&gt;
+&lt;/ul&gt;
+
+The class AbstractEEFLifecycleManager provides the support for validation and refresh of the controller automatically. In order to subclass it, you will have to provide a subclass of org.eclipse.swt.widgets.Control which will be used in order to &quot;attach&quot; the validation icons in the user interface. The class AbstractEEFWidgetLifecycleManager extends the class AbstractEEFLifecycleManager and as a result it also provides support for the validation but on top of that it brings support for the label and help widgets. By subclassing AbstractEEFWidgetLifecycleManager, your main responsibility will be the creation of the &quot;main control&quot; of your widget. It does not have to be &quot;one&quot; SWT control only. If you have access to the EEF source code, you can also look for the subclasses of those lifecycle managers to see the default implementations of all the widgets and the container.
</documentation>
</annotation>
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2016 Obeo&lt;br/&gt;
+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
+&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
+ </documentation>
+ </annotation>
</schema>
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/IEEFLifecycleManagerProvider.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/IEEFLifecycleManagerProvider.java
deleted file mode 100644
index 8db274665..000000000
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/IEEFLifecycleManagerProvider.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2016 Obeo.
- * 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:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.ide.ui.api;
-
-import org.eclipse.eef.EEFCustomWidgetDescription;
-import org.eclipse.eef.core.api.EditingContextAdapter;
-import org.eclipse.sirius.common.interpreter.api.IInterpreter;
-import org.eclipse.sirius.common.interpreter.api.IVariableManager;
-
-/**
- * This interface is used to get the {@link ILifecycleManager} of a widget.
- *
- * @author mbats
- */
-public interface IEEFLifecycleManagerProvider {
- /**
- * Returns an {@link ILifecycleManager}.
- *
- * @param customWidgetDescription
- * The widget description
- * @param variableManager
- * The variable manager
- * @param interpreter
- * The interpreter
- * @param contextAdapter
- * The editing context adapter
- *
- * @return An {@link ILifecycleManager}
- */
- ILifecycleManager getLifecycleManager(EEFCustomWidgetDescription customWidgetDescription, IVariableManager variableManager,
- IInterpreter interpreter, EditingContextAdapter contextAdapter);
-
-}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFLifecycleManager.java
index 979eafe9f..9a3eee21e 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFLifecycleManager.java
@@ -17,7 +17,6 @@ import org.eclipse.eef.core.api.controllers.IConsumer;
import org.eclipse.eef.core.api.controllers.IEEFController;
import org.eclipse.eef.core.api.controllers.IInvalidValidationRuleResult;
import org.eclipse.eef.core.api.controllers.IValidationRuleResult;
-import org.eclipse.eef.ide.ui.api.ILifecycleManager;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.ui.forms.IMessageManager;
@@ -27,7 +26,7 @@ import org.eclipse.ui.forms.IMessageManager;
*
* @author sbegaudeau
*/
-public abstract class AbstractEEFLifecycleManager implements ILifecycleManager {
+public abstract class AbstractEEFLifecycleManager implements IEEFLifecycleManager {
/**
* The form container.
@@ -37,7 +36,7 @@ public abstract class AbstractEEFLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#createControl(org.eclipse.swt.widgets.Composite,
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#createControl(org.eclipse.swt.widgets.Composite,
* org.eclipse.eef.common.ui.api.IEEFFormContainer)
*/
@Override
@@ -48,7 +47,7 @@ public abstract class AbstractEEFLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -95,7 +94,7 @@ public abstract class AbstractEEFLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#refresh()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#refresh()
*/
@Override
public void refresh() {
@@ -105,7 +104,7 @@ public abstract class AbstractEEFLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFWidgetLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFWidgetLifecycleManager.java
index a304a8f7a..ec4b6d611 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFWidgetLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/AbstractEEFWidgetLifecycleManager.java
@@ -348,7 +348,7 @@ public abstract class AbstractEEFWidgetLifecycleManager extends AbstractEEFLifec
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#dispose()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#dispose()
*/
@Override
public void dispose() {
@@ -488,7 +488,7 @@ public abstract class AbstractEEFWidgetLifecycleManager extends AbstractEEFLifec
Eval eval = new Eval(interpreter, variableManager);
Integer fontSizeValue = eval.get(eAttribute, fontSizeExpression, Integer.class);
if (fontSizeValue != null && fontSizeValue.intValue() != fontSize) {
- fontSize = fontSizeValue;
+ fontSize = fontSizeValue.intValue();
}
}
return fontSize;
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/ILifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManager.java
index 46253159a..e8f3768d8 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/ILifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManager.java
@@ -8,7 +8,7 @@
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
-package org.eclipse.eef.ide.ui.api;
+package org.eclipse.eef.ide.ui.api.widgets;
import org.eclipse.eef.common.ui.api.IEEFFormContainer;
import org.eclipse.swt.widgets.Composite;
@@ -19,7 +19,7 @@ import org.eclipse.swt.widgets.Composite;
*
* @author sbegaudeau
*/
-public interface ILifecycleManager {
+public interface IEEFLifecycleManager {
/**
* Creates the controls for the description.
*
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManagerProvider.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManagerProvider.java
new file mode 100644
index 000000000..b0672687d
--- /dev/null
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/widgets/IEEFLifecycleManagerProvider.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.ide.ui.api.widgets;
+
+import org.eclipse.eef.EEFControlDescription;
+import org.eclipse.eef.core.api.EditingContextAdapter;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+import org.eclipse.sirius.common.interpreter.api.IVariableManager;
+
+/**
+ * This interface is used to get the {@link IEEFLifecycleManager} for a control.
+ *
+ * @author mbats
+ */
+public interface IEEFLifecycleManagerProvider {
+
+ /**
+ * Indicates if the lifecycle manager provider can handle the given control description.
+ *
+ * @param controlDescription
+ * the description of the control
+ * @return <code>true</code> if the lifecycle manager can handle it, <code>false</code> otherwise
+ */
+ boolean canHandle(EEFControlDescription controlDescription);
+
+ /**
+ * Returns an {@link IEEFLifecycleManager} for the given description. This method should not return
+ * <code>null</code>, if a description is not supported, return false in the method canHandle.
+ *
+ * @param controlDescription
+ * The control description
+ * @param variableManager
+ * The variable manager
+ * @param interpreter
+ * The interpreter
+ * @param contextAdapter
+ * The editing context adapter
+ *
+ * @return An {@link IEEFLifecycleManager}
+ */
+ IEEFLifecycleManager getLifecycleManager(EEFControlDescription controlDescription, IVariableManager variableManager, IInterpreter interpreter,
+ EditingContextAdapter contextAdapter);
+
+}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/EEFIdeUiPlugin.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/EEFIdeUiPlugin.java
index fa73d0aec..d2756f055 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/EEFIdeUiPlugin.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/EEFIdeUiPlugin.java
@@ -11,26 +11,21 @@
package org.eclipse.eef.ide.ui.internal;
import java.net.URL;
-import java.text.MessageFormat;
import org.eclipse.core.runtime.IExtensionRegistry;
import org.eclipse.core.runtime.Platform;
-import org.eclipse.eef.EEFCustomWidgetDescription;
+import org.eclipse.eef.EEFControlDescription;
import org.eclipse.eef.common.api.AbstractEEFEclipsePlugin;
-import org.eclipse.eef.core.api.EditingContextAdapter;
import org.eclipse.eef.ide.api.extensions.AbstractRegistryEventListener;
import org.eclipse.eef.ide.api.extensions.IItemDescriptor;
import org.eclipse.eef.ide.api.extensions.IItemRegistry;
import org.eclipse.eef.ide.api.extensions.impl.DescriptorRegistryEventListener;
import org.eclipse.eef.ide.api.extensions.impl.ItemRegistry;
-import org.eclipse.eef.ide.ui.api.IEEFLifecycleManagerProvider;
-import org.eclipse.eef.ide.ui.api.ILifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManagerProvider;
import org.eclipse.emf.common.EMFPlugin;
import org.eclipse.emf.common.util.ResourceLocator;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.sirius.common.interpreter.api.IInterpreter;
-import org.eclipse.sirius.common.interpreter.api.IVariableManager;
import org.eclipse.swt.SWT;
import org.eclipse.swt.SWTError;
import org.eclipse.swt.graphics.Image;
@@ -228,36 +223,18 @@ public class EEFIdeUiPlugin extends EMFPlugin {
}
/**
- * Return the lifecycle manager.
+ * Return the lifecycle manager provider supporting the given description.
*
- * @param eefWidgetDescription
- * The description of the widget to create
- * @param variableManager
- * The variable manager to use for the widget to create
- * @param interpreter
- * The interpreter
- * @param contextAdapter
- * The editing context adapter
- * @return The lifecycle manager
+ * @param eefControlDescription
+ * The description of the control to create
+ * @return The lifecycle manager provider
*/
- public ILifecycleManager getEEFLifecycleManager(EEFCustomWidgetDescription eefWidgetDescription, IVariableManager variableManager,
- IInterpreter interpreter, EditingContextAdapter contextAdapter) {
+ public IEEFLifecycleManagerProvider getEEFLifecycleManagerProvider(EEFControlDescription eefControlDescription) {
for (IItemDescriptor<IEEFLifecycleManagerProvider> itemDescriptor : this.eefLifecycleManagerProviderRegistry.getItemDescriptors()) {
- String eefLifecyleManagerID = itemDescriptor.getID();
- // Search the lifecycle manager in the contribution
- if (eefWidgetDescription.getIdentifier().equals(eefLifecyleManagerID)) {
- IEEFLifecycleManagerProvider eefLifecycleManagerProvider = itemDescriptor.getItem();
- ILifecycleManager eefLifecycleManager = eefLifecycleManagerProvider.getLifecycleManager(eefWidgetDescription, variableManager,
- interpreter, contextAdapter);
- if (eefLifecycleManager != null) {
- return eefLifecycleManager;
- } else {
- String message = MessageFormat.format(Messages.EEFIdeUiPlugin_lifecycleManagerInvalid, eefLifecyleManagerID);
- EEFIdeUiPlugin.getPlugin().error(message);
- }
- } else {
- String message = MessageFormat.format(Messages.EEFIdeUiPlugin_lifecycleManagerNotFound, eefLifecyleManagerID);
- EEFIdeUiPlugin.getPlugin().error(message);
+ // Search the first lifecycle manager in the contribution supporting the given control
+ IEEFLifecycleManagerProvider eefLifecycleManagerProvider = itemDescriptor.getItem();
+ if (eefLifecycleManagerProvider.canHandle(eefControlDescription)) {
+ return eefLifecycleManagerProvider;
}
}
return null;
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFCheckboxLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFCheckboxLifecycleManager.java
index 3ee7d9ad2..0d3c1f7c4 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFCheckboxLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFCheckboxLifecycleManager.java
@@ -175,7 +175,7 @@ public class EEFCheckboxLifecycleManager extends AbstractEEFWidgetLifecycleManag
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -217,7 +217,7 @@ public class EEFCheckboxLifecycleManager extends AbstractEEFWidgetLifecycleManag
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java
index 2e4c3f8cd..4d4952fb2 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java
@@ -23,7 +23,7 @@ import org.eclipse.eef.EEF_FILL_LAYOUT_ORIENTATION;
import org.eclipse.eef.common.ui.api.EEFWidgetFactory;
import org.eclipse.eef.common.ui.api.IEEFFormContainer;
import org.eclipse.eef.core.api.EditingContextAdapter;
-import org.eclipse.eef.ide.ui.api.ILifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager;
import org.eclipse.sirius.common.interpreter.api.IInterpreter;
import org.eclipse.sirius.common.interpreter.api.IVariableManager;
import org.eclipse.swt.layout.GridData;
@@ -35,7 +35,7 @@ import org.eclipse.swt.widgets.Composite;
*
* @author sbegaudeau
*/
-public class EEFContainerLifecycleManager implements ILifecycleManager {
+public class EEFContainerLifecycleManager implements IEEFLifecycleManager {
/**
* The variable manager.
@@ -60,7 +60,7 @@ public class EEFContainerLifecycleManager implements ILifecycleManager {
/**
* The lifecycle managers of the child of the container.
*/
- private List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+ private List<IEEFLifecycleManager> lifecycleManagers = new ArrayList<IEEFLifecycleManager>();
/**
* The constructor.
@@ -85,7 +85,7 @@ public class EEFContainerLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#createControl(org.eclipse.swt.widgets.Composite,
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#createControl(org.eclipse.swt.widgets.Composite,
* org.eclipse.eef.common.ui.api.IEEFFormContainer)
*/
@Override
@@ -132,11 +132,11 @@ public class EEFContainerLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.aboutToBeShown();
}
}
@@ -144,11 +144,11 @@ public class EEFContainerLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#refresh()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#refresh()
*/
@Override
public void refresh() {
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.refresh();
}
}
@@ -156,11 +156,11 @@ public class EEFContainerLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.aboutToBeHidden();
}
}
@@ -168,11 +168,11 @@ public class EEFContainerLifecycleManager implements ILifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#dispose()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#dispose()
*/
@Override
public void dispose() {
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.dispose();
}
}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFControlSwitch.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFControlSwitch.java
index 26d0c72c3..6d95c2a6b 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFControlSwitch.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFControlSwitch.java
@@ -36,7 +36,8 @@ import org.eclipse.eef.common.ui.api.IEEFFormContainer;
import org.eclipse.eef.core.api.EEFExpressionUtils;
import org.eclipse.eef.core.api.EditingContextAdapter;
import org.eclipse.eef.core.api.utils.Eval;
-import org.eclipse.eef.ide.ui.api.ILifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManagerProvider;
import org.eclipse.eef.ide.ui.internal.EEFIdeUiPlugin;
import org.eclipse.eef.ide.ui.internal.Messages;
import org.eclipse.emf.ecore.EAttribute;
@@ -87,14 +88,24 @@ public class EEFControlSwitch {
* @return The list of all the lifecycle manager that have been created. One description can create multiple
* controls and thus multiple lifecycle managers (for example dynamic mappings).
*/
- public List<ILifecycleManager> doCreate(Composite parent, IEEFFormContainer formContainer, EEFControlDescription controlDescription,
+ public List<IEEFLifecycleManager> doCreate(Composite parent, IEEFFormContainer formContainer, EEFControlDescription controlDescription,
IVariableManager variableManager) {
- List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+ List<IEEFLifecycleManager> lifecycleManagers = new ArrayList<IEEFLifecycleManager>();
if (controlDescription instanceof EEFContainerDescription) {
- EEFContainerLifecycleManager containerLifecycleManager = new EEFContainerLifecycleManager((EEFContainerDescription) controlDescription,
- variableManager.createChild(), this.interpreter, this.contextAdapter);
- containerLifecycleManager.createControl(parent, formContainer);
- lifecycleManagers.add(containerLifecycleManager);
+ IVariableManager childVariableManager = variableManager.createChild();
+ IEEFLifecycleManager eefContainerLifecycleManager = null;
+
+ IEEFLifecycleManagerProvider eefLifecycleManagerProvider = EEFIdeUiPlugin.getPlugin().getEEFLifecycleManagerProvider(controlDescription);
+ if (eefLifecycleManagerProvider != null) {
+ eefContainerLifecycleManager = eefLifecycleManagerProvider.getLifecycleManager(controlDescription, childVariableManager, interpreter,
+ contextAdapter);
+ } else {
+ eefContainerLifecycleManager = new EEFContainerLifecycleManager((EEFContainerDescription) controlDescription, childVariableManager,
+ this.interpreter, this.contextAdapter);
+ }
+
+ eefContainerLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefContainerLifecycleManager);
} else if (controlDescription instanceof EEFWidgetDescription) {
lifecycleManagers.addAll(this.createWidgetControl(parent, formContainer, (EEFWidgetDescription) controlDescription,
variableManager.createChild()));
@@ -118,85 +129,91 @@ public class EEFControlSwitch {
* The child variable manager
* @return The lifecycle managers created for the widget(s)
*/
- private List<ILifecycleManager> createWidgetControl(Composite parent, IEEFFormContainer formContainer, EEFWidgetDescription widgetDescription,
+ private List<IEEFLifecycleManager> createWidgetControl(Composite parent, IEEFFormContainer formContainer, EEFWidgetDescription widgetDescription,
IVariableManager childVariableManager) {
- List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
- if (widgetDescription instanceof EEFTextDescription) {
- EEFTextDescription eefTextDescription = (EEFTextDescription) widgetDescription;
+ List<IEEFLifecycleManager> lifecycleManagers = new ArrayList<IEEFLifecycleManager>();
- EEFTextLifecycleManager eefTextLifecycleManager = new EEFTextLifecycleManager(eefTextDescription, childVariableManager, interpreter,
- contextAdapter);
- eefTextLifecycleManager.createControl(parent, formContainer);
+ // First, let's see if an external contributor does not want to handle this description
+ IEEFLifecycleManagerProvider eefLifecycleManagerProvider = EEFIdeUiPlugin.getPlugin().getEEFLifecycleManagerProvider(widgetDescription);
+ if (eefLifecycleManagerProvider != null) {
+ // We have a lifecycle manager provider, let's use it
+ IEEFLifecycleManager eefLifecycleManager = eefLifecycleManagerProvider.getLifecycleManager(widgetDescription, childVariableManager,
+ interpreter, contextAdapter);
+ eefLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefLifecycleManager);
+ } else if (widgetDescription instanceof EEFCustomWidgetDescription) {
+ // A custom widget cannot be supported if the lifecycle manager retrieved is null
+ String message = MessageFormat.format(Messages.EEFIdeUiPlugin_lifecycleManagerNotFound, widgetDescription.getIdentifier());
+ EEFIdeUiPlugin.getPlugin().error(message);
+ } else {
+ // We have not found a custom lifecycle manager, fallback to the default behavior
+ if (widgetDescription instanceof EEFTextDescription) {
+ EEFTextDescription eefTextDescription = (EEFTextDescription) widgetDescription;
- lifecycleManagers.add(eefTextLifecycleManager);
- } else if (widgetDescription instanceof EEFLabelDescription) {
- EEFLabelDescription eefLabelDescription = (EEFLabelDescription) widgetDescription;
+ EEFTextLifecycleManager eefTextLifecycleManager = new EEFTextLifecycleManager(eefTextDescription, childVariableManager, interpreter,
+ contextAdapter);
+ eefTextLifecycleManager.createControl(parent, formContainer);
- EEFLabelLifecycleManager eefLabelLifecycleManager = new EEFLabelLifecycleManager(eefLabelDescription, childVariableManager, interpreter,
- contextAdapter);
- eefLabelLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefTextLifecycleManager);
+ } else if (widgetDescription instanceof EEFLabelDescription) {
+ EEFLabelDescription eefLabelDescription = (EEFLabelDescription) widgetDescription;
- lifecycleManagers.add(eefLabelLifecycleManager);
- } else if (widgetDescription instanceof EEFSelectDescription) {
- EEFSelectDescription eefSelectDescription = (EEFSelectDescription) widgetDescription;
+ EEFLabelLifecycleManager eefLabelLifecycleManager = new EEFLabelLifecycleManager(eefLabelDescription, childVariableManager,
+ interpreter, contextAdapter);
+ eefLabelLifecycleManager.createControl(parent, formContainer);
- EEFSelectLifecycleManager eefSelectLifecycleManager = new EEFSelectLifecycleManager(eefSelectDescription, childVariableManager,
- interpreter, contextAdapter);
- eefSelectLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefLabelLifecycleManager);
+ } else if (widgetDescription instanceof EEFSelectDescription) {
+ EEFSelectDescription eefSelectDescription = (EEFSelectDescription) widgetDescription;
- lifecycleManagers.add(eefSelectLifecycleManager);
- } else if (widgetDescription instanceof EEFRadioDescription) {
- EEFRadioDescription eefRadioDescription = (EEFRadioDescription) widgetDescription;
+ EEFSelectLifecycleManager eefSelectLifecycleManager = new EEFSelectLifecycleManager(eefSelectDescription, childVariableManager,
+ interpreter, contextAdapter);
+ eefSelectLifecycleManager.createControl(parent, formContainer);
- EEFRadioLifecycleManager eefRadioLifecycleManager = new EEFRadioLifecycleManager(eefRadioDescription, childVariableManager, interpreter,
- contextAdapter);
- eefRadioLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefSelectLifecycleManager);
+ } else if (widgetDescription instanceof EEFRadioDescription) {
+ EEFRadioDescription eefRadioDescription = (EEFRadioDescription) widgetDescription;
- lifecycleManagers.add(eefRadioLifecycleManager);
- } else if (widgetDescription instanceof EEFCheckboxDescription) {
- EEFCheckboxDescription eefCheckboxDescription = (EEFCheckboxDescription) widgetDescription;
+ EEFRadioLifecycleManager eefRadioLifecycleManager = new EEFRadioLifecycleManager(eefRadioDescription, childVariableManager,
+ interpreter, contextAdapter);
+ eefRadioLifecycleManager.createControl(parent, formContainer);
- EEFCheckboxLifecycleManager eefCheckboxLifecycleManager = new EEFCheckboxLifecycleManager(eefCheckboxDescription, childVariableManager,
- interpreter, contextAdapter);
- eefCheckboxLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefRadioLifecycleManager);
+ } else if (widgetDescription instanceof EEFCheckboxDescription) {
+ EEFCheckboxDescription eefCheckboxDescription = (EEFCheckboxDescription) widgetDescription;
- lifecycleManagers.add(eefCheckboxLifecycleManager);
- } else if (widgetDescription instanceof EEFButtonDescription) {
- EEFButtonDescription eefButtonDescription = (EEFButtonDescription) widgetDescription;
+ EEFCheckboxLifecycleManager eefCheckboxLifecycleManager = new EEFCheckboxLifecycleManager(eefCheckboxDescription,
+ childVariableManager, interpreter, contextAdapter);
+ eefCheckboxLifecycleManager.createControl(parent, formContainer);
- EEFButtonLifecycleManager eefButtonLifecycleManager = new EEFButtonLifecycleManager(eefButtonDescription, childVariableManager,
- interpreter, contextAdapter);
- eefButtonLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefCheckboxLifecycleManager);
+ } else if (widgetDescription instanceof EEFButtonDescription) {
+ EEFButtonDescription eefButtonDescription = (EEFButtonDescription) widgetDescription;
- lifecycleManagers.add(eefButtonLifecycleManager);
- } else if (widgetDescription instanceof EEFReferenceDescription) {
- EEFReferenceDescription eefReferenceDescription = (EEFReferenceDescription) widgetDescription;
+ EEFButtonLifecycleManager eefButtonLifecycleManager = new EEFButtonLifecycleManager(eefButtonDescription, childVariableManager,
+ interpreter, contextAdapter);
+ eefButtonLifecycleManager.createControl(parent, formContainer);
- EEFReferenceLifecycleManager eefReferenceLifecycleManager = new EEFReferenceLifecycleManager(eefReferenceDescription,
- childVariableManager, interpreter, contextAdapter);
- eefReferenceLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefButtonLifecycleManager);
+ } else if (widgetDescription instanceof EEFReferenceDescription) {
+ EEFReferenceDescription eefReferenceDescription = (EEFReferenceDescription) widgetDescription;
- lifecycleManagers.add(eefReferenceLifecycleManager);
- } else if (widgetDescription instanceof EEFHyperlinkDescription) {
- EEFHyperlinkDescription eefHyperlinkDescription = (EEFHyperlinkDescription) widgetDescription;
+ EEFReferenceLifecycleManager eefReferenceLifecycleManager = new EEFReferenceLifecycleManager(eefReferenceDescription,
+ childVariableManager, interpreter, contextAdapter);
+ eefReferenceLifecycleManager.createControl(parent, formContainer);
- EEFHyperlinkLifecycleManager eefHyperlinkLifecycleManager = new EEFHyperlinkLifecycleManager(eefHyperlinkDescription,
- childVariableManager, interpreter, contextAdapter);
- eefHyperlinkLifecycleManager.createControl(parent, formContainer);
+ lifecycleManagers.add(eefReferenceLifecycleManager);
+ } else if (widgetDescription instanceof EEFHyperlinkDescription) {
+ EEFHyperlinkDescription eefHyperlinkDescription = (EEFHyperlinkDescription) widgetDescription;
- lifecycleManagers.add(eefHyperlinkLifecycleManager);
- } else if (widgetDescription instanceof EEFCustomWidgetDescription) {
- EEFCustomWidgetDescription eefCustomDescription = (EEFCustomWidgetDescription) widgetDescription;
- ILifecycleManager eefCustomWidgetLifecycleManager = EEFIdeUiPlugin.getPlugin().getEEFLifecycleManager(eefCustomDescription,
- childVariableManager, interpreter, contextAdapter);
- if (eefCustomWidgetLifecycleManager != null) {
- eefCustomWidgetLifecycleManager.createControl(parent, formContainer);
- lifecycleManagers.add(eefCustomWidgetLifecycleManager);
- } else {
- String message = MessageFormat.format(Messages.EEFIdeUiPlugin_lifecycleManagerNotFound, eefCustomDescription.getIdentifier());
- EEFIdeUiPlugin.getPlugin().error(message);
+ EEFHyperlinkLifecycleManager eefHyperlinkLifecycleManager = new EEFHyperlinkLifecycleManager(eefHyperlinkDescription,
+ childVariableManager, interpreter, contextAdapter);
+ eefHyperlinkLifecycleManager.createControl(parent, formContainer);
+
+ lifecycleManagers.add(eefHyperlinkLifecycleManager);
}
}
+
return lifecycleManagers;
}
@@ -213,9 +230,9 @@ public class EEFControlSwitch {
* The variable manager
* @return The list of the lifecycle manager created
*/
- private List<ILifecycleManager> createDynamicMappingControl(Composite parent, IEEFFormContainer formContainer,
+ private List<IEEFLifecycleManager> createDynamicMappingControl(Composite parent, IEEFFormContainer formContainer,
EEFDynamicMappingFor dynamicMappingFor, IVariableManager variableManager) {
- List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+ List<IEEFLifecycleManager> lifecycleManagers = new ArrayList<IEEFLifecycleManager>();
String domainClassExpression = dynamicMappingFor.getDomainClassExpression();
EAttribute domainClassEAttribute = EefPackage.Literals.EEF_DYNAMIC_MAPPING_FOR__DOMAIN_CLASS_EXPRESSION;
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFGroupLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFGroupLifecycleManager.java
index 5eba9806d..1516e928d 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFGroupLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFGroupLifecycleManager.java
@@ -30,8 +30,8 @@ import org.eclipse.eef.core.api.controllers.IConsumer;
import org.eclipse.eef.core.api.controllers.IEEFController;
import org.eclipse.eef.core.api.controllers.IEEFGroupController;
import org.eclipse.eef.core.api.utils.Eval;
-import org.eclipse.eef.ide.ui.api.ILifecycleManager;
import org.eclipse.eef.ide.ui.api.widgets.AbstractEEFLifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager;
import org.eclipse.eef.ide.ui.internal.widgets.styles.EEFColor;
import org.eclipse.eef.ide.ui.internal.widgets.styles.EEFFont;
import org.eclipse.sirius.common.interpreter.api.IInterpreter;
@@ -75,7 +75,7 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
/**
* The lifecycle managers of the child of the container.
*/
- private List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+ private List<IEEFLifecycleManager> lifecycleManagers = new ArrayList<IEEFLifecycleManager>();
/**
* The controller.
@@ -196,7 +196,10 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
String.class);
Integer fontSize = eval.get(EefPackage.Literals.EEF_GROUP_STYLE__FONT_SIZE_EXPRESSION, styleDescription.getFontSizeExpression(),
Integer.class);
- Font font = new EEFFont(fontName, fontSize, SWT.BOLD).getFont();
+ if (fontSize == null) {
+ fontSize = Integer.valueOf(0);
+ }
+ Font font = new EEFFont(fontName, fontSize.intValue(), SWT.BOLD).getFont();
this.section.setFont(font);
group.setFont(font);
}
@@ -283,7 +286,7 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -296,7 +299,7 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
}
});
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.aboutToBeShown();
}
}
@@ -304,13 +307,13 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#refresh()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#refresh()
*/
@Override
public void refresh() {
super.refresh();
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.refresh();
}
}
@@ -318,7 +321,7 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
@@ -326,7 +329,7 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
this.controller.removeNewLabelConsumer();
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.aboutToBeHidden();
}
}
@@ -334,11 +337,11 @@ public class EEFGroupLifecycleManager extends AbstractEEFLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#dispose()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#dispose()
*/
@Override
public void dispose() {
- for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : lifecycleManagers) {
lifecycleManager.dispose();
}
}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFHyperlinkLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFHyperlinkLifecycleManager.java
index 09afff916..022579512 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFHyperlinkLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFHyperlinkLifecycleManager.java
@@ -165,7 +165,7 @@ public class EEFHyperlinkLifecycleManager extends AbstractEEFWidgetLifecycleMana
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.AbstractEEFWidgetLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -279,7 +279,7 @@ public class EEFHyperlinkLifecycleManager extends AbstractEEFWidgetLifecycleMana
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.AbstractEEFWidgetLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFLabelLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFLabelLifecycleManager.java
index ee893229f..f7f04fccb 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFLabelLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFLabelLifecycleManager.java
@@ -96,7 +96,7 @@ public class EEFLabelLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -161,7 +161,7 @@ public class EEFLabelLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
@@ -172,7 +172,7 @@ public class EEFLabelLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#dispose()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#dispose()
*/
@Override
protected IEEFWidgetController getController() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFRadioLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFRadioLifecycleManager.java
index 3b1d840cd..75aeae08e 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFRadioLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFRadioLifecycleManager.java
@@ -186,7 +186,7 @@ public class EEFRadioLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -248,7 +248,7 @@ public class EEFRadioLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java
index de11a9ee7..74fd3c8ae 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java
@@ -267,7 +267,7 @@ public class EEFReferenceLifecycleManager extends AbstractEEFWidgetLifecycleMana
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.AbstractEEFWidgetLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSectionLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSectionLifecycleManager.java
index 4e01f9ff2..a0b512886 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSectionLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSectionLifecycleManager.java
@@ -20,8 +20,8 @@ import org.eclipse.eef.core.api.EditingContextAdapter;
import org.eclipse.eef.core.api.controllers.EEFControllersFactory;
import org.eclipse.eef.core.api.controllers.IEEFController;
import org.eclipse.eef.core.api.controllers.IEEFSectionController;
-import org.eclipse.eef.ide.ui.api.ILifecycleManager;
import org.eclipse.eef.ide.ui.api.widgets.AbstractEEFLifecycleManager;
+import org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager;
import org.eclipse.eef.ide.ui.internal.widgets.quickfix.EEFMessageHyperlinkListener;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
@@ -47,7 +47,7 @@ public class EEFSectionLifecycleManager extends AbstractEEFLifecycleManager {
/**
* The lifecycle managers of this section.
*/
- private List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+ private List<IEEFLifecycleManager> lifecycleManagers = new ArrayList<IEEFLifecycleManager>();
/**
* The hyperlink listener.
@@ -101,7 +101,7 @@ public class EEFSectionLifecycleManager extends AbstractEEFLifecycleManager {
this.container.getForm().addMessageHyperlinkListener(this.hyperlinkListener);
- for (ILifecycleManager lifecycleManager : this.lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : this.lifecycleManagers) {
lifecycleManager.aboutToBeShown();
}
}
@@ -117,7 +117,7 @@ public class EEFSectionLifecycleManager extends AbstractEEFLifecycleManager {
this.controller.refresh();
- for (ILifecycleManager lifecycleManager : this.lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : this.lifecycleManagers) {
lifecycleManager.refresh();
}
@@ -136,7 +136,7 @@ public class EEFSectionLifecycleManager extends AbstractEEFLifecycleManager {
this.container.getForm().removeMessageHyperlinkListener(this.hyperlinkListener);
this.container.getForm().getMessageManager().removeAllMessages();
- for (ILifecycleManager lifecycleManager : this.lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : this.lifecycleManagers) {
lifecycleManager.aboutToBeHidden();
}
}
@@ -164,11 +164,11 @@ public class EEFSectionLifecycleManager extends AbstractEEFLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#dispose()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#dispose()
*/
@Override
public void dispose() {
- for (ILifecycleManager lifecycleManager : this.lifecycleManagers) {
+ for (IEEFLifecycleManager lifecycleManager : this.lifecycleManagers) {
lifecycleManager.dispose();
}
}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSelectLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSelectLifecycleManager.java
index 5eeb3d569..1b1d86610 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSelectLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFSelectLifecycleManager.java
@@ -188,7 +188,7 @@ public class EEFSelectLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -249,7 +249,7 @@ public class EEFSelectLifecycleManager extends AbstractEEFWidgetLifecycleManager
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java
index de1a6d9e6..ecd23a5d9 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java
@@ -187,7 +187,7 @@ public class EEFTextLifecycleManager extends AbstractEEFWidgetLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeShown()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeShown()
*/
@Override
public void aboutToBeShown() {
@@ -261,7 +261,7 @@ public class EEFTextLifecycleManager extends AbstractEEFWidgetLifecycleManager {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.ide.ui.api.ILifecycleManager#aboutToBeHidden()
+ * @see org.eclipse.eef.ide.ui.api.widgets.IEEFLifecycleManager#aboutToBeHidden()
*/
@Override
public void aboutToBeHidden() {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/RadioGroup.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/RadioGroup.java
index c0dab96de..aee93b123 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/RadioGroup.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/RadioGroup.java
@@ -93,7 +93,7 @@ public class RadioGroup extends Composite {
public void setItem(int index, String string) {
add(string, index);
- Button button = buttons.get(index);
+ Button button = buttons.get(Integer.valueOf(index));
button.setText(string);
}
@@ -106,11 +106,11 @@ public class RadioGroup extends Composite {
* the index for the item
*/
public void add(String string, int index) {
- if (buttons.get(index) == null) {
+ if (buttons.get(Integer.valueOf(index)) == null) {
Button button = widgetFactory.createButton(this, string, SWT.RADIO);
button.setBackground(this.getBackground());
button.setForeground(this.getForeground());
- buttons.put(index, button);
+ buttons.put(Integer.valueOf(index), button);
}
}
@@ -156,7 +156,7 @@ public class RadioGroup extends Composite {
for (Map.Entry<Integer, Button> entry : buttons.entrySet()) {
Button button = entry.getValue();
if (button.getSelection()) {
- return new int[] { entry.getKey() };
+ return new int[] { entry.getKey().intValue() };
}
}
return new int[] { -1 };
@@ -193,10 +193,10 @@ public class RadioGroup extends Composite {
* the index for the item
*/
public void remove(int index) {
- Button button = buttons.get(index);
+ Button button = buttons.get(Integer.valueOf(index));
if (button != null && !button.isDisposed()) {
button.dispose();
- buttons.remove(index);
+ buttons.remove(Integer.valueOf(index));
}
}
@@ -209,7 +209,7 @@ public class RadioGroup extends Composite {
* the index of the item to select
*/
public void select(int index) {
- buttons.get(index).setSelection(true);
+ buttons.get(Integer.valueOf(index)).setSelection(true);
}
/**
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/styles/EEFColor.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/styles/EEFColor.java
index 90d170145..f70305b6f 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/styles/EEFColor.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/styles/EEFColor.java
@@ -102,9 +102,9 @@ public class EEFColor {
Matcher m = c.matcher(colorCode);
if (m.matches()) {
- return getColor(Integer.valueOf(m.group(1)), // r
- Integer.valueOf(m.group(2)), // g
- Integer.valueOf(m.group(3))); // b
+ return getColor(Integer.valueOf(m.group(1)).intValue(), // r
+ Integer.valueOf(m.group(2)).intValue(), // g
+ Integer.valueOf(m.group(3)).intValue()); // b
}
return null;
}
diff --git a/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF
index b414a3d29..08c60d769 100644
--- a/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF
@@ -12,7 +12,6 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Import-Package: org.eclipse.eef;version="[1.6.0,2.0.0)",
- org.eclipse.eef.api;version="[1.6.0,2.0.0)",
org.eclipse.eef.core.api;version="[1.6.0,2.0.0)",
org.eclipse.eef.core.api.utils;version="[1.6.0,2.0.0)",
org.eclipse.sirius.common.interpreter.api;version="1.0.0"
diff --git a/plugins/org.eclipse.eef.ide/build.properties b/plugins/org.eclipse.eef.ide/build.properties
index 7ff6173f1..de2aaf4ec 100644
--- a/plugins/org.eclipse.eef.ide/build.properties
+++ b/plugins/org.eclipse.eef.ide/build.properties
@@ -1,4 +1,4 @@
-# Copyright (c) 2015 Obeo.
+# Copyright (c) 2015, 2016 Obeo.
# 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
@@ -10,6 +10,5 @@ output.. = bin/
bin.includes = META-INF/,\
.,\
plugin.properties,\
- plugin.xml,\
about.html
javacProjectSettings = true
diff --git a/plugins/org.eclipse.eef.ide/plugin.properties b/plugins/org.eclipse.eef.ide/plugin.properties
index 84644c30c..961bb6c3d 100644
--- a/plugins/org.eclipse.eef.ide/plugin.properties
+++ b/plugins/org.eclipse.eef.ide/plugin.properties
@@ -1,4 +1,4 @@
-# Copyright (c) 2015 Obeo.
+# Copyright (c) 2015, 2016 Obeo.
# 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
@@ -7,6 +7,3 @@
pluginName=EEF IDE
providerName=Eclipse Modeling Project
-
-PluginXML_eefViewDescriptionProviderExtensionPointName=EEF View Description Provider
-PluginXML_interpreterProviderExtensionPointName=Interpreter Provider \ No newline at end of file
diff --git a/plugins/org.eclipse.eef.ide/plugin.xml b/plugins/org.eclipse.eef.ide/plugin.xml
deleted file mode 100644
index bb2621391..000000000
--- a/plugins/org.eclipse.eef.ide/plugin.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
- <extension-point id="eefViewDescriptionProvider" name="%PluginXML_eefViewDescriptionProviderExtensionPointName" schema="schema/eefViewDescriptionProvider.exsd"/>
- <extension-point id="interpreterProvider" name="%PluginXML_interpreterProviderExtensionPointName" schema="schema/interpreterProvider.exsd"/>
-
-</plugin>
diff --git a/plugins/org.eclipse.eef.ide/schema/eefViewDescriptionProvider.exsd b/plugins/org.eclipse.eef.ide/schema/eefViewDescriptionProvider.exsd
deleted file mode 100644
index ef81033f5..000000000
--- a/plugins/org.eclipse.eef.ide/schema/eefViewDescriptionProvider.exsd
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.eef.ide" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
- <appinfo>
- <meta.schema plugin="org.eclipse.eef.ide" id="eefViewDescriptionProvider" name="EEF View Description Provider"/>
- </appinfo>
- <documentation>
- [Enter description of this extension point.]
- </documentation>
- </annotation>
-
- <element name="extension">
- <annotation>
- <appinfo>
- <meta.element />
- </appinfo>
- </annotation>
- <complexType>
- <sequence>
- <element ref="descriptor" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- <appinfo>
- <meta.attribute translatable="true"/>
- </appinfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="descriptor">
- <complexType>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="label" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="description" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- <appinfo>
- <meta.attribute kind="java" basedOn=":org.eclipse.eef.api.IEEFViewDescriptionProvider"/>
- </appinfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appinfo>
- <meta.section type="since"/>
- </appinfo>
- <documentation>
- 1.6.0
- </documentation>
- </annotation>
-
- <annotation>
- <appinfo>
- <meta.section type="examples"/>
- </appinfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appinfo>
- <meta.section type="apiinfo"/>
- </appinfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appinfo>
- <meta.section type="implementation"/>
- </appinfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
-
-</schema>
diff --git a/plugins/org.eclipse.eef.ide/schema/interpreterProvider.exsd b/plugins/org.eclipse.eef.ide/schema/interpreterProvider.exsd
deleted file mode 100644
index 413fa69b1..000000000
--- a/plugins/org.eclipse.eef.ide/schema/interpreterProvider.exsd
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.eef.ide" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
- <appinfo>
- <meta.schema plugin="org.eclipse.eef.ide" id="interpreterProvider" name="%PluginXML_interpreterProviderExtensionPointName"/>
- </appinfo>
- <documentation>
- [Enter description of this extension point.]
- </documentation>
- </annotation>
-
- <element name="extension">
- <annotation>
- <appinfo>
- <meta.element />
- </appinfo>
- </annotation>
- <complexType>
- <sequence>
- <element ref="descriptor" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- <appinfo>
- <meta.attribute translatable="true"/>
- </appinfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="descriptor">
- <complexType>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="label" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="description" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- <appinfo>
- <meta.attribute kind="java" basedOn=":org.eclipse.eef.interpreter.api.IInterpreterProvider"/>
- </appinfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appinfo>
- <meta.section type="since"/>
- </appinfo>
- <documentation>
- [Enter the first release in which this extension point appears.]
- </documentation>
- </annotation>
-
- <annotation>
- <appinfo>
- <meta.section type="examples"/>
- </appinfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appinfo>
- <meta.section type="apiinfo"/>
- </appinfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appinfo>
- <meta.section type="implementation"/>
- </appinfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
-
-</schema>
diff --git a/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java b/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java
index 15a274d27..89ece41b9 100644
--- a/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java
+++ b/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java
@@ -10,17 +10,9 @@
*******************************************************************************/
package org.eclipse.eef.ide.internal;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.eef.api.IEEFViewDescriptionProvider;
import org.eclipse.eef.common.api.AbstractEEFEclipsePlugin;
-import org.eclipse.eef.ide.api.extensions.AbstractRegistryEventListener;
-import org.eclipse.eef.ide.api.extensions.IItemRegistry;
-import org.eclipse.eef.ide.api.extensions.impl.DescriptorRegistryEventListener;
-import org.eclipse.eef.ide.api.extensions.impl.ItemRegistry;
import org.eclipse.emf.common.EMFPlugin;
import org.eclipse.emf.common.util.ResourceLocator;
-import org.eclipse.sirius.common.interpreter.api.IInterpreterProvider;
import org.osgi.framework.BundleContext;
/**
@@ -41,16 +33,6 @@ public class EEFIdePlugin extends EMFPlugin {
public static final EEFIdePlugin INSTANCE = new EEFIdePlugin();
/**
- * The name of the extension point for the view provider.
- */
- private static final String EEF_VIEW_DESCRIPTION_PROVIDER_EXTENSION_POINT = "eefViewDescriptionProvider"; //$NON-NLS-1$
-
- /**
- * The name of the extension point for the interpreter provider.
- */
- private static final String INTERPRETER_PROVIDER_EXTENSION_POINT = "interpreterProvider"; //$NON-NLS-1$
-
- /**
* The OSGi related implementation of the plugin.
*/
private static Implementation plugin;
@@ -87,25 +69,6 @@ public class EEFIdePlugin extends EMFPlugin {
* @author sbegaudeau
*/
public static class Implementation extends AbstractEEFEclipsePlugin {
- /**
- * The {@link IItemRegistry} used to retrieve the EEF View Description providers.
- */
- private IItemRegistry<IEEFViewDescriptionProvider> eefViewDescriptionProviderRegistry;
-
- /**
- * The extension registry listener used to populate the registry of EEF View Description providers.
- */
- private AbstractRegistryEventListener eefViewDescriptionProviderListener;
-
- /**
- * The {@link IItemRegistry} used to retrieve the {@link IInterpreterProvider}.
- */
- private IItemRegistry<IInterpreterProvider> interpreterProviderRegistry;
-
- /**
- * The extension registry listener used to populate the registry of {@link IInterpreterProvider}.
- */
- private AbstractRegistryEventListener interpreterProviderListener;
/**
* The constructor.
@@ -124,20 +87,6 @@ public class EEFIdePlugin extends EMFPlugin {
@Override
public void start(BundleContext context) throws Exception {
super.start(context);
-
- IExtensionRegistry registry = Platform.getExtensionRegistry();
-
- this.eefViewDescriptionProviderRegistry = new ItemRegistry<IEEFViewDescriptionProvider>();
- this.eefViewDescriptionProviderListener = new DescriptorRegistryEventListener<IEEFViewDescriptionProvider>(PLUGIN_ID,
- EEF_VIEW_DESCRIPTION_PROVIDER_EXTENSION_POINT, this.eefViewDescriptionProviderRegistry);
- registry.addListener(this.eefViewDescriptionProviderListener, PLUGIN_ID + '.' + EEF_VIEW_DESCRIPTION_PROVIDER_EXTENSION_POINT);
- this.eefViewDescriptionProviderListener.readRegistry(registry);
-
- this.interpreterProviderRegistry = new ItemRegistry<IInterpreterProvider>();
- this.interpreterProviderListener = new DescriptorRegistryEventListener<IInterpreterProvider>(PLUGIN_ID,
- INTERPRETER_PROVIDER_EXTENSION_POINT, this.interpreterProviderRegistry);
- registry.addListener(this.interpreterProviderListener, PLUGIN_ID + '.' + INTERPRETER_PROVIDER_EXTENSION_POINT);
- this.interpreterProviderListener.readRegistry(registry);
}
/**
@@ -148,34 +97,6 @@ public class EEFIdePlugin extends EMFPlugin {
@Override
public void stop(BundleContext context) throws Exception {
super.stop(context);
-
- IExtensionRegistry registry = Platform.getExtensionRegistry();
-
- registry.removeListener(this.eefViewDescriptionProviderListener);
- this.eefViewDescriptionProviderListener = null;
- this.eefViewDescriptionProviderRegistry = null;
-
- registry.removeListener(this.interpreterProviderListener);
- this.interpreterProviderListener = null;
- this.interpreterProviderRegistry = null;
- }
-
- /**
- * Return the viewProviderRegistry.
- *
- * @return the viewProviderRegistry
- */
- public IItemRegistry<IEEFViewDescriptionProvider> getEEFViewDescriptionProviderRegistry() {
- return this.eefViewDescriptionProviderRegistry;
- }
-
- /**
- * Return the interpreterProviderRegistry.
- *
- * @return the interpreterProviderRegistry
- */
- public IItemRegistry<IInterpreterProvider> getInterpreterProviderRegistry() {
- return this.interpreterProviderRegistry;
}
}
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.properties.ui.legacy/META-INF/MANIFEST.MF
index 608ee13df..d53618a12 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/META-INF/MANIFEST.MF
@@ -15,4 +15,7 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Export-Package: org.eclipse.eef.properties.ui.legacy.internal;version="1.6.0";x-internal:=true,
- org.eclipse.eef.properties.ui.legacy.internal.extension;version="1.6.0";x-internal:=true
+ org.eclipse.eef.properties.ui.legacy.internal.eef2legacy;version="1.6.0";x-internal:=true,
+ org.eclipse.eef.properties.ui.legacy.internal.extension;version="1.6.0";x-internal:=true,
+ org.eclipse.eef.properties.ui.legacy.internal.extension.impl;version="1.6.0";x-internal:=true,
+ org.eclipse.eef.properties.ui.legacy.internal.legacy2eef;version="1.6.0";x-internal:=true
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/I18N.java b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/I18N.java
index 586b5217c..cb2064150 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/I18N.java
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/I18N.java
@@ -8,7 +8,7 @@
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
-package org.eclipse.eef.properties.ui.legacy;
+package org.eclipse.eef.properties.ui.legacy.internal;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/Messages.java b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/Messages.java
index 361e02848..386274228 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/Messages.java
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/Messages.java
@@ -8,10 +8,9 @@
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
-package org.eclipse.eef.properties.ui.legacy;
+package org.eclipse.eef.properties.ui.legacy.internal;
-import org.eclipse.eef.properties.ui.legacy.I18N.TranslatableMessage;
-import org.eclipse.eef.properties.ui.legacy.internal.EEFPropertiesUiLegacyPlugin;
+import org.eclipse.eef.properties.ui.legacy.internal.I18N.TranslatableMessage;
/**
* Utility class used to hold the messages of the bundle.
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/eef2legacy/LegacyTabbedPropertySheetPage.java b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/eef2legacy/LegacyTabbedPropertySheetPage.java
index 9d8c860eb..9ba6a3cdf 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/eef2legacy/LegacyTabbedPropertySheetPage.java
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/eef2legacy/LegacyTabbedPropertySheetPage.java
@@ -20,8 +20,8 @@ import org.eclipse.eef.properties.ui.api.EEFTabContents;
import org.eclipse.eef.properties.ui.api.EEFTabbedPropertySheetPage;
import org.eclipse.eef.properties.ui.api.IEEFSection;
import org.eclipse.eef.properties.ui.api.IEEFTabDescriptor;
-import org.eclipse.eef.properties.ui.legacy.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.EEFPropertiesUiLegacyPlugin;
+import org.eclipse.eef.properties.ui.legacy.internal.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.legacy2eef.EEFLegacyTabSelectionListener;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.LabelProviderChangedEvent;
@@ -40,7 +40,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
/**
* Wraps an {@link EEFTabbedPropertySheetPage} to a {@link TabbedPropertySheetPage}.
- *
+ *
* @author mbats
*/
public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
@@ -48,7 +48,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* ControlsCreated field of the TabContents class.
*/
- private static final String CONTROLS_CREATED_FIELD = "controlsCreated";
+ private static final String CONTROLS_CREATED_FIELD = "controlsCreated"; //$NON-NLS-1$
/**
* The EEF tabbed property sheet page.
@@ -57,7 +57,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* The constructor.
- *
+ *
* @param eefTabbedPropertySheetPage
* EEF tabbed property sheet page
*/
@@ -69,7 +69,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#addTabSelectionListener(ITabSelectionListener)
*/
@Override
@@ -79,7 +79,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#createControl(Composite)
*/
@Override
@@ -89,7 +89,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#dispose()
*/
@Override
@@ -99,7 +99,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getActiveTabs()
*/
@Override
@@ -116,7 +116,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getControl()
*/
@Override
@@ -126,7 +126,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getCurrentTab()
*/
@Override
@@ -146,7 +146,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
try {
Field field = TabContents.class.getField(CONTROLS_CREATED_FIELD);
field.setAccessible(true);
- field.set(tabContents, controlsHaveBeenCreated);
+ field.set(tabContents, Boolean.valueOf(controlsHaveBeenCreated));
} catch (NoSuchFieldException e) {
String message = MessageFormat.format(Messages.Eef2LegacyWrapper_failedToAccessField, CONTROLS_CREATED_FIELD);
EEFPropertiesUiLegacyPlugin.getImplementation().logError(message, e);
@@ -166,7 +166,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getSelectedTab()
*/
@Override
@@ -176,7 +176,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getTitleImage(ISelection)
*/
@Override
@@ -188,7 +188,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getTitleText(ISelection)
*/
@Override
@@ -200,7 +200,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getWidgetFactory()
*/
@Override
@@ -210,7 +210,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#labelProviderChanged(LabelProviderChangedEvent)
*/
@Override
@@ -220,7 +220,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#overrideTabs()
*/
@Override
@@ -231,7 +231,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#refresh()
*/
@Override
@@ -241,7 +241,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#removeTabSelectionListener(ITabSelectionListener)
*/
@Override
@@ -251,7 +251,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#resizeScrolledComposite()
*/
@Override
@@ -261,7 +261,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#selectionChanged(IWorkbenchPart, ISelection)
*/
@Override
@@ -271,7 +271,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#setActionBars(IActionBars)
*/
@Override
@@ -281,7 +281,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#setFocus()
*/
@Override
@@ -291,7 +291,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#setSelectedTab(String)
*/
@Override
@@ -301,7 +301,7 @@ public class LegacyTabbedPropertySheetPage extends TabbedPropertySheetPage {
/**
* {@inheritDoc}
- *
+ *
* @see TabbedPropertySheetPage#getSite()
*/
@Override
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyContributorRegistryEventListener.java b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyContributorRegistryEventListener.java
index 84dfb3b32..e591f1c0d 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyContributorRegistryEventListener.java
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyContributorRegistryEventListener.java
@@ -13,8 +13,8 @@ package org.eclipse.eef.properties.ui.legacy.internal.extension.impl;
import java.text.MessageFormat;
import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.eef.properties.ui.legacy.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.EEFPropertiesUiLegacyPlugin;
+import org.eclipse.eef.properties.ui.legacy.internal.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.extension.AbstractRegistryEventListener;
/**
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertySectionsRegistryEventListener.java b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertySectionsRegistryEventListener.java
index 07eb4e62c..ed9fa68ec 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertySectionsRegistryEventListener.java
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertySectionsRegistryEventListener.java
@@ -14,8 +14,8 @@ import java.text.MessageFormat;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.eef.properties.ui.legacy.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.EEFPropertiesUiLegacyPlugin;
+import org.eclipse.eef.properties.ui.legacy.internal.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.extension.AbstractRegistryEventListener;
import org.eclipse.jface.viewers.IFilter;
import org.eclipse.ui.views.properties.tabbed.ISectionDescriptor;
diff --git a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyTabsRegistryEventListener.java b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyTabsRegistryEventListener.java
index 212a1171f..96a0e7cd8 100644
--- a/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyTabsRegistryEventListener.java
+++ b/plugins/org.eclipse.eef.properties.ui.legacy/src/org/eclipse/eef/properties/ui/legacy/internal/extension/impl/LegacyPropertyTabsRegistryEventListener.java
@@ -13,8 +13,8 @@ package org.eclipse.eef.properties.ui.legacy.internal.extension.impl;
import java.text.MessageFormat;
import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.eef.properties.ui.legacy.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.EEFPropertiesUiLegacyPlugin;
+import org.eclipse.eef.properties.ui.legacy.internal.Messages;
import org.eclipse.eef.properties.ui.legacy.internal.extension.AbstractRegistryEventListener;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.plugin.AbstractUIPlugin;
diff --git a/plugins/org.eclipse.eef.properties.ui/schema/eefTabDescriptorProvider.exsd b/plugins/org.eclipse.eef.properties.ui/schema/eefTabDescriptorProvider.exsd
index 67102b546..ae26ad7c9 100644
--- a/plugins/org.eclipse.eef.properties.ui/schema/eefTabDescriptorProvider.exsd
+++ b/plugins/org.eclipse.eef.properties.ui/schema/eefTabDescriptorProvider.exsd
@@ -6,7 +6,7 @@
<meta.schema plugin="org.eclipse.eef.properties.ui" id="eefTabDescriptorProvider" name="EEF Tab Descriptor Provider"/>
</appinfo>
<documentation>
- Describes a list of tabs that will be contributed to the EEF tabbed property sheet page.
+ This extension point allows the contribution of new tabs to the EEF tabbed property sheet page by implementing &lt;code&gt;org.eclipse.eef.properties.ui.api.IEEFTabDescriptorProvider&lt;/code&gt;. See &lt;code&gt;org.eclipse.eef.properties.ui.api.IEEFTabDescriptor&lt;/code&gt; and &lt;code&gt;org.eclipse.eef.properties.ui.api.IEEFSectionDescriptor&lt;/code&gt; for more details.
</documentation>
</annotation>
@@ -52,28 +52,28 @@
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
-
+ The identifier of the contribution.
</documentation>
</annotation>
</attribute>
<attribute name="label" type="string" use="required">
<annotation>
<documentation>
-
+ The label of the provider, this information may be used in the user interface and as such it may be visible by the end user. It should be internationalized if possible.
</documentation>
</annotation>
</attribute>
<attribute name="description" type="string" use="required">
<annotation>
<documentation>
-
+ The description of the provider, this information may be used in the user interface and as such it may be visible by the end user. It should be internationalized if possible.
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
-
+ The implementation of the IEEFTabDescriptorProvider.
</documentation>
<appinfo>
<meta.attribute kind="java" basedOn=":org.eclipse.eef.properties.ui.api.IEEFTabDescriptorProvider"/>
@@ -88,7 +88,7 @@
<meta.section type="since"/>
</appinfo>
<documentation>
- 1.6.0
+ This extension point has been available since Eclipse EEF 1.6.0 (Eclipse Neon release in June 2016).
</documentation>
</annotation>
@@ -97,7 +97,100 @@
<meta.section type="examples"/>
</appinfo>
<documentation>
- [Enter extension point usage example here.]
+ &lt;pre&gt;
+&lt;extension
+ point=&quot;org.eclipse.eef.properties.ui.eefTabDescriptorProvider&quot;&gt;
+ &lt;descriptor
+ class=&quot;org.eclipse.eef.sample.internal.extensions.SampleTabDescriptorProvider&quot;
+ description=&quot;Provides EEF Tab descriptors&quot;
+ id=&quot;org.eclipse.eef.sample.eefTabDescriptorProvider&quot;
+ label=&quot;EEF Sample Tab Descriptor Provider&quot;&gt;
+ &lt;/descriptor&gt;
+&lt;/extension&gt;
+&lt;/pre&gt;
+Example of IEEFTabDescriptorProvider contribution. In this example, we are providing a contribution used to add new tabs to the Properties view created by EEF. In order to link an editor with the EEF-based Properties view, you will first need to use the method &lt;code&gt;org.eclipse.core.runtime.IAdaptable.getAdapter(Class)&lt;/code&gt; of your editor to return an EEF-based property sheet page.
+&lt;pre&gt;
+@Override
+public Object getAdapter(@SuppressWarnings(&quot;rawtypes&quot;) Class type) {
+ if (type == IPropertySheetPage.class) {
+ // Must be unique for your editor, should be stored in a static constant
+ String contributorId = &quot;org.eclipse.eef.sample.contributorId&quot;;
+ return new EEFTabbedPropertySheetPage(type, contributorId);
+ }
+
+ return super.getAdapter(type);
+}
+&lt;/pre&gt;
+Once the Eclipse platform has retrieved this EEF-based tabbed property sheet page, EEF will look for the list of tabs to display in this property view using all its IEEFTabDescriptorProvider. Here is an implementation of an example:
+&lt;pre&gt;
+package org.eclipse.eef.sample.internal.extensions;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.eef.EEFViewDescription;
+import org.eclipse.eef.core.api.EEFExpressionUtils;
+import org.eclipse.eef.core.api.EEFPage;
+import org.eclipse.eef.core.api.EEFView;
+import org.eclipse.eef.core.api.EEFViewFactory;
+import org.eclipse.eef.core.api.EditingContextAdapter;
+import org.eclipse.eef.ide.ui.properties.api.EEFTabDescriptor;
+import org.eclipse.eef.properties.ui.api.IEEFTabDescriptor;
+import org.eclipse.eef.properties.ui.api.IEEFTabDescriptorProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.sirius.common.interpreter.api.IVariableManager;
+import org.eclipse.sirius.common.interpreter.api.VariableManagerFactory;
+import org.eclipse.ui.IWorkbenchPart;
+
+public class SampleTabDescriptorProvider implements IEEFTabDescriptorProvider {
+
+ @Override
+ public Collection&lt;IEEFTabDescriptor&gt; get(IWorkbenchPart part, ISelection selection) {
+ if (selection instanceof IStructuredSelection) {
+ IStructuredSelection structuredSelection = (IStructuredSelection) selection;
+ Object[] objects = structuredSelection.toArray();
+
+ // We will first retrieve the description of the user interface
+ EEFViewDescription viewDescription = this.getViewDescription(objects);
+ EEFView eefView = this.createEEFView(viewDescription, objects);
+
+ List&lt;IEEFTabDescriptor&gt; descriptors = new ArrayList&lt;IEEFTabDescriptor&gt;();
+ List&lt;EEFPage&gt; eefPages = eefView.getPages();
+ for (EEFPage eefPage : eefPages) {
+ descriptors.add(new EEFTabDescriptor(eefPage));
+ }
+ return descriptors;
+ }
+ return new ArrayList&lt;IEEFTabDescriptor&gt;();
+ }
+
+ private EEFViewDescription getViewDescription(Object object) {
+ // Programmatically create the description of the view or load it from an EMF model
+ return null;
+ }
+
+ private EEFView createEEFView(EEFViewDescription viewDescription, Object object) {
+ IVariableManager variableManager = new VariableManagerFactory().createVariableManager();
+ variableManager.put(EEFExpressionUtils.SELF, object);
+
+ // See the documentation regarding the interpreter and the editing context adapter
+ EEFView eefView = new EEFViewFactory().createEEFView(viewDescription, variableManager, new SampleInterpreter(), new SampleEditingContextAdapter(), object);
+ return eefView;
+ }
+}
+&lt;/pre&gt;
+This example requires at least the following dependencies:
+&lt;ul&gt;
+ &lt;li&gt;org.eclipse.sirius.common.interpreter&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef.core&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef.ide.ui.properties&lt;/li&gt;
+ &lt;li&gt;org.eclipse.eef.properties.ui&lt;/li&gt;
+ &lt;li&gt;org.eclipse.ui.workbench&lt;/li&gt;
+ &lt;li&gt;org.eclipse.jface&lt;/li&gt;
+&lt;/ul&gt;
</documentation>
</annotation>
@@ -106,7 +199,7 @@
<meta.section type="apiinfo"/>
</appinfo>
<documentation>
- [Enter API information here.]
+ The IEEFTabDescriptorProvider allows the contribution of a set of tabs for the EEF-based tabbed property sheet page.
</documentation>
</annotation>
@@ -115,9 +208,21 @@
<meta.section type="implementation"/>
</appinfo>
<documentation>
- [Enter information about supplied implementation of this extension point.]
+ EEF does not provide any implementation of this API. The Eclipse Sirius project provides a complex implementation of this API. To understand the basic concepts of this API, have a look at the example in this description first.
</documentation>
</annotation>
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2016 Obeo&lt;br/&gt;
+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
+&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
+ </documentation>
+ </annotation>
</schema>
diff --git a/plugins/org.eclipse.eef/.classpath b/plugins/org.eclipse.eef/.classpath
index 42271a8c6..6292ea58a 100644
--- a/plugins/org.eclipse.eef/.classpath
+++ b/plugins/org.eclipse.eef/.classpath
@@ -5,7 +5,6 @@
<attribute name="ignore_optional_problems" value="true"/>
</attributes>
</classpathentry>
- <classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
diff --git a/plugins/org.eclipse.eef/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef/META-INF/MANIFEST.MF
index 192a15f64..a6294a8c4 100644
--- a/plugins/org.eclipse.eef/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef/META-INF/MANIFEST.MF
@@ -8,7 +8,6 @@ Bundle-Vendor: %providerName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Export-Package: org.eclipse.eef;version="1.6.0",
- org.eclipse.eef.api;version="1.6.0",
org.eclipse.eef.impl;version="1.6.0",
org.eclipse.eef.util;version="1.6.0"
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.7.0,4.0.0)",
diff --git a/plugins/org.eclipse.eef/build.properties b/plugins/org.eclipse.eef/build.properties
index e3c94e06e..852e4c27a 100644
--- a/plugins/org.eclipse.eef/build.properties
+++ b/plugins/org.eclipse.eef/build.properties
@@ -1,4 +1,4 @@
-# Copyright (c) 2015 Obeo.
+# Copyright (c) 2015, 2016 Obeo.
# 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
@@ -12,7 +12,6 @@ bin.includes = .,\
plugin.properties,\
about.html
jars.compile.order = .
-source.. = src-gen/,\
- src/
+source.. = src-gen/
output.. = bin/
javacProjectSettings = true
diff --git a/plugins/org.eclipse.eef/src/org/eclipse/eef/api/IEEFViewDescriptionProvider.java b/plugins/org.eclipse.eef/src/org/eclipse/eef/api/IEEFViewDescriptionProvider.java
deleted file mode 100644
index fa0957357..000000000
--- a/plugins/org.eclipse.eef/src/org/eclipse/eef/api/IEEFViewDescriptionProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * 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:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.api;
-
-import org.eclipse.eef.EEFViewDescription;
-
-/**
- * This interface is used to provide an {@link EEFViewDescription}.
- *
- * @author sbegaudeau
- */
-public interface IEEFViewDescriptionProvider {
- /**
- * Returns an {@link EEFViewDescription}.
- *
- * @return An {@link EEFViewDescription}
- */
- EEFViewDescription get();
-}

Back to the top