From 4532cb8445ff3c3c401e0ec8e2f8da2d10e9449a Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Tue, 23 Oct 2012 14:54:47 -0500 Subject: [PATCH 1/7] Issue #1287 Changes for non-blocking BreakLockDialog. Change-Id: Ie2626e8960d69a200bc1b5c6ee28c6aa361f30ca Former-commit-id: 9e2496dd0bbb900db40cff91309f40d659754416 [formerly a9dbaae595e064ed72f6350730bdda1bf593b949] [formerly 9e2496dd0bbb900db40cff91309f40d659754416 [formerly a9dbaae595e064ed72f6350730bdda1bf593b949] [formerly d33179f00907368cb144dd22b4dbb5498d8e3975 [formerly 2dc320c31ceed44bba70d6738ce40d703858be68]]] Former-commit-id: d33179f00907368cb144dd22b4dbb5498d8e3975 Former-commit-id: 3790b5d9c44e2c7d61232ed89d70fe9a166b51cc [formerly 9f0586231ffa40f831d4c2280f783f42d20f9b36] Former-commit-id: 627c685f42ff986a537021e4385c430febeb0f4a --- .../viz/gfe/actions/ShowBreakLock.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowBreakLock.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowBreakLock.java index f01e90d7f5..18e14eb625 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowBreakLock.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowBreakLock.java @@ -29,13 +29,14 @@ import com.raytheon.viz.gfe.core.DataManager; import com.raytheon.viz.gfe.dialogs.BreakLockDialog; /** - * TODO Add Description ShowBreakLock.java Jun 17, 2008 + * Action class to bring up the break locck dialog. * *
  * SOFTWARE HISTORY
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * 	Jun 17, 2008					Eric Babin Initial Creation
+ * Oct 27, 2012 1287       rferrel     Changes for non-blocking BreakLockDialog.
  * 
  * 
* @@ -44,6 +45,7 @@ import com.raytheon.viz.gfe.dialogs.BreakLockDialog; */ public class ShowBreakLock extends AbstractHandler { + private BreakLockDialog dialog; /* * (non-Javadoc) @@ -59,12 +61,16 @@ public class ShowBreakLock extends AbstractHandler { return null; } - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() - .getShell(); + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getShell(); - BreakLockDialog dialog = new BreakLockDialog(shell, dm); - dialog.setBlockOnOpen(true); - dialog.open(); + dialog = new BreakLockDialog(shell, dm); + dialog.setBlockOnOpen(false); + dialog.open(); + } else { + dialog.bringToTop(); + } return null; } From b9d760ac42f32e804dd3ed043015bf1226bde1e2 Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Tue, 23 Oct 2012 16:02:27 -0500 Subject: [PATCH 2/7] Issue #1287 Changes for non-blocking but modal CopyGridsDialog. Changes from reviewer comments. Change-Id: I743752720d1c770e740912e2d6c3049d516c8183 Former-commit-id: c132e8cc91dd995cbcfdb2f8bf7e0b277aa9856d [formerly 1cac983c4fecb40f6392de97142019a05873bb40] [formerly c132e8cc91dd995cbcfdb2f8bf7e0b277aa9856d [formerly 1cac983c4fecb40f6392de97142019a05873bb40] [formerly e49535d318dfc4539e4e7a0f6d6391e0f97af631 [formerly ced609c6997ae3a4fc51d254218be600d5338ac2]]] Former-commit-id: e49535d318dfc4539e4e7a0f6d6391e0f97af631 Former-commit-id: 084a35d697e02e070e70a007a5e90a14af5161ee [formerly 277c5c1a1d8b9eed3fc7e4fa3397674260b469d6] Former-commit-id: 724ddea4d2bf40e2c4e5978178ec26d18898693f --- .../viz/gfe/actions/ShowCopyGridsDialog.java | 49 ++++++++++++------- .../viz/gfe/dialogs/CopyGridsDialog.java | 3 +- 2 files changed, 33 insertions(+), 19 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCopyGridsDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCopyGridsDialog.java index afb7617abe..d4678d3cc2 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCopyGridsDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCopyGridsDialog.java @@ -38,6 +38,7 @@ import com.raytheon.viz.gfe.dialogs.CopyGridsDialog; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Feb 27, 2008 Eric Babin Initial Creation + * Oct 23, 2012 1287 rferrel Changes for non-blocking CopyGridsDialog. * * * @@ -47,9 +48,16 @@ import com.raytheon.viz.gfe.dialogs.CopyGridsDialog; public class ShowCopyGridsDialog extends AbstractHandler { - private static IUFStatusHandler statusHandler = UFStatus + private IUFStatusHandler statusHandler = UFStatus .getHandler(ShowCopyGridsDialog.class); + /** + * The active dialog. This assumes the dialog is modal. If the dialog is not + * modal then the current logic will bring the active dialog back to the top + * no matter which option is selected. + */ + private CopyGridsDialog dialog; + /* * (non-Javadoc) * @@ -64,27 +72,32 @@ public class ShowCopyGridsDialog extends AbstractHandler { return null; } - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() - .getShell(); + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getShell(); - boolean isSelected; - String selectedOrAll = event.getParameter("selectedOrAll"); - if ("selected".equalsIgnoreCase(selectedOrAll)) { - isSelected = true; - } else if ("all".equalsIgnoreCase(selectedOrAll)) { - isSelected = false; + boolean isSelected; + String selectedOrAll = event.getParameter("selectedOrAll"); + if ("selected".equalsIgnoreCase(selectedOrAll)) { + isSelected = true; + } else if ("all".equalsIgnoreCase(selectedOrAll)) { + isSelected = false; + } else { + statusHandler + .error("Invalid parmeter \"" + + selectedOrAll + + "\" in ShowCopyGridsDialog. Value must be \"selected\" or \"all\"."); + dialog = null; + return null; + } + + dialog = new CopyGridsDialog(shell, dm, isSelected); + dialog.setBlockOnOpen(false); + dialog.open(); } else { - statusHandler - .error("Invalid parmeter \"" - + selectedOrAll - + "\" in ShowCopyGridsDialog. Value must be \"selected\" or \"all\"."); - return null; + dialog.bringToTop(); } - CopyGridsDialog dialog = new CopyGridsDialog(shell, dm, isSelected); - dialog.setBlockOnOpen(true); - dialog.open(); - return null; } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CopyGridsDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CopyGridsDialog.java index 6f3a8fd575..fa7a0c5bfe 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CopyGridsDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CopyGridsDialog.java @@ -46,6 +46,7 @@ import com.raytheon.viz.ui.dialogs.CaveJFACEDialog; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Feb 26, 2008 Eric Babin Initial Creation + * Oct 23, 2012 1287 rferrel Made dialog modal like AWIPS 1. * * * @@ -70,7 +71,7 @@ public class CopyGridsDialog extends CaveJFACEDialog { super(parent); this.dataManager = dataManager; this.parmMgr = dataManager.getParmManager(); - this.setShellStyle(SWT.TITLE | SWT.MODELESS | SWT.CLOSE); + this.setShellStyle(SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL); this.isSelected = isSelectedType; } From c66954b14b320b950d7e070a8c41eb2f064c2c12 Mon Sep 17 00:00:00 2001 From: Slav Korolev Date: Wed, 24 Oct 2012 08:48:13 -0400 Subject: [PATCH 3/7] Issue #1280. Changes for non-blocking TrendPlotDlg. Fixed format. Change-Id: I26af77a545c1ecd76dc6a15111e73d580992d77d Former-commit-id: 2beb1dbc67e1f14aa71417caa564db0ffdf273c1 [formerly 52601577db93fec8559d7c694b9867b5dd6422b1] [formerly 2beb1dbc67e1f14aa71417caa564db0ffdf273c1 [formerly 52601577db93fec8559d7c694b9867b5dd6422b1] [formerly 8c1719f248ad17985ed66941a4facff7d1bd32d1 [formerly d97fb49f2574dc320366475e02a5784be33bbaaf]]] Former-commit-id: 8c1719f248ad17985ed66941a4facff7d1bd32d1 Former-commit-id: 14c942cf5dc5706a5da18a6fe564db59582e8921 [formerly 0e7baf252ad81ca57216d77dcc180898df2e23bb] Former-commit-id: f3dfa16b3a032a13d76f25dfff9fbc326d6555ec --- .../uf/viz/monitor/trendplot/TrendPlotDlg.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/cave/com.raytheon.uf.viz.monitor/src/com/raytheon/uf/viz/monitor/trendplot/TrendPlotDlg.java b/cave/com.raytheon.uf.viz.monitor/src/com/raytheon/uf/viz/monitor/trendplot/TrendPlotDlg.java index dadf37911d..32d48c00a1 100644 --- a/cave/com.raytheon.uf.viz.monitor/src/com/raytheon/uf/viz/monitor/trendplot/TrendPlotDlg.java +++ b/cave/com.raytheon.uf.viz.monitor/src/com/raytheon/uf/viz/monitor/trendplot/TrendPlotDlg.java @@ -47,6 +47,7 @@ import com.raytheon.viz.ui.dialogs.CaveSWTDialog; * ------------ ---------- ----------- -------------------------- * 2009-12-02 vkorolev Initial creation. * 2010-01-21 4268 vkorolev Fixed Trend Plot + * 2012-10-15 1229 vkorolev Changes for non-blocking TrendPlotDlg * * * @author vkorolev @@ -65,9 +66,12 @@ public class TrendPlotDlg extends CaveSWTDialog { public Date curdate; + public String var; + public TrendPlotDlg(Shell parent, String selectedZone, String station, ArrayList product, String dataName) { - super(parent, SWT.DIALOG_TRIM | SWT.RESIZE); + super(parent, SWT.DIALOG_TRIM | SWT.RESIZE, CAVE.DO_NOT_BLOCK + | CAVE.INDEPENDENT_SHELL); setText(getTrendPlotName(product) + " Trend Plot for " + station + "#" + dataName); @@ -89,13 +93,13 @@ public class TrendPlotDlg extends CaveSWTDialog { @Override protected void initializeComponents(Shell shell) { - setReturnValue(false); + setReturnValue(product); // Initialize all layouts Iterator prodVar = product.iterator(); while (prodVar.hasNext()) { - String varname = prodVar.next(); - new TrendPlotCanvas(shell, selectedZone, station, varname, - dataName, obData); + String var = prodVar.next(); + new TrendPlotCanvas(shell, selectedZone, station, var, dataName, + obData); } addCloseBtn(); } From 077baaca1ca815a74ed56cc0354e3149dcdb8147 Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Wed, 24 Oct 2012 09:30:03 -0500 Subject: [PATCH 4/7] Issue #1287 Changes for non-blocking DefineSamplesViaLatLongDialog. Change-Id: Id9b6d7feec00ae483f80cfa386ad31fdce3d8dea Former-commit-id: db4f7b17cfd9273f776c66a22e0dd64789e1d679 [formerly 8d8850174e3b31a790b929f924a0425662924c87] [formerly db4f7b17cfd9273f776c66a22e0dd64789e1d679 [formerly 8d8850174e3b31a790b929f924a0425662924c87] [formerly 122012d767d33924b1c9a93e66b9ff3b0b46d8f1 [formerly a90e1b6f168e54d3a1a6581b692e84288de537f3]]] Former-commit-id: 122012d767d33924b1c9a93e66b9ff3b0b46d8f1 Former-commit-id: 8cd67ae67dace0ea14a36952ed511b68e1f367fe [formerly 6aab2f1d8b394101ebbd02c476f9fe1a86cf0e8f] Former-commit-id: fba81ec4b0b155acdba9f7572ac05a885800ea6e --- .../actions/ShowDefineSamplesLatLongAction.java | 17 +++++++++++------ .../dialogs/DefineSamplesViaLatLongDialog.java | 3 ++- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineSamplesLatLongAction.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineSamplesLatLongAction.java index 5f4fb08d4d..72ba619ce7 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineSamplesLatLongAction.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineSamplesLatLongAction.java @@ -36,6 +36,7 @@ import com.raytheon.viz.gfe.dialogs.DefineSamplesViaLatLongDialog; * ------------ ---------- ----------- -------------------------- * Feb 15, 2008 Eric Babin Initial Creation * Apr 9, 2009 1288 rjpeter Removed explicit refresh of SpatialDisplayManager. + * Oct 24, 2012 1287 rferrel Changes for non-blocking DefineSamplesViaLatLongDialog. * * * @@ -44,6 +45,7 @@ import com.raytheon.viz.gfe.dialogs.DefineSamplesViaLatLongDialog; */ public class ShowDefineSamplesLatLongAction extends AbstractHandler { + private DefineSamplesViaLatLongDialog dialog; /* * (non-Javadoc) @@ -54,13 +56,16 @@ public class ShowDefineSamplesLatLongAction extends AbstractHandler { */ @Override public Object execute(ExecutionEvent arg0) throws ExecutionException { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() - .getShell(); + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getShell(); - DefineSamplesViaLatLongDialog dialog = new DefineSamplesViaLatLongDialog( - shell); - dialog.setBlockOnOpen(true); - dialog.open(); + dialog = new DefineSamplesViaLatLongDialog(shell); + dialog.setBlockOnOpen(false); + dialog.open(); + } else { + dialog.bringToTop(); + } return null; } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineSamplesViaLatLongDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineSamplesViaLatLongDialog.java index 49bcd0d708..56533b3245 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineSamplesViaLatLongDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineSamplesViaLatLongDialog.java @@ -43,6 +43,7 @@ import com.vividsolutions.jts.geom.Coordinate; * ------------ ---------- ----------- -------------------------- * Feb 15, 2008 Eric Babin Initial Creation * 04/10/2009 #1290 rjpeter Moved field validation to when ok pressed. + * Oct 24, 2012 #1287 rferrel Change shell style. * * * @author ebabin @@ -61,7 +62,7 @@ public class DefineSamplesViaLatLongDialog extends CaveJFACEDialog { public DefineSamplesViaLatLongDialog(Shell parent) { super(parent); - this.setShellStyle(SWT.TITLE | SWT.MODELESS | SWT.CLOSE); + this.setShellStyle(SWT.DIALOG_TRIM | SWT.MODELESS); } @Override From 47023b93aa590fbe28b753925d0b08ea81b33d45 Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Wed, 24 Oct 2012 10:42:33 -0500 Subject: [PATCH 5/7] Issue #1287 Changes for non-blocking DefineRefSetDialog. Change-Id: I0aa3ec5b80140ae79fffd3edd230b1d8e8f68e43 Former-commit-id: 80c0d6b69edb664b8570dc4993bad04ca1745622 [formerly eb5aa48960dd4fe8f04207202c6dc7e91182db84] [formerly 80c0d6b69edb664b8570dc4993bad04ca1745622 [formerly eb5aa48960dd4fe8f04207202c6dc7e91182db84] [formerly c627c6af242e7f62354bdd9bcdc21757323ecfdc [formerly 3fd7556be39d7381c3cdc92a3b72a6ff10c2ebed]]] Former-commit-id: c627c6af242e7f62354bdd9bcdc21757323ecfdc Former-commit-id: 5ad7545d1557c7422330d0f17f3f7e4fe7c97159 [formerly be40b56d185507db5965a8a115d37932b6f79c37] Former-commit-id: 0a60b2f0ba02924349c86a09a48486517bfbad09 --- .../gfe/actions/ShowDefineRefSetDialog.java | 7 +++++-- .../viz/gfe/dialogs/DefineRefSetDialog.java | 19 ++++++++----------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineRefSetDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineRefSetDialog.java index eb673f52bc..6609f65f73 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineRefSetDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowDefineRefSetDialog.java @@ -36,6 +36,7 @@ import com.raytheon.viz.gfe.dialogs.DefineRefSetDialog; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Mar 11, 2008 Eric Babin Initial Creation + * Oct 24, 2012 1287 rferrel Changes for non-blocking DefineRefSetDialog. * * * @@ -63,11 +64,13 @@ public class ShowDefineRefSetDialog extends AbstractHandler { return null; } - if (dialog == null || dialog.getShell() == null) { + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { dialog = new DefineRefSetDialog(shell, dm); dialog.setBlockOnOpen(false); + dialog.open(); + } else { + dialog.bringToTop(); } - dialog.open(); return null; } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java index 4324498a8d..69dd48ac40 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java @@ -90,6 +90,7 @@ import com.vividsolutions.jts.geom.MultiPolygon; * ------------ ---------- ----------- -------------------------- * Mar 11, 2008 Eric Babin Initial Creation * Jul 15, 2008 njensen Hooked into backend/fixes + * Oct 24, 2012 1287 rferrel Code clean up for non-blocking dialog. * * * @@ -101,18 +102,18 @@ public class DefineRefSetDialog extends CaveJFACEDialog implements IReferenceSetChangedListener, IReferenceSetIDChangedListener, IReferenceSetInvChangedListener, IDisplayedParmListChangedListener, IEditAreaGroupInvChangedListener { - private static final transient IUFStatusHandler statusHandler = UFStatus + private final transient IUFStatusHandler statusHandler = UFStatus .getHandler(DefineRefSetDialog.class); - private static final int NUM_ITEMS = 13; + private final int NUM_ITEMS = 13; - private static final int CLEAR_QUERY_ID = IDialogConstants.CLIENT_ID + 1; + private final int CLEAR_QUERY_ID = IDialogConstants.CLIENT_ID + 1; - private static final int RECALL_QUERY_ID = IDialogConstants.CLIENT_ID + 2; + private final int RECALL_QUERY_ID = IDialogConstants.CLIENT_ID + 2; - private static final int UNDO_EDIT_AREA_ID = IDialogConstants.CLIENT_ID + 3; + private final int UNDO_EDIT_AREA_ID = IDialogConstants.CLIENT_ID + 3; - private static final int CONVERT_TO_LOCATION_ID = IDialogConstants.CLIENT_ID + 4; + private final int CONVERT_TO_LOCATION_ID = IDialogConstants.CLIENT_ID + 4; private Composite top; @@ -154,10 +155,6 @@ public class DefineRefSetDialog extends CaveJFACEDialog implements { "3", "" }, { "-", "" }, { "0", "" }, { ".", "" }, { "BS", "BackSpace" }, { "", "" }, { "SP", "Space" }, }; - // private java.util.List gList; - - // private HashMap> editAreaMap; - private IReferenceSetManager refSetMgr; private IParmManager parmManager; @@ -168,7 +165,7 @@ public class DefineRefSetDialog extends CaveJFACEDialog implements public DefineRefSetDialog(Shell parent, DataManager dataManager) { super(parent); - this.setShellStyle(SWT.TITLE | SWT.MODELESS | SWT.CLOSE); + this.setShellStyle(SWT.DIALOG_TRIM | SWT.MODELESS); this.dataManager = dataManager; this.refSetMgr = this.dataManager.getRefManager(); this.parmManager = this.dataManager.getParmManager(); From 60dfce2758120ba8f52abb98069268ddf0a5975b Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Wed, 24 Oct 2012 10:52:51 -0500 Subject: [PATCH 6/7] Issue #1287 Changes for non-blocking CreateFromScratchDialog. Change-Id: I8a2152d834966992f8d4bbe8e4b72f7d9c7c3da0 Former-commit-id: 58ada46176b737940d09fd843d95ee0ce8d8e063 [formerly 50d65fefcb9a8d46fc48369c84916c1e00bf1f9c] [formerly 58ada46176b737940d09fd843d95ee0ce8d8e063 [formerly 50d65fefcb9a8d46fc48369c84916c1e00bf1f9c] [formerly 9fa924aecb9b093cccdf5213a35a5d40fd8d778d [formerly 1cf83fa5e226f551c5d4cad3b5fa9f97b3203733]]] Former-commit-id: 9fa924aecb9b093cccdf5213a35a5d40fd8d778d Former-commit-id: 34b84bcf2a6e30b457067ef8ab103feacbfa0d31 [formerly c6752668e4e0c0ba11affa25b8c2c4babbb78494] Former-commit-id: 823e1099e942cd8d285538dc371d99d8868f9247 --- .../actions/ShowCreateFromScratchDialog.java | 16 +++++++++++----- .../gfe/dialogs/CreateFromScratchDialog.java | 19 +++++++++++-------- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCreateFromScratchDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCreateFromScratchDialog.java index 56f999a2ca..454abd7345 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCreateFromScratchDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/actions/ShowCreateFromScratchDialog.java @@ -36,6 +36,7 @@ import com.raytheon.viz.gfe.dialogs.CreateFromScratchDialog; * ------------ ---------- ----------- -------------------------- * Feb 27, 2008 Eric Babin Initial Creation * 04/18/08 #857 bphillip Implemented interaction with server + * Oct 24, 2012 #1287 rferrel Changes for non-blocking CreateFromScratchDialog. * * * @@ -44,6 +45,7 @@ import com.raytheon.viz.gfe.dialogs.CreateFromScratchDialog; */ public class ShowCreateFromScratchDialog extends AbstractHandler { + private CreateFromScratchDialog dialog; /* * (non-Javadoc) @@ -54,12 +56,16 @@ public class ShowCreateFromScratchDialog extends AbstractHandler { */ @Override public Object execute(ExecutionEvent arg0) throws ExecutionException { - Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() - .getShell(); + if (dialog == null || dialog.getShell() == null || dialog.isDisposed()) { + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow() + .getShell(); - CreateFromScratchDialog dialog = new CreateFromScratchDialog(shell); - dialog.setBlockOnOpen(true); - dialog.open(); + dialog = new CreateFromScratchDialog(shell); + dialog.setBlockOnOpen(false); + dialog.open(); + } else { + dialog.bringToTop(); + } return null; } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CreateFromScratchDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CreateFromScratchDialog.java index 151221aef4..6bb169e0b2 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CreateFromScratchDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/CreateFromScratchDialog.java @@ -46,6 +46,7 @@ import com.raytheon.viz.ui.dialogs.CaveJFACEDialog; * Date Ticket# Engineer Description * ------------ ---------- ----------- -------------------------- * Feb 26, 2008 Eric Babin Initial Creation + * Oct 24, 2012 1287 rferrel Changes for non-blocking dialog. * * * @@ -75,7 +76,7 @@ public class CreateFromScratchDialog extends CaveJFACEDialog { public CreateFromScratchDialog(Shell parent) { super(parent); - this.setShellStyle(SWT.TITLE | SWT.MODELESS | SWT.CLOSE); + this.setShellStyle(SWT.DIALOG_TRIM | SWT.MODELESS); } @@ -130,8 +131,8 @@ public class CreateFromScratchDialog extends CaveJFACEDialog { intervalLabel = new Label(top, SWT.NONE); data = new GridData(30, SWT.DEFAULT); intervalLabel.setLayoutData(data); - intervalLabel.setText(Integer - .toString(intervalScale.getSelection())); + intervalLabel + .setText(Integer.toString(intervalScale.getSelection())); } @@ -157,8 +158,8 @@ public class CreateFromScratchDialog extends CaveJFACEDialog { durationLabel = new Label(top, SWT.NONE); data = new GridData(30, SWT.DEFAULT); durationLabel.setLayoutData(data); - durationLabel.setText(Integer - .toString(durationScale.getSelection())); + durationLabel + .setText(Integer.toString(durationScale.getSelection())); } } @@ -167,8 +168,8 @@ public class CreateFromScratchDialog extends CaveJFACEDialog { if (displayDuration) { durationScale.setSelection(intervalScale.getSelection()); - durationLabel.setText(Integer - .toString(durationScale.getSelection())); + durationLabel + .setText(Integer.toString(durationScale.getSelection())); } } @@ -272,7 +273,9 @@ public class CreateFromScratchDialog extends CaveJFACEDialog { createDuration = durationScale.getSelection(); } - DataManager.getCurrentInstance().getParmOp() + DataManager + .getCurrentInstance() + .getParmOp() .createFromScratchSelected(mode, createInterval * 3600, createDuration * 3600); From c36e471404234651b87fdcb4048ab2fc94e278cb Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Wed, 24 Oct 2012 12:41:33 -0500 Subject: [PATCH 7/7] Issue #1287 Code changes for non-blocking SaveDeleteRefDialog. Change-Id: I6bf23b8f3d9bac171f9a296e3d47b86851a3e1e0 Former-commit-id: 6dfa000535248f0a5c5d0c2f721616539843ec79 [formerly c2def88db1f6df14db12eff3fa8dae2f5027fd3f] [formerly 6dfa000535248f0a5c5d0c2f721616539843ec79 [formerly c2def88db1f6df14db12eff3fa8dae2f5027fd3f] [formerly 347ad433eff847e71c5619077f0dc71676b52694 [formerly 085fc755257ed8728a293d59670a79f79293dcbb]]] Former-commit-id: 347ad433eff847e71c5619077f0dc71676b52694 Former-commit-id: 9775ab09d0782b8a3a50c21e0701ac1650658c66 [formerly 56515fc4d6aea09abf04fa0f0e5ad620336c47a2] Former-commit-id: f0867f4c40288d27cec0afd42559155e52ad9beb --- .../viz/gfe/dialogs/DefineRefSetDialog.java | 32 +++++++++++++----- .../viz/gfe/dialogs/SaveDeleteRefDialog.java | 33 +++++++++---------- 2 files changed, 39 insertions(+), 26 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java index 69dd48ac40..caa65611f8 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/DefineRefSetDialog.java @@ -91,6 +91,7 @@ import com.vividsolutions.jts.geom.MultiPolygon; * Mar 11, 2008 Eric Babin Initial Creation * Jul 15, 2008 njensen Hooked into backend/fixes * Oct 24, 2012 1287 rferrel Code clean up for non-blocking dialog. + * Oct 24, 2012 1287 rferrel Changes for non-blocking SaveDeleteRefDialog. * * * @@ -163,6 +164,10 @@ public class DefineRefSetDialog extends CaveJFACEDialog implements private String[] initialGroups; + private SaveDeleteRefDialog deleteDlg; + + private SaveDeleteRefDialog saveDlg; + public DefineRefSetDialog(Shell parent, DataManager dataManager) { super(parent); this.setShellStyle(SWT.DIALOG_TRIM | SWT.MODELESS); @@ -999,19 +1004,28 @@ public class DefineRefSetDialog extends CaveJFACEDialog implements private void saveAreaCB() { - SaveDeleteRefDialog dialog = new SaveDeleteRefDialog(getShell(), - this.refSetMgr, "Save"); - - dialog.open(); - + if (saveDlg == null || saveDlg.getShell() == null + || saveDlg.isDisposed()) { + saveDlg = new SaveDeleteRefDialog(getShell(), this.refSetMgr, + "Save"); + saveDlg.setBlockOnOpen(false); + saveDlg.open(); + } else { + saveDlg.bringToTop(); + } } private void deleteAreaCB() { - SaveDeleteRefDialog dialog = new SaveDeleteRefDialog(this.getShell(), - refSetMgr, "Delete"); - dialog.open(); - + if (deleteDlg == null || deleteDlg.getShell() == null + || deleteDlg.isDisposed()) { + deleteDlg = new SaveDeleteRefDialog(this.getShell(), refSetMgr, + "Delete"); + deleteDlg.setBlockOnOpen(false); + deleteDlg.open(); + } else { + deleteDlg.bringToTop(); + } } private void saveGroupCB() { diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteRefDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteRefDialog.java index ee17a6834a..07a611f3a5 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteRefDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/SaveDeleteRefDialog.java @@ -42,20 +42,18 @@ import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; import com.raytheon.uf.common.dataplugin.gfe.reference.ReferenceData; -import com.raytheon.uf.common.dataplugin.gfe.reference.ReferenceID; import com.raytheon.uf.common.dataplugin.gfe.reference.ReferenceData.RefType; +import com.raytheon.uf.common.dataplugin.gfe.reference.ReferenceID; import com.raytheon.uf.common.localization.LocalizationContext.LocalizationLevel; import com.raytheon.uf.common.status.IUFStatusHandler; import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus.Priority; -import com.raytheon.viz.gfe.Activator; -import com.raytheon.viz.gfe.constants.StatusConstants; import com.raytheon.viz.gfe.core.IReferenceSetManager; import com.raytheon.viz.ui.dialogs.CaveJFACEDialog; import com.raytheon.viz.ui.widgets.ToggleSelectList; /** - * TODO Add Description + * Dialog for performing a save or delete of an Edit Area. * *
  * 
@@ -63,6 +61,7 @@ import com.raytheon.viz.ui.widgets.ToggleSelectList;
  * Date         Ticket#    Engineer    Description
  * ------------ ---------- ----------- --------------------------
  * Sep 10, 2010            randerso     Initial creation
+ * Oct 24, 2012 1287       rferrel     Code clean up part of non-blocking dialog.
  * 
  * 
* @@ -71,11 +70,12 @@ import com.raytheon.viz.ui.widgets.ToggleSelectList; */ public class SaveDeleteRefDialog extends CaveJFACEDialog { - private static final transient IUFStatusHandler statusHandler = UFStatus.getHandler(SaveDeleteRefDialog.class); - private static final Pattern pythonVariable = Pattern - .compile("\\p{Alpha}\\w*"); + private final transient IUFStatusHandler statusHandler = UFStatus + .getHandler(SaveDeleteRefDialog.class); - private static final int NUM_ITEMS = 10; + private final Pattern pythonVariable = Pattern.compile("\\p{Alpha}\\w*"); + + private final int NUM_ITEMS = 10; private IReferenceSetManager refSetMgr; @@ -156,9 +156,9 @@ public class SaveDeleteRefDialog extends CaveJFACEDialog { editAreaList = new org.eclipse.swt.widgets.List(areaFrame, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE); - Rectangle rect = editAreaList.computeTrim(0, 0, this - .convertWidthInCharsToPixels(24), editAreaList.getItemHeight() - * NUM_ITEMS); + Rectangle rect = editAreaList.computeTrim(0, 0, + this.convertWidthInCharsToPixels(24), + editAreaList.getItemHeight() * NUM_ITEMS); layoutData = new GridData(GridData.FILL_BOTH); layoutData.minimumWidth = rect.width; layoutData.heightHint = rect.height; @@ -207,10 +207,9 @@ public class SaveDeleteRefDialog extends CaveJFACEDialog { groupListBox = new ToggleSelectList(groupFrame, SWT.BORDER | SWT.V_SCROLL | SWT.MULTI); - rect = groupListBox.computeTrim(0, 0, this - .convertWidthInCharsToPixels(24), groupListBox - .getItemHeight() - * NUM_ITEMS); + rect = groupListBox.computeTrim(0, 0, + this.convertWidthInCharsToPixels(24), + groupListBox.getItemHeight() * NUM_ITEMS); layoutData = new GridData(GridData.FILL_BOTH); layoutData.minimumWidth = rect.width; layoutData.heightHint = rect.height; @@ -282,8 +281,8 @@ public class SaveDeleteRefDialog extends CaveJFACEDialog { // Check that name is a legal Python variable so // it can be used subsequently in queries if (!pythonVariable.matcher(name).matches()) { - statusHandler.handle( - Priority.SIGNIFICANT, + statusHandler + .handle(Priority.SIGNIFICANT, "Illegal Name: Must begin with a letter and be alphanumeric or '_'. Please rename."); return false; }