more QIcon.ic() usage

This commit is contained in:
Kovid Goyal 2022-01-08 15:46:51 +05:30
parent 7ce05e3097
commit 35aba136ee
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
25 changed files with 56 additions and 54 deletions

View File

@ -236,7 +236,7 @@ class ITALICA(EB600):
name = 'Italica Device Interface' name = 'Italica Device Interface'
gui_name = 'Italica' gui_name = 'Italica'
icon = I('devices/italica.png') icon = 'devices/italica.png'
FORMATS = ['epub', 'rtf', 'fb2', 'html', 'prc', 'mobi', 'pdf', 'txt'] FORMATS = ['epub', 'rtf', 'fb2', 'html', 'prc', 'mobi', 'pdf', 'txt']

View File

@ -49,7 +49,7 @@ class FOLDER_DEVICE(USBMS):
SUPPORTS_SUB_DIRS = True SUPPORTS_SUB_DIRS = True
#: Icon for this device #: Icon for this device
icon = I('devices/folder.png') icon = 'devices/folder.png'
METADATA_CACHE = '.metadata.calibre' METADATA_CACHE = '.metadata.calibre'
DRIVEINFO = '.driveinfo.calibre' DRIVEINFO = '.driveinfo.calibre'

View File

@ -73,7 +73,7 @@ class DevicePlugin(Plugin):
path_sep = os.sep path_sep = os.sep
#: Icon for this device #: Icon for this device
icon = I('reader.png') icon = 'reader.png'
# Encapsulates an annotation fetched from the device # Encapsulates an annotation fetched from the device
UserAnnotation = namedtuple('Annotation','type, value') UserAnnotation = namedtuple('Annotation','type, value')

View File

@ -28,7 +28,7 @@ def synchronous(func):
class MTPDeviceBase(DevicePlugin): class MTPDeviceBase(DevicePlugin):
name = 'MTP Device Interface' name = 'MTP Device Interface'
gui_name = _('MTP device') gui_name = _('MTP device')
icon = I('devices/tablet.png') icon = 'devices/tablet.png'
description = _('Communicate with MTP devices') description = _('Communicate with MTP devices')
author = 'Kovid Goyal' author = 'Kovid Goyal'
version = (1, 0, 0) version = (1, 0, 0)

View File

@ -184,7 +184,7 @@ class SMART_DEVICE_APP(DeviceConfig, DevicePlugin):
gui_name = _('Wireless device') gui_name = _('Wireless device')
gui_name_template = '%s: %s' gui_name_template = '%s: %s'
icon = I('devices/tablet.png') icon = 'devices/tablet.png'
description = _('Communicate with Smart Device apps') description = _('Communicate with Smart Device apps')
supported_platforms = ['windows', 'osx', 'linux'] supported_platforms = ['windows', 'osx', 'linux']
author = 'Charles Haley' author = 'Charles Haley'

View File

@ -47,7 +47,11 @@ except AttributeError:
def load_qicon(name): def load_qicon(name):
return QIcon(I(name)) if isinstance(name, QIcon):
return name
if not os.path.isabs(name):
name = I(name)
return QIcon(name)
QIcon.ic = load_qicon QIcon.ic = load_qicon

View File

@ -392,7 +392,7 @@ class ChooseLibraryAction(InterfaceAction):
traceback.print_exc() traceback.print_exc()
def set_library_icon(self): def set_library_icon(self):
icon = QIcon(library_icon_path()) icon = QIcon.ic(library_icon_path())
has_icon = not icon.isNull() and len(icon.availableSizes()) > 0 has_icon = not icon.isNull() and len(icon.availableSizes()) > 0
if not has_icon: if not has_icon:
icon = self.original_library_icon icon = self.original_library_icon

View File

@ -19,7 +19,7 @@ class QuickviewButton(LayoutButton): # {{{
def __init__(self, gui, quickview_manager): def __init__(self, gui, quickview_manager):
self.qv = quickview_manager self.qv = quickview_manager
qaction = quickview_manager.qaction qaction = quickview_manager.qaction
LayoutButton.__init__(self, I('quickview.png'), _('Quickview'), LayoutButton.__init__(self, 'quickview.png', _('Quickview'),
parent=gui, shortcut=qaction.shortcut().toString()) parent=gui, shortcut=qaction.shortcut().toString())
self.toggled.connect(self.update_state) self.toggled.connect(self.update_state)
self.action_toggle = qaction self.action_toggle = qaction

View File

@ -132,9 +132,9 @@ def get_icon_path(f, prefix):
if ci: if ci:
icon_path = os.path.join(config_dir, 'tb_icons', ci) icon_path = os.path.join(config_dir, 'tb_icons', ci)
elif prefix: elif prefix:
icon_path = I(category_icon_map['gst']) icon_path = category_icon_map['gst']
else: else:
icon_path = I(category_icon_map.get(f, 'search.png')) icon_path = category_icon_map.get(f, 'search.png')
return icon_path return icon_path
@ -157,13 +157,13 @@ def init_find_in_grouped_search(menu, field, value, book_info):
m = QMenu((_('Search calibre for %s') + '...')%escape_for_menu(value), menu) m = QMenu((_('Search calibre for %s') + '...')%escape_for_menu(value), menu)
m.setIcon(QIcon.ic('search.png')) m.setIcon(QIcon.ic('search.png'))
menu.addMenu(m) menu.addMenu(m)
m.addAction(QIcon(get_icon_path(field, '')), m.addAction(QIcon.ic(get_icon_path(field, '')),
_('in category %s')%escape_for_menu(field_name), _('in category %s')%escape_for_menu(field_name),
lambda g=field: book_info.search_requested( lambda g=field: book_info.search_requested(
'{}:"={}"'.format(g, value.replace('"', r'\"')), '')) '{}:"={}"'.format(g, value.replace('"', r'\"')), ''))
for gst in gsts_to_show: for gst in gsts_to_show:
icon_path = get_icon_path(gst, '@') icon_path = get_icon_path(gst, '@')
m.addAction(QIcon(icon_path), m.addAction(QIcon.ic(icon_path),
_('in grouped search %s')%gst, _('in grouped search %s')%gst,
lambda g=gst: book_info.search_requested( lambda g=gst: book_info.search_requested(
'{}:"={}"'.format(g, value.replace('"', r'\"')), '')) '{}:"={}"'.format(g, value.replace('"', r'\"')), ''))

View File

@ -258,7 +258,7 @@ class EditorWidget(QTextEdit, LineEditECM): # {{{
self.comments_pat = re.compile(r'<!--.*?-->', re.DOTALL) self.comments_pat = re.compile(r'<!--.*?-->', re.DOTALL)
def r(name, icon, text, checkable=False, shortcut=None): def r(name, icon, text, checkable=False, shortcut=None):
ac = QAction(QIcon(I(icon + '.png')), text, self) ac = QAction(QIcon.ic(icon + '.png'), text, self)
ac.setShortcutContext(Qt.ShortcutContext.WidgetWithChildrenShortcut) ac.setShortcutContext(Qt.ShortcutContext.WidgetWithChildrenShortcut)
if checkable: if checkable:
ac.setCheckable(checkable) ac.setCheckable(checkable)

View File

@ -49,7 +49,7 @@ def bulk_defaults_for_input_format(fmt):
class Widget(QWidget): class Widget(QWidget):
TITLE = _('Unknown') TITLE = _('Unknown')
ICON = I('config.png') ICON = 'config.png'
HELP = '' HELP = ''
COMMIT_NAME = None COMMIT_NAME = None
# If True, leading and trailing spaces are removed from line and text edit # If True, leading and trailing spaces are removed from line and text edit
@ -66,7 +66,7 @@ class Widget(QWidget):
self._options = options self._options = options
self._name = self.commit_name = self.COMMIT_NAME self._name = self.commit_name = self.COMMIT_NAME
assert self._name is not None assert self._name is not None
self._icon = QIcon(self.ICON) self._icon = QIcon.ic(self.ICON)
for name in self._options: for name in self._options:
if not hasattr(self, 'opt_'+name): if not hasattr(self, 'opt_'+name):
raise Exception('Option %s missing in %s'%(name, raise Exception('Option %s missing in %s'%(name,

View File

@ -212,12 +212,12 @@ class Bool(Base):
w = self.combobox w = self.combobox
items = [_('Yes'), _('No'), _('Undefined')] items = [_('Yes'), _('No'), _('Undefined')]
icons = [I('ok.png'), I('list_remove.png'), I('blank.png')] icons = ['ok.png', 'list_remove.png', 'blank.png']
if not self.db.new_api.pref('bools_are_tristate'): if not self.db.new_api.pref('bools_are_tristate'):
items = items[:-1] items = items[:-1]
icons = icons[:-1] icons = icons[:-1]
for icon, text in zip(icons, items): for icon, text in zip(icons, items):
w.addItem(QIcon(icon), text) w.addItem(QIcon.ic(icon), text)
def setter(self, val): def setter(self, val):
val = {None: 2, False: 1, True: 0}[val] val = {None: 2, False: 1, True: 0}[val]
@ -1019,10 +1019,10 @@ class BulkBool(BulkBase, Bool):
items.append('') items.append('')
else: else:
items.append(_('Undefined')) items.append(_('Undefined'))
icons = [I('ok.png'), I('list_remove.png'), I('blank.png')] icons = ['ok.png', 'list_remove.png', 'blank.png']
self.main_widget.blockSignals(True) self.main_widget.blockSignals(True)
for icon, text in zip(icons, items): for icon, text in zip(icons, items):
self.main_widget.addItem(QIcon(icon), text) self.main_widget.addItem(QIcon.ic(icon), text)
self.main_widget.blockSignals(False) self.main_widget.blockSignals(False)
self.finish_ui_setup(parent, is_bool=True) self.finish_ui_setup(parent, is_bool=True)

View File

@ -736,7 +736,7 @@ class DeviceAction(QAction): # {{{
a_s = pyqtSignal(object) a_s = pyqtSignal(object)
def __init__(self, dest, delete, specific, icon_path, text, parent=None): def __init__(self, dest, delete, specific, icon_path, text, parent=None):
QAction.__init__(self, QIcon(icon_path), text, parent) QAction.__init__(self, QIcon.ic(icon_path), text, parent)
self.dest = dest self.dest = dest
self.delete = delete self.delete = delete
self.specific = specific self.specific = specific
@ -767,29 +767,29 @@ class DeviceMenu(QMenu): # {{{
self.set_default_menu.setIcon(QIcon.ic('config.png')) self.set_default_menu.setIcon(QIcon.ic('config.png'))
basic_actions = [ basic_actions = [
('main:', False, False, I('reader.png'), ('main:', False, False, 'reader.png',
_('Send to main memory')), _('Send to main memory')),
('carda:0', False, False, I('sd.png'), ('carda:0', False, False, 'sd.png',
_('Send to storage card A')), _('Send to storage card A')),
('cardb:0', False, False, I('sd.png'), ('cardb:0', False, False, 'sd.png',
_('Send to storage card B')), _('Send to storage card B')),
] ]
delete_actions = [ delete_actions = [
('main:', True, False, I('reader.png'), ('main:', True, False, 'reader.png',
_('Main memory')), _('Main memory')),
('carda:0', True, False, I('sd.png'), ('carda:0', True, False, 'sd.png',
_('Storage card A')), _('Storage card A')),
('cardb:0', True, False, I('sd.png'), ('cardb:0', True, False, 'sd.png',
_('Storage card B')), _('Storage card B')),
] ]
specific_actions = [ specific_actions = [
('main:', False, True, I('reader.png'), ('main:', False, True, 'reader.png',
_('Main memory')), _('Main memory')),
('carda:0', False, True, I('sd.png'), ('carda:0', False, True, 'sd.png',
_('Storage card A')), _('Storage card A')),
('cardb:0', False, True, I('sd.png'), ('cardb:0', False, True, 'sd.png',
_('Storage card B')), _('Storage card B')),
] ]
@ -945,7 +945,7 @@ class DeviceMixin: # {{{
return question_dialog(self, _('Manage the %s?')%name, return question_dialog(self, _('Manage the %s?')%name,
_('Detected the <b>%s</b>. Do you want calibre to manage it?')% _('Detected the <b>%s</b>. Do you want calibre to manage it?')%
name, show_copy_button=False, name, show_copy_button=False,
override_icon=QIcon(icon)) override_icon=QIcon.ic(icon))
def after_callback_feedback(self, feedback): def after_callback_feedback(self, feedback):
title, msg, det_msg = feedback title, msg, det_msg = feedback

View File

@ -45,7 +45,7 @@ class NameTableWidgetItem(QTableWidgetItem):
if to_what: if to_what:
self.setIcon(QIcon.ic('trash.png')) self.setIcon(QIcon.ic('trash.png'))
else: else:
self.setIcon(QIcon(None)) self.setIcon(QIcon())
self.current_value = self.initial_value self.current_value = self.initial_value
self.is_deleted = to_what self.is_deleted = to_what

View File

@ -190,7 +190,7 @@ class Stack(QStackedWidget): # {{{
parent.cb_splitter = LibraryWidget(parent) parent.cb_splitter = LibraryWidget(parent)
self.tb_widget = TagBrowserWidget(parent) self.tb_widget = TagBrowserWidget(parent)
parent.tb_splitter = Splitter('tag_browser_splitter', parent.tb_splitter = Splitter('tag_browser_splitter',
_('Tag browser'), I('tags.png'), _('Tag browser'), 'tags.png',
parent=parent, side_index=0, initial_side_size=200, parent=parent, side_index=0, initial_side_size=200,
shortcut='Shift+Alt+T') shortcut='Shift+Alt+T')
parent.tb_splitter.state_changed.connect( parent.tb_splitter.state_changed.connect(
@ -332,7 +332,7 @@ class GridViewButton(LayoutButton): # {{{
def __init__(self, gui): def __init__(self, gui):
sc = 'Alt+Shift+G' sc = 'Alt+Shift+G'
LayoutButton.__init__(self, I('grid.png'), _('Cover grid'), parent=gui, shortcut=sc) LayoutButton.__init__(self, 'grid.png', _('Cover grid'), parent=gui, shortcut=sc)
self.set_state_to_show() self.set_state_to_show()
self.action_toggle = QAction(self.icon(), _('Toggle') + ' ' + self.label, self) self.action_toggle = QAction(self.icon(), _('Toggle') + ' ' + self.label, self)
gui.addAction(self.action_toggle) gui.addAction(self.action_toggle)
@ -362,7 +362,7 @@ class SearchBarButton(LayoutButton): # {{{
def __init__(self, gui): def __init__(self, gui):
sc = 'Alt+Shift+F' sc = 'Alt+Shift+F'
LayoutButton.__init__(self, I('search.png'), _('Search bar'), parent=gui, shortcut=sc) LayoutButton.__init__(self, 'search.png', _('Search bar'), parent=gui, shortcut=sc)
self.set_state_to_hide() self.set_state_to_hide()
self.action_toggle = QAction(self.icon(), _('Toggle') + ' ' + self.label, self) self.action_toggle = QAction(self.icon(), _('Toggle') + ' ' + self.label, self)
gui.addAction(self.action_toggle) gui.addAction(self.action_toggle)
@ -567,7 +567,7 @@ class LayoutMixin: # {{{
self.book_details = BookDetails(False, self) self.book_details = BookDetails(False, self)
self.stack = Stack(self) self.stack = Stack(self)
self.bd_splitter = Splitter('book_details_splitter', self.bd_splitter = Splitter('book_details_splitter',
_('Book details'), I('book.png'), _('Book details'), 'book.png',
orientation=Qt.Orientation.Vertical, parent=self, side_index=1, orientation=Qt.Orientation.Vertical, parent=self, side_index=1,
shortcut='Shift+Alt+D') shortcut='Shift+Alt+D')
self.bd_splitter.addWidget(self.stack) self.bd_splitter.addWidget(self.stack)
@ -578,7 +578,7 @@ class LayoutMixin: # {{{
# }}} # }}}
else: # wide {{{ else: # wide {{{
self.bd_splitter = Splitter('book_details_splitter', self.bd_splitter = Splitter('book_details_splitter',
_('Book details'), I('book.png'), initial_side_size=200, _('Book details'), 'book.png', initial_side_size=200,
orientation=Qt.Orientation.Horizontal, parent=self, side_index=1, orientation=Qt.Orientation.Horizontal, parent=self, side_index=1,
shortcut='Shift+Alt+D') shortcut='Shift+Alt+D')
self.stack = Stack(self) self.stack = Stack(self)

View File

@ -121,9 +121,7 @@ class LocationManager(QObject): # {{{
self.configure_device.emit() self.configure_device.emit()
def update_devices(self, cp=(None, None), fs=[-1, -1, -1], icon=None): def update_devices(self, cp=(None, None), fs=[-1, -1, -1], icon=None):
if icon is None: self.location_main.setIcon(QIcon.ic(icon or 'reader.png'))
icon = I('reader.png')
self.location_main.setIcon(QIcon(icon))
had_device = self.has_device had_device = self.has_device
if cp is None: if cp is None:
cp = (None, None) cp = (None, None)

View File

@ -90,7 +90,7 @@ class LayoutMenu(QMenu):
self.items = [] self.items = []
if parent is None: if parent is None:
buttons = [ buttons = [
QPushButton(QIcon(I(i + '.png')), i, self) QPushButton(QIcon.ic(i + '.png'), i, self)
for i in 'search tags cover_flow grid book'.split()] for i in 'search tags cover_flow grid book'.split()]
for b in buttons: for b in buttons:
b.setVisible(False), b.setCheckable(True), b.setChecked(b.text() in 'tags grid') b.setVisible(False), b.setCheckable(True), b.setChecked(b.text() in 'tags grid')

View File

@ -717,13 +717,13 @@ class CcBoolDelegate(QStyledItemDelegate, UpdateEditorGeometry): # {{{
def createEditor(self, parent, option, index): def createEditor(self, parent, option, index):
editor = DelegateCB(parent) editor = DelegateCB(parent)
items = [_('Yes'), _('No'), _('Undefined')] items = [_('Yes'), _('No'), _('Undefined')]
icons = [I('ok.png'), I('list_remove.png'), I('blank.png')] icons = ['ok.png', 'list_remove.png', 'blank.png']
if not index.model().db.new_api.pref('bools_are_tristate'): if not index.model().db.new_api.pref('bools_are_tristate'):
items = items[:-1] items = items[:-1]
icons = icons[:-1] icons = icons[:-1]
self.longest_text = '' self.longest_text = ''
for icon, text in zip(icons, items): for icon, text in zip(icons, items):
editor.addItem(QIcon(icon), text) editor.addItem(QIcon.ic(icon), text)
if len(text) > len(self.longest_text): if len(text) > len(self.longest_text):
self.longest_text = text self.longest_text = text
return editor return editor

View File

@ -672,7 +672,7 @@ class CompareMany(QDialog):
if self.total > 1: if self.total > 1:
b.setToolTip(_('Move to next [%s]') % self.next_action.shortcut().toString(QKeySequence.SequenceFormat.NativeText)) b.setToolTip(_('Move to next [%s]') % self.next_action.shortcut().toString(QKeySequence.SequenceFormat.NativeText))
self.next_action.triggered.connect(b.click) self.next_action.triggered.connect(b.click)
b.setIcon(QIcon(I('forward.png' if self.total > 1 else 'ok.png'))) b.setIcon(QIcon.ic('forward.png' if self.total > 1 else 'ok.png'))
connect_lambda(b.clicked, self, lambda self: self.next_item(True)) connect_lambda(b.clicked, self, lambda self: self.next_item(True))
b.setDefault(True), b.setAutoDefault(True) b.setDefault(True), b.setAutoDefault(True)
self.bbh = h = QHBoxLayout() self.bbh = h = QHBoxLayout()

View File

@ -35,7 +35,7 @@ class Model(QStringListModel):
if role == Qt.ItemDataRole.DecorationRole: if role == Qt.ItemDataRole.DecorationRole:
w = self.widgets[index.row()] w = self.widgets[index.row()]
if w.ICON: if w.ICON:
return (QIcon(w.ICON)) return QIcon.ic(w.ICON)
return QStringListModel.data(self, index, role) return QStringListModel.data(self, index, role)

View File

@ -95,7 +95,7 @@ class TitleBar(QWidget):
self.show_msg() self.show_msg()
def show_plugin(self, plugin=None): def show_plugin(self, plugin=None):
self.icon.set_icon(QIcon(I('lt.png') if plugin is None else plugin.icon)) self.icon.set_icon(QIcon.ic('lt.png' if plugin is None else plugin.icon))
self.title.setText('<h1>' + (_('Preferences') if plugin is None else plugin.gui_name)) self.title.setText('<h1>' + (_('Preferences') if plugin is None else plugin.gui_name))
def show_msg(self, msg=None): def show_msg(self, msg=None):
@ -136,7 +136,7 @@ class Category(QWidget): # {{{
self.actions = [] self.actions = []
for p in plugins: for p in plugins:
target = partial(self.triggered, p) target = partial(self.triggered, p)
ac = self.bar.addAction(QIcon(p.icon), p.gui_name.replace('&', '&&'), target) ac = self.bar.addAction(QIcon.ic(p.icon), p.gui_name.replace('&', '&&'), target)
ac.setToolTip(textwrap.fill(p.description)) ac.setToolTip(textwrap.fill(p.description))
ac.setWhatsThis(textwrap.fill(p.description)) ac.setWhatsThis(textwrap.fill(p.description))
ac.setStatusTip(p.description) ac.setStatusTip(p.description)
@ -327,7 +327,7 @@ class Preferences(QDialog):
self.setWindowTitle(__appname__ + ' - ' + _('Preferences') + ' - ' + plugin.gui_name) self.setWindowTitle(__appname__ + ' - ' + _('Preferences') + ' - ' + plugin.gui_name)
self.showing_widget.restart_now.connect(self.restart_now) self.showing_widget.restart_now.connect(self.restart_now)
self.title_bar.show_plugin(plugin) self.title_bar.show_plugin(plugin)
self.setWindowIcon(QIcon(plugin.icon)) self.setWindowIcon(QIcon.ic(plugin.icon))
self.bb.button(QDialogButtonBox.StandardButton.Close).setVisible(False) self.bb.button(QDialogButtonBox.StandardButton.Close).setVisible(False)
self.wizard_button.setVisible(False) self.wizard_button.setVisible(False)

View File

@ -39,7 +39,7 @@ class PluginModel(QAbstractItemModel, AdaptSQP): # {{{
SearchQueryParser.__init__(self, ['all']) SearchQueryParser.__init__(self, ['all'])
self.show_only_user_plugins = show_only_user_plugins self.show_only_user_plugins = show_only_user_plugins
self.icon = QIcon.ic('plugins.png') self.icon = QIcon.ic('plugins.png')
p = QIcon(self.icon).pixmap(64, 64, QIcon.Mode.Disabled, QIcon.State.On) p = self.icon.pixmap(64, 64, QIcon.Mode.Disabled, QIcon.State.On)
self.disabled_icon = QIcon(p) self.disabled_icon = QIcon(p)
self._p = p self._p = p
self.populate() self.populate()

View File

@ -455,9 +455,9 @@ class TagsModel(QAbstractItemModel): # {{{
tt = _('The lookup/search name is "{0}"{1}').format(key, cust_desc) tt = _('The lookup/search name is "{0}"{1}').format(key, cust_desc)
if self.category_custom_icons.get(key, None) is None: if self.category_custom_icons.get(key, None) is None:
self.category_custom_icons[key] = QIcon(I( self.category_custom_icons[key] = QIcon.ic(
category_icon_map['gst'] if is_gst else category_icon_map.get( category_icon_map['gst'] if is_gst else category_icon_map.get(
key, (category_icon_map['user:'] if key.startswith('@') else category_icon_map['custom:'])))) key, (category_icon_map['user:'] if key.startswith('@') else category_icon_map['custom:'])))
if key.startswith('@'): if key.startswith('@'):
path_parts = [p for p in key.split('.')] path_parts = [p for p in key.split('.')]

View File

@ -711,7 +711,7 @@ class TagsView(QTreeView): # {{{
partial(self.context_menu_handler, action='show', category=col)) partial(self.context_menu_handler, action='show', category=col))
ic = self.model().category_custom_icons.get(col) ic = self.model().category_custom_icons.get(col)
if ic: if ic:
ac.setIcon(QIcon(ic)) ac.setIcon(QIcon.ic(ic))
m.addSeparator() m.addSeparator()
m.addAction(_('All categories'), m.addAction(_('All categories'),
partial(self.context_menu_handler, action='defaults')).setIcon(QIcon.ic('plusplus.png')) partial(self.context_menu_handler, action='defaults')).setIcon(QIcon.ic('plusplus.png'))
@ -948,7 +948,7 @@ class TagsView(QTreeView): # {{{
key=key)) key=key))
ic = self.model().category_custom_icons.get(key) ic = self.model().category_custom_icons.get(key)
if ic: if ic:
ac.setIcon(QIcon(ic)) ac.setIcon(QIcon.ic(ic))
if fm['datatype'] == 'enumeration': if fm['datatype'] == 'enumeration':
self.context_menu.addAction(_('Edit permissible values for %s')%category, self.context_menu.addAction(_('Edit permissible values for %s')%category,
partial(self.context_menu_handler, action='edit_enum', partial(self.context_menu_handler, action='edit_enum',
@ -968,7 +968,7 @@ class TagsView(QTreeView): # {{{
index=tag.id)) index=tag.id))
ic = self.model().category_custom_icons.get(key) ic = self.model().category_custom_icons.get(key)
if ic: if ic:
ac.setIcon(QIcon(ic)) ac.setIcon(QIcon.ic(ic))
elif key == 'search': elif key == 'search':
self.context_menu.addAction(_('Manage Saved searches'), self.context_menu.addAction(_('Manage Saved searches'),
partial(self.context_menu_handler, action='manage_searches', partial(self.context_menu_handler, action='manage_searches',

View File

@ -1007,7 +1007,7 @@ class LayoutButton(QToolButton):
def __init__(self, icon, text, splitter=None, parent=None, shortcut=None): def __init__(self, icon, text, splitter=None, parent=None, shortcut=None):
QToolButton.__init__(self, parent) QToolButton.__init__(self, parent)
self.label = text self.label = text
self.setIcon(QIcon(icon)) self.setIcon(QIcon.ic(icon))
self.setCheckable(True) self.setCheckable(True)
self.icname = os.path.basename(icon).rpartition('.')[0] self.icname = os.path.basename(icon).rpartition('.')[0]