mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-08 10:44:09 -04:00
...
This commit is contained in:
parent
3e230ac838
commit
58899e65ef
39
src/calibre/gui2/metadata/single_download.py
Normal file
39
src/calibre/gui2/metadata/single_download.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
|
||||||
|
from __future__ import (unicode_literals, division, absolute_import,
|
||||||
|
print_function)
|
||||||
|
|
||||||
|
__license__ = 'GPL v3'
|
||||||
|
__copyright__ = '2011, Kovid Goyal <kovid@kovidgoyal.net>'
|
||||||
|
__docformat__ = 'restructuredtext en'
|
||||||
|
|
||||||
|
from PyQt4.Qt import (QStyledItemDelegate, QTextDocument, QRectF,
|
||||||
|
QStyle, QApplication)
|
||||||
|
|
||||||
|
class RichTextDelegate(QStyledItemDelegate): # {{{
|
||||||
|
|
||||||
|
def __init__(self, parent=None):
|
||||||
|
QStyledItemDelegate.__init__(self, parent)
|
||||||
|
|
||||||
|
def to_doc(self, index):
|
||||||
|
doc = QTextDocument()
|
||||||
|
doc.setHtml(index.data().toString())
|
||||||
|
return doc
|
||||||
|
|
||||||
|
def sizeHint(self, option, index):
|
||||||
|
ans = self.to_doc(index).size().toSize()
|
||||||
|
ans.setHeight(ans.height()+10)
|
||||||
|
return ans
|
||||||
|
|
||||||
|
def paint(self, painter, option, index):
|
||||||
|
painter.save()
|
||||||
|
painter.setClipRect(QRectF(option.rect))
|
||||||
|
if hasattr(QStyle, 'CE_ItemViewItem'):
|
||||||
|
QApplication.style().drawControl(QStyle.CE_ItemViewItem, option, painter)
|
||||||
|
elif option.state & QStyle.State_Selected:
|
||||||
|
painter.fillRect(option.rect, option.palette.highlight())
|
||||||
|
painter.translate(option.rect.topLeft())
|
||||||
|
self.to_doc(index).drawContents(painter)
|
||||||
|
painter.restore()
|
||||||
|
# }}}
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user