mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
SOme keyboard controls for the highlights list
This commit is contained in:
parent
12d1b31e98
commit
0bdde24493
@ -24,6 +24,8 @@ class Highlights(QListWidget):
|
|||||||
|
|
||||||
jump_to_highlight = pyqtSignal(object)
|
jump_to_highlight = pyqtSignal(object)
|
||||||
current_highlight_changed = pyqtSignal(object)
|
current_highlight_changed = pyqtSignal(object)
|
||||||
|
delete_requested = pyqtSignal()
|
||||||
|
edit_requested = pyqtSignal()
|
||||||
|
|
||||||
def __init__(self, parent=None):
|
def __init__(self, parent=None):
|
||||||
QListWidget.__init__(self, parent)
|
QListWidget.__init__(self, parent)
|
||||||
@ -95,6 +97,17 @@ class Highlights(QListWidget):
|
|||||||
if i is not None:
|
if i is not None:
|
||||||
return i.data(Qt.UserRole)
|
return i.data(Qt.UserRole)
|
||||||
|
|
||||||
|
def keyPressEvent(self, ev):
|
||||||
|
if ev.matches(QKeySequence.Delete):
|
||||||
|
self.delete_requested.emit()
|
||||||
|
ev.accept()
|
||||||
|
return
|
||||||
|
if ev.key() == Qt.Key_F2:
|
||||||
|
self.edit_requested.emit()
|
||||||
|
ev.accept()
|
||||||
|
return
|
||||||
|
return super().keyPressEvent(ev)
|
||||||
|
|
||||||
|
|
||||||
class NotesEditDialog(Dialog):
|
class NotesEditDialog(Dialog):
|
||||||
|
|
||||||
@ -170,6 +183,8 @@ class HighlightsPanel(QWidget):
|
|||||||
self.highlights = h = Highlights(self)
|
self.highlights = h = Highlights(self)
|
||||||
l.addWidget(h)
|
l.addWidget(h)
|
||||||
h.jump_to_highlight.connect(self.jump_to_highlight)
|
h.jump_to_highlight.connect(self.jump_to_highlight)
|
||||||
|
h.delete_requested.connect(self.remove_highlight)
|
||||||
|
h.edit_requested.connect(self.edit_highlight)
|
||||||
h.current_highlight_changed.connect(self.current_highlight_changed)
|
h.current_highlight_changed.connect(self.current_highlight_changed)
|
||||||
self.load = h.load
|
self.load = h.load
|
||||||
self.refresh = h.refresh
|
self.refresh = h.refresh
|
||||||
|
Loading…
x
Reference in New Issue
Block a user