def OnSalomeViewTryClose(cls, salome_view_id): control = cls.GetInstance() if not control._blockViewClosing: Logger.Debug("PlotController::OnSalomeViewTryClose %d" % salome_view_id) # control._sgPyQt.setViewClosable(salome_view_id, False) # Get XYView from SALOME view ID xyview = control._curveTabsView._XYViews.get(salome_view_id, None) if not xyview is None: plotSetID = xyview.getModel().getID() Logger.Debug( "PlotController::OnSalomeViewTryClose internal CurvePlot view ID is %d" % plotSetID) control._plotManager.removeXYPlotSet(plotSetID) else: Logger.Warning( "Internal error - could not match SALOME view ID %d with CurvePlot view!" % salome_view_id)