mirror of
				https://github.com/kovidgoyal/calibre.git
				synced 2025-11-03 19:17:02 -05:00 
			
		
		
		
	Refresh the book list when a User Category is added/edited. Fixes
Merge branch 'master' of https://github.com/cbhaley/calibre
This commit is contained in:
		
						commit
						4933604bb4
					
				@ -286,6 +286,7 @@ class TagsModel(QAbstractItemModel):  # {{{
 | 
				
			|||||||
    restriction_error = pyqtSignal()
 | 
					    restriction_error = pyqtSignal()
 | 
				
			||||||
    drag_drop_finished = pyqtSignal(object)
 | 
					    drag_drop_finished = pyqtSignal(object)
 | 
				
			||||||
    user_categories_edited = pyqtSignal(object, object)
 | 
					    user_categories_edited = pyqtSignal(object, object)
 | 
				
			||||||
 | 
					    user_category_added = pyqtSignal()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def __init__(self, parent, prefs=gprefs):
 | 
					    def __init__(self, parent, prefs=gprefs):
 | 
				
			||||||
        QAbstractItemModel.__init__(self, parent)
 | 
					        QAbstractItemModel.__init__(self, parent)
 | 
				
			||||||
@ -827,6 +828,7 @@ class TagsModel(QAbstractItemModel):  # {{{
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        self.db.new_api.set_pref('user_categories', user_cats)
 | 
					        self.db.new_api.set_pref('user_categories', user_cats)
 | 
				
			||||||
        self.refresh_required.emit()
 | 
					        self.refresh_required.emit()
 | 
				
			||||||
 | 
					        self.user_category_added.emit()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return True
 | 
					        return True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -896,6 +898,7 @@ class TagsModel(QAbstractItemModel):  # {{{
 | 
				
			|||||||
        categories[on_node.category_key[1:]] = [[v, c, 0] for v,c in cat_contents]
 | 
					        categories[on_node.category_key[1:]] = [[v, c, 0] for v,c in cat_contents]
 | 
				
			||||||
        self.db.new_api.set_pref('user_categories', categories)
 | 
					        self.db.new_api.set_pref('user_categories', categories)
 | 
				
			||||||
        self.refresh_required.emit()
 | 
					        self.refresh_required.emit()
 | 
				
			||||||
 | 
					        self.user_category_added.emit()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def handle_drop(self, on_node, ids):
 | 
					    def handle_drop(self, on_node, ids):
 | 
				
			||||||
        # print 'Dropped ids:', ids, on_node.tag
 | 
					        # print 'Dropped ids:', ids, on_node.tag
 | 
				
			||||||
 | 
				
			|||||||
@ -87,6 +87,13 @@ class TagBrowserMixin(object):  # {{{
 | 
				
			|||||||
                                                 type=Qt.QueuedConnection)
 | 
					                                                 type=Qt.QueuedConnection)
 | 
				
			||||||
        self.tags_view.tag_item_delete.connect(self.do_tag_item_delete)
 | 
					        self.tags_view.tag_item_delete.connect(self.do_tag_item_delete)
 | 
				
			||||||
        self.populate_tb_manage_menu(db)
 | 
					        self.populate_tb_manage_menu(db)
 | 
				
			||||||
 | 
					        self.tags_view.model().user_categories_edited.connect(self.user_categories_edited,
 | 
				
			||||||
 | 
					                type=Qt.QueuedConnection)
 | 
				
			||||||
 | 
					        self.tags_view.model().user_category_added.connect(self.user_categories_edited,
 | 
				
			||||||
 | 
					                type=Qt.QueuedConnection)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def user_categories_edited(self):
 | 
				
			||||||
 | 
					        self.library_view.model().refresh()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def do_restriction_error(self):
 | 
					    def do_restriction_error(self):
 | 
				
			||||||
        error_dialog(self.tags_view, _('Invalid search restriction'),
 | 
					        error_dialog(self.tags_view, _('Invalid search restriction'),
 | 
				
			||||||
@ -139,6 +146,7 @@ class TagBrowserMixin(object):  # {{{
 | 
				
			|||||||
            db.new_api.set_pref('user_categories', d.categories)
 | 
					            db.new_api.set_pref('user_categories', d.categories)
 | 
				
			||||||
            db.new_api.refresh_search_locations()
 | 
					            db.new_api.refresh_search_locations()
 | 
				
			||||||
            self.tags_view.recount()
 | 
					            self.tags_view.recount()
 | 
				
			||||||
 | 
					            self.user_categories_edited()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def do_delete_user_category(self, category_name):
 | 
					    def do_delete_user_category(self, category_name):
 | 
				
			||||||
        '''
 | 
					        '''
 | 
				
			||||||
@ -172,6 +180,7 @@ class TagBrowserMixin(object):  # {{{
 | 
				
			|||||||
                del user_cats[k]
 | 
					                del user_cats[k]
 | 
				
			||||||
        db.new_api.set_pref('user_categories', user_cats)
 | 
					        db.new_api.set_pref('user_categories', user_cats)
 | 
				
			||||||
        self.tags_view.recount()
 | 
					        self.tags_view.recount()
 | 
				
			||||||
 | 
					        self.user_categories_edited()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def do_del_item_from_user_cat(self, user_cat, item_name, item_category):
 | 
					    def do_del_item_from_user_cat(self, user_cat, item_name, item_category):
 | 
				
			||||||
        '''
 | 
					        '''
 | 
				
			||||||
@ -190,6 +199,7 @@ class TagBrowserMixin(object):  # {{{
 | 
				
			|||||||
        self.tags_view.model().delete_item_from_user_category(user_cat,
 | 
					        self.tags_view.model().delete_item_from_user_category(user_cat,
 | 
				
			||||||
                                                      item_name, item_category)
 | 
					                                                      item_name, item_category)
 | 
				
			||||||
        self.tags_view.recount()
 | 
					        self.tags_view.recount()
 | 
				
			||||||
 | 
					        self.user_categories_edited()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def do_add_item_to_user_cat(self, dest_category, src_name, src_category):
 | 
					    def do_add_item_to_user_cat(self, dest_category, src_name, src_category):
 | 
				
			||||||
        '''
 | 
					        '''
 | 
				
			||||||
@ -217,6 +227,7 @@ class TagBrowserMixin(object):  # {{{
 | 
				
			|||||||
            user_cats[dest_category].append([src_name, src_category, 0])
 | 
					            user_cats[dest_category].append([src_name, src_category, 0])
 | 
				
			||||||
        db.new_api.set_pref('user_categories', user_cats)
 | 
					        db.new_api.set_pref('user_categories', user_cats)
 | 
				
			||||||
        self.tags_view.recount()
 | 
					        self.tags_view.recount()
 | 
				
			||||||
 | 
					        self.user_categories_edited()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def do_tags_list_edit(self, tag, category):
 | 
					    def do_tags_list_edit(self, tag, category):
 | 
				
			||||||
        '''
 | 
					        '''
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user