diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDeleteSelectionTimeRangeDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDeleteSelectionTimeRangeDialog.java index b3a1fdf8bf..008605118d 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDeleteSelectionTimeRangeDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDeleteSelectionTimeRangeDialog.java @@ -37,6 +37,7 @@ import com.raytheon.viz.gfe.dialogs.SaveDeleteSelectTRDialog; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Jan 23, 2008 Eric Babin Initial Creation + * Oct 25, 2012 1287 rferrel Changes for non-blocking ShowDeleteSelectionTimeRangeDialog. * * * @@ -46,7 +47,7 @@ import com.raytheon.viz.gfe.dialogs.SaveDeleteSelectTRDialog; public class ShowDeleteSelectionTimeRangeDialog extends AbstractHandler { - protected static final String DEFAULT_MSG = "You have selected delete on a default period. Only the user's entry of this item will be deleted. That is, the item will be reset to the Base default value. Continue?"; + private SaveDeleteSelectTRDialog dialog; /** * @@ -68,42 +69,17 @@ public class ShowDeleteSelectionTimeRangeDialog extends AbstractHandler { return null; } - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() - .getShell(); + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { - SaveDeleteSelectTRDialog dialog = new SaveDeleteSelectTRDialog(shell, - dataManager, "Delete"); - dialog.setBlockOnOpen(true); - dialog.open(); - // String delName = null; - // if (dialog.getReturnCode() == Window.OK) { - // delName = dialog.getItemToDelete(); - // if (selectTRmgr.getRange(delName).getLevel() != - // LocalizationLevel.USER) { - // // Confirm - // if (!MessageDialog.openConfirm(shell, - // "Default Time Period", DEFAULT_MSG)) { - // returnCode = Window.CANCEL; - // } - // } - // } - // - // if (returnCode == Window.OK) { - // selectTRmgr.remove(delName); - // TimeScaleDisplayedPeriodsPreference - // .removeTimeScaleDisplayedPeriod(delName); - // try { - // selectTRmgr.save(LocalizationLevel.USER); - // } catch (Exception e) { - // throw new ExecutionException( - // "Error saving SelectTimeRanges", e); - // } - // } - // } else { - // UFStatus.handle(Priority.PROBLEM, Activator.PLUGIN_ID, - // StatusConstants.CATEGORY_GFE, null, - // "Error loading time ranges"); - // } + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getShell(); + + dialog = new SaveDeleteSelectTRDialog(shell, dataManager, "Delete"); + dialog.setBlockOnOpen(false); + dialog.open(); + } else { + dialog.bringToTop(); + } return null; } } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowSaveSelectionTimeRangeDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowSaveSelectionTimeRangeDialog.java index d7f4f6472b..570c6cadaa 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowSaveSelectionTimeRangeDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowSaveSelectionTimeRangeDialog.java @@ -38,6 +38,7 @@ import com.raytheon.viz.gfe.dialogs.SaveDeleteSelectTRDialog; * ------------ ---------- ----------- -------------------------- * Jan 23, 2008 Eric Babin Initial Creation * Nov 11, 2008 1213 wdougherty Use SelectTimeRangeContainer + * Oct 25, 2012 1287 rferrel Code changes for non-blocking SaveDeleteSelectTRDialog. * * * @@ -46,6 +47,7 @@ import com.raytheon.viz.gfe.dialogs.SaveDeleteSelectTRDialog; */ public class ShowSaveSelectionTimeRangeDialog extends AbstractHandler { + private SaveDeleteSelectTRDialog dialog; public ShowSaveSelectionTimeRangeDialog() { } @@ -64,13 +66,16 @@ public class ShowSaveSelectionTimeRangeDialog extends AbstractHandler { return null; } - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() - .getShell(); + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getShell(); - SaveDeleteSelectTRDialog dialog = new SaveDeleteSelectTRDialog(shell, - dataManager, "Save"); - dialog.setBlockOnOpen(true); - dialog.open(); + dialog = new SaveDeleteSelectTRDialog(shell, dataManager, "Save"); + dialog.setBlockOnOpen(false); + dialog.open(); + } else { + dialog.bringToTop(); + } return null; } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteSelectTRDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteSelectTRDialog.java index 72a83422b2..906cd408d1 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteSelectTRDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteSelectTRDialog.java @@ -54,7 +54,7 @@ import com.raytheon.viz.ui.dialogs.CaveJFACEDialog; import com.raytheon.viz.ui.widgets.SpinScale; /** - * TODO Add Description + * Dialog for performing selected time range save or delete. * *
* @@ -63,6 +63,7 @@ import com.raytheon.viz.ui.widgets.SpinScale; * ------------ ---------- ----------- -------------------------- * Dec 7, 2009 randerso Initial creation * Aug 1, 2012 #965 dgilling Change location of SelectTimeRange. + * Oct 25, 2012 #1287 rferrel Code cleanup part of non-blocking dialogs. * ** @@ -338,8 +339,6 @@ public class SaveDeleteSelectTRDialog extends CaveJFACEDialog { } else { mode = Mode.ZULU; } - // LogStream.logUse("Save",id, self.__modeVar.get(), - // self.__startScale.get(), self.__stopScale.get()) dataManager.getSelectTimeRangeManager().save(id, startScale.getSelection(), stopScale.getSelection(), mode); @@ -361,10 +360,6 @@ public class SaveDeleteSelectTRDialog extends CaveJFACEDialog { } if (!protectedIds.contains(id[0]) && ids.contains(id[0])) { - // verify = self.__accessMgr.verifyDelete( - // id, self.__category, self.__parent) - // if verify == 1: - // LogStream.logUse("Delete", id) if (!MessageDialog.openConfirm(this.getShell(), "Confirm Delete", "Delete Select Time Range: \"" + id[0] + "\"?")) { return;