diff options
Diffstat (limited to 'org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views')
13 files changed, 335 insertions, 388 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java index 557eaeb62..3d2ae3bf2 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java @@ -526,13 +526,10 @@ public class BreakpointsView extends VariablesView implements IBreakpointManager */ @Override public void breakpointManagerEnablementChanged(boolean enabled) { - DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() { - @Override - public void run() { - IAction action = getAction(ACTION_SKIP_BREAKPOINTS); - if (action != null) { - ((SkipAllBreakpointsAction) action).updateActionCheckedState(); - } + DebugUIPlugin.getStandardDisplay().asyncExec(() -> { + IAction action = getAction(ACTION_SKIP_BREAKPOINTS); + if (action != null) { + ((SkipAllBreakpointsAction) action).updateActionCheckedState(); } }); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java index 7bbddae01..4183b3aad 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java @@ -456,13 +456,10 @@ public class ProcessConsole extends IOConsole implements IConsole, IDebugEventSe setWaterMarks(lowWater, highWater); } - DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() { - @Override - public void run() { - setFont(JFaceResources.getFont(IDebugUIConstants.PREF_CONSOLE_FONT)); - setBackground(DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.CONSOLE_BAKGROUND_COLOR)); - } - }); + DebugUIPlugin.getStandardDisplay().asyncExec(() -> { + setFont(JFaceResources.getFont(IDebugUIConstants.PREF_CONSOLE_FONT)); + setBackground(DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.CONSOLE_BAKGROUND_COLOR)); + }); } /** diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java index 9f85f919a..5b60386b8 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java @@ -14,7 +14,6 @@ import java.io.IOException; import org.eclipse.core.commands.AbstractHandler; import org.eclipse.core.commands.ExecutionEvent; - import org.eclipse.debug.core.DebugEvent; import org.eclipse.debug.core.DebugPlugin; import org.eclipse.debug.core.IDebugEventSetListener; @@ -25,17 +24,14 @@ import org.eclipse.debug.core.model.IProcess; import org.eclipse.debug.core.model.IStreamsProxy; import org.eclipse.debug.core.model.IStreamsProxy2; import org.eclipse.debug.internal.ui.DebugUIPlugin; - import org.eclipse.debug.ui.DebugUITools; import org.eclipse.debug.ui.IDebugUIConstants; import org.eclipse.debug.ui.contexts.DebugContextEvent; import org.eclipse.debug.ui.contexts.IDebugContextListener; - import org.eclipse.jface.action.IToolBarManager; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.TreePath; import org.eclipse.jface.viewers.TreeSelection; - import org.eclipse.ui.IActionBars; import org.eclipse.ui.console.IConsole; import org.eclipse.ui.console.IConsoleConstants; @@ -218,27 +214,26 @@ public class ProcessConsolePageParticipant implements IConsolePageParticipant, I return new String[] {IDebugUIConstants.ID_DEBUG_VIEW}; } - /* (non-Javadoc) - * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[]) - */ - @Override + /* + * (non-Javadoc) + * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org. + * eclipse.debug.core.DebugEvent[]) + */ + @Override public void handleDebugEvents(DebugEvent[] events) { - for (int i = 0; i < events.length; i++) { - DebugEvent event = events[i]; - if (event.getSource().equals(getProcess())) { - Runnable r = new Runnable() { - @Override - public void run() { - if (fTerminate != null) { - fTerminate.update(); - } - } - }; + for (int i = 0; i < events.length; i++) { + DebugEvent event = events[i]; + if (event.getSource().equals(getProcess())) { + Runnable r = () -> { + if (fTerminate != null) { + fTerminate.update(); + } + }; - DebugUIPlugin.getStandardDisplay().asyncExec(r); - } - } - } + DebugUIPlugin.getStandardDisplay().asyncExec(r); + } + } + } protected IProcess getProcess() { return fConsole != null ? fConsole.getProcess() : null; diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java index 53e2351af..fb69cda96 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java @@ -269,22 +269,19 @@ public abstract class AbstractMemoryViewPane implements IMemoryBlockListener, IS // tab folders should be removed from our map. final IMemoryBlockRetrieval ret = (IMemoryBlockRetrieval) source; if (ret != null) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - if (isDisposed()) { - return; - } - - Integer key = MemoryViewUtil.getHashCode(ret); - Object folder = fTabFolderForDebugView.get(key); - - if (folder != null && folder != fEmptyTabFolder) { - // remove the tab folder , and all contained tab - // items - disposeOfFolder((CTabFolder) folder); - fTabFolderForDebugView.remove(key); - } + Display.getDefault().asyncExec(() -> { + if (isDisposed()) { + return; + } + + Integer key = MemoryViewUtil.getHashCode(ret); + Object folder = fTabFolderForDebugView.get(key); + + if (folder != null && folder != fEmptyTabFolder) { + // remove the tab folder , and all contained tab + // items + disposeOfFolder((CTabFolder) folder); + fTabFolderForDebugView.remove(key); } }); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewPrefAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewPrefAction.java index 88e58f65f..5aa2ae025 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewPrefAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewPrefAction.java @@ -48,12 +48,9 @@ public class MemoryViewPrefAction implements IViewActionDelegate { final PreferenceDialog dialog = new PreferenceDialog(DebugUIPlugin.getShell(), prefManager); - BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() { - @Override - public void run() { - dialog.create(); - dialog.open(); - } + BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), () -> { + dialog.create(); + dialog.open(); }); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java index d4e94933c..892f003e1 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java @@ -229,33 +229,30 @@ public class MemoryViewSynchronizationService implements IMemoryRenderingSynchro // Make sure the synchronizer does not swallow any events // Values of the properties are updated in the syncrhonizer immediately. // Change events are queued up on the UI Thread. - Display.getDefault().syncExec(new Runnable() { - @Override - public void run() { - if (fSynchronizeInfo == null) { - return; - } + Display.getDefault().syncExec(() -> { + if (fSynchronizeInfo == null) { + return; + } - IMemoryRendering rendering = (IMemoryRendering) evt.getSource(); - String propertyId = evt.getProperty(); + IMemoryRendering rendering = (IMemoryRendering) evt.getSource(); + String propertyId = evt.getProperty(); - SynchronizeInfo info = fSynchronizeInfo.get(rendering.getMemoryBlock()); - if (info != null) { - Object value = info.getProperty(propertyId); - if (value != null) { - Enumeration<PropertyListener> enumeration = fPropertyListeners.elements(); + SynchronizeInfo info = fSynchronizeInfo.get(rendering.getMemoryBlock()); + if (info != null) { + Object value = info.getProperty(propertyId); + if (value != null) { + Enumeration<PropertyListener> enumeration = fPropertyListeners.elements(); - while (enumeration.hasMoreElements()) { - PropertyListener listener = enumeration.nextElement(); + while (enumeration.hasMoreElements()) { + PropertyListener listener = enumeration.nextElement(); - IPropertyChangeListener origListener = listener.getListener(); + IPropertyChangeListener origListener = listener.getListener(); - // if it's a valid property - valid means that it's - // listed in the property filters - if (listener.isValidProperty(propertyId)) { - PropertyChangeNotifier notifier = new PropertyChangeNotifier(origListener, evt); - SafeRunner.run(notifier); - } + // if it's a valid property - valid means that it's + // listed in the property filters + if (listener.isValidProperty(propertyId)) { + PropertyChangeNotifier notifier = new PropertyChangeNotifier(origListener, evt); + SafeRunner.run(notifier); } } } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java index 310738b83..9a87113c9 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java @@ -120,28 +120,25 @@ public class RenderingViewPane extends AbstractMemoryViewPane implements IMemory */ @Override public void memoryBlocksAdded(final IMemoryBlock[] memoryBlocks) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { + Display.getDefault().asyncExec(() -> { - if (isDisposed()) { - return; - } + if (isDisposed()) { + return; + } - // check condition before doing anything - if (memoryBlocks == null || memoryBlocks.length <= 0) { - return; - } + // check condition before doing anything + if (memoryBlocks == null || memoryBlocks.length <= 0) { + return; + } - for (int i = 0; i < memoryBlocks.length; i++) { - IMemoryBlock memory = memoryBlocks[i]; + for (int i = 0; i < memoryBlocks.length; i++) { + IMemoryBlock memory = memoryBlocks[i]; - if (!fTabFolderForMemoryBlock.containsKey(memory)) { - createFolderForMemoryBlock(memory); - } - fAddedMemoryBlocks.add(memory); - updateToolBarActionsEnablement(); + if (!fTabFolderForMemoryBlock.containsKey(memory)) { + createFolderForMemoryBlock(memory); } + fAddedMemoryBlocks.add(memory); + updateToolBarActionsEnablement(); } }); } @@ -153,91 +150,88 @@ public class RenderingViewPane extends AbstractMemoryViewPane implements IMemory */ @Override public void memoryBlocksRemoved(final IMemoryBlock[] memoryBlocks) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - for (int j = 0; j < memoryBlocks.length; j++) { - IMemoryBlock mbRemoved = memoryBlocks[j]; - if (fTabFolderForMemoryBlock == null) { - return; - } + Display.getDefault().asyncExec(() -> { + for (int j = 0; j < memoryBlocks.length; j++) { + IMemoryBlock mbRemoved = memoryBlocks[j]; + if (fTabFolderForMemoryBlock == null) { + return; + } - // get all renderings from this memory block and remove them - // from the view - IMemoryRendering[] renderings = fRenderingMgr.getRenderingsFromMemoryBlock(mbRemoved); + // get all renderings from this memory block and remove them + // from the view + IMemoryRendering[] renderings = fRenderingMgr.getRenderingsFromMemoryBlock(mbRemoved); - for (int k = 0; k < renderings.length; k++) { - removeMemoryRendering(renderings[k]); - } + for (int k = 0; k < renderings.length; k++) { + removeMemoryRendering(renderings[k]); + } - // remove a the tab folder if the memory block is removed - CTabFolder tabFolder = fTabFolderForMemoryBlock.get(mbRemoved); + // remove a the tab folder if the memory block is removed + CTabFolder tabFolder = fTabFolderForMemoryBlock.get(mbRemoved); - if (tabFolder == null) { - continue; + if (tabFolder == null) { + continue; + } + + fTabFolderForMemoryBlock.remove(mbRemoved); + fMemoryBlockFromTabFolder.remove(tabFolder); + IMemoryBlockRetrieval retrieve = MemoryViewUtil.getMemoryBlockRetrieval(mbRemoved); + if (retrieve != null) { + if (fTabFolderForDebugView.contains(tabFolder)) { + fTabFolderForDebugView.remove(MemoryViewUtil.getHashCode(retrieve)); } + } - fTabFolderForMemoryBlock.remove(mbRemoved); - fMemoryBlockFromTabFolder.remove(tabFolder); - IMemoryBlockRetrieval retrieve = MemoryViewUtil.getMemoryBlockRetrieval(mbRemoved); - if (retrieve != null) { - if (fTabFolderForDebugView.contains(tabFolder)) { - fTabFolderForDebugView.remove(MemoryViewUtil.getHashCode(retrieve)); - } + if (!tabFolder.isDisposed()) { + // dispose all view tabs belonging to the tab folder + CTabItem[] items = tabFolder.getItems(); + + for (int i = 0; i < items.length; i++) { + disposeTab(items[i]); } - if (!tabFolder.isDisposed()) { - // dispose all view tabs belonging to the tab folder - CTabItem[] items = tabFolder.getItems(); + // dispose the tab folder + tabFolder.dispose(); - for (int i = 0; i < items.length; i++) { - disposeTab(items[i]); - } + // if this is the top control + if (tabFolder == fStackLayout.topControl) { - // dispose the tab folder - tabFolder.dispose(); - - // if this is the top control - if (tabFolder == fStackLayout.topControl) { - - // if memory view is visible and have a selection - // follow memory view's selection - - ISelection selection = DebugUIPlugin.getActiveWorkbenchWindow().getSelectionService().getSelection(IDebugUIConstants.ID_MEMORY_VIEW); - IMemoryBlock mbToSelect = getMemoryBlock(selection); - - if (mbToSelect != null) { - // memory view may not have got the event and is - // still displaying - // the deleted memory block - if (mbToSelect != mbRemoved) { - handleMemoryBlockSelection(null, mbToSelect); - } else if ((MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve).length > 0)) { - mbToSelect = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve)[0]; - handleMemoryBlockSelection(null, mbToSelect); - } else { - emptyFolder(); - } - } else if (MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve).length > 0) { // get - // to - // the - // next - // folder + // if memory view is visible and have a selection + // follow memory view's selection + + ISelection selection = DebugUIPlugin.getActiveWorkbenchWindow().getSelectionService().getSelection(IDebugUIConstants.ID_MEMORY_VIEW); + IMemoryBlock mbToSelect = getMemoryBlock(selection); + + if (mbToSelect != null) { + // memory view may not have got the event and is + // still displaying + // the deleted memory block + if (mbToSelect != mbRemoved) { + handleMemoryBlockSelection(null, mbToSelect); + } else if ((MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve).length > 0)) { mbToSelect = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve)[0]; handleMemoryBlockSelection(null, mbToSelect); } else { emptyFolder(); - } - } + } else if (MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve).length > 0) { // get + // to + // the + // next + // folder + mbToSelect = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve)[0]; + handleMemoryBlockSelection(null, mbToSelect); + } else { + emptyFolder(); - // if not the top control - // no need to do anything + } } - fAddedMemoryBlocks.remove(mbRemoved); - updateToolBarActionsEnablement(); + // if not the top control + // no need to do anything } + + fAddedMemoryBlocks.remove(mbRemoved); + updateToolBarActionsEnablement(); } }); @@ -447,59 +441,56 @@ public class RenderingViewPane extends AbstractMemoryViewPane implements IMemory public void memoryBlockRenderingAdded(final IMemoryRendering rendering) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { + Display.getDefault().asyncExec(() -> { - if (isDisposed()) { - return; - } + if (isDisposed()) { + return; + } - if (fAddedRenderings.contains(rendering)) { - return; - } + if (fAddedRenderings.contains(rendering)) { + return; + } - IMemoryBlock memoryblk = rendering.getMemoryBlock(); + IMemoryBlock memoryblk = rendering.getMemoryBlock(); - CTabFolder tabFolder = fTabFolderForMemoryBlock.get(memoryblk); + CTabFolder tabFolder = fTabFolderForMemoryBlock.get(memoryblk); - if (tabFolder == null) { - tabFolder = createFolderForMemoryBlock(memoryblk); - } + if (tabFolder == null) { + tabFolder = createFolderForMemoryBlock(memoryblk); + } - if (tabFolder == fStackLayout.topControl) { - // disable current view tab - if (getTopMemoryTab() != null) { - deactivateRendering(getTopMemoryTab()); - getTopMemoryTab().setEnabled(false); - } + if (tabFolder == fStackLayout.topControl) { + // disable current view tab + if (getTopMemoryTab() != null) { + deactivateRendering(getTopMemoryTab()); + getTopMemoryTab().setEnabled(false); } - fAddedRenderings.add(rendering); + } + fAddedRenderings.add(rendering); - int index = getIndexOfCreateRenderingTab(tabFolder); - if (index < 0) { - index = 0; - } - CTabItem tab = createTab(tabFolder, index); + int index = getIndexOfCreateRenderingTab(tabFolder); + if (index < 0) { + index = 0; + } + CTabItem tab = createTab(tabFolder, index); - MemoryViewTab viewTab = new MemoryViewTab(tab, rendering, getInstance()); - tabFolder.setSelection(tabFolder.indexOf(tab)); + MemoryViewTab viewTab = new MemoryViewTab(tab, rendering, getInstance()); + tabFolder.setSelection(tabFolder.indexOf(tab)); - if (tabFolder == fStackLayout.topControl) { - setRenderingSelection(viewTab.getRendering()); + if (tabFolder == fStackLayout.topControl) { + setRenderingSelection(viewTab.getRendering()); - // disable top view tab if the view pane is not visible - IMemoryViewTab top = getTopMemoryTab(); - if (top != null) { - top.setEnabled(fVisible); - } - } else { - deactivateRendering(viewTab); - viewTab.setEnabled(false); + // disable top view tab if the view pane is not visible + IMemoryViewTab top = getTopMemoryTab(); + if (top != null) { + top.setEnabled(fVisible); } - - updateToolBarActionsEnablement(); + } else { + deactivateRendering(viewTab); + viewTab.setEnabled(false); } + + updateToolBarActionsEnablement(); }); } @@ -514,70 +505,67 @@ public class RenderingViewPane extends AbstractMemoryViewPane implements IMemory // need to run the following code on the UI Thread to avoid invalid // thread access exception - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - if (!fAddedRenderings.contains(rendering)) { - return; - } + Display.getDefault().asyncExec(() -> { + if (!fAddedRenderings.contains(rendering)) { + return; + } - fAddedRenderings.remove(rendering); + fAddedRenderings.remove(rendering); - CTabFolder tabFolder = (CTabFolder) fStackLayout.topControl; + CTabFolder tabFolder = (CTabFolder) fStackLayout.topControl; - if (tabFolder.isDisposed()) { - return; - } - - CTabItem[] tabs = tabFolder.getItems(); - boolean foundTab = false; - for (int i = 0; i < tabs.length; i++) { - IMemoryViewTab viewTab = (IMemoryViewTab) tabs[i].getData(); + if (tabFolder.isDisposed()) { + return; + } - if (tabs[i].isDisposed()) { - continue; - } + CTabItem[] tabs = tabFolder.getItems(); + boolean foundTab = false; + for (int i1 = 0; i1 < tabs.length; i1++) { + IMemoryViewTab viewTab1 = (IMemoryViewTab) tabs[i1].getData(); - if (viewTab.getRendering().getMemoryBlock() == memory) { - if (viewTab.getRendering() == rendering) { - foundTab = true; - disposeTab(tabs[i]); - break; - } + if (tabs[i1].isDisposed()) { + continue; + } + if (viewTab1.getRendering().getMemoryBlock() == memory) { + if (viewTab1.getRendering() == rendering) { + foundTab = true; + disposeTab(tabs[i1]); + break; } + } + } - // if a tab is not found in the current top control - // this deletion is a result of a debug target termination - // find memory from other folder and dispose the view tab - if (!foundTab) { - Enumeration<CTabFolder> enumeration = fTabFolderForMemoryBlock.elements(); - while (enumeration.hasMoreElements()) { - CTabFolder otherTabFolder = enumeration.nextElement(); - tabs = otherTabFolder.getItems(); - IMemoryViewTab viewTab = null; - for (int i = 0; i < tabs.length; i++) { - viewTab = (IMemoryViewTab) tabs[i].getData(); - if (viewTab.getRendering().getMemoryBlock() == memory) { - if (viewTab.getRendering() == rendering) { - foundTab = true; - disposeTab(tabs[i]); - break; - } + // if a tab is not found in the current top control + // this deletion is a result of a debug target termination + // find memory from other folder and dispose the view tab + if (!foundTab) { + Enumeration<CTabFolder> enumeration = fTabFolderForMemoryBlock.elements(); + while (enumeration.hasMoreElements()) { + CTabFolder otherTabFolder = enumeration.nextElement(); + tabs = otherTabFolder.getItems(); + IMemoryViewTab viewTab2 = null; + for (int i2 = 0; i2 < tabs.length; i2++) { + viewTab2 = (IMemoryViewTab) tabs[i2].getData(); + if (viewTab2.getRendering().getMemoryBlock() == memory) { + if (viewTab2.getRendering() == rendering) { + foundTab = true; + disposeTab(tabs[i2]); + break; } } } } - IMemoryViewTab top = getTopMemoryTab(); - - // update selection - if (top != null) { - setRenderingSelection(top.getRendering()); - } + } + IMemoryViewTab top = getTopMemoryTab(); - updateToolBarActionsEnablement(); + // update selection + if (top != null) { + setRenderingSelection(top.getRendering()); } + + updateToolBarActionsEnablement(); }); } @@ -1194,13 +1182,10 @@ public class RenderingViewPane extends AbstractMemoryViewPane implements IMemory final CTabFolder tabFolder = fTabFolderForMemoryBlock.get(memoryblk); if (tabFolder != null) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - int index = getIndexOfCreateRenderingTab(tabFolder); - if (index >= 0) { - tabFolder.setSelection(index); - } + Display.getDefault().asyncExec(() -> { + int index = getIndexOfCreateRenderingTab(tabFolder); + if (index >= 0) { + tabFolder.setSelection(index); } }); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AsyncTableRenderingViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AsyncTableRenderingViewer.java index 8069d259b..e6a1f884f 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AsyncTableRenderingViewer.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AsyncTableRenderingViewer.java @@ -186,8 +186,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { fTableCursor.addDisposeListener(new DisposeListener() { @Override public void widgetDisposed(DisposeEvent e) { - if (fTableCursor == null) + if (fTableCursor == null) { return; + } fTableCursor.removeTraverseListener(fCursorTraverseListener); fTableCursor.removeKeyListener(fCursorKeyAdapter); fTableCursor.removeMouseListener(fCursorMouseListener); @@ -231,14 +232,16 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { if (e.button == 1) { int col = fTableCursor.getColumn(); - if (col > 0 && col <= (getNumCol())) + if (col > 0 && col <= (getNumCol())) { activateCellEditor(null); + } } } private void handleCursorTraverseEvt(TraverseEvent e){ - if (fTableCursor.getRow() == null) + if (fTableCursor.getRow() == null) { return; + } Table table = (Table)fTableCursor.getParent(); int row = table.indexOf(fTableCursor.getRow()); @@ -319,8 +322,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { synchronized private Object doAttemptSetKeySelection(final Object key) { - if (getBufferTopKey() == null || getBufferEndKey() == null) + if (getBufferTopKey() == null || getBufferEndKey() == null) { return key; + } // calculate selected row address int[] location = getCoordinatesFromKey(key); @@ -337,11 +341,13 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { if (DebugUIPlugin.DEBUG_DYNAMIC_LOADING) { DebugUIPlugin.trace(getRendering() + " set cursor selection " + ((BigInteger)key).toString(16)); //$NON-NLS-1$ } - if (fPendingSelection != null && fPendingSelection != key) + if (fPendingSelection != null && fPendingSelection != key) { return Status.OK_STATUS; + } - if (fTableCursor.isDisposed()) + if (fTableCursor.isDisposed()) { return Status.OK_STATUS; + } // by the time this is called, the location may not be valid anymore int[] newLocation = getCoordinatesFromKey(key); @@ -431,8 +437,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { { AbstractVirtualContentTableModel model = getVirtualContentModel(); - if (model != null) + if (model != null) { return getKey(model.getElements().length-1); + } return null; } @@ -440,8 +447,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { { int idx = -1; AbstractVirtualContentTableModel model = getVirtualContentModel(); - if (model != null) + if (model != null) { idx = model.indexOfKey(key); + } return idx; } @@ -470,8 +478,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { public Object getKey(int row, int col) { AbstractVirtualContentTableModel model = getVirtualContentModel(); - if (model != null) + if (model != null) { return model.getKey(row, col); + } return null; } @@ -500,10 +509,11 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { } } - if (fPendingSelection != null) + if (fPendingSelection != null) { oldSelectionKey = fPendingSelection; - else + } else { oldSelectionKey = getSelectionKey(); + } if (DebugUIPlugin.DEBUG_DYNAMIC_LOADING) { @@ -576,8 +586,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { { if (!fTableCursor.isDisposed()) { - if (fTableCursor.isVisible() != show) + if (fTableCursor.isVisible() != show) { fTableCursor.setVisible(show); + } } } else @@ -588,8 +599,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { public IStatus runInUIThread(IProgressMonitor monitor) { if (!fTableCursor.isDisposed()) { - if (fTableCursor.isVisible() != show) + if (fTableCursor.isVisible() != show) { fTableCursor.setVisible(show); + } } return Status.OK_STATUS; }}; @@ -622,13 +634,15 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { } } } - if (colNum >= 0) + if (colNum >= 0) { break; + } } // if column position cannot be determined, return - if (colNum < 1) + if (colNum < 1) { return; + } // handle user mouse click onto table // move cursor to new position @@ -656,8 +670,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { final int col = fTableCursor.getColumn(); final int row = indexOf(fSelectionKey); - if (row < 0) + if (row < 0) { return; + } // do not allow user to edit address column if (col == 0 || col > getNumCol()) { @@ -678,8 +693,9 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { boolean canEdit = cellModifier .canModify(element, (String) property); - if (!canEdit) + if (!canEdit) { return; + } CellEditor editor = getCellEditors()[col]; if (editor != null) { @@ -754,43 +770,35 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { private void handleKeyEventInEditor(KeyEvent event) { final KeyEvent e = event; - Display.getDefault().asyncExec(new Runnable() - { - @Override - public void run() + Display.getDefault().asyncExec(() -> { + Object obj = e.getSource(); + if (obj instanceof Control) { - Object obj = e.getSource(); - if (obj instanceof Control) - { - Control control = (Control)obj; - int row = fCellEditorListener.getRow(); - int col = fCellEditorListener.getCol(); + Control control = (Control) obj; + int row = fCellEditorListener.getRow(); + int col = fCellEditorListener.getCol(); - try + try + { + switch (e.keyCode) { - switch (e.keyCode) - { - case 0: - doHandleKeyEvent(row, col); - break; - case SWT.ESC: - cancelEditing(row, col); - break; - default : - doHandleKeyEvent(row, col); + case 0: + doHandleKeyEvent(row, col); + break; + case SWT.ESC: + cancelEditing(row, col); + break; + default: + doHandleKeyEvent(row, col); break; - } } - catch (NumberFormatException e1) - { - MemoryViewUtil.openError(DebugUIMessages.MemoryViewCellModifier_failure_title, - DebugUIMessages.MemoryViewCellModifier_data_is_invalid, null); + } catch (NumberFormatException e1) { + MemoryViewUtil.openError(DebugUIMessages.MemoryViewCellModifier_failure_title, DebugUIMessages.MemoryViewCellModifier_data_is_invalid, null); - fTableCursor.setSelection(row, col); - handleCursorMoved(); + fTableCursor.setSelection(row, col); + handleCursorMoved(); - removeListeners(control); - } + removeListeners(control); } } }); @@ -940,12 +948,13 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { public void formatViewer() { - if (getModel() == null || !hasPendingUpdates()) + if (getModel() == null || !hasPendingUpdates()) { doFormatViewer(); - else + } else { // do not format in the middle of an update // set pending update and will format when update is completed fPendingFormatViewer = true; + } } /** @@ -953,18 +962,14 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { */ private void doFormatViewer() { fPendingFormatViewer = false; - preservingSelection(new Runnable() { - - @Override - public void run() { - // causes the content of the table viewer to be replaced - // without asking content adapter for content - AbstractVirtualContentTableModel model = getVirtualContentModel(); - if (model != null) - { - model.handleViewerChanged(); - } - }}); + preservingSelection(() -> { + // causes the content of the table viewer to be replaced + // without asking content adapter for content + AbstractVirtualContentTableModel model = getVirtualContentModel(); + if (model != null) { + model.handleViewerChanged(); + } + }); } private void fireSelectionChanged(Object selectionKey) @@ -984,22 +989,18 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { @Override public void refresh(boolean getContent) { - if (getContent) + if (getContent) { refresh(); - else + } else { - preservingSelection(new Runnable() { - - @Override - public void run() { - AbstractVirtualContentTableModel model = getVirtualContentModel(); - if (model != null) - { - Object[] elements = model.getElements(); - model.remove(elements); - model.add(elements); - } - }}); + preservingSelection(() -> { + AbstractVirtualContentTableModel model = getVirtualContentModel(); + if (model != null) { + Object[] elements = model.getElements(); + model.remove(elements); + model.add(elements); + } + }); } } @@ -1011,10 +1012,11 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { // TODO: work around swt bug, must force a table cursor redraw after top index is changed // BUG 130130 int[] coordinates = getCoordinatesFromKey(getSelectionKey()); - if (coordinates.length > 0) + if (coordinates.length > 0) { fTableCursor.setVisible(true); - else + } else { fTableCursor.setVisible(false); + } } } @@ -1045,17 +1047,14 @@ public class AsyncTableRenderingViewer extends AsyncVirtualContentTableViewer { // and the cursor should not be redrawn yet. if (!hasPendingSetTopIndex()) { - preservingSelection(new Runnable() { - - @Override - public void run() { - - int[] coordinates = getCoordinatesFromKey(getSelectionKey()); - if (coordinates.length > 0) - fTableCursor.setVisible(true); - else - fTableCursor.setVisible(false); - }}); + preservingSelection(() -> { + int[] coordinates = getCoordinatesFromKey(getSelectionKey()); + if (coordinates.length > 0) { + fTableCursor.setVisible(true); + } else { + fTableCursor.setVisible(false); + } + }); } } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java index 18b1aa5dd..dd8a601ac 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java @@ -101,12 +101,9 @@ public abstract class BasicDebugViewContentProvider implements IStructuredConten if (element == null) { return; } - Runnable r= new Runnable() { - @Override - public void run() { - if (!isDisposed()) { - doHandleDebugEvent(event); - } + Runnable r = () -> { + if (!isDisposed()) { + doHandleDebugEvent(event); } }; @@ -118,8 +115,9 @@ public abstract class BasicDebugViewContentProvider implements IStructuredConten */ @Override public void handleDebugEvents(DebugEvent[] events) { - for (int i=0; i < events.length; i++) + for (int i=0; i < events.length; i++) { handleDebugEvent(events[i]); + } } /** diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java index 6a3000bef..c319a1401 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java @@ -50,13 +50,10 @@ public class TableRenderingPrefAction extends ActionDelegate implements IViewAct manager.addToRoot(targetNode); final PreferenceDialog dialog = new PreferenceDialog(DebugUIPlugin.getShell(), manager); final boolean [] result = new boolean[] { false }; - BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() { - @Override - public void run() { - dialog.create(); - dialog.setMessage(targetNode.getLabelText()); - result[0]= (dialog.open() == Window.OK); - } + BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), () -> { + dialog.create(); + dialog.setMessage(targetNode.getLabelText()); + result[0] = (dialog.open() == Window.OK); }); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java index 6870e23a4..68d27ba2a 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java @@ -54,21 +54,19 @@ public class SelectLogicalStructureAction extends Action { if (!getView().isAvailable()) { return; } - BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), new Runnable() { - @Override - public void run() { - // Checking this action sets the type to fType, unchecking it sets the type - // to null ("none selected") - ILogicalStructureType type= null; - IAction action = getView().getAction("ToggleContentProviders"); //$NON-NLS-1$ - if (isChecked()) { - type= fType; - action.setChecked(true); - } - action.run(); - DebugPlugin.setDefaultStructureType(fAvailableTypes, type); - getView().getViewer().refresh(); + BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), () -> { + // Checking this action sets the type to fType, unchecking it sets + // the type + // to null ("none selected") + ILogicalStructureType type = null; + IAction action = getView().getAction("ToggleContentProviders"); //$NON-NLS-1$ + if (isChecked()) { + type = fType; + action.setChecked(true); } + action.run(); + DebugPlugin.setDefaultStructureType(fAvailableTypes, type); + getView().getViewer().refresh(); }); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java index 504a1fd53..b086c229f 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java @@ -51,12 +51,7 @@ public class ToggleLogicalStructureAction extends Action { return; } getView().setShowLogicalStructure(isChecked()); - BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), new Runnable() { - @Override - public void run() { - getView().getViewer().refresh(); - } - }); + BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), () -> getView().getViewer().refresh()); } /* (non-Javadoc) diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleShowColumnsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleShowColumnsAction.java index 7294468b0..9c8f34cfa 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleShowColumnsAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleShowColumnsAction.java @@ -48,12 +48,7 @@ public class ToggleShowColumnsAction extends Action implements IUpdate { if (fViewer.getControl().isDisposed()) { return; } - BusyIndicator.showWhile(fViewer.getControl().getDisplay(), new Runnable() { - @Override - public void run() { - fViewer.setShowColumns(isChecked()); - } - }); + BusyIndicator.showWhile(fViewer.getControl().getDisplay(), () -> fViewer.setShowColumns(isChecked())); } /* (non-Javadoc) |