[ROIs] Buggy behavior introduced in current master
The color of the default full region markers is buggy. When the markers are not movable the color should be black and the middle marker should not appear. 
diff --git a/silx/gui/plot/CurvesROIWidget.py b/silx/gui/plot/CurvesROIWidget.py
index 52b8ef489..c87dd1db8 100644
--- a/silx/gui/plot/CurvesROIWidget.py
+++ b/silx/gui/plot/CurvesROIWidget.py
@@ -160,7 +160,6 @@ class CurvesROIWidget(qt.QWidget):
         self.loadButton.clicked.connect(self._load)
         self.saveButton.clicked.connect(self._save)
 
-        self._middleROIMarkerFlag = False
         self._isConnected = False  # True if connected to plot signals
         self._isInit = False
 
@@ -471,7 +470,6 @@ class ROITable(TableWidget):
     def __init__(self, parent=None, plot=None, rois=None):
         super(ROITable, self).__init__(parent)
         self._showAllMarkers = False
-        self._middleROIMarkerFlag = False
         self._userIsEditingRoi = False
         """bool used to avoid conflict when editing the ROI object"""
         self._isConnected = False
@@ -923,7 +921,7 @@ class ROITable(TableWidget):
 
         :param bool flag: True to activate middle ROI marker
         """
-        self._middleROIMarkerFlag = flag
+        self._markersHandler._middleROIMarkerFlag = flag
 
     def _handleROIMarkerEvent(self, ddict):
         """Handle plot signals related to marker events."""
@@ -1321,6 +1319,9 @@ class _RoiMarkerManager(object):
         if roiID in self._roiMarkerHandlers:
             visible = ((self._activeRoi and self._activeRoi.getID() == roiID)
                        or self._showAllMarkers is True)
+            _roi = self._roiMarkerHandlers[roiID]._roi()
+            if _roi and not _roi.isICR():
+                self._roiMarkerHandlers[roiID].showMiddleMarker(self._middleROIMarkerFlag)
             self._roiMarkerHandlers[roiID].setVisible(visible)
             self._roiMarkerHandlers[roiID].updateMarkers()
 
@@ -1369,11 +1370,15 @@ class _RoiMarkerHandler(object):
 
         self._roi = weakref.ref(roi)
         self._plot = weakref.ref(plot)
-        self.draggable = False if roi.isICR() else True
-        self._color = 'blue' if roi.isICR() else 'black'
-        self._displayMidMarker = True
+        self._draggable = False if roi.isICR() else True
+        self._color = 'black' if roi.isICR() else 'blue'
+        self._displayMidMarker = False
         self._visible = True
 
+    @property
+    def draggable(self):
+        return self._draggable
+
     @property
     def plot(self):
         return self._plot()
@@ -1394,6 +1399,9 @@ class _RoiMarkerHandler(object):
             self.updateMarkers()
 
     def showMiddleMarker(self, visible):
+        if self.draggable is False and visible is True:
+            _logger.warning("ROI is not draggable. Won't display middle marker")
+            return
         self._displayMidMarker = visible
         self.getMarker('middle').setVisible(self._displayMidMarker)
 
['silx/gui/plot/CurvesROIWidget.py']