e4 perspective with e3 editor area (org.eclipse.ui.editorss) [message #1732825] |
Fri, 20 May 2016 06:35 |
Felix Hirsch Messages: 9 Registered: May 2016 Location: Aachen, Germany |
Junior Member |
|
|
Hi,
I am working on a hybrid e3/e4 (4.6M7) application. Most of my perspectives are e3 perspectives but one perspective has been migrated as an e4 perspective provided by a model fragment.
In this e4 perspective I want to show the e3 editor area (org.eclipse.ui.editorss) with its main part stack (org.eclipse.e4.primaryDataStack).
To accomplish this I extended the "sharedElements" of the "IDEWindow" via a seperate model fragment to provide an area with the ID "org.eclipse.ui.editorss" and in this area I added a part stack child with the ID "org.eclipse.e4.primaryDataStack". In my e4 perspective the area is integreated via a MPlaceholder to the imported shared area element.
This way works fine. All compatibility e3 editors are merged together with the e4 parts I provide in the new e4 perspective. Thus the same area and the same part stack is used for all perspectives.
But then something strange happens: I maximize a part and afterwards I try to restore/unzoom the layout (both via double click on the part label).
In all e3 perspectives the behaviour is as expected: The part gets maximized and afterwards the layout is restored. But in the e4 perspective I get the following ClassCastException:
...
Caused by: java.lang.ClassCastException: org.eclipse.e4.ui.model.application.ui.advanced.impl.AreaImpl cannot be cast to org.eclipse.e4.ui.model.application.ui.advanced.MPlaceholder
at org.eclipse.e4.ui.workbench.addons.minmax.MinMaxAddon.getElementsToRestore(MinMaxAddon.java:908)
at org.eclipse.e4.ui.workbench.addons.minmax.MinMaxAddon.unzoom(MinMaxAddon.java:852)
at org.eclipse.e4.ui.workbench.addons.minmax.MinMaxAddon.subscribeTopicTagsChanged(MinMaxAddon.java:369)
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54)
... 54 more
Has anyone an idea why the exception only occurs in the e4 perspective? In my e4 perspective the area is integreated via a MPlaceholder. Why does the find method solve the placeholder reference in the e4 perspective and not in the e3 perspective.
Thanks a lot!
Felix
[Updated on: Mon, 23 May 2016 06:12] Report message to a moderator
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03216 seconds