mirror of
git://github.com/kovidgoyal/calibre.git
synced 2026-01-19 19:24:32 +01:00
Add context menu to grid view
This commit is contained in:
parent
d97ca53593
commit
0b70899dfd
2 changed files with 14 additions and 0 deletions
|
|
@ -96,6 +96,11 @@ def main_selection_changed(self, *args):
|
|||
rows = {r.row() for r in self.main_view.selectionModel().selectedIndexes()}
|
||||
self.current_view.select_rows(rows)
|
||||
|
||||
def set_context_menu(self, menu):
|
||||
for view in self.views.itervalues():
|
||||
if view is not self.main_view:
|
||||
view.set_context_menu(menu)
|
||||
|
||||
|
||||
class CoverCache(dict):
|
||||
|
||||
|
|
@ -210,6 +215,7 @@ def __init__(self, parent):
|
|||
self.ignore_render_requests = Event()
|
||||
self.render_thread = None
|
||||
self.update_item.connect(self.re_render, type=Qt.QueuedConnection)
|
||||
self.context_menu = None
|
||||
|
||||
def shown(self):
|
||||
if self.render_thread is None:
|
||||
|
|
@ -301,3 +307,10 @@ def set_current_row(self, row):
|
|||
sm = self.selectionModel()
|
||||
sm.setCurrentIndex(self.model().index(row, 0), sm.NoUpdate)
|
||||
|
||||
def set_context_menu(self, menu):
|
||||
self.context_menu = menu
|
||||
|
||||
def contextMenuEvent(self, event):
|
||||
if self.context_menu is not None:
|
||||
self.context_menu.popup(event.globalPos())
|
||||
event.accept()
|
||||
|
|
|
|||
|
|
@ -696,6 +696,7 @@ def database_changed(self, db):
|
|||
def set_context_menu(self, menu, edit_collections_action):
|
||||
self.setContextMenuPolicy(Qt.DefaultContextMenu)
|
||||
self.context_menu = menu
|
||||
self.alternate_views.set_context_menu(menu)
|
||||
self.edit_collections_action = edit_collections_action
|
||||
|
||||
def contextMenuEvent(self, event):
|
||||
|
|
|
|||
Loading…
Reference in a new issue