diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowWeatherElementBrowserDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowWeatherElementBrowserDialog.java index 4d2bcb779d..cc0b91d99d 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowWeatherElementBrowserDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowWeatherElementBrowserDialog.java @@ -38,6 +38,7 @@ import com.raytheon.viz.gfe.dialogs.WeatherElementBrowserDialog; * 02/22/2008 Eric Babin Initial Creation * 04/09/2009 1288 rjpeter Removed explicit refresh of SpatialDisplayManager. * 04/30/2009 2282 rjpeter Moved dialog handling to the dialog. + * 10/30/2012 1229 rferrel Changed for non-blocking WeatherElementBrowserDialog. * * * @author ebabin @@ -45,6 +46,7 @@ import com.raytheon.viz.gfe.dialogs.WeatherElementBrowserDialog; */ public class ShowWeatherElementBrowserDialog extends AbstractHandler { + private WeatherElementBrowserDialog dialog; /* * (non-Javadoc) @@ -56,13 +58,18 @@ public class ShowWeatherElementBrowserDialog extends AbstractHandler { @Override public Object execute(ExecutionEvent arg0) throws ExecutionException { DataManager dm = DataManager.getCurrentInstance(); - if (dm != null) { + if (dm == null) { + return null; + } + + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() .getShell(); - WeatherElementBrowserDialog dialog = new WeatherElementBrowserDialog( - shell, dm); - dialog.setBlockOnOpen(true); + dialog = new WeatherElementBrowserDialog(shell, dm); + dialog.setBlockOnOpen(false); dialog.open(); + } else { + dialog.bringToTop(); } return null; diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java index ecf249623b..0e14118314 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java @@ -72,6 +72,7 @@ import com.raytheon.viz.ui.widgets.ToggleSelectList; * 09/12/2012 #1117 dgilling Revert previous changes, retrieve * database list from ParmManager * not EDEX. + * 10/30/2012 1298 rferrel Code clean up non-blocking dialog. * * * @author ebabin @@ -109,9 +110,9 @@ public class WeatherElementBrowserDialog extends CaveJFACEDialog { private ParmID[] currentDisplayedParms; - private static final Point size = new Point(603, 778); + private final Point size = new Point(603, 778); - private static final String IFP = "IFP"; + private final String IFP = "IFP"; /** * Constructor