Issue #1196 - dialog refactor.
Former-commit-id:de6dd650a8
[formerly 961f141b5a5960ebadd2b1d17889734f06121358] Former-commit-id:88dc1c28ac
This commit is contained in:
parent
c9a16a0607
commit
a04bf64502
2 changed files with 35 additions and 45 deletions
|
@ -60,6 +60,7 @@ import com.raytheon.viz.ui.dialogs.CaveSWTDialog;
|
|||
* uses the font.
|
||||
* Feb 03, 2012 14317 mhuang Make alarm display window wider
|
||||
* Sep 6, 2012 13365 rferrel Accumulate and Display fix.
|
||||
* Sep 25, 2012 1196 lvenable Dialog refactor for AlarmDisplayWindow. Added DO_NOT_BLOCK.
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
|
@ -105,7 +106,7 @@ public class AlarmDisplayWindow extends CaveSWTDialog {
|
|||
java.util.List<StdTextProduct> prodList,
|
||||
ACCUMULATE_STATE accum_state) {
|
||||
super(parentShell, SWT.RESIZE, CAVE.PERSPECTIVE_INDEPENDENT
|
||||
| CAVE.INDEPENDENT_SHELL);
|
||||
| CAVE.INDEPENDENT_SHELL | CAVE.DO_NOT_BLOCK);
|
||||
setText("Alarm Display Window");
|
||||
prods = prodList;
|
||||
if (prods == null) {
|
||||
|
|
|
@ -64,6 +64,7 @@ import com.raytheon.viz.texteditor.command.ICommand;
|
|||
import com.raytheon.viz.texteditor.msgs.IAfosBrowserCallback;
|
||||
import com.raytheon.viz.texteditor.util.TextEditorUtil;
|
||||
import com.raytheon.viz.ui.dialogs.CaveSWTDialog;
|
||||
import com.raytheon.viz.ui.dialogs.ICloseCallback;
|
||||
import com.raytheon.viz.ui.dialogs.ModeListener;
|
||||
|
||||
/**
|
||||
|
@ -94,6 +95,7 @@ import com.raytheon.viz.ui.dialogs.ModeListener;
|
|||
* exception associated with closing "Current
|
||||
* Alarm Queue" GUI
|
||||
* Sep 6, 2012 13365 rferrel Accumulate and Display fix.
|
||||
* Sep 25, 2012 1196 lvenable Dialog refactor for AlarmDisplayWindow.
|
||||
* </pre>
|
||||
*
|
||||
* @author mnash
|
||||
|
@ -384,32 +386,25 @@ public class CurrentAlarmQueue extends CaveSWTDialog implements
|
|||
prods = produceTextProduct(command, refDate.getTime());
|
||||
}
|
||||
|
||||
if (alarmDisplayDlg == null) {
|
||||
// Display the Alarm Display Window
|
||||
if (alarmDisplayDlg == null || alarmDisplayDlg.getShell().isDisposed()) {
|
||||
alarmDisplayDlg = new AlarmDisplayWindow(shell, prods,
|
||||
ACCUMULATE_STATE.UNCHANGE);
|
||||
alarmDisplayDlg.open();
|
||||
if (list != null && !list.isDisposed() && list.getItemCount() == 0) {
|
||||
close();
|
||||
}
|
||||
} else {
|
||||
if (alarmDisplayDlg.getShell() == null
|
||||
|| alarmDisplayDlg.getShell().isDisposed()) {
|
||||
alarmDisplayDlg = new AlarmDisplayWindow(shell, prods,
|
||||
ACCUMULATE_STATE.UNCHANGE);
|
||||
alarmDisplayDlg.open();
|
||||
if (list != null && !list.isDisposed()
|
||||
&& list.getItemCount() == 0) {
|
||||
close();
|
||||
alarmDisplayDlg.setCloseCallback(new ICloseCallback() {
|
||||
|
||||
@Override
|
||||
public void dialogClosed(Object returnValue) {
|
||||
if (list != null && !list.isDisposed()
|
||||
&& list.getItemCount() == 0) {
|
||||
close();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
alarmDisplayDlg.setProds(prods);
|
||||
alarmDisplayDlg.setDialogFocus();
|
||||
}
|
||||
}
|
||||
if (list != null && !list.isDisposed()) {
|
||||
if (list.getItemCount() == 0) {
|
||||
displayAll.setEnabled(false);
|
||||
}
|
||||
});
|
||||
|
||||
alarmDisplayDlg.open();
|
||||
} else {
|
||||
alarmDisplayDlg.setProds(prods);
|
||||
alarmDisplayDlg.setDialogFocus();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -457,31 +452,25 @@ public class CurrentAlarmQueue extends CaveSWTDialog implements
|
|||
}
|
||||
}
|
||||
|
||||
if (alarmDisplayDlg == null) {
|
||||
// Display the Alarm Display Window
|
||||
if (alarmDisplayDlg == null || alarmDisplayDlg.getShell().isDisposed()) {
|
||||
alarmDisplayDlg = new AlarmDisplayWindow(shell, prods,
|
||||
ACCUMULATE_STATE.TRUE);
|
||||
alarmDisplayDlg.setCloseCallback(new ICloseCallback() {
|
||||
@Override
|
||||
public void dialogClosed(Object returnValue) {
|
||||
if (list != null && !list.isDisposed()) {
|
||||
if (list.getItemCount() == 0) {
|
||||
displayAll.setEnabled(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
alarmDisplayDlg.open();
|
||||
} else {
|
||||
if (alarmDisplayDlg.getShell() == null
|
||||
|| alarmDisplayDlg.getShell().isDisposed()) {
|
||||
alarmDisplayDlg = new AlarmDisplayWindow(shell, prods,
|
||||
ACCUMULATE_STATE.TRUE);
|
||||
alarmDisplayDlg.open();
|
||||
} else {
|
||||
alarmDisplayDlg.setProds(prods);
|
||||
alarmDisplayDlg.setAccumulate(true);
|
||||
alarmDisplayDlg.setDialogFocus();
|
||||
}
|
||||
}
|
||||
/*
|
||||
* DR14795 - fix the "Unhandled event loop" exception
|
||||
* by calling setEnabled on displayAll only
|
||||
* for a valid list
|
||||
*/
|
||||
if (list != null && !list.isDisposed()) {
|
||||
if (list.getItemCount() == 0) {
|
||||
displayAll.setEnabled(false);
|
||||
}
|
||||
alarmDisplayDlg.setProds(prods);
|
||||
alarmDisplayDlg.setAccumulate(true);
|
||||
alarmDisplayDlg.setDialogFocus();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue