Merge pull request #1598 from outofculture/selfless-lambdas

Remove references to self from lambdas
This commit is contained in:
Ogi Moore 2021-02-23 09:40:57 -08:00 committed by GitHub
commit cd73aeed0e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 64 additions and 19 deletions

View File

@ -446,10 +446,10 @@ class GradientEditorItem(TickSliderItem):
self.rgbAction = QtGui.QAction(translate("GradiantEditorItem", 'RGB'), self)
self.rgbAction.setCheckable(True)
self.rgbAction.triggered.connect(lambda: self.setColorMode('rgb'))
self.rgbAction.triggered.connect(self._setColorModeToRGB)
self.hsvAction = QtGui.QAction(translate("GradiantEditorItem", 'HSV'), self)
self.hsvAction.setCheckable(True)
self.hsvAction.triggered.connect(lambda: self.setColorMode('hsv'))
self.hsvAction.triggered.connect(self._setColorModeToHSV)
self.menu = QtGui.QMenu()
@ -493,7 +493,7 @@ class GradientEditorItem(TickSliderItem):
self.updateGradient()
self.linkedGradients = {}
self.sigTicksChanged.connect(lambda *args, **kwargs: self.updateGradient())
self.sigTicksChanged.connect(self._updateGradientIgnoreArgs)
self.sigTicksChangeFinished.connect(self.sigGradientChangeFinished.emit)
def showTicks(self, show=True):
@ -566,7 +566,13 @@ class GradientEditorItem(TickSliderItem):
self.sigTicksChanged.emit(self)
self.sigGradientChangeFinished.emit(self)
def _setColorModeToRGB(self):
self.setColorMode("rgb")
def _setColorModeToHSV(self):
self.setColorMode("hsv")
def colorMap(self):
"""Return a ColorMap object representing the current state of the editor."""
if self.colorMode == 'hsv':
@ -584,7 +590,10 @@ class GradientEditorItem(TickSliderItem):
self.gradient = self.getGradient()
self.gradRect.setBrush(QtGui.QBrush(self.gradient))
self.sigGradientChanged.emit(self)
def _updateGradientIgnoreArgs(self, *args, **kwargs):
self.updateGradient()
def setLength(self, newLen):
#private (but maybe public)
TickSliderItem.setLength(self, newLen)

View File

@ -110,8 +110,8 @@ class LinearRegionItem(GraphicsObject):
for l in self.lines:
l.setParentItem(self)
l.sigPositionChangeFinished.connect(self.lineMoveFinished)
self.lines[0].sigPositionChanged.connect(lambda: self.lineMoved(0))
self.lines[1].sigPositionChanged.connect(lambda: self.lineMoved(1))
self.lines[0].sigPositionChanged.connect(self._line0Moved)
self.lines[1].sigPositionChanged.connect(self._line1Moved)
if brush is None:
brush = QtGui.QBrush(QtGui.QColor(0, 0, 255, 50))
@ -241,7 +241,13 @@ class LinearRegionItem(GraphicsObject):
self.prepareGeometryChange()
self.sigRegionChanged.emit(self)
def _line0Moved(self):
self.lineMoved(0)
def _line1Moved(self):
self.lineMoved(1)
def lineMoveFinished(self):
self.sigRegionChangeFinished.emit(self)

View File

@ -785,8 +785,11 @@ class ROI(GraphicsObject):
def removeClicked(self):
## Send remove event only after we have exited the menu event handler
QtCore.QTimer.singleShot(0, lambda: self.sigRemoveRequested.emit(self))
QtCore.QTimer.singleShot(0, self._emitRemoveRequest)
def _emitRemoveRequest(self):
self.sigRemoveRequested.emit(self)
def mouseDragEvent(self, ev):
self.mouseDragHandler.mouseDragEvent(ev)

View File

@ -203,15 +203,15 @@ class Parameter(QtCore.QObject):
self.opts['default'] = None
## Connect all state changed signals to the general sigStateChanged
self.sigValueChanged.connect(lambda param, data: self.emitStateChanged('value', data))
self.sigChildAdded.connect(lambda param, *data: self.emitStateChanged('childAdded', data))
self.sigChildRemoved.connect(lambda param, data: self.emitStateChanged('childRemoved', data))
self.sigParentChanged.connect(lambda param, data: self.emitStateChanged('parent', data))
self.sigLimitsChanged.connect(lambda param, data: self.emitStateChanged('limits', data))
self.sigDefaultChanged.connect(lambda param, data: self.emitStateChanged('default', data))
self.sigNameChanged.connect(lambda param, data: self.emitStateChanged('name', data))
self.sigOptionsChanged.connect(lambda param, data: self.emitStateChanged('options', data))
self.sigContextMenu.connect(lambda param, data: self.emitStateChanged('contextMenu', data))
self.sigValueChanged.connect(self._emitValueChanged)
self.sigChildAdded.connect(self._emitChildAddedChanged)
self.sigChildRemoved.connect(self._emitChildRemovedChanged)
self.sigParentChanged.connect(self._emitParentChanged)
self.sigLimitsChanged.connect(self._emitLimitsChanged)
self.sigDefaultChanged.connect(self._emitDefaultChanged)
self.sigNameChanged.connect(self._emitNameChanged)
self.sigOptionsChanged.connect(self._emitOptionsChanged)
self.sigContextMenu.connect(self._emitContextMenuChanged)
#self.watchParam(self) ## emit treechange signals if our own state changes
@ -511,6 +511,33 @@ class Parameter(QtCore.QObject):
self.treeStateChanges.append((self, changeDesc, data))
self.emitTreeChanges()
def _emitValueChanged(self, param, data):
self.emitStateChanged("value", data)
def _emitChildAddedChanged(self, param, *data):
self.emitStateChanged("childAdded", data)
def _emitChildRemovedChanged(self, param, data):
self.emitStateChanged("childRemoved", data)
def _emitParentChanged(self, param, data):
self.emitStateChanged("parent", data)
def _emitLimitsChanged(self, param, data):
self.emitStateChanged("limits", data)
def _emitDefaultChanged(self, param, data):
self.emitStateChanged("default", data)
def _emitNameChanged(self, param, data):
self.emitStateChanged("name", data)
def _emitOptionsChanged(self, param, data):
self.emitStateChanged("options", data)
def _emitContextMenuChanged(self, param, data):
self.emitStateChanged("contextMenu", data)
def makeTreeItem(self, depth):
"""
Return a TreeWidgetItem suitable for displaying/controlling the content of