diff options
author | Dani Megert | 2011-01-31 09:03:42 +0000 |
---|---|---|
committer | Dani Megert | 2011-01-31 09:03:42 +0000 |
commit | fd1f6b7188aef2a22b45bc857256ff0ac0c271af (patch) | |
tree | a83192a2a4f1bf0dcab24466bf02fbcffdebfa54 | |
parent | 59a8d8c79153ae10aba482eb57349d5fd6181354 (diff) | |
download | eclipse.platform.debug-fd1f6b7188aef2a22b45bc857256ff0ac0c271af.tar.gz eclipse.platform.debug-fd1f6b7188aef2a22b45bc857256ff0ac0c271af.tar.xz eclipse.platform.debug-fd1f6b7188aef2a22b45bc857256ff0ac0c271af.zip |
Fixed bug 335550: Unexpected 'Save Resource' dialog on exit (and view close)
-rw-r--r-- | org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java | 130 |
1 files changed, 72 insertions, 58 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java index e8d826dfe..0f038732f 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2010 IBM Corporation and others. + * Copyright (c) 2000, 2011 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 @@ -25,48 +25,31 @@ import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; +import org.eclipse.swt.SWT; +import org.eclipse.swt.custom.SashForm; +import org.eclipse.swt.dnd.DND; +import org.eclipse.swt.dnd.Transfer; +import org.eclipse.swt.events.ControlEvent; +import org.eclipse.swt.events.ControlListener; +import org.eclipse.swt.events.FocusAdapter; +import org.eclipse.swt.events.FocusEvent; +import org.eclipse.swt.graphics.Point; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Event; +import org.eclipse.swt.widgets.Label; +import org.eclipse.swt.widgets.Listener; +import org.eclipse.swt.widgets.TreeItem; +import org.eclipse.swt.widgets.Widget; + import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.ListenerList; import org.eclipse.core.runtime.Status; import org.eclipse.core.runtime.jobs.Job; -import org.eclipse.debug.core.DebugException; -import org.eclipse.debug.internal.ui.DebugUIPlugin; -import org.eclipse.debug.internal.ui.DelegatingModelPresentation; -import org.eclipse.debug.internal.ui.IDebugHelpContextIds; -import org.eclipse.debug.internal.ui.LazyModelPresentation; -import org.eclipse.debug.internal.ui.SWTFactory; -import org.eclipse.debug.internal.ui.VariablesViewModelPresentation; -import org.eclipse.debug.internal.ui.actions.CollapseAllAction; -import org.eclipse.debug.internal.ui.actions.ConfigureColumnsAction; -import org.eclipse.debug.internal.ui.actions.variables.ChangeVariableValueAction; -import org.eclipse.debug.internal.ui.actions.variables.ShowTypesAction; -import org.eclipse.debug.internal.ui.actions.variables.ToggleDetailPaneAction; -import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants; -import org.eclipse.debug.internal.ui.viewers.model.VirtualFindAction; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelChangedListener; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDelta; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDeltaVisitor; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxy; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerInputRequestor; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerInputUpdate; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate; -import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdateListener; -import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer; -import org.eclipse.debug.internal.ui.viewers.model.provisional.ViewerInputService; -import org.eclipse.debug.internal.ui.views.DebugModelPresentationContext; -import org.eclipse.debug.internal.ui.views.IDebugExceptionHandler; -import org.eclipse.debug.internal.ui.views.variables.details.AvailableDetailPanesAction; -import org.eclipse.debug.internal.ui.views.variables.details.DetailPaneProxy; -import org.eclipse.debug.internal.ui.views.variables.details.IDetailPaneContainer2; -import org.eclipse.debug.ui.AbstractDebugView; -import org.eclipse.debug.ui.DebugUITools; -import org.eclipse.debug.ui.IDebugModelPresentation; -import org.eclipse.debug.ui.IDebugUIConstants; -import org.eclipse.debug.ui.contexts.DebugContextEvent; -import org.eclipse.debug.ui.contexts.IDebugContextListener; -import org.eclipse.debug.ui.contexts.IDebugContextService; + import org.eclipse.jface.action.IAction; import org.eclipse.jface.action.IMenuListener; import org.eclipse.jface.action.IMenuManager; @@ -91,30 +74,13 @@ import org.eclipse.jface.viewers.StructuredViewer; import org.eclipse.jface.viewers.TreeSelection; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.viewers.Viewer; -import org.eclipse.swt.SWT; -import org.eclipse.swt.custom.SashForm; -import org.eclipse.swt.dnd.DND; -import org.eclipse.swt.dnd.Transfer; -import org.eclipse.swt.events.ControlEvent; -import org.eclipse.swt.events.ControlListener; -import org.eclipse.swt.events.FocusAdapter; -import org.eclipse.swt.events.FocusEvent; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Event; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Listener; -import org.eclipse.swt.widgets.TreeItem; -import org.eclipse.swt.widgets.Widget; + import org.eclipse.ui.IActionBars; import org.eclipse.ui.IMemento; import org.eclipse.ui.IPerspectiveDescriptor; import org.eclipse.ui.IPerspectiveListener; import org.eclipse.ui.IPropertyListener; -import org.eclipse.ui.ISaveablePart; +import org.eclipse.ui.ISaveablePart2; import org.eclipse.ui.IViewSite; import org.eclipse.ui.IWorkbenchActionConstants; import org.eclipse.ui.IWorkbenchPage; @@ -127,15 +93,55 @@ import org.eclipse.ui.handlers.CollapseAllHandler; import org.eclipse.ui.handlers.IHandlerService; import org.eclipse.ui.progress.IWorkbenchSiteProgressService; import org.eclipse.ui.progress.UIJob; + import org.eclipse.ui.texteditor.IUpdate; +import org.eclipse.debug.core.DebugException; +import org.eclipse.debug.internal.ui.DebugUIPlugin; +import org.eclipse.debug.internal.ui.DelegatingModelPresentation; +import org.eclipse.debug.internal.ui.IDebugHelpContextIds; +import org.eclipse.debug.internal.ui.LazyModelPresentation; +import org.eclipse.debug.internal.ui.SWTFactory; +import org.eclipse.debug.internal.ui.VariablesViewModelPresentation; +import org.eclipse.debug.internal.ui.actions.CollapseAllAction; +import org.eclipse.debug.internal.ui.actions.ConfigureColumnsAction; +import org.eclipse.debug.internal.ui.actions.variables.ChangeVariableValueAction; +import org.eclipse.debug.internal.ui.actions.variables.ShowTypesAction; +import org.eclipse.debug.internal.ui.actions.variables.ToggleDetailPaneAction; +import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants; +import org.eclipse.debug.internal.ui.viewers.model.VirtualFindAction; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelChangedListener; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDelta; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDeltaVisitor; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxy; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerInputRequestor; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerInputUpdate; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate; +import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdateListener; +import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer; +import org.eclipse.debug.internal.ui.viewers.model.provisional.ViewerInputService; +import org.eclipse.debug.internal.ui.views.DebugModelPresentationContext; +import org.eclipse.debug.internal.ui.views.IDebugExceptionHandler; +import org.eclipse.debug.internal.ui.views.variables.details.AvailableDetailPanesAction; +import org.eclipse.debug.internal.ui.views.variables.details.DetailPaneProxy; +import org.eclipse.debug.internal.ui.views.variables.details.IDetailPaneContainer2; + +import org.eclipse.debug.ui.AbstractDebugView; +import org.eclipse.debug.ui.DebugUITools; +import org.eclipse.debug.ui.IDebugModelPresentation; +import org.eclipse.debug.ui.IDebugUIConstants; +import org.eclipse.debug.ui.contexts.DebugContextEvent; +import org.eclipse.debug.ui.contexts.IDebugContextListener; +import org.eclipse.debug.ui.contexts.IDebugContextService; + /** * This view shows variables and their values for a particular stack frame */ public class VariablesView extends AbstractDebugView implements IDebugContextListener, IPropertyChangeListener, IDebugExceptionHandler, IPerspectiveListener, IModelChangedListener, - IViewerUpdateListener, IDetailPaneContainer2, ISaveablePart { + IViewerUpdateListener, IDetailPaneContainer2, ISaveablePart2 { /** * Selection provider wrapping an exchangeable active selection provider. @@ -1474,4 +1480,12 @@ public class VariablesView extends AbstractDebugView implements IDebugContextLis public boolean isSaveOnCloseNeeded() { return fDetailPane.isSaveOnCloseNeeded(); } + + /* + * @see org.eclipse.ui.ISaveablePart2#promptToSaveOnClose() + * @since 3.7 + */ + public int promptToSaveOnClose() { + return ISaveablePart2.YES; + } } |