def parentChanged(self): """Reimplementation of :meth:`PlotDataItem.parentChanged` to handle the change of the containing viewbox """ PlotDataItem.parentChanged(self) self._updateViewBox(self.getViewBox()) # update legend if needed try: legend = self.getViewWidget().getPlotItem().legend except Exception: legend = None if legend is not self._legend: self._removeFromLegend(self._legend) self._addToLegend(legend) self._legend = legend # Set period from ForcedReadTool (if found) try: for a in self.getViewBox().menu.actions(): if isinstance(a, ForcedReadTool) and a.autoconnect(): self.setForcedReadPeriod(a.period()) break except Exception as e: self.debug("cannot set period from ForcedReadTool: %r", e)