diff options
author | Nathalie Lepine | 2012-11-09 11:45:15 +0000 |
---|---|---|
committer | Nathalie Lepine | 2012-11-09 11:45:15 +0000 |
commit | 5941bab61238ee24e8dd49013197975ca99541e7 (patch) | |
tree | 32fbee58e404dc02f004e77a3742c6fd53bccc63 /plugins/org.eclipse.emf.eef.runtime | |
parent | 2f27d151f93750aa0611fc5a764936f243421080 (diff) | |
download | org.eclipse.eef-5941bab61238ee24e8dd49013197975ca99541e7.tar.gz org.eclipse.eef-5941bab61238ee24e8dd49013197975ca99541e7.tar.xz org.eclipse.eef-5941bab61238ee24e8dd49013197975ca99541e7.zip |
fixed isReadOnly with EStructuralFeature
fixed Services no more initialize in Activator
fixed settings accessible in PEComponent
regen non reg tests
Diffstat (limited to 'plugins/org.eclipse.emf.eef.runtime')
9 files changed, 21 insertions, 168 deletions
diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/EEFRuntimePlugin.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/EEFRuntimePlugin.java index ba240cc56..de0197098 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/EEFRuntimePlugin.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/EEFRuntimePlugin.java @@ -10,8 +10,6 @@ *******************************************************************************/ package org.eclipse.emf.eef.runtime; -import java.util.ArrayList; -import java.util.List; import java.util.Map; import org.eclipse.core.runtime.IStatus; @@ -21,14 +19,6 @@ import org.eclipse.emf.common.util.DiagnosticChain; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.util.Diagnostician; import org.eclipse.emf.edit.provider.ComposedAdapterFactory; -import org.eclipse.emf.eef.runtime.api.notify.IPropertiesEditionComponentListener; -import org.eclipse.emf.eef.runtime.api.providers.IReadOnlyPolicy; -import org.eclipse.emf.eef.runtime.impl.services.LockPolicyProviderService; -import org.eclipse.emf.eef.runtime.impl.services.PropertiesEditionComponentListenerProviderService; -import org.eclipse.emf.eef.runtime.impl.services.ReadOnlyPolicyProviderService; -import org.eclipse.emf.eef.runtime.impl.services.WizardOpeningPolicyProviderService; -import org.eclipse.emf.eef.runtime.policies.ILockPolicy; -import org.eclipse.emf.eef.runtime.ui.wizards.IWizardOpeningPolicy; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.swt.graphics.Image; @@ -61,27 +51,6 @@ public class EEFRuntimePlugin extends AbstractUIPlugin { private static ImageRegistry imageRegistry = null; /** - * Read only policies - */ - private List<IReadOnlyPolicy> readOnlyPolicies = null; - - /** - * Read only policies - */ - private List<IPropertiesEditionComponentListener> pecListeners = null; - - /** - * Lock policies - */ - private List<ILockPolicy> lockPolicies = null; - - /** - * Wizard opening policies - */ - private List<IWizardOpeningPolicy> wizardOpeningPolicies = null; - - - /** * @return the Image associated to the key */ public Image getRegisteredImage(String key) { @@ -125,10 +94,6 @@ public class EEFRuntimePlugin extends AbstractUIPlugin { } }; - readOnlyPolicies = new ArrayList<IReadOnlyPolicy>(1); - pecListeners = new ArrayList<IPropertiesEditionComponentListener>(1); - lockPolicies = new ArrayList<ILockPolicy>(1); - wizardOpeningPolicies = new ArrayList<IWizardOpeningPolicy>(1); } /** @@ -138,38 +103,6 @@ public class EEFRuntimePlugin extends AbstractUIPlugin { */ public void start(BundleContext context) throws Exception { super.start(context); - initReadOnlyPolicies(); - initPECListeners(); - initLockPolicies(); - initWizardOpeningPolicies(); - } - - /** - * Init read only policies : use the service and find the extension point - */ - private void initWizardOpeningPolicies() { - wizardOpeningPolicies.addAll(WizardOpeningPolicyProviderService.getInstance().getPolicies()); - } - - /** - * Init read only policies : use the service and find the extension point - */ - private void initReadOnlyPolicies() { - readOnlyPolicies.addAll(ReadOnlyPolicyProviderService.getInstance().getPolicies()); - } - - /** - * Init Properties Edition Component listeners : find the extension point - */ - private void initPECListeners() { - pecListeners.addAll(PropertiesEditionComponentListenerProviderService.getInstance().getListeners()); - } - - /** - * Init read only policies : use the service and find the extension point - */ - private void initLockPolicies() { - lockPolicies.addAll(LockPolicyProviderService.getInstance().getPolicies()); } /** @@ -181,10 +114,6 @@ public class EEFRuntimePlugin extends AbstractUIPlugin { plugin = null; if (imageRegistry != null) imageRegistry.dispose(); - wizardOpeningPolicies.clear(); - lockPolicies.clear(); - pecListeners.clear(); - readOnlyPolicies.clear(); super.stop(context); } @@ -255,33 +184,5 @@ public class EEFRuntimePlugin extends AbstractUIPlugin { public static ImageDescriptor getImageDescriptor(String key) { return AbstractUIPlugin.imageDescriptorFromPlugin(PLUGIN_ID, key); } - - /** - * @return the read only policies - */ - public List<IReadOnlyPolicy> getReadOnlyPolicies() { - return readOnlyPolicies; - } - - /** - * @return the properties edition component listeners - */ - public List<IPropertiesEditionComponentListener> getPecListeners() { - return pecListeners; - } - - /** - * @return the lock policies - */ - public List<ILockPolicy> getLockPolicies() { - return lockPolicies; - } - - /** - * @return the wizard opening policies - */ - public List<IWizardOpeningPolicy> getWizardOpeningPolicies() { - return wizardOpeningPolicies; - } } diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/notify/IPropertiesEditionPartListener.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/notify/IPropertiesEditionPartListener.java deleted file mode 100644 index 33d13a399..000000000 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/notify/IPropertiesEditionPartListener.java +++ /dev/null @@ -1,41 +0,0 @@ -/*******************************************************************************
- * Copyright (c) 2012 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.emf.eef.runtime.api.notify;
-
-import org.eclipse.emf.eef.runtime.api.parts.IPropertiesEditionPart;
-
-/**
- * Listener on Properties Edition Part : activated on
- * org.eclipse.emf.eef.runtime
- * .impl.components.SinglePartPropertiesEditingComponent.activate() and dispose
- * on org.eclipse.emf.eef.runtime.impl.components.
- * SinglePartPropertiesEditingComponent.dispose()
- *
- * @author <a href="mailto:nathalie.lepine@obeo.fr">Nathalie Lepine</a>
- *
- */
-public interface IPropertiesEditionPartListener {
-
- /**
- * @param part IPropertiesEditionPart
- *
- * Activate the listener
- */
- void activate(IPropertiesEditionPart part);
-
- /**
- * @param component IPropertiesEditionPart
- *
- * Dispose the listener
- */
- void deactivate(IPropertiesEditionPart part);
-
-}
diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/providers/IReadOnlyPolicy.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/providers/IReadOnlyPolicy.java index b9d6350a9..90f6aef0a 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/providers/IReadOnlyPolicy.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/api/providers/IReadOnlyPolicy.java @@ -23,10 +23,10 @@ public interface IReadOnlyPolicy { /**
* @param context
* Semantic EObject
- * @param widget
- * Widget
+ * @param eStructuralFeature
+ * EStructuralFeature
* @return if the widget is read only
*/
- boolean isReadOnly(EObject context, Object widget);
+ boolean isReadOnly(EObject context, Object eStructuralFeature);
}
diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/context/PropertiesEditingContext.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/context/PropertiesEditingContext.java index 59c22ccf9..2db740a24 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/context/PropertiesEditingContext.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/context/PropertiesEditingContext.java @@ -40,11 +40,6 @@ public interface PropertiesEditingContext { public EObject getEObject(); /** - * @return the settings to use. - */ - public List<EEFEditorSettings> getAllSettings(); - - /** * @return the resourceSet where to work. */ public ResourceSet getResourceSet(); @@ -69,9 +64,4 @@ public interface PropertiesEditingContext { */ public abstract void seteObject(EObject eObject); - /** - * set the settings to use. - */ - public void setAllSettings(List<EEFEditorSettings> settings); - } diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/components/SinglePartPropertiesEditingComponent.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/components/SinglePartPropertiesEditingComponent.java index a7dc69c31..618c6fdac 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/components/SinglePartPropertiesEditingComponent.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/components/SinglePartPropertiesEditingComponent.java @@ -25,6 +25,7 @@ import org.eclipse.emf.eef.runtime.context.PropertiesEditingContext; import org.eclipse.emf.eef.runtime.impl.notify.EEFLockNotification; import org.eclipse.emf.eef.runtime.impl.notify.PropertiesEditionEvent; import org.eclipse.emf.eef.runtime.impl.parts.CompositePropertiesEditionPart; +import org.eclipse.emf.eef.runtime.impl.services.PropertiesEditionComponentListenerProviderService; import org.eclipse.emf.eef.runtime.impl.services.PropertiesEditionPartProviderService; /** @@ -79,7 +80,7 @@ public abstract class SinglePartPropertiesEditingComponent extends StandardPrope ((ExtendedPropertiesEditingContext)editingContext).getResourceSetAdapter().addEditingSemanticListener(semanticAdapter); } } - for (IPropertiesEditionComponentListener listener : EEFRuntimePlugin.getDefault().getPecListeners()) { + for (IPropertiesEditionComponentListener listener : PropertiesEditionComponentListenerProviderService.getInstance().getListeners()) { listener.activate(this); } } @@ -96,7 +97,7 @@ public abstract class SinglePartPropertiesEditingComponent extends StandardPrope ((ExtendedPropertiesEditingContext)editingContext).getResourceSetAdapter().removeEditingSemanticListener(semanticAdapter); } } - for (IPropertiesEditionComponentListener listener : EEFRuntimePlugin.getDefault().getPecListeners()) { + for (IPropertiesEditionComponentListener listener : PropertiesEditionComponentListenerProviderService.getInstance().getListeners()) { listener.deactivate(this); } } diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/parts/CompositePropertiesEditionPart.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/parts/CompositePropertiesEditionPart.java index 6e84a32b0..8f7caba51 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/parts/CompositePropertiesEditionPart.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/parts/CompositePropertiesEditionPart.java @@ -17,11 +17,11 @@ import org.eclipse.emf.common.notify.AdapterFactory; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.ResourceSet; -import org.eclipse.emf.eef.runtime.EEFRuntimePlugin; import org.eclipse.emf.eef.runtime.api.component.IPropertiesEditionComponent; import org.eclipse.emf.eef.runtime.api.parts.IPropertiesEditionPart; import org.eclipse.emf.eef.runtime.api.providers.IReadOnlyPolicy; import org.eclipse.emf.eef.runtime.context.ExtendedPropertiesEditingContext; +import org.eclipse.emf.eef.runtime.impl.services.ReadOnlyPolicyProviderService; import org.eclipse.emf.eef.runtime.ui.parts.PartComposer; import org.eclipse.emf.eef.runtime.ui.widgets.SWTUtils; import org.eclipse.emf.eef.runtime.ui.widgets.settings.EEFEditorSettings; @@ -242,21 +242,21 @@ public abstract class CompositePropertiesEditionPart implements IPropertiesEditi } /** - * @param control - * Widget + * @param editorKey + * EditorKey * * @return if the widget is read only */ - public boolean isReadOnly(Object control, EObject context) { + public boolean isReadOnly(Object editorKey, EObject context) { EObject eObject = context; if (eObject == null) { eObject = propertiesEditionComponent.getEditingContext().getEObject(); } if (eObject != null) { - List<IReadOnlyPolicy> policies = EEFRuntimePlugin.getDefault().getReadOnlyPolicies(); + List<IReadOnlyPolicy> policies = ReadOnlyPolicyProviderService.getInstance().getPolicies(); for (IReadOnlyPolicy iReadOnlyPolicy : policies) { - if (iReadOnlyPolicy.isReadOnly(eObject, control)) { + if (iReadOnlyPolicy.isReadOnly(eObject, propertiesEditionComponent.associatedFeature(editorKey))) { return true; } } @@ -265,13 +265,13 @@ public abstract class CompositePropertiesEditionPart implements IPropertiesEditi } /** - * @param control - * Widget + * @param editorKey + * EditorKey * * @return if the widget is read only */ - public boolean isReadOnly(Object control) { - return isReadOnly(control, null); + public boolean isReadOnly(Object editorKey) { + return isReadOnly(editorKey, null); } /** diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/services/WizardOpeningPolicyProviderService.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/services/WizardOpeningPolicyProviderService.java index a2b5102a8..a25e208e6 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/services/WizardOpeningPolicyProviderService.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/impl/services/WizardOpeningPolicyProviderService.java @@ -129,7 +129,7 @@ public class WizardOpeningPolicyProviderService { } private static IWizardOpeningPolicy getWizardOpeningPolicy(EObject eObject) { - for (IWizardOpeningPolicy openingPolicy : EEFRuntimePlugin.getDefault().getWizardOpeningPolicies()) { + for (IWizardOpeningPolicy openingPolicy : WizardOpeningPolicyProviderService.getInstance().getPolicies()) { if (openingPolicy.provide(eObject)) { return openingPolicy; } diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java index 1756f379c..1ab51aabd 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/widgets/EObjectFlatComboViewer.java @@ -223,6 +223,7 @@ public class EObjectFlatComboViewer extends Composite implements ISelectionProvi @Override public void setEnabled(boolean enabled) { super.setEnabled(enabled); + selection.setEnabled(enabled); editer.setEnabled(enabled); } diff --git a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/wizards/PropertiesEditionWizard.java b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/wizards/PropertiesEditionWizard.java index 9225937fa..612d512ce 100644 --- a/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/wizards/PropertiesEditionWizard.java +++ b/plugins/org.eclipse.emf.eef.runtime/src/org/eclipse/emf/eef/runtime/ui/wizards/PropertiesEditionWizard.java @@ -29,6 +29,7 @@ import org.eclipse.emf.eef.runtime.context.PropertiesEditingContext; import org.eclipse.emf.eef.runtime.context.impl.DomainPropertiesEditionContext; import org.eclipse.emf.eef.runtime.context.impl.EObjectPropertiesEditionContext; import org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext; +import org.eclipse.emf.eef.runtime.impl.services.LockPolicyProviderService; import org.eclipse.emf.eef.runtime.impl.services.PropertiesContextService; import org.eclipse.emf.eef.runtime.impl.utils.EEFUtils; import org.eclipse.emf.eef.runtime.policies.ILockPolicy; @@ -187,7 +188,7 @@ public class PropertiesEditionWizard extends Wizard { if (input instanceof EObjectPropertiesEditionContext) { IPropertiesEditionComponent propertiesEditingComponent = ((EObjectPropertiesEditionContext)input).getPropertiesEditingComponent(); if (propertiesEditingComponent != null) { - for (ILockPolicy lockPolicies : EEFRuntimePlugin.getDefault().getLockPolicies()) { + for (ILockPolicy lockPolicies : LockPolicyProviderService.getInstance().getPolicies()) { lockPolicies.release(propertiesEditingComponent); } } @@ -211,7 +212,7 @@ public class PropertiesEditionWizard extends Wizard { if (input instanceof EObjectPropertiesEditionContext) { IPropertiesEditionComponent propertiesEditingComponent = ((EObjectPropertiesEditionContext)input).getPropertiesEditingComponent(); if (propertiesEditingComponent != null) { - for (ILockPolicy lockPolicies : EEFRuntimePlugin.getDefault().getLockPolicies()) { + for (ILockPolicy lockPolicies : LockPolicyProviderService.getInstance().getPolicies()) { lockPolicies.lock(propertiesEditingComponent); } } |