Bug 88941 [Dialogs] CCE on ContainerCheckedTreeViewer in OverrideMethodDialog
build I20050323 + latest UI and JDT UI from head - In a java editor, chose Source > Override/Implement methods !ENTRY org.eclipse.ui 4 4 2005-03-23 16:54:47.117 !MESSAGE Unhandled event loop exception !ENTRY org.eclipse.ui 4 0 2005-03-23 16:54:47.157 !MESSAGE org/eclipse/ui/dialogs/ContainerCheckedTreeViewer incompatible with org/eclipse/ui/internal/dialogs/ContainerCheckedTreeViewer !STACK 0 java.lang.ClassCastException: org/eclipse/ui/dialogs/ContainerCheckedTreeViewer incompatible with org/eclipse/ui/internal/dialogs/ContainerCheckedTreeViewer at org.eclipse.jdt.internal.ui.dialogs.OverrideMethodDialog$OverrideMethodContentProvider.inputChanged(OverrideMethodDialog.java:186) at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:244) at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1324) at org.eclipse.ui.dialogs.CheckedTreeSelectionDialog.createTreeViewer(CheckedTreeSelectionDialog.java:316) at org.eclipse.jdt.internal.ui.dialogs.OverrideMethodDialog.createTreeViewer(OverrideMethodDialog.java:356) at org.eclipse.jdt.internal.ui.dialogs.SourceActionDialog.createDialogArea(SourceActionDialog.java:358) at org.eclipse.jface.dialogs.Dialog.createContents(Dialog.java:685) at org.eclipse.jface.window.Window.create(Window.java:416) at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:994) at org.eclipse.ui.dialogs.SelectionStatusDialog.create(SelectionStatusDialog.java:149) at org.eclipse.ui.dialogs.CheckedTreeSelectionDialog.access$superCreate(CheckedTreeSelectionDialog.java:232) at org.eclipse.ui.dialogs.CheckedTreeSelectionDialog.access$0(CheckedTreeSelectionDialog.java:231) at org.eclipse.ui.dialogs.CheckedTreeSelectionDialog$1.run(CheckedTreeSelectionDialog.java:257) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.dialogs.CheckedTreeSelectionDialog.create(CheckedTreeSelectionDialog.java:255) at org.eclipse.jdt.internal.ui.dialogs.SourceActionDialog.create(SourceActionDialog.java:501) at org.eclipse.jface.window.Window.open(Window.java:768) at org.eclipse.ui.dialogs.CheckedTreeSelectionDialog.open(CheckedTreeSelectionDialog.java:227) at org.eclipse.jdt.ui.actions.OverrideMethodsAction.run(OverrideMethodsAction.java:199) at org.eclipse.jdt.ui.actions.OverrideMethodsAction.run(OverrideMethodsAction.java:181) at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:216) at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:188) at org.eclipse.jface.action.Action.runWithEvent(Action.java:1003) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:557) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:507) at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:421) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:842) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2894) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2527) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1571) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1535) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:312) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:228) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:338) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:151) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:268) at org.eclipse.core.launcher.Main.basicRun(Main.java:260) at org.eclipse.core.launcher.Main.run(Main.java:887) at org.eclipse.core.launcher.Main.main(Main.java:871)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/formatter/WhiteSpaceTabPage.java
for (final Iterator iter= optionsChildren.iterator(); iter.hasNext();) {
			    final OptionNode child= (OptionNode)iter.next();
                    fOptionsViewer.setChecked(child, child.getChecked());
			}
			
			fPreview.clear();
			fPreview.addAll(selectedNode.getSnippets());
			doUpdatePreview();
        }
        
        public void checkStateChanged(CheckStateChangedEvent event) {
			final OptionNode option= (OptionNode)event.getElement();
			if (option != null)
			    option.setChecked(event.getChecked());
			doUpdatePreview();
			notifyValuesModified();
        }
	}
	
	
	/**
	 * This component switches between the two view and is responsible for delegating
	 * the appropriate update requests.
	 */
	private final class SwitchComponent extends SelectionAdapter {
	    private final String PREF_VIEW_KEY= JavaUI.ID_PLUGIN + "formatter_page.white_space_tab_page.view"; 
	    private final String [] fItems= new String [] {
	        FormatterMessages.getString("WhiteSpaceTabPage.sort_by_java_element"), 
	        FormatterMessages.getString("WhiteSpaceTabPage.sort_by_syntax_element")