Minor tweaks with list comps

svn: r16211
This commit is contained in:
Gerald Britton
2010-11-18 21:11:17 +00:00
parent a5122b4d1d
commit 065b167c75

View File

@ -180,9 +180,9 @@ class MyFilters(gtk.ComboBox):
self.pack_start(cell, True) self.pack_start(cell, True)
self.add_attribute(cell, 'text', 0) self.add_attribute(cell, 'text', 0)
#remove own name from the list if given. #remove own name from the list if given.
self.flist = [ f.get_name() for f in filters if \ self.flist = sorted(f.get_name() for f in filters
(filter_name is None or f.get_name() != filter_name)] if filter_name is None or f.get_name() != filter_name
self.flist.sort() )
for fname in self.flist: for fname in self.flist:
store.append(row=[fname]) store.append(row=[fname])
@ -538,12 +538,7 @@ class EditRule(ManagedWindow.ManagedWindow):
self.sel_class = None self.sel_class = None
keys = sorted(the_map, by_rule_name, reverse=True) keys = sorted(the_map, by_rule_name, reverse=True)
catlist = [] catlist = sorted(set(class_obj.category for class_obj in keys))
for class_obj in keys:
category = class_obj.category
if category not in catlist:
catlist.append(category)
catlist.sort()
for category in catlist: for category in catlist:
top_node[category] = self.store.insert_after(None, last_top) top_node[category] = self.store.insert_after(None, last_top)
@ -568,8 +563,7 @@ class EditRule(ManagedWindow.ManagedWindow):
self.display_values(self.active_rule.__class__) self.display_values(self.active_rule.__class__)
(class_obj, vallist, tlist) = self.page[page] (class_obj, vallist, tlist) = self.page[page]
r = self.active_rule.values() r = self.active_rule.values()
for i in range(0, len(tlist)): for i in range(0, min(len(tlist), len(r))):
if i < len(r):
tlist[i].set_text(r[i]) tlist[i].set_text(r[i])
self.selection.connect('changed', self.on_node_selected) self.selection.connect('changed', self.on_node_selected)
@ -655,9 +649,7 @@ class EditRule(ManagedWindow.ManagedWindow):
try: try:
page = self.notebook.get_current_page() page = self.notebook.get_current_page()
(class_obj, vallist, tlist) = self.page[page] (class_obj, vallist, tlist) = self.page[page]
value_list = [] value_list == [unicode(sclass.get_text()) for sclass in tlist]
for selector_class in tlist:
value_list.append(unicode(selector_class.get_text()))
new_rule = class_obj(value_list) new_rule = class_obj(value_list)
self.update_rule(self.active_rule, new_rule) self.update_rule(self.active_rule, new_rule)
@ -717,12 +709,10 @@ class EditFilter(ManagedWindow.ManagedWindow):
self.close_window) self.close_window)
self.fname.connect('changed', self.filter_name_changed) self.fname.connect('changed', self.filter_name_changed)
if self.filter.get_logical_op() == 'or': op = self.filter.get_logical_op()
self.logical.set_active(1) self.logical.set_active(
elif self.filter.get_logical_op() == 'one': 1 if op == 'or' else 2 if op == 'one' else 2
self.logical.set_active(2) )
else:
self.logical.set_active(0)
self.logical_not.set_active(self.filter.get_invert()) self.logical_not.set_active(self.filter.get_invert())
if self.filter.get_name(): if self.filter.get_name():
self.fname.set_text(self.filter.get_name()) self.fname.set_text(self.filter.get_name())
@ -775,12 +765,7 @@ class EditFilter(ManagedWindow.ManagedWindow):
self.filterdb.get_filters(self.namespace).remove(f) self.filterdb.get_filters(self.namespace).remove(f)
break break
val = self.logical.get_active() val = self.logical.get_active()
if val == 1: op = 'or' if val == 1 else 'one' if val == 2 else 'and'
op = 'or'
elif val == 2:
op = 'one'
else:
op = 'and'
self.filter.set_logical_op(op) self.filter.set_logical_op(op)
self.filter.set_invert(self.logical_not.get_active()) self.filter.set_invert(self.logical_not.get_active())
self.filterdb.add(self.namespace,self.filter) self.filterdb.add(self.namespace,self.filter)