From 8b557af23f17572a67ad4aec01c331c679ae79f0 Mon Sep 17 00:00:00 2001 From: Ogi Date: Sat, 13 Jun 2020 21:21:29 -0700 Subject: [PATCH] Implement diff from PR 317 --- pyqtgraph/graphicsItems/ROI.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pyqtgraph/graphicsItems/ROI.py b/pyqtgraph/graphicsItems/ROI.py index fdcada14..c4b29669 100644 --- a/pyqtgraph/graphicsItems/ROI.py +++ b/pyqtgraph/graphicsItems/ROI.py @@ -2121,6 +2121,23 @@ class LineSegmentROI(ROI): def listPoints(self): return [p['item'].pos() for p in self.handles] + + def getState(self): + state = ROI.getState(self) + state['points'] = [Point(h.pos()) for h in self.getHandles()] + return state + + def saveState(self): + state = ROI.saveState(self) + state['points'] = [tuple(h.pos()) for h in self.getHandles()] + return state + + def setState(self, state): + ROI.setState(self, state) + p1 = [state['points'][0][0]+state['pos'][0], state['points'][0][1]+state['pos'][1]] + p2 = [state['points'][1][0]+state['pos'][0], state['points'][1][1]+state['pos'][1]] + self.movePoint(self.getHandles()[0], p1, finish=False) + self.movePoint(self.getHandles()[1], p2) def paint(self, p, *args): p.setRenderHint(QtGui.QPainter.Antialiasing)