Home » Modeling » EMF » Re: Deleting child reference deletes referent?
| |
Re: Deleting child reference deletes referent? [message #425451 is a reply to message #425449] |
Wed, 26 November 2008 15:23 |
Summer Messages: 7 Registered: July 2009 |
Junior Member |
|
|
Thanks for your answer,
I know,but the problem is I canŽt override it in the edit part ->
ItemProvider
I know that I need to force wrappers to be created (override
isWrappingNeeded), which looks like this:
protected Object createWrapper(EObject object, EStructuralFeature feature,
Object value, int index)
{
if (!isWrappingNeeded(object)) return value;
if (FeatureMapUtil.isFeatureMap(feature))
{
value = new
FeatureMapEntryWrapperItemProvider((FeatureMap.Entry)value, object,
(EAttribute)feature, index, adapterFactory, getResourceLocator());
}
else if (feature instanceof EAttribute)
{
value = new AttributeValueWrapperItemProvider(value, object,
(EAttribute)feature, index, adapterFactory, getResourceLocator());
}
else if (!((EReference)feature).isContainment())
{
value = new DelegatingWrapperItemProvider(value, object, feature,
index, adapterFactory);
}
return value;
}
but I donŽt know where to put this in my EMF project.
|
|
| | |
Re: Deleting child reference deletes referent? [message #425455 is a reply to message #425451] |
Wed, 26 November 2008 15:41 |
Ed Merks Messages: 33140 Registered: July 2009 |
Senior Member |
|
|
Summer,
Comments below.
Summer wrote:
> Thanks for your answer,
>
> I know,but the problem is I canŽt override it in the edit part ->
> ItemProvider
Why not?
>
> I know that I need to force wrappers to be created (override
> isWrappingNeeded), which looks like this:
>
> protected Object createWrapper(EObject object, EStructuralFeature
> feature, Object value, int index)
> {
> if (!isWrappingNeeded(object)) return value;
>
> if (FeatureMapUtil.isFeatureMap(feature))
> {
> value = new
> FeatureMapEntryWrapperItemProvider((FeatureMap.Entry)value, object,
> (EAttribute)feature, index, adapterFactory, getResourceLocator());
> }
> else if (feature instanceof EAttribute)
> {
> value = new AttributeValueWrapperItemProvider(value, object,
> (EAttribute)feature, index, adapterFactory, getResourceLocator());
> }
> else if (!((EReference)feature).isContainment())
> {
> value = new DelegatingWrapperItemProvider(value, object, feature,
> index, adapterFactory);
> }
>
> return value;
> }
>
>
> but I donŽt know where to put this in my EMF project.
In any generated AbcItemProviderAdapter, i.e., the one which has
children that are non-containment references that also appear elsewhere
in the tree, simply create a method that overrides isWrappingNeeded to
return true...
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
| | |
Goto Forum:
Current Time: Thu Apr 25 09:21:06 GMT 2024
Powered by FUDForum. Page generated in 0.04005 seconds
|