diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/bandwidth/ui/BandwidthCanvasComp.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/bandwidth/ui/BandwidthCanvasComp.java index 4f888d3e31..bfc4c317db 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/bandwidth/ui/BandwidthCanvasComp.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/bandwidth/ui/BandwidthCanvasComp.java @@ -105,6 +105,7 @@ import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils; * Dec 17, 2013 2633 mpduff Fix redraw problems.. * Jan 09, 2014 2633 mpduff On resize keep graph at bottom so data are always visible. * Jan 29, 2014 2722 mpduff Changed how graph data are requested. + * Mar 24, 2014 #2951 lvenable Added dispose checks for SWT widgets. * * * @author lvenable @@ -1512,6 +1513,9 @@ public class BandwidthCanvasComp extends Composite implements IDialogClosed, VizApp.runAsync(new Runnable() { @Override public void run() { + if (isDisposed()) { + return; + } imageMgr.setCurrentTimeMillis(currentTime .getTimeInMillis()); redrawImage(CanvasImages.GRAPH); @@ -1560,6 +1564,9 @@ public class BandwidthCanvasComp extends Composite implements IDialogClosed, VizApp.runAsync(new Runnable() { @Override public void run() { + if (isDisposed()) { + return; + } setGraphData(graphDataUtil.getGraphData()); updateCanvasSettings(); updateCanvases(); diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java index 4efe5f7859..9b8bc22a02 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionManagerDlg.java @@ -155,6 +155,7 @@ import com.raytheon.viz.ui.presenter.IDisplay; * Feb 04, 2014 2722 mpduff Add auto-refresh task. * Feb 14, 2014 2806 mpduff Disable activate/deactivate buttons when viewing other site's subscriptions * Feb 11, 2014 2771 bgonzale Use Data Delivery ID instead of Site. + * Mar 24, 2014 #2951 lvenable Added dispose checks for SWT widgets. * * * @@ -1050,6 +1051,9 @@ public class SubscriptionManagerDlg extends CaveSWTDialog implements VizApp.runAsync(new Runnable() { @Override public void run() { + if (isDisposed()) { + return; + } handleRefresh(); } }); @@ -1549,6 +1553,9 @@ public class SubscriptionManagerDlg extends CaveSWTDialog implements VizApp.runAsync(new Runnable() { @Override public void run() { + if (isDisposed()) { + return; + } handleRefresh(); } }); diff --git a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionTableComp.java b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionTableComp.java index f2bfa14ffa..6560c17380 100644 --- a/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionTableComp.java +++ b/cave/com.raytheon.uf.viz.datadelivery/src/com/raytheon/uf/viz/datadelivery/subscription/SubscriptionTableComp.java @@ -112,6 +112,8 @@ import com.raytheon.uf.viz.datadelivery.utils.DataDeliveryUtils.TABLE_TYPE; * Jan 08, 2014 2642 mpduff Enable/disable menus based on site, allow user to add their site to a shared sub. * Feb 04, 2014 2722 mpduff Add last update time. * Feb 11, 2014 2771 bgonzale Use Data Delivery ID instead of Site. + * Mar 24, 2014 #2951 lvenable Added dispose checks for SWT widgets. + * * @version 1.0 */ @@ -413,6 +415,10 @@ public class SubscriptionTableComp extends TableComp implements IGroupAction { VizApp.runAsync(new Runnable() { @Override public void run() { + if (isDisposed()) { + return; + } + updateTable(subList); subActionCallback.updateControls(); } @@ -885,6 +891,9 @@ public class SubscriptionTableComp extends TableComp implements IGroupAction { VizApp.runAsync(new Runnable() { @Override public void run() { + if (isDisposed()) { + return; + } populateTable(); } });