diff --git a/src/calibre/gui2/actions/polish.py b/src/calibre/gui2/actions/polish.py
index 50dc70171a..77aa393636 100644
--- a/src/calibre/gui2/actions/polish.py
+++ b/src/calibre/gui2/actions/polish.py
@@ -96,7 +96,8 @@ class Polish(QDialog): # {{{
count += 1
x = QCheckBox(text, self)
x.setChecked(prefs.get(name, False))
- x.stateChanged.connect(partial(self.option_toggled, name))
+ x.setObjectName(name)
+ connect_lambda(x.stateChanged, self, lambda self, state: self.option_toggled(self.sender().objectName(), state))
l.addWidget(x, count, 0, 1, 1)
setattr(self, 'opt_'+name, x)
la = QLabel(' %s'%(name, _('About')))
@@ -132,9 +133,9 @@ class Polish(QDialog): # {{{
self.load_menu = QMenu(lb)
lb.setMenu(self.load_menu)
self.all_button = b = bb.addButton(_('Select &all'), bb.ActionRole)
- b.clicked.connect(partial(self.select_all, True))
+ connect_lambda(b.clicked, self, lambda self: self.select_all(True))
self.none_button = b = bb.addButton(_('Select &none'), bb.ActionRole)
- b.clicked.connect(partial(self.select_all, False))
+ connect_lambda(b.clicked, self, lambda self: self.select_all(False))
l.addWidget(bb, count+1, 1, 1, -1)
self.setup_load_button()
diff --git a/src/calibre/gui2/actions/similar_books.py b/src/calibre/gui2/actions/similar_books.py
index 6a7d292771..fe2d0e4e0a 100644
--- a/src/calibre/gui2/actions/similar_books.py
+++ b/src/calibre/gui2/actions/similar_books.py
@@ -5,7 +5,6 @@ __license__ = 'GPL v3'
__copyright__ = '2010, Kovid Goyal '
__docformat__ = 'restructuredtext en'
-from functools import partial
from PyQt5.Qt import QToolButton
@@ -30,8 +29,9 @@ class SimilarBooksAction(InterfaceAction):
(_('Books with the same tags'), 'tags.png', 'tags', 'Alt+T'),]:
ac = self.create_action(spec=(text, icon, None, shortcut),
attr=target)
+ ac.setObjectName(target)
m.addAction(ac)
- ac.triggered.connect(partial(self.show_similar_books, target))
+ connect_lambda(ac.triggered, self, lambda self: self.show_similar_books(self.gui.sender().objectName()))
self.qaction.setMenu(m)
def show_similar_books(self, typ, *args):
diff --git a/src/calibre/gui2/actions/tweak_epub.py b/src/calibre/gui2/actions/tweak_epub.py
index 1661c40fa3..344ed02205 100755
--- a/src/calibre/gui2/actions/tweak_epub.py
+++ b/src/calibre/gui2/actions/tweak_epub.py
@@ -6,7 +6,6 @@ __copyright__ = '2010, Kovid Goyal '
__docformat__ = 'restructuredtext en'
import time
-from functools import partial
from PyQt5.Qt import QTimer, QDialog, QDialogButtonBox, QCheckBox, QVBoxLayout, QLabel, Qt
@@ -37,7 +36,8 @@ class Choose(QDialog):
self.buts = buts = []
for fmt in fmts:
b = bb.addButton(fmt.upper(), bb.AcceptRole)
- b.clicked.connect(partial(self.chosen, fmt))
+ b.setObjectName(fmt)
+ connect_lambda(b.clicked, self, lambda self: self.chosen(self.sender().objectName()))
buts.append(b)
self.fmt = None