Change tag browser ordering back to use a lambda, because get does not call "__missing__". Slight cosmetic changes.

This commit is contained in:
Charles Haley 2012-02-19 08:56:56 +01:00
parent f957ee0955
commit f15011a815

View File

@ -11,6 +11,7 @@ __docformat__ = 'restructuredtext en'
import traceback, cPickle, copy import traceback, cPickle, copy
from itertools import repeat from itertools import repeat
from collections import defaultdict from collections import defaultdict
from functools import partial
from PyQt4.Qt import (QAbstractItemModel, QIcon, QVariant, QFont, Qt, from PyQt4.Qt import (QAbstractItemModel, QIcon, QVariant, QFont, Qt,
QMimeData, QModelIndex, pyqtSignal, QObject) QMimeData, QModelIndex, pyqtSignal, QObject)
@ -832,11 +833,9 @@ class TagsModel(QAbstractItemModel): # {{{
if lower(t.name).find(self.filter_categories_by) >= 0] if lower(t.name).find(self.filter_categories_by) >= 0]
tb_categories = self.db.field_metadata tb_categories = self.db.field_metadata
y = tweaks['tag_browser_category_order'] order = tweaks['tag_browser_category_order']
deforder = y.get('*', 100) defvalue = order.get('*', 100)
order = defaultdict(lambda : deforder) tb_keys = sorted(tb_categories.keys(), key=lambda x: order.get(x, defvalue))
order.update(y)
tb_keys = sorted(tb_categories.iterkeys(), key=order.get)
for category in tb_keys: for category in tb_keys:
if category in data: # The search category can come and go if category in data: # The search category can come and go
self.row_map.append(category) self.row_map.append(category)