From d069f186e17085985f6175a6124b7c5677a4ae27 Mon Sep 17 00:00:00 2001 From: Roger Ferrel Date: Wed, 14 Nov 2012 14:55:40 -0600 Subject: [PATCH] Issue #1298 Changes for non-blocking DisplayAttributesDialog. Change-Id: I2175023db40ad6b24c47ebc2cd16e12572fb1b6d Former-commit-id: 7ca75756ae6478c64ccdb0da3f501e4859f70a86 [formerly 260f5085bba45ab5b3ad10dd3945a64195eb2d7b] Former-commit-id: 212045c1a6c5a9afdd4e48cc9f6e36152aacac16 --- .../dialogs/DisplayAttributesDialog.java | 5 ++--- .../mousehandler/TitleBarMouseHandler.java | 15 +++++++++++++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/dialogs/DisplayAttributesDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/dialogs/DisplayAttributesDialog.java index e67b757133..3256257545 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/dialogs/DisplayAttributesDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/dialogs/DisplayAttributesDialog.java @@ -66,7 +66,7 @@ public class DisplayAttributesDialog extends CaveJFACEDialog { public DisplayAttributesDialog(Shell parent, AbstractTemporalEditorBar bar, Parm parm) { super(parent); - this.setShellStyle(SWT.TITLE | SWT.MODELESS | SWT.CLOSE); + this.setShellStyle(SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL | SWT.CLOSE); this.bar = bar; this.parm = parm; origParmDispAtt = bar.getParmDisplayAttributes(parm); @@ -243,8 +243,7 @@ public class DisplayAttributesDialog extends CaveJFACEDialog { MessageBox mb = new MessageBox(getShell(), SWT.ICON_WARNING | SWT.OK); mb.setText("Graphic Attributes Error"); - mb - .setMessage("You must select at least one graphic type"); + mb.setMessage("You must select at least one graphic type"); mb.open(); } } diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/mousehandler/TitleBarMouseHandler.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/mousehandler/TitleBarMouseHandler.java index 9c4c032148..81f0ff1aa0 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/mousehandler/TitleBarMouseHandler.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/temporaleditor/mousehandler/TitleBarMouseHandler.java @@ -38,6 +38,7 @@ import com.raytheon.viz.gfe.temporaleditor.AbstractTemporalEditorBar; import com.raytheon.viz.gfe.temporaleditor.TemporalEditorUtil; import com.raytheon.viz.gfe.temporaleditor.dialogs.DisplayAttributesDialog; import com.raytheon.viz.gfe.temporaleditor.dialogs.MoveWeatherElementDialog; +import com.raytheon.viz.ui.dialogs.ICloseCallback; /** * MouseHandler to resize temporal editor bars. @@ -47,6 +48,7 @@ import com.raytheon.viz.gfe.temporaleditor.dialogs.MoveWeatherElementDialog; * Date Ticket# Engineer Description * ------------ ---------- ------------- -------------------------- * May 28, 2009 #2159 Richard Peter Initial Creation. + * Nov 14, 2012 #1298 rferrel Changes for non-blocking DisplayAttributesDialog. * * * @author rjpeter @@ -122,11 +124,20 @@ public class TitleBarMouseHandler extends MouseHandler { public void run() { Shell shell = PlatformUI.getWorkbench() .getActiveWorkbenchWindow().getShell(); + // The dialog being opened is modal to the parent + // dialog. This will prevent the launching of another + // dialog until the modal dialog is closed. DisplayAttributesDialog dialog = new DisplayAttributesDialog( shell, teBar, parm); - dialog.setBlockOnOpen(true); + dialog.setBlockOnOpen(false); + dialog.setCloseCallback(new ICloseCallback() { + + @Override + public void dialogClosed(Object returnValue) { + teBar.redraw(); + } + }); dialog.open(); - teBar.redraw(); } }); }