From 5d0289606d8d2fbc154aaefcb118f85e06057d9c Mon Sep 17 00:00:00 2001 From: Charles Haley Date: Sun, 4 Apr 2021 10:34:03 +0100 Subject: [PATCH] Allow advanced emblem rules to return multiple icon names using the same syntax as icon rules. --- src/calibre/gui2/library/alternate_views.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/calibre/gui2/library/alternate_views.py b/src/calibre/gui2/library/alternate_views.py index dc94eb7623..37734eb956 100644 --- a/src/calibre/gui2/library/alternate_views.py +++ b/src/calibre/gui2/library/alternate_views.py @@ -533,9 +533,10 @@ class CoverDelegate(QStyledItemDelegate): for i, (kind, column, rule) in enumerate(emblem_rules): icon_name, mi = self.render_emblem(book_id, rule, i, m.cover_grid_emblem_cache, mi, db, m.formatter, m.cover_grid_template_cache) if icon_name is not None: - pixmap = self.cached_emblem(m.cover_grid_bitmap_cache, icon_name) - if pixmap is not None: - emblems.append(pixmap) + for one_icon in [i.strip() for i in icon_name.split(':') if i.strip()]: + pixmap = self.cached_emblem(m.cover_grid_bitmap_cache, one_icon) + if pixmap is not None: + emblems.append(pixmap) if marked: emblems.insert(0, self.cached_emblem(m.cover_grid_bitmap_cache, ':marked', m.marked_icon)) if on_device: