diff options
| author | Mélanie Bats | 2016-01-28 08:54:35 +0000 |
|---|---|---|
| committer | Pierre-Charles David | 2016-02-02 10:43:43 +0000 |
| commit | 935544fc9588ebb2dbebcf40676fe4faff4a15a8 (patch) | |
| tree | 64aad762e3db6defe0faa32b39183d4d9255a141 | |
| parent | a8a12d81f6285dacc5048fcf97612686eae712e3 (diff) | |
| download | org.eclipse.sirius-935544fc9588ebb2dbebcf40676fe4faff4a15a8.tar.gz org.eclipse.sirius-935544fc9588ebb2dbebcf40676fe4faff4a15a8.tar.xz org.eclipse.sirius-935544fc9588ebb2dbebcf40676fe4faff4a15a8.zip | |
[482528] Contribute select description to the view description
A new SelectDescription is defined in properties.ecore. The
SelectDescription is a new kind of widget which describes a combo in the
properties view.
Bug: 482528
Change-Id: If85a38d82278511109c65b3fc5d3a7e8ddc3e621
Signed-off-by: Mélanie Bats <melanie.bats@obeo.fr>
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
45 files changed, 2267 insertions, 23 deletions
diff --git a/incubation/org.eclipse.sirius.editor.properties/META-INF/MANIFEST.MF b/incubation/org.eclipse.sirius.editor.properties/META-INF/MANIFEST.MF index 35dcecf691..ca33c961f8 100644 --- a/incubation/org.eclipse.sirius.editor.properties/META-INF/MANIFEST.MF +++ b/incubation/org.eclipse.sirius.editor.properties/META-INF/MANIFEST.MF @@ -4,7 +4,7 @@ Bundle-Name: Properties Bundle-SymbolicName: org.eclipse.sirius.editor.properties;singleton:=true Bundle-Version: 1.0.0.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-1.7 -Require-Bundle: com.google.guava;bundle-version="[11.0.2,16.0)", +Require-Bundle: com.google.guava;bundle-version="[11.0.2,16.0)", org.eclipse.core.runtime;bundle-version="3.8.0", org.eclipse.emf.edit.ui;bundle-version="2.3.1", org.eclipse.sirius.common;bundle-version="2.0.0", @@ -14,4 +14,5 @@ Require-Bundle: com.google.guava;bundle-version="[11.0.2,16.0)", org.eclipse.sirius.editor;bundle-version="2.0.0", org.eclipse.ui.ide;bundle-version="3.5.200", org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.300", - org.eclipse.ui.workbench.texteditor;bundle-version="3.8.0" + org.eclipse.ui.workbench.texteditor;bundle-version="3.8.0", + org.eclipse.sirius.ext.swt;bundle-version="4.0.0" diff --git a/incubation/org.eclipse.sirius.editor.properties/help/contexts.xml b/incubation/org.eclipse.sirius.editor.properties/help/contexts.xml index 22e453c4af..5897e2c6ab 100644 --- a/incubation/org.eclipse.sirius.editor.properties/help/contexts.xml +++ b/incubation/org.eclipse.sirius.editor.properties/help/contexts.xml @@ -66,4 +66,60 @@ </description> </context> + <context id="LabelDescription"> + <description> + + + + <!-- Start of user code LabelDescription description --> + + <!-- End of user code LabelDescription description --> + + </description> + </context> + <context id="DynamicMappingFor"> + <description> + + + + <!-- Start of user code DynamicMappingFor description --> + + <!-- End of user code DynamicMappingFor description --> + + </description> + </context> + <context id="DynamicMappingSwitch"> + <description> + + + + <!-- Start of user code DynamicMappingSwitch description --> + + <!-- End of user code DynamicMappingSwitch description --> + + </description> + </context> + <context id="DynamicMappingCase"> + <description> + + + + <!-- Start of user code DynamicMappingCase description --> + + <!-- End of user code DynamicMappingCase description --> + + </description> + </context> + <context id="SelectDescription"> + <description> + Represents a collection of candidates used to edit a single or multi-valued property. + + + + <!-- Start of user code SelectDescription description --> + + <!-- End of user code SelectDescription description --> + + </description> + </context> </contexts>
\ No newline at end of file diff --git a/incubation/org.eclipse.sirius.editor.properties/plugin.xml b/incubation/org.eclipse.sirius.editor.properties/plugin.xml index 651a35d54e..23cd7c3324 100644 --- a/incubation/org.eclipse.sirius.editor.properties/plugin.xml +++ b/incubation/org.eclipse.sirius.editor.properties/plugin.xml @@ -19,6 +19,58 @@ <extension point="org.eclipse.ui.views.properties.tabbed.propertySections"> <propertySections contributorId="org.eclipse.sirius.editor.editorPlugin.SiriusEditorContributor"> <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.selectdescription.SelectDescriptionCandidateDisplayExpressionPropertySection" + id="properties.section.selectDescription.CandidateDisplayExpression" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.selectdescription.SelectDescriptionCandidateDisplayExpressionFilter" + afterSection="properties.section.selectDescription.CandidatesExpression" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.SelectDescription"/> + </propertySection> + <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.selectdescription.SelectDescriptionCandidatesExpressionPropertySection" + id="properties.section.selectDescription.CandidatesExpression" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.selectdescription.SelectDescriptionCandidatesExpressionFilter" + afterSection="properties.section.selectDescription.ValueExpression" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.SelectDescription"/> + </propertySection> + <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.selectdescription.SelectDescriptionValueExpressionPropertySection" + id="properties.section.selectDescription.ValueExpression" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.selectdescription.SelectDescriptionValueExpressionFilter" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.SelectDescription"/> + </propertySection> + <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.dynamicmappingcase.DynamicMappingCaseCaseExpressionPropertySection" + id="properties.section.dynamicMappingCase.CaseExpression" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.dynamicmappingcase.DynamicMappingCaseCaseExpressionFilter" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.DynamicMappingCase"/> + </propertySection> + <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.dynamicmappingswitch.DynamicMappingSwitchSwitchExpressionPropertySection" + id="properties.section.dynamicMappingSwitch.SwitchExpression" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.dynamicmappingswitch.DynamicMappingSwitchSwitchExpressionFilter" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.DynamicMappingSwitch"/> + </propertySection> + <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.dynamicmappingfor.DynamicMappingForDomainClassExpressionPropertySection" + id="properties.section.dynamicMappingFor.DomainClassExpression" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.dynamicmappingfor.DynamicMappingForDomainClassExpressionFilter" + afterSection="properties.section.dynamicMappingFor.Iterator" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.DynamicMappingFor"/> + </propertySection> + <propertySection + class="org.eclipse.sirius.properties.editor.properties.sections.properties.dynamicmappingfor.DynamicMappingForIteratorPropertySection" + id="properties.section.dynamicMappingFor.Iterator" + filter="org.eclipse.sirius.properties.editor.properties.filters.properties.dynamicmappingfor.DynamicMappingForIteratorFilter" + tab="viewpoint.tab.general"> + <input type="org.eclipse.sirius.properties.DynamicMappingFor"/> + </propertySection> + <propertySection class="org.eclipse.sirius.properties.editor.properties.sections.properties.textdescription.TextDescriptionValueExpressionPropertySection" id="properties.section.textDescription.ValueExpression" filter="org.eclipse.sirius.properties.editor.properties.filters.properties.textdescription.TextDescriptionValueExpressionFilter" diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingcase/DynamicMappingCaseCaseExpressionFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingcase/DynamicMappingCaseCaseExpressionFilter.java new file mode 100644 index 0000000000..3b87578d3b --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingcase/DynamicMappingCaseCaseExpressionFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.dynamicmappingcase; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the caseExpression property section. + */ +public class DynamicMappingCaseCaseExpressionFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingCase_CaseExpression(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.DynamicMappingCase; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingfor/DynamicMappingForDomainClassExpressionFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingfor/DynamicMappingForDomainClassExpressionFilter.java new file mode 100644 index 0000000000..44e21659f7 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingfor/DynamicMappingForDomainClassExpressionFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.dynamicmappingfor; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the domainClassExpression property section. + */ +public class DynamicMappingForDomainClassExpressionFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingFor_DomainClassExpression(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.DynamicMappingFor; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingfor/DynamicMappingForIteratorFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingfor/DynamicMappingForIteratorFilter.java new file mode 100644 index 0000000000..2d7763528e --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingfor/DynamicMappingForIteratorFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.dynamicmappingfor; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the iterator property section. + */ +public class DynamicMappingForIteratorFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingFor_Iterator(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.DynamicMappingFor; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingswitch/DynamicMappingSwitchSwitchExpressionFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingswitch/DynamicMappingSwitchSwitchExpressionFilter.java new file mode 100644 index 0000000000..7fbe191b2d --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/dynamicmappingswitch/DynamicMappingSwitchSwitchExpressionFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.dynamicmappingswitch; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the switchExpression property section. + */ +public class DynamicMappingSwitchSwitchExpressionFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingSwitch_SwitchExpression(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.DynamicMappingSwitch; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionCandidateDisplayExpressionFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionCandidateDisplayExpressionFilter.java new file mode 100644 index 0000000000..eb11ad82d9 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionCandidateDisplayExpressionFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.selectdescription; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the candidateDisplayExpression property section. + */ +public class SelectDescriptionCandidateDisplayExpressionFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getSelectDescription_CandidateDisplayExpression(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.SelectDescription; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionCandidatesExpressionFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionCandidatesExpressionFilter.java new file mode 100644 index 0000000000..f43381306a --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionCandidatesExpressionFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.selectdescription; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the candidatesExpression property section. + */ +public class SelectDescriptionCandidatesExpressionFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getSelectDescription_CandidatesExpression(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.SelectDescription; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionValueExpressionFilter.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionValueExpressionFilter.java new file mode 100644 index 0000000000..5487f853bb --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/filters/properties/selectdescription/SelectDescriptionValueExpressionFilter.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.filters.properties.selectdescription; + +// Start of user code specific imports + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.sirius.editor.properties.filters.common.ViewpointPropertyFilter; +import org.eclipse.sirius.properties.PropertiesPackage; + +// End of user code specific imports + +/** + * A filter for the valueExpression property section. + */ +public class SelectDescriptionValueExpressionFilter extends ViewpointPropertyFilter { + + /** + * {@inheritDoc} + */ + protected EStructuralFeature getFeature() { + return PropertiesPackage.eINSTANCE.getSelectDescription_ValueExpression(); + } + + /** + * {@inheritDoc} + */ + protected boolean isRightInputType(Object arg0) { + return arg0 instanceof org.eclipse.sirius.properties.SelectDescription; + } + + // Start of user code user methods + + // End of user code user methods + +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingcase/DynamicMappingCaseCaseExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingcase/DynamicMappingCaseCaseExpressionPropertySection.java new file mode 100644 index 0000000000..c2e6424015 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingcase/DynamicMappingCaseCaseExpressionPropertySection.java @@ -0,0 +1,92 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.dynamicmappingcase; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextPropertySection; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the caseExpression property of a DynamicMappingCase object. + */ +public class DynamicMappingCaseCaseExpressionPropertySection extends AbstractTextPropertySection { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "CaseExpression"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + "*:"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingCase_CaseExpression(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + + nameLabel.setFont(SiriusEditor.getFontRegistry().get("required")); + + // Start of user code create controls + + // End of user code create controls + + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingfor/DynamicMappingForDomainClassExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingfor/DynamicMappingForDomainClassExpressionPropertySection.java new file mode 100644 index 0000000000..2a0cc0fa87 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingfor/DynamicMappingForDomainClassExpressionPropertySection.java @@ -0,0 +1,93 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.dynamicmappingfor; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextPropertySection; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the domainClassExpression property of a DynamicMappingFor + * object. + */ +public class DynamicMappingForDomainClassExpressionPropertySection extends AbstractTextPropertySection { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "DomainClassExpression"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + "*:"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingFor_DomainClassExpression(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + + nameLabel.setFont(SiriusEditor.getFontRegistry().get("required")); + + // Start of user code create controls + + // End of user code create controls + + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingfor/DynamicMappingForIteratorPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingfor/DynamicMappingForIteratorPropertySection.java new file mode 100644 index 0000000000..43eb681296 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingfor/DynamicMappingForIteratorPropertySection.java @@ -0,0 +1,92 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.dynamicmappingfor; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextPropertySection; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the iterator property of a DynamicMappingFor object. + */ +public class DynamicMappingForIteratorPropertySection extends AbstractTextPropertySection { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "Iterator"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + "*:"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingFor_Iterator(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + + nameLabel.setFont(SiriusEditor.getFontRegistry().get("required")); + + // Start of user code create controls + + // End of user code create controls + + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingswitch/DynamicMappingSwitchSwitchExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingswitch/DynamicMappingSwitchSwitchExpressionPropertySection.java new file mode 100644 index 0000000000..facfff19fc --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/dynamicmappingswitch/DynamicMappingSwitchSwitchExpressionPropertySection.java @@ -0,0 +1,92 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.dynamicmappingswitch; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextPropertySection; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the switchExpression property of a DynamicMappingSwitch object. + */ +public class DynamicMappingSwitchSwitchExpressionPropertySection extends AbstractTextPropertySection { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "SwitchExpression"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + "*:"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getDynamicMappingSwitch_SwitchExpression(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + + nameLabel.setFont(SiriusEditor.getFontRegistry().get("required")); + + // Start of user code create controls + + // End of user code create controls + + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionLabelExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionLabelExpressionPropertySection.java index 008a7be5f5..99b3b861ce 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionLabelExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionLabelExpressionPropertySection.java @@ -29,7 +29,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; /** * A section for the labelExpression property of a GroupDescription object. */ -public class GroupDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class GroupDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionSemanticCandidateExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionSemanticCandidateExpressionPropertySection.java index b8c56c8702..7e62e76a3b 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionSemanticCandidateExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/groupdescription/GroupDescriptionSemanticCandidateExpressionPropertySection.java @@ -30,7 +30,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; * A section for the semanticCandidateExpression property of a GroupDescription * object. */ -public class GroupDescriptionSemanticCandidateExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class GroupDescriptionSemanticCandidateExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionLabelExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionLabelExpressionPropertySection.java index bb8ce5e908..bc2d667eb1 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionLabelExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionLabelExpressionPropertySection.java @@ -29,7 +29,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; /** * A section for the labelExpression property of a PageDescription object. */ -public class PageDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class PageDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionSemanticCandidateExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionSemanticCandidateExpressionPropertySection.java index 5946279e09..6df9a2a8b4 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionSemanticCandidateExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/pagedescription/PageDescriptionSemanticCandidateExpressionPropertySection.java @@ -30,7 +30,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; * A section for the semanticCandidateExpression property of a PageDescription * object. */ -public class PageDescriptionSemanticCandidateExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class PageDescriptionSemanticCandidateExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionCandidateDisplayExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionCandidateDisplayExpressionPropertySection.java new file mode 100644 index 0000000000..ac8cf049c5 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionCandidateDisplayExpressionPropertySection.java @@ -0,0 +1,115 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.selectdescription; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextWithButtonPropertySection; +import org.eclipse.sirius.editor.tools.api.assist.TypeContentProposalProvider; +import org.eclipse.sirius.editor.tools.internal.presentation.TextWithContentProposalDialog; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.sirius.ui.tools.api.assist.ContentProposalClient; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the candidateDisplayExpression property of a SelectDescription + * object. + */ +public class SelectDescriptionCandidateDisplayExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "CandidateDisplayExpression"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + ":"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getSelectDescription_CandidateDisplayExpression(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + /* + * We set the color as it's a InterpretedExpression + */ + text.setBackground(SiriusEditor.getColorRegistry().get("yellow")); + + TypeContentProposalProvider.bindPluginsCompletionProcessors(this, text); + + // Start of user code create controls + + // End of user code create controls + + } + + @Override + protected SelectionListener createButtonListener() { + return new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + TextWithContentProposalDialog dialog = new TextWithContentProposalDialog(composite.getShell(), SelectDescriptionCandidateDisplayExpressionPropertySection.this, text.getText()); + dialog.open(); + text.setText(dialog.getResult()); + handleTextModified(); + } + }; + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionCandidatesExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionCandidatesExpressionPropertySection.java new file mode 100644 index 0000000000..703463a785 --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionCandidatesExpressionPropertySection.java @@ -0,0 +1,115 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.selectdescription; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextWithButtonPropertySection; +import org.eclipse.sirius.editor.tools.api.assist.TypeContentProposalProvider; +import org.eclipse.sirius.editor.tools.internal.presentation.TextWithContentProposalDialog; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.sirius.ui.tools.api.assist.ContentProposalClient; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the candidatesExpression property of a SelectDescription + * object. + */ +public class SelectDescriptionCandidatesExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "CandidatesExpression"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + ":"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getSelectDescription_CandidatesExpression(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + /* + * We set the color as it's a InterpretedExpression + */ + text.setBackground(SiriusEditor.getColorRegistry().get("yellow")); + + TypeContentProposalProvider.bindPluginsCompletionProcessors(this, text); + + // Start of user code create controls + + // End of user code create controls + + } + + @Override + protected SelectionListener createButtonListener() { + return new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + TextWithContentProposalDialog dialog = new TextWithContentProposalDialog(composite.getShell(), SelectDescriptionCandidatesExpressionPropertySection.this, text.getText()); + dialog.open(); + text.setText(dialog.getResult()); + handleTextModified(); + } + }; + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionValueExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionValueExpressionPropertySection.java new file mode 100644 index 0000000000..4fea002a0f --- /dev/null +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/selectdescription/SelectDescriptionValueExpressionPropertySection.java @@ -0,0 +1,114 @@ +/******************************************************************************* + * 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.sirius.properties.editor.properties.sections.properties.selectdescription; + +// Start of user code imports + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.sirius.editor.editorPlugin.SiriusEditor; +import org.eclipse.sirius.editor.properties.sections.common.AbstractTextWithButtonPropertySection; +import org.eclipse.sirius.editor.tools.api.assist.TypeContentProposalProvider; +import org.eclipse.sirius.editor.tools.internal.presentation.TextWithContentProposalDialog; +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.sirius.ui.tools.api.assist.ContentProposalClient; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; + +// End of user code imports + +/** + * A section for the valueExpression property of a SelectDescription object. + */ +public class SelectDescriptionValueExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() + */ + protected String getDefaultLabelText() { + return "ValueExpression"; //$NON-NLS-1$ + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getLabelText() + */ + protected String getLabelText() { + String labelText; + labelText = super.getLabelText() + ":"; //$NON-NLS-1$ + // Start of user code get label text + + // End of user code get label text + return labelText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getFeature() + */ + public EAttribute getFeature() { + return PropertiesPackage.eINSTANCE.getSelectDescription_ValueExpression(); + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getFeatureValue(String) + */ + protected Object getFeatureValue(String newText) { + return newText; + } + + /** + * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#isEqual(String) + */ + protected boolean isEqual(String newText) { + return getFeatureAsText().equals(newText); + } + + /** + * {@inheritDoc} + */ + public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) { + super.createControls(parent, tabbedPropertySheetPage); + /* + * We set the color as it's a InterpretedExpression + */ + text.setBackground(SiriusEditor.getColorRegistry().get("yellow")); + + TypeContentProposalProvider.bindPluginsCompletionProcessors(this, text); + + // Start of user code create controls + + // End of user code create controls + + } + + @Override + protected SelectionListener createButtonListener() { + return new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + TextWithContentProposalDialog dialog = new TextWithContentProposalDialog(composite.getShell(), SelectDescriptionValueExpressionPropertySection.this, text.getText()); + dialog.open(); + text.setText(dialog.getResult()); + handleTextModified(); + } + }; + } + + /** + * {@inheritDoc} + */ + protected String getPropertyDescription() { + return ""; + } + + // Start of user code user operations + + // End of user code user operations +} diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/textdescription/TextDescriptionValueExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/textdescription/TextDescriptionValueExpressionPropertySection.java index 8e49b3506e..5187d02647 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/textdescription/TextDescriptionValueExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/textdescription/TextDescriptionValueExpressionPropertySection.java @@ -29,7 +29,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; /** * A section for the valueExpression property of a TextDescription object. */ -public class TextDescriptionValueExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class TextDescriptionValueExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/viewextensiondescription/ViewExtensionDescriptionLabelExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/viewextensiondescription/ViewExtensionDescriptionLabelExpressionPropertySection.java index 97a6d5b5b6..ac9b431015 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/viewextensiondescription/ViewExtensionDescriptionLabelExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/viewextensiondescription/ViewExtensionDescriptionLabelExpressionPropertySection.java @@ -30,7 +30,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; * A section for the labelExpression property of a ViewExtensionDescription * object. */ -public class ViewExtensionDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class ViewExtensionDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/widgetdescription/WidgetDescriptionLabelExpressionPropertySection.java b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/widgetdescription/WidgetDescriptionLabelExpressionPropertySection.java index 3f716fef29..d5ecc1830e 100644 --- a/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/widgetdescription/WidgetDescriptionLabelExpressionPropertySection.java +++ b/incubation/org.eclipse.sirius.editor.properties/src-gen/org/eclipse/sirius/properties/editor/properties/sections/properties/widgetdescription/WidgetDescriptionLabelExpressionPropertySection.java @@ -29,7 +29,7 @@ import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; /** * A section for the labelExpression property of a WidgetDescription object. */ -public class WidgetDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection /* implements ContentProposalClient */ { +public class WidgetDescriptionLabelExpressionPropertySection extends AbstractTextWithButtonPropertySection implements ContentProposalClient { /** * @see org.eclipse.sirius.properties.editor.properties.sections.AbstractTextWithButtonPropertySection#getDefaultLabelText() diff --git a/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateContainerDescription_widgets_SelectDescription.gif b/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateContainerDescription_widgets_SelectDescription.gif Binary files differnew file mode 100644 index 0000000000..6560457c10 --- /dev/null +++ b/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateContainerDescription_widgets_SelectDescription.gif diff --git a/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateDynamicMappingCase_widget_SelectDescription.gif b/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateDynamicMappingCase_widget_SelectDescription.gif Binary files differnew file mode 100644 index 0000000000..ac131b19ec --- /dev/null +++ b/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateDynamicMappingCase_widget_SelectDescription.gif diff --git a/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateSelectDescription_initialOperation_InitialOperation.gif b/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateSelectDescription_initialOperation_InitialOperation.gif Binary files differnew file mode 100644 index 0000000000..159fb27cec --- /dev/null +++ b/incubation/org.eclipse.sirius.properties.edit/icons/full/ctool16/CreateSelectDescription_initialOperation_InitialOperation.gif diff --git a/incubation/org.eclipse.sirius.properties.edit/icons/full/obj16/SelectDescription.gif b/incubation/org.eclipse.sirius.properties.edit/icons/full/obj16/SelectDescription.gif Binary files differnew file mode 100644 index 0000000000..9250fecbff --- /dev/null +++ b/incubation/org.eclipse.sirius.properties.edit/icons/full/obj16/SelectDescription.gif diff --git a/incubation/org.eclipse.sirius.properties.edit/plugin.properties b/incubation/org.eclipse.sirius.properties.edit/plugin.properties index 7c84624b1b..caacb4a544 100644 --- a/incubation/org.eclipse.sirius.properties.edit/plugin.properties +++ b/incubation/org.eclipse.sirius.properties.edit/plugin.properties @@ -54,6 +54,11 @@ _UI_DynamicMappingSwitch_type = Dynamic Mapping Switch _UI_DynamicMappingCase_type = Dynamic Mapping Case _UI_ContainerDescription_dynamicMappings_feature = Dynamic Mappings _UI_DynamicMappingFor_iterator_feature = Iterator +_UI_SelectDescription_type = Select Description +_UI_SelectDescription_valueExpression_feature = Value Expression +_UI_SelectDescription_initialOperation_feature = Initial Operation +_UI_SelectDescription_candidatesExpression_feature = Candidates Expression +_UI_SelectDescription_candidateDisplayExpression_feature = Candidate Display Expression _UI_DynamicMappingFor_domainClassExpression_feature = Domain Class Expression _UI_DynamicMappingFor_switch_feature = Switch _UI_DynamicMappingSwitch_switchExpression_feature = Switch Expression diff --git a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/ContainerDescriptionItemProvider.java b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/ContainerDescriptionItemProvider.java index b1bc8e7fe1..2f1f7ce48f 100644 --- a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/ContainerDescriptionItemProvider.java +++ b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/ContainerDescriptionItemProvider.java @@ -202,6 +202,11 @@ public class ContainerDescriptionItemProvider newChildDescriptors.add (createChildParameter + (PropertiesPackage.Literals.CONTAINER_DESCRIPTION__WIDGETS, + PropertiesFactory.eINSTANCE.createSelectDescription())); + + newChildDescriptors.add + (createChildParameter (PropertiesPackage.Literals.CONTAINER_DESCRIPTION__DYNAMIC_MAPPINGS, PropertiesFactory.eINSTANCE.createDynamicMappingFor())); } diff --git a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/DynamicMappingCaseItemProvider.java b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/DynamicMappingCaseItemProvider.java index faee405bb2..a0269421a7 100644 --- a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/DynamicMappingCaseItemProvider.java +++ b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/DynamicMappingCaseItemProvider.java @@ -197,6 +197,11 @@ public class DynamicMappingCaseItemProvider (createChildParameter (PropertiesPackage.Literals.DYNAMIC_MAPPING_CASE__WIDGET, PropertiesFactory.eINSTANCE.createLabelDescription())); + + newChildDescriptors.add + (createChildParameter + (PropertiesPackage.Literals.DYNAMIC_MAPPING_CASE__WIDGET, + PropertiesFactory.eINSTANCE.createSelectDescription())); } /** diff --git a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/PropertiesItemProviderAdapterFactory.java b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/PropertiesItemProviderAdapterFactory.java index 2a46b1e242..86d5e59777 100644 --- a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/PropertiesItemProviderAdapterFactory.java +++ b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/PropertiesItemProviderAdapterFactory.java @@ -305,6 +305,29 @@ public class PropertiesItemProviderAdapterFactory extends PropertiesAdapterFacto } /** + * This keeps track of the one adapter used for all {@link org.eclipse.sirius.properties.SelectDescription} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SelectDescriptionItemProvider selectDescriptionItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.sirius.properties.SelectDescription}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createSelectDescriptionAdapter() { + if (selectDescriptionItemProvider == null) { + selectDescriptionItemProvider = new SelectDescriptionItemProvider(this); + } + + return selectDescriptionItemProvider; + } + + /** * This returns the root adapter factory that contains this factory. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -412,6 +435,7 @@ public class PropertiesItemProviderAdapterFactory extends PropertiesAdapterFacto if (dynamicMappingForItemProvider != null) dynamicMappingForItemProvider.dispose(); if (dynamicMappingSwitchItemProvider != null) dynamicMappingSwitchItemProvider.dispose(); if (dynamicMappingCaseItemProvider != null) dynamicMappingCaseItemProvider.dispose(); + if (selectDescriptionItemProvider != null) selectDescriptionItemProvider.dispose(); } /** diff --git a/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/SelectDescriptionItemProvider.java b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/SelectDescriptionItemProvider.java new file mode 100644 index 0000000000..d1a085c5e8 --- /dev/null +++ b/incubation/org.eclipse.sirius.properties.edit/src-gen/org/eclipse/sirius/properties/provider/SelectDescriptionItemProvider.java @@ -0,0 +1,231 @@ +/** + * 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.sirius.properties.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.sirius.properties.SelectDescription; + +import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; + +/** + * This is the item provider adapter for a {@link org.eclipse.sirius.properties.SelectDescription} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class SelectDescriptionItemProvider extends WidgetDescriptionItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SelectDescriptionItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addValueExpressionPropertyDescriptor(object); + addCandidatesExpressionPropertyDescriptor(object); + addCandidateDisplayExpressionPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Value Expression feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addValueExpressionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SelectDescription_valueExpression_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SelectDescription_valueExpression_feature", "_UI_SelectDescription_type"), + PropertiesPackage.Literals.SELECT_DESCRIPTION__VALUE_EXPRESSION, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Candidates Expression feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCandidatesExpressionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SelectDescription_candidatesExpression_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SelectDescription_candidatesExpression_feature", "_UI_SelectDescription_type"), + PropertiesPackage.Literals.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This adds a property descriptor for the Candidate Display Expression feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCandidateDisplayExpressionPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_SelectDescription_candidateDisplayExpression_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_SelectDescription_candidateDisplayExpression_feature", "_UI_SelectDescription_type"), + PropertiesPackage.Literals.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION, + true, + false, + false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(PropertiesPackage.Literals.SELECT_DESCRIPTION__INITIAL_OPERATION); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns SelectDescription.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/SelectDescription")); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText(Object object) { + String label = ((SelectDescription)object).getIdentifier(); + return label == null || label.length() == 0 ? + getString("_UI_SelectDescription_type") : + getString("_UI_SelectDescription_type") + " " + label; + } + + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(SelectDescription.class)) { + case PropertiesPackage.SELECT_DESCRIPTION__VALUE_EXPRESSION: + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION: + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add + (createChildParameter + (PropertiesPackage.Literals.SELECT_DESCRIPTION__INITIAL_OPERATION, + ToolFactory.eINSTANCE.createInitialOperation())); + } + +} diff --git a/incubation/org.eclipse.sirius.properties/model/properties.ecore b/incubation/org.eclipse.sirius.properties/model/properties.ecore index 35453f902a..db50ccdb90 100644 --- a/incubation/org.eclipse.sirius.properties/model/properties.ecore +++ b/incubation/org.eclipse.sirius.properties/model/properties.ecore @@ -74,4 +74,32 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="widget" lowerBound="1" eType="#//WidgetDescription" containment="true"/> </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="SelectDescription" eSuperTypes="#//WidgetDescription"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Represents a collection of candidates used to edit a single or multi-valued property."/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="valueExpression" eType="ecore:EDataType ../../org.eclipse.sirius/model/viewpoint.ecore#//description/InterpretedExpression"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The initial selected values of the combo."/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="initialOperation" lowerBound="1" + eType="ecore:EClass ../../org.eclipse.sirius/model/viewpoint.ecore#//description/tool/InitialOperation" + containment="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Defines the behavior executed when the end-user updates the value of the combo."/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="candidatesExpression" eType="ecore:EDataType ../../org.eclipse.sirius/model/viewpoint.ecore#//description/InterpretedExpression"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Defines the various proposals available."/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="candidateDisplayExpression" + eType="ecore:EDataType ../../org.eclipse.sirius/model/viewpoint.ecore#//description/InterpretedExpression"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Indicates how to display the input value."/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> </ecore:EPackage> diff --git a/incubation/org.eclipse.sirius.properties/model/properties.genmodel b/incubation/org.eclipse.sirius.properties/model/properties.genmodel index 1027c7c8e3..0238dbebe7 100644 --- a/incubation/org.eclipse.sirius.properties/model/properties.genmodel +++ b/incubation/org.eclipse.sirius.properties/model/properties.genmodel @@ -36,6 +36,7 @@ <genClasses ecoreClass="properties.ecore#//ContainerDescription"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//ContainerDescription/identifier"/> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//ContainerDescription/widgets"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//ContainerDescription/dynamicMappings"/> </genClasses> <genClasses image="false" ecoreClass="properties.ecore#//WidgetDescription"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//WidgetDescription/identifier"/> @@ -46,5 +47,24 @@ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//TextDescription/initialOperation"/> </genClasses> <genClasses ecoreClass="properties.ecore#//LabelDescription"/> + <genClasses ecoreClass="properties.ecore#//DynamicMappingFor"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//DynamicMappingFor/iterator"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//DynamicMappingFor/domainClassExpression"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//DynamicMappingFor/switch"/> + </genClasses> + <genClasses ecoreClass="properties.ecore#//DynamicMappingSwitch"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//DynamicMappingSwitch/switchExpression"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//DynamicMappingSwitch/cases"/> + </genClasses> + <genClasses ecoreClass="properties.ecore#//DynamicMappingCase"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//DynamicMappingCase/caseExpression"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//DynamicMappingCase/widget"/> + </genClasses> + <genClasses ecoreClass="properties.ecore#//SelectDescription"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//SelectDescription/valueExpression"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference properties.ecore#//SelectDescription/initialOperation"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//SelectDescription/candidatesExpression"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute properties.ecore#//SelectDescription/candidateDisplayExpression"/> + </genClasses> </genPackages> </genmodel:GenModel> diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesFactory.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesFactory.java index 6711358ba0..ca2297109f 100644 --- a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesFactory.java +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesFactory.java @@ -112,6 +112,15 @@ public interface PropertiesFactory extends EFactory { DynamicMappingCase createDynamicMappingCase(); /** + * Returns a new object of class '<em>Select Description</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Select Description</em>'. + * @generated + */ + SelectDescription createSelectDescription(); + + /** * Returns the package supported by this factory. * <!-- begin-user-doc --> * <!-- end-user-doc --> diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesPackage.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesPackage.java index f613a49e2f..6a7f5bde62 100644 --- a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesPackage.java +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/PropertiesPackage.java @@ -566,6 +566,80 @@ public interface PropertiesPackage extends EPackage { /** + * The meta object id for the '{@link org.eclipse.sirius.properties.impl.SelectDescriptionImpl <em>Select Description</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.sirius.properties.impl.SelectDescriptionImpl + * @see org.eclipse.sirius.properties.impl.PropertiesPackageImpl#getSelectDescription() + * @generated + */ + int SELECT_DESCRIPTION = 10; + + /** + * The feature id for the '<em><b>Identifier</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION__IDENTIFIER = WIDGET_DESCRIPTION__IDENTIFIER; + + /** + * The feature id for the '<em><b>Label Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION__LABEL_EXPRESSION = WIDGET_DESCRIPTION__LABEL_EXPRESSION; + + /** + * The feature id for the '<em><b>Value Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION__VALUE_EXPRESSION = WIDGET_DESCRIPTION_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Initial Operation</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION__INITIAL_OPERATION = WIDGET_DESCRIPTION_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Candidates Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION__CANDIDATES_EXPRESSION = WIDGET_DESCRIPTION_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Candidate Display Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION = WIDGET_DESCRIPTION_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Select Description</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SELECT_DESCRIPTION_FEATURE_COUNT = WIDGET_DESCRIPTION_FEATURE_COUNT + 4; + + + /** * Returns the meta object for class '{@link org.eclipse.sirius.properties.ViewExtensionDescription <em>View Extension Description</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -996,6 +1070,60 @@ public interface PropertiesPackage extends EPackage { EReference getDynamicMappingCase_Widget(); /** + * Returns the meta object for class '{@link org.eclipse.sirius.properties.SelectDescription <em>Select Description</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Select Description</em>'. + * @see org.eclipse.sirius.properties.SelectDescription + * @generated + */ + EClass getSelectDescription(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.sirius.properties.SelectDescription#getValueExpression <em>Value Expression</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Value Expression</em>'. + * @see org.eclipse.sirius.properties.SelectDescription#getValueExpression() + * @see #getSelectDescription() + * @generated + */ + EAttribute getSelectDescription_ValueExpression(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.sirius.properties.SelectDescription#getInitialOperation <em>Initial Operation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Initial Operation</em>'. + * @see org.eclipse.sirius.properties.SelectDescription#getInitialOperation() + * @see #getSelectDescription() + * @generated + */ + EReference getSelectDescription_InitialOperation(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.sirius.properties.SelectDescription#getCandidatesExpression <em>Candidates Expression</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Candidates Expression</em>'. + * @see org.eclipse.sirius.properties.SelectDescription#getCandidatesExpression() + * @see #getSelectDescription() + * @generated + */ + EAttribute getSelectDescription_CandidatesExpression(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.sirius.properties.SelectDescription#getCandidateDisplayExpression <em>Candidate Display Expression</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Candidate Display Expression</em>'. + * @see org.eclipse.sirius.properties.SelectDescription#getCandidateDisplayExpression() + * @see #getSelectDescription() + * @generated + */ + EAttribute getSelectDescription_CandidateDisplayExpression(); + + /** * Returns the factory that creates the instances of the model. * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1357,6 +1485,48 @@ public interface PropertiesPackage extends EPackage { */ EReference DYNAMIC_MAPPING_CASE__WIDGET = eINSTANCE.getDynamicMappingCase_Widget(); + /** + * The meta object literal for the '{@link org.eclipse.sirius.properties.impl.SelectDescriptionImpl <em>Select Description</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.sirius.properties.impl.SelectDescriptionImpl + * @see org.eclipse.sirius.properties.impl.PropertiesPackageImpl#getSelectDescription() + * @generated + */ + EClass SELECT_DESCRIPTION = eINSTANCE.getSelectDescription(); + + /** + * The meta object literal for the '<em><b>Value Expression</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SELECT_DESCRIPTION__VALUE_EXPRESSION = eINSTANCE.getSelectDescription_ValueExpression(); + + /** + * The meta object literal for the '<em><b>Initial Operation</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference SELECT_DESCRIPTION__INITIAL_OPERATION = eINSTANCE.getSelectDescription_InitialOperation(); + + /** + * The meta object literal for the '<em><b>Candidates Expression</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SELECT_DESCRIPTION__CANDIDATES_EXPRESSION = eINSTANCE.getSelectDescription_CandidatesExpression(); + + /** + * The meta object literal for the '<em><b>Candidate Display Expression</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION = eINSTANCE.getSelectDescription_CandidateDisplayExpression(); + } } //PropertiesPackage diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/SelectDescription.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/SelectDescription.java new file mode 100644 index 0000000000..3815cb7ded --- /dev/null +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/SelectDescription.java @@ -0,0 +1,140 @@ +/** + * 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.sirius.properties; + +import org.eclipse.sirius.viewpoint.description.tool.InitialOperation; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Select Description</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Represents a collection of candidates used to edit a single or multi-valued property. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.sirius.properties.SelectDescription#getValueExpression <em>Value Expression</em>}</li> + * <li>{@link org.eclipse.sirius.properties.SelectDescription#getInitialOperation <em>Initial Operation</em>}</li> + * <li>{@link org.eclipse.sirius.properties.SelectDescription#getCandidatesExpression <em>Candidates Expression</em>}</li> + * <li>{@link org.eclipse.sirius.properties.SelectDescription#getCandidateDisplayExpression <em>Candidate Display Expression</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.sirius.properties.PropertiesPackage#getSelectDescription() + * @model + * @generated + */ +public interface SelectDescription extends WidgetDescription { + /** + * Returns the value of the '<em><b>Value Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The initial selected values of the combo. + * <!-- end-model-doc --> + * @return the value of the '<em>Value Expression</em>' attribute. + * @see #setValueExpression(String) + * @see org.eclipse.sirius.properties.PropertiesPackage#getSelectDescription_ValueExpression() + * @model dataType="org.eclipse.sirius.viewpoint.description.InterpretedExpression" + * @generated + */ + String getValueExpression(); + + /** + * Sets the value of the '{@link org.eclipse.sirius.properties.SelectDescription#getValueExpression <em>Value Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Value Expression</em>' attribute. + * @see #getValueExpression() + * @generated + */ + void setValueExpression(String value); + + /** + * Returns the value of the '<em><b>Initial Operation</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Defines the behavior executed when the end-user updates the value of the combo. + * <!-- end-model-doc --> + * @return the value of the '<em>Initial Operation</em>' containment reference. + * @see #setInitialOperation(InitialOperation) + * @see org.eclipse.sirius.properties.PropertiesPackage#getSelectDescription_InitialOperation() + * @model containment="true" required="true" + * @generated + */ + InitialOperation getInitialOperation(); + + /** + * Sets the value of the '{@link org.eclipse.sirius.properties.SelectDescription#getInitialOperation <em>Initial Operation</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Initial Operation</em>' containment reference. + * @see #getInitialOperation() + * @generated + */ + void setInitialOperation(InitialOperation value); + + /** + * Returns the value of the '<em><b>Candidates Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Defines the various proposals available. + * <!-- end-model-doc --> + * @return the value of the '<em>Candidates Expression</em>' attribute. + * @see #setCandidatesExpression(String) + * @see org.eclipse.sirius.properties.PropertiesPackage#getSelectDescription_CandidatesExpression() + * @model dataType="org.eclipse.sirius.viewpoint.description.InterpretedExpression" + * @generated + */ + String getCandidatesExpression(); + + /** + * Sets the value of the '{@link org.eclipse.sirius.properties.SelectDescription#getCandidatesExpression <em>Candidates Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Candidates Expression</em>' attribute. + * @see #getCandidatesExpression() + * @generated + */ + void setCandidatesExpression(String value); + + /** + * Returns the value of the '<em><b>Candidate Display Expression</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Indicates how to display the input value. + * <!-- end-model-doc --> + * @return the value of the '<em>Candidate Display Expression</em>' attribute. + * @see #setCandidateDisplayExpression(String) + * @see org.eclipse.sirius.properties.PropertiesPackage#getSelectDescription_CandidateDisplayExpression() + * @model dataType="org.eclipse.sirius.viewpoint.description.InterpretedExpression" + * @generated + */ + String getCandidateDisplayExpression(); + + /** + * Sets the value of the '{@link org.eclipse.sirius.properties.SelectDescription#getCandidateDisplayExpression <em>Candidate Display Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Candidate Display Expression</em>' attribute. + * @see #getCandidateDisplayExpression() + * @generated + */ + void setCandidateDisplayExpression(String value); + +} // SelectDescription diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesFactoryImpl.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesFactoryImpl.java index 518da62798..77679c8180 100644 --- a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesFactoryImpl.java +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesFactoryImpl.java @@ -74,6 +74,7 @@ public class PropertiesFactoryImpl extends EFactoryImpl implements PropertiesFac case PropertiesPackage.DYNAMIC_MAPPING_FOR: return createDynamicMappingFor(); case PropertiesPackage.DYNAMIC_MAPPING_SWITCH: return createDynamicMappingSwitch(); case PropertiesPackage.DYNAMIC_MAPPING_CASE: return createDynamicMappingCase(); + case PropertiesPackage.SELECT_DESCRIPTION: return createSelectDescription(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } @@ -174,6 +175,16 @@ public class PropertiesFactoryImpl extends EFactoryImpl implements PropertiesFac * <!-- end-user-doc --> * @generated */ + public SelectDescription createSelectDescription() { + SelectDescriptionImpl selectDescription = new SelectDescriptionImpl(); + return selectDescription; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ public PropertiesPackage getPropertiesPackage() { return (PropertiesPackage)getEPackage(); } diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesPackageImpl.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesPackageImpl.java index 2bac2d71ff..56be628ba8 100644 --- a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesPackageImpl.java +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/PropertiesPackageImpl.java @@ -28,6 +28,7 @@ import org.eclipse.sirius.properties.LabelDescription; import org.eclipse.sirius.properties.PageDescription; import org.eclipse.sirius.properties.PropertiesFactory; import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.sirius.properties.SelectDescription; import org.eclipse.sirius.properties.TextDescription; import org.eclipse.sirius.properties.ViewExtensionDescription; import org.eclipse.sirius.properties.WidgetDescription; @@ -116,6 +117,13 @@ public class PropertiesPackageImpl extends EPackageImpl implements PropertiesPac private EClass dynamicMappingCaseEClass = null; /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass selectDescriptionEClass = null; + + /** * Creates an instance of the model <b>Package</b>, registered with * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package * package URI value. @@ -544,6 +552,51 @@ public class PropertiesPackageImpl extends EPackageImpl implements PropertiesPac * <!-- end-user-doc --> * @generated */ + public EClass getSelectDescription() { + return selectDescriptionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSelectDescription_ValueExpression() { + return (EAttribute)selectDescriptionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getSelectDescription_InitialOperation() { + return (EReference)selectDescriptionEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSelectDescription_CandidatesExpression() { + return (EAttribute)selectDescriptionEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getSelectDescription_CandidateDisplayExpression() { + return (EAttribute)selectDescriptionEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ public PropertiesFactory getPropertiesFactory() { return (PropertiesFactory)getEFactoryInstance(); } @@ -616,6 +669,12 @@ public class PropertiesPackageImpl extends EPackageImpl implements PropertiesPac dynamicMappingCaseEClass = createEClass(DYNAMIC_MAPPING_CASE); createEAttribute(dynamicMappingCaseEClass, DYNAMIC_MAPPING_CASE__CASE_EXPRESSION); createEReference(dynamicMappingCaseEClass, DYNAMIC_MAPPING_CASE__WIDGET); + + selectDescriptionEClass = createEClass(SELECT_DESCRIPTION); + createEAttribute(selectDescriptionEClass, SELECT_DESCRIPTION__VALUE_EXPRESSION); + createEReference(selectDescriptionEClass, SELECT_DESCRIPTION__INITIAL_OPERATION); + createEAttribute(selectDescriptionEClass, SELECT_DESCRIPTION__CANDIDATES_EXPRESSION); + createEAttribute(selectDescriptionEClass, SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION); } /** @@ -654,6 +713,7 @@ public class PropertiesPackageImpl extends EPackageImpl implements PropertiesPac viewExtensionDescriptionEClass.getESuperTypes().add(theDescriptionPackage.getExtension()); textDescriptionEClass.getESuperTypes().add(this.getWidgetDescription()); labelDescriptionEClass.getESuperTypes().add(this.getWidgetDescription()); + selectDescriptionEClass.getESuperTypes().add(this.getWidgetDescription()); // Initialize classes and features; add operations and parameters initEClass(viewExtensionDescriptionEClass, ViewExtensionDescription.class, "ViewExtensionDescription", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -706,6 +766,12 @@ public class PropertiesPackageImpl extends EPackageImpl implements PropertiesPac initEAttribute(getDynamicMappingCase_CaseExpression(), theEcorePackage.getEString(), "caseExpression", null, 1, 1, DynamicMappingCase.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getDynamicMappingCase_Widget(), this.getWidgetDescription(), null, "widget", null, 1, 1, DynamicMappingCase.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(selectDescriptionEClass, SelectDescription.class, "SelectDescription", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getSelectDescription_ValueExpression(), theDescriptionPackage.getInterpretedExpression(), "valueExpression", null, 0, 1, SelectDescription.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getSelectDescription_InitialOperation(), theToolPackage.getInitialOperation(), null, "initialOperation", null, 1, 1, SelectDescription.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSelectDescription_CandidatesExpression(), theDescriptionPackage.getInterpretedExpression(), "candidatesExpression", null, 0, 1, SelectDescription.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getSelectDescription_CandidateDisplayExpression(), theDescriptionPackage.getInterpretedExpression(), "candidateDisplayExpression", null, 0, 1, SelectDescription.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + // Create resource createResource(eNS_URI); } diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/SelectDescriptionImpl.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/SelectDescriptionImpl.java new file mode 100644 index 0000000000..122c5a42a2 --- /dev/null +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/impl/SelectDescriptionImpl.java @@ -0,0 +1,361 @@ +/** + * 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.sirius.properties.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.sirius.properties.PropertiesPackage; +import org.eclipse.sirius.properties.SelectDescription; + +import org.eclipse.sirius.viewpoint.description.tool.InitialOperation; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Select Description</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.sirius.properties.impl.SelectDescriptionImpl#getValueExpression <em>Value Expression</em>}</li> + * <li>{@link org.eclipse.sirius.properties.impl.SelectDescriptionImpl#getInitialOperation <em>Initial Operation</em>}</li> + * <li>{@link org.eclipse.sirius.properties.impl.SelectDescriptionImpl#getCandidatesExpression <em>Candidates Expression</em>}</li> + * <li>{@link org.eclipse.sirius.properties.impl.SelectDescriptionImpl#getCandidateDisplayExpression <em>Candidate Display Expression</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class SelectDescriptionImpl extends WidgetDescriptionImpl implements SelectDescription { + /** + * The default value of the '{@link #getValueExpression() <em>Value Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getValueExpression() + * @generated + * @ordered + */ + protected static final String VALUE_EXPRESSION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValueExpression() <em>Value Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getValueExpression() + * @generated + * @ordered + */ + protected String valueExpression = VALUE_EXPRESSION_EDEFAULT; + + /** + * The cached value of the '{@link #getInitialOperation() <em>Initial Operation</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInitialOperation() + * @generated + * @ordered + */ + protected InitialOperation initialOperation; + + /** + * The default value of the '{@link #getCandidatesExpression() <em>Candidates Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCandidatesExpression() + * @generated + * @ordered + */ + protected static final String CANDIDATES_EXPRESSION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCandidatesExpression() <em>Candidates Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCandidatesExpression() + * @generated + * @ordered + */ + protected String candidatesExpression = CANDIDATES_EXPRESSION_EDEFAULT; + + /** + * The default value of the '{@link #getCandidateDisplayExpression() <em>Candidate Display Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCandidateDisplayExpression() + * @generated + * @ordered + */ + protected static final String CANDIDATE_DISPLAY_EXPRESSION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCandidateDisplayExpression() <em>Candidate Display Expression</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCandidateDisplayExpression() + * @generated + * @ordered + */ + protected String candidateDisplayExpression = CANDIDATE_DISPLAY_EXPRESSION_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SelectDescriptionImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return PropertiesPackage.Literals.SELECT_DESCRIPTION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getValueExpression() { + return valueExpression; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setValueExpression(String newValueExpression) { + String oldValueExpression = valueExpression; + valueExpression = newValueExpression; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, PropertiesPackage.SELECT_DESCRIPTION__VALUE_EXPRESSION, oldValueExpression, valueExpression)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public InitialOperation getInitialOperation() { + return initialOperation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetInitialOperation(InitialOperation newInitialOperation, NotificationChain msgs) { + InitialOperation oldInitialOperation = initialOperation; + initialOperation = newInitialOperation; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION, oldInitialOperation, newInitialOperation); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setInitialOperation(InitialOperation newInitialOperation) { + if (newInitialOperation != initialOperation) { + NotificationChain msgs = null; + if (initialOperation != null) + msgs = ((InternalEObject)initialOperation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION, null, msgs); + if (newInitialOperation != null) + msgs = ((InternalEObject)newInitialOperation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION, null, msgs); + msgs = basicSetInitialOperation(newInitialOperation, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION, newInitialOperation, newInitialOperation)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getCandidatesExpression() { + return candidatesExpression; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCandidatesExpression(String newCandidatesExpression) { + String oldCandidatesExpression = candidatesExpression; + candidatesExpression = newCandidatesExpression; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, PropertiesPackage.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION, oldCandidatesExpression, candidatesExpression)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getCandidateDisplayExpression() { + return candidateDisplayExpression; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCandidateDisplayExpression(String newCandidateDisplayExpression) { + String oldCandidateDisplayExpression = candidateDisplayExpression; + candidateDisplayExpression = newCandidateDisplayExpression; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, PropertiesPackage.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION, oldCandidateDisplayExpression, candidateDisplayExpression)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION: + return basicSetInitialOperation(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case PropertiesPackage.SELECT_DESCRIPTION__VALUE_EXPRESSION: + return getValueExpression(); + case PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION: + return getInitialOperation(); + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION: + return getCandidatesExpression(); + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION: + return getCandidateDisplayExpression(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case PropertiesPackage.SELECT_DESCRIPTION__VALUE_EXPRESSION: + setValueExpression((String)newValue); + return; + case PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION: + setInitialOperation((InitialOperation)newValue); + return; + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION: + setCandidatesExpression((String)newValue); + return; + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION: + setCandidateDisplayExpression((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case PropertiesPackage.SELECT_DESCRIPTION__VALUE_EXPRESSION: + setValueExpression(VALUE_EXPRESSION_EDEFAULT); + return; + case PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION: + setInitialOperation((InitialOperation)null); + return; + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION: + setCandidatesExpression(CANDIDATES_EXPRESSION_EDEFAULT); + return; + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION: + setCandidateDisplayExpression(CANDIDATE_DISPLAY_EXPRESSION_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case PropertiesPackage.SELECT_DESCRIPTION__VALUE_EXPRESSION: + return VALUE_EXPRESSION_EDEFAULT == null ? valueExpression != null : !VALUE_EXPRESSION_EDEFAULT.equals(valueExpression); + case PropertiesPackage.SELECT_DESCRIPTION__INITIAL_OPERATION: + return initialOperation != null; + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATES_EXPRESSION: + return CANDIDATES_EXPRESSION_EDEFAULT == null ? candidatesExpression != null : !CANDIDATES_EXPRESSION_EDEFAULT.equals(candidatesExpression); + case PropertiesPackage.SELECT_DESCRIPTION__CANDIDATE_DISPLAY_EXPRESSION: + return CANDIDATE_DISPLAY_EXPRESSION_EDEFAULT == null ? candidateDisplayExpression != null : !CANDIDATE_DISPLAY_EXPRESSION_EDEFAULT.equals(candidateDisplayExpression); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (valueExpression: "); + result.append(valueExpression); + result.append(", candidatesExpression: "); + result.append(candidatesExpression); + result.append(", candidateDisplayExpression: "); + result.append(candidateDisplayExpression); + result.append(')'); + return result.toString(); + } + +} //SelectDescriptionImpl diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesAdapterFactory.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesAdapterFactory.java index 8a2d72326f..7add736092 100644 --- a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesAdapterFactory.java +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesAdapterFactory.java @@ -119,6 +119,10 @@ public class PropertiesAdapterFactory extends AdapterFactoryImpl { return createDynamicMappingCaseAdapter(); } @Override + public Adapter caseSelectDescription(SelectDescription object) { + return createSelectDescriptionAdapter(); + } + @Override public Adapter caseExtension(Extension object) { return createExtensionAdapter(); } @@ -283,6 +287,20 @@ public class PropertiesAdapterFactory extends AdapterFactoryImpl { } /** + * Creates a new adapter for an object of class '{@link org.eclipse.sirius.properties.SelectDescription <em>Select Description</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.sirius.properties.SelectDescription + * @generated + */ + public Adapter createSelectDescriptionAdapter() { + return null; + } + + /** * Creates a new adapter for an object of class '{@link org.eclipse.sirius.viewpoint.description.Extension <em>Extension</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; diff --git a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesSwitch.java b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesSwitch.java index ee822b44fc..d31368a396 100644 --- a/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesSwitch.java +++ b/incubation/org.eclipse.sirius.properties/src-gen/org/eclipse/sirius/properties/util/PropertiesSwitch.java @@ -157,6 +157,13 @@ public class PropertiesSwitch<T> { if (result == null) result = defaultCase(theEObject); return result; } + case PropertiesPackage.SELECT_DESCRIPTION: { + SelectDescription selectDescription = (SelectDescription)theEObject; + T result = caseSelectDescription(selectDescription); + if (result == null) result = caseWidgetDescription(selectDescription); + if (result == null) result = defaultCase(theEObject); + return result; + } default: return defaultCase(theEObject); } } @@ -312,6 +319,21 @@ public class PropertiesSwitch<T> { } /** + * Returns the result of interpreting the object as an instance of '<em>Select Description</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Select Description</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSelectDescription(SelectDescription object) { + return null; + } + + /** * Returns the result of interpreting the object as an instance of '<em>Extension</em>'. * <!-- begin-user-doc --> * This implementation returns null; diff --git a/incubation/org.eclipse.sirius.sample.properties/description/project.odesign b/incubation/org.eclipse.sirius.sample.properties/description/project.odesign index 8c8c5ff460..4023f1042f 100644 --- a/incubation/org.eclipse.sirius.sample.properties/description/project.odesign +++ b/incubation/org.eclipse.sirius.sample.properties/description/project.odesign @@ -92,21 +92,13 @@ domainClass="ecore.EClass" semanticCandidateExpression="var:self" groups="//@extensions.0/@groups.1"/> - <pages identifier="All EClass attributes" labelExpression="aql:self.name" - domainClass="ecore.EAttribute" - semanticCandidateExpression="aql:self.eContents(ecore::EAttribute)" - groups="//@extensions.0/@groups.0"/> - <pages identifier="Single EAttribute" - labelExpression="aql:self.name" - domainClass="ecore.EAttribute" + domainClass="ecore.EClass" semanticCandidateExpression="var:self" groups="//@extensions.0/@groups.0"/> <groups - identifier="EAttribute properties" - labelExpression="" - domainClass="ecore.EAttribute" - semanticCandidateExpression=""> + identifier="EClass properties" + domainClass="ecore.EClass"> <container> <widgets xsi:type="properties:TextDescription" @@ -121,9 +113,9 @@ </initialOperation> </widgets> <widgets - xsi:type="properties:LabelDescription" - identifier="Label" - labelExpression="feature:name"/> + xsi:type="properties:SelectDescription" + identifier="Reference" + labelExpression="Reference" </container> </groups> <groups diff --git a/incubation/org.eclipse.sirius.ui.properties/src/org/eclipse/sirius/ui/properties/internal/tabprovider/ViewDescriptionConverter.java b/incubation/org.eclipse.sirius.ui.properties/src/org/eclipse/sirius/ui/properties/internal/tabprovider/ViewDescriptionConverter.java index 9cf6e1dc8d..f64131645a 100644 --- a/incubation/org.eclipse.sirius.ui.properties/src/org/eclipse/sirius/ui/properties/internal/tabprovider/ViewDescriptionConverter.java +++ b/incubation/org.eclipse.sirius.ui.properties/src/org/eclipse/sirius/ui/properties/internal/tabprovider/ViewDescriptionConverter.java @@ -19,6 +19,7 @@ import org.eclipse.eef.EEFDynamicMappingSwitch; import org.eclipse.eef.EEFGroupDescription; import org.eclipse.eef.EEFLabelDescription; import org.eclipse.eef.EEFPageDescription; +import org.eclipse.eef.EEFSelectDescription; import org.eclipse.eef.EEFTextDescription; import org.eclipse.eef.EEFViewDescription; import org.eclipse.eef.EEFWidgetDescription; @@ -30,6 +31,7 @@ import org.eclipse.sirius.properties.DynamicMappingSwitch; import org.eclipse.sirius.properties.GroupDescription; import org.eclipse.sirius.properties.LabelDescription; import org.eclipse.sirius.properties.PageDescription; +import org.eclipse.sirius.properties.SelectDescription; import org.eclipse.sirius.properties.TextDescription; import org.eclipse.sirius.properties.WidgetDescription; import org.eclipse.sirius.viewpoint.description.tool.InitialOperation; @@ -106,6 +108,8 @@ public class ViewDescriptionConverter { containerDesc.getWidgets().add(createEEFTextDescription((TextDescription) widgetDescription)); } else if (widgetDescription instanceof LabelDescription) { containerDesc.getWidgets().add(createEEFLabelDescription((LabelDescription) widgetDescription)); + } else if (widgetDescription instanceof SelectDescription) { + containerDesc.getWidgets().add(createEEFSelectDescription((SelectDescription) widgetDescription)); } EEFWidgetDescription description = this.createEEFWidgetDescription(widgetDescription); @@ -172,4 +176,14 @@ public class ViewDescriptionConverter { return eefLabelDescription; } + private EEFSelectDescription createEEFSelectDescription(SelectDescription selectDescription) { + EEFSelectDescription eefSelectDescription = EefFactory.eINSTANCE.createEEFSelectDescription(); + + eefSelectDescription.setIdentifier(selectDescription.getIdentifier()); + eefSelectDescription.setLabelExpression(selectDescription.getLabelExpression()); + eefSelectDescription.setValueExpression(selectDescription.getValueExpression()); + eefSelectDescription.setCandidatesExpression(selectDescription.getCandidatesExpression()); + eefSelectDescription.setCandidateDisplayExpression(selectDescription.getCandidateDisplayExpression()); + return eefSelectDescription; + } } |
