From 2c64112a4c2d7ba41cb9dc8d821ba5c2ef13f337 Mon Sep 17 00:00:00 2001 From: Ben Steffensmeier Date: Tue, 14 Aug 2012 10:25:38 -0500 Subject: [PATCH] Issue #1018 disable many toolbar and menu items when the current editor is not a display pane container Former-commit-id: 0857d971b59391b17f80d640352e9f2541adc112 [formerly a4c46c7f55b500ad8e0bb5d64d7203844e61f7f8 [formerly 7ae4af9778cfa58fc755041479aadec5e6ad90b0]] Former-commit-id: a4c46c7f55b500ad8e0bb5d64d7203844e61f7f8 Former-commit-id: 474fe440371781adf3babf82a4a3deb1d4b48fbd --- cave/com.raytheon.uf.viz.d2d.ui/plugin.xml | 20 +++++++++++++++ .../viz/d2d/ui/actions/TimeOptionsAction.java | 3 +++ .../plugin.xml | 5 ++++ .../plugin.xml | 25 +++++++++++++++++++ .../ui/tools/looping/FasterLoopSpeedTool.java | 4 ++- .../ui/tools/looping/LoopPropertiesTool.java | 6 ++--- .../ui/tools/looping/SlowerLoopSpeedTool.java | 4 ++- cave/com.raytheon.viz.ui/plugin.xml | 10 ++++++++ .../viz/ui/actions/LoadSerializedXml.java | 17 ++++++++++--- 9 files changed, 85 insertions(+), 9 deletions(-) diff --git a/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml b/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml index cbeadc3c23..a34df1b7fd 100644 --- a/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml +++ b/cave/com.raytheon.uf.viz.d2d.ui/plugin.xml @@ -1400,6 +1400,11 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/FasterLoopSpeedTool.java b/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/FasterLoopSpeedTool.java index 724c757f55..fe3db26c39 100644 --- a/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/FasterLoopSpeedTool.java +++ b/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/FasterLoopSpeedTool.java @@ -50,7 +50,9 @@ public class FasterLoopSpeedTool extends AbstractTool { @Override public Object execute(ExecutionEvent arg0) throws ExecutionException { super.execute(arg0); - PageUpDownKey.handlePageUp(editor); + if (editor != null) { + PageUpDownKey.handlePageUp(editor); + } return null; } } diff --git a/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/LoopPropertiesTool.java b/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/LoopPropertiesTool.java index bcec498ef0..8febb2c26c 100644 --- a/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/LoopPropertiesTool.java +++ b/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/LoopPropertiesTool.java @@ -58,9 +58,9 @@ public class LoopPropertiesTool extends AbstractTool { Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() .getShell(); - - LoopPropertiesDialog.openDialog(shell, this.editor); - + if (editor != null) { + LoopPropertiesDialog.openDialog(shell, this.editor); + } return null; } diff --git a/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/SlowerLoopSpeedTool.java b/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/SlowerLoopSpeedTool.java index 8a5895bc77..0a62814dc6 100644 --- a/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/SlowerLoopSpeedTool.java +++ b/cave/com.raytheon.viz.ui.tools.looping/src/com/raytheon/viz/ui/tools/looping/SlowerLoopSpeedTool.java @@ -50,7 +50,9 @@ public class SlowerLoopSpeedTool extends AbstractTool { @Override public Object execute(ExecutionEvent arg0) throws ExecutionException { super.execute(arg0); - PageUpDownKey.handlePageDown(editor); + if (editor != null) { + PageUpDownKey.handlePageDown(editor); + } return null; } diff --git a/cave/com.raytheon.viz.ui/plugin.xml b/cave/com.raytheon.viz.ui/plugin.xml index 1e6f8ea159..093399b231 100644 --- a/cave/com.raytheon.viz.ui/plugin.xml +++ b/cave/com.raytheon.viz.ui/plugin.xml @@ -451,10 +451,20 @@ + + + + + + + + + + b.getDisplays().length) { - ((IMultiPaneEditor) container) - .removePane(container.getDisplayPanes()[container - .getDisplayPanes().length - 1]); + if (container.getDisplayPanes().length > b.getDisplays().length) { + VizApp.runSync(new Runnable() { + @Override + public void run() { + while (container.getDisplayPanes().length > b + .getDisplays().length) { + ((IMultiPaneEditor) container).removePane(container + .getDisplayPanes()[container + .getDisplayPanes().length - 1]); + } + } + }); } + } List orderedDisplays = Arrays.asList(b .getDisplays());