Add hierarchical search to the tag browser context menu

This commit is contained in:
Charles Haley 2021-01-04 15:57:03 +00:00
parent 05b97d24c0
commit a2411ef0a0

View File

@ -782,11 +782,24 @@ class TagsView(QTreeView): # {{{
partial(self.context_menu_handler, action='search',
search_state=TAG_SEARCH_STATES['mark_plus'],
index=index))
if add_child_search := (tag.is_hierarchical == '5state' and
len(tag_item.children)):
search_submenu.addAction(self.search_icon,
_('Search for %s and its children')%display_name(tag),
partial(self.context_menu_handler, action='search',
search_state=TAG_SEARCH_STATES['mark_plusplus'],
index=index))
search_submenu.addAction(self.search_icon,
_('Search for everything but %s')%display_name(tag),
partial(self.context_menu_handler, action='search',
search_state=TAG_SEARCH_STATES['mark_minus'],
index=index))
if add_child_search:
search_submenu.addAction(self.search_icon,
_('Search for everything but %s and its children')%display_name(tag),
partial(self.context_menu_handler, action='search',
search_state=TAG_SEARCH_STATES['mark_minusminus'],
index=index))
if key == 'search':
search_submenu.addAction(self.search_copy_icon,
_('Search using saved search expression'),