You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
By default EMF represents model in a tree structure based on containment relations.
Section 19.2.3 of the EMF book explains how to add additional "virtual" nodes in the tree structure. This is particularly useful for model elements with several containment relations: by default all children are represented under the parent and it can be difficult to know through which containment a child is contained. Adding these virtual nodes improves the UI without polluting the semantic model underneath.
The way EMF supports this is by having ItemProvider.getChildren(Object) return a collection made not only of semantic elements (EObjects) but also of custom ItemProviders.
It seems to me that org.eclipse.sirius.ui.tools.internal.views.common.SessionWrapperContentProvider does not support this use case, because in doGetChildren(Object), ItemProviders do not fall in any of the expected cases, so we end up never calling them to retrieve their children.
I think a fix might be to move line 143: result.addAll(getWrappedChildren(parentElement));
outside of the current conditional, because the call to getWrappedChildren(Object) does not require an EObject.
The text was updated successfully, but these errors were encountered:
By default EMF represents model in a tree structure based on containment relations.
Section 19.2.3 of the EMF book explains how to add additional "virtual" nodes in the tree structure. This is particularly useful for model elements with several containment relations: by default all children are represented under the parent and it can be difficult to know through which containment a child is contained. Adding these virtual nodes improves the UI without polluting the semantic model underneath.
The way EMF supports this is by having ItemProvider.getChildren(Object) return a collection made not only of semantic elements (EObjects) but also of custom ItemProviders.
It seems to me that
org.eclipse.sirius.ui.tools.internal.views.common.SessionWrapperContentProvider
does not support this use case, because indoGetChildren(Object)
, ItemProviders do not fall in any of the expected cases, so we end up never calling them to retrieve their children.I think a fix might be to move line 143:
result.addAll(getWrappedChildren(parentElement));
outside of the current conditional, because the call to
getWrappedChildren(Object)
does not require an EObject.The text was updated successfully, but these errors were encountered: