From 86671138dc82a379bb190f084170d2dfe2ae7328 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 28 Sep 2018 20:26:13 +0530 Subject: [PATCH] Add a copy to clipboard button to the job log viewer dialog --- src/calibre/gui2/jobs.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/calibre/gui2/jobs.py b/src/calibre/gui2/jobs.py index 8f8a0b849b..9b45d0be86 100644 --- a/src/calibre/gui2/jobs.py +++ b/src/calibre/gui2/jobs.py @@ -443,6 +443,15 @@ class DetailView(Dialog): # {{{ def sizeHint(self): return QSize(700, 500) + @property + def plain_text(self): + if self.html_view: + return self.tb.toPlainText() + return self.log.toPlainText() + + def copy_to_clipboard(self): + QApplication.instance().clipboard().setText(self.plain_text) + def setup_ui(self): self.l = l = QVBoxLayout(self) if self.html_view: @@ -453,6 +462,9 @@ class DetailView(Dialog): # {{{ l.addWidget(w) l.addWidget(self.bb) self.bb.clear(), self.bb.setStandardButtons(self.bb.Close) + self.copy_button = b = self.bb.addButton(_('&Copy to clipboard'), self.bb.ActionRole) + b.setIcon(QIcon(I('edit-copy.png'))) + b.clicked.connect(self.copy_to_clipboard) self.next_pos = 0 self.update() self.timer = QTimer(self)