ColorBar  issue when closing IPython
To reproduce:

```
In [1]: from silx import sx                                                     
In [2]: w = sx.imshow()                                                         
In [3]:                                                                         
Do you really want to exit ([y]/n)? 
Traceback (most recent call last):
  File "silx/gui/plot/ColorBar.py", line 152, in hideEvent
    self._disconnectPlot()
  File "silx/gui/plot/ColorBar.py", line 118, in _disconnectPlot
    plot.sigActiveImageChanged.disconnect(
RuntimeError: wrapped C/C++ object of type Plot2D has been deleted
```

Tested with PyQt5.14.2 and PySide2 5.13.2
diff --git a/silx/gui/plot/ColorBar.py b/silx/gui/plot/ColorBar.py
index eff76897a..d8698256f 100644
--- a/silx/gui/plot/ColorBar.py
+++ b/silx/gui/plot/ColorBar.py
@@ -1,7 +1,7 @@
 # coding: utf-8
 # /*##########################################################################
 #
-# Copyright (c) 2016-2020 European Synchrotron Radiation Facility
+# Copyright (c) 2016-2021 European Synchrotron Radiation Facility
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -36,6 +36,7 @@ import numpy
 
 from ._utils import ticklayout
 from .. import qt
+from ..qt import inspect as qt_inspect
 from silx.gui import colors
 
 _logger = logging.getLogger(__name__)
@@ -112,14 +113,15 @@ class ColorBarWidget(qt.QWidget):
 
     def _disconnectPlot(self):
         """Disconnect from Plot signals"""
-        plot = self.getPlot()
-        if plot is not None and self._isConnected:
+        if self._isConnected:
             self._isConnected = False
-            plot.sigActiveImageChanged.disconnect(
-                self._activeImageChanged)
-            plot.sigActiveScatterChanged.disconnect(
-                self._activeScatterChanged)
-            plot.sigPlotSignal.disconnect(self._defaultColormapChanged)
+            plot = self.getPlot()
+            if plot is not None and qt_inspect.isValid(plot):
+                plot.sigActiveImageChanged.disconnect(
+                    self._activeImageChanged)
+                plot.sigActiveScatterChanged.disconnect(
+                    self._activeScatterChanged)
+                plot.sigPlotSignal.disconnect(self._defaultColormapChanged)
 
     def _connectPlot(self):
         """Connect to Plot signals"""
['silx/gui/plot/ColorBar.py']