diff --git a/CHANGELOG b/CHANGELOG index 7b9164bb30..48d2e4a2c4 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,5 @@ +* Remove change_default on fields + Version 2.2.0 - 2011-10-24 * Bug fixes (see mercurial logs for details) * Remove name field in ir.property diff --git a/doc/ref/models/fields.rst b/doc/ref/models/fields.rst index ba7015dd45..f66c4a8539 100644 --- a/doc/ref/models/fields.rst +++ b/doc/ref/models/fields.rst @@ -65,13 +65,6 @@ one. Possible keys are ``required``, ``readonly`` and ``invisible``. The values are :class:`~trytond.pyson.PYSON` statements that will be evaluated with the values of the record. -``change_default`` ------------------- - -.. attribute:: Field.change_default - -If true, the field can be used as condition for a custom default value. - ``select`` ---------- diff --git a/trytond/model/fields/binary.py b/trytond/model/fields/binary.py index bd06c04230..a7283030f9 100644 --- a/trytond/model/fields/binary.py +++ b/trytond/model/fields/binary.py @@ -12,9 +12,9 @@ class Binary(Field): _type = 'binary' def __init__(self, string='', help='', required=False, readonly=False, - domain=None, states=None, change_default=False, select=False, - on_change=None, on_change_with=None, depends=None, filename=None, - order_field=None, context=None, loading='lazy'): + domain=None, states=None, select=False, on_change=None, + on_change_with=None, depends=None, filename=None, order_field=None, + context=None, loading='lazy'): if filename is not None: self.filename = filename if depends is None: @@ -23,9 +23,9 @@ class Binary(Field): depends.append(filename) super(Binary, self).__init__(string=string, help=help, required=required, readonly=readonly, domain=domain, states=states, - change_default=change_default, select=select, on_change=on_change, - on_change_with=on_change_with, depends=depends, - order_field=order_field, context=context, loading=loading) + select=select, on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) @staticmethod def get(ids, model, name, values=None): diff --git a/trytond/model/fields/boolean.py b/trytond/model/fields/boolean.py index e7bbd4dc86..7e785f99c2 100644 --- a/trytond/model/fields/boolean.py +++ b/trytond/model/fields/boolean.py @@ -11,14 +11,12 @@ class Boolean(Field): _type = 'boolean' def __init__(self, string='', help='', readonly=False, domain=None, - states=None, change_default=False, select=False, on_change=None, - on_change_with=None, depends=None, order_field=None, context=None, - loading='eager'): + states=None, select=False, on_change=None, on_change_with=None, + depends=None, order_field=None, context=None, loading='eager'): super(Boolean, self).__init__(string=string, help=help, required=False, - readonly=readonly, domain=domain, states=states, - change_default=change_default, select=select, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + readonly=readonly, domain=domain, states=states, select=select, + on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) __init__.__doc__ = Field.__init__.__doc__ diff --git a/trytond/model/fields/char.py b/trytond/model/fields/char.py index 593d61b5a2..7b352682ba 100644 --- a/trytond/model/fields/char.py +++ b/trytond/model/fields/char.py @@ -15,20 +15,19 @@ class Char(Field): _type = 'char' def __init__(self, string='', size=None, help='', required=False, - readonly=False, domain=None, states=None, change_default=False, - translate=False, select=False, on_change=None, on_change_with=None, - depends=None, order_field=None, context=None, loading='eager', + readonly=False, domain=None, states=None, translate=False, + select=False, on_change=None, on_change_with=None, depends=None, + order_field=None, context=None, loading='eager', autocomplete=None): ''' :param translate: A boolean. If ``True`` the field is translatable. :param size: A integer. If set defines the maximum size of the values. ''' super(Char, self).__init__(string=string, help=help, required=required, - readonly=readonly, domain=domain, states=states, - change_default=change_default, select=select, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + readonly=readonly, domain=domain, states=states, select=select, + on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) self.__autocomplete = None self.autocomplete = autocomplete if autocomplete else None self.translate = translate diff --git a/trytond/model/fields/field.py b/trytond/model/fields/field.py index f24e65295d..424b04993f 100644 --- a/trytond/model/fields/field.py +++ b/trytond/model/fields/field.py @@ -54,9 +54,9 @@ class Field(object): _type = None def __init__(self, string='', help='', required=False, readonly=False, - domain=None, states=None, change_default=False, select=False, - on_change=None, on_change_with=None, depends=None, - order_field=None, context=None, loading='eager'): + domain=None, states=None, select=False, on_change=None, + on_change_with=None, depends=None, order_field=None, context=None, + loading='eager'): ''' :param string: A string for label of the field. :param help: A multi-line help string. @@ -68,8 +68,6 @@ class Field(object): ``readonly`` and ``invisible``. Values are pyson expressions that will be evaluated with record values. This allows to change dynamically the attributes of the field. - :param change_default: A boolean. If ``True`` the field can be used as - condition for a custom default value. :param select: An boolean. When True search will be optimized. :param on_change: A list of values. If set, the client will call the method ``on_change_`` when the user changes the field @@ -95,7 +93,6 @@ class Field(object): self.domain = domain or [] self.__states = None self.states = states or {} - self.change_default = change_default self.select = bool(select) self.__on_change = None self.on_change = on_change diff --git a/trytond/model/fields/float.py b/trytond/model/fields/float.py index 4e88658a21..fb2a89c638 100644 --- a/trytond/model/fields/float.py +++ b/trytond/model/fields/float.py @@ -22,19 +22,18 @@ class Float(Field): _type = 'float' def __init__(self, string='', digits=None, help='', required=False, - readonly=False, domain=None, states=None, change_default=False, - select=False, on_change=None, on_change_with=None, depends=None, + readonly=False, domain=None, states=None, select=False, + on_change=None, on_change_with=None, depends=None, order_field=None, context=None, loading='eager'): ''' :param digits: a list of two integers defining the total of digits and the number of decimals of the float. ''' super(Float, self).__init__(string=string, help=help, - required=required, readonly=readonly, domain=domain, - states=states, change_default=change_default, select=select, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + required=required, readonly=readonly, domain=domain, states=states, + select=select, on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) self.__digits = None self.digits = digits diff --git a/trytond/model/fields/many2many.py b/trytond/model/fields/many2many.py index 3fa259449a..e04bde731e 100644 --- a/trytond/model/fields/many2many.py +++ b/trytond/model/fields/many2many.py @@ -14,9 +14,8 @@ class Many2Many(Field): def __init__(self, relation_name, origin, target, string='', order=None, datetime_field=None, help='', required=False, readonly=False, - domain=None, states=None, change_default=False, - on_change=None, on_change_with=None, depends=None, - order_field=None, context=None, loading='lazy'): + domain=None, states=None, on_change=None, on_change_with=None, + depends=None, order_field=None, context=None, loading='lazy'): ''' :param relation_name: The name of the relation model or the name of the target model for ModelView only. @@ -34,11 +33,10 @@ class Many2Many(Field): else: depends = [datetime_field] super(Many2Many, self).__init__(string=string, help=help, - required=required, readonly=readonly, domain=domain, - states=states, change_default=change_default, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + required=required, readonly=readonly, domain=domain, states=states, + on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) self.relation_name = relation_name self.origin = origin self.target = target diff --git a/trytond/model/fields/many2one.py b/trytond/model/fields/many2one.py index 48f391da06..7c20784229 100644 --- a/trytond/model/fields/many2one.py +++ b/trytond/model/fields/many2one.py @@ -12,8 +12,8 @@ class Many2One(Field): def __init__(self, model_name, string='', left=None, right=None, ondelete='SET NULL', datetime_field=None, help='', required=False, - readonly=False, domain=None, states=None, change_default=False, - select=False, on_change=None, on_change_with=None, depends=None, + readonly=False, domain=None, states=None, select=False, + on_change=None, on_change_with=None, depends=None, order_field=None, context=None, loading='eager'): ''' :param model_name: The name of the target model. @@ -37,11 +37,10 @@ class Many2One(Field): else: depends = [datetime_field] super(Many2One, self).__init__(string=string, help=help, - required=required, readonly=readonly, domain=domain, - states=states, change_default=change_default, select=select, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + required=required, readonly=readonly, domain=domain, states=states, + select=select, on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) self.model_name = model_name self.left = left self.right = right diff --git a/trytond/model/fields/one2many.py b/trytond/model/fields/one2many.py index 5ae64c629e..f51b6252c0 100644 --- a/trytond/model/fields/one2many.py +++ b/trytond/model/fields/one2many.py @@ -18,9 +18,9 @@ class One2Many(Field): def __init__(self, model_name, field, string='', add_remove=None, order=None, datetime_field=None, help='', required=False, - readonly=False, domain=None, states=None, change_default=False, - on_change=None, on_change_with=None, depends=None, - order_field=None, context=None, loading='lazy'): + readonly=False, domain=None, states=None, on_change=None, + on_change_with=None, depends=None, order_field=None, context=None, + loading='lazy'): ''' :param model_name: The name of the target model. :param field: The name of the field that handle the reverse many2one. @@ -38,11 +38,10 @@ class One2Many(Field): else: depends = [datetime_field] super(One2Many, self).__init__(string=string, help=help, - required=required, readonly=readonly, domain=domain, - states=states, change_default=change_default, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + required=required, readonly=readonly, domain=domain, states=states, + on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) self.model_name = model_name self.field = field self.__add_remove = None diff --git a/trytond/model/fields/reference.py b/trytond/model/fields/reference.py index de2895ee2d..c947e6dea8 100644 --- a/trytond/model/fields/reference.py +++ b/trytond/model/fields/reference.py @@ -13,8 +13,8 @@ class Reference(Field): _type = 'reference' def __init__(self, string='', selection=None, help='', required=False, - readonly=False, domain=None, states=None, change_default=False, - select=False, on_change=None, on_change_with=None, depends=None, + readonly=False, domain=None, states=None, select=False, + on_change=None, on_change_with=None, depends=None, order_field=None, context=None, loading='eager'): ''' :param selection: A list or a function name that returns a list. @@ -22,11 +22,10 @@ class Reference(Field): of model and the second is the user name of model. ''' super(Reference, self).__init__(string=string, help=help, - required=required, readonly=readonly, domain=domain, - states=states, change_default=change_default, select=select, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + required=required, readonly=readonly, domain=domain, states=states, + select=select, on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) self.selection = selection or None __init__.__doc__ += Field.__init__.__doc__ diff --git a/trytond/model/fields/selection.py b/trytond/model/fields/selection.py index 7d804d2262..5193723e6a 100644 --- a/trytond/model/fields/selection.py +++ b/trytond/model/fields/selection.py @@ -12,9 +12,8 @@ class Selection(Field): def __init__(self, selection, string='', sort=True, translate=True, help='', required=False, readonly=False, domain=None, states=None, - change_default=False, select=False, on_change=None, - on_change_with=None, depends=None, order_field=None, context=None, - loading='eager'): + select=False, on_change=None, on_change_with=None, depends=None, + order_field=None, context=None, loading='eager'): ''' :param selection: A list or a function name that returns a list. The list must be a list of tuples. First member is the value @@ -22,11 +21,10 @@ class Selection(Field): :param sort: A boolean to sort or not the selections. ''' super(Selection, self).__init__(string=string, help=help, - required=required, readonly=readonly, domain=domain, - states=states, change_default=change_default, select=select, - on_change=on_change, on_change_with=on_change_with, - depends=depends, order_field=order_field, context=context, - loading=loading) + required=required, readonly=readonly, domain=domain, states=states, + select=select, on_change=on_change, on_change_with=on_change_with, + depends=depends, order_field=order_field, context=context, + loading=loading) if hasattr(selection, 'copy'): self.selection = selection.copy() else: diff --git a/trytond/model/model.py b/trytond/model/model.py index 67de426c88..4c45dc77f9 100644 --- a/trytond/model/model.py +++ b/trytond/model/model.py @@ -512,7 +512,6 @@ class Model(WarningErrorMixin, URLMixin): 'states', 'size', 'required', - 'change_default', 'translate', 'help', 'select',