Implement #1316 (Add right-click menu in book list)

This commit is contained in:
Kovid Goyal 2008-11-27 11:59:00 -08:00
parent 0017deb4a4
commit 78e490ec8a
2 changed files with 14 additions and 2 deletions

View File

@ -8,7 +8,7 @@ from math import cos, sin, pi
from PyQt4.QtGui import QTableView, QAbstractItemView, QColor, \
QItemDelegate, QPainterPath, QLinearGradient, QBrush, \
QPen, QStyle, QPainter, QLineEdit, \
QPalette, QImage, QApplication
QPalette, QImage, QApplication, QMenu
from PyQt4.QtCore import QAbstractTableModel, QVariant, Qt, QString, \
SIGNAL, QObject, QSize, QModelIndex
@ -559,7 +559,18 @@ class BooksView(TableView):
if col > -1:
self.setItemDelegateForColumn(col, self.rating_delegate)
def set_context_menu(self, edit_metadata, send_to_device, convert, view):
self.setContextMenuPolicy(Qt.DefaultContextMenu)
self.context_menu = QMenu(self)
self.context_menu.addAction(edit_metadata)
self.context_menu.addAction(send_to_device)
self.context_menu.addAction(convert)
self.context_menu.addAction(view)
def contextMenuEvent(self, event):
self.context_menu.popup(event.globalPos())
event.accept()
def sortByColumn(self, colname, order):
try:
idx = self._model.column_map.index(colname)

View File

@ -218,8 +218,9 @@ class Main(MainWindow, Ui_MainWindow):
QObject.connect(self.config_button, SIGNAL('clicked(bool)'), self.do_config)
QObject.connect(self.advanced_search_button, SIGNAL('clicked(bool)'), self.do_advanced_search)
####################### Library view ########################
self.library_view.set_context_menu(self.action_edit, self.action_sync, self.action_convert, self.action_view)
QObject.connect(self.library_view, SIGNAL('files_dropped(PyQt_PyObject)'),
self.files_dropped)
for func, target in [