Added interface to SimpleTable for setting column widths
svn: r20041
This commit is contained in:
parent
685641ec27
commit
daaf25867d
@ -188,10 +188,13 @@ class SimpleTable(object):
|
|||||||
else:
|
else:
|
||||||
self._rows.sort(lambda a, b: cmp(a[idx],b[idx]))
|
self._rows.sort(lambda a, b: cmp(a[idx],b[idx]))
|
||||||
|
|
||||||
def write(self, document):
|
def write(self, document, column_widths=None):
|
||||||
doc = document.doc
|
doc = document.doc
|
||||||
columns = len(self._columns)
|
columns = len(self._columns)
|
||||||
doc.start_table('simple', 'Table')
|
doc.start_table('simple', 'Table')
|
||||||
|
if column_widths:
|
||||||
|
doc._tbl.set_column_widths(column_widths)
|
||||||
|
else:
|
||||||
doc._tbl.set_column_widths([100/columns] * columns)
|
doc._tbl.set_column_widths([100/columns] * columns)
|
||||||
doc._tbl.set_columns(columns)
|
doc._tbl.set_columns(columns)
|
||||||
if self.title:
|
if self.title:
|
||||||
|
@ -205,6 +205,7 @@ class Table(object):
|
|||||||
self.db = DbDjango()
|
self.db = DbDjango()
|
||||||
self.access = SimpleAccess(self.db)
|
self.access = SimpleAccess(self.db)
|
||||||
self.table = SimpleTable(self.access)
|
self.table = SimpleTable(self.access)
|
||||||
|
self.column_widths = None
|
||||||
class Doc(object):
|
class Doc(object):
|
||||||
def __init__(self, doc):
|
def __init__(self, doc):
|
||||||
self.doc = doc
|
self.doc = doc
|
||||||
@ -249,7 +250,7 @@ class Table(object):
|
|||||||
|
|
||||||
def get_html(self):
|
def get_html(self):
|
||||||
# The HTML writer escapes data:
|
# The HTML writer escapes data:
|
||||||
self.table.write(self.doc) # forces to htmllist
|
self.table.write(self.doc, self.column_widths) # forces to htmllist
|
||||||
# FIXME: do once, or once per table?
|
# FIXME: do once, or once per table?
|
||||||
self.doc.doc.build_style_declaration(self.id) # can pass id, for whole
|
self.doc.doc.build_style_declaration(self.id) # can pass id, for whole
|
||||||
# FIXME: don't want to repeat this, unless diff for each table:
|
# FIXME: don't want to repeat this, unless diff for each table:
|
||||||
@ -837,6 +838,7 @@ def children_table(obj, user, act, url=None, *args):
|
|||||||
_("Maternal"),
|
_("Maternal"),
|
||||||
_("Birth Date"),
|
_("Birth Date"),
|
||||||
)
|
)
|
||||||
|
table.column_widths = [3] + [98/6] * 6
|
||||||
|
|
||||||
family = obj
|
family = obj
|
||||||
obj_type = ContentType.objects.get_for_model(family)
|
obj_type = ContentType.objects.get_for_model(family)
|
||||||
|
Loading…
Reference in New Issue
Block a user