mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-08-11 09:13:57 -04:00
Change the saved search button to always pop up a menu with the saved searches as well as actions to create or manage a saved search
This commit is contained in:
parent
6cb0757342
commit
e0f916068a
@ -263,7 +263,11 @@ class SearchBar(QWidget): # {{{
|
||||
x.setVisible(tweaks['show_saved_search_box'])
|
||||
|
||||
x = parent.add_saved_search_button = RightClickButton(self)
|
||||
x.setToolTip(_(
|
||||
'Use an existing Saved search or create a new one'
|
||||
))
|
||||
x.setCursor(Qt.PointingHandCursor)
|
||||
x.setPopupMode(x.InstantPopup)
|
||||
x.setIcon(QIcon(I("plus.png")))
|
||||
l.addWidget(x)
|
||||
x.setVisible(not tweaks['show_saved_search_box'])
|
||||
|
@ -547,15 +547,24 @@ class SavedSearchBoxMixin(object): # {{{
|
||||
self.save_search_button.setMenu(QMenu())
|
||||
self.save_search_button.menu().addAction(
|
||||
QIcon(I('plus.png')),
|
||||
_('Create saved search'),
|
||||
_('Create Saved search'),
|
||||
self.saved_search.save_search_button_clicked)
|
||||
self.save_search_button.menu().addAction(
|
||||
QIcon(I('trash.png')), _('Delete saved search'), self.saved_search.delete_current_search)
|
||||
QIcon(I('trash.png')), _('Delete Saved search'), self.saved_search.delete_current_search)
|
||||
self.save_search_button.menu().addAction(
|
||||
QIcon(I('search.png')), _('Manage saved searches'), partial(self.do_saved_search_edit, None))
|
||||
self.add_saved_search_button.clicked.connect(self.add_saved_search)
|
||||
QIcon(I('search.png')), _('Manage Saved searches'), partial(self.do_saved_search_edit, None))
|
||||
self.add_saved_search_button.setMenu(QMenu())
|
||||
self.add_saved_search_button.menu().addActions(self.save_search_button.menu().actions())
|
||||
self.add_saved_search_button.menu().aboutToShow.connect(self.populate_add_saved_search_menu)
|
||||
|
||||
def populate_add_saved_search_menu(self):
|
||||
m = self.add_saved_search_button.menu()
|
||||
m.clear()
|
||||
db = self.current_db
|
||||
for name in db.saved_search_names():
|
||||
m.addAction(name.strip(), partial(self.saved_search.saved_search_selected, name))
|
||||
m.addSeparator()
|
||||
m.addAction(QIcon(I('plus.png')), _('Add Saved search'), self.add_saved_search)
|
||||
m.addActions(list(self.save_search_button.menu().actions())[-1:])
|
||||
|
||||
def saved_searches_changed(self, set_restriction=None, recount=True):
|
||||
self.build_search_restriction_list()
|
||||
|
Loading…
x
Reference in New Issue
Block a user