diff options
author | Curtis Windatt | 2008-01-28 17:46:35 +0000 |
---|---|---|
committer | Curtis Windatt | 2008-01-28 17:46:35 +0000 |
commit | d8057e275bd82fcada141ab985ccbcd9a171a69e (patch) | |
tree | e38a6b98f038ad7d28bcd56d12b6cb27b3c8cd73 /org.eclipse.debug.ui | |
parent | a1668d4b1d361b08b0e8a5d807f154904ecdf803 (diff) | |
download | eclipse.platform.debug-d8057e275bd82fcada141ab985ccbcd9a171a69e.tar.gz eclipse.platform.debug-d8057e275bd82fcada141ab985ccbcd9a171a69e.tar.xz eclipse.platform.debug-d8057e275bd82fcada141ab985ccbcd9a171a69e.zip |
Bug 216777 - [detail panes] widget disposed exception
Diffstat (limited to 'org.eclipse.debug.ui')
3 files changed, 13 insertions, 7 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.java index e115efae6..4a18b069f 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2006, 2007 IBM Corporation and others. + * Copyright (c) 2006, 2008 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -28,6 +28,8 @@ public class DetailMessages extends NLS { public static String DefaultDetailPane_Select__All_5; public static String DetailPaneProxy_0; public static String DetailPaneProxy_1; + public static String DetailPaneProxy_2; + public static String DetailPaneProxy_3; static { // initialize resource bundle NLS.initializeMessages(BUNDLE_NAME, DetailMessages.class); diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.properties index b512c3f09..e56651b5a 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.properties +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailMessages.properties @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2006, 2007 IBM Corporation and others. +# Copyright (c) 2006, 2008 IBM Corporation and others. # All rights reserved. This program and the accompanying materials # are made available under the terms of the Eclipse Public License v1.0 # which accompanies this distribution, and is available at @@ -22,4 +22,6 @@ DefaultDetailPane__Paste_14=&Paste DefaultDetailPane_Error_1=Error DefaultDetailPane_2=Unable to configure source viewer detail pane DetailPaneProxy_0=Problem displaying detail pane, see log for details. -DetailPaneProxy_1=There are no detail panes available, see log for details. +DetailPaneProxy_1=There are no detail panes available for the current selection. +DetailPaneProxy_2=The detail pane with ID {0} did not create and return a control. +DetailPaneProxy_3=Could not create the detail pane with ID {0} diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailPaneProxy.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailPaneProxy.java index 9248a2772..07570d974 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailPaneProxy.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/details/DetailPaneProxy.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2006, 2007 IBM Corporation and others. + * Copyright (c) 2006, 2008 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -22,6 +22,8 @@ import org.eclipse.swt.layout.GridData; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Label; +import com.ibm.icu.text.MessageFormat; + /** * Acts as a proxy between a view and a detail pane. Controls how information is displayed * in the details pane in a view. Currently used by the variables, registers and expression @@ -148,6 +150,7 @@ public class DetailPaneProxy { private void setupPane(String paneID, IStructuredSelection selection) { if (fCurrentPane != null) fCurrentPane.dispose(); if (fCurrentControl != null && !fCurrentControl.isDisposed()) fCurrentControl.dispose(); + fCurrentPane = null; if (paneID != null){ fCurrentPane = DetailPaneManager.getDefault().getDetailPaneFromID(paneID); if (fCurrentPane != null){ @@ -158,15 +161,14 @@ public class DetailPaneProxy { fCurrentPane.display(selection); } else{ createErrorLabel(DetailMessages.DetailPaneProxy_0); - DebugUIPlugin.log(new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), "The detail pane \""+ fCurrentPane.getID() + "\" did not create and return a control."))); //$NON-NLS-1$ //$NON-NLS-2$ + DebugUIPlugin.log(new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), MessageFormat.format(DetailMessages.DetailPaneProxy_2, new String[]{fCurrentPane.getID()})))); } } else { createErrorLabel(DetailMessages.DetailPaneProxy_0); - DebugUIPlugin.log(new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), "Could not create the detail pane with ID " + paneID))); //$NON-NLS-1$ + DebugUIPlugin.log(new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), MessageFormat.format(DetailMessages.DetailPaneProxy_3, new String[]{paneID})))); } } else { createErrorLabel(DetailMessages.DetailPaneProxy_1); - DebugUIPlugin.log(new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), "No detail panes could be found to display the current selection."))); //$NON-NLS-1$ } } |