Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Standard Widget Toolkit (SWT) » Problems Opening GEF Editor: Migration from 3.1 M6->3.1.1
Problems Opening GEF Editor: Migration from 3.1 M6->3.1.1 [message #462458] Wed, 12 October 2005 15:26 Go to next message
paul wuethrich is currently offline paul wuethrichFriend
Messages: 128
Registered: July 2009
Senior Member
We just migrated to 3.1.1 from 3.1 M6 and are having trouble opening our GEF
editor. It is a multi-page editor and the stack trace seems to point to
something in SWT. We have three other multi-page editors that do not use
GEF and they open fine in 3.1.1. I have also posted this to the GEF
newsgroup.

The problem is in the SWT class FillLayout whereby a class cast exception is
thrown since the returned object is always a GridData and not a FillData
object. This exception is thrown upon attempting to open the editor and on
the selection of any tab once the editor is opened. There are no references
to our code beyond the action that invokes open editor functionality.

class FillLayout {

Point computeChildSize (Control control, int wHint, int hHint, boolean
flushCache) {
FillData data = (FillData)control.getLayoutData (); // LINE 141
...
}

!ENTRY org.eclipse.jface 4 2 2005-10-12 09:01:49.781
!MESSAGE Problems occurred when invoking code from plug-in:
"org.eclipse.jface".
!STACK 0
java.lang.ClassCastException: org.eclipse.swt.layout.GridData
at org.eclipse.swt.layout.FillLayout.computeChildSize(FillLayou t.java:141)
at org.eclipse.swt.layout.FillLayout.computeSize(FillLayout.jav a:119)
at org.eclipse.swt.widgets.Composite.computeSize(Composite.java :213)
at org.eclipse.swt.layout.GridData.computeSize(GridData.java:47 8)
at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:207 )
at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:186 )
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:198 )
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.EndDeferWindowPos(Native Method)
at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.j ava:653)
at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.j ava:619)
at org.eclipse.swt.widgets.Composite.setResizeChildren(Composit e.java:786)
at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:125 2)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:198 )
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:198 )
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
at org.eclipse.swt.widgets.Control.setBounds(Control.java:1999)
at org.eclipse.ui.internal.LayoutPart.setBounds(LayoutPart.java :299)
at
org.eclipse.ui.internal.presentations.PresentablePart.setBou nds(PresentableP
art.java:118)
at
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.layoutConte
nt(PresentablePartFolder.java:131)
at
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.layout(Pres
entablePartFolder.java:405)
at
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.select(Pres
entablePartFolder.java:289)
at
org.eclipse.ui.internal.presentations.util.LeftToRightTabOrd er.select(LeftTo
RightTabOrder.java:65)
at
org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation.selectPar
t(TabbedStackPresentation.java:391)
at
org.eclipse.ui.internal.PartStack.refreshPresentationSelecti on(PartStack.jav
a:1102)
at org.eclipse.ui.internal.PartStack.setSelection(PartStack.jav a:1051)
at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:12 56)
at org.eclipse.ui.internal.PartStack.add(PartStack.java:442)
at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:109 )
at
org.eclipse.ui.internal.EditorSashContainer.addEditor(Editor SashContainer.ja
va:60)
at
org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorA reaHelper.java:2
12)
at
org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAre aHelper.java:202
)
at
org.eclipse.ui.internal.EditorManager.createEditorTab(Editor Manager.java:758
)
at
org.eclipse.ui.internal.EditorManager.openEditorFromDescript or(EditorManager
..java:665)
at org.eclipse.ui.internal.EditorManager.openEditor(EditorManag er.java:628)
at
org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched( WorkbenchPage.ja
va:2360)
at
org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(Workben chPage.java:2295
)
at org.eclipse.ui.internal.WorkbenchPage.access$9(WorkbenchPage .java:2287)
at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.ja va:2273)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:69)
at
org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPa ge.java:2268)
at
org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPa ge.java:2249)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:371)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:334)
at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileActio n.java:98)
at
org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystem EditorAction.jav
a:98)
at
com.eyeris.eyeprofit.ui.core.views.navigator.EPOpenActionGro up.runDefaultAct
ion(EPOpenActionGroup.java:109)
Re: Problems Opening GEF Editor: Migration from 3.1 M6->3.1.1 [message #462463 is a reply to message #462458] Wed, 12 October 2005 15:47 Go to previous message
paul wuethrich is currently offline paul wuethrichFriend
Messages: 128
Registered: July 2009
Senior Member
Found this in the online help:

15. ClassCastException using FillLayout
What is affected: Plug-ins that incorrectly use FillLayout.

Description: In Eclipse 3.0, no layout data was associated with the
FillLayout and if an application assigned layout data to a child that was
managed by a FillLayout, it was ignored. In Eclipse 3.1, support was added
to FillLayout to cache size information in order to improve resize
performance. The cached data is stored in a FillData object associated with
each child managed by the FillLayout. If an application has incorrectly
assigned layout data to a child, a ClassCastException will be thrown when
computeSize is called on the parent.

Action required: Find any children in a FillLayout that have layout data
assigned and stop assigning the layout data.



"Paul Wuethrich" <paul.wuethrich@eye-ris.com> wrote in message
news:dij9vo$24c$1@news.eclipse.org...
> We just migrated to 3.1.1 from 3.1 M6 and are having trouble opening our
GEF
> editor. It is a multi-page editor and the stack trace seems to point to
> something in SWT. We have three other multi-page editors that do not use
> GEF and they open fine in 3.1.1. I have also posted this to the GEF
> newsgroup.
>
> The problem is in the SWT class FillLayout whereby a class cast exception
is
> thrown since the returned object is always a GridData and not a FillData
> object. This exception is thrown upon attempting to open the editor and
on
> the selection of any tab once the editor is opened. There are no
references
> to our code beyond the action that invokes open editor functionality.
>
> class FillLayout {
>
> Point computeChildSize (Control control, int wHint, int hHint, boolean
> flushCache) {
> FillData data = (FillData)control.getLayoutData (); // LINE 141
> ...
> }
>
> !ENTRY org.eclipse.jface 4 2 2005-10-12 09:01:49.781
> !MESSAGE Problems occurred when invoking code from plug-in:
> "org.eclipse.jface".
> !STACK 0
> java.lang.ClassCastException: org.eclipse.swt.layout.GridData
> at
org.eclipse.swt.layout.FillLayout.computeChildSize(FillLayou t.java:141)
> at org.eclipse.swt.layout.FillLayout.computeSize(FillLayout.jav a:119)
> at org.eclipse.swt.widgets.Composite.computeSize(Composite.java :213)
> at org.eclipse.swt.layout.GridData.computeSize(GridData.java:47 8)
> at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:207 )
> at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:186 )
> at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
> at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
> at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
> at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
> at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:198 )
> at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
> at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
> at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.EndDeferWindowPos(Native Method)
> at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.j ava:653)
> at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.j ava:619)
> at
org.eclipse.swt.widgets.Composite.setResizeChildren(Composit e.java:786)
> at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:125 2)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
> at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
> at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
> at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:198 )
> at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
> at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
> at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
> at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
> at org.eclipse.swt.layout.FillLayout.layout(FillLayout.java:198 )
> at org.eclipse.swt.widgets.Composite.updateLayout(Composite.jav a:869)
> at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:124 8)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3107 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
> at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1651 )
> at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable .java:77)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:3123 )
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:3706 )
> at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
> at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1140 )
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1952)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1933)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1929)
> at org.eclipse.swt.widgets.Control.setBounds(Control.java:1999)
> at org.eclipse.ui.internal.LayoutPart.setBounds(LayoutPart.java :299)
> at
>
org.eclipse.ui.internal.presentations.PresentablePart.setBou nds(PresentableP
> art.java:118)
> at
>
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.layoutConte
> nt(PresentablePartFolder.java:131)
> at
>
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.layout(Pres
> entablePartFolder.java:405)
> at
>
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.select(Pres
> entablePartFolder.java:289)
> at
>
org.eclipse.ui.internal.presentations.util.LeftToRightTabOrd er.select(LeftTo
> RightTabOrder.java:65)
> at
>
org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation.selectPar
> t(TabbedStackPresentation.java:391)
> at
>
org.eclipse.ui.internal.PartStack.refreshPresentationSelecti on(PartStack.jav
> a:1102)
> at org.eclipse.ui.internal.PartStack.setSelection(PartStack.jav a:1051)
> at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:12 56)
> at org.eclipse.ui.internal.PartStack.add(PartStack.java:442)
> at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:109 )
> at
>
org.eclipse.ui.internal.EditorSashContainer.addEditor(Editor SashContainer.ja
> va:60)
> at
>
org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorA reaHelper.java:2
> 12)
> at
>
org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAre aHelper.java:202
> )
> at
>
org.eclipse.ui.internal.EditorManager.createEditorTab(Editor Manager.java:758
> )
> at
>
org.eclipse.ui.internal.EditorManager.openEditorFromDescript or(EditorManager
> .java:665)
> at
org.eclipse.ui.internal.EditorManager.openEditor(EditorManag er.java:628)
> at
>
org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched( WorkbenchPage.ja
> va:2360)
> at
>
org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(Workben chPage.java:2295
> )
> at
org.eclipse.ui.internal.WorkbenchPage.access$9(WorkbenchPage .java:2287)
> at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.ja va:2273)
> at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:69)
> at
> org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPa ge.java:2268)
> at
> org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPa ge.java:2249)
> at org.eclipse.ui.ide.IDE.openEditor(IDE.java:371)
> at org.eclipse.ui.ide.IDE.openEditor(IDE.java:334)
> at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileActio n.java:98)
> at
>
org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystem EditorAction.jav
> a:98)
> at
>
com.eyeris.eyeprofit.ui.core.views.navigator.EPOpenActionGro up.runDefaultAct
> ion(EPOpenActionGroup.java:109)
>
>
Previous Topic:SWT - Active X
Next Topic:drawing an image over different composites
Goto Forum:
  


Current Time: Tue Sep 24 05:28:05 GMT 2024

Powered by FUDForum. Page generated in 0.03737 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top