--- a/view.py Mon Jun 29 14:12:18 2009 +0200
+++ b/view.py Thu Jul 02 10:35:03 2009 +0200
@@ -19,7 +19,7 @@
from cubicweb.selectors import require_group_compat, accepts_compat
from cubicweb.appobject import AppRsetObject
from cubicweb.utils import UStringIO, HTMLStream
-
+from cubicweb.schema import display_name
# robots control
NOINDEX = u'<meta name="ROBOTS" content="NOINDEX" />'
@@ -369,20 +369,20 @@
category = 'anyrsetview'
- def columns_labels(self, tr=True):
+ def columns_labels(self, mainindex=0, tr=True):
if tr:
- translate = display_name
+ translate = lambda val, req=self.req: display_name(req, val)
else:
- translate = lambda req, val: val
- rqlstdescr = self.rset.syntax_tree().get_description()[0] # XXX missing Union support
+ translate = lambda val: val
+ # XXX [0] because of missing Union support
+ rqlstdescr = self.rset.syntax_tree().get_description(mainindex,
+ translate)[0]
labels = []
- for colindex, attr in enumerate(rqlstdescr):
+ for colindex, label in enumerate(rqlstdescr):
# compute column header
- if colindex == 0 or attr == 'Any': # find a better label
- label = ','.join(translate(self.req, et)
+ if label == 'Any': # find a better label
+ label = ','.join(translate(et)
for et in self.rset.column_types(colindex))
- else:
- label = translate(self.req, attr)
labels.append(label)
return labels