more standard fields; set css class where appropriate, + class definitions in style sheets

This commit is contained in:
Helmut Merz 2012-05-01 10:42:53 +02:00
parent 381e26edaa
commit 2283accd32
3 changed files with 28 additions and 15 deletions

View file

@ -490,6 +490,14 @@ img.notselected {
margin-bottom: 4px;
}
.center {
text-align: center;
}
.right {
text-align: right;
}
/* lobo layout-specific classes */
.legend {

View file

@ -20,6 +20,7 @@
<tr>
<th tal:repeat="col results/displayedColumns"
tal:content="col/title"
tal:attributes="class col/cssClass"
i18n:translate="" />
</tr>
<tr tal:repeat="row results">
@ -29,7 +30,8 @@
</tr>
<tr tal:define="row nocall:results/totals"
tal:condition="nocall:row">
<td tal:repeat="col results/displayedColumns">
<td tal:repeat="col results/displayedColumns"
tal:attributes="class col/cssClass">
<metal:column use-macro="python:view.getColumnRenderer(col)" />
</td>
</tr>

View file

@ -56,7 +56,7 @@ class DecimalField(Field):
format = 'decimal'
pattern = u'#,##0.00;-#,##0.00'
renderer = 'right'
renderer = cssClass = 'right'
styleData = {'text-align':'right'}
styleData = dict(Field.style.data, **styleData)
style = TableCellStyle(**styleData)
@ -76,9 +76,20 @@ class DecimalField(Field):
return '%.2f' % value
class IntegerField(Field):
renderer = cssClass = 'right'
def getSortValue(self, row):
value = self.getValue(row)
if value.isdigit():
return int(value)
class DateField(Field):
format = ('date', 'short')
renderer = cssClass = 'right'
def getDisplayValue(self, row):
value = self.getRawValue(row)
@ -154,6 +165,11 @@ class UrlField(Field):
url=nv.getUrlForTarget(baseObject(row.context)))
class IntegerUrlField(IntegerField, UrlField):
renderer = 'target'
class RelationField(Field):
renderer = 'target'
@ -183,19 +199,6 @@ class TargetField(RelationField):
return util.getObjectForUid(value)
class IntegerField(Field):
def getSortValue(self, row):
value = self.getValue(row)
if value.isdigit():
return int(value)
class IntegerUrlField(IntegerField, UrlField):
pass
class MultiLineField(Field):
renderer = 'multiline'