From 03a49fc375302ab3d3cbe0afc0fc7c4bc1521eac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Tue, 26 Feb 2008 19:11:40 +0100 Subject: [PATCH] Handle new numeric type and fix interger in tree view --- tryton/gui/window/view_form/model/field.py | 1 + tryton/gui/window/view_form/view/form_gtk/parser.py | 1 + tryton/gui/window/view_form/view/list_gtk/parser.py | 1 + tryton/gui/window/view_form/widget_search/form.py | 1 + tryton/gui/window/view_tree/parse.py | 2 +- tryton/gui/window/view_tree/view_tree.py | 5 ++++- 6 files changed, 9 insertions(+), 2 deletions(-) diff --git a/tryton/gui/window/view_form/model/field.py b/tryton/gui/window/view_form/model/field.py index 2f59932ec6..5ec6cfa8a4 100644 --- a/tryton/gui/window/view_form/model/field.py +++ b/tryton/gui/window/view_form/model/field.py @@ -363,6 +363,7 @@ TYPES = { 'float_time': FloatField, 'integer' : IntegerField, 'float' : FloatField, + 'numeric' : FloatField, 'many2one' : M2OField, 'many2many' : M2MField, 'one2many' : O2MField, diff --git a/tryton/gui/window/view_form/view/form_gtk/parser.py b/tryton/gui/window/view_form/view/form_gtk/parser.py index f0ff8550d8..50b4eb3c2e 100644 --- a/tryton/gui/window/view_form/view/form_gtk/parser.py +++ b/tryton/gui/window/view_form/view/form_gtk/parser.py @@ -598,6 +598,7 @@ WIDGETS_TYPE = { 'date': (Calendar, 1, False, False), 'datetime': (DateTime, 1, False, False), 'float': (Float, 1, False, False), + 'numeric': (Float, 1, False, False), 'integer': (Integer, 1, False, False), 'selection': (Selection, 1, False, False), 'char': (Char, 1, False, False), diff --git a/tryton/gui/window/view_form/view/list_gtk/parser.py b/tryton/gui/window/view_form/view/list_gtk/parser.py index fb1ee4a9dd..4516227709 100644 --- a/tryton/gui/window/view_form/view/list_gtk/parser.py +++ b/tryton/gui/window/view_form/view/list_gtk/parser.py @@ -494,6 +494,7 @@ CELLTYPES = { 'many2many': M2M, 'selection': Selection, 'float': Float, + 'numeric': Float, 'float_time': FloatTime, 'integer': Int, 'datetime': Datetime, diff --git a/tryton/gui/window/view_form/widget_search/form.py b/tryton/gui/window/view_form/widget_search/form.py index b0a3deda7d..4af1da317e 100644 --- a/tryton/gui/window/view_form/widget_search/form.py +++ b/tryton/gui/window/view_form/widget_search/form.py @@ -290,6 +290,7 @@ WIDGETS_TYPE = { 'date': (calendar.Calendar, 2), 'datetime': (calendar.Calendar, 2), 'float': (float.Float, 2), + 'numeric': (float.Float, 2), 'integer': (integer.Integer, 2), 'selection': (selection.Selection, 2), 'many2one_selection': (selection.Selection, 2), diff --git a/tryton/gui/window/view_tree/parse.py b/tryton/gui/window/view_tree/parse.py index ed777726ce..7b34942d7a 100644 --- a/tryton/gui/window/view_tree/parse.py +++ b/tryton/gui/window/view_tree/parse.py @@ -38,7 +38,7 @@ class Parse(object): cell = gtk.CellRendererText() cell.set_fixed_height_from_font(1) - if field_type == 'float': + if field_type in ('float', 'numeric', 'integer'): cell.set_property('xalign', 1.0) column.pack_start(cell, expand=False) column.add_attribute(cell, 'text', self.pos) diff --git a/tryton/gui/window/view_tree/view_tree.py b/tryton/gui/window/view_tree/view_tree.py index d5778c529c..828c182915 100644 --- a/tryton/gui/window/view_tree/view_tree.py +++ b/tryton/gui/window/view_tree/view_tree.py @@ -104,11 +104,14 @@ class ViewTreeModel(gtk.GenericTreeModel, gtk.TreeSortable): if obj[field]: obj[field] = dict(self.fields_type[field]['selection'] ).get(obj[field],'') - if self.fields_type[field]['type'] in ('float',): + if self.fields_type[field]['type'] in ('float', 'numeric'): digit = self.fields_type[field].get('digits', (16, 2))[1] for obj in res_ids: obj[field] = locale.format('%.' + str(digit) + 'f', obj[field] or 0.0, True) + if self.fields_type[field]['type'] in ('interger',): + for obj in res_ids: + obj[field] = locale.format('%d', obj[field] or 0, True) if self.fields_type[field]['type'] in ('float_time',): for obj in res_ids: val = '%02d:%02d' % (math.floor(abs(obj[field])),