Implement suggested changes in PR 143
This commit is contained in:
parent
79ce0c46b5
commit
05f8921555
@ -590,12 +590,12 @@ class ROI(GraphicsObject):
|
|||||||
## If a Handle was not supplied, create it now
|
## If a Handle was not supplied, create it now
|
||||||
if 'item' not in info or info['item'] is None:
|
if 'item' not in info or info['item'] is None:
|
||||||
h = Handle(self.handleSize, typ=info['type'], pen=self.handlePen, parent=self)
|
h = Handle(self.handleSize, typ=info['type'], pen=self.handlePen, parent=self)
|
||||||
h.setPos(info['pos'] * self.state['size'])
|
|
||||||
info['item'] = h
|
info['item'] = h
|
||||||
else:
|
else:
|
||||||
h = info['item']
|
h = info['item']
|
||||||
if info['pos'] is None:
|
if info['pos'] is None:
|
||||||
info['pos'] = h.pos()
|
info['pos'] = h.pos()
|
||||||
|
h.setPos(info['pos'] * self.state['size'])
|
||||||
|
|
||||||
## connect the handle to this ROI
|
## connect the handle to this ROI
|
||||||
#iid = len(self.handles)
|
#iid = len(self.handles)
|
||||||
@ -1273,11 +1273,12 @@ class Handle(UIGraphicsItem):
|
|||||||
sigClicked = QtCore.Signal(object, object) # self, event
|
sigClicked = QtCore.Signal(object, object) # self, event
|
||||||
sigRemoveRequested = QtCore.Signal(object) # self
|
sigRemoveRequested = QtCore.Signal(object) # self
|
||||||
|
|
||||||
def __init__(self, radius, typ=None, pen=(200, 200, 220), parent=None, deletable=False):
|
def __init__(self, radius, typ=None, pen=(200, 200, 220), parent=None, deletable=False, activePen=(255, 255, 0)):
|
||||||
self.rois = []
|
self.rois = []
|
||||||
self.radius = radius
|
self.radius = radius
|
||||||
self.typ = typ
|
self.typ = typ
|
||||||
self.pen = fn.mkPen(pen)
|
self.pen = fn.mkPen(pen)
|
||||||
|
self.activePen = fn.mkPen(activePen)
|
||||||
self.currentPen = self.pen
|
self.currentPen = self.pen
|
||||||
self.pen.setWidth(0)
|
self.pen.setWidth(0)
|
||||||
self.pen.setCosmetic(True)
|
self.pen.setCosmetic(True)
|
||||||
@ -1321,7 +1322,7 @@ class Handle(UIGraphicsItem):
|
|||||||
hover=True
|
hover=True
|
||||||
|
|
||||||
if hover:
|
if hover:
|
||||||
self.currentPen = fn.mkPen(255, 255,0)
|
self.currentPen = self.activePen
|
||||||
else:
|
else:
|
||||||
self.currentPen = self.pen
|
self.currentPen = self.pen
|
||||||
self.update()
|
self.update()
|
||||||
@ -1374,15 +1375,19 @@ class Handle(UIGraphicsItem):
|
|||||||
for r in self.rois:
|
for r in self.rois:
|
||||||
r.stateChangeFinished()
|
r.stateChangeFinished()
|
||||||
self.isMoving = False
|
self.isMoving = False
|
||||||
|
self.currentPen = self.pen
|
||||||
|
self.update()
|
||||||
elif ev.isStart():
|
elif ev.isStart():
|
||||||
for r in self.rois:
|
for r in self.rois:
|
||||||
r.handleMoveStarted()
|
r.handleMoveStarted()
|
||||||
self.isMoving = True
|
self.isMoving = True
|
||||||
self.startPos = self.scenePos()
|
self.startPos = self.scenePos()
|
||||||
self.cursorOffset = self.scenePos() - ev.buttonDownScenePos()
|
self.cursorOffset = self.scenePos() - ev.buttonDownScenePos()
|
||||||
|
self.currentPen = self.activePen
|
||||||
|
|
||||||
if self.isMoving: ## note: isMoving may become False in mid-drag due to right-click.
|
if self.isMoving: ## note: isMoving may become False in mid-drag due to right-click.
|
||||||
pos = ev.scenePos() + self.cursorOffset
|
pos = ev.scenePos() + self.cursorOffset
|
||||||
|
self.currentPen = self.activePen
|
||||||
self.movePoint(pos, ev.modifiers(), finish=False)
|
self.movePoint(pos, ev.modifiers(), finish=False)
|
||||||
|
|
||||||
def movePoint(self, pos, modifiers=QtCore.Qt.KeyboardModifier(), finish=True):
|
def movePoint(self, pos, modifiers=QtCore.Qt.KeyboardModifier(), finish=True):
|
||||||
|
Loading…
Reference in New Issue
Block a user