mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Do not make icons class attributes
class attributes are evaluated at import time loading a bunch of icons is an undesired side effect for simply importing code, not to mention that I am not sure that the icon machinery will always be working in all contexts where code is imported.
This commit is contained in:
parent
27bea0a999
commit
b5c649b4de
@ -29,12 +29,22 @@ from calibre.utils.titlecase import titlecase
|
|||||||
|
|
||||||
QT_HIDDEN_CLEAR_ACTION = '_q_qlineeditclearaction'
|
QT_HIDDEN_CLEAR_ACTION = '_q_qlineeditclearaction'
|
||||||
CHECK_MARK = '✓'
|
CHECK_MARK = '✓'
|
||||||
|
icon_cache = {}
|
||||||
|
|
||||||
|
|
||||||
|
def icon(name=''):
|
||||||
|
def gi(self):
|
||||||
|
ans = icon_cache.get(name)
|
||||||
|
if ans is None:
|
||||||
|
icon_cache[name] = ans = QIcon.ic(name)
|
||||||
|
return ans
|
||||||
|
return property(fget=gi)
|
||||||
|
|
||||||
|
|
||||||
class NameTableWidgetItem(QTableWidgetItem):
|
class NameTableWidgetItem(QTableWidgetItem):
|
||||||
|
|
||||||
empty_icon = QIcon()
|
empty_icon = icon()
|
||||||
trash_icon = QIcon.ic('trash.png')
|
trash_icon = icon('trash.png')
|
||||||
|
|
||||||
def __init__(self, sort_key):
|
def __init__(self, sort_key):
|
||||||
QTableWidgetItem.__init__(self)
|
QTableWidgetItem.__init__(self)
|
||||||
@ -143,14 +153,14 @@ class NotesTableWidgetItem(QTableWidgetItem):
|
|||||||
|
|
||||||
class NotesUtilities():
|
class NotesUtilities():
|
||||||
|
|
||||||
edit_icon = QIcon.ic('edit_input.png')
|
edit_icon = icon('edit_input.png')
|
||||||
edited_icon = QIcon.ic('modified.png')
|
edited_icon = icon('modified.png')
|
||||||
empty_icon = QIcon()
|
empty_icon = icon()
|
||||||
export_icon = QIcon.ic('forward.png')
|
export_icon = icon('forward.png')
|
||||||
import_icon = QIcon.ic('back.png')
|
import_icon = icon('back.png')
|
||||||
pencil_icon = QIcon.ic('notes.png')
|
pencil_icon = icon('notes.png')
|
||||||
trash_icon = QIcon.ic('trash.png')
|
trash_icon = icon('trash.png')
|
||||||
undo_delete_icon = QIcon.ic('edit-undo.png')
|
undo_delete_icon = icon('edit-undo.png')
|
||||||
|
|
||||||
def __init__(self, table, category, item_id_getter):
|
def __init__(self, table, category, item_id_getter):
|
||||||
self.table = table
|
self.table = table
|
||||||
@ -340,8 +350,8 @@ def block_signals(widget):
|
|||||||
|
|
||||||
class TagListEditor(QDialog, Ui_TagListEditor):
|
class TagListEditor(QDialog, Ui_TagListEditor):
|
||||||
|
|
||||||
edited_icon = QIcon.ic('modified.png')
|
edited_icon = icon('modified.png')
|
||||||
empty_icon = QIcon()
|
empty_icon = icon()
|
||||||
|
|
||||||
def __init__(self, window, cat_name, tag_to_match, get_book_ids, sorter,
|
def __init__(self, window, cat_name, tag_to_match, get_book_ids, sorter,
|
||||||
ttm_is_first_letter=False, category=None, fm=None, link_map=None):
|
ttm_is_first_letter=False, category=None, fm=None, link_map=None):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user